:root {
    --moa-bg: #f7f3ec;
    --moa-paper: #fffdf8;
    --moa-ink: #14171a;
    --moa-muted: #6e6960;
    --moa-line: rgba(20, 23, 26, 0.14);
    --moa-gold: #b99658;
    --moa-blue: #101923;
}

.moa-home-page .content-container,
.moa-home-page .site-container,
.moa-home-page .entry-content-wrap,
.moa-home-page .content-area,
.moa-home-page .site-main {
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.moa-home-page .entry-title {
    display: none !important;
}

.moa-home-page .site-header {
    position: absolute;
    z-index: 50;
    width: 100%;
    background: transparent !important;
}

.moa-home-page .site-header a,
.moa-home-page .site-header .site-title,
.moa-home-page .site-header .menu-item > a {
    color: #fffdf8 !important;
}

.moa-site {
    background: var(--moa-bg);
    color: var(--moa-ink);
    font-family: "Inter", sans-serif;
    font-weight: 300;
    overflow: hidden;
}

.moa-site * {
    box-sizing: border-box;
}

.moa-site h1,
.moa-site h2,
.moa-site h3 {
    font-family: "Cormorant Garamond", serif;
    font-weight: 300;
    line-height: 0.94;
    letter-spacing: -0.035em;
    color: var(--moa-ink);
    margin: 0;
}

.moa-site p {
    font-size: clamp(16px, 1.28vw, 21px);
    line-height: 1.68;
    color: var(--moa-muted);
    margin: 0 0 1.15rem;
}

.moa-eyebrow {
    margin-bottom: 22px;
    color: var(--moa-gold);
    font-size: 11px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.moa-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding: 128px 7vw 96px;
    background:
        radial-gradient(circle at 84% 12%, rgba(185, 150, 88, 0.28), transparent 34%),
        linear-gradient(110deg, rgba(16, 25, 35, 0.96), rgba(16, 25, 35, 0.72), rgba(16, 25, 35, 0.22)),
        var(--moa-blue);
}

.moa-hero__content {
    position: relative;
    z-index: 2;
    max-width: 1100px;
}

.moa-hero h1 {
    max-width: 1080px;
    color: #fffdf8;
    font-size: clamp(60px, 9.6vw, 154px);
}

.moa-hero p {
    max-width: 760px;
    margin-top: 34px;
    color: rgba(255, 253, 248, 0.78);
}

.moa-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.moa-button {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 24px;
    border: 1px solid currentColor;
    text-decoration: none;
    font-size: 12px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    transition: transform 0.24s ease, opacity 0.24s ease, background 0.24s ease;
}

.moa-button:hover {
    transform: translateY(-2px);
    opacity: 0.86;
}

.moa-button--light {
    background: #fffdf8;
    color: var(--moa-ink);
    border-color: #fffdf8;
}

.moa-button--ghost-light {
    background: transparent;
    color: #fffdf8;
}

.moa-button--dark {
    background: var(--moa-ink);
    color: #fffdf8;
    border-color: var(--moa-ink);
}

.moa-button--ghost-dark {
    background: transparent;
    color: var(--moa-ink);
}

.moa-section {
    padding: 112px 7vw;
    border-bottom: 1px solid var(--moa-line);
}

.moa-two {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    gap: 72px;
    align-items: start;
}

.moa-section h2 {
    font-size: clamp(44px, 6vw, 94px);
}

.moa-section-head {
    max-width: 980px;
    margin-bottom: 54px;
}

.moa-section-head--row {
    max-width: none;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
}

.moa-link {
    display: inline-block;
    color: var(--moa-ink);
    text-decoration: none;
    border-bottom: 1px solid var(--moa-ink);
    padding-bottom: 7px;
    font-size: 12px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.moa-services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    background: var(--moa-line);
    border: 1px solid var(--moa-line);
}

.moa-services-grid article {
    min-height: 250px;
    padding: 38px;
    background: var(--moa-bg);
}

.moa-services-grid h3,
.moa-partner-list h3,
.moa-project-card h3 {
    margin-bottom: 18px;
    font-size: clamp(30px, 2.9vw, 46px);
}

.moa-services-grid p,
.moa-partner-list p {
    font-size: 16px;
    line-height: 1.66;
}

.moa-portfolio {
    background: var(--moa-paper);
}

.moa-carousel {
    position: relative;
}

.moa-carousel-track {
    display: flex;
    gap: 24px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    padding: 4px 0 24px;
}

.moa-project-card {
    position: relative;
    flex: 0 0 min(72vw, 760px);
    min-height: 620px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    text-decoration: none;
    color: #fffdf8;
    background: var(--moa-blue);
    scroll-snap-align: start;
}

.moa-project-card__image {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(16, 25, 35, 0.04), rgba(16, 25, 35, 0.76)),
        var(--moa-blue);
}

.moa-project-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.86;
    transition: transform 0.7s ease, opacity 0.7s ease;
}

.moa-project-card:hover img {
    transform: scale(1.045);
    opacity: 0.98;
}

.moa-project-card__image.is-empty {
    background:
        radial-gradient(circle at 75% 18%, rgba(185, 150, 88, 0.3), transparent 34%),
        linear-gradient(135deg, #101923, #313740);
}

.moa-project-card__content {
    position: relative;
    z-index: 2;
    padding: 42px;
}

.moa-project-card h3 {
    max-width: 670px;
    color: #fffdf8;
}

.moa-project-card span {
    display: inline-block;
    margin-top: 18px;
    color: rgba(255, 253, 248, 0.76);
    font-size: 11px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.moa-carousel-button {
    position: absolute;
    top: 50%;
    z-index: 10;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(255, 253, 248, 0.72);
    background: rgba(16, 25, 35, 0.48);
    color: #fffdf8;
    font-size: 34px;
    line-height: 1;
    cursor: pointer;
    transform: translateY(-50%);
    backdrop-filter: blur(12px);
}

.moa-carousel-button--prev {
    left: 18px;
}

.moa-carousel-button--next {
    right: 18px;
}

.moa-partner-list {
    display: grid;
    gap: 30px;
}

.moa-partner-list article {
    border-top: 1px solid var(--moa-line);
    padding-top: 30px;
}

.moa-publications {
    min-height: 82vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.moa-final {
    min-height: 92vh;
    display: flex;
    align-items: center;
    padding: 112px 7vw;
    background: var(--moa-blue);
}

.moa-final > div {
    max-width: 960px;
}

.moa-final h2 {
    color: #fffdf8;
    font-size: clamp(52px, 7.4vw, 114px);
}

.moa-final p {
    max-width: 760px;
    margin-top: 30px;
    color: rgba(255, 253, 248, 0.74);
}

@media (max-width: 1024px) {
    .moa-two {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .moa-services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .moa-project-card {
        flex-basis: 82vw;
        min-height: 560px;
    }
}

@media (max-width: 720px) {
    .moa-home-page .site-header {
        position: relative;
        background: var(--moa-blue) !important;
    }

    .moa-hero,
    .moa-section,
    .moa-final {
        padding-left: 24px;
        padding-right: 24px;
    }

    .moa-hero {
        min-height: 92vh;
        padding-top: 86px;
        padding-bottom: 72px;
    }

    .moa-section {
        padding-top: 76px;
        padding-bottom: 76px;
    }

    .moa-section-head--row {
        display: block;
    }

    .moa-section-head--row .moa-link {
        margin-top: 24px;
    }

    .moa-services-grid {
        grid-template-columns: 1fr;
    }

    .moa-services-grid article {
        min-height: auto;
        padding: 28px;
    }

    .moa-project-card {
        flex-basis: 86vw;
        min-height: 460px;
    }

    .moa-project-card__content {
        padding: 28px;
    }

    .moa-carousel-button {
        display: none;
    }

    .moa-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .moa-button {
        width: 100%;
    }
}


/* Hero refinement — May 30, 2026 */
body.moa-home-page .site-header,
body.moa-home-page .site-header .site-main-header-wrap,
body.moa-home-page .site-header .site-main-header-inner-wrap,
body.moa-home-page .site-header .main-navigation,
body.moa-home-page .site-header .header-navigation,
body.moa-home-page .site-header .header-menu-container {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 100 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.moa-home-page .site-header {
    width: 100% !important;
}

body.moa-home-page .site-header a,
body.moa-home-page .site-header .site-title,
body.moa-home-page .site-header .site-description,
body.moa-home-page .site-header .menu-item > a {
    color: #fffdf8 !important;
}

body.moa-home-page .site-header .menu-item > a {
    font-family: "Inter", sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    font-size: 12px !important;
}

.moa-hero {
    min-height: 100vh !important;
    padding: 132px 7vw 88px !important;
    background:
        linear-gradient(90deg, rgba(10, 14, 18, 0.66), rgba(10, 14, 18, 0.38), rgba(10, 14, 18, 0.08)),
        url('/wp-content/uploads/2026/05/title-scaled.jpg') !important;
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
}

.moa-hero__content {
    max-width: 840px !important;
}

.moa-hero h1 {
    max-width: 780px !important;
    font-size: clamp(42px, 5.6vw, 86px) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.025em !important;
}

.moa-hero p {
    max-width: 640px !important;
    margin-top: 24px !important;
    font-size: clamp(16px, 1.28vw, 20px) !important;
    line-height: 1.55 !important;
}

.moa-hero .moa-actions {
    margin-top: 28px !important;
}

.moa-hero .moa-button {
    min-height: 44px !important;
    padding: 0 21px !important;
    font-size: 11px !important;
}

@media (max-width: 1024px) {
    .moa-hero {
        background-position: center top !important;
        padding-top: 118px !important;
    }

    .moa-hero h1 {
        font-size: clamp(42px, 8vw, 72px) !important;
        max-width: 700px !important;
    }
}

@media (max-width: 720px) {
    body.moa-home-page .site-header {
        position: absolute !important;
        background: transparent !important;
    }

    .moa-hero {
        min-height: 100svh !important;
        padding: 112px 24px 64px !important;
        background-position: center top !important;
    }

    .moa-hero h1 {
        max-width: 92vw !important;
        font-size: clamp(38px, 12vw, 54px) !important;
    }

    .moa-hero p {
        max-width: 92vw !important;
        font-size: 16px !important;
    }
}


/* Header overlay fix — remove white Kadence strip */
body.moa-home-page .site-header-wrap,
body.moa-home-page #masthead,
body.moa-home-page .site-header,
body.moa-home-page .site-main-header-wrap,
body.moa-home-page .site-header-row-container,
body.moa-home-page .site-header-row-container-inner,
body.moa-home-page .site-main-header-inner-wrap,
body.moa-home-page .main-header-bar {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

body.moa-home-page .site-header-wrap,
body.moa-home-page #masthead {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 999 !important;
}

body.admin-bar.moa-home-page .site-header-wrap,
body.admin-bar.moa-home-page #masthead {
    top: 32px !important;
}

body.moa-home-page .site-header {
    position: relative !important;
    background: transparent !important;
}

body.moa-home-page .site-main,
body.moa-home-page .content-area,
body.moa-home-page .entry-content,
body.moa-home-page .entry-content-wrap {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.moa-home-page .moa-site {
    margin-top: 0 !important;
}

body.moa-home-page .moa-hero {
    margin-top: 0 !important;
}

body.moa-home-page .mobile-toggle-open-container .menu-toggle-open,
body.moa-home-page .menu-toggle-open,
body.moa-home-page .drawer-toggle {
    background: transparent !important;
    color: #fffdf8 !important;
    border: 1px solid rgba(255, 253, 248, 0.55) !important;
    box-shadow: none !important;
}

body.moa-home-page .mobile-toggle-open-container .menu-toggle-open .menu-toggle-icon,
body.moa-home-page .menu-toggle-open .menu-toggle-icon {
    color: #fffdf8 !important;
}

@media (max-width: 782px) {
    body.admin-bar.moa-home-page .site-header-wrap,
    body.admin-bar.moa-home-page #masthead {
        top: 46px !important;
    }
}


/* Custom overlay navigation — replaces Kadence header on homepage */
body.moa-home-page .site-header-wrap,
body.moa-home-page #masthead,
body.moa-home-page .site-header {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

body.moa-home-page .site,
body.moa-home-page #page,
body.moa-home-page #inner-wrap,
body.moa-home-page .wrap,
body.moa-home-page .content-wrap,
body.moa-home-page .site-main,
body.moa-home-page .content-area,
body.moa-home-page .entry-content-wrap,
body.moa-home-page .entry-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.moa-home-page .moa-site {
    position: relative;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.moa-topbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    height: 86px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 7vw;
    pointer-events: none;
}

body.admin-bar .moa-topbar {
    top: 0;
}

.moa-topbar__mark {
    pointer-events: auto;
    color: #fffdf8;
    text-decoration: none;
    font-family: "Inter", sans-serif;
    font-size: 13px;
    line-height: 1;
    font-weight: 300;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    opacity: 0.92;
}

.moa-topbar__menu {
    pointer-events: auto;
    display: flex;
    align-items: center;
    gap: 8px;
}

.moa-topbar__menu a {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 15px;
    border: 1px solid rgba(255, 253, 248, 0.32);
    color: #fffdf8;
    background: rgba(16, 25, 35, 0.12);
    backdrop-filter: blur(8px);
    text-decoration: none;
    font-family: "Inter", sans-serif;
    font-size: 11px;
    line-height: 1;
    font-weight: 300;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    transition: background 0.22s ease, border-color 0.22s ease, transform 0.22s ease;
}

.moa-topbar__menu a:hover {
    background: rgba(255, 253, 248, 0.12);
    border-color: rgba(255, 253, 248, 0.65);
    transform: translateY(-1px);
}

.moa-topbar__menu .moa-topbar__contact {
    background: rgba(255, 253, 248, 0.92);
    color: #101923;
    border-color: rgba(255, 253, 248, 0.92);
}

.moa-topbar__toggle {
    display: none;
    pointer-events: auto;
    width: 46px;
    height: 42px;
    border: 1px solid rgba(255, 253, 248, 0.55);
    background: rgba(16, 25, 35, 0.18);
    backdrop-filter: blur(8px);
    cursor: pointer;
    padding: 10px;
}

.moa-topbar__toggle span {
    display: block;
    width: 100%;
    height: 1px;
    background: #fffdf8;
    margin: 5px 0;
}

.moa-hero {
    margin-top: 0 !important;
}

@media (max-width: 900px) {
    .moa-topbar {
        height: 74px;
        padding: 0 24px;
    }

    .moa-topbar__mark {
        font-size: 12px;
        letter-spacing: 0.15em;
    }

    .moa-topbar__toggle {
        display: block;
    }

    .moa-topbar__menu {
        position: absolute;
        top: 74px;
        left: 24px;
        right: 24px;
        display: none;
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 12px;
        background: rgba(16, 25, 35, 0.82);
        border: 1px solid rgba(255, 253, 248, 0.22);
        backdrop-filter: blur(14px);
    }

    .moa-topbar.is-open .moa-topbar__menu {
        display: grid;
    }

    .moa-topbar__menu a {
        width: 100%;
        min-height: 44px;
        justify-content: flex-start;
        padding: 0 15px;
        background: rgba(255, 253, 248, 0.06);
    }

    .moa-topbar__menu .moa-topbar__contact {
        justify-content: center;
        background: rgba(255, 253, 248, 0.92);
    }
}

@media (max-width: 520px) {
    .moa-topbar__mark {
        font-size: 11px;
        letter-spacing: 0.12em;
    }
}


/* Refinement: remove Kadence strip, simplify navigation, soften hero */
html {
    scroll-behavior: smooth;
}

body.moa-home-page #masthead,
body.moa-home-page .site-header,
body.moa-home-page .site-header-wrap,
body.moa-home-page .site-header-row-container,
body.moa-home-page .site-header-row,
body.moa-home-page .site-header-row-container-inner,
body.moa-home-page .site-main-header-wrap,
body.moa-home-page .site-main-header-inner-wrap,
body.moa-home-page .main-header-bar,
body.moa-home-page .kadence-sticky-header,
body.moa-home-page .item-is-stuck {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

body.moa-home-page #page,
body.moa-home-page .site,
body.moa-home-page .site-content,
body.moa-home-page #inner-wrap,
body.moa-home-page #primary,
body.moa-home-page .content-wrap,
body.moa-home-page .content-container,
body.moa-home-page .content-area,
body.moa-home-page .site-main,
body.moa-home-page article,
body.moa-home-page .entry,
body.moa-home-page .entry-content-wrap,
body.moa-home-page .entry-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
}

body.moa-home-page .moa-site {
    margin-top: -1px !important;
}

.moa-topbar {
    height: 72px !important;
    padding: 0 7vw !important;
}

.moa-topbar__mark {
    display: none !important;
}

.moa-topbar__home {
    pointer-events: auto;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 15px;
    border: 1px solid rgba(255, 253, 248, 0.32);
    color: #fffdf8;
    background: rgba(16, 25, 35, 0.12);
    backdrop-filter: blur(8px);
    text-decoration: none;
    font-family: "Inter", sans-serif;
    font-size: 11px;
    line-height: 1;
    font-weight: 300;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.moa-topbar__home:hover {
    background: rgba(255, 253, 248, 0.12);
    border-color: rgba(255, 253, 248, 0.65);
}

.moa-topbar__menu {
    gap: 8px !important;
}

.moa-hero {
    padding-top: 104px !important;
    background-position: center top !important;
}

.moa-hero h1 {
    max-width: 720px !important;
    font-size: clamp(38px, 4.9vw, 74px) !important;
    line-height: 1.01 !important;
    letter-spacing: -0.022em !important;
}

.moa-hero p {
    max-width: 600px !important;
    margin-top: 22px !important;
    font-size: clamp(15px, 1.12vw, 18px) !important;
    line-height: 1.55 !important;
}

.moa-hero .moa-actions {
    margin-top: 26px !important;
}

.moa-hero .moa-button {
    min-height: 42px !important;
    padding: 0 20px !important;
    font-size: 10.5px !important;
    letter-spacing: 0.13em !important;
}

@media (max-width: 900px) {
    .moa-topbar {
        height: 70px !important;
        padding: 0 24px !important;
    }

    .moa-topbar__home {
        min-height: 38px;
        font-size: 11px;
    }

    .moa-topbar__menu {
        top: 70px !important;
    }

    .moa-hero {
        padding-top: 100px !important;
    }
}

@media (max-width: 720px) {
    .moa-hero h1 {
        max-width: 92vw !important;
        font-size: clamp(34px, 10vw, 48px) !important;
    }

    .moa-hero p {
        max-width: 92vw !important;
        font-size: 15.5px !important;
    }
}


/* Strip removal and menu refinement — May 30 */
html,
body.moa-home-page,
body.moa-home-page #page,
body.moa-home-page .site,
body.moa-home-page #inner-wrap,
body.moa-home-page .site-content,
body.moa-home-page .content-wrap,
body.moa-home-page .content-container,
body.moa-home-page #primary,
body.moa-home-page .content-area,
body.moa-home-page .site-main,
body.moa-home-page article,
body.moa-home-page .entry,
body.moa-home-page .entry-content-wrap,
body.moa-home-page .entry-content {
    background: #101923 !important;
}

body.moa-home-page .site-content,
body.moa-home-page .content-wrap,
body.moa-home-page .content-container,
body.moa-home-page #primary,
body.moa-home-page .content-area,
body.moa-home-page .site-main,
body.moa-home-page article,
body.moa-home-page .entry,
body.moa-home-page .entry-content-wrap,
body.moa-home-page .entry-content {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

body.moa-home-page .moa-site {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #101923 !important;
}

body.admin-bar.moa-home-page .moa-site {
    margin-top: -18px !important;
}

body.admin-bar.moa-home-page .moa-topbar {
    top: 18px !important;
}

body.admin-bar.moa-home-page .moa-hero {
    min-height: calc(100vh - 14px) !important;
}

.moa-topbar {
    height: 70px !important;
    padding: 0 7vw !important;
}

.moa-topbar__home,
.moa-topbar__menu a {
    border: 0 !important;
    outline: 0 !important;
    background: rgba(16, 25, 35, 0.10) !important;
    color: #fffdf8 !important;
    box-shadow: none !important;
}

.moa-topbar__home:hover,
.moa-topbar__menu a:hover,
.moa-topbar__menu .moa-topbar__contact:hover {
    color: #fffdf8 !important;
    background: rgba(255, 253, 248, 0.16) !important;
    border: 0 !important;
    box-shadow: none !important;
}

.moa-topbar__menu .moa-topbar__contact {
    color: #fffdf8 !important;
    background: rgba(16, 25, 35, 0.10) !important;
    border: 0 !important;
}

.moa-topbar__home,
.moa-topbar__menu a {
    min-height: 38px !important;
    padding: 0 14px !important;
    backdrop-filter: blur(8px);
}

.moa-hero {
    margin: 0 !important;
    padding-top: 98px !important;
}

.moa-hero h1 {
    max-width: 690px !important;
    font-size: clamp(36px, 4.55vw, 68px) !important;
    line-height: 1.02 !important;
}

@media (max-width: 900px) {
    body.admin-bar.moa-home-page .moa-site {
        margin-top: -12px !important;
    }

    body.admin-bar.moa-home-page .moa-topbar {
        top: 12px !important;
    }

    .moa-topbar {
        height: 68px !important;
        padding: 0 24px !important;
    }

    .moa-topbar__menu {
        top: 68px !important;
        background: rgba(16, 25, 35, 0.86) !important;
    }

    .moa-topbar__menu a,
    .moa-topbar__menu .moa-topbar__contact {
        background: rgba(255, 253, 248, 0.08) !important;
        color: #fffdf8 !important;
    }
}


/* Main page navigation refinement: no Home button, higher position */
body.moa-home-page .moa-topbar {
    height: auto !important;
    min-height: 46px !important;
    top: 0 !important;
    padding: 8px 7vw 0 7vw !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
}

body.admin-bar.moa-home-page .moa-topbar {
    top: 0 !important;
}

body.moa-home-page .moa-topbar__home,
body.moa-home-page .moa-topbar__mark {
    display: none !important;
}

body.moa-home-page .moa-topbar__menu {
    margin-left: auto !important;
    align-items: flex-start !important;
}

body.moa-home-page .moa-topbar__menu a,
body.moa-home-page .moa-topbar__home {
    min-height: 38px !important;
    height: 38px !important;
}

body.moa-home-page .moa-hero {
    padding-top: 82px !important;
}

@media (max-width: 900px) {
    body.moa-home-page .moa-topbar {
        min-height: 46px !important;
        padding: 8px 24px 0 24px !important;
        justify-content: flex-end !important;
    }

    body.moa-home-page .moa-topbar__toggle {
        margin-left: auto !important;
    }

    body.moa-home-page .moa-topbar__menu {
        top: 54px !important;
        left: 24px !important;
        right: 24px !important;
    }

    body.moa-home-page .moa-hero {
        padding-top: 78px !important;
    }
}


/* Main page navigation refinement: no Home button, higher position */
body.moa-home-page .moa-topbar {
    height: auto !important;
    min-height: 46px !important;
    top: 0 !important;
    padding: 8px 7vw 0 7vw !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
}

body.admin-bar.moa-home-page .moa-topbar {
    top: 0 !important;
}

body.moa-home-page .moa-topbar__home,
body.moa-home-page .moa-topbar__mark {
    display: none !important;
}

body.moa-home-page .moa-topbar__menu {
    margin-left: auto !important;
    align-items: flex-start !important;
}

body.moa-home-page .moa-topbar__menu a,
body.moa-home-page .moa-topbar__home {
    min-height: 38px !important;
    height: 38px !important;
}

body.moa-home-page .moa-hero {
    padding-top: 82px !important;
}

@media (max-width: 900px) {
    body.moa-home-page .moa-topbar {
        min-height: 46px !important;
        padding: 8px 24px 0 24px !important;
        justify-content: flex-end !important;
    }

    body.moa-home-page .moa-topbar__toggle {
        margin-left: auto !important;
    }

    body.moa-home-page .moa-topbar__menu {
        top: 54px !important;
        left: 24px !important;
        right: 24px !important;
    }

    body.moa-home-page .moa-hero {
        padding-top: 78px !important;
    }
}


/* Practice, Team, and Services refinement */
.moa-intro,
.moa-services {
    background: #101923 !important;
    color: #fffdf8 !important;
}

.moa-intro {
    padding-top: 100px !important;
    padding-bottom: 112px !important;
}

.moa-practice-grid {
    align-items: start !important;
    margin-bottom: 118px !important;
}

.moa-intro .moa-eyebrow,
.moa-services .moa-eyebrow {
    color: #b99658 !important;
}

.moa-intro h2,
.moa-services h2,
.moa-team h2 {
    color: rgba(255, 253, 248, 0.92) !important;
}

.moa-practice-grid h2 {
    max-width: 560px !important;
    font-size: clamp(38px, 4.7vw, 72px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.018em !important;
}

.moa-practice-text p {
    max-width: 780px !important;
    color: rgba(255, 253, 248, 0.68) !important;
    font-size: clamp(18px, 1.45vw, 24px) !important;
    line-height: 1.72 !important;
}

.moa-team {
    border-top: 1px solid rgba(255, 253, 248, 0.12);
    padding-top: 78px;
}

.moa-team__intro {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 72px;
    align-items: start;
    margin-bottom: 54px;
}

.moa-team__intro .moa-eyebrow {
    grid-column: 1 / 2;
}

.moa-team__intro h2 {
    grid-column: 1 / 2;
    max-width: 620px;
    font-size: clamp(36px, 4.4vw, 68px);
    line-height: 1.06;
    letter-spacing: -0.018em;
}

.moa-team__intro p {
    grid-column: 2 / 3;
    grid-row: 1 / span 2;
    color: rgba(255, 253, 248, 0.64) !important;
    font-size: clamp(17px, 1.28vw, 21px);
    line-height: 1.72;
    max-width: 760px;
    padding-top: 36px;
}

.moa-team-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px;
}

.moa-team-card {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 30px;
    align-items: start;
    padding: 0;
    background: transparent;
}

.moa-team-card img {
    width: 220px;
    height: 220px;
    object-fit: cover;
    display: block;
    filter: grayscale(8%);
}

.moa-team-card h3 {
    color: rgba(255, 253, 248, 0.94) !important;
    font-size: clamp(30px, 2.7vw, 44px) !important;
    line-height: 1.02 !important;
    margin: 0 0 16px !important;
}

.moa-team-card p {
    color: rgba(255, 253, 248, 0.62) !important;
    font-size: 16px !important;
    line-height: 1.68 !important;
    margin: 0 !important;
}

.moa-services {
    padding-top: 104px !important;
}

.moa-services .moa-section-head {
    margin-bottom: 58px !important;
}

.moa-services .moa-section-head h2 {
    font-size: clamp(40px, 5.2vw, 78px) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.018em !important;
}

.moa-services-grid {
    background: rgba(255, 253, 248, 0.12) !important;
    border: 1px solid rgba(255, 253, 248, 0.12) !important;
}

.moa-services-grid article {
    background: #101923 !important;
    border: none !important;
}

.moa-services-grid h3 {
    color: rgba(255, 253, 248, 0.92) !important;
    font-size: clamp(27px, 2.4vw, 38px) !important;
    line-height: 1.08 !important;
}

.moa-services-grid p {
    color: rgba(255, 253, 248, 0.62) !important;
    font-size: 16px !important;
    line-height: 1.66 !important;
}

@media (max-width: 1100px) {
    .moa-team-card {
        grid-template-columns: 170px minmax(0, 1fr);
    }

    .moa-team-card img {
        width: 170px;
        height: 170px;
    }
}

@media (max-width: 900px) {
    .moa-practice-grid {
        margin-bottom: 82px !important;
    }

    .moa-team__intro {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .moa-team__intro .moa-eyebrow,
    .moa-team__intro h2,
    .moa-team__intro p {
        grid-column: auto;
        grid-row: auto;
    }

    .moa-team__intro p {
        padding-top: 0;
    }

    .moa-team-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .moa-team-card {
        grid-template-columns: 1fr;
    }

    .moa-team-card img {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
    }

    .moa-practice-grid h2 {
        font-size: clamp(34px, 10vw, 48px) !important;
    }
}


/* Team simplified portrait layout */
.moa-team--simple {
    border-top: 1px solid rgba(255, 253, 248, 0.12);
    padding-top: 78px;
}

.moa-team--simple > .moa-eyebrow {
    margin-bottom: 42px !important;
}

.moa-team--simple .moa-team-grid {
    max-width: 1240px;
    margin: 0 auto;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(42px, 6vw, 96px) !important;
    align-items: start;
}

.moa-team--simple .moa-team-card {
    display: block !important;
}

.moa-team--simple .moa-team-card img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    display: block !important;
    filter: grayscale(5%) !important;
}

.moa-team-caption {
    padding-top: 26px;
}

.moa-team-caption h3 {
    color: rgba(255, 253, 248, 0.94) !important;
    font-size: clamp(30px, 2.8vw, 46px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.02em !important;
    margin: 0 0 14px !important;
}

.moa-team-caption p {
    max-width: 520px;
    color: rgba(255, 253, 248, 0.62) !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    margin: 0 !important;
}

@media (max-width: 820px) {
    .moa-team--simple {
        padding-top: 58px;
    }

    .moa-team--simple .moa-team-grid {
        grid-template-columns: 1fr !important;
        gap: 54px !important;
    }

    .moa-team-caption {
        padding-top: 20px;
    }
}


/* Remove small gold section labels across homepage */
body.moa-home-page .moa-eyebrow {
    display: none !important;
}

/* Reduce vertical gaps after removing labels */
body.moa-home-page .moa-section-head {
    margin-bottom: 42px !important;
}

body.moa-home-page .moa-team--simple {
    padding-top: 64px !important;
}

body.moa-home-page .moa-team--simple > .moa-eyebrow {
    display: none !important;
    margin: 0 !important;
}

body.moa-home-page .moa-practice-grid {
    margin-bottom: 92px !important;
}

body.moa-home-page .moa-final .moa-eyebrow {
    display: none !important;
}


/* Strategic copy and typography system */
:root {
    --moa-large-text: clamp(38px, 4.55vw, 68px);
    --moa-body-text: clamp(16px, 1.18vw, 20px);
    --moa-caption-text: 14.5px;
    --moa-body-line: 1.68;
    --moa-caption-line: 1.58;
}

body.moa-home-page .moa-site {
    font-weight: 300 !important;
}

body.moa-home-page .moa-site h2,
body.moa-home-page .moa-practice-statement h2,
body.moa-home-page .moa-services-head h2,
body.moa-home-page .moa-publications h2,
body.moa-home-page .moa-final h2 {
    font-size: var(--moa-large-text) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.018em !important;
    font-weight: 300 !important;
}

body.moa-home-page .moa-site p,
body.moa-home-page .moa-practice-copy p,
body.moa-home-page .moa-practice-statement p,
body.moa-home-page .moa-services-head p,
body.moa-home-page .moa-final p {
    font-family: "Inter", sans-serif !important;
    font-size: var(--moa-body-text) !important;
    line-height: var(--moa-body-line) !important;
    font-weight: 300 !important;
    letter-spacing: -0.01em !important;
}

body.moa-home-page .moa-team-caption p,
body.moa-home-page .moa-services-grid p,
body.moa-home-page .moa-project-card span {
    font-family: "Inter", sans-serif !important;
    font-size: var(--moa-caption-text) !important;
    line-height: var(--moa-caption-line) !important;
    font-weight: 300 !important;
    letter-spacing: 0 !important;
}

.moa-practice-layout {
    display: grid;
    grid-template-columns: minmax(260px, 0.78fr) minmax(520px, 1.22fr);
    gap: clamp(48px, 7vw, 118px);
    align-items: start;
    margin-bottom: 108px;
}

.moa-practice-copy {
    max-width: 430px;
    padding-top: 8px;
}

.moa-practice-copy p {
    color: rgba(255, 253, 248, 0.55) !important;
}

.moa-practice-statement {
    max-width: 880px;
}

.moa-practice-statement h2 {
    color: rgba(255, 253, 248, 0.94) !important;
    max-width: 850px;
    margin-bottom: 30px !important;
}

.moa-practice-statement p {
    max-width: 780px;
    color: rgba(255, 253, 248, 0.66) !important;
}

.moa-services-head {
    display: grid;
    grid-template-columns: minmax(260px, 0.78fr) minmax(520px, 1.22fr);
    gap: clamp(48px, 7vw, 118px);
    max-width: none !important;
    align-items: start;
}

.moa-services-head h2 {
    grid-column: 2;
    color: rgba(255, 253, 248, 0.94) !important;
    max-width: 860px;
}

.moa-services-head p {
    grid-column: 1;
    grid-row: 1;
    max-width: 430px;
    color: rgba(255, 253, 248, 0.55) !important;
    padding-top: 8px;
}

.moa-services-grid article {
    padding: 34px !important;
}

.moa-services-grid h3 {
    color: rgba(255, 253, 248, 0.92) !important;
    font-size: clamp(28px, 2.25vw, 38px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.012em !important;
    margin-bottom: 20px !important;
}

.moa-services-grid p {
    color: rgba(255, 253, 248, 0.58) !important;
    max-width: 420px;
}

.moa-team-caption p {
    color: rgba(255, 253, 248, 0.58) !important;
}

.moa-hero p {
    font-size: var(--moa-body-text) !important;
    line-height: 1.58 !important;
    font-weight: 300 !important;
    color: rgba(255, 253, 248, 0.78) !important;
}

@media (max-width: 980px) {
    .moa-practice-layout,
    .moa-services-head {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .moa-services-head h2,
    .moa-services-head p {
        grid-column: auto;
        grid-row: auto;
    }

    .moa-practice-copy,
    .moa-services-head p {
        max-width: 760px;
    }

    .moa-practice-layout {
        margin-bottom: 82px;
    }
}

@media (max-width: 640px) {
    :root {
        --moa-large-text: clamp(34px, 10vw, 48px);
        --moa-body-text: 16px;
        --moa-caption-text: 14px;
    }

    .moa-services-grid article {
        padding: 28px !important;
    }
}


/* Clean Practice and Services text layout */
.moa-practice-layout--clean {
    display: block !important;
    max-width: 980px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    margin-bottom: 104px !important;
}

.moa-practice-layout--clean .moa-practice-statement {
    max-width: 920px !important;
    margin-left: 0 !important;
}

.moa-practice-layout--clean .moa-practice-statement h2 {
    max-width: 900px !important;
    margin-left: 0 !important;
}

.moa-practice-layout--clean .moa-practice-statement p {
    max-width: 760px !important;
    margin-left: 0 !important;
}

.moa-services-head--clean {
    display: block !important;
    max-width: 920px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

.moa-services-head--clean h2 {
    max-width: 900px !important;
    margin-left: 0 !important;
}

.moa-services-head--clean p {
    display: none !important;
}


/* Hero image replacement and services grid border removal */
body.moa-home-page .moa-hero {
    background:
        linear-gradient(90deg, rgba(10, 14, 18, 0.66), rgba(10, 14, 18, 0.36), rgba(10, 14, 18, 0.08)),
        url('/wp-content/uploads/2026/05/title2.jpg') !important;
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
}

/* Remove visible table-like borders around services block */
body.moa-home-page .moa-services-grid {
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    gap: 0 !important;
}

body.moa-home-page .moa-services-grid article {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

body.moa-home-page .moa-services-grid article + article {
    border-left: 1px solid rgba(255, 253, 248, 0.08) !important;
}

@media (max-width: 1024px) {
    body.moa-home-page .moa-services-grid article + article {
        border-left: 0 !important;
    }

    body.moa-home-page .moa-services-grid article {
        border-top: 1px solid rgba(255, 253, 248, 0.08) !important;
    }

    body.moa-home-page .moa-services-grid article:first-child {
        border-top: 0 !important;
    }
}


/* Services: remove all table borders and add architectural air */
body.moa-home-page .moa-services-grid {
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    gap: clamp(34px, 4vw, 72px) clamp(38px, 5vw, 88px) !important;
}

body.moa-home-page .moa-services-grid article,
body.moa-home-page .moa-services-grid article + article,
body.moa-home-page .moa-services-grid article:first-child {
    border: 0 !important;
    border-left: 0 !important;
    border-top: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

body.moa-home-page .moa-services-grid article {
    padding: clamp(22px, 2.2vw, 42px) 0 !important;
    min-height: 220px !important;
}

body.moa-home-page .moa-services-grid h3 {
    margin-bottom: 24px !important;
}

body.moa-home-page .moa-services-grid p {
    max-width: 480px !important;
}

@media (max-width: 1024px) {
    body.moa-home-page .moa-services-grid {
        gap: 42px !important;
    }

    body.moa-home-page .moa-services-grid article {
        min-height: auto !important;
        padding: 0 !important;
    }
}


/* Hero image vertical centering */
body.moa-home-page .moa-hero {
    background-position: center 60% !important;
}

@media (max-width: 900px) {
    body.moa-home-page .moa-hero {
        background-position: center 58% !important;
    }
}


/* Hero image balanced vertical position */
body.moa-home-page .moa-hero {
    background-position: center 42% !important;
}

@media (max-width: 900px) {
    body.moa-home-page .moa-hero {
        background-position: center 45% !important;
    }
}


/* Team and Portfolio refinement */
body.moa-home-page .moa-team--simple {
    border-top: 0 !important;
    padding-top: 42px !important;
}

body.moa-home-page .moa-portfolio {
    padding-top: 78px !important;
    background: #fffdf8 !important;
}

body.moa-home-page .moa-portfolio .moa-section-head {
    margin-bottom: 32px !important;
}

body.moa-home-page .moa-portfolio .moa-section-head h2 {
    color: #101923 !important;
}

/* Portfolio orbit carousel */
body.moa-home-page .moa-carousel {
    position: relative !important;
    height: min(68vh, 660px) !important;
    min-height: 520px !important;
    overflow: hidden !important;
    margin-top: 12px !important;
}

body.moa-home-page .moa-carousel-track {
    position: relative !important;
    height: 100% !important;
    width: 100% !important;
    overflow: visible !important;
    display: block !important;
    padding: 0 !important;
    scroll-snap-type: none !important;
    scrollbar-width: none !important;
}

body.moa-home-page .moa-carousel-track::-webkit-scrollbar {
    display: none !important;
}

body.moa-home-page .moa-project-card {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: min(64vw, 860px) !important;
    height: min(62vh, 610px) !important;
    min-height: 0 !important;
    flex: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate(-50%, -46%) scale(0.72) !important;
    transition:
        transform 780ms cubic-bezier(.22,.61,.36,1),
        opacity 780ms cubic-bezier(.22,.61,.36,1),
        filter 780ms cubic-bezier(.22,.61,.36,1) !important;
    z-index: 1 !important;
    background: #101923 !important;
}

body.moa-home-page .moa-project-card.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translate(-50%, -50%) scale(1) !important;
    z-index: 5 !important;
    filter: none !important;
}

body.moa-home-page .moa-project-card.is-prev {
    opacity: 0.72 !important;
    pointer-events: auto !important;
    transform: translate(-112%, -47%) scale(0.82) !important;
    z-index: 3 !important;
    filter: brightness(0.82) saturate(0.88) !important;
}

body.moa-home-page .moa-project-card.is-next {
    opacity: 0.72 !important;
    pointer-events: auto !important;
    transform: translate(12%, -47%) scale(0.82) !important;
    z-index: 3 !important;
    filter: brightness(0.82) saturate(0.88) !important;
}

body.moa-home-page .moa-project-card__image,
body.moa-home-page .moa-project-card__image img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

body.moa-home-page .moa-project-card__image img {
    object-fit: cover !important;
    opacity: 1 !important;
}

body.moa-home-page .moa-project-card__image {
    background:
        linear-gradient(180deg, rgba(16, 25, 35, 0.02), rgba(16, 25, 35, 0.78)),
        #101923 !important;
}

body.moa-home-page .moa-project-card__content {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    padding: clamp(26px, 3vw, 46px) !important;
    z-index: 3 !important;
}

body.moa-home-page .moa-project-card h3 {
    color: #fffdf8 !important;
    font-size: clamp(34px, 3.8vw, 58px) !important;
    line-height: 1.02 !important;
    max-width: 720px !important;
}

/* Center arrows inside buttons */
body.moa-home-page .moa-carousel-button {
    width: 48px !important;
    height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    line-height: 1 !important;
    font-size: 32px !important;
    border: 0 !important;
    background: rgba(16, 25, 35, 0.38) !important;
    color: #fffdf8 !important;
    z-index: 12 !important;
    transform: translateY(-50%) !important;
}

body.moa-home-page .moa-carousel-button:hover {
    background: rgba(16, 25, 35, 0.58) !important;
}

body.moa-home-page .moa-carousel-button--prev {
    left: 7vw !important;
}

body.moa-home-page .moa-carousel-button--next {
    right: 7vw !important;
}

@media (max-width: 900px) {
    body.moa-home-page .moa-carousel {
        height: 560px !important;
        min-height: 520px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 78vw !important;
        height: 500px !important;
    }

    body.moa-home-page .moa-project-card.is-prev {
        transform: translate(-118%, -47%) scale(0.78) !important;
    }

    body.moa-home-page .moa-project-card.is-next {
        transform: translate(18%, -47%) scale(0.78) !important;
    }

    body.moa-home-page .moa-carousel-button {
        display: none !important;
    }
}

@media (max-width: 620px) {
    body.moa-home-page .moa-portfolio {
        padding-top: 64px !important;
    }

    body.moa-home-page .moa-carousel {
        height: 500px !important;
        min-height: 480px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 86vw !important;
        height: 440px !important;
    }

    body.moa-home-page .moa-project-card.is-prev,
    body.moa-home-page .moa-project-card.is-next {
        opacity: 0 !important;
        pointer-events: none !important;
    }
}


/* Portfolio carousel: 3x4 cards, edge side previews, footer link */
body.moa-home-page .moa-portfolio {
    padding-bottom: 92px !important;
}

body.moa-home-page .moa-carousel {
    height: min(82vh, 780px) !important;
    min-height: 640px !important;
    margin-top: 4px !important;
}

body.moa-home-page .moa-project-card {
    width: min(34vw, 560px) !important;
    height: auto !important;
    aspect-ratio: 3 / 4 !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

body.moa-home-page .moa-project-card.is-active {
    transform: translate(-50%, -51%) scale(1.04) !important;
    z-index: 6 !important;
}

body.moa-home-page .moa-project-card.is-prev {
    transform: translate(calc(-50% - 42vw), -47%) scale(0.88) !important;
    opacity: 0.74 !important;
    z-index: 3 !important;
}

body.moa-home-page .moa-project-card.is-next {
    transform: translate(calc(-50% + 42vw), -47%) scale(0.88) !important;
    opacity: 0.74 !important;
    z-index: 3 !important;
}

body.moa-home-page .moa-project-card__image,
body.moa-home-page .moa-project-card__image img {
    width: 100% !important;
    height: 100% !important;
}

body.moa-home-page .moa-project-card__image img {
    object-fit: cover !important;
}

body.moa-home-page .moa-project-card__content {
    padding: clamp(24px, 2.6vw, 42px) !important;
    background: linear-gradient(180deg, rgba(16,25,35,0), rgba(16,25,35,0.72)) !important;
}

body.moa-home-page .moa-project-card h3 {
    font-size: clamp(30px, 3.1vw, 50px) !important;
    line-height: 1.04 !important;
    margin-bottom: 14px !important;
}

body.moa-home-page .moa-project-card__excerpt {
    max-width: 520px !important;
    color: rgba(255, 253, 248, 0.74) !important;
    font-family: "Inter", sans-serif !important;
    font-size: 14.5px !important;
    line-height: 1.55 !important;
    font-weight: 300 !important;
    margin: 0 !important;
}

body.moa-home-page .moa-carousel-footer {
    margin-top: 28px !important;
    display: flex !important;
    justify-content: center !important;
}

body.moa-home-page .moa-carousel-footer .moa-link {
    color: #101923 !important;
    border-bottom-color: #101923 !important;
}

@media (max-width: 1100px) {
    body.moa-home-page .moa-carousel {
        height: 680px !important;
        min-height: 620px !important;
    }

    body.moa-home-page .moa-project-card {
        width: min(46vw, 520px) !important;
    }

    body.moa-home-page .moa-project-card.is-prev {
        transform: translate(calc(-50% - 48vw), -47%) scale(0.84) !important;
    }

    body.moa-home-page .moa-project-card.is-next {
        transform: translate(calc(-50% + 48vw), -47%) scale(0.84) !important;
    }
}

@media (max-width: 720px) {
    body.moa-home-page .moa-carousel {
        height: 620px !important;
        min-height: 560px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 78vw !important;
    }

    body.moa-home-page .moa-project-card.is-active {
        transform: translate(-50%, -50%) scale(1) !important;
    }

    body.moa-home-page .moa-project-card.is-prev,
    body.moa-home-page .moa-project-card.is-next {
        opacity: 0 !important;
        pointer-events: none !important;
    }
}


/* Portfolio carousel: horizontal 4x3 project cards */
body.moa-home-page .moa-carousel {
    height: min(70vh, 660px) !important;
    min-height: 520px !important;
}

body.moa-home-page .moa-project-card {
    width: min(58vw, 880px) !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
    min-height: 0 !important;
}

body.moa-home-page .moa-project-card.is-active {
    transform: translate(-50%, -50%) scale(1.03) !important;
    z-index: 6 !important;
}

body.moa-home-page .moa-project-card.is-prev {
    transform: translate(calc(-50% - 52vw), -47%) scale(0.82) !important;
    opacity: 0.74 !important;
    z-index: 3 !important;
}

body.moa-home-page .moa-project-card.is-next {
    transform: translate(calc(-50% + 52vw), -47%) scale(0.82) !important;
    opacity: 0.74 !important;
    z-index: 3 !important;
}

body.moa-home-page .moa-project-card__image,
body.moa-home-page .moa-project-card__image img {
    width: 100% !important;
    height: 100% !important;
}

body.moa-home-page .moa-project-card__image img {
    object-fit: cover !important;
}

body.moa-home-page .moa-project-card h3 {
    font-size: clamp(30px, 3vw, 48px) !important;
}

@media (max-width: 1100px) {
    body.moa-home-page .moa-carousel {
        height: 600px !important;
        min-height: 520px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 68vw !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-project-card.is-prev {
        transform: translate(calc(-50% - 58vw), -47%) scale(0.8) !important;
    }

    body.moa-home-page .moa-project-card.is-next {
        transform: translate(calc(-50% + 58vw), -47%) scale(0.8) !important;
    }
}

@media (max-width: 720px) {
    body.moa-home-page .moa-carousel {
        height: 430px !important;
        min-height: 390px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 86vw !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-project-card.is-active {
        transform: translate(-50%, -50%) scale(1) !important;
    }
}


/* Portfolio carousel: full-bleed horizontal stage with edge previews */
body.moa-home-page .moa-portfolio {
    overflow: hidden !important;
}

body.moa-home-page .moa-carousel {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    height: min(72vh, 700px) !important;
    min-height: 560px !important;
    overflow: hidden !important;
    touch-action: pan-y !important;
    user-select: none !important;
}

body.moa-home-page .moa-carousel-track {
    width: 100vw !important;
    height: 100% !important;
    overflow: visible !important;
}

body.moa-home-page .moa-project-card {
    width: min(58vw, 940px) !important;
    aspect-ratio: 4 / 3 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
    cursor: pointer !important;
}

body.moa-home-page .moa-project-card.is-active {
    left: 50% !important;
    right: auto !important;
    opacity: 1 !important;
    transform: translate(-50%, -52%) scale(1.03) !important;
    z-index: 8 !important;
}

body.moa-home-page .moa-project-card.is-prev {
    left: 0 !important;
    right: auto !important;
    opacity: 0.68 !important;
    transform: translate(-62%, -49%) scale(0.9) !important;
    z-index: 4 !important;
    filter: brightness(0.72) saturate(0.86) !important;
}

body.moa-home-page .moa-project-card.is-next {
    left: auto !important;
    right: 0 !important;
    opacity: 0.68 !important;
    transform: translate(62%, -49%) scale(0.9) !important;
    z-index: 4 !important;
    filter: brightness(0.72) saturate(0.86) !important;
}

body.moa-home-page .moa-project-card__image,
body.moa-home-page .moa-project-card__image img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

body.moa-home-page .moa-project-card__image img {
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}

body.moa-home-page .moa-project-card__content {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    padding: 0 clamp(28px, 3vw, 48px) clamp(30px, 3vw, 48px) !important;
    background: linear-gradient(180deg, rgba(16,25,35,0), rgba(16,25,35,0.74)) !important;
    transform: none !important;
}

body.moa-home-page .moa-project-card h3 {
    display: block !important;
    color: #fffdf8 !important;
    font-size: clamp(30px, 3vw, 48px) !important;
    line-height: 1.06 !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    max-width: 720px !important;
    overflow: visible !important;
}

body.moa-home-page .moa-project-card__excerpt {
    max-width: 620px !important;
    color: rgba(255, 253, 248, 0.78) !important;
    font-size: 14.5px !important;
    line-height: 1.55 !important;
    margin: 0 !important;
}

body.moa-home-page .moa-carousel-button {
    top: 50% !important;
    transform: translateY(-50%) !important;
}

body.moa-home-page .moa-carousel-button--prev {
    left: 14vw !important;
}

body.moa-home-page .moa-carousel-button--next {
    right: 14vw !important;
}

body.moa-home-page .moa-carousel-footer {
    margin-top: 22px !important;
}

@media (max-width: 1100px) {
    body.moa-home-page .moa-carousel {
        height: 620px !important;
        min-height: 540px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 70vw !important;
    }

    body.moa-home-page .moa-project-card.is-prev {
        transform: translate(-68%, -49%) scale(0.86) !important;
    }

    body.moa-home-page .moa-project-card.is-next {
        transform: translate(68%, -49%) scale(0.86) !important;
    }

    body.moa-home-page .moa-carousel-button--prev {
        left: 7vw !important;
    }

    body.moa-home-page .moa-carousel-button--next {
        right: 7vw !important;
    }
}

@media (max-width: 720px) {
    body.moa-home-page .moa-carousel {
        height: 430px !important;
        min-height: 390px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 88vw !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-project-card.is-active {
        transform: translate(-50%, -50%) scale(1) !important;
    }

    body.moa-home-page .moa-project-card.is-prev,
    body.moa-home-page .moa-project-card.is-next {
        opacity: 0 !important;
        pointer-events: none !important;
    }

    body.moa-home-page .moa-project-card__content {
        padding: 0 24px 26px !important;
    }

    body.moa-home-page .moa-project-card h3 {
        font-size: clamp(28px, 8vw, 38px) !important;
    }
}


/* Portfolio carousel: final overlap and proportion refinement */

/* Hide upper All Projects link, keep footer link */
body.moa-home-page .moa-portfolio > .moa-section-head .moa-link {
    display: none !important;
}

body.moa-home-page .moa-carousel-footer .moa-link {
    display: inline-block !important;
}

/* Give the stage enough height so the main 4:3 image is not clipped */
body.moa-home-page .moa-carousel {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    height: min(78vh, 780px) !important;
    min-height: 680px !important;
    overflow: hidden !important;
    background: #fffdf8 !important;
}

/* Make the active card large and clearly above side cards */
body.moa-home-page .moa-project-card {
    width: min(62vw, 1040px) !important;
    aspect-ratio: 4 / 3 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

/* Main project: bigger, higher, above everything */
body.moa-home-page .moa-project-card.is-active {
    left: 50% !important;
    right: auto !important;
    opacity: 1 !important;
    transform: translate(-50%, -52%) scale(1.08) !important;
    z-index: 30 !important;
    filter: none !important;
    box-shadow: 0 34px 80px rgba(16, 25, 35, 0.18) !important;
}

/* Side projects: reach the screen edges and sit behind */
body.moa-home-page .moa-project-card.is-prev {
    left: -18vw !important;
    right: auto !important;
    opacity: 0.62 !important;
    transform: translateY(-49%) scale(0.84) !important;
    z-index: 8 !important;
    filter: brightness(0.76) saturate(0.86) !important;
}

body.moa-home-page .moa-project-card.is-next {
    left: auto !important;
    right: -18vw !important;
    opacity: 0.62 !important;
    transform: translateY(-49%) scale(0.84) !important;
    z-index: 8 !important;
    filter: brightness(0.76) saturate(0.86) !important;
}

/* Ensure image fills the whole project card */
body.moa-home-page .moa-project-card__image,
body.moa-home-page .moa-project-card__image img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

body.moa-home-page .moa-project-card__image img {
    object-fit: cover !important;
    object-position: center center !important;
}

/* Keep captions safely inside the image */
body.moa-home-page .moa-project-card__content {
    bottom: 0 !important;
    padding: 0 clamp(30px, 3.2vw, 54px) clamp(34px, 3.4vw, 56px) !important;
    background: linear-gradient(180deg, rgba(16,25,35,0), rgba(16,25,35,0.78)) !important;
}

body.moa-home-page .moa-project-card h3 {
    margin-bottom: 12px !important;
    max-width: 780px !important;
}

/* Arrows above side cards, centered vertically */
body.moa-home-page .moa-carousel-button {
    z-index: 40 !important;
    top: 50% !important;
}

body.moa-home-page .moa-carousel-button--prev {
    left: 7vw !important;
}

body.moa-home-page .moa-carousel-button--next {
    right: 7vw !important;
}

@media (max-width: 1100px) {
    body.moa-home-page .moa-carousel {
        height: 660px !important;
        min-height: 600px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 72vw !important;
    }

    body.moa-home-page .moa-project-card.is-active {
        transform: translate(-50%, -51%) scale(1.04) !important;
    }

    body.moa-home-page .moa-project-card.is-prev {
        left: -28vw !important;
        transform: translateY(-49%) scale(0.82) !important;
    }

    body.moa-home-page .moa-project-card.is-next {
        right: -28vw !important;
        transform: translateY(-49%) scale(0.82) !important;
    }
}

@media (max-width: 720px) {
    body.moa-home-page .moa-carousel {
        height: 460px !important;
        min-height: 420px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 88vw !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-project-card.is-active {
        transform: translate(-50%, -50%) scale(1) !important;
        box-shadow: none !important;
    }

    body.moa-home-page .moa-project-card.is-prev,
    body.moa-home-page .moa-project-card.is-next {
        opacity: 0 !important;
        pointer-events: none !important;
    }
}


/* Portfolio carousel: 10% smaller, smoother circular movement, mobile side cards visible */
body.moa-home-page .moa-carousel {
    height: min(72vh, 700px) !important;
    min-height: 610px !important;
}

body.moa-home-page .moa-project-card {
    left: 50% !important;
    right: auto !important;
    width: min(56vw, 936px) !important;
    aspect-ratio: 4 / 3 !important;
    transform-origin: center center !important;
    will-change: transform, opacity, filter !important;
    transition:
        transform 1150ms cubic-bezier(0.16, 1, 0.3, 1),
        opacity 1150ms cubic-bezier(0.16, 1, 0.3, 1),
        filter 1150ms cubic-bezier(0.16, 1, 0.3, 1),
        box-shadow 1150ms cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.moa-home-page .moa-project-card.is-active {
    left: 50% !important;
    right: auto !important;
    opacity: 1 !important;
    transform: translate(-50%, -52%) scale(1.04) !important;
    z-index: 30 !important;
    filter: none !important;
    box-shadow: 0 30px 70px rgba(16, 25, 35, 0.16) !important;
}

body.moa-home-page .moa-project-card.is-prev {
    left: 50% !important;
    right: auto !important;
    opacity: 0.62 !important;
    transform: translate(calc(-50% - 36vw), -49%) scale(0.82) !important;
    z-index: 8 !important;
    filter: brightness(0.76) saturate(0.86) !important;
}

body.moa-home-page .moa-project-card.is-next {
    left: 50% !important;
    right: auto !important;
    opacity: 0.62 !important;
    transform: translate(calc(-50% + 36vw), -49%) scale(0.82) !important;
    z-index: 8 !important;
    filter: brightness(0.76) saturate(0.86) !important;
}

@media (max-width: 1100px) {
    body.moa-home-page .moa-carousel {
        height: 610px !important;
        min-height: 550px !important;
    }

    body.moa-home-page .moa-project-card {
        width: 64vw !important;
    }

    body.moa-home-page .moa-project-card.is-active {
        transform: translate(-50%, -51%) scale(1.02) !important;
    }

    body.moa-home-page .moa-project-card.is-prev {
        transform: translate(calc(-50% - 39vw), -49%) scale(0.8) !important;
    }

    body.moa-home-page .moa-project-card.is-next {
        transform: translate(calc(-50% + 39vw), -49%) scale(0.8) !important;
    }
}

@media (max-width: 720px) {
    body.moa-home-page .moa-carousel {
        height: 410px !important;
        min-height: 380px !important;
        overflow: hidden !important;
    }

    body.moa-home-page .moa-project-card {
        width: 78vw !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-project-card.is-active {
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translate(-50%, -50%) scale(0.96) !important;
        z-index: 30 !important;
        box-shadow: 0 18px 44px rgba(16, 25, 35, 0.18) !important;
    }

    body.moa-home-page .moa-project-card.is-prev {
        opacity: 0.58 !important;
        pointer-events: auto !important;
        transform: translate(calc(-50% - 45vw), -49%) scale(0.76) !important;
        z-index: 8 !important;
        filter: brightness(0.74) saturate(0.84) !important;
    }

    body.moa-home-page .moa-project-card.is-next {
        opacity: 0.58 !important;
        pointer-events: auto !important;
        transform: translate(calc(-50% + 45vw), -49%) scale(0.76) !important;
        z-index: 8 !important;
        filter: brightness(0.74) saturate(0.84) !important;
    }

    body.moa-home-page .moa-project-card__content {
        padding: 0 22px 24px !important;
    }

    body.moa-home-page .moa-project-card h3 {
        font-size: clamp(24px, 7vw, 34px) !important;
    }

    body.moa-home-page .moa-project-card__excerpt {
        font-size: 13.5px !important;
        line-height: 1.48 !important;
    }
}


/* Portfolio carousel: allow visual shadow space and lower All Projects */
body.moa-home-page .moa-portfolio {
    padding-bottom: 120px !important;
}

body.moa-home-page .moa-carousel {
    overflow: visible !important;
    height: min(74vh, 720px) !important;
    min-height: 640px !important;
    margin-bottom: 70px !important;
}

body.moa-home-page .moa-carousel-track {
    overflow: visible !important;
}

body.moa-home-page .moa-project-card.is-active {
    box-shadow: 0 42px 110px rgba(16, 25, 35, 0.22) !important;
}

body.moa-home-page .moa-carousel-footer {
    margin-top: 84px !important;
    padding-top: 0 !important;
    position: relative !important;
    z-index: 20 !important;
}

@media (max-width: 720px) {
    body.moa-home-page .moa-carousel {
        overflow: visible !important;
        margin-bottom: 46px !important;
    }

    body.moa-home-page .moa-carousel-footer {
        margin-top: 58px !important;
    }
}
