
/* =====================================================
   Web fonts — Avenir LT Std & Bembo Std
   Files: themes/highground/fonts/
   ===================================================== */
@font-face {
    font-family: Avenir;
    src: url('../fonts/AvenirLTStd-Light.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: Avenir;
    src: url('../fonts/AvenirLTStd-Heavy.otf') format('opentype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: AvenirMed;
    src: url('../fonts/AvenirLTStd-Book.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: AvenirLSH;
    src: url('../fonts/AvenirLTStd-Heavy.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: Bembo;
    src: url('../fonts/BemboStd.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

/* Global link underline — off by default, on hover only */
a {
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

/* Main nav hover — no underline on top-level items */
.wp-block-navigation a.wp-block-navigation-item__content:hover {
    text-decoration: none;
}

/* Dropdown items — grey background on hover */
.wp-block-navigation__submenu-container a.wp-block-navigation-item__content:hover {
    background-color: #666666;
}

/* "Those We Serve" label → slider: remove extra space */
p.wp-block-paragraph + .n2-section-smartslider,
.homepage-slider {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.homepage-slider .n2-ss-section-main-content {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Dropdown menu background and link colors */
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
    background-color: #474741;
}

/* Dropdown min-width — override WP core's 200px */
.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container,
.wp-block-navigation .has-child:not(.open-on-click):hover > .wp-block-navigation__submenu-container,
.wp-block-navigation .has-child:not(.open-on-click):not(.open-on-hover-click):focus-within > .wp-block-navigation__submenu-container {
    min-width: 250px;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content.wp-block-navigation-item__content {
    color: #ffffff;
}

/* Upcoming Events section */
.hg-upcoming-events h2 {
    color: #577038;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 1rem;
}

.hg-events-list p {
    font-family: AvenirMed, Verdana, sans-serif;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #577038;
}

.hg-events-list p a {
    color: #577038;
    text-decoration: none;
}

.hg-events-list p a:hover {
    text-decoration: underline;
}

.hg-event-date {
    color: #577038;
    white-space: nowrap;
}

/* Top nav → main nav spacing */
.wp-block-template-part .wp-block-navigation.items-justified-right {
    margin-top: 10px;
}

footer .wp-block-column {
    border-right: 1px solid #fff;
}

footer .wp-block-column:last-child {
    border-right: 0;
}

/* alignfull images — break out of flow layout containers */
.entry-content .wp-block-image.alignfull,
.editor-styles-wrapper .wp-block-image.alignfull {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

h2,
.editor-styles-wrapper h2 {
    font-family: AvenirMed, Verdana, sans-serif;
    color: #cf7f00;
    font-size: 18px;
    font-weight: normal;
}

h1,
.wp-block-heading.wp-block-heading[level="1"],
.editor-styles-wrapper h1 {
    color: #577038;
    font-family: var(--wp--preset--font-family--avenir);
    font-size: 24px;
    font-weight: 400;
    letter-spacing: 3px;
    margin-top: 2rem;
    margin-bottom: 1rem;
    text-transform: uppercase;
}

p, li {
    font-family: Avenir, Verdana, sans-serif;
    color: #474741;
    line-height: 28px;
    font-size: 16px;
}

.eb-garamond {
    font-family: "EB Garamond", serif;
    font-optical-sizing: auto;
    font-style: normal;
}

.profile img {
    border-radius: 100%;
    width: 190px;
    height: 190px;
    display: block;
    margin: 0 auto;
}

/* Footer social icons */
footer .wp-block-social-links .wp-block-social-link,
footer .wp-block-social-links .wp-block-social-link a {
    width: 36px;
    height: 36px;
}

footer .wp-block-social-links .wp-block-social-link svg {
    width: 24px;
    height: 24px;
}

/* Hide top menu on mobile */
@media (max-width: 768px) {
    .hide-on-mobile {
        display: none !important;
    }
}

/* =====================================================
   Gift Planning page (page-id-783) - match live site
   ===================================================== */

/* Service card headings (H3) — should be orange like live site */
.page-id-783 .entry-content h3.wp-block-heading {
    color: rgb(207, 127, 0);
    font-size: 18px;
    font-weight: 400;
    font-family: AvenirMed, Verdana, sans-serif;
}

/* "Gift Planning Vehicles" H1 — should be green, uppercase, normal weight */
.page-id-783 .entry-content h1.wp-block-heading {
    color: rgb(87, 112, 56);
    font-size: 24px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-family: Avenir, Verdana, sans-serif;
}

/* Kadence tabs — remove gray backgrounds, borders from tab buttons */
.page-id-783 .wp-block-kadence-tabs .kt-tab-title {
    background-color: transparent !important;
    color: rgb(61, 61, 61) !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 6px 15px !important;
}

/* Tighten gap between tab items */
.page-id-783 .wp-block-kadence-tabs .kt-tabs-title-list li {
    margin-bottom: 2px !important;
}

/* Override Kadence block-specific inline styles (border-width + background on tab buttons) */
.kt-tabs-id783_fa6405-cf .kt-tab-title {
    border-top-width: 0 !important;
    border-bottom-width: 0 !important;
    border-left-width: 0 !important;
    border-right-width: 0 !important;
    background: transparent !important;
}

.kt-tabs-id783_fa6405-cf > .kt-tabs-title-list li {
    margin-bottom: 2px !important;
}

/* Remove border from tab content panel */
.kt-tabs-id783_fa6405-cf > .kt-tabs-content-wrap > .wp-block-kadence-tab {
    border: none !important;
}

/* Kadence tabs — remove active tab white background + border (live site has no indicator) */
.page-id-783 .wp-block-kadence-tabs .kt-tabs-title-list li.kt-tab-title-active .kt-tab-title {
    background-color: transparent !important;
    border-color: transparent !important;
    font-weight: 400 !important;
}

/* Kadence tabs — remove white background and padding from content panels */
.page-id-783 .wp-block-kadence-tabs .kt-tab-inner-content {
    background-color: transparent !important;
    padding: 0 !important;
}

/* Kadence tabs — match live site scrollable content area */
.page-id-783 .wp-block-kadence-tabs .kt-tabs-content-wrap {
    max-height: 500px;
    overflow-y: auto;
}

/* =====================================================
   Board of Directors pages (814 = Advisors, 819 = Trust Co.)
   Match live site font sizes and tight entry spacing
   ===================================================== */

/* Reduce WP block gap so name→title are tightly stacked */
.page-id-814 .wp-block-column,
.page-id-819 .wp-block-column {
    --wp--style--block-gap: 2px;
}

/* Names (H3) */
.page-id-814 .wp-block-column h3.wp-block-heading,
.page-id-819 .wp-block-column h3.wp-block-heading {
    font-size: 18px !important;
    font-weight: 400;
    font-family: AvenirMed, Verdana, sans-serif;
    color: rgb(8, 35, 59);
    line-height: 27px;
    margin-top: 18px !important;
    margin-bottom: 0;
}

/* First name in each column — no top gap */
.page-id-814 .wp-block-column > h3.wp-block-heading:first-child,
.page-id-819 .wp-block-column > h3.wp-block-heading:first-child {
    margin-top: 0 !important;
}

/* Titles (P) — 11px to match live site */
.page-id-814 .wp-block-column p.wp-block-paragraph,
.page-id-819 .wp-block-column p.wp-block-paragraph {
    font-size: 16px !important;
    font-family: Avenir, Verdana, sans-serif;
    color: rgb(71, 71, 65);
    line-height: 22px;
    margin-top: 0;
    margin-bottom: 0;
}

/* Slider #5 (Who We Serve logos) — remove grey border from image layers */
div#n2-ss-5 .n2-ss-item-image-content {
    border: none !important;
}

/* =====================================================
   Asset Management page (706) — Investment Funds Kadence Tabs
   Match live site tab header colors
   ===================================================== */

/* Tab buttons — green background to match live site */
.page-id-706 .wp-block-kadence-tabs .kt-tab-title {
    background-color: rgb(87, 112, 56) !important;
    color: rgb(255, 255, 255) !important;
    font-size: 13px !important;
}

/* =====================================================
   Asset Management (706) — Investment Performance table
   Native WP core table block — hg-performance-table
   ===================================================== */

.page-id-706 .hg-performance-table {
    overflow-x: auto;
    margin: 0;
}

.page-id-706 .hg-performance-table table thead tr th {
    background: #0092b3 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-family: AvenirMed, Verdana, sans-serif !important;
    font-weight: 700 !important;
    padding: 9px 12px !important;
    text-align: center !important;
    white-space: nowrap;
    border: none !important;
}
.page-id-706 .hg-performance-table table thead tr th:first-child {
    text-align: left !important;
}

.page-id-706 .hg-performance-table table tbody tr:nth-child(odd) td,
.page-id-706 .hg-performance-table table tbody tr:nth-child(odd) th {
    background: #b8e6ef !important;
}
.page-id-706 .hg-performance-table table tbody tr:nth-child(even) td,
.page-id-706 .hg-performance-table table tbody tr:nth-child(even) th {
    background: #ffffff !important;
}

.page-id-706 .hg-performance-table table tbody tr td,
.page-id-706 .hg-performance-table table tbody tr th {
    font-size: 12px !important;
    font-family: Avenir, Verdana, sans-serif !important;
    color: #333333 !important;
    padding: 9px 12px !important;
    text-align: left !important;
    border: none !important;
    white-space: nowrap;
}

.page-id-706 .hg-performance-table table tbody tr th {
    text-align: left !important;
    font-weight: 400 !important;
}

/* Sticky footer on 404 page */
/* =====================================================
   Donor-Advised Funds page (860)
   ===================================================== */

.page-id-860 h1 {
    font-size: 24px;
    text-transform: uppercase;
    font-family: Avenir, Verdana, sans-serif;
    color: rgb(87, 112, 56);
    text-align: left;
    margin-bottom: 12px;
    font-weight: normal;
    letter-spacing: 3px;
}

/* Media page — align tab titles to top */
.page-id-674 .kt-tabs-title-list {
    justify-content: flex-start;
}
.page-id-674 .kt-tab-inner-content {
    padding-top: 0 !important;
}

/* FAQs page — accordion question font */
.page-id-1475 .kt-blocks-accordion-header {
    font-family: Avenir, Verdana, sans-serif !important;
}

/* Careers page — h2 mixed case */
.page-id-1658 h2 {
    text-transform: none !important;
    letter-spacing: normal !important;
}

.page-id-860 h2 {
    font-family: AvenirMed, Verdana, sans-serif;
    color: rgb(207, 127, 0);
    font-size: 18px;
    font-weight: normal;
}

/* Quick Links buttons — shared styles */
.daf-quick-links.button-container .wp-block-button__link,
.daf-quick-links.button-container .wp-element-button {
    border-radius: 16px !important;
    padding: 12px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    font-family: Avenir, Verdana, sans-serif !important;
    color: rgb(255, 255, 255) !important;
    letter-spacing: 3px !important;
    font-weight: normal !important;
    text-decoration: none !important;
    border: none !important;
    width: 100% !important;
    display: block !important;
}

/* Individual button colors */
.daf-quick-links.button-container .wp-block-button:nth-child(1) .wp-block-button__link {
    background-color: rgb(120, 155, 73) !important; /* green — OPEN A DAF */
}
.daf-quick-links.button-container .wp-block-button:nth-child(2) .wp-block-button__link {
    background-color: rgb(100, 100, 95) !important; /* grey — LOG IN */
}
.daf-quick-links.button-container .wp-block-button:nth-child(3) .wp-block-button__link,
.daf-quick-links.button-container .wp-block-button:nth-child(4) .wp-block-button__link {
    background-color: rgb(83, 96, 198) !important; /* purple — REVIEW / MAKE */
}

.daf-quick-links.button-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin: 12px 0 24px !important;
}

.daf-quick-links.button-container .wp-block-button {
    width: 100%;
}

/* Give / Grow / Grant columns */
.daf-give-grow-grant {
    display: flex;
    gap: 24px;
    margin-bottom: 24px;
}

.daf-give-grow-grant > div {
    text-align: center;
    padding: 24px 0;
    width: 33%;
}

/* Resources section — consistent image size, border on img only, no underline */
.daf-resources .wp-block-image figure,
.daf-resources .wp-block-image {
    border: none;
    margin: 0;
}

.daf-resources .wp-block-image img {
    border: 1px solid #ccc;
    width: 100%;
    height: 280px;
    object-fit: contain;
    background: #fff;
    display: block;
}

.daf-resources .wp-block-paragraph {
    margin-top: 10px;
}

.daf-resources .wp-block-paragraph a {
    text-decoration: none !important;
    text-transform: uppercase;
    font-family: AvenirMed, Verdana, sans-serif;
    letter-spacing: 2px;
    font-size: 16px;
    color: rgb(87, 112, 56);
}

/* Quick Links column — grey background card with rounded corners */
.page-id-860 .wp-block-column:has(.daf-quick-links) {
    background-color: rgb(216, 209, 202);
    border-radius: 16px;
    padding: 24px;
}

/* Resources and Blog post links — no underline */
.page-id-860 .wp-block-list a {
    text-decoration: none;
}

/* Benefits table */
.daf-benefits,
figure.daf-benefits table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 45px;
}

.daf-benefits th,
figure.daf-benefits table th {
    background-color: rgb(83, 96, 198);
    color: rgb(255, 255, 255);
    font-weight: normal;
    text-align: center;
    text-transform: uppercase;
    font-size: 12px;
    padding: 12px;
    border: 1px solid rgb(207, 212, 223);
}

.daf-benefits tr:nth-child(even),
figure.daf-benefits table tr:nth-child(even) { background: rgb(238, 240, 250); }

.daf-benefits tr:nth-child(odd),
figure.daf-benefits table tr:nth-child(odd) { background: rgb(225, 227, 245); }

.daf-benefits td,
figure.daf-benefits table td {
    font-size: 16px;
    text-align: center;
    padding: 12px;
    color: #666;
    border: 1px solid rgb(207, 212, 223);
}

/* =====================================================
   Media Center page (674) — Kadence Tabs
   Remove borders and background from tabs
   ===================================================== */

/* Remove background and border from tab buttons */
.kt-tabs-id674_705408-28 .kt-tab-title {
    background: transparent !important;
    border-top-width: 0 !important;
    border-bottom-width: 0 !important;
    border-left-width: 0 !important;
    border-right-width: 0 !important;
}

/* Remove border from tab content panels */
.kt-tabs-id674_705408-28 > .kt-tabs-content-wrap > .wp-block-kadence-tab {
    border: none !important;
}

/* Tighten spacing between tab items and reduce padding to match live site */
.kt-tabs-id674_705408-28 > .kt-tabs-title-list li {
    margin-bottom: 0 !important;
}

.kt-tabs-id674_705408-28 .kt-tab-title {
    padding: 6px 15px !important;
}

/* Sticky footer on 404 page */
.error404 .wp-site-blocks {
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
    padding-bottom: 0 !important;
}

.error404 .wp-site-blocks > .wp-block-template-part {
    flex-grow: 0;
    flex-shrink: 0;
}

.error404 .wp-site-blocks > .wp-block-group {
    flex-grow: 1;
}

/* =====================================================
   Client Stories — Video Thumbnail Grid
   ===================================================== */

.hg-video-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    margin: 32px 0 48px;
}

.hg-video-item {
    cursor: pointer;
    text-align: center;
    position: relative;
}

.hg-video-item img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
    border-radius: 4px;
    transition: opacity 0.2s ease;
}

.hg-video-item:hover img {
    opacity: 0.85;
}

/* Play button overlay */
.hg-video-item::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -60%);
    width: 52px;
    height: 52px;
    background: rgba(255, 255, 255, 0.85) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%232aada8'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/60% no-repeat;
    border-radius: 50%;
    pointer-events: none;
    transition: background-color 0.2s ease;
}

.hg-video-item:hover::after {
    background-color: rgba(255, 255, 255, 1);
}

.hg-video-title {
    margin: 10px 0 0;
    font-family: 'AvenirMed', Verdana, sans-serif;
    font-size: 0.9rem;
    color: #333;
    line-height: 1.3;
}

/* Popup video sizing */
.hg-video-popup-wrap {
    width: 100%;
}

.hg-video-popup-wrap iframe {
    width: 100%;
    height: 450px;
    display: block;
    border: none;
}

/* Responsive */
@media (max-width: 768px) {
    .hg-video-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    .hg-video-popup-wrap iframe {
        height: 280px;
    }
}

@media (max-width: 480px) {
    .hg-video-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}