/*
Theme Name: ThemePlace Child
Theme URI: https://motionvio.com/
Description: MotionVIO custom child theme based on ThemePlace.
Author: Brandoxe
Template: themeplace
Version: 1.0.1
Text Domain: themeplace-child
*/

/* GLOBAL / RESET — Existing compatibility and layout rules are preserved. */

/* Implementation notes — Compatibility and layout settings. */
* {
    box-sizing: border-box;
}

html, body {
    overflow-x: hidden; /* Implementation notes — Compatibility and layout settings. */
    max-width: 100%;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* GLOBAL CONTAINER — Compatibility and layout settings. */
.vh-container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Implementation Notes — Existing compatibility and layout rules are preserved. */
.vh-header .custom-logo,
.vh-header img.custom-logo,
.vh-mobile-overlay .custom-logo,
.vh-mobile-overlay img.custom-logo {
    max-width: 420px !important;
    width: auto !important;
    height: auto !important;
    max-height: 105px !important;
    display: block !important;
}

.vh-footer .custom-logo,
.vh-footer img.custom-logo {
    max-width: 560px !important;
    width: auto !important;
    height: auto !important;
    max-height: 168px !important; /* Existing layout and behavior are preserved. */
    display: block !important;
}

.vh-footer__brand .custom-logo,
.vh-footer__brand img.custom-logo {
    max-width: 520px !important;
    max-height: 156px !important;
}

@media (max-width: 600px) {
    .vh-header .custom-logo,
    .vh-header img.custom-logo,
    .vh-mobile-overlay .custom-logo,
    .vh-mobile-overlay img.custom-logo {
        max-width: 300px !important;
        max-height: 84px !important;
    }

    .vh-footer__brand .custom-logo,
    .vh-footer__brand img.custom-logo {
        max-width: 380px !important;
        max-height: 112px !important;
        margin: 0 auto; /* Implementation notes — Compatibility and layout settings. */
    }
}

/* =================================================================
   HEADER (Desktop: logo left, menu right - constrained width)
================================================================= */
.vh-header {
    background: #ffffff;
    border-bottom: 1px solid #eee;
    height: 125px;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 100;
}

.vh-header__container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
}

.vh-logo-text {
    font-size: 24px !important;
    font-weight: 800 !important;
    font-family: 'Poppins', sans-serif !important;
    color: #010011 !important;
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.vh-header__logo {
    display: flex !important;
    align-items: center !important;
    z-index: 5 !important;
    position: relative !important;
}

.vh-header__mobile-triggers {
    display: none;
    gap: 12px;
}

.vh-icon-btn {
    background: none;
    border: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    color: #010011;
}

.vh-hamburger-icon {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.vh-hamburger-icon span {
    width: 22px;
    height: 2px;
    background: #010011;
    display: block;
}

.vh-primary-menu {
    list-style: none;
    display: flex;
    gap: 32px;
    margin: 0;
    padding: 0;
}

.vh-primary-menu li a {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 18px;
    color: #010011;
    padding: 8px 0;
    transition: color 0.2s ease;
}

.vh-primary-menu li a:hover {
    color: #463da3;
}

@media (max-width: 991px) {
    .vh-header {
        height: 100px !important;
    }
    .vh-header__container {
        justify-content: center !important;
        position: relative !important;
    }
    .vh-header__mobile-triggers {
        display: flex !important;
        position: absolute !important;
        left: 16px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    .vh-header__primary-nav {
        display: none !important;
    }
}

/* =================================================================
   MOBILE FULL-SCREEN OVERLAY MENU
================================================================= */
.vh-mobile-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: #ffffff !important;
    z-index: 999999 !important;
    padding: 16px 24px !important;
    overflow-y: auto !important;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    margin: 0 !important;
}

.vh-mobile-overlay.is-open {
    transform: translateX(0) !important;
}

.vh-mobile-overlay__backdrop {
    position: fixed !important;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(1, 0, 17, 0.5);
    z-index: 999998 !important;
    display: none !important;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.vh-mobile-overlay__backdrop.is-open {
    display: block !important;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.vh-mobile-overlay__backdrop.is-open {
    display: block;
}

.vh-mobile-overlay__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 16px;
    border-bottom: 1px solid #eee;
    margin-bottom: 16px;
}

.vh-mobile-overlay__spacer {
    width: 40px;
}

.vh-mobile-overlay__search {
    display: flex;
    border: 1px solid #ddd;
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 24px;
}

.vh-mobile-overlay__search input {
    flex: 1;
    border: none;
    padding: 12px 16px;
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    outline: none;
}

.vh-mobile-overlay__search button {
    background: #010011;
    color: #fff;
    border: none;
    padding: 0 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.vh-mobile-menu-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.vh-mobile-menu-list li {
    border-bottom: 1px solid #eee;
}

.vh-mobile-menu-list li a {
    display: block;
    padding: 16px 0;
    font-size: 17px;
    font-weight: 600;
    color: #010011;
    font-family: 'Poppins', sans-serif;
}

.vh-mobile-overlay__buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 24px;
}

.vh-mobile-overlay__buttons .vh-btn {
    text-align: center;
}

/* =================================================================
   HERO - Mobile responsive (search hide, heading resize)
================================================================= */
@media (max-width: 991px) {
    .vh-hero {
        padding: 80px 20px;
    }
    .vh-hero__title {
        font-size: 32px;
    }
    .vh-hero__subtitle {
        font-size: 16px;
    }
    .vh-search-bar-container {
        display: none;
    }
}

@media (max-width: 600px) {
    .vh-hero__title {
        font-size: 26px;
    }
    .vh-button-container {
        flex-direction: column;
        gap: 12px;
    }
}

/* =================================================================
   FOOTER - MOTION VIO CLEAN DARK-GREEN REDESIGN
   Straight top edge, hero-inspired green gradient, Pixflow-style spacing.
================================================================= */
.vh-footer {
    width: 100%;
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(ellipse 58% 95% at 14% 100%, rgba(35, 150, 78, 0.34), transparent 68%),
        radial-gradient(ellipse 46% 76% at 78% 82%, rgba(73, 255, 126, 0.13), transparent 72%),
        linear-gradient(180deg, #090b0a 0%, #09110d 28%, #0a1710 55%, #07120c 78%, #040806 100%);
    border-top: 1px solid rgba(255,255,255,0.045);
}

/* Old wavy separator is no longer used; keep this hidden for safety. */
.vh-footer__wave {
    display: none !important;
}

/* Footer gets the same wide desktop rhythm as the redesigned homepage. */
.vh-footer .vh-container {
    max-width: 1700px;
    width: calc(100% - 48px);
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
}

.vh-footer__main {
    position: relative;
    background: transparent;
    padding: 86px 0 72px;
}

.vh-footer__main::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(115deg, transparent 0 38%, rgba(80,255,132,0.035) 53%, transparent 70%),
        radial-gradient(ellipse at 67% 100%, rgba(35,255,112,0.06), transparent 44%);
}

.vh-footer__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(250px, 1.45fr) repeat(4, minmax(150px, 1fr));
    gap: clamp(34px, 4vw, 82px);
    align-items: start;
}

.vh-footer__brand {
    min-width: 0;
}

.vh-footer__brand-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    font-family: 'Poppins', sans-serif;
    font-size: clamp(24px, 1.8vw, 31px);
    line-height: 1;
    font-weight: 800;
    letter-spacing: -0.045em;
}

.vh-footer__brand-motion {
    color: #f4f6f5;
}

.vh-footer__brand-vio {
    color: #8dff1f;
}

/* Legacy logo/tagline/contact elements are intentionally hidden in the new footer. */
.vh-footer__tagline,
.vh-footer__divider,
.vh-footer__contact {
    display: none !important;
}

/* Column headings: lighter weight + muted grey, like the reference. */
.vh-footer__col h4 {
    margin: 2px 0 24px;
    color: rgba(217, 223, 220, 0.56);
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0;
}

.vh-footer__col ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.vh-footer__col li {
    margin: 0 0 17px;
    padding: 0;
}

.vh-footer__col a {
    display: inline-block;
    color: rgba(255,255,255,0.94);
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
    transition: color .2s ease, transform .2s ease;
}

.vh-footer__col a:hover,
.vh-footer__col a:focus {
    color: #8dff1f;
    transform: translateX(2px);
}

/* Social icons live directly below the MotionVIO wordmark. */
.vh-footer__social {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 34px;
}

.vh-social-icon {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 50%;
    background: rgba(255,255,255,0.035);
    color: rgba(255,255,255,0.94);
    text-decoration: none;
    transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
}

.vh-social-icon:hover,
.vh-social-icon:focus {
    color: #071009;
    background: #8dff1f;
    border-color: #8dff1f;
    transform: translateY(-2px);
}

.vh-social-icon svg {
    display: block;
}

/* Bottom row remains part of the same gradient instead of a hard black bar. */
.vh-footer__bottom {
    background: rgba(0,0,0,0.13);
    padding: 0 0 26px;
}

.vh-footer__bottom-inner {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-height: 58px;
    border-top: 1px solid rgba(255,255,255,0.07);
    padding-top: 18px;
}

.vh-footer__copyright {
    margin: 0;
    color: rgba(229,235,232,0.68);
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.6;
    text-align: right;
}

.vh-footer__credit {
    white-space: nowrap;
}

.vh-footer__credit a {
    color: rgba(255,255,255,0.92);
    font-weight: 600;
    text-decoration: none;
}

.vh-footer__credit a:hover,
.vh-footer__credit a:focus {
    color: #8dff1f;
}

@media (max-width: 1180px) {
    .vh-footer__grid {
        grid-template-columns: minmax(220px, 1.2fr) repeat(2, minmax(170px, 1fr));
        gap: 48px 38px;
    }

    .vh-footer__brand {
        grid-row: span 2;
    }
}

@media (max-width: 760px) {
    .vh-footer .vh-container {
        width: calc(100% - 32px);
    }

    .vh-footer__main {
        padding: 58px 0 48px;
    }

    .vh-footer__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 42px 28px;
    }

    .vh-footer__brand {
        grid-column: 1 / -1;
        grid-row: auto;
    }

    .vh-footer__social {
        margin-top: 24px;
    }

    .vh-footer__bottom-inner {
        justify-content: flex-start;
    }

    .vh-footer__copyright {
        text-align: left;
    }
}

@media (max-width: 520px) {
    .vh-footer .vh-container {
        width: calc(100% - 24px);
    }

    .vh-footer__main {
        padding: 48px 0 38px;
    }

    .vh-footer__grid {
        grid-template-columns: 1fr 1fr;
        gap: 36px 20px;
        text-align: left;
    }

    .vh-footer__brand {
        grid-column: 1 / -1;
    }

    .vh-footer__col h4 {
        margin-bottom: 18px;
        font-size: 13px;
    }

    .vh-footer__col li {
        margin-bottom: 14px;
    }

    .vh-footer__col a {
        font-size: 13px;
    }

    .vh-footer__social {
        gap: 10px;
    }

    .vh-social-icon {
        width: 36px;
        height: 36px;
    }

    .vh-footer__bottom {
        padding-bottom: 20px;
    }

    .vh-footer__bottom-inner {
        min-height: 0;
        padding-top: 16px;
    }

    .vh-footer__copyright {
        font-size: 11px;
    }

    .vh-footer__credit {
        display: block;
        margin-top: 3px;
        white-space: normal;
    }
}

/* =================================================================
   SINGLE POST PAGE (single.php) - Original theme CSS, unchanged
================================================================= */
.image-slider-section {
    width: 100%;
    margin-top: 40px;   /* Implementation notes — Compatibility and layout settings. */
    margin-bottom: 0;
    padding-top: 35px;    /* Implementation notes — Compatibility and layout settings. */
    padding-bottom: 35px; /* Existing layout and behavior are preserved. */
    background-color: #F7F7F7;
}

/* Implementation notes — Compatibility and layout settings. */
.image-slider {
    opacity: 0;
}

.image-slider.slick-initialized {
    opacity: 1;
    transition: opacity 0.3s ease;
}

.image-slider img {
    width: 100%;  /* Ensures images take full width */
    height: auto;  /* Maintain aspect ratio */
    border-radius: 16px;  /* Border radius of images */
    max-width: 100%; /* Ensure images don't stretch beyond the container */
}

/* Space between images */
.image-slider .slick-slide {
    margin-right: 17px;  /* Space between the images */
}

/* Style for Arrows */
.slick-prev, .slick-next {
    color: white;
    font-size: 50px;
    z-index: 10;
}

/* Style for Dots */
.slick-dots.custom-dots li button:before {
    color: grey;  /* Default dot color */
    font-size: 11px;
}

.slick-dots.custom-dots li.slick-active button:before {
    color: black;  /* Active dot color */
}

.slick-dots {
    position: static !important; /* Existing layout and behavior are preserved. */
    margin-top: 16px; /* Space between images and dots */
    margin-bottom: 0;
    padding-bottom: 0;
    line-height: 1;
    text-align: center;
}

.slick-dots li {
    margin: 0 7px; /* Space between dots */
}

.slick-dots li button:before {
    font-size: 11px; /* Dot size */
}

/* Existing layout and behavior are preserved. */

.themeplace-page-section {
    padding-top: 45px;
}

/* =================================================================
   HOMEPAGE (template-homepage.php)
================================================================= */
.vh-hero {
    background-color: #010011;
    text-align: center;
    padding: 187px 20px;
}

.vh-hero__title {
    font-size: 55px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    color: #ffffff;
    max-width: 1600px;
    margin: 0 auto;
}

.vh-hero__subtitle {
    font-size: 20px;
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    color: #ffffff;
    max-width: 1200px;
    margin: 20px auto;
}

.vh-search-bar-container {
    margin: 30px auto;
}

.vh-search-form {
    display: flex;
    justify-content: center;
    gap: 10px;
}

.vh-search-input {
    width: 800px;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
}

.vh-search-button {
    padding: 10px 20px;
    font-size: 16px;
    background-color: #463da3;
    color: #fff;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.vh-button-container {
    margin: 20px auto;
    display: flex;
    justify-content: center;
    gap: 20px;
}

.vh-btn {
    padding: 10px 20px;
    font-size: 16px;
    background-color: #463da3;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    font-weight: 600;
}

.vh-post-grid-section {
    margin: 30px auto;
}

.vh-search-results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.vh-search-item {
    border: 1px solid #ddd;
    border-radius: 5px;
    overflow: hidden;
    background: #fff;
    text-align: left;
}

.vh-featured-image {
    width: 100%;
    height: auto;
    display: block;
}

/* Implementation notes — Compatibility and layout settings. */
.vh-featured-image-container {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f0f0f0; /* Existing layout and behavior are preserved. */
}

.vh-featured-image-container img.vh-featured-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.vh-post-info {
    padding: 10px;
}

.vh-post-title {
    font-size: 18px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    margin: 10px 0 10px 0;
    color: #000;
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

.vh-post-title a {
    text-decoration: none;
    color: inherit;
}

.vh-meta-info {
    font-size: 14px;
    color: #555;
    display: flex;
    align-items: center;
}

.vh-meta-info a {
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
}

.vh-author-name {
    font-weight: 600;
    margin-left: 5px;
}

.vh-meta-separator {
    margin: 0 5px;
}

.vh-watch-icon {
    margin: 0 5px;
    font-size: 16px;
}

.vh-pagination {
    margin-top: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.vh-no-results {
    text-align: center;
    color: #555;
}

/* =================================================================
   CATEGORY PAGE (category.php)
================================================================= */
.vh-category-header {
    text-align: center;
    padding: 40px 20px 0 20px;
}

.vh-category-header__title {
    font-size: 42px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0;
}

.vh-category-header__subtitle {
    font-size: 17px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    color: #555;
    margin: 12px 0 0 0;
}

.vh-category-header__btn {
    display: inline-block;
    margin-top: 18px;
    padding: 12px 24px;
    font-size: 17px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    background-color: #ff3366;
    color: #fff;
    border: none;
    border-radius: 5px;
    text-decoration: none;
}

.vh-category-breadcrumb {
    text-align: center;
    margin-top: 22px;
    font-size: 16px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
}

.vh-category-breadcrumb a {
    color: #463da3;
    text-decoration: none;
}

.vh-category-breadcrumb__sep {
    color: #000;
    margin: 0 5px;
}

.vh-category-breadcrumb__current {
    color: #000;
    font-weight: 500;
}

.vh-category-search-container {
    margin-top: 30px;
    padding: 0 20px;
}

.vh-category-search-form {
    display: flex;
    justify-content: center;
    gap: 10px;
    max-width: 800px;
    margin: 0 auto;
}

.vh-category-search-input {
    flex: 1;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
}

.vh-category-search-button {
    padding: 10px 20px;
    font-size: 16px;
    background-color: #463da3;
    color: #fff;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

/* Implementation notes — Compatibility and layout settings. */
.vh-category-grid {
    grid-template-columns: repeat(4, 1fr) !important;
}

@media (max-width: 1200px) {
    .vh-category-grid { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 900px) {
    .vh-category-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 560px) {
    .vh-category-grid { grid-template-columns: 1fr !important; }
}

/* Mobile responsive: heading, subheading, button, breadcrumb, search */
@media (max-width: 768px) {
    .vh-category-header {
        padding: 30px 16px 0 16px;
    }
    .vh-category-header__title {
        font-size: 26px;
        line-height: 1.3;
    }
    .vh-category-header__subtitle {
        font-size: 15px;
    }
    .vh-category-header__btn {
        width: 100%;
        max-width: 320px;
        padding: 12px 16px;
        font-size: 15px;
    }
    .vh-category-breadcrumb {
        font-size: 14px;
        padding: 0 16px;
    }
    .vh-category-search-container {
        padding: 0 16px;
    }
    .vh-category-search-form {
        flex-direction: column;
        gap: 10px;
    }
    .vh-category-search-input {
        width: 100%;
    }
    .vh-category-search-button {
        width: 100%;
    }
}

@media (max-width: 400px) {
    .vh-category-header__title {
        font-size: 22px;
    }
}

/* AUTHOR PAGE authorphp — Existing compatibility and layout rules are preserved. */
.vh-author-grid {
    grid-template-columns: repeat(4, 1fr) !important;
}

@media (max-width: 1200px) {
    .vh-author-grid { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 900px) {
    .vh-author-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 560px) {
    .vh-author-grid { grid-template-columns: 1fr !important; }
}

/* =================================================================
   NEW POST TEMPLATE (template-post-banner.php)
================================================================= */

/* Implementation Notes — Existing compatibility and layout rules are preserved. */
.vh-banner-post-container {
    max-width: 1500px !important;
}

/* Title thoda bold */
.vh-banner-post-col .entry-title,
.vh-banner-post-col article h1,
.vh-banner-post-col article h2.entry-title {
    font-weight: 700 !important;
}

/* Existing layout and behavior are preserved. */
.vh-ad-banner {
    width: 100%;
    margin: 24px 0;
    text-align: center;
    overflow: hidden;
}

.vh-ad-banner img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px;
}

/* Implementation notes — Compatibility and layout settings. */
.vh-related-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}


body.single-vh_envato_market {
    background: #ffffff;
    color: #111111;
}

/* =================================================================
   ENVATO MARKET SINGLE PRODUCT PAGE (single-vh_envato_market.php)
   Light by default + responsive dark-mode support
   Normal posts/pages remain unchanged
================================================================= */

.single-vh_envato_market .vh-market-single {
    background: #ffffff;
    color: #111111;
    padding: 54px 0 78px;
    font-family: 'Poppins', sans-serif;
}

.single-vh_envato_market .vh-market-container {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 24px;
}

/* ---------- Top title + meta ---------- */
.single-vh_envato_market .vh-market-header {
    margin-bottom: 24px;
}

.single-vh_envato_market .vh-market-title {
    margin: 0;
    max-width: 1040px;
    color: #111111;
    font-family: 'Poppins', sans-serif;
    font-size: 32px;
    line-height: 1.28;
    font-weight: 700;
    letter-spacing: -0.02em;
}

.single-vh_envato_market .vh-market-top-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 11px;
    color: #666666;
    font-size: 13px;
    line-height: 1.5;
}

.single-vh_envato_market .vh-market-category {
    color: #463da3;
    font-weight: 600;
}

.single-vh_envato_market .vh-market-top-author {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #222222;
    font-weight: 600;
    text-decoration: none;
}

.single-vh_envato_market .vh-market-top-author:hover {
    color: #463da3;
}

.single-vh_envato_market .vh-market-top-author img,
.single-vh_envato_market img.vh-market-top-author-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    object-fit: cover;
}

.single-vh_envato_market .vh-market-meta-separator {
    color: #9a9a9a;
}

/* ---------- Main left + wider right layout ---------- */
.single-vh_envato_market .vh-market-main-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 370px;
    gap: 32px;
    align-items: start;
}

.single-vh_envato_market .vh-market-main-content,
.single-vh_envato_market .vh-market-sidebar {
    min-width: 0;
}

/* ---------- Preview video / image ---------- */
.single-vh_envato_market .vh-market-preview {
    width: 100%;
    overflow: hidden;
    background: #0c0b18;
    border: 1px solid #e4e4e4;
    border-radius: 10px;
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.10);
}

.single-vh_envato_market .vh-market-preview-video,
.single-vh_envato_market .vh-market-preview-image,
.single-vh_envato_market .vh-market-featured-image {
    width: 100%;
    display: block;
}

.single-vh_envato_market .vh-market-preview-video {
    aspect-ratio: 16 / 9;
    height: auto;
    object-fit: cover;
    background: #000000;
}

.single-vh_envato_market .vh-market-preview-image {
    aspect-ratio: 16 / 9;
    background: #f0f0f0;
}

.single-vh_envato_market .vh-market-featured-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ---------- Reusable sidebar cards ---------- */
.single-vh_envato_market .vh-market-sidebar-card {
    background: #ffffff;
    border: 1px solid #e2e2e2;
    border-radius: 9px;
    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.045);
}

/* ---------- Author card ---------- */
.single-vh_envato_market .vh-market-author-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px;
    margin-bottom: 14px;
}

.single-vh_envato_market .vh-market-author-info {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 12px;
}

.single-vh_envato_market .vh-market-author-avatar img,
.single-vh_envato_market .vh-market-card-author img,
.single-vh_envato_market .vh-market-related-author img {
    border-radius: 50%;
    flex: 0 0 auto;
}

.single-vh_envato_market .vh-market-author-avatar img {
    width: 50px;
    height: 50px;
    object-fit: cover;
}

.single-vh_envato_market .vh-market-author-name {
    display: block;
    max-width: 165px;
    overflow: hidden;
    color: #111111;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.single-vh_envato_market .vh-market-profile-btn {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 14px;
    border: 1px solid #d7d7d7;
    border-radius: 6px;
    background: #f3f3f3;
    color: #111111;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: 0.2s ease;
}

.single-vh_envato_market .vh-market-profile-btn:hover {
    border-color: #463da3;
    background: #463da3;
    color: #ffffff;
}

/* ---------- Product details card ---------- */
.single-vh_envato_market .vh-market-product-info {
    overflow: hidden;
    margin-bottom: 14px;
}

.single-vh_envato_market .vh-market-product-id-row,
.single-vh_envato_market .vh-market-price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 52px;
    padding: 13px 18px;
    border-bottom: 1px solid #ededed;
}

.single-vh_envato_market .vh-market-product-id-label,
.single-vh_envato_market .vh-market-price-label {
    color: #555555;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 500;
}

.single-vh_envato_market .vh-market-product-id-row strong {
    color: #111111;
    font-size: 14px;
    font-weight: 600;
}

.single-vh_envato_market .vh-market-price-values {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

.single-vh_envato_market .vh-market-old-price {
    color: #777777;
    font-size: 14px;
}

.single-vh_envato_market .vh-market-free-price {
    color: #149447;
    font-size: 14px;
    font-weight: 700;
}

.single-vh_envato_market .vh-market-specs {
    padding: 7px 18px 10px;
}

.single-vh_envato_market .vh-market-spec-row {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 14px;
    padding: 11px 0;
    border-bottom: 1px solid #eeeeee;
    font-size: 13px;
    line-height: 1.5;
}

.single-vh_envato_market .vh-market-spec-row:last-child {
    border-bottom: 0;
}

.single-vh_envato_market .vh-market-spec-row span {
    color: #666666;
}

.single-vh_envato_market .vh-market-spec-row strong {
    min-width: 0;
    color: #111111;
    font-weight: 500;
    text-align: right;
    overflow-wrap: anywhere;
}

/* ---------- Sidebar buttons ---------- */
.single-vh_envato_market .vh-market-buttons {
    display: grid;
    gap: 10px;
}

.single-vh_envato_market .vh-market-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 50px;
    padding: 12px 18px;
    border-radius: 7px;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    transition: transform 0.18s ease, opacity 0.18s ease, box-shadow 0.18s ease;
}

.single-vh_envato_market .vh-market-btn:hover {
    transform: translateY(-1px);
    opacity: 0.94;
    text-decoration: none;
}

.single-vh_envato_market .vh-market-btn-preview {
    border: 1px solid #d7d7d7;
    background: #e2e2e2;
    color: #111111;
}

.single-vh_envato_market .vh-market-btn-preview:hover {
    color: #111111;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.single-vh_envato_market .vh-market-btn-free {
    border: 1px solid #21b861;
    background: #21b861;
    color: #ffffff;
}

.single-vh_envato_market .vh-market-btn-elements {
    border: 1px solid #356fe5;
    background: #356fe5;
    color: #ffffff;
}

/* ---------- Envato affiliate ads ---------- */
.single-vh_envato_market .vh-envato-ad {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}

.single-vh_envato_market .vh-envato-ad > a {
    display: block;
    width: 100%;
    max-width: 100%;
    line-height: 0;
}

.single-vh_envato_market .vh-envato-ad > a > img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    border: 0;
}

/* Keep the Impact tracking pixel at 0×0 even though the theme has global img rules. */
.single-vh_envato_market .vh-envato-ad > img {
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    visibility: hidden !important;
}

.single-vh_envato_market .vh-market-sidebar-ad {
    margin-top: 16px;
}

/* Lives in the main content column, so it always follows the description width. */
.single-vh_envato_market .vh-market-wide-ad {
    margin-top: 30px;
}

/* ---------- Shared content section ---------- */
.single-vh_envato_market .vh-market-section {
    margin-top: 30px;
}

.single-vh_envato_market .vh-market-section-title {
    margin: 0 0 12px;
    color: #111111;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 700;
}

/* ---------- Similar Templates ---------- */
.single-vh_envato_market .vh-market-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.single-vh_envato_market .vh-market-card {
    overflow: hidden;
    min-width: 0;
    background: #ffffff;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
}

.single-vh_envato_market .vh-market-card-image {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f0f0f0;
}

.single-vh_envato_market .vh-market-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.25s ease;
}

.single-vh_envato_market .vh-market-card:hover .vh-market-card-image img,
.single-vh_envato_market .vh-market-related-card:hover .vh-market-related-image img {
    transform: scale(1.035);
}

.single-vh_envato_market .vh-market-card-body {
    padding: 11px;
}

.single-vh_envato_market .vh-market-card-title,
.single-vh_envato_market .vh-market-related-card-title {
    margin: 0;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
}

.single-vh_envato_market .vh-market-card-title {
    font-size: 13px;
    line-height: 1.42;
}

.single-vh_envato_market .vh-market-card-title a,
.single-vh_envato_market .vh-market-related-card-title a {
    color: #111111;
    text-decoration: none;
}

.single-vh_envato_market .vh-market-card-title a:hover,
.single-vh_envato_market .vh-market-related-card-title a:hover {
    color: #463da3;
}

.single-vh_envato_market .vh-market-card-author,
.single-vh_envato_market .vh-market-related-author {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 9px;
    min-width: 0;
    color: #666666;
    font-size: 11px;
}

.single-vh_envato_market .vh-market-card-author span,
.single-vh_envato_market .vh-market-related-author span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ---------- Description ---------- */
.single-vh_envato_market .vh-market-description-section {
    position: relative;
}

.single-vh_envato_market .vh-market-description-card {
    overflow: hidden;
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 10px;
    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.035);
}

.single-vh_envato_market .vh-market-description-heading {
    padding: 16px 22px;
    background: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
}

.single-vh_envato_market .vh-market-description-heading .vh-market-section-title {
    margin: 0;
    color: #495057;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 700;
}

.single-vh_envato_market .vh-market-description {
    position: relative;
    overflow: hidden;
    background: #ffffff;
    border: 0;
    border-radius: 0;
    transition: max-height 0.3s ease;
}

.single-vh_envato_market .vh-market-description.is-collapsed {
    max-height: 380px;
}

.single-vh_envato_market .vh-market-description.is-collapsed::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 78px;
    pointer-events: none;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #ffffff 90%);
}

.single-vh_envato_market .vh-market-description.is-expanded {
    max-height: none;
}

.single-vh_envato_market .vh-market-description.is-expanded::after {
    display: none;
}

.single-vh_envato_market .vh-market-description-inner {
    padding: 22px 24px;
    color: #2f3337;
    font-size: 13px;
    line-height: 1.8;
}

.single-vh_envato_market .vh-market-description-inner > *:first-child {
    margin-top: 0;
}

.single-vh_envato_market .vh-market-description-inner > *:last-child {
    margin-bottom: 0;
}

.single-vh_envato_market .vh-market-description-inner p,
.single-vh_envato_market .vh-market-description-inner ul,
.single-vh_envato_market .vh-market-description-inner ol,
.single-vh_envato_market .vh-market-description-inner h1,
.single-vh_envato_market .vh-market-description-inner h2,
.single-vh_envato_market .vh-market-description-inner h3,
.single-vh_envato_market .vh-market-description-inner h4,
.single-vh_envato_market .vh-market-description-inner h5,
.single-vh_envato_market .vh-market-description-inner h6 {
    color: inherit;
}

.single-vh_envato_market .vh-market-description-inner h1,
.single-vh_envato_market .vh-market-description-inner h2,
.single-vh_envato_market .vh-market-description-inner h3,
.single-vh_envato_market .vh-market-description-inner h4,
.single-vh_envato_market .vh-market-description-inner h5,
.single-vh_envato_market .vh-market-description-inner h6 {
    color: #111111;
    font-family: 'Poppins', sans-serif;
    line-height: 1.45;
}

.single-vh_envato_market .vh-market-description-inner a {
    color: #463da3;
}

.single-vh_envato_market .vh-market-description-inner img,
.single-vh_envato_market .vh-market-description-inner video,
.single-vh_envato_market .vh-market-description-inner iframe {
    max-width: 100%;
    border-radius: 7px;
}

.single-vh_envato_market .vh-market-description-footer {
    padding: 14px 20px;
    background: #f8f9fa;
    border-top: 1px solid #dee2e6;
    text-align: center;
}

.single-vh_envato_market .vh-market-read-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 132px;
    min-height: 42px;
    margin: 0;
    padding: 9px 16px;
    border: 1px solid #ced4da;
    border-radius: 7px;
    background: #ffffff;
    color: #111111;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s ease;
}

.single-vh_envato_market .vh-market-read-more::after {
    content: '⌄';
    display: inline-block;
    margin-left: 9px;
    font-size: 15px;
    line-height: 1;
    transform: translateY(-1px);
    transition: transform 0.2s ease;
}

.single-vh_envato_market .vh-market-read-more[aria-expanded="true"]::after {
    transform: rotate(180deg) translateY(1px);
}

.single-vh_envato_market .vh-market-read-more:hover {
    border-color: #463da3;
    background: #463da3;
    color: #ffffff;
}

/* ---------- Tags ---------- */
.single-vh_envato_market .vh-market-tags-title {
    margin: 0 0 9px;
    color: #333333;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 600;
}

.single-vh_envato_market .vh-market-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.single-vh_envato_market .vh-market-tag {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 10px;
    border: 1px solid #dddddd;
    border-radius: 4px;
    background: #f5f5f5;
    color: #555555;
    font-size: 10px;
    line-height: 1.2;
    text-decoration: none;
}

.single-vh_envato_market .vh-market-tag:hover {
    border-color: #463da3;
    color: #463da3;
}

/* ---------- Related Projects ---------- */
.single-vh_envato_market .vh-market-related {
    margin-top: 62px;
    padding-top: 30px;
    border-top: 1px solid #e6e6e6;
}

.single-vh_envato_market .vh-market-related-title {
    margin: 0 0 17px;
    color: #111111;
    font-family: 'Poppins', sans-serif;
    font-size: 23px;
    line-height: 1.3;
    font-weight: 700;
}

.single-vh_envato_market .vh-market-related-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px 16px;
}

.single-vh_envato_market .vh-market-related-card {
    min-width: 0;
}

.single-vh_envato_market .vh-market-related-image {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f0f0f0;
    border: 1px solid #e5e5e5;
    border-radius: 7px;
}

.single-vh_envato_market .vh-market-related-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.25s ease;
}

.single-vh_envato_market .vh-market-related-body {
    padding-top: 8px;
}

.single-vh_envato_market .vh-market-related-card-title {
    font-size: 12px;
    line-height: 1.45;
}

/* ---------- Tablet ---------- */
@media (max-width: 1180px) {
    .single-vh_envato_market .vh-market-container {
        padding: 0 20px;
    }

    .single-vh_envato_market .vh-market-main-grid {
        grid-template-columns: minmax(0, 1fr) 330px;
        gap: 24px;
    }

    .single-vh_envato_market .vh-market-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .single-vh_envato_market .vh-market-related-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* ---------- Mobile / small tablet ---------- */
@media (max-width: 860px) {
    .single-vh_envato_market .vh-market-single {
        padding: 36px 0 60px;
    }

    .single-vh_envato_market .vh-market-container {
        padding: 0 16px;
    }

    .single-vh_envato_market .vh-market-title {
        font-size: 25px;
        line-height: 1.32;
    }

    .single-vh_envato_market .vh-market-main-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .single-vh_envato_market .vh-market-sidebar {
        display: grid;
        gap: 12px;
    }

    .single-vh_envato_market .vh-market-sidebar-ad {
        margin-top: 0;
    }

    .single-vh_envato_market .vh-market-author-card,
    .single-vh_envato_market .vh-market-product-info {
        margin-bottom: 0;
    }

    .single-vh_envato_market .vh-market-related {
        margin-top: 44px;
    }

    .single-vh_envato_market .vh-market-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ---------- Small mobile ---------- */
@media (max-width: 520px) {
    .single-vh_envato_market .vh-market-single {
        padding-top: 28px;
    }

    .single-vh_envato_market .vh-market-title {
        font-size: 21px;
    }

    .single-vh_envato_market .vh-market-top-meta {
        gap: 6px;
        font-size: 11px;
    }

    .single-vh_envato_market .vh-market-top-author img,
    .single-vh_envato_market img.vh-market-top-author-avatar {
        width: 22px;
        height: 22px;
    }

    .single-vh_envato_market .vh-market-author-card {
        align-items: center;
        padding: 15px;
    }

    .single-vh_envato_market .vh-market-author-name {
        max-width: 125px;
        font-size: 13px;
    }

    .single-vh_envato_market .vh-market-profile-btn {
        padding: 7px 10px;
        font-size: 11px;
    }

    .single-vh_envato_market .vh-market-product-id-row,
    .single-vh_envato_market .vh-market-price-row {
        padding-left: 14px;
        padding-right: 14px;
    }

    .single-vh_envato_market .vh-market-specs {
        padding-left: 14px;
        padding-right: 14px;
    }

    .single-vh_envato_market .vh-market-spec-row {
        grid-template-columns: 105px minmax(0, 1fr);
        gap: 10px;
        font-size: 12px;
    }

    .single-vh_envato_market .vh-market-btn {
        min-height: 48px;
        font-size: 15px;
    }

    .single-vh_envato_market .vh-market-card-grid,
    .single-vh_envato_market .vh-market-related-grid {
        grid-template-columns: 1fr;
    }

    .single-vh_envato_market .vh-market-description-heading {
        padding: 14px 16px;
    }

    .single-vh_envato_market .vh-market-description.is-collapsed {
        max-height: 340px;
    }

    .single-vh_envato_market .vh-market-description-inner {
        padding: 17px 16px;
        font-size: 12px;
    }

    .single-vh_envato_market .vh-market-description-footer {
        padding: 12px 16px;
    }
}


/* HOMEPAGE: seven template-category filters (blog categories never appear here). */
.vh-template-category-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 32px;
    margin-bottom: 6px;
}
.vh-template-category-nav .vh-template-filter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border: 1px solid #dedde5;
    border-radius: 6px;
    background: #ffffff;
    color: #010011;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
    text-align: center;
    text-decoration: none;
    transition: background-color .2s ease, color .2s ease;
}
.vh-template-category-nav .vh-template-filter:hover,
.vh-template-category-nav .vh-template-filter.is-active {
    color: #ffffff;
    background: #463da3;
    border-color: #463da3;
}
@media (max-width: 600px) {
    .vh-template-category-nav { justify-content: flex-start; gap: 8px; }
    .vh-template-category-nav .vh-template-filter { padding: 9px 12px; font-size: 12px; }
}


/* =================================================================
   MOTIONVIO HOMEPAGE REDESIGN
   IMPORTANT: Existing styles above are intentionally preserved.
   These rules are scoped to the new homepage/header classes only.
================================================================= */

body.motion-bio-home-page {
    background: #0a0b0b;
    color: #ffffff;
    font-family: 'Poppins', sans-serif;
}

body.motion-bio-home-page .site-content,
body.motion-bio-home-page main,
body.motion-bio-home-page .content-area {
    background: transparent;
}

.mb-home,
.mb-home * {
    box-sizing: border-box;
}

.mb-home {
    width: 100%;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% -20%, rgba(42, 255, 104, 0.10), transparent 34%),
        #0a0b0b;
    color: #ffffff;
}

.mb-home-container {
    width: min(1320px, calc(100% - 40px));
    margin: 0 auto;
}

/* ---------- Homepage header ---------- */
body.motion-bio-home-page .mb-home-header {
    height: 64px;
    background: rgba(10, 11, 11, 0.92);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    position: sticky;
    top: 0;
    z-index: 1000;
}

body.motion-bio-home-page .mb-home-header__container {
    width: min(1320px, calc(100% - 40px));
    max-width: none;
    height: 100%;
    padding: 0;
    margin: 0 auto;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center !important;
    gap: 28px;
}

body.motion-bio-home-page .mb-home-header__logo {
    min-width: 155px;
}

.mb-home-brand {
    display: inline-flex;
    align-items: center;
    gap: 0;
    text-decoration: none;
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    font-size: 21px;
    line-height: 1;
    letter-spacing: -0.04em;
    white-space: nowrap;
}

.mb-home-brand__motion {
    color: #f4f4f4;
}

.mb-home-brand__bio {
    color: #8dff1f;
}

body.motion-bio-home-page .mb-home-header__primary-nav {
    min-width: 0;
    display: flex !important;
    justify-content: center;
}

body.motion-bio-home-page .mb-home-primary-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 26px;
    list-style: none;
    margin: 0;
    padding: 0;
}

body.motion-bio-home-page .mb-home-primary-menu li {
    margin: 0;
    padding: 0;
}

body.motion-bio-home-page .mb-home-primary-menu li a {
    display: inline-flex;
    align-items: center;
    padding: 7px 0;
    color: rgba(255,255,255,0.82);
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    transition: color .2s ease;
}

body.motion-bio-home-page .mb-home-primary-menu li a:hover {
    color: #ffffff;
}

.mb-home-header__right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
    min-width: 0;
}

.mb-home-search {
    display: flex;
    align-items: center;
    width: 165px;
    height: 34px;
    padding: 0 11px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 999px;
    background: rgba(26, 29, 29, 0.95);
    color: rgba(255,255,255,0.75);
}

.mb-home-search__icon {
    flex: 0 0 auto;
    opacity: .9;
}

.mb-home-search input {
    width: 100%;
    min-width: 0;
    margin-left: 8px;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #ffffff;
    font-family: 'Poppins', sans-serif;
    font-size: 10px;
}

.mb-home-search input::placeholder {
    color: rgba(255,255,255,0.55);
}

.mb-home-actions-nav {
    display: block;
}

.mb-home-actions-menu {
    display: flex;
    align-items: center;
    gap: 17px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.mb-home-actions-menu li {
    margin: 0;
    padding: 0;
}

.mb-home-actions-menu li a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    color: rgba(255,255,255,0.85);
    font-family: 'Poppins', sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    transition: color .2s ease, transform .2s ease;
}

.mb-home-actions-menu li a:hover {
    color: #ffffff;
    transform: translateY(-1px);
}

.mb-home-actions-menu li:last-child a,
.mb-home-action-signup {
    min-height: 30px;
    padding: 0 13px;
    border-radius: 999px;
    background: #8dff1f;
    color: #0a0b0b !important;
    font-weight: 700 !important;
}

.mb-home-actions-menu li:last-child a:hover,
.mb-home-action-signup:hover {
    color: #0a0b0b !important;
    filter: brightness(1.03);
}

/* Keep the original class hidden on desktop; our homepage header is its replacement. */
body.motion-bio-home-page .mb-home-header__mobile-triggers {
    display: none;
}

/* ---------- Hero ---------- */
.mb-home-hero {
    position: relative;
    min-height: 430px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 38%, rgba(53,255,110,0.13), transparent 22%),
        radial-gradient(circle at 92% 18%, rgba(72,255,151,0.08), transparent 16%),
        linear-gradient(180deg, #101515 0%, #0b0d0d 100%);
}

.mb-home-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(120deg, transparent 0 40%, rgba(75,255,120,0.045) 55%, transparent 72%),
        radial-gradient(ellipse at 72% 55%, rgba(32,255,110,0.07), transparent 40%);
    pointer-events: none;
}

.mb-home-hero__glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(70px);
    pointer-events: none;
}

.mb-home-hero__glow--one {
    width: 280px;
    height: 280px;
    right: 9%;
    top: 75px;
    background: rgba(57,255,116,0.11);
}

.mb-home-hero__glow--two {
    width: 220px;
    height: 220px;
    right: 22%;
    bottom: -70px;
    background: rgba(77,140,255,0.07);
}

.mb-home-hero__inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-height: 430px;
}

.mb-home-hero__copy {
    width: min(660px, 100%);
    padding: 70px 0 74px;
}

.mb-home-eyebrow,
.mb-home-section-kicker {
    margin: 0 0 10px;
    color: #8dff1f;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.mb-home-hero__title {
    margin: 0;
    max-width: 760px;
    color: #f5f6f6;
    font-family: 'Poppins', sans-serif;
    font-size: clamp(38px, 5vw, 62px);
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -0.045em;
}

.mb-home-hero__title span {
    color: #8dff1f;
}

.mb-home-hero__subtitle {
    max-width: 660px;
    margin: 18px 0 27px;
    color: rgba(255,255,255,0.64);
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.75;
}

.mb-home-cta {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    min-height: 42px;
    padding: 0 17px;
    border: 1px solid #8dff1f;
    border-radius: 999px;
    background: #8dff1f;
    color: #0a0b0b;
    font-family: 'Poppins', sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
}

.mb-home-cta:hover {
    color: #0a0b0b;
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(141,255,31,0.14);
}

.mb-home-cta span {
    font-size: 14px;
}

/* ---------- Shared sections ---------- */
.mb-home-section {
    padding-top: 50px;
}

.mb-home-section-heading {
    margin-bottom: 18px;
}

.mb-home-section-heading--row,
.mb-home-category__heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
}

.mb-home-section-heading h2,
.mb-home-category__heading h2 {
    margin: 0;
    color: #f3f4f4;
    font-family: 'Poppins', sans-serif;
    font-size: 31px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.mb-home-view-all {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255,255,255,0.78);
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

.mb-home-view-all:hover {
    color: #8dff1f;
}

/* ---------- Hot Right Now: 3 cards ---------- */
.mb-home-hot {
    padding-bottom: 18px;
}

.mb-home-hot-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.mb-home-hot-card {
    min-width: 0;
}

.mb-home-hot-card__image {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 10px;
    background: #151919;
}

.mb-home-hot-card__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.mb-home-hot-card:hover .mb-home-hot-card__thumb,
.mb-home-card:hover .mb-home-card__thumb {
    transform: scale(1.03);
}

.mb-home-hot-card__title,
.mb-home-card__title {
    margin: 9px 0 0;
    font-family: 'Poppins', sans-serif;
}

.mb-home-hot-card__title a,
.mb-home-card__title a {
    color: rgba(255,255,255,0.88);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.4;
    text-decoration: none;
}

.mb-home-hot-card__title a:hover,
.mb-home-card__title a:hover {
    color: #8dff1f;
}

/* ---------- Category sections: left 300-ish banner + right 3x3 cards ---------- */
.mb-home-category-sections {
    padding-top: 26px;
    padding-bottom: 70px;
}

.mb-home-category {
    display: grid;
    grid-template-columns: minmax(250px, 285px) minmax(0, 1fr);
    gap: 22px;
    align-items: stretch;
    margin-top: 28px;
    padding-top: 28px;
    border-top: 1px solid rgba(255,255,255,0.06);
}

.mb-home-category:first-child {
    margin-top: 0;
}

.mb-home-banner {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 100%;
    overflow: hidden;
    border-radius: 10px;
    background: #101313;
    border: 1px solid rgba(255,255,255,0.08);
}

.mb-home-banner__link {
    display: block;
    width: 100%;
    line-height: 0;
}

.mb-home-banner__img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 100%;
    object-fit: contain;
    object-position: center;
    background: #111313;
}

.mb-home-banner__pixel {
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.mb-home-category__content {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.mb-home-category__heading {
    margin-bottom: 14px;
}

.mb-home-category__heading .mb-home-section-kicker {
    margin-bottom: 6px;
}

.mb-home-category__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px 14px;
}

.mb-home-card {
    min-width: 0;
}

.mb-home-card__image {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 8px;
    background: #111414;
}

.mb-home-card__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.mb-home-card__title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mb-home-card__title a {
    font-size: 10px;
    color: rgba(255,255,255,0.8);
}

.mb-home-empty {
    margin: 20px 0;
    color: rgba(255,255,255,0.55);
    font-size: 12px;
}

/* Category accent hints, kept subtle so layout remains unified. */
.mb-home-category--purple .mb-home-category__heading h2 { color: #e7d9ff; }
.mb-home-category--violet .mb-home-category__heading h2 { color: #f1dcff; }
.mb-home-category--cyan .mb-home-category__heading h2 { color: #c8f9ff; }
.mb-home-category--blue .mb-home-category__heading h2 { color: #d8e7ff; }

/* ---------- Search results mode uses existing feed renderer ---------- */
.mb-home-search-results {
    padding-top: 50px;
    padding-bottom: 70px;
}

.mb-home-search-results .mb-home-section-heading p {
    margin: 8px 0 0;
    color: rgba(255,255,255,0.56);
    font-size: 12px;
}

.mb-home-search-results .vh-search-results-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.mb-home-search-results .vh-search-item {
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 9px;
    overflow: hidden;
    background: #111313;
}

.mb-home-search-results .vh-post-info {
    padding: 9px 10px;
}

.mb-home-search-results .vh-post-title,
.mb-home-search-results .vh-meta-info {
    color: rgba(255,255,255,0.82);
}

.mb-home-search-results .vh-post-title a,
.mb-home-search-results .vh-meta-info a {
    color: inherit;
}

/* ---------- Mobile overlay: same classes as existing JS ---------- */
body.motion-bio-home-page .mb-home-overlay {
    background: #0b0d0d !important;
    color: #ffffff !important;
    border-left: 1px solid rgba(255,255,255,0.05);
}

body.motion-bio-home-page .mb-home-overlay__top {
    border-bottom-color: rgba(255,255,255,0.08);
}

body.motion-bio-home-page .mb-home-overlay .vh-icon-btn {
    color: #ffffff;
}

body.motion-bio-home-page .mb-home-overlay__search {
    border-color: rgba(255,255,255,0.10);
    background: #151818;
}

body.motion-bio-home-page .mb-home-overlay__search input {
    color: #ffffff;
    background: transparent;
}

body.motion-bio-home-page .mb-home-overlay__search button {
    background: #8dff1f;
    color: #0a0b0b;
}

body.motion-bio-home-page .mb-home-overlay .vh-mobile-menu-list li {
    border-bottom-color: rgba(255,255,255,0.08);
}

body.motion-bio-home-page .mb-home-overlay .vh-mobile-menu-list li a {
    color: rgba(255,255,255,0.9);
}

.mb-home-mobile-actions {
    margin-top: 14px;
}

.mb-home-mobile-actions__menu {
    display: grid;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.mb-home-mobile-actions__menu li {
    margin: 0;
    padding: 0;
}

.mb-home-mobile-actions__menu a {
    display: flex;
    align-items: center;
    min-height: 46px;
    padding: 0 13px;
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 8px;
    color: rgba(255,255,255,0.9);
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}

.mb-home-mobile-actions__menu li:last-child a,
.mb-home-mobile-signup {
    background: #8dff1f;
    border-color: #8dff1f;
    color: #0a0b0b !important;
}

body.motion-bio-home-page .mb-home-overlay__buttons .vh-btn {
    background: #161a1a;
    border: 1px solid rgba(255,255,255,0.08);
    color: #ffffff;
}

body.motion-bio-home-page .mb-home-overlay__backdrop {
    background: rgba(0,0,0,0.72);
}

/* ---------- Responsive ---------- */
@media (max-width: 1180px) {
    body.motion-bio-home-page .mb-home-header__container {
        gap: 18px;
    }

    .mb-home-header__right {
        gap: 10px;
    }

    .mb-home-search {
        width: 135px;
    }

    body.motion-bio-home-page .mb-home-primary-menu {
        gap: 19px;
    }

    .mb-home-category {
        grid-template-columns: minmax(220px, 255px) minmax(0, 1fr);
    }
}

@media (max-width: 991px) {
    body.motion-bio-home-page .mb-home-header {
        position: relative;
        height: 68px;
    }

    body.motion-bio-home-page .mb-home-header__container {
        display: flex !important;
        justify-content: center !important;
        position: relative !important;
        padding: 0;
    }

    body.motion-bio-home-page .mb-home-header__logo {
        min-width: 0;
    }

    body.motion-bio-home-page .mb-home-header__primary-nav,
    body.motion-bio-home-page .mb-home-header__right {
        display: none !important;
    }

    body.motion-bio-home-page .mb-home-header__mobile-triggers {
        display: flex !important;
        position: absolute !important;
        left: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        gap: 5px;
    }

    body.motion-bio-home-page .mb-home-header__icon-btn {
        color: #ffffff;
    }

    .mb-home-container {
        width: min(100% - 32px, 900px);
    }

    .mb-home-hero,
    .mb-home-hero__inner {
        min-height: auto;
    }

    .mb-home-hero__copy {
        padding: 68px 0 74px;
    }

    .mb-home-category {
        grid-template-columns: 1fr;
    }

    .mb-home-banner {
        width: min(300px, 100%);
        min-height: auto;
        margin: 0 auto;
    }

    .mb-home-banner__img {
        width: 100%;
        height: auto;
        min-height: 0;
        object-fit: contain;
    }

    .mb-home-category__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .mb-home-hot-grid,
    .mb-home-category__grid,
    .mb-home-search-results .vh-search-results-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mb-home-hero__title {
        font-size: clamp(32px, 9vw, 46px);
    }

    .mb-home-section-heading h2,
    .mb-home-category__heading h2 {
        font-size: 19px;
    }
}

@media (max-width: 560px) {
    .mb-home-container {
        width: calc(100% - 24px);
    }

    .mb-home-hero__copy {
        padding: 54px 0 60px;
    }

    .mb-home-hero__subtitle {
        font-size: 12px;
        line-height: 1.7;
    }

    .mb-home-section,
    .mb-home-search-results {
        padding-top: 38px;
    }

    .mb-home-hot-grid,
    .mb-home-category__grid,
    .mb-home-search-results .vh-search-results-grid {
        grid-template-columns: 1fr;
    }

    .mb-home-category__heading,
    .mb-home-section-heading--row {
        align-items: flex-start;
        flex-direction: column;
        gap: 9px;
    }

    .mb-home-banner {
        width: min(260px, 100%);
    }
}

/* =================================================================
   MOTIONVIO HOMEPAGE - FINAL HEADER / PAGE GRADIENT ADJUSTMENTS
   Only homepage layout adjustments. Existing site/page styles stay intact.
================================================================= */

/* Extend the hero's green atmosphere through the homepage content,
   including the category/ad sections instead of ending at the hero. */
body.motion-bio-home-page .mb-home {
    background:
        radial-gradient(ellipse 55% 28% at 70% 4%, rgba(78, 255, 128, 0.15), transparent 72%),
        radial-gradient(ellipse 70% 34% at 22% 18%, rgba(40, 135, 78, 0.08), transparent 76%),
        linear-gradient(180deg, #101615 0%, #0e1311 20%, #0b100e 46%, #0a0b0b 74%, #090a0a 100%);
}

/* The hero now sits on the page-wide gradient so the background continues
   naturally down to the banner/ad sections. */
body.motion-bio-home-page .mb-home-hero {
    background: transparent;
}

body.motion-bio-home-page .mb-home-hero::before {
    background:
        linear-gradient(120deg, transparent 0 40%, rgba(75,255,120,0.055) 55%, transparent 72%),
        radial-gradient(ellipse at 72% 55%, rgba(32,255,110,0.08), transparent 40%);
}

/* Homepage header outer width is exactly the same as the overall site content. */
body.motion-bio-home-page .mb-home-header {
    width: min(1320px, calc(100% - 40px));
    max-width: none;
    margin: 0 auto;
    left: auto;
    right: auto;
}

body.motion-bio-home-page .mb-home-header__container {
    width: 100%;
    max-width: none;
    margin: 0;
}

/* Force the pricing CTA text to black, including against parent-theme overrides. */
body.motion-bio-home-page .mb-home-cta,
body.motion-bio-home-page .mb-home-cta:hover,
body.motion-bio-home-page .mb-home-cta:focus,
body.motion-bio-home-page .mb-home-cta:active {
    color: #000000 !important;
}

@media (max-width: 991px) {
    body.motion-bio-home-page .mb-home-header {
        width: calc(100% - 32px);
    }

    body.motion-bio-home-page .mb-home-header__container {
        width: 100%;
    }
}

@media (max-width: 560px) {
    body.motion-bio-home-page .mb-home-header {
        width: calc(100% - 24px);
    }
}

/* =================================================================
   MOTIONVIO HOMEPAGE - CLEAN TARGETED UPDATE
   Requested homepage-only refinements. Existing layout stays intact.
================================================================= */

/* 1) One continuous hero-to-page background:
      green atmosphere lingers below the hero and slowly fades to black. */
body.motion-bio-home-page .mb-home {
    background:
        radial-gradient(ellipse 72% 30% at 73% 7%, rgba(70, 255, 122, 0.16), transparent 76%),
        radial-gradient(ellipse 82% 40% at 20% 18%, rgba(25, 145, 75, 0.10), transparent 80%),
        linear-gradient(
            180deg,
            #101b16 0%,
            #11281b 14%,
            #10251a 27%,
            #0e2017 40%,
            #0c1913 54%,
            #0a120f 67%,
            #080d0b 79%,
            #060908 89%,
            #040505 100%
        );
}

body.motion-bio-home-page .mb-home-hero {
    background: transparent;
}

body.motion-bio-home-page .mb-home-hero::before {
    background:
        linear-gradient(120deg, transparent 0 38%, rgba(75,255,120,0.06) 55%, transparent 74%),
        radial-gradient(ellipse at 72% 52%, rgba(32,255,110,0.09), transparent 43%);
}

/* 2) Pricing CTA: same button, only a little more prominent. */
body.motion-bio-home-page .mb-home-cta {
    min-height: 44px;
    padding-left: 19px;
    padding-right: 19px;
    font-size: 13px;
    font-weight: 700;
}

body.motion-bio-home-page .mb-home-cta span {
    font-size: 15px;
}

/* 3) Software/category shortcut row under the CTA. */
body.motion-bio-home-page .mb-home-software-links {
    width: 100%;
    margin: 28px auto 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 22px;
}

body.motion-bio-home-page .mb-home-software-link {
    flex: 0 0 96px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 9px;
    color: #ffffff;
    text-decoration: none;
    text-align: center;
    font-family: 'Poppins', sans-serif;
}

body.motion-bio-home-page .mb-home-software-link:hover,
body.motion-bio-home-page .mb-home-software-link:focus {
    color: #ffffff;
}

body.motion-bio-home-page .mb-home-software-link__circle {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #050606;
    border: 1px solid rgba(255,255,255,0.10);
    color: #ffffff;
    box-shadow: 0 8px 24px rgba(0,0,0,0.16);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

body.motion-bio-home-page .mb-home-software-link:hover .mb-home-software-link__circle,
body.motion-bio-home-page .mb-home-software-link:focus .mb-home-software-link__circle {
    transform: translateY(-2px);
    border-color: rgba(141,255,31,0.55);
    box-shadow: 0 10px 28px rgba(0,0,0,0.24);
}

body.motion-bio-home-page .mb-home-software-link__letters {
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -0.03em;
}

body.motion-bio-home-page .mb-home-software-link__svg {
    width: 25px;
    height: 25px;
    display: block;
    color: #ffffff;
}

body.motion-bio-home-page .mb-home-software-link__label {
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.25;
    white-space: nowrap;
}

/* 4) Homepage post titles: slightly larger and easier to read. */
body.motion-bio-home-page .mb-home-hot-card__title a,
body.motion-bio-home-page .mb-home-card__title a {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
    color: rgba(255,255,255,0.92);
}

/* 5) Affiliate banner: keep its natural ratio, fill the available column width,
      and do not stretch the wrapper to the height of the 3x3 post grid. */
body.motion-bio-home-page .mb-home-banner {
    align-self: start;
    display: block;
    width: 100%;
    height: auto;
    min-height: 0;
    background: transparent;
}

body.motion-bio-home-page .mb-home-banner__link {
    display: block;
    width: 100%;
    height: auto;
    line-height: 0;
}

body.motion-bio-home-page .mb-home-banner__img {
    display: block;
    width: 100% !important;
    max-width: 100%;
    height: auto !important;
    min-height: 0 !important;
    object-fit: contain;
    object-position: top center;
    background: transparent;
}

/* Responsive handling only for the newly added software shortcuts. */
@media (max-width: 720px) {
    body.motion-bio-home-page .mb-home-software-links {
        gap: 12px;
        justify-content: space-between;
    }

    body.motion-bio-home-page .mb-home-software-link {
        flex-basis: 72px;
    }

    body.motion-bio-home-page .mb-home-software-link__circle {
        width: 52px;
        height: 52px;
    }

    body.motion-bio-home-page .mb-home-software-link__label {
        font-size: 10px;
        white-space: normal;
    }
}

@media (max-width: 560px) {
    body.motion-bio-home-page .mb-home-software-links {
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px 10px;
        margin-top: 24px;
    }

    body.motion-bio-home-page .mb-home-software-link {
        flex: 0 0 82px;
    }

    body.motion-bio-home-page .mb-home-hot-card__title a,
    body.motion-bio-home-page .mb-home-card__title a {
        font-size: 13px;
    }
}


/* =================================================================
   MOTIONVIO HOMEPAGE - FINAL POLISH
   1) Remove the visible hero/content seam
   2) Center software shortcuts across the full content width
   3) Crisp vector shortcut icons + new-tab links handled in PHP
   4) 600x1660 custom banner frame
   5) Keep homepage post titles prominent
================================================================= */

/* Continuous page atmosphere. The hero overlay itself fades away before
   the hero ends, so there is no hard horizontal change above Trending. */
body.motion-bio-home-page .mb-home {
    background:
        radial-gradient(ellipse 76% 24% at 72% 5%, rgba(69, 255, 121, 0.16), transparent 78%),
        radial-gradient(ellipse 88% 31% at 18% 16%, rgba(28, 154, 79, 0.10), transparent 82%),
        linear-gradient(
            180deg,
            #102319 0%,
            #102219 10%,
            #0f2017 20%,
            #0e1d16 31%,
            #0c1913 43%,
            #0b1611 55%,
            #09110e 67%,
            #070d0b 78%,
            #050807 89%,
            #030404 100%
        );
}

body.motion-bio-home-page .mb-home-hero {
    min-height: 610px;
    background: transparent !important;
    overflow: hidden;
}

body.motion-bio-home-page .mb-home-hero::before {
    inset: 0;
    background:
        linear-gradient(120deg, transparent 0 38%, rgba(75,255,120,0.055) 55%, transparent 75%),
        radial-gradient(ellipse at 72% 48%, rgba(32,255,110,0.085), transparent 45%);
    -webkit-mask-image: linear-gradient(
        to bottom,
        #000 0%,
        #000 48%,
        rgba(0,0,0,.92) 60%,
        rgba(0,0,0,.68) 72%,
        rgba(0,0,0,.30) 86%,
        transparent 100%
    );
    mask-image: linear-gradient(
        to bottom,
        #000 0%,
        #000 48%,
        rgba(0,0,0,.92) 60%,
        rgba(0,0,0,.68) 72%,
        rgba(0,0,0,.30) 86%,
        transparent 100%
    );
}

/* Keep the lower glow away from the clipped edge; this removes the faint seam
   that was still visible exactly where the Trending section begins. */
body.motion-bio-home-page .mb-home-hero__glow--two {
    bottom: 18px;
    opacity: .72;
}

body.motion-bio-home-page .mb-home-section,
body.motion-bio-home-page .mb-home-hot,
body.motion-bio-home-page .mb-home-category-sections {
    background: transparent !important;
}

/* Hero copy remains left aligned, but the shortcut navigation gets the full
   1700px homepage container so it is centered against the same width as
   Trending / View All / the three-card grid. */
body.motion-bio-home-page .mb-home-hero__inner {
    min-height: 610px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
}

body.motion-bio-home-page .mb-home-hero__copy {
    width: min(660px, 100%);
    padding: 54px 0 22px;
}

body.motion-bio-home-page .mb-home-software-links {
    width: 100%;
    margin: 8px auto 54px;
    padding: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: clamp(28px, 4.2vw, 68px);
}

body.motion-bio-home-page .mb-home-software-link {
    flex: 0 0 108px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    font-family: 'Poppins', sans-serif;
}

body.motion-bio-home-page .mb-home-software-link__circle {
    width: 62px;
    height: 62px;
    flex: 0 0 62px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #030404;
    color: #ffffff;
    border: 1px solid rgba(255,255,255,.11);
    box-shadow: 0 9px 26px rgba(0,0,0,.22);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

body.motion-bio-home-page .mb-home-software-link__svg {
    width: 31px;
    height: 31px;
    display: block;
    overflow: visible;
    color: #ffffff;
    shape-rendering: geometricPrecision;
}

body.motion-bio-home-page .mb-home-software-link__svg--adobe {
    width: 32px;
    height: 32px;
}

body.motion-bio-home-page .mb-home-software-link__label {
    color: rgba(255,255,255,.96);
    font-size: 11.5px;
    font-weight: 600;
    line-height: 1.25;
    white-space: nowrap;
}

body.motion-bio-home-page .mb-home-software-link:hover .mb-home-software-link__circle,
body.motion-bio-home-page .mb-home-software-link:focus .mb-home-software-link__circle {
    transform: translateY(-3px);
    border-color: rgba(141,255,31,.62);
    box-shadow: 0 12px 30px rgba(0,0,0,.30);
}

/* Keep the CTA wording a little stronger without changing the button design. */
body.motion-bio-home-page .mb-home-cta {
    font-size: 13px;
    font-weight: 700;
}

/* Custom category banners. Artwork should be created at 600 x 1660 px.
   At the desktop 285px column this displays at about 285 x 789px, matching
   the visual depth of the heading + three rows of cards. */
body.motion-bio-home-page .mb-home-category {
    align-items: start;
}

body.motion-bio-home-page .mb-home-banner {
    width: 100%;
    aspect-ratio: 600 / 1660;
    height: auto;
    min-height: 0;
    align-self: start;
    display: block;
    overflow: hidden;
    border-radius: 10px;
    background: #0b0d0c;
    border: 1px solid rgba(255,255,255,.08);
}

body.motion-bio-home-page .mb-home-banner__link {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 0;
}

body.motion-bio-home-page .mb-home-banner__img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-width: none;
    object-fit: cover;
    object-position: center top;
    background: transparent;
}

/* Prominent but still compact card titles. */
body.motion-bio-home-page .mb-home-hot-card__title a,
body.motion-bio-home-page .mb-home-card__title a {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
    color: rgba(255,255,255,.94);
}

@media (max-width: 991px) {
    body.motion-bio-home-page .mb-home-hero,
    body.motion-bio-home-page .mb-home-hero__inner {
        min-height: auto;
    }

    body.motion-bio-home-page .mb-home-hero__copy {
        padding: 58px 0 26px;
    }

    body.motion-bio-home-page .mb-home-software-links {
        margin: 0 auto 50px;
        gap: 22px;
    }

    body.motion-bio-home-page .mb-home-software-link {
        flex-basis: 98px;
    }

    body.motion-bio-home-page .mb-home-software-link__circle {
        width: 58px;
        height: 58px;
        flex-basis: 58px;
    }

    body.motion-bio-home-page .mb-home-banner {
        width: min(300px, 100%);
        margin: 0 auto;
    }
}

@media (max-width: 720px) {
    body.motion-bio-home-page .mb-home-software-links {
        flex-wrap: wrap;
        justify-content: center;
        gap: 18px 12px;
    }

    body.motion-bio-home-page .mb-home-software-link {
        flex: 0 0 92px;
    }

    body.motion-bio-home-page .mb-home-software-link__label {
        font-size: 10.5px;
        white-space: normal;
    }
}

@media (max-width: 560px) {
    body.motion-bio-home-page .mb-home-hero__copy {
        padding: 48px 0 24px;
    }

    body.motion-bio-home-page .mb-home-software-links {
        margin-bottom: 42px;
    }

    body.motion-bio-home-page .mb-home-card__title a,
    body.motion-bio-home-page .mb-home-hot-card__title a {
        font-size: 13px;
    }
}


/* =================================================================
   MOTIONVIO HOMEPAGE - MOBILE / ICON / BANNER POLISH
   - Keep current black-circle / white-icon shortcut design
   - Slightly tighter desktop shortcut spacing
   - Hide Photoshop shortcut on phones only
   - White mobile hamburger
   - Separate phone banner using a full-width 4:3 feature ratio
   - Phone category grids: 2 columns x 4 rows (8 visible cards)
================================================================= */

/* Slightly closer software shortcuts on desktop while staying centered. */
body.motion-bio-home-page .mb-home-software-links {
    gap: clamp(18px, 2.2vw, 32px);
}

/* Keep the current requested visual: black circle, white icon, white label. */
body.motion-bio-home-page .mb-home-software-link__circle {
    background: #030404;
    color: #ffffff;
}

body.motion-bio-home-page .mb-home-software-link__svg,
body.motion-bio-home-page .mb-home-software-link__label {
    color: #ffffff;
}

/* Phone hamburger lines were inheriting the old dark/grey color. */
@media (max-width: 600px) {
    body.motion-bio-home-page .mb-home-header__mobile-triggers .vh-hamburger-icon span,
    body.motion-bio-home-page .mb-home-header .vh-hamburger-icon span {
        background: #ffffff !important;
        opacity: 1 !important;
    }

    body.motion-bio-home-page .mb-home-header__mobile-triggers .vh-icon-btn {
        color: #ffffff !important;
        opacity: 1 !important;
    }
}

/* Separate mobile banner is phone-only. Desktop/tablet keep the tall side banner. */
body.motion-bio-home-page .mb-home-mobile-banner {
    display: none;
}

@media (min-width: 601px) and (max-width: 720px) {
    /* Tablet keeps all five shortcuts on one row. */
    body.motion-bio-home-page .mb-home-software-links {
        flex-wrap: nowrap;
        gap: 10px;
    }

    body.motion-bio-home-page .mb-home-software-link {
        flex: 1 1 0;
        max-width: 96px;
    }
}

@media (max-width: 600px) {
    /* Four shortcuts fit cleanly in one row on phones; Photoshop is desktop/tablet only. */
    body.motion-bio-home-page .mb-home-software-links {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        align-items: start;
        justify-items: center;
        gap: 8px 4px;
        width: 100%;
        margin: 0 auto 40px;
    }

    body.motion-bio-home-page .mb-home-software-link {
        width: 100%;
        min-width: 0;
        flex: none;
        gap: 8px;
    }

    body.motion-bio-home-page .mb-home-software-link--photoshop {
        display: none !important;
    }

    body.motion-bio-home-page .mb-home-software-link__circle {
        width: 50px;
        height: 50px;
        flex-basis: 50px;
    }

    body.motion-bio-home-page .mb-home-software-link__svg {
        width: 27px;
        height: 27px;
    }

    body.motion-bio-home-page .mb-home-software-link__svg--adobe {
        width: 28px;
        height: 28px;
    }

    body.motion-bio-home-page .mb-home-software-link__label {
        font-size: 9.5px;
        line-height: 1.25;
        white-space: normal;
    }

    /* Hide the tall desktop/tablet ad on phones. */
    body.motion-bio-home-page .mb-home-banner {
        display: none !important;
    }

    /* Mobile ad legacy rule; final override below makes it full-width 4:3. */
    body.motion-bio-home-page .mb-home-mobile-banner {
        display: block;
        width: calc(50% - 7px);
        aspect-ratio: 16 / 9;
        margin: 0 auto 16px;
        overflow: hidden;
        border-radius: 8px;
        background: #111414;
        border: 1px solid rgba(255,255,255,.08);
    }

    body.motion-bio-home-page .mb-home-mobile-banner__link {
        display: block;
        width: 100%;
        height: 100%;
        line-height: 0;
    }

    body.motion-bio-home-page .mb-home-mobile-banner__img {
        display: block;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
        object-position: center;
    }

    /* Two columns on phones, like the reference layout. */
    body.motion-bio-home-page .mb-home-category__grid,
    body.motion-bio-home-page .mb-home-hot-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px 12px;
    }

    /* Desktop still has 9 cards. Phone shows exactly 8 = 2 columns x 4 rows. */
    body.motion-bio-home-page .mb-home-category__grid > .mb-home-card:nth-child(n+9) {
        display: none !important;
    }

    body.motion-bio-home-page .mb-home-card__title a,
    body.motion-bio-home-page .mb-home-hot-card__title a {
        font-size: 12px;
        line-height: 1.35;
    }
}
/* =================================================================
   HOMEPAGE WIDTH / BANNER FINAL OVERRIDES
   - Large desktop content max-width: 1700px
   - Large desktop side banner: ~1.5x old width (430px)
   - Remaining width stays fluid for the 3-column post grids
   - Phone layout width is unchanged
   - Phone banner is full available width at 4:3
================================================================= */

/* Large desktop only: widen the shared homepage alignment system. */
@media (min-width: 992px) {
    body.motion-bio-home-page .mb-home-container {
        width: min(1700px, calc(100% - 40px));
        max-width: none;
        margin-left: auto;
        margin-right: auto;
    }

    body.motion-bio-home-page .mb-home-header {
        width: min(1700px, calc(100% - 40px));
        max-width: none;
        margin-left: auto;
        margin-right: auto;
        left: auto;
        right: auto;
    }

    body.motion-bio-home-page .mb-home-header__container {
        width: 100%;
        max-width: none;
    }
}

/* Wide desktop: make the side banner about 1.5x the old ~285px column.
   The second column remains flexible, so all 3 post columns expand naturally. */
@media (min-width: 1181px) {
    body.motion-bio-home-page .mb-home-category {
        grid-template-columns: minmax(400px, 430px) minmax(0, 1fr);
        gap: 28px;
        align-items: stretch;
    }

    /* Wider desktop banner: it fills the full height of the 3-row content area.
       object-fit: cover prevents empty/black bands even when artwork ratio differs. */
    body.motion-bio-home-page .mb-home-banner {
        width: 100%;
        max-width: 430px;
        height: 100%;
        min-height: 100%;
        aspect-ratio: auto;
        margin: 0;
        align-self: stretch;
    }

    body.motion-bio-home-page .mb-home-banner__link,
    body.motion-bio-home-page .mb-home-banner__img {
        width: 100%;
        height: 100% !important;
    }

    body.motion-bio-home-page .mb-home-banner__img {
        object-fit: cover;
        object-position: center top;
    }
}

/* Phone: only the banner changes width/ratio. The rest of the mobile
   container and 2-column post layout remain exactly as already configured. */
@media (max-width: 600px) {
    body.motion-bio-home-page .mb-home-mobile-banner {
        display: block;
        width: 100%;
        max-width: none;
        aspect-ratio: 4 / 3;
        margin: 0 0 18px;
        border-radius: 10px;
    }

    body.motion-bio-home-page .mb-home-mobile-banner__link {
        width: 100%;
        height: 100%;
    }

    body.motion-bio-home-page .mb-home-mobile-banner__img {
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        object-fit: cover;
        object-position: center;
    }
}

/* =================================================================
   FOOTER - FINAL BLACK TO GREEN GRADIENT OVERRIDE
   Top starts black and gradually becomes dark/soft green at the bottom.
   Keeps the copyright row inside the same continuous gradient.
================================================================= */
.vh-footer {
    padding-top: 20px !important;
    padding-bottom: 24px !important;
    border-top: 0 !important;
    background:
        radial-gradient(ellipse 72% 70% at 16% 100%, rgba(68, 255, 126, 0.16) 0%, rgba(28, 118, 59, 0.10) 38%, transparent 72%),
        radial-gradient(ellipse 58% 58% at 88% 100%, rgba(101, 255, 146, 0.12) 0%, rgba(32, 112, 59, 0.08) 42%, transparent 74%),
        linear-gradient(
            180deg,
            #040505 0%,
            #050706 18%,
            #060a08 34%,
            #08120c 50%,
            #0a1b10 66%,
            #0c2916 82%,
            #10391d 100%
        ) !important;
}

/* Keep the footer perfectly straight and remove any old purple/blue wave. */
.vh-footer__wave,
.vh-footer__wave svg,
.vh-footer__wave svg path {
    display: none !important;
}

.vh-footer__main {
    background: transparent !important;
    padding: 20px 0 38px !important;
}

/* A very soft green atmosphere near the lower half only. */
.vh-footer__main::before {
    background:
        linear-gradient(180deg, transparent 0%, transparent 35%, rgba(75,255,128,0.018) 62%, rgba(75,255,128,0.04) 100%),
        radial-gradient(ellipse 60% 48% at 58% 100%, rgba(55,255,119,0.055), transparent 72%) !important;
}

/* Bottom copyright area is part of the SAME footer gradient — no hard bar. */
.vh-footer__bottom {
    background: transparent !important;
    padding: 0 0 24px !important;
}

.vh-footer__bottom-inner {
    background: transparent !important;
    border-top-color: rgba(255,255,255,0.07) !important;
    padding-top: 18px !important;
}

@media (max-width: 760px) {
    .vh-footer {
        padding-top: 20px !important;
        padding-bottom: 22px !important;
    }

    .vh-footer__main {
        padding: 20px 0 34px !important;
    }

    .vh-footer__bottom {
        padding-bottom: 22px !important;
    }
}

@media (max-width: 520px) {
    .vh-footer {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .vh-footer__main {
        padding: 20px 0 30px !important;
    }

    .vh-footer__bottom {
        padding-bottom: 20px !important;
    }
}

/* ========================================================================
   MOTION VIO - SINGLE ENVATO MARKET REDESIGN
   Template: single-vh_envato_market.php
   ======================================================================== */

.single-vh_envato_market {
    background: #030404;
}

.single-vh_envato_market .mvio-single,
.single-vh_envato_market .mvio-single * {
    box-sizing: border-box;
}

.single-vh_envato_market .mvio-single {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #f7f8f7;
    background:
        radial-gradient(ellipse 72% 22% at 33% 3%, rgba(61, 224, 105, 0.16), transparent 76%),
        radial-gradient(ellipse 45% 17% at 75% 8%, rgba(27, 132, 68, 0.10), transparent 78%),
        linear-gradient(
            180deg,
            #102319 0%,
            #0f2017 7%,
            #0c1913 15%,
            #09120e 24%,
            #060a08 34%,
            #030404 48%,
            #030404 100%
        );
}

.single-vh_envato_market .mvio-single::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 680px;
    pointer-events: none;
    z-index: -1;
    background:
        radial-gradient(circle at 25% 18%, rgba(70, 255, 125, 0.08), transparent 38%),
        radial-gradient(circle at 76% 24%, rgba(36, 140, 70, 0.06), transparent 35%);
}

.single-vh_envato_market .mvio-single-container {
    width: min(1700px, calc(100% - 56px));
    margin: 0 auto;
    padding: 76px 0 96px;
}

/* ---------------------------------
   Top product hero
---------------------------------- */

.single-vh_envato_market .mvio-single-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.75fr) minmax(360px, 0.72fr);
    gap: clamp(42px, 4.4vw, 76px);
    align-items: start;
}

.single-vh_envato_market .mvio-single-preview-wrap {
    position: relative;
    min-width: 0;
    padding: 18px 0;
}

.single-vh_envato_market .mvio-single-preview-glow {
    position: absolute;
    z-index: 0;
    inset: 7% 5%;
    border-radius: 34px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    filter: blur(62px) saturate(1.35);
    opacity: 0.34;
    transform: scale(0.98);
    pointer-events: none;
}

.single-vh_envato_market .mvio-single-preview-glow--fallback {
    background:
        radial-gradient(circle at 22% 45%, rgba(72, 214, 112, 0.28), transparent 45%),
        radial-gradient(circle at 78% 50%, rgba(125, 44, 44, 0.28), transparent 48%);
}

.single-vh_envato_market .mvio-single-preview {
    position: relative;
    z-index: 1;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 9px;
    background: #090b0a;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow:
        0 28px 70px rgba(0, 0, 0, 0.38),
        0 0 0 1px rgba(255, 255, 255, 0.015) inset;
}

.single-vh_envato_market .mvio-single-preview__video,
.single-vh_envato_market .mvio-single-preview__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: #070908;
}

.single-vh_envato_market .mvio-single-product-panel {
    min-width: 0;
    padding-top: 20px;
}

.single-vh_envato_market .mvio-single-product-kicker {
    margin: 0 0 10px;
    color: #85f05f;
    font-size: 12px;
    line-height: 1.35;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.single-vh_envato_market .mvio-single-title {
    margin: 0;
    max-width: 600px;
    color: #ffffff;
    font-size: clamp(27px, 2.1vw, 42px);
    line-height: 1.08;
    font-weight: 650;
    letter-spacing: -0.035em;
}

.single-vh_envato_market .mvio-single-spec-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    margin-top: 30px;
    border-top: 1px solid rgba(255, 255, 255, 0.09);
    border-left: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 8px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.018);
}

.single-vh_envato_market .mvio-single-spec {
    min-width: 0;
    padding: 15px 16px;
    border-right: 1px solid rgba(255, 255, 255, 0.09);
    border-bottom: 1px solid rgba(255, 255, 255, 0.09);
}

.single-vh_envato_market .mvio-single-spec--wide {
    grid-column: 1 / -1;
}

.single-vh_envato_market .mvio-single-spec__label {
    display: block;
    margin-bottom: 5px;
    color: rgba(255, 255, 255, 0.45);
    font-size: 11px;
    line-height: 1.35;
    font-weight: 500;
}

.single-vh_envato_market .mvio-single-spec__value {
    display: block;
    min-width: 0;
    color: #f7f8f7;
    font-size: 13px;
    line-height: 1.42;
    font-weight: 650;
    word-break: break-word;
}

.single-vh_envato_market .mvio-single-spec__price {
    display: flex;
    align-items: center;
    gap: 8px;
}

.single-vh_envato_market .mvio-single-spec__price del {
    color: rgba(255, 255, 255, 0.43);
    font-weight: 500;
}

.single-vh_envato_market .mvio-single-spec__price span {
    color: #8ff269;
}

.single-vh_envato_market .mvio-single-actions {
    display: grid;
    gap: 10px;
    margin-top: 22px;
}

.single-vh_envato_market .mvio-single-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    min-height: 46px;
    padding: 10px 16px;
    border: 1px solid transparent;
    border-radius: 8px;
    text-decoration: none !important;
    font-size: 13px;
    line-height: 1;
    font-weight: 700;
    transition:
        transform 0.18s ease,
        filter 0.18s ease,
        border-color 0.18s ease,
        background 0.18s ease;
}

.single-vh_envato_market .mvio-single-btn svg {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    fill: currentColor;
}

.single-vh_envato_market .mvio-single-btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.07);
}

.single-vh_envato_market .mvio-single-btn--preview {
    color: #f5f7f5;
    background: rgba(255, 255, 255, 0.045);
    border-color: rgba(255, 255, 255, 0.12);
}

.single-vh_envato_market .mvio-single-btn--preview:hover {
    border-color: rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.07);
}

.single-vh_envato_market .mvio-single-btn--free {
    color: #f7fff4;
    background: #176f1f;
    border-color: #268b30;
}

.single-vh_envato_market .mvio-single-btn--elements {
    color: #ffffff;
    background: #1769d2;
    border-color: #2b7ae0;
}

/* ---------------------------------
   Sidebar promo / banner
---------------------------------- */

.single-vh_envato_market .mvio-single-side-promo {
    margin-top: 22px;
    width: 100%;
    overflow: hidden;
    border-radius: 9px;
}

.single-vh_envato_market .mvio-single-side-promo > * {
    max-width: 100%;
}

.single-vh_envato_market .mvio-single-side-promo img,
.single-vh_envato_market .mvio-single-side-promo a,
.single-vh_envato_market .mvio-single-side-promo .vh-envato-ad,
.single-vh_envato_market .mvio-single-side-promo .vh-market-sidebar-ad {
    width: 100% !important;
    max-width: 100% !important;
}

.single-vh_envato_market .mvio-single-side-promo img {
    display: block;
    height: auto;
    border-radius: 9px;
}

/* ---------------------------------
   Shared section styling
---------------------------------- */

.single-vh_envato_market .mvio-single-section,
.single-vh_envato_market .mvio-single-description-section,
.single-vh_envato_market .mvio-single-wide-promo {
    margin-top: 72px;
}

.single-vh_envato_market .mvio-single-description-section {
    width: min(68%, 1150px);
    margin-top: 42px;
}

.single-vh_envato_market .mvio-single-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.single-vh_envato_market .mvio-single-section-title {
    margin: 0;
    color: #f6f7f6;
    font-size: clamp(20px, 1.6vw, 28px);
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: -0.025em;
}

/* ---------------------------------
   Description box
---------------------------------- */

.single-vh_envato_market .mvio-single-description-card {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.085);
    border-radius: 10px;
    background: rgba(9, 13, 11, 0.72);
    box-shadow: 0 20px 55px rgba(0, 0, 0, 0.18);
}

.single-vh_envato_market .mvio-single-description-card > .mvio-single-section-head {
    margin: 0;
    padding: 20px 22px 0;
}

.single-vh_envato_market .mvio-single-description {
    position: relative;
    overflow: hidden;
    transition: max-height 0.32s ease;
}

.single-vh_envato_market .mvio-single-description.is-collapsed {
    max-height: 225px;
}

.single-vh_envato_market .mvio-single-description.is-collapsed::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 92px;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(9, 13, 11, 0), rgba(9, 13, 11, 0.98));
}

.single-vh_envato_market .mvio-single-description.is-expanded {
    max-height: 5000px;
}

.single-vh_envato_market .mvio-single-description__inner {
    padding: 18px 22px 22px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.78;
}

.single-vh_envato_market .mvio-single-description__inner > *:first-child {
    margin-top: 0;
}

.single-vh_envato_market .mvio-single-description__inner > *:last-child {
    margin-bottom: 0;
}

.single-vh_envato_market .mvio-single-description__inner h1,
.single-vh_envato_market .mvio-single-description__inner h2,
.single-vh_envato_market .mvio-single-description__inner h3,
.single-vh_envato_market .mvio-single-description__inner h4,
.single-vh_envato_market .mvio-single-description__inner h5,
.single-vh_envato_market .mvio-single-description__inner h6 {
    color: #ffffff;
    line-height: 1.25;
}

.single-vh_envato_market .mvio-single-description__inner a {
    color: #8df26b;
}

.single-vh_envato_market .mvio-single-description__inner img,
.single-vh_envato_market .mvio-single-description__inner video,
.single-vh_envato_market .mvio-single-description__inner iframe {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

.single-vh_envato_market .mvio-single-description__footer {
    display: flex;
    justify-content: flex-start;
    padding: 0 22px 20px;
}

.single-vh_envato_market .mvio-single-read-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 34px;
    padding: 7px 13px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 7px;
    color: #f1f4f1;
    background: rgba(255, 255, 255, 0.045);
    font: inherit;
    font-size: 12px;
    font-weight: 650;
    cursor: pointer;
}

.single-vh_envato_market .mvio-single-read-more svg {
    width: 15px;
    height: 15px;
    fill: currentColor;
    transition: transform 0.2s ease;
}

.single-vh_envato_market .mvio-single-read-more[aria-expanded="true"] svg {
    transform: rotate(180deg);
}

/* ---------------------------------
   Similar / related cards
---------------------------------- */

.single-vh_envato_market .mvio-single-card-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 34px 18px;
}

.single-vh_envato_market .mvio-single-card {
    min-width: 0;
}

.single-vh_envato_market .mvio-single-card__image {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 8px;
    background: #0c0f0d;
    border: 1px solid rgba(255, 255, 255, 0.07);
}

.single-vh_envato_market .mvio-single-card__image img,
.single-vh_envato_market .mvio-single-card__placeholder {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.28s ease, filter 0.28s ease;
}

.single-vh_envato_market .mvio-single-card:hover .mvio-single-card__image img {
    transform: scale(1.018);
    filter: brightness(1.04);
}

.single-vh_envato_market .mvio-single-card__placeholder {
    background:
        radial-gradient(circle at 30% 30%, rgba(94, 236, 120, 0.14), transparent 35%),
        #0c0f0d;
}

.single-vh_envato_market .mvio-single-card__content {
    padding-top: 10px;
}

.single-vh_envato_market .mvio-single-card__title {
    margin: 0;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 600;
}

.single-vh_envato_market .mvio-single-card__title a {
    color: #f5f6f5;
    text-decoration: none;
}

.single-vh_envato_market .mvio-single-card__title a:hover {
    color: #ffffff;
}

.single-vh_envato_market .mvio-single-card__meta {
    margin-top: 4px;
    color: rgba(255, 255, 255, 0.40);
    font-size: 10px;
    line-height: 1.45;
    font-weight: 500;
}

.single-vh_envato_market .mvio-single-empty {
    margin: 0;
    color: rgba(255, 255, 255, 0.52);
    font-size: 14px;
}

/* ---------------------------------
   Wide promo / banner
---------------------------------- */

.single-vh_envato_market .mvio-single-wide-promo {
    overflow: hidden;
    width: 100%;
    border-radius: 10px;
}

.single-vh_envato_market .mvio-single-wide-promo > *,
.single-vh_envato_market .mvio-single-wide-promo .vh-envato-ad,
.single-vh_envato_market .mvio-single-wide-promo .vh-market-wide-ad,
.single-vh_envato_market .mvio-single-wide-promo a {
    width: 100% !important;
    max-width: 100% !important;
}

.single-vh_envato_market .mvio-single-wide-promo img {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    border-radius: 10px;
}

/* ---------------------------------
   Responsive
---------------------------------- */

@media (max-width: 1280px) {
    .single-vh_envato_market .mvio-single-hero {
        grid-template-columns: minmax(0, 1.55fr) minmax(330px, 0.72fr);
        gap: 44px;
    }

    .single-vh_envato_market .mvio-single-description-section {
        width: min(68%, 950px);
    }
}

@media (max-width: 1050px) {
    .single-vh_envato_market .mvio-single-container {
        width: min(100% - 40px, 900px);
        padding-top: 52px;
    }

    .single-vh_envato_market .mvio-single-hero {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .single-vh_envato_market .mvio-single-product-panel {
        padding-top: 0;
    }

    .single-vh_envato_market .mvio-single-title {
        max-width: 780px;
    }

    .single-vh_envato_market .mvio-single-description-section {
        width: 100%;
        max-width: none;
    }

    .single-vh_envato_market .mvio-single-side-promo {
        max-width: 520px;
    }

    .single-vh_envato_market .mvio-single-card-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .single-vh_envato_market .mvio-single-container {
        width: calc(100% - 28px);
        padding: 34px 0 68px;
    }

    .single-vh_envato_market .mvio-single-preview-wrap {
        padding: 10px 0;
    }

    .single-vh_envato_market .mvio-single-preview-glow {
        inset: 8% 4%;
        filter: blur(38px) saturate(1.25);
        opacity: 0.26;
    }

    .single-vh_envato_market .mvio-single-title {
        font-size: clamp(25px, 7vw, 34px);
    }

    .single-vh_envato_market .mvio-single-spec-grid {
        margin-top: 22px;
    }

    .single-vh_envato_market .mvio-single-section,
    .single-vh_envato_market .mvio-single-description-section,
    .single-vh_envato_market .mvio-single-wide-promo {
        margin-top: 48px;
    }

    .single-vh_envato_market .mvio-single-description-section {
        margin-top: 30px;
    }

    .single-vh_envato_market .mvio-single-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 12px;
    }

    .single-vh_envato_market .mvio-single-card__title {
        font-size: 12px;
    }

    .single-vh_envato_market .mvio-single-card__meta {
        font-size: 9px;
    }
}

@media (max-width: 480px) {
    .single-vh_envato_market .mvio-single-container {
        width: calc(100% - 24px);
    }

    .single-vh_envato_market .mvio-single-spec {
        padding: 13px 12px;
    }

    .single-vh_envato_market .mvio-single-spec__value {
        font-size: 12px;
    }

    .single-vh_envato_market .mvio-single-description-card > .mvio-single-section-head,
    .single-vh_envato_market .mvio-single-description__inner {
        padding-right: 16px;
        padding-left: 16px;
    }

    .single-vh_envato_market .mvio-single-description__footer {
        padding-right: 16px;
        padding-left: 16px;
    }
}

/* ========================================================================
   MOTION VIO - SINGLE POST V2 POLISH
   - Description sits directly below the preview and exactly matches its width
   - Same continuous homepage gradient, with no horizontal seam
   ======================================================================== */

/* Match the homepage atmosphere exactly: green at the top, continuously
   darkening to the same near-black used by the lower page/footer transition. */
.single-vh_envato_market .mvio-single {
    background:
        radial-gradient(ellipse 76% 24% at 72% 5%, rgba(69, 255, 121, 0.16), transparent 78%),
        radial-gradient(ellipse 88% 31% at 18% 16%, rgba(28, 154, 79, 0.10), transparent 82%),
        linear-gradient(
            180deg,
            #102319 0%,
            #102219 10%,
            #0f2017 20%,
            #0e1d16 31%,
            #0c1913 43%,
            #0b1611 55%,
            #09110e 67%,
            #070d0b 78%,
            #050807 89%,
            #030404 100%
        ) !important;
}

/* Keep only a very soft top glow and fade it out smoothly, so it cannot
   create a visible horizontal boundary. */
.single-vh_envato_market .mvio-single::before {
    height: 900px;
    background:
        linear-gradient(120deg, transparent 0 38%, rgba(75, 255, 120, 0.04) 55%, transparent 75%),
        radial-gradient(ellipse at 72% 40%, rgba(32, 255, 110, 0.065), transparent 46%);
    -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 42%, rgba(0,0,0,.78) 62%, rgba(0,0,0,.34) 82%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 0%, #000 42%, rgba(0,0,0,.78) 62%, rgba(0,0,0,.34) 82%, transparent 100%);
}

/* The preview column now contains both the video and the description.
   This makes the description start right after the video and end exactly
   where the right product/sidebar column begins. */
.single-vh_envato_market .mvio-single-preview-wrap {
    display: flex;
    flex-direction: column;
}

.single-vh_envato_market .mvio-single-preview-wrap > .mvio-single-description-section {
    width: 100%;
    max-width: none;
    margin-top: 24px;
}

/* The older percentage width rule is no longer needed because the box lives
   inside the left column itself. */
.single-vh_envato_market .mvio-single-description-section {
    width: 100%;
    max-width: none;
}

@media (max-width: 760px) {
    .single-vh_envato_market .mvio-single-preview-wrap > .mvio-single-description-section {
        margin-top: 20px;
    }
}


/* =================================================================
   SINGLE POST V3 - LEFT COLUMN ALIGNMENT + SITE-WIDE MOTION VIO HEADER
   - Description remains directly below the preview at full left-column width
   - Similar Templates now sit immediately below Description
   - Similar Templates use 3 columns / 8 cards = 3 compact rows on desktop
   - The left content stack naturally aligns against the right promo column
   - Wide promo starts soon after both columns end
   - The modern MotionVIO header is used site-wide, not homepage-only
================================================================= */

/* ----- Single post: compact left stack ----- */
.single-vh_envato_market .mvio-single-preview-wrap > .mvio-single-similar {
    width: 100%;
    max-width: none;
    margin-top: 22px;
}

.single-vh_envato_market .mvio-single-similar .mvio-single-section-head {
    margin-bottom: 14px;
}

.single-vh_envato_market .mvio-single-similar .mvio-single-section-title {
    font-size: clamp(18px, 1.3vw, 24px);
}

.single-vh_envato_market .mvio-single-similar .mvio-single-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px 14px;
}

.single-vh_envato_market .mvio-single-similar .mvio-single-card__content {
    padding-top: 8px;
}

.single-vh_envato_market .mvio-single-similar .mvio-single-card__title {
    font-size: 12.5px;
    line-height: 1.32;
}

.single-vh_envato_market .mvio-single-similar .mvio-single-card__meta {
    margin-top: 3px;
    font-size: 9px;
    line-height: 1.35;
}

/* Once the left stack and the right sidebar/banner finish, bring the wide
   Envato banner up instead of leaving a large empty vertical gap. */
.single-vh_envato_market .mvio-single-wide-promo {
    margin-top: 28px;
}

@media (max-width: 1050px) {
    .single-vh_envato_market .mvio-single-preview-wrap > .mvio-single-similar {
        margin-top: 24px;
    }

    .single-vh_envato_market .mvio-single-similar .mvio-single-card-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .single-vh_envato_market .mvio-single-preview-wrap > .mvio-single-similar {
        margin-top: 20px;
    }

    .single-vh_envato_market .mvio-single-similar .mvio-single-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px 12px;
    }

    .single-vh_envato_market .mvio-single-wide-promo {
        margin-top: 24px;
    }
}

/* ----- Site-wide MotionVIO header -----
   These rules intentionally do not require the homepage body class, so the
   same header now appears on single posts, categories, search, author pages,
   and the rest of the site. */
.mb-home-header {
    width: min(1700px, calc(100% - 40px));
    max-width: none;
    height: 64px;
    margin: 0 auto;
    background: rgba(10, 11, 11, 0.92) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    position: sticky;
    top: 0;
    left: auto;
    right: auto;
    z-index: 1000;
}

.mb-home-header__container {
    width: 100% !important;
    max-width: none !important;
    height: 100%;
    margin: 0 auto !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 28px;
}

.mb-home-header__logo {
    min-width: 155px;
    display: flex !important;
    align-items: center !important;
}

.mb-home-header__primary-nav {
    min-width: 0;
    display: flex !important;
    justify-content: center;
}

.mb-home-primary-menu {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 26px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.mb-home-primary-menu li {
    margin: 0;
    padding: 0;
}

.mb-home-primary-menu li a {
    display: inline-flex;
    align-items: center;
    padding: 7px 0;
    color: rgba(255, 255, 255, 0.82) !important;
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none !important;
    transition: color .2s ease;
}

.mb-home-primary-menu li a:hover {
    color: #ffffff !important;
}

.mb-home-header__mobile-triggers {
    display: none !important;
}

/* Site-wide dark mobile overlay to match the new header. */
.mb-home-overlay {
    background: #0b0d0d !important;
    color: #ffffff !important;
    border-left: 1px solid rgba(255,255,255,0.05);
}

.mb-home-overlay__top {
    border-bottom-color: rgba(255,255,255,0.08) !important;
}

.mb-home-overlay .vh-icon-btn {
    color: #ffffff !important;
}

.mb-home-overlay__search {
    border-color: rgba(255,255,255,0.10) !important;
    background: #151818 !important;
}

.mb-home-overlay__search input {
    color: #ffffff !important;
    background: transparent !important;
}

.mb-home-overlay__search button {
    background: #8dff1f !important;
    color: #0a0b0b !important;
}

.mb-home-overlay .vh-mobile-menu-list li {
    border-bottom-color: rgba(255,255,255,0.08) !important;
}

.mb-home-overlay .vh-mobile-menu-list li a {
    color: rgba(255,255,255,0.9) !important;
}

.mb-home-overlay__buttons .vh-btn {
    background: #161a1a !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    color: #ffffff !important;
}

.mb-home-overlay__backdrop {
    background: rgba(0,0,0,0.72) !important;
}

@media (max-width: 1180px) {
    .mb-home-header__container {
        gap: 18px;
    }

    .mb-home-primary-menu {
        gap: 19px;
    }
}

@media (max-width: 991px) {
    .mb-home-header {
        width: calc(100% - 32px);
        height: 68px;
        position: relative;
    }

    .mb-home-header__container {
        display: flex !important;
        justify-content: center !important;
        position: relative !important;
        padding: 0 !important;
    }

    .mb-home-header__logo {
        min-width: 0;
    }

    .mb-home-header__primary-nav,
    .mb-home-header__right {
        display: none !important;
    }

    .mb-home-header__mobile-triggers {
        display: flex !important;
        position: absolute !important;
        left: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        gap: 5px;
    }

    .mb-home-header__icon-btn,
    .mb-home-header__mobile-triggers .vh-icon-btn {
        color: #ffffff !important;
    }

    .mb-home-header__mobile-triggers .vh-hamburger-icon span,
    .mb-home-header .vh-hamburger-icon span {
        background: #ffffff !important;
        opacity: 1 !important;
    }
}

@media (max-width: 560px) {
    .mb-home-header {
        width: calc(100% - 24px);
    }
}


/* =================================================================
   SINGLE POST / SITE HEADER FINAL ALIGNMENT
   - Desktop header background spans the full viewport (no white side gutters)
   - Header content keeps the same 1700px alignment used by the homepage
   - Mobile/tablet header sizing is intentionally left unchanged
================================================================= */
@media (min-width: 992px) {
    .mb-home-header,
    body.motion-bio-home-page .mb-home-header {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        left: auto !important;
        right: auto !important;
        background: rgba(10, 11, 11, 0.96) !important;
    }

    .mb-home-header__container,
    body.motion-bio-home-page .mb-home-header__container {
        width: min(1700px, calc(100% - 40px)) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* =================================================================
   SINGLE PRODUCT HEADER ALIGNMENT — FINAL FIX
   Keep the MotionVIO header visually identical to the homepage, while
   aligning the actual header content to the single-product content width.
================================================================= */
@media (min-width: 992px) {
    /* The header itself is no longer a full-width layout box. It follows the
       exact single-product container width (video left edge to sidebar right edge). */
    body.single-vh_envato_market .mb-home-header {
        width: min(1700px, calc(100% - 56px)) !important;
        max-width: none !important;
        height: 64px !important;
        min-height: 64px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        left: auto !important;
        right: auto !important;
        position: sticky !important;
        top: 0 !important;
        background: transparent !important;
        border-bottom: 0 !important;
        overflow: visible !important;
        isolation: isolate;
    }

    /* Full dark strip behind the centered header without stretching the
       header's content layout. This removes white side gutters cleanly. */
    body.single-vh_envato_market .mb-home-header::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        width: 100vw;
        transform: translateX(-50%);
        background: rgba(10, 11, 11, 0.96);
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
        z-index: -1;
        pointer-events: none;
    }

    body.single-vh_envato_market .mb-home-header__container {
        width: 100% !important;
        max-width: none !important;
        height: 64px !important;
        min-height: 64px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 28px !important;
    }

    /* Neutralize the older ThemePlace header sizing on this template. */
    body.single-vh_envato_market .vh-header.mb-home-header {
        height: 64px !important;
        min-height: 64px !important;
    }
}

/* =================================================================
   UNIFIED TEMPLATES BROWSER — /templates/
   Pixflow-inspired dark layout with video hero, live filters and pagination.
================================================================= */
.post-type-archive-vh_envato_market {
    background: #070a08;
}

.mvio-browser {
    min-height: 100vh;
    color: #f5f7f6;
    font-family: 'Poppins', sans-serif;
    background:
        radial-gradient(ellipse 72% 24% at 72% 0%, rgba(73, 255, 126, 0.10), transparent 76%),
        linear-gradient(180deg, #0c1711 0%, #09110d 20%, #070b08 48%, #060807 100%);
    padding: 34px 0 92px;
}

.mvio-browser-shell {
    width: min(1700px, calc(100% - 48px));
    margin: 0 auto;
}

/* ---------- VIDEO HERO ---------- */
.mvio-browser-hero {
    position: relative;
    min-height: 420px;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(255,255,255,0.10);
    background: #070909;
    isolation: isolate;
}

.mvio-browser-hero__video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: -3;
}

.mvio-browser-hero__shade {
    position: absolute;
    inset: 0;
    z-index: -2;
    pointer-events: none;
    background:
        radial-gradient(circle at 72% 48%, rgba(255,184,95,0.15), transparent 37%),
        linear-gradient(90deg,
            rgba(4,6,5,0.99) 0%,
            rgba(4,6,5,0.96) 17%,
            rgba(4,6,5,0.83) 34%,
            rgba(4,6,5,0.48) 52%,
            rgba(4,6,5,0.12) 74%,
            rgba(4,6,5,0.04) 100%
        );
}

.mvio-browser-hero__copy {
    width: min(710px, 58%);
    padding: 86px 70px;
}

.mvio-browser-hero__eyebrow {
    margin: 0 0 16px;
    color: #8dff1f;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.mvio-browser-hero h1 {
    margin: 0;
    max-width: 680px;
    color: #fff;
    font-size: clamp(34px, 3.2vw, 58px);
    line-height: 1.08;
    font-weight: 700;
    letter-spacing: -0.04em;
}

.mvio-browser-hero__copy > p:not(.mvio-browser-hero__eyebrow) {
    max-width: 590px;
    margin: 22px 0 0;
    color: rgba(255,255,255,0.69);
    font-size: 15px;
    line-height: 1.75;
}

.mvio-browser-hero__link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 28px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 4px;
}

/* ---------- MAIN LAYOUT ---------- */
.mvio-browser-layout {
    display: grid;
    grid-template-columns: 290px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    margin-top: 24px;
}

.mvio-browser-sidebar {
    position: sticky;
    top: 84px;
    display: grid;
    gap: 16px;
}

.mvio-browser-filter-card {
    border: 1px solid rgba(255,255,255,0.105);
    border-radius: 16px;
    background: rgba(11,14,13,0.90);
    padding: 20px 18px;
}

.mvio-browser-filter-card__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

.mvio-browser-filter-card h2 {
    margin: 0;
    color: #f4f6f5;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 650;
}

.mvio-browser-clear-group {
    appearance: none;
    border: 0;
    padding: 2px 0;
    background: transparent;
    color: rgba(255,255,255,0.40);
    font: inherit;
    font-size: 10px;
    cursor: pointer;
}

.mvio-browser-clear-group:hover {
    color: #8dff1f;
}

.mvio-browser-filter-options {
    display: grid;
    gap: 13px;
}

.mvio-browser-check {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    color: rgba(255,255,255,0.67);
    font-size: 12px;
    line-height: 1.3;
    cursor: pointer;
    user-select: none;
}

.mvio-browser-check:hover {
    color: rgba(255,255,255,0.96);
}

.mvio-browser-check input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.mvio-browser-check__box {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    border-radius: 4px;
    border: 1px solid rgba(255,255,255,0.34);
    background: rgba(255,255,255,0.02);
    transition: .18s ease;
    position: relative;
}

.mvio-browser-check input:checked + .mvio-browser-check__box {
    border-color: #8dff1f;
    background: #8dff1f;
    box-shadow: 0 0 0 3px rgba(141,255,31,0.09);
}

.mvio-browser-check input:checked + .mvio-browser-check__box::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 2px;
    width: 4px;
    height: 8px;
    border: solid #071008;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.mvio-browser-content {
    min-width: 0;
}

/* ---------- SEARCH / SORT ---------- */
.mvio-browser-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 54px;
    margin-bottom: 16px;
}

.mvio-browser-search {
    width: min(360px, 48%);
    height: 44px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 10px;
    background: rgba(255,255,255,0.045);
    color: rgba(255,255,255,0.42);
}

.mvio-browser-search:focus-within {
    border-color: rgba(141,255,31,0.35);
    background: rgba(255,255,255,0.06);
}

.mvio-browser-search input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #fff;
    font-family: inherit;
    font-size: 12px;
}

.mvio-browser-search input::placeholder {
    color: rgba(255,255,255,0.36);
}

.mvio-browser-sort {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px;
    border-radius: 999px;
    background: rgba(255,255,255,0.018);
}

.mvio-browser-sort__btn {
    appearance: none;
    border: 0;
    border-radius: 999px;
    padding: 9px 16px;
    background: transparent;
    color: rgba(255,255,255,0.64);
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}

.mvio-browser-sort__btn:hover {
    color: #fff;
}

.mvio-browser-sort__btn.is-active {
    color: #fff;
    background: rgba(224,229,227,0.14);
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.07),
        0 5px 22px rgba(0,0,0,0.18);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* ---------- RESULTS / CARDS ---------- */
.mvio-browser-results {
    min-height: 520px;
    transition: opacity .18s ease;
}

.mvio-browser.is-loading .mvio-browser-results {
    opacity: .42;
    pointer-events: none;
}

.mvio-browser-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 34px 20px;
}

.mvio-browser-card {
    min-width: 0;
}

.mvio-browser-card__image {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    border-radius: 8px;
    background: #111515;
    border: 1px solid rgba(255,255,255,0.055);
}

.mvio-browser-card__thumb,
.mvio-browser-card__placeholder {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .28s ease, opacity .28s ease;
}

.mvio-browser-card__placeholder {
    background:
        radial-gradient(circle at 65% 35%, rgba(141,255,31,.14), transparent 35%),
        #111515;
}

.mvio-browser-card:hover .mvio-browser-card__thumb {
    transform: scale(1.018);
}

.mvio-browser-card__body {
    padding: 10px 2px 0;
}

.mvio-browser-card__title {
    margin: 0;
    color: #f6f7f7;
    font-size: 14px;
    line-height: 1.34;
    font-weight: 600;
    letter-spacing: -0.01em;
}

.mvio-browser-card__title a {
    color: inherit;
    text-decoration: none;
}

.mvio-browser-card__meta {
    margin: 4px 0 0;
    color: rgba(255,255,255,0.43);
    font-size: 9px;
    line-height: 1.45;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mvio-browser-empty {
    min-height: 420px;
    display: grid;
    place-content: center;
    text-align: center;
    padding: 40px;
    border: 1px dashed rgba(255,255,255,0.10);
    border-radius: 14px;
}

.mvio-browser-empty h3 {
    margin: 0 0 8px;
    font-size: 20px;
}

.mvio-browser-empty p {
    margin: 0;
    color: rgba(255,255,255,0.52);
    font-size: 13px;
}

/* ---------- PAGINATION ---------- */
.mvio-browser-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 52px;
}

.mvio-browser-pagination .page-numbers {
    min-width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    border-radius: 9px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.035);
    color: rgba(255,255,255,0.72);
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
}

.mvio-browser-pagination .page-numbers:hover {
    color: #fff;
    border-color: rgba(255,255,255,0.18);
}

.mvio-browser-pagination .page-numbers.current {
    color: #071008;
    background: #8dff1f;
    border-color: #8dff1f;
}

/* ---------- RESPONSIVE ---------- */
@media (max-width: 1180px) {
    .mvio-browser-layout {
        grid-template-columns: 240px minmax(0, 1fr);
        gap: 22px;
    }

    .mvio-browser-grid {
        gap: 26px 16px;
    }

    .mvio-browser-hero__copy {
        width: min(670px, 68%);
        padding: 72px 52px;
    }
}

@media (max-width: 900px) {
    .mvio-browser {
        padding-top: 20px;
    }

    .mvio-browser-shell {
        width: calc(100% - 28px);
    }

    .mvio-browser-hero {
        min-height: 360px;
        border-radius: 16px;
    }

    .mvio-browser-hero__copy {
        width: min(650px, 82%);
        padding: 58px 34px;
    }

    .mvio-browser-layout {
        grid-template-columns: 1fr;
    }

    .mvio-browser-sidebar {
        position: static;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }

    .mvio-browser-filter-card {
        padding: 16px 14px;
    }
}

@media (max-width: 680px) {
    .mvio-browser {
        padding-bottom: 58px;
    }

    .mvio-browser-shell {
        width: calc(100% - 20px);
    }

    .mvio-browser-hero {
        min-height: 340px;
    }

    .mvio-browser-hero__shade {
        background:
            linear-gradient(90deg,
                rgba(4,6,5,0.97) 0%,
                rgba(4,6,5,0.88) 48%,
                rgba(4,6,5,0.34) 100%
            );
    }

    .mvio-browser-hero__copy {
        width: 100%;
        padding: 48px 24px;
    }

    .mvio-browser-hero h1 {
        font-size: 32px;
    }

    .mvio-browser-sidebar {
        grid-template-columns: 1fr;
    }

    .mvio-browser-toolbar {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
    }

    .mvio-browser-search {
        width: 100%;
    }

    .mvio-browser-sort {
        align-self: flex-start;
    }

    .mvio-browser-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px 10px;
    }

    .mvio-browser-card__title {
        font-size: 12px;
    }

    .mvio-browser-card__meta {
        font-size: 8px;
    }

    .mvio-browser-pagination {
        margin-top: 36px;
        gap: 6px;
    }

    .mvio-browser-pagination .page-numbers {
        min-width: 34px;
        height: 34px;
        border-radius: 8px;
    }
}


/* ================================================================
   MOTION VIO V2 — Homepage cinematic preview, native section accents
   and dark UI tokens. Existing footer/single layout remains unchanged.
================================================================ */
:root { color-scheme: only dark; }
body { color-scheme: only dark; }
body.motion-bio-home-page .mb-home-hero { isolation: isolate; }
body.motion-bio-home-page .mvio-home-hero-media {
    position: absolute; inset: 0 0 0 auto; width: min(71%, 1180px);
    height: 100%; z-index: 0; overflow: hidden; pointer-events: none;
    border-radius: 0;
}
body.motion-bio-home-page .mvio-home-hero-media__video {
    display: block; width: 100%; height: 100%; object-fit: cover;
    object-position: center; opacity: .88;
}
body.motion-bio-home-page .mvio-home-hero-shade {
    position: absolute; inset: 0; z-index: 1; pointer-events: none;
    background: linear-gradient(90deg,
        rgba(10,25,16,.99) 0%, rgba(10,25,16,.97) 21%,
        rgba(10,25,16,.89) 36%, rgba(9,19,15,.62) 53%,
        rgba(9,18,15,.17) 75%, rgba(9,18,15,.10) 100%),
        linear-gradient(0deg,rgba(8,20,14,.86),transparent 24%,transparent 82%,rgba(7,16,12,.32));
}
body.motion-bio-home-page .mb-home-hero__glow { z-index: 0; }
body.motion-bio-home-page .mb-home-hero__inner { position: relative; z-index: 2; }
body.motion-bio-home-page .mb-home-hero__copy { z-index: 2; }
body.motion-bio-home-page .mb-home-hero::before { z-index: 1; }
body.motion-bio-home-page .mb-home-section-heading--row,
body.motion-bio-home-page .mb-home-category__heading {
    border: 1px solid rgba(255,255,255,.09);
    background: rgba(255,255,255,.035);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-radius: 14px;
    padding: 16px 18px;
    gap: 18px;
}
body.motion-bio-home-page .mb-home-view-all {
    display: inline-flex; align-items: center; justify-content: center; gap: 11px;
    padding: 11px 17px; min-height: 39px;
    border-radius: 12px; border: 1px solid rgba(255,255,255,.16);
    background: rgba(255,255,255,.075); color: #fff !important;
    backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
    text-decoration: none; white-space: nowrap;
}
body.motion-bio-home-page .mb-home-view-all:hover {
    background: rgba(255,255,255,.13); border-color: rgba(255,255,255,.25);
}
/* Lock the site's brand button contrast against browser auto-dark transforms. */
.mb-home-header .mb-home-actions-menu li:last-child a,
.mb-home-header .mb-home-action-signup,
.mb-home-header .mb-home-action-signup:visited,
.mb-home-header .mb-home-action-signup:hover,
.mb-home-header .mb-home-actions-menu li:last-child a:hover {
    background-color: #8dff1f !important;
    border-color: #8dff1f !important;
    color: #09100a !important;
    -webkit-text-fill-color: #09100a !important;
    color-scheme: only dark;
}
.mb-home-cta, .mb-home-cta:hover { color: #09100a !important; -webkit-text-fill-color: #09100a !important; }
@media (max-width: 760px) {
    body.motion-bio-home-page .mvio-home-hero-media { width: 100%; opacity: .42; }
    body.motion-bio-home-page .mvio-home-hero-shade {
        background: linear-gradient(90deg,rgba(8,22,13,.94),rgba(8,20,14,.68)),
        linear-gradient(0deg,rgba(8,22,13,.9),transparent 42%);
    }
    body.motion-bio-home-page .mb-home-section-heading--row,
    body.motion-bio-home-page .mb-home-category__heading { padding: 12px 14px; }
    body.motion-bio-home-page .mb-home-view-all { padding: 9px 12px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
    .mvio-home-hero-media__video, .mvio-browser-hero__video { display: none; }
}

/* =====================================================================
   MOTION VIO V3 — TARGETED HOMEPAGE HERO FADE + SITE-WIDE HEADER PARITY
   Paste after all older V2 rules. No homepage header layout is altered.
   Keep the HTML/PHP/JS from V2 as-is.
===================================================================== */

/* A seamless reveal, rather than an opaque rectangular right-hand video.
   The double mask blends the footage both into the text area (left) and
   into the page background (bottom). The original video remains full-size. */
body.motion-bio-home-page .mb-home-hero .mvio-home-hero-media {
    position: absolute;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
    overflow: hidden;
    opacity: 1;
    pointer-events: none;
    -webkit-mask-image: linear-gradient(to right,
        transparent 0%,
        rgba(0,0,0,.08) 16%,
        rgba(0,0,0,.48) 40%,
        rgba(0,0,0,.93) 64%,
        #000 82%),
        linear-gradient(to bottom,
        #000 0%, #000 72%, rgba(0,0,0,.72) 84%, transparent 100%);
    mask-image: linear-gradient(to right,
        transparent 0%,
        rgba(0,0,0,.08) 16%,
        rgba(0,0,0,.48) 40%,
        rgba(0,0,0,.93) 64%,
        #000 82%),
        linear-gradient(to bottom,
        #000 0%, #000 72%, rgba(0,0,0,.72) 84%, transparent 100%);
    -webkit-mask-composite: source-in;
    mask-composite: intersect;
}
body.motion-bio-home-page .mb-home-hero .mvio-home-hero-media__video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 70% center;
    opacity: .94;
}
/* Left text remains legible and fades smoothly into the footage. */
body.motion-bio-home-page .mb-home-hero .mvio-home-hero-shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(90deg,
            rgba(9,29,17,.98) 0%,
            rgba(9,29,17,.93) 19%,
            rgba(9,28,18,.72) 35%,
            rgba(9,27,19,.30) 56%,
            rgba(9,27,19,.04) 83%,
            transparent 100%),
        linear-gradient(0deg,
            rgba(13,34,23,.25) 0%,
            transparent 30%);
}
/* The video is decorative and should blend into the same green-black
   gradient already used by Trending/Hot Right Now, not a separate panel. */
body.motion-bio-home-page .mb-home-hero {
    border: 0;
    background: transparent !important;
}
body.motion-bio-home-page .mb-home-hero__inner,
body.motion-bio-home-page .mb-home-hero__copy {
    position: relative;
    z-index: 3;
}

/* Mirror the EXISTING homepage header on every other page. We intentionally
   don't target body.motion-bio-home-page: its current header is unchanged.
   An ID here outranks legacy single post and ThemePlace width overrides. */
body:not(.motion-bio-home-page) #vh-site-header.vh-header.mb-home-header {
    width: 100% !important;
    max-width: none !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 !important;
    margin: 0 !important;
    position: sticky !important;
    top: 0 !important;
    left: auto !important;
    right: auto !important;
    display: flex !important;
    align-items: center !important;
    background: rgba(10, 11, 11, .96) !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    isolation: auto !important;
    overflow: visible !important;
    z-index: 1000;
}
/* Previous compact single template painted a second full-width header layer. */
body:not(.motion-bio-home-page) #vh-site-header.mb-home-header::before {
    content: none !important;
    display: none !important;
}
body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__container {
    width: min(1700px, calc(100% - 40px)) !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 28px !important;
}
body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__logo {
    display: flex !important;
    min-width: 155px !important;
    align-items: center !important;
}
body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__primary-nav {
    display: flex !important;
    min-width: 0 !important;
    justify-content: center !important;
}
body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__right {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
}
body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__mobile-triggers {
    display: none !important;
}

@media (max-width: 1180px) and (min-width: 992px) {
    body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__container {
        gap: 18px !important;
    }
}

@media (max-width: 991px) {
    /* Match the existing homepage mobile header, without touching the homepage. */
    body:not(.motion-bio-home-page) #vh-site-header.vh-header.mb-home-header {
        width: calc(100% - 32px) !important;
        margin: 0 auto !important;
        height: 68px !important;
        min-height: 68px !important;
        position: relative !important;
    }
    body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__container {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        position: relative !important;
    }
    body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__logo {
        min-width: 0 !important;
    }
    body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__primary-nav,
    body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__right {
        display: none !important;
    }
    body:not(.motion-bio-home-page) #vh-site-header .mb-home-header__mobile-triggers {
        display: flex !important;
        position: absolute !important;
        left: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        gap: 5px;
    }
    body:not(.motion-bio-home-page) #vh-site-header .vh-hamburger-icon span {
        background: #fff !important;
    }
    body.motion-bio-home-page .mb-home-hero .mvio-home-hero-media {
        opacity: .65;
        -webkit-mask-image: linear-gradient(0deg, transparent 0%, #000 35%, #000 100%);
        mask-image: linear-gradient(0deg, transparent 0%, #000 35%, #000 100%);
    }
    body.motion-bio-home-page .mb-home-hero .mvio-home-hero-shade {
        background: linear-gradient(90deg,rgba(9,29,17,.93),rgba(9,29,17,.60)),
                    linear-gradient(0deg,rgba(11,32,21,.35),transparent 55%);
    }
}
@media (max-width: 560px) {
    body:not(.motion-bio-home-page) #vh-site-header.vh-header.mb-home-header {
        width: calc(100% - 24px) !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    body.motion-bio-home-page .mb-home-hero .mvio-home-hero-media__video { display: none; }
}
