/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

@font-face {
    font-family: "PP Museum";
    src: url("/Fonts/SHVN%20PP%20Museum%20Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "VIP Chloris";
    src: url("/Fonts/1FTV-VIP-Chloris.otf") format("opentype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Big Caslon";
    src: url("/Fonts/SVN-BigCaslon-Italic.otf") format("opentype");
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

:root {
    --font-body: "PP Museum", sans-serif !important;
    --font-heading: "VIP Chloris", serif !important;
    --font-accent: "Big Caslon", serif !important;
}

body,
button,
.button,
input,
select,
textarea,
label,
.nav > li > a,
.nav-dropdown > li > a,
.mobile-sidebar .nav > li > a {
    font-family: var(--font-body) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.display-heading,
.hero-title,
.section-title {
    font-family: var(--font-heading) !important;
}

body .accent-text,
body .quote,
body blockquote,
body .editorial-text,
body .tagline,
body .eyebrow,
body .document-eyebrow,
body .maintenance__eyebrow,
body [class*="-kicker"] {
    font-family: var(--font-accent) !important;
    font-style: italic !important;
    font-weight: 400 !important;
}


/* =====================================================
   PARTNERS SECTION — Gold logo, 1-row layout
   ===================================================== */

/* Grid 1 hàng ngang, không wrap */
body .home-partners-grid,
.home-partners-section .home-partners-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: unset !important;
    grid-template-rows: unset !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    overflow-x: auto;
    padding-bottom: 4px;
}

/* Mỗi card co đều nhau */
body .home-partner-card,
.home-partners-section .home-partner-card {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
}

/* Bỏ nền trắng — trong suốt */
body .home-partner-logo,
.home-partners-section .home-partner-logo,
.home-partner-card .home-partner-logo {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 12px 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 70px;
}

/* Xóa mọi pseudo-element nền trắng */
body .home-partner-logo::before,
body .home-partner-logo::after,
.home-partner-card .home-partner-logo::before,
.home-partner-card .home-partner-logo::after {
    display: none !important;
    background: transparent !important;
    content: none !important;
}

/* Logo âm bản — tone gold #c8a45c (giữ chi tiết) */
.home-partner-logo img {
    filter: grayscale(1) contrast(1.1) sepia(0.65) saturate(1.8) hue-rotate(10deg) brightness(1.25) !important;
    max-height: 60px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    transition: filter 0.3s ease, transform 0.3s ease;
}

/* Hover — sáng lên nhẹ, giữ đúng tone gold */
.home-partner-card:hover .home-partner-logo img {
    filter: grayscale(1) contrast(1.1) sepia(0.55) saturate(1.8) hue-rotate(10deg) brightness(1.45) !important;
    transform: scale(1.06);
}


/* =====================================================
   PARTNERS — Mobile: 2 cột, 3 hàng
   ===================================================== */
@media only screen and (max-width: 48em) {
    body .home-partners-grid,
    .home-partners-section .home-partners-grid {
        flex-wrap: wrap !important;
        justify-content: center !important;
    }

    body .home-partner-card,
    .home-partners-section .home-partner-card {
        flex: 0 0 calc(50% - 8px) !important;
        max-width: calc(50% - 8px) !important;
    }
}

/* Post table of contents */
.single-post .lph-post-toc {
    background: #fffdf8;
    border: 1px solid rgba(169, 128, 71, 0.45);
    border-radius: 9px;
    box-shadow: 0 10px 28px rgba(59, 41, 18, 0.08);
    color: #253b5c;
    padding: 24px 22px;
}

.single-post .lph-post-toc__heading {
    align-items: center;
    display: flex;
    font-family: var(--font-heading);
    font-size: 22px;
    gap: 10px;
    line-height: 1.1;
    margin-bottom: 18px;
}

.single-post .lph-post-toc__heading::before {
    background: #b38c4d;
    content: "";
    display: block;
    height: 1px;
    width: 23px;
}

.single-post .lph-post-toc__list,
.single-post .lph-post-toc__sublist {
    list-style: none;
    margin: 0;
    padding: 0;
}

.single-post .lph-post-toc__list {
    border-top: 1px solid rgba(37, 59, 92, 0.16);
    padding-top: 12px;
}

.single-post .lph-post-toc__item + .lph-post-toc__item {
    margin-top: 13px;
}

.single-post .lph-post-toc a {
    color: inherit;
    text-decoration: none;
}

.single-post .lph-post-toc__item > a {
    align-items: flex-start;
    display: flex;
    font-size: 15px;
    gap: 12px;
    line-height: 1.45;
}

.single-post .lph-post-toc__number {
    color: #a77b3e;
    flex: 0 0 auto;
    font-family: var(--font-heading);
    font-size: 14px;
    line-height: 1.55;
}

.single-post .lph-post-toc__sublist {
    margin: 9px 0 0 35px;
}

.single-post .lph-post-toc__sublist li {
    line-height: 1.4;
    margin-top: 8px;
    padding-left: 15px;
    position: relative;
}

.single-post .lph-post-toc__sublist li::before {
    border: 1px solid #a77b3e;
    border-radius: 50%;
    content: "";
    height: 7px;
    left: 0;
    position: absolute;
    top: 0.45em;
    width: 7px;
}

.single-post .lph-post-toc a:hover,
.single-post .lph-post-toc a:focus-visible {
    color: #a77b3e;
}

.single-post .entry-content [id^="lph-toc-"] {
    scroll-margin-top: 140px;
}

@media only screen and (min-width: 64em) {
    .single-post .lph-post-toc {
        float: left;
        margin: 0 30px 24px 0;
        max-width: 250px;
        width: 35%;
    }
}

@media only screen and (max-width: 63.9375em) {
    .single-post .lph-post-toc {
        margin: 0 0 28px;
        width: 100%;
    }
}



/* Collapsible post table-of-contents subheadings */
.single-post .lph-post-toc__item-row {
    align-items: flex-start;
    display: flex;
    gap: 8px;
}

.single-post .lph-post-toc__link {
    align-items: flex-start;
    display: flex;
    flex: 1 1 auto;
    font-size: 15px;
    gap: 12px;
    line-height: 1.45;
    min-width: 0;
}

.single-post .lph-post-toc__toggle {
    align-items: center;
    background: transparent;
    border: 1px solid rgba(167, 123, 62, 0.55);
    border-radius: 50%;
    color: #a77b3e;
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 21px;
    height: 21px;
    justify-content: center;
    margin-top: 1px;
    padding: 0;
    width: 21px;
}

.single-post .lph-post-toc__toggle::before {
    content: "+";
    font-size: 16px;
    line-height: 1;
}

.single-post .lph-post-toc__item.is-expanded .lph-post-toc__toggle::before {
    content: "−";
}

.single-post .lph-post-toc__toggle:hover,
.single-post .lph-post-toc__toggle:focus-visible {
    background: #a77b3e;
    color: #fff;
}

.single-post .lph-post-toc__sublist[hidden] {
    display: none;
}

.single-post .lph-post-toc__sublist a {
    font-size: 14px;
}
