/**

 * Zanderjaz homepage layout refresh — scoped to .content-home .zj-home

 *

 * Note: theme root uses html { font-size: 62.5% }, so this block resets

 * a 16px scale for homepage sections to keep typography readable.

 */



/* Fixed parallax background (front page only) */



body.home .wrapper {

    position: relative;

    z-index: 1;

}



.zj-home-bg {

    inset: 0;

    overflow: hidden;

    pointer-events: none;

    position: fixed;

    z-index: 0;

}



.zj-home-bg__layer {

    height: 100%;

    left: 0;

    position: absolute;

    top: 0;

    width: 100%;

    will-change: transform;

}



.zj-home-bg__layer img {

    height: 125%;

    left: 0;

    max-width: none;

    object-fit: cover;

    object-position: center top;

    opacity: 0.75;

    position: absolute;

    top: 0;

    width: 100%;

    will-change: transform;

}



.zj-home-bg__overlay {

    background:

        radial-gradient(ellipse 90% 70% at 50% 20%, rgba(18, 18, 18, 0) 0%, rgba(18, 18, 18, 0.45) 100%),

        linear-gradient(180deg, rgba(18, 18, 18, 0.2) 0%, rgba(18, 18, 18, 0.55) 55%, rgba(18, 18, 18, 0.92) 100%);

    inset: 0;

    position: absolute;

}



@media (prefers-reduced-motion: no-preference) {

    html.js body.home .zj-home-bg:not(.is-parallax-ready) .zj-home-bg__layer img {

        opacity: 0;

    }



    html.js body.home .zj-home-bg.is-parallax-ready .zj-home-bg__layer img {

        opacity: 0.75;

        transition: opacity 0.6s ease;

    }

}



@media (prefers-reduced-motion: reduce) {

    .zj-home-bg__layer img {

        height: 100%;

        will-change: auto;

    }

}



.content-home {

    padding-top: 33px;

    padding-bottom: 33px;

}



.content-home .zj-home {

    --zj-accent: #fd6427;

    --zj-surface-raised: #212121;

    --zj-border: rgba(255, 255, 255, 0.08);

    --zj-text: #f2f2f2;

    --zj-text-muted: #b3b3b3;

    --zj-max-width: 1200px;

    --zj-section-gap: 40px;

    --zj-section-gap-compact: 28px;

    color: var(--zj-text);

    font-size: 16px;

    margin: 0 auto;

    max-width: none;

    width: 100%;

}



.content-home .zj-home-container {

    margin: 0 auto;

    max-width: var(--zj-max-width);

    width: 100%;

}



.content-home .zj-home__section {

    margin: 0 auto var(--zj-section-gap);

    width: 100%;

}



.content-home .zj-home__section:last-child {

    margin-bottom: 33px;

}



/* Section headers */



.content-home .zj-home-section-header {

    margin: 0 0 22px;

    max-width: none;

    text-align: left;

}



.content-home .zj-home-section-header--center {

    text-align: center;

}



.content-home .zj-home-section-header__title {

    color: #fff;

    font: 800 32px/1.15 var(--font-heading);

    letter-spacing: -0.02em;

    margin: 0 0 10px;

    text-transform: uppercase;

}



.content-home .zj-home-section-header__desc {

    color: var(--zj-text-muted);

    font: 400 17px/1.6 var(--font-body);

    margin: 0;

    max-width: 62ch;

}



.content-home .zj-home-section-header--center .zj-home-section-header__desc {

    margin-left: auto;

    margin-right: auto;

}



/* Buttons */



.content-home .zj-home-btn {

    align-items: center;

    border: 2px solid transparent;

    border-radius: 999px;

    display: inline-flex;

    font: 700 15px/1 var(--font-ui);

    gap: 8px;

    justify-content: center;

    letter-spacing: 0.04em;

    min-height: 48px;

    padding: 12px 24px;

    text-decoration: none;

    text-transform: uppercase;

    transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;

}



.content-home .zj-home-btn:hover,

.content-home .zj-home-btn:focus-visible {

    text-decoration: none;

}



.content-home .zj-home-btn--primary {

    background-color: var(--zj-orange, var(--zj-accent));

    border-color: var(--zj-orange, var(--zj-accent));

    color: var(--zj-button-on-orange, #111111);

}



.content-home .zj-home-btn--primary:hover,

.content-home .zj-home-btn--primary:focus-visible {

    background-color: var(--zj-orange-hover, #ff7a3d);

    border-color: var(--zj-orange-hover, #ff7a3d);

    color: var(--zj-button-on-orange, #111111);

}



.content-home .zj-home-btn--ghost {

    background-color: transparent;

    border-color: rgba(255, 255, 255, 0.35);

    color: #fff;

}



.content-home .zj-home-btn--ghost:hover,

.content-home .zj-home-btn--ghost:focus-visible {

    background-color: rgba(255, 255, 255, 0.08);

    border-color: #fff;

    color: #fff;

}



/* Hero */



.content-home .zj-home-hero {

    margin-bottom: var(--zj-section-gap);

}



.content-home .zj-home-hero__grid {

    align-items: center;

    display: grid;

    gap: 36px;

    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);

}



.content-home .zj-home-hero__copy {

    text-align: left;

}



.content-home .zj-home-hero__aside {

    align-items: flex-start;

    display: flex;

    flex-direction: column;

    gap: 22px;

}



.content-home .zj-home-hero__eyebrow {

    color: var(--zj-accent);

    font: 700 12px/1 var(--font-ui);

    letter-spacing: 0.16em;

    margin: 0 0 12px;

    text-transform: uppercase;

}



.content-home .zj-home-hero__title {

    color: #fff;

    font: 800 40px/1.12 var(--font-heading);

    letter-spacing: -0.03em;

    margin: 0 0 14px;

    text-transform: uppercase;

}



.content-home .zj-home-hero__title-line {

    display: block;

}



.content-home .zj-home-hero__tagline {

    color: var(--zj-text-muted);

    font: 400 17px/1.6 var(--font-body);

    margin: 0;

    max-width: 54ch;

    text-wrap: balance;

}



.content-home .zj-home-hero__actions {

    display: flex;

    flex-direction: column;

    gap: 12px;

    justify-content: flex-start;

    margin-bottom: 0;

    width: 100%;

    max-width: 300px;

}



.content-home .zj-home-hero__trust {

    display: flex;

    flex-direction: column;

    gap: 10px;

    justify-content: flex-start;

    list-style: none;

    margin: 0;

    padding: 0;

    width: 100%;

    max-width: 300px;

}



.content-home .zj-home-hero__trust li {

    align-items: center;

    color: #d9d9d9;

    display: inline-flex;

    font: 600 13px/1.2 var(--font-ui);

    gap: 8px;

    letter-spacing: 0.03em;

    text-transform: uppercase;

}



.content-home .zj-home-hero__trust-icon {

    color: var(--zj-accent);

    display: inline-flex;

}



/* Cards */



.content-home .zj-home-downloads__grid,

.content-home .zj-home-archive__grid {

    display: grid;

    gap: 20px;

    grid-template-columns: repeat(3, minmax(0, 1fr));

}



.content-home .zj-home-archive__grid {

    grid-template-columns: repeat(4, minmax(0, 1fr));

}



.content-home .zj-home-card__link {

    border: 1px solid var(--zj-border);

    border-radius: 14px;

    color: #fff;

    display: flex;

    height: 100%;

    min-height: 240px;

    overflow: hidden;

    position: relative;

    text-decoration: none;

    transition: border-color 0.25s ease, box-shadow 0.25s ease;

}



.content-home .zj-home-card__link:hover,

.content-home .zj-home-card__link:focus-visible {

    border-color: rgba(253, 100, 39, 0.55);

    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);

    color: #fff;

    text-decoration: none;

}



.content-home .zj-home-card__bg,

.content-home .zj-home-card__overlay {

    inset: 0;

    position: absolute;

}



.content-home .zj-home-card__bg {

    overflow: hidden;

}



.content-home .zj-home-card__bg img {

    height: 120%;

    left: 0;

    max-width: none;

    object-fit: cover;

    object-position: center;

    opacity: 0.45;

    position: absolute;

    top: 0;

    transition: opacity 0.25s ease;

    width: 100%;

    will-change: transform;

}



.content-home .zj-home-card__overlay {

    background: linear-gradient(180deg, rgba(18, 18, 18, 0.15) 0%, rgba(18, 18, 18, 0.92) 72%);

}

/* Free Beats card — slider image is darker; boost visibility */
.content-home .zj-home-card--beats .zj-home-card__bg img {
    opacity: 0.72;
    filter: saturate(1.12) contrast(1.06);
}

.content-home .zj-home-card--beats .zj-home-card__overlay {
    background: linear-gradient(180deg, rgba(18, 18, 18, 0.08) 0%, rgba(18, 18, 18, 0.75) 100%);
}

.content-home .zj-home-card--beats .zj-home-card__link:hover .zj-home-card__bg img,
.content-home .zj-home-card--beats .zj-home-card__link:focus-visible .zj-home-card__bg img {
    opacity: 0.85;
}



@media (prefers-reduced-motion: reduce) {

    .content-home .zj-home-card__bg img {

        height: 100%;

        will-change: auto;

    }

}



.content-home .zj-home-card__body {

    align-items: flex-end;

    display: flex;

    margin-top: auto;

    min-height: 100%;

    padding: 22px;

    position: relative;

    width: 100%;

    z-index: 2;

}



.content-home .zj-home-card--download .zj-home-card__body {

    align-items: end;

    column-gap: 14px;

    display: grid;

    grid-template-columns: auto 1fr;

    row-gap: 8px;

}



.content-home .zj-home-card--download .zj-home-card__content {

    display: contents;

}



.content-home .zj-home-card--download .zj-home-card__title {

    grid-column: 1 / -1;

    grid-row: 1;

}



.content-home .zj-home-card--download .zj-home-card__desc {

    grid-column: 1 / -1;

    grid-row: 2;

    margin-bottom: 8px;

    text-wrap: balance;

}



.content-home .zj-home-card--download .zj-home-card__icon {

    align-self: center;

    grid-column: 1;

    grid-row: 3;

    margin-bottom: 0;

}



.content-home .zj-home-card--download .zj-home-card__cta {

    align-self: center;

    grid-column: 2;

    grid-row: 3;

}



.content-home .zj-home-downloads .zj-home-section-header__desc {

    text-wrap: balance;

}



.content-home .zj-home-card__icon {

    display: block;

    margin-bottom: 14px;

}



.content-home .zj-home-card__icon svg path {

    fill: var(--zj-accent);

}



.content-home .zj-home-card__title {

    display: block;

    font: 800 22px/1.15 var(--font-heading);

    letter-spacing: -0.02em;

    margin-bottom: 8px;

    text-transform: uppercase;

}



.content-home .zj-home-card__desc {

    color: var(--zj-text-muted);

    display: block;

    font: 400 15px/1.55 var(--font-body);

    margin-bottom: 14px;

}



.content-home .zj-home-card__cta {

    color: var(--zj-accent);

    display: inline-block;

    font: 700 13px/1 var(--font-ui);

    letter-spacing: 0.08em;

    text-transform: uppercase;

}



/* Player section — match legacy .entry-content .wrapper-player behavior */



.content-home .zj-home-player {

    margin-bottom: var(--zj-section-gap-compact);

}



.content-home #home-player {

    scroll-margin-top: 110px;

}



.content-home .zj-home-player .zj-home-section-header {

    margin-bottom: 32px;

}



.content-home .zj-home-player__stage {

    background-color: var(--zj-surface-raised);

    border: 1px solid var(--zj-border);

    border-radius: 12px;

    overflow: visible;

    padding: 28px 20px 20px;

    width: 100%;

}



.content-home .zj-home-player__article,

.content-home .zj-home-player__stage > .entry-content {

    margin: 0;

    width: 100%;

}



.content-home .zj-home-player .entry-content {

    display: block;

    margin: 0;

    max-width: 100%;

    padding: 0;

    width: 100%;

}



.content-home .zj-home-player .entry-content .wrapper-player {

    align-items: center;

    display: flex;

    flex-direction: column;

    margin: 0 auto;

    max-width: 100%;

    overflow: visible;

    width: 100%;

}



.content-home .zj-home-player .entry-content .wrapper-player > *:not(h2) {

    max-width: 100%;

    width: 100%;

}



.content-home .zj-home-player .entry-content .wrapper-player h2 {

    font: 700 24px/34px var(--font-heading);

    margin: 0 0 20px;

    text-align: center;

    width: 100%;

}



.content-home .zj-home-player .entry-content .wrapper-player [id^="fwdrapDiv"] {

    margin-top: 8px;

    min-height: 1px;

    overflow: visible !important;

    width: 100% !important;

}



/* Stats strip */



.content-home .zj-home-stats {

    padding: 0;

}



.content-home .zj-home-stats .zj-home-container {

    background: linear-gradient(90deg, rgba(33, 33, 33, 0.95), rgba(26, 26, 26, 0.98));

    border: 1px solid var(--zj-border);

    border-radius: 14px;

    padding: 4px 0;

}



.content-home .zj-home-stats__list {

    display: grid;

    gap: 0;

    grid-template-columns: repeat(5, minmax(0, 1fr));

    list-style: none;

    margin: 0;

    padding: 0;

}



.content-home .zj-home-stats__item {

    align-items: center;

    border-right: 1px solid var(--zj-border);

    display: flex;

    flex-direction: column;

    gap: 6px;

    justify-content: center;

    min-height: 110px;

    padding: 16px 12px;

    text-align: center;

}



.content-home .zj-home-stats__item:last-child {

    border-right: 0;

}



.content-home .zj-home-stats__icon {

    color: var(--zj-accent);

    display: inline-flex;

}



.content-home .zj-home-stats__value {

    color: #fff;

    font: 800 28px/1 var(--font-heading);

    letter-spacing: -0.02em;

}



.content-home .zj-home-stats__label {

    color: var(--zj-text-muted);

    font: 600 12px/1.2 var(--font-ui);

    letter-spacing: 0.12em;

    text-transform: uppercase;

}



/* Responsive */



@media only screen and (max-width: 1100px) {

    .content-home .zj-home-archive__grid {

        grid-template-columns: repeat(2, minmax(0, 1fr));

    }

}



@media only screen and (max-width: 900px) {

    .content-home .zj-home-hero__grid {

        gap: 28px;

        grid-template-columns: 1fr;

    }



    .content-home .zj-home-hero__actions,

    .content-home .zj-home-hero__trust {

        max-width: none;

    }



    .content-home .zj-home-downloads__grid,

    .content-home .zj-home-stats__list {

        grid-template-columns: repeat(2, minmax(0, 1fr));

    }



    .content-home .zj-home-stats__item:nth-child(2n) {

        border-right: 0;

    }



    .content-home .zj-home-stats__item:nth-child(-n+3) {

        border-bottom: 1px solid var(--zj-border);

    }



    .content-home .zj-home-hero__title {

        font-size: 34px;

    }

}



@media only screen and (max-width: 640px) {

    .content-home {

        padding-left: 20px;

        padding-right: 20px;

    }



    .content-home .zj-home-downloads__grid,

    .content-home .zj-home-archive__grid,

    .content-home .zj-home-stats__list {

        grid-template-columns: 1fr;

    }



    .content-home .zj-home-stats__item {

        border-bottom: 1px solid var(--zj-border);

        border-right: 0;

        min-height: 92px;

    }



    .content-home .zj-home-stats__item:last-child {

        border-bottom: 0;

    }



    .content-home .zj-home-hero__actions {

        align-items: stretch;

        flex-direction: column;

    }



    .content-home .zj-home-btn {

        width: 100%;

    }



    .content-home .zj-home-hero__title {

        font-size: 28px;

    }



    .content-home .zj-home-section-header__title {

        font-size: 28px;

    }

}


