body.home {
    --ab-paper: #ffffff;
    --ab-sand: #eeece8;
    --ab-ink: #443f39;
    --ab-muted: #736d66;
    --ab-soft: #aaa39a;
    --ab-gold: #766449;
    --ab-dark: #171512;
    --ab-line: rgba(68, 63, 57, 0.12);
    background: var(--ab-paper) !important;
    color: var(--ab-ink) !important;
}

body.home .site-main,
body.home .content-area,
body.home .site-content,
body.home .entry-content,
body.home .wp-site-blocks {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--ab-paper) !important;
}

body.home img,
body.home video {
    display: block !important;
    max-width: 100% !important;
}

body.home .vw-progress-bar {
    background: #b50d25 !important;
}

body.home .site-header.is-scrolled,
body.home .site-header.vard-v2-site-header.is-scrolled {
    background: rgba(74, 50, 35, 0.94) !important;
    background-image: none !important;
}

body.home .ab-home {
    width: 100% !important;
    overflow: hidden !important;
    background: var(--ab-paper) !important;
}

body.home .ab-hero {
    position: relative !important;
    display: grid !important;
    min-height: 520px !important;
    height: 68svh !important;
    max-height: 720px !important;
    place-items: center !important;
    overflow: hidden !important;
    background: var(--ab-dark) !important;
    isolation: isolate !important;
}

body.home .ab-hero__video {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 38% !important;
    background: var(--ab-dark) !important;
    filter: saturate(0.94) contrast(1.04) brightness(0.78) !important;
}

body.home .ab-hero__shade {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background:
        linear-gradient(180deg, rgba(14, 13, 11, 0.44), rgba(14, 13, 11, 0.07) 48%, rgba(14, 13, 11, 0.48)),
        linear-gradient(90deg, rgba(14, 13, 11, 0.36), rgba(14, 13, 11, 0.04) 50%, rgba(14, 13, 11, 0.26)) !important;
    pointer-events: none !important;
}

body.home .ab-hero__content {
    position: relative !important;
    z-index: 2 !important;
    width: min(920px, calc(100% - 2rem)) !important;
    padding: 7rem 0 4rem !important;
    text-align: center !important;
}

body.home .ab-hero__eyebrow {
    display: block !important;
    margin: 0 0 0.55rem !important;
    color: rgba(255, 250, 241, 0.82) !important;
    font-family: var(--vw-sans, "Plus Jakarta Sans", Arial, sans-serif) !important;
    font-size: 0.64rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

body.home .ab-hero h1 {
    max-width: 940px !important;
    margin: 0 auto 0.75rem !important;
    color: #fffaf1 !important;
    font-family: var(--vw-display, "Cinzel", Georgia, serif) !important;
    font-size: clamp(4rem, 7.2vw, 6.4rem) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 0.96 !important;
    text-transform: uppercase !important;
    text-shadow: 0 18px 48px rgba(0, 0, 0, 0.42) !important;
}

body.home .ab-hero p {
    margin: 0 auto !important;
    color: rgba(255, 250, 241, 0.82) !important;
    font-family: var(--vw-serif, "Cormorant Garamond", Georgia, serif) !important;
    font-size: 1.22rem !important;
    font-style: italic !important;
    line-height: 1.45 !important;
    text-shadow: 0 8px 22px rgba(0, 0, 0, 0.3) !important;
}

body.home .ab-hero__scroll {
    position: absolute !important;
    right: 2rem !important;
    bottom: 1.8rem !important;
    z-index: 2 !important;
    display: grid !important;
    width: 2.15rem !important;
    height: 2.15rem !important;
    place-items: center !important;
    border: 1px solid rgba(255, 250, 241, 0.62) !important;
    border-radius: 50% !important;
    color: rgba(255, 250, 241, 0.82) !important;
    text-decoration: none !important;
}

body.home .ab-hero__scroll::before {
    content: "" !important;
    width: 0.45rem !important;
    height: 0.45rem !important;
    border-right: 1px solid currentColor !important;
    border-bottom: 1px solid currentColor !important;
    transform: rotate(45deg) translateY(-1px) !important;
}

body.home .ab-feature,
body.home .ab-experiences,
body.home .ab-journal,
body.home .ab-final-cta {
    position: relative !important;
    overflow: hidden !important;
}

body.home .ab-feature--white,
body.home .ab-journal {
    background: var(--ab-paper) !important;
}

body.home .ab-feature--sand,
body.home .ab-experiences {
    background: var(--ab-sand) !important;
}

body.home .ab-feature__inner {
    width: min(1040px, calc(100% - 3rem)) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr) !important;
    gap: clamp(3.5rem, 6vw, 5.75rem) !important;
    align-items: center !important;
    padding: clamp(5.2rem, 7vw, 7.2rem) 0 !important;
}

body.home .ab-feature--reverse .ab-feature__inner {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr) !important;
}

body.home .ab-feature--edge .ab-feature__inner,
body.home .ab-feature--impact .ab-feature__inner {
    grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr) !important;
}

body.home .ab-copy {
    max-width: 365px !important;
    min-width: 0 !important;
}

body.home .ab-feature--reverse .ab-copy {
    justify-self: end !important;
}

body.home .ab-eyebrow {
    display: block !important;
    margin: 0 0 0.72rem !important;
    color: var(--ab-soft) !important;
    font-family: var(--vw-sans, "Plus Jakarta Sans", Arial, sans-serif) !important;
    font-size: 0.58rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
}

body.home .ab-copy h2,
body.home .ab-section-head h2 {
    margin: 0 0 1.1rem !important;
    color: #6a5f57 !important;
    font-family: var(--vw-serif, "Cormorant Garamond", Georgia, serif) !important;
    font-size: clamp(2.25rem, 3.6vw, 2.75rem) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 1.02 !important;
    text-transform: none !important;
}

body.home .ab-copy p,
body.home .ab-section-head p {
    max-width: 34rem !important;
    margin: 0 0 1.35rem !important;
    color: var(--ab-muted) !important;
    font-family: var(--vw-sans, "Plus Jakarta Sans", Arial, sans-serif) !important;
    font-size: 0.86rem !important;
    line-height: 1.76 !important;
}

body.home .ab-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.9rem !important;
    align-items: center !important;
}

body.home .ab-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 32px !important;
    padding: 0.68rem 0.95rem !important;
    border: 1px solid var(--ab-gold) !important;
    border-radius: 0 !important;
    background: var(--ab-gold) !important;
    color: #ffffff !important;
    font-family: var(--vw-sans, "Plus Jakarta Sans", Arial, sans-serif) !important;
    font-size: 0.58rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
}

body.home .ab-button:hover,
body.home .ab-button:focus-visible {
    border-color: var(--ab-dark) !important;
    background: var(--ab-dark) !important;
    color: #ffffff !important;
}

body.home .ab-text-link {
    color: var(--ab-gold) !important;
    font-family: var(--vw-sans, "Plus Jakarta Sans", Arial, sans-serif) !important;
    font-size: 0.58rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
}

body.home .ab-text-link::after {
    content: " ->" !important;
}

body.home .ab-photo,
body.home .ab-collage figure,
body.home .ab-exp-card,
body.home .ab-journal__images figure {
    margin: 0 !important;
    overflow: hidden !important;
    background: #d8d2c8 !important;
}

body.home .ab-photo img,
body.home .ab-collage img,
body.home .ab-exp-card img,
body.home .ab-journal__images img,
body.home .ab-final-cta__image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    filter: saturate(1.03) contrast(1.02) brightness(1) !important;
}

body.home .ab-photo {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1.18 / 1 !important;
}

body.home .ab-photo--portrait {
    aspect-ratio: 1.08 / 1 !important;
}

body.home .ab-photo--wide {
    aspect-ratio: 1.22 / 1 !important;
    transform: translateX(-4%) !important;
}

body.home .ab-photo--edge {
    position: relative !important;
    aspect-ratio: 1.34 / 1 !important;
    transform: translateX(18%) !important;
}

body.home .ab-photo img {
    object-position: center top !important;
    transition: transform 0.7s ease, filter 0.3s ease !important;
}

body.home .ab-photo:hover img,
body.home .ab-collage figure:hover img,
body.home .ab-exp-card:hover img {
    transform: scale(1.035) !important;
}

body.home .ab-map-pins {
    position: absolute !important;
    right: 1rem !important;
    bottom: 1rem !important;
    left: 1rem !important;
    z-index: 2 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.45rem !important;
    margin: 0 !important;
}

body.home .ab-map-pins a {
    padding: 0.4rem 0.62rem !important;
    border: 1px solid rgba(255, 250, 241, 0.52) !important;
    background: rgba(20, 18, 15, 0.42) !important;
    color: #fffaf1 !important;
    font-family: var(--vw-sans, "Plus Jakarta Sans", Arial, sans-serif) !important;
    font-size: 0.56rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    backdrop-filter: blur(8px) !important;
}

body.home .ab-collage {
    position: relative !important;
    min-height: clamp(360px, 36vw, 480px) !important;
}

body.home .ab-collage figure {
    position: absolute !important;
    box-shadow: none !important;
}

body.home .ab-collage--right figure:first-child {
    top: 0 !important;
    right: -10% !important;
    width: 66% !important;
    aspect-ratio: 1 / 1.05 !important;
}

body.home .ab-collage--right figure:last-child {
    right: 22% !important;
    bottom: 0 !important;
    width: 56% !important;
    aspect-ratio: 1.2 / 1 !important;
}

body.home .ab-collage--left figure:first-child {
    top: 0 !important;
    left: -8% !important;
    width: 62% !important;
    aspect-ratio: 0.95 / 1 !important;
}

body.home .ab-collage--left figure:last-child {
    right: 8% !important;
    bottom: 0 !important;
    width: 56% !important;
    aspect-ratio: 1.15 / 1 !important;
}

body.home .ab-collage--impact figure:first-child {
    top: 0 !important;
    right: -13% !important;
    width: 58% !important;
    aspect-ratio: 0.95 / 1 !important;
}

body.home .ab-collage--impact figure:last-child {
    right: 18% !important;
    bottom: 0 !important;
    width: 55% !important;
    aspect-ratio: 1.28 / 1 !important;
}

body.home .ab-collage--left img,
body.home .ab-collage--right img,
body.home .ab-collage--impact img {
    object-position: center top !important;
    transition: transform 0.7s ease !important;
}

body.home .ab-experiences {
    padding: clamp(5.2rem, 7vw, 6.8rem) 0 clamp(4.6rem, 6vw, 5.8rem) !important;
}

body.home .ab-section-head {
    width: min(690px, calc(100% - 2rem)) !important;
    margin: 0 auto 2.6rem !important;
    text-align: center !important;
}

body.home .ab-section-head h2 {
    margin-bottom: 0.65rem !important;
    color: #91897f !important;
    font-size: clamp(1.8rem, 3vw, 2.08rem) !important;
}

body.home .ab-section-head p {
    margin: 0 auto !important;
    color: #9a9289 !important;
    font-size: 0.8rem !important;
}

body.home .ab-ornament {
    position: relative !important;
    display: block !important;
    width: 126px !important;
    height: 16px !important;
    margin: 0 auto 1.25rem !important;
}

body.home .ab-ornament::before,
body.home .ab-ornament::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    width: 45px !important;
    height: 1px !important;
    background: rgba(118, 100, 73, 0.46) !important;
}

body.home .ab-ornament::before {
    left: 0 !important;
}

body.home .ab-ornament::after {
    right: 0 !important;
}

body.home .ab-section-head .ab-ornament {
    margin-bottom: 1.45rem !important;
}

body.home .ab-card-rail {
    display: flex !important;
    gap: 1rem !important;
    width: 100% !important;
    overflow-x: auto !important;
    padding: 0 max(1rem, calc((100vw - 1040px) / 2)) 0.7rem !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
}

body.home .ab-card-rail::-webkit-scrollbar {
    display: none !important;
}

body.home .ab-exp-card {
    position: relative !important;
    display: flex !important;
    flex: 0 0 292px !important;
    min-height: 410px !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    padding: 1.15rem !important;
    color: #ffffff !important;
    text-decoration: none !important;
    scroll-snap-align: start !important;
    isolation: isolate !important;
}

body.home .ab-exp-card img {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    object-position: center top !important;
    filter: saturate(1.03) contrast(1.02) brightness(0.88) !important;
    transition: transform 0.7s ease !important;
}

body.home .ab-exp-card::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: linear-gradient(180deg, rgba(10, 10, 8, 0.03), rgba(10, 10, 8, 0.72)) !important;
    pointer-events: none !important;
}

body.home .ab-exp-card span,
body.home .ab-exp-card h3,
body.home .ab-exp-card p {
    position: relative !important;
    z-index: 2 !important;
}

body.home .ab-exp-card span {
    color: rgba(255, 250, 241, 0.78) !important;
    font-family: var(--vw-sans, "Plus Jakarta Sans", Arial, sans-serif) !important;
    font-size: 0.58rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
}

body.home .ab-exp-card h3 {
    margin: 0.35rem 0 0.38rem !important;
    color: #fffaf1 !important;
    font-family: var(--vw-serif, "Cormorant Garamond", Georgia, serif) !important;
    font-size: 1.58rem !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 1.04 !important;
}

body.home .ab-exp-card p {
    margin: 0 !important;
    color: rgba(255, 250, 241, 0.76) !important;
    font-size: 0.74rem !important;
    line-height: 1.52 !important;
}

body.home .ab-rail-arrows {
    display: flex !important;
    justify-content: center !important;
    gap: 1.25rem !important;
    margin-top: 1.35rem !important;
    color: #8b806d !important;
}

body.home .ab-rail-arrows span::before {
    content: "<-" !important;
    font-size: 0.72rem !important;
    letter-spacing: 0 !important;
}

body.home .ab-rail-arrows span:last-child::before {
    content: "->" !important;
}

body.home .ab-journal {
    padding: clamp(5.4rem, 7vw, 7rem) 0 clamp(5rem, 7vw, 6.7rem) !important;
    text-align: center !important;
}

body.home .ab-journal__quote {
    width: min(760px, calc(100% - 2rem)) !important;
    margin: 0 auto 3.1rem !important;
}

body.home .ab-journal blockquote {
    max-width: 700px !important;
    margin: 0 auto 0.75rem !important;
    color: #b0aaa4 !important;
    font-family: var(--vw-serif, "Cormorant Garamond", Georgia, serif) !important;
    font-size: clamp(1.22rem, 2.2vw, 1.52rem) !important;
    font-weight: 400 !important;
    line-height: 1.34 !important;
}

body.home .ab-journal__quote p {
    margin: 0 !important;
    color: #9a9289 !important;
    font-size: 0.72rem !important;
}

body.home .ab-journal__images {
    display: grid !important;
    width: min(1000px, calc(100% - 3rem)) !important;
    margin: 0 auto !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: 260px 200px !important;
    gap: 0.5rem !important;
}

body.home .ab-journal__images figure {
    overflow: hidden !important;
    margin: 0 !important;
}

body.home .ab-journal__images figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
    transition: transform 0.8s ease !important;
}

body.home .ab-journal__images figure:hover img {
    transform: scale(1.04) !important;
}

body.home .ab-journal__images figure:first-child {
    grid-row: span 2 !important;
}

body.home .ab-journal__images figure:nth-child(2) {
    grid-column: span 2 !important;
}

body.home .ab-journal__images figure:nth-child(5) {
    grid-column: span 2 !important;
}

body.home .ab-journal__images img {
    object-position: center center !important;
}

body.home .ab-final-cta {
    display: grid !important;
    min-height: 360px !important;
    place-items: center !important;
    background: var(--ab-dark) !important;
    text-align: center !important;
    isolation: isolate !important;
}

body.home .ab-final-cta__image {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    object-position: center 58% !important;
    filter: saturate(0.96) contrast(1.02) brightness(0.9) !important;
}

body.home .ab-final-cta__shade {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background:
        linear-gradient(180deg, rgba(245, 242, 237, 0.28), rgba(245, 242, 237, 0.56) 48%, rgba(245, 242, 237, 0.24)),
        linear-gradient(90deg, rgba(22, 18, 13, 0.26), rgba(22, 18, 13, 0.04) 50%, rgba(22, 18, 13, 0.24)) !important;
    pointer-events: none !important;
}

body.home .ab-final-cta__content {
    position: relative !important;
    z-index: 2 !important;
    width: min(620px, calc(100% - 2rem)) !important;
    margin: 0 auto !important;
    padding: 4.6rem 0 !important;
}

body.home .ab-final-cta .ab-eyebrow {
    color: rgba(255, 250, 241, 0.78) !important;
}

body.home .ab-final-cta h2 {
    max-width: 560px !important;
    margin: 0 auto 0.75rem !important;
    color: #fffaf1 !important;
    font-family: var(--vw-serif, "Cormorant Garamond", Georgia, serif) !important;
    font-size: clamp(2rem, 4vw, 2.65rem) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 1.05 !important;
    text-shadow: 0 14px 34px rgba(0, 0, 0, 0.32) !important;
}

body.home .ab-final-cta p {
    max-width: 440px !important;
    margin: 0 auto 1.25rem !important;
    color: rgba(255, 250, 241, 0.86) !important;
    font-family: var(--vw-sans, "Plus Jakarta Sans", Arial, sans-serif) !important;
    font-size: 0.84rem !important;
    line-height: 1.65 !important;
    text-shadow: 0 8px 20px rgba(0, 0, 0, 0.32) !important;
}

@media (max-width: 980px) {
    body.home .ab-hero {
        min-height: 520px !important;
        height: 68svh !important;
    }

    body.home .ab-feature__inner,
    body.home .ab-feature--reverse .ab-feature__inner,
    body.home .ab-feature--edge .ab-feature__inner,
    body.home .ab-feature--impact .ab-feature__inner {
        grid-template-columns: 1fr !important;
        gap: 2.25rem !important;
        padding: 4.8rem 0 !important;
    }

    body.home .ab-copy,
    body.home .ab-feature--reverse .ab-copy {
        max-width: 640px !important;
        justify-self: start !important;
    }

    body.home .ab-photo--wide,
    body.home .ab-photo--edge {
        transform: none !important;
    }

    body.home .ab-feature--reverse .ab-photo,
    body.home .ab-feature--reverse .ab-collage {
        order: -1 !important;
    }

    body.home .ab-collage {
        min-height: 420px !important;
    }
}

@media (max-width: 680px) {
    body.home .ab-hero {
        min-height: 540px !important;
        height: 72svh !important;
    }

    body.home .ab-hero__content {
        padding: 6.2rem 0 3.4rem !important;
    }

    body.home .ab-hero h1 {
        font-size: clamp(2.8rem, 13vw, 3.55rem) !important;
        line-height: 1.03 !important;
    }

    body.home .ab-hero p {
        font-size: 1.05rem !important;
    }

    body.home .ab-hero__scroll {
        right: 1rem !important;
        bottom: 1rem !important;
    }

    body.home .ab-feature__inner {
        width: min(100% - 1.35rem, 640px) !important;
        padding: 4rem 0 !important;
    }

    body.home .ab-copy h2,
    body.home .ab-section-head h2 {
        font-size: 2.1rem !important;
    }

    body.home .ab-copy p,
    body.home .ab-section-head p {
        font-size: 0.86rem !important;
    }

    body.home .ab-actions {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    body.home .ab-button {
        width: 100% !important;
    }

    body.home .ab-photo,
    body.home .ab-photo--portrait,
    body.home .ab-photo--wide,
    body.home .ab-photo--edge {
        aspect-ratio: 1 / 1 !important;
    }

    body.home .ab-collage {
        display: grid !important;
        min-height: 0 !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 0.7rem !important;
    }

    body.home .ab-collage figure,
    body.home .ab-collage--right figure:first-child,
    body.home .ab-collage--right figure:last-child,
    body.home .ab-collage--left figure:first-child,
    body.home .ab-collage--left figure:last-child,
    body.home .ab-collage--impact figure:first-child,
    body.home .ab-collage--impact figure:last-child {
        position: relative !important;
        inset: auto !important;
        width: 100% !important;
        aspect-ratio: 1 / 1 !important;
    }

    body.home .ab-experiences,
    body.home .ab-journal {
        padding: 4.3rem 0 !important;
    }

    body.home .ab-card-rail {
        padding-right: 0.7rem !important;
        padding-left: 0.7rem !important;
    }

    body.home .ab-exp-card {
        flex-basis: 78vw !important;
        min-height: 370px !important;
    }

    body.home .ab-journal__images {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-template-rows: auto !important;
        grid-auto-rows: 180px !important;
    }

    body.home .ab-journal__images figure:nth-child(n) {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
    }

    body.home .ab-journal__images figure:first-child {
        grid-row: span 2 !important;
    }

    body.home .ab-journal__images figure:nth-child(2) {
        grid-column: span 1 !important;
    }

    body.home .ab-final-cta {
        min-height: 360px !important;
    }

    body.home .ab-final-cta__content {
        padding: 4.2rem 0 !important;
    }
}

/* ── PROCESS SECTION ──────────────────────────────── */
body.home .ab-process {
    padding: clamp(4.5rem, 8vw, 8rem) clamp(1.5rem, 7vw, 7rem) !important;
    background: var(--ab-paper, #f5f2ed) !important;
    overflow: hidden !important;
}

body.home .ab-process__head {
    margin-bottom: clamp(3rem, 5vw, 5.5rem) !important;
}

body.home .ab-process__eyebrow {
    display: block !important;
    margin: 0 0 1.1rem !important;
    font-family: var(--ab-sans, system-ui, sans-serif) !important;
    font-size: 0.65rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    color: #7a6752 !important;
}

body.home .ab-process__title {
    margin: 0 !important;
    color: #3d3020 !important;
    font-family: var(--ab-serif, var(--vw-serif, Georgia, serif)) !important;
    font-size: clamp(2.4rem, 5vw, 5rem) !important;
    font-weight: 400 !important;
    line-height: 1.06 !important;
}

body.home .ab-process__title em {
    font-style: italic !important;
    color: #7a6752 !important;
}

body.home .ab-process__grid {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 0 !important;
    position: relative !important;
    padding-left: 3.5rem !important;
}

/* L-curve decoration matching reference design */
body.home .ab-process__grid::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: -2rem !important;
    width: 2.8rem !important;
    height: clamp(4rem, 8vw, 6.5rem) !important;
    border-left: 1px solid rgba(106, 85, 60, 0.28) !important;
    border-bottom: 1px solid rgba(106, 85, 60, 0.28) !important;
    border-bottom-left-radius: 5px !important;
}

body.home .ab-process__step {
    padding: 0 2rem 0 0 !important;
    border: none !important;
}

body.home .ab-process__step-name {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    margin: 0 0 1rem !important;
    color: #3d3020 !important;
    font-family: var(--ab-serif, var(--vw-serif, Georgia, serif)) !important;
    font-size: clamp(1.4rem, 1.9vw, 2rem) !important;
    font-weight: 400 !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
}

/* Connecting line after each step name, to the right edge */
body.home .ab-process__step-name::after {
    content: '' !important;
    display: block !important;
    flex: 1 !important;
    min-width: 1rem !important;
    height: 1px !important;
    background: rgba(106, 85, 60, 0.3) !important;
    margin-left: 0.75rem !important;
}

/* Last step has no trailing line */
body.home .ab-process__step:last-child .ab-process__step-name::after {
    display: none !important;
}

body.home .ab-process__step p {
    margin: 0 !important;
    color: #5a4e42 !important;
    font-family: var(--ab-sans, system-ui, sans-serif) !important;
    font-size: clamp(0.86rem, 0.95vw, 0.94rem) !important;
    line-height: 1.76 !important;
    max-width: none !important;
}

/* ── TESTIMONIAL EXTENDED STYLES ─────────────────── */
body.home .ab-journal__intro {
    margin: 0 0 1.6rem !important;
    color: #9a9289 !important;
    font-family: var(--ab-sans, system-ui, sans-serif) !important;
    font-size: clamp(0.86rem, 1vw, 0.94rem) !important;
    font-style: italic !important;
    line-height: 1.65 !important;
}

body.home .ab-journal__attr {
    margin: 1.1rem 0 0 !important;
    color: #c9b89a !important;
    font-family: var(--ab-sans, system-ui, sans-serif) !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.07em !important;
    text-transform: uppercase !important;
}

body.home .ab-journal__attr-sub {
    margin: 0.3rem 0 0 !important;
    color: #9a9289 !important;
    font-family: var(--ab-sans, system-ui, sans-serif) !important;
    font-size: 0.68rem !important;
    font-style: italic !important;
    letter-spacing: 0.04em !important;
}

/* ── PROCESS RESPONSIVE ───────────────────────────── */
@media (max-width: 1100px) {
    body.home .ab-process__grid {
        grid-template-columns: repeat(3, 1fr) !important;
        padding-left: 0 !important;
        row-gap: 2.5rem !important;
    }
    body.home .ab-process__grid::before { display: none !important; }
}

@media (max-width: 680px) {
    body.home .ab-process {
        padding: 3.5rem 1.25rem !important;
    }
    body.home .ab-process__grid {
        grid-template-columns: 1fr !important;
        row-gap: 1.8rem !important;
    }
    body.home .ab-process__step-name::after { display: none !important; }
}

/* Testimonial gallery visibility repair */
body.home .ab-journal__images {
    display: grid !important;
    width: min(1120px, calc(100% - clamp(2rem, 7vw, 8rem))) !important;
    margin: clamp(2.4rem, 4.5vw, 4rem) auto 0 !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    grid-template-rows: none !important;
    grid-auto-rows: clamp(190px, 15vw, 265px) !important;
    gap: clamp(0.75rem, 1vw, 1rem) !important;
    align-items: stretch !important;
}

body.home .ab-journal__images figure {
    position: relative !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #eee8de !important;
}

body.home .ab-journal__images figure:first-child {
    grid-column: 1 / span 2 !important;
    grid-row: 1 / span 2 !important;
}

body.home .ab-journal__images figure:nth-child(2) {
    grid-column: 3 / span 2 !important;
    grid-row: 1 / span 1 !important;
}

body.home .ab-journal__images figure:nth-child(3) {
    grid-column: 5 / span 2 !important;
    grid-row: 1 / span 1 !important;
}

body.home .ab-journal__images figure:nth-child(4) {
    grid-column: 3 / span 2 !important;
    grid-row: 2 / span 1 !important;
}

body.home .ab-journal__images figure:nth-child(5) {
    grid-column: 5 / span 2 !important;
    grid-row: 2 / span 1 !important;
}

body.home .ab-journal__images figure img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    filter: saturate(1.03) contrast(1.02) brightness(1) !important;
}

@media (max-width: 980px) {
    body.home .ab-journal__images {
        width: min(760px, calc(100% - 2rem)) !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-rows: clamp(180px, 32vw, 240px) !important;
    }

    body.home .ab-journal__images figure:nth-child(n) {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
    }

    body.home .ab-journal__images figure:first-child {
        grid-row: span 2 !important;
    }
}

@media (max-width: 560px) {
    body.home .ab-journal__images {
        width: calc(100% - 1.25rem) !important;
        grid-template-columns: 1fr !important;
        grid-auto-rows: auto !important;
        gap: 0.65rem !important;
    }

    body.home .ab-journal__images figure:nth-child(n) {
        grid-column: 1 / -1 !important;
        grid-row: auto !important;
        aspect-ratio: 4 / 3 !important;
    }
}
