/*
 * Kozystreet Homepage V2 Clean Site 0.4.0
 * Page shell exceptions are limited to 13 + our request-only body class.
 * Everything else is inside #ks-home-v2. No Elementor or legacy .ks-* classes.
 */

body.page-id-13.ksv2-preview-page .page-header {
    display: none !important;
}

/* Release only the main page-content wrappers, never header/footer containers. */
body.page-id-13.ksv2-preview-page #content > .woostify-container,
body.page-id-13.ksv2-preview-page #content > .woostify-container > #primary,
body.page-id-13.ksv2-preview-page #content #main,
body.page-id-13.ksv2-preview-page #content #post-13,
body.page-id-13.ksv2-preview-page #content #post-13 > .entry-content {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Including #content beats the existing html body #content <element> rules.
 * The second selector supports the identical standalone preview markup.
 */
body.page-id-13 #content #ks-home-v2 .ksv2-hero,
#ks-home-v2 .ksv2-hero {
    --ksv2-charcoal: #222222;
    --ksv2-ivory: #F7F4EF;
    --ksv2-walnut: #6B4935;
    --ksv2-bronze: #A8845B;
    --ksv2-grey: #6F6A64;
    --ksv2-ui-font: "Inter", Arial, sans-serif;
    --ksv2-title-font: "Playfair Display", Georgia, serif;

    display: grid !important;
    grid-template-columns: minmax(0, 45fr) minmax(0, 55fr) !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 680px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--ksv2-ivory) !important;
    color: var(--ksv2-charcoal) !important;
    box-shadow: none !important;
    text-align: left !important;
    isolation: isolate;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero,
body.page-id-13 #content #ks-home-v2 .ksv2-hero *,
body.page-id-13 #content #ks-home-v2 .ksv2-hero *::before,
body.page-id-13 #content #ks-home-v2 .ksv2-hero *::after,
#ks-home-v2 .ksv2-hero,
#ks-home-v2 .ksv2-hero *,
#ks-home-v2 .ksv2-hero *::before,
#ks-home-v2 .ksv2-hero *::after {
    box-sizing: border-box;
    font-family: var(--ksv2-ui-font) !important;
    font-style: normal !important;
    text-align: left !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-content,
#ks-home-v2 .ksv2-hero .ksv2-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch !important;
    min-width: 0 !important;
    padding: 76px clamp(36px, 5.3vw, 80px) !important;
    background: var(--ksv2-ivory) !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-copy,
#ks-home-v2 .ksv2-hero .ksv2-copy {
    width: 100% !important;
    max-width: 540px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-kicker,
#ks-home-v2 .ksv2-hero .ksv2-kicker {
    display: block !important;
    margin: 0 0 28px !important;
    padding: 0 !important;
    color: var(--ksv2-walnut) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1.6 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-kicker::before,
#ks-home-v2 .ksv2-hero .ksv2-kicker::before {
    content: "";
    display: block;
    width: 36px;
    height: 2px;
    margin-bottom: 22px;
    background: var(--ksv2-bronze);
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-title,
#ks-home-v2 .ksv2-hero .ksv2-title {
    margin: 0 0 26px !important;
    padding: 0 !important;
    max-width: none !important;
    color: var(--ksv2-charcoal) !important;
    font-family: var(--ksv2-title-font) !important;
    font-size: clamp(46px, 4.45vw, 68px) !important;
    font-weight: 500 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.04em !important;
    text-transform: none !important;
    overflow-wrap: normal;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-description,
#ks-home-v2 .ksv2-hero .ksv2-description {
    margin: 0 0 34px !important;
    padding: 0 !important;
    color: var(--ksv2-grey) !important;
    font-size: clamp(16px, 1.25vw, 18px) !important;
    font-weight: 400 !important;
    line-height: 1.8 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-actions,
#ks-home-v2 .ksv2-hero .ksv2-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero a.ksv2-button,
#ks-home-v2 .ksv2-hero a.ksv2-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    min-height: 52px !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 16px 20px !important;
    border: 1px solid var(--ksv2-walnut) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1.6 !important;
    letter-spacing: 0.1em !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    transition: background-color 160ms ease, color 160ms ease;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero a.ksv2-button-primary,
#ks-home-v2 .ksv2-hero a.ksv2-button-primary {
    background: var(--ksv2-walnut) !important;
    color: var(--ksv2-ivory) !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero a.ksv2-button-secondary,
#ks-home-v2 .ksv2-hero a.ksv2-button-secondary {
    background: transparent !important;
    color: var(--ksv2-walnut) !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero a.ksv2-button:hover,
#ks-home-v2 .ksv2-hero a.ksv2-button:hover {
    background: var(--ksv2-charcoal) !important;
    border-color: var(--ksv2-charcoal) !important;
    color: var(--ksv2-ivory) !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero a.ksv2-button:focus-visible,
#ks-home-v2 .ksv2-hero a.ksv2-button:focus-visible {
    outline: 2px solid var(--ksv2-walnut) !important;
    outline-offset: 5px !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-trust,
#ks-home-v2 .ksv2-hero .ksv2-trust {
    margin: 20px 0 0 !important;
    padding: 0 !important;
    color: var(--ksv2-grey) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.85 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-media,
#ks-home-v2 .ksv2-hero .ksv2-media {
    position: relative !important;
    display: block !important;
    min-width: 0 !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    background: var(--ksv2-walnut) !important;
}

body.page-id-13 #content #ks-home-v2 .ksv2-hero img.ksv2-image,
#ks-home-v2 .ksv2-hero img.ksv2-image {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: cover !important;
    object-position: 50% 50% !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
}

@media (min-width: 768px) and (max-width: 1100px) {
    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-content,
    #ks-home-v2 .ksv2-hero .ksv2-content {
        padding: 56px 32px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-13 #content #ks-home-v2 .ksv2-hero,
    #ks-home-v2 .ksv2-hero {
        grid-template-columns: minmax(0, 1fr) !important;
        min-height: 0 !important;
    }

    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-content,
    #ks-home-v2 .ksv2-hero .ksv2-content {
        padding: 44px 24px 44px !important;
    }

    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-media,
    #ks-home-v2 .ksv2-hero .ksv2-media {
        grid-row: 1 !important;
        min-height: 0 !important;
        height: clamp(330px, 85vw, 340px) !important;
        aspect-ratio: auto;
    }

    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-title,
    #ks-home-v2 .ksv2-hero .ksv2-title {
        font-size: clamp(42px, 10.8vw, 46px) !important;
        line-height: 1.05 !important;
        margin-bottom: 24px !important;
    }

    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-kicker,
    #ks-home-v2 .ksv2-hero .ksv2-kicker {
        margin-bottom: 30px !important;
    }

    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-description,
    #ks-home-v2 .ksv2-hero .ksv2-description {
        font-size: 17px !important;
        line-height: 1.55 !important;
        max-width: 330px !important;
        margin: 0 auto 28px !important;
    }

    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-trust,
    #ks-home-v2 .ksv2-hero .ksv2-trust {
        font-size: 12px !important;
    }

    body.page-id-13 #content #ks-home-v2 .ksv2-hero *,
    body.page-id-13 #content #ks-home-v2 .ksv2-hero *::before,
    #ks-home-v2 .ksv2-hero *,
    #ks-home-v2 .ksv2-hero *::before {
        text-align: center !important;
    }
    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-copy,
    #ks-home-v2 .ksv2-hero .ksv2-copy {
        margin: 0 auto !important;
    }
    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-kicker::before,
    #ks-home-v2 .ksv2-hero .ksv2-kicker::before {
        margin: 0 auto 22px !important;
    }
    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-actions,
    #ks-home-v2 .ksv2-hero .ksv2-actions {
        width: 100% !important;
        max-width: 330px !important;
        margin: 0 auto !important;
        justify-content: center !important;
    }
    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-trust,
    #ks-home-v2 .ksv2-hero .ksv2-trust {
        max-width: 330px !important;
        margin: 20px auto 0 !important;
        text-wrap: pretty;
    }

    body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-trust-claim,
    #ks-home-v2 .ksv2-hero .ksv2-trust-claim {
        display: inline-block;
        white-space: nowrap;
    }

    body.page-id-13 #content #ks-home-v2 .ksv2-hero a.ksv2-button,
    #ks-home-v2 .ksv2-hero a.ksv2-button {
        flex: 1 1 100% !important;
        width: 100% !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.page-id-13 #content #ks-home-v2 .ksv2-hero a.ksv2-button,
    #ks-home-v2 .ksv2-hero a.ksv2-button {
        transition: none;
    }
}

/* 0.4.0 approved alignment change: center the copy at every viewport. */
body.page-id-13 #content #ks-home-v2 .ksv2-hero *,
body.page-id-13 #content #ks-home-v2 .ksv2-hero *::before,
#ks-home-v2 .ksv2-hero *, #ks-home-v2 .ksv2-hero *::before {text-align:center!important}
body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-copy, #ks-home-v2 .ksv2-hero .ksv2-copy {margin:0 auto!important;max-width:510px!important}
body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-kicker::before, #ks-home-v2 .ksv2-hero .ksv2-kicker::before {margin-left:auto!important;margin-right:auto!important}
body.page-id-13 #content #ks-home-v2 .ksv2-hero .ksv2-actions, #ks-home-v2 .ksv2-hero .ksv2-actions {justify-content:center!important}
