: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;
    }
}


/* Predesign Chapel Projects section */
body.moa-home-page .moa-predesign {
    background: #101923;
    color: #fffdf8;
    padding: 112px 0 118px;
    overflow: hidden;
}

body.moa-home-page .moa-predesign__head {
    width: 100%;
    max-width: none;
    padding: 0 7vw 78px;
    display: grid;
    grid-template-columns: minmax(260px, 0.78fr) minmax(520px, 1.22fr);
    gap: clamp(48px, 7vw, 118px);
    align-items: start;
}

body.moa-home-page .moa-predesign__head h2 {
    grid-column: 2;
    color: rgba(255, 253, 248, 0.94);
    font-size: var(--moa-large-text);
    line-height: 1.04;
    letter-spacing: -0.018em;
    margin: 0;
}

body.moa-home-page .moa-predesign__head p {
    grid-column: 1;
    grid-row: 1;
    max-width: 440px;
    color: rgba(255, 253, 248, 0.56);
    font-family: "Inter", sans-serif;
    font-size: var(--moa-body-text);
    line-height: var(--moa-body-line);
    font-weight: 300;
    margin: 0;
    padding-top: 8px;
}

body.moa-home-page .moa-predesign__list {
    display: grid;
    gap: 0;
}

body.moa-home-page .moa-predesign-item {
    min-height: 56vw;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
}

body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__image {
    order: 1;
}

body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__content {
    order: 2;
}

body.moa-home-page .moa-predesign-item__image {
    display: block;
    width: 50vw;
    min-height: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: rgba(255,255,255,0.04);
}

body.moa-home-page .moa-predesign-item__image img {
    width: 100%;
    height: 100%;
    min-height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
    transition: transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
}

body.moa-home-page .moa-predesign-item__image:hover img {
    transform: scale(1.035);
}

body.moa-home-page .moa-predesign-item__content {
    min-height: 100%;
    padding: clamp(48px, 6vw, 104px) 7vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #101923;
}

body.moa-home-page .moa-predesign-item__content h3 {
    color: rgba(255, 253, 248, 0.94);
    font-size: var(--moa-large-text);
    line-height: 1.04;
    letter-spacing: -0.018em;
    margin: 0 0 28px;
}

body.moa-home-page .moa-predesign-item__content p {
    max-width: 560px;
    color: rgba(255, 253, 248, 0.62);
    font-family: "Inter", sans-serif;
    font-size: var(--moa-body-text);
    line-height: var(--moa-body-line);
    font-weight: 300;
    margin: 0 0 28px;
}

body.moa-home-page .moa-predesign-item__price {
    margin-top: 2px;
    color: rgba(255, 253, 248, 0.92);
    font-family: "Inter", sans-serif;
    font-size: 13px;
    line-height: 1;
    font-weight: 300;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

body.moa-home-page .moa-predesign-item__link {
    width: fit-content;
    margin-top: 34px;
    color: #fffdf8;
    text-decoration: none;
    border-bottom: 1px solid rgba(255, 253, 248, 0.72);
    padding-bottom: 7px;
    font-family: "Inter", sans-serif;
    font-size: 12px;
    line-height: 1;
    font-weight: 300;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

body.moa-home-page .moa-predesign__footer {
    padding: 72px 7vw 0;
    text-align: center;
}

body.moa-home-page .moa-predesign__footer a {
    display: inline-block;
    color: #fffdf8;
    text-decoration: none;
    border-bottom: 1px solid rgba(255, 253, 248, 0.72);
    padding-bottom: 7px;
    font-family: "Inter", sans-serif;
    font-size: 12px;
    line-height: 1;
    font-weight: 300;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

body.moa-home-page .moa-predesign__footer p {
    max-width: 720px;
    margin: 28px auto 0;
    color: rgba(255, 253, 248, 0.46);
    font-family: "Inter", sans-serif;
    font-size: 13px;
    line-height: 1.58;
    font-weight: 300;
}

@media (max-width: 980px) {
    body.moa-home-page .moa-predesign__head {
        grid-template-columns: 1fr;
        gap: 28px;
        padding-bottom: 58px;
    }

    body.moa-home-page .moa-predesign__head h2,
    body.moa-home-page .moa-predesign__head p {
        grid-column: auto;
        grid-row: auto;
    }

    body.moa-home-page .moa-predesign__head p {
        max-width: 760px;
        padding-top: 0;
    }

    body.moa-home-page .moa-predesign-item,
    body.moa-home-page .moa-predesign-item.is-reversed {
        min-height: auto;
        grid-template-columns: 1fr;
    }

    body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__image,
    body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__content {
        order: initial;
    }

    body.moa-home-page .moa-predesign-item__image {
        width: 100vw;
        aspect-ratio: 4 / 3;
    }

    body.moa-home-page .moa-predesign-item__content {
        padding: 48px 24px 76px;
    }
}


/* Predesign section refinement: true 4x3 images, better text, price, button */
body.moa-home-page .moa-predesign__head {
    padding-bottom: 70px !important;
}

body.moa-home-page .moa-predesign__head p {
    max-width: 520px !important;
    color: rgba(255, 253, 248, 0.60) !important;
}

body.moa-home-page .moa-predesign-item {
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.moa-home-page .moa-predesign-item__image {
    width: 50vw !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 3 !important;
    align-self: center !important;
    display: block !important;
    overflow: hidden !important;
    background: rgba(255, 255, 255, 0.04) !important;
}

body.moa-home-page .moa-predesign-item__image img {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 3 !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}

body.moa-home-page .moa-predesign-item__content {
    min-height: 0 !important;
    height: auto !important;
    padding: clamp(48px, 6vw, 96px) 7vw !important;
    justify-content: center !important;
}

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

body.moa-home-page .moa-predesign-item__content p {
    max-width: 540px !important;
    margin-bottom: 32px !important;
}

body.moa-home-page .moa-predesign-item__price {
    margin-top: 4px !important;
    margin-bottom: 34px !important;
    color: rgba(255, 253, 248, 0.96) !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(30px, 2.7vw, 46px) !important;
    line-height: 1.02 !important;
    font-weight: 300 !important;
    letter-spacing: -0.018em !important;
    text-transform: none !important;
}

body.moa-home-page .moa-predesign-item__link {
    min-height: 44px !important;
    width: fit-content !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 0 !important;
    padding: 0 22px !important;
    border: 0 !important;
    background: rgba(255, 253, 248, 0.92) !important;
    color: #101923 !important;
    text-decoration: none !important;
    font-family: "Inter", sans-serif !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 300 !important;
    letter-spacing: 0.13em !important;
    text-transform: uppercase !important;
    transition: background 0.22s ease, transform 0.22s ease !important;
}

body.moa-home-page .moa-predesign-item__link:hover {
    background: #fffdf8 !important;
    color: #101923 !important;
    transform: translateY(-1px) !important;
}

@media (max-width: 980px) {
    body.moa-home-page .moa-predesign-item {
        grid-template-columns: 1fr !important;
    }

    body.moa-home-page .moa-predesign-item__image {
        width: 100vw !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-predesign-item__image img {
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-predesign-item__content {
        padding: 46px 24px 72px !important;
    }

    body.moa-home-page .moa-predesign-item__price {
        font-size: clamp(30px, 9vw, 42px) !important;
    }
}


/* Predesign projects: true chess layout */
/* First item: text left, image right. Second item: image left, text right. */
body.moa-home-page .moa-predesign-item .moa-predesign-item__content {
    order: 1 !important;
}

body.moa-home-page .moa-predesign-item .moa-predesign-item__image {
    order: 2 !important;
}

body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__image {
    order: 1 !important;
}

body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__content {
    order: 2 !important;
}

/* Keep the image exactly half-screen on desktop */
body.moa-home-page .moa-predesign-item__image {
    width: 50vw !important;
    aspect-ratio: 4 / 3 !important;
}

@media (max-width: 980px) {
    /* On mobile, always show image first, then text. */
    body.moa-home-page .moa-predesign-item .moa-predesign-item__image,
    body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__image {
        order: 1 !important;
    }

    body.moa-home-page .moa-predesign-item .moa-predesign-item__content,
    body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__content {
        order: 2 !important;
    }

    body.moa-home-page .moa-predesign-item__image {
        width: 100vw !important;
        aspect-ratio: 4 / 3 !important;
    }
}


/* Predesign section: exact half-screen split, no overlap */
body.moa-home-page .moa-predesign {
    overflow: hidden !important;
}

body.moa-home-page .moa-predesign__list {
    width: 100% !important;
    max-width: none !important;
}

body.moa-home-page .moa-predesign-item {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    display: grid !important;
    grid-template-columns: 50vw 50vw !important;
    align-items: stretch !important;
    gap: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

body.moa-home-page .moa-predesign-item .moa-predesign-item__content {
    order: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
}

body.moa-home-page .moa-predesign-item .moa-predesign-item__image {
    order: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    display: block !important;
}

body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__image {
    order: 1 !important;
}

body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__content {
    order: 2 !important;
}

body.moa-home-page .moa-predesign-item__image img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
}

body.moa-home-page .moa-predesign-item__content {
    padding: clamp(48px, 6vw, 96px) 6vw !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    background: #101923 !important;
}

@media (max-width: 980px) {
    body.moa-home-page .moa-predesign-item {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        grid-template-columns: 1fr !important;
    }

    body.moa-home-page .moa-predesign-item .moa-predesign-item__image,
    body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__image {
        order: 1 !important;
        width: 100% !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-predesign-item .moa-predesign-item__content,
    body.moa-home-page .moa-predesign-item.is-reversed .moa-predesign-item__content {
        order: 2 !important;
        width: 100% !important;
    }
}


/* =========================================================
   Testimonials carousel — final card design
   Same visual logic as Selected Projects: 4:3 card, orbit carousel
   ========================================================= */

body.moa-home-page .moa-testimonials-section {
    background: #fffdf8 !important;
    color: var(--moa-ink) !important;
    padding-top: clamp(90px, 10vw, 150px) !important;
    padding-bottom: clamp(90px, 10vw, 150px) !important;
}

body.moa-home-page .moa-testimonials-section .moa-section-inner {
    max-width: none !important;
}

body.moa-home-page .moa-testimonials-section .moa-section-head {
    width: min(1180px, calc(100% - 48px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.moa-home-page .moa-testimonials-section .moa-section-head h2 {
    color: var(--moa-ink) !important;
}

body.moa-home-page .moa-testimonials-carousel {
    margin-top: clamp(34px, 5vw, 70px) !important;
    margin-bottom: 0 !important;
}

/* Keep testimonial card identical in outer behavior to project cards */
body.moa-home-page .moa-testimonial-card {
    aspect-ratio: 4 / 3 !important;
    height: auto !important;
    background: transparent !important;
    overflow: visible !important;
}

/* The link fills the same 4:3 project-card frame */
body.moa-home-page .moa-testimonial-link {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    color: inherit !important;
    text-decoration: none !important;
}

/* The visible card surface */
body.moa-home-page .moa-testimonial-card-inner {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 3 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    padding: clamp(28px, 3.2vw, 54px) clamp(30px, 3.8vw, 66px) !important;
    box-sizing: border-box !important;

    text-align: center !important;
    background: #fffdf8 !important;
    border: 1px solid rgba(20, 23, 26, 0.13) !important;
    box-shadow: 0 30px 76px rgba(16, 25, 35, 0.16) !important;
    overflow: hidden !important;
}

/* Portrait in the middle of the card */
body.moa-home-page .moa-testimonial-photo {
    flex: 0 0 auto !important;
    width: clamp(82px, 7vw, 118px) !important;
    height: clamp(82px, 7vw, 118px) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    margin: 0 auto clamp(16px, 1.8vw, 24px) !important;

    background: #f7f3ec !important;
    border: 1px solid rgba(185, 150, 88, 0.45) !important;
    box-shadow: 0 16px 34px rgba(16, 25, 35, 0.16) !important;
}

body.moa-home-page .moa-testimonial-photo img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
}

/* Name */
body.moa-home-page .moa-testimonial-content h3 {
    margin: 0 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(25px, 2.2vw, 38px) !important;
    font-weight: 400 !important;
    line-height: 1.04 !important;
    letter-spacing: -0.02em !important;
    color: var(--moa-ink) !important;
}

/* Position under name */
body.moa-home-page .moa-testimonial-position {
    margin: 8px 0 0 !important;
    font-family: "Inter", sans-serif !important;
    font-size: clamp(10px, 0.78vw, 12px) !important;
    line-height: 1.35 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: rgba(20, 23, 26, 0.54) !important;
}

/* Quote */
body.moa-home-page .moa-testimonial-content blockquote {
    position: relative !important;
    max-width: 620px !important;
    margin: clamp(16px, 1.9vw, 26px) auto 0 !important;
    padding: 0 !important;
    border: 0 !important;

    font-family: "Inter", sans-serif !important;
    font-size: clamp(14px, 1.02vw, 17px) !important;
    font-weight: 300 !important;
    line-height: 1.58 !important;
    color: rgba(20, 23, 26, 0.78) !important;
}

/* Opening quotation mark */
body.moa-home-page .moa-testimonial-content blockquote::before {
    content: "“" !important;
    display: inline-block !important;
    margin-right: 6px !important;
    height: auto !important;

    font-family: "Cormorant Garamond", serif !important;
    font-size: 42px !important;
    line-height: 0 !important;
    vertical-align: -16px !important;
    color: var(--moa-gold) !important;
}

/* Read link */
body.moa-home-page .moa-testimonial-read-more {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin-top: clamp(16px, 1.8vw, 26px) !important;
    padding-bottom: 6px !important;

    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    line-height: 1 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;

    color: var(--moa-ink) !important;
    border-bottom: 1px solid rgba(20, 23, 26, 0.45) !important;
}

body.moa-home-page .moa-testimonial-link:hover .moa-testimonial-read-more {
    border-bottom-color: var(--moa-gold) !important;
}

/* Bottom All testimonials link */
body.moa-home-page .moa-testimonials-section .moa-carousel-footer {
    margin-top: clamp(64px, 6vw, 96px) !important;
    text-align: center !important;
}

body.moa-home-page .moa-testimonials-section .moa-text-link {
    color: var(--moa-ink) !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.moa-home-page .moa-testimonial-card-inner {
        padding: 28px 24px !important;
    }

    body.moa-home-page .moa-testimonial-photo {
        width: 86px !important;
        height: 86px !important;
        margin-bottom: 16px !important;
    }

    body.moa-home-page .moa-testimonial-content h3 {
        font-size: 27px !important;
    }

    body.moa-home-page .moa-testimonial-content blockquote {
        font-size: 14px !important;
        line-height: 1.5 !important;
        margin-top: 16px !important;
    }

    body.moa-home-page .moa-testimonial-read-more {
        margin-top: 18px !important;
    }
}

/* =========================================================
   Testimonials final correction:
   larger portrait + stable project-style carousel arrows
   ========================================================= */

/* Portrait: approximately 2x larger than previous testimonial circle */
body.moa-home-page .moa-testimonials-section .moa-testimonial-photo {
    width: clamp(164px, 14vw, 236px) !important;
    height: clamp(164px, 14vw, 236px) !important;
    margin-bottom: clamp(18px, 2vw, 30px) !important;
}

/* Give the card enough internal space after portrait enlargement */
body.moa-home-page .moa-testimonials-section .moa-testimonial-card-inner {
    padding-top: clamp(24px, 2.6vw, 42px) !important;
    padding-bottom: clamp(24px, 2.6vw, 42px) !important;
}

/* Fix testimonial carousel arrows in the same stable position as projects */
body.moa-home-page .moa-testimonials-carousel .moa-carousel-arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 20 !important;

    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 0 !important;
    margin: 0 !important;

    border-radius: 999px !important;
    border: 1px solid rgba(20, 23, 26, 0.16) !important;
    background: #101923 !important;
    color: #fffdf8 !important;

    box-shadow: 0 18px 42px rgba(16, 25, 35, 0.20) !important;
    cursor: pointer !important;
}

/* Left / right placement */
body.moa-home-page .moa-testimonials-carousel .moa-carousel-prev {
    left: clamp(18px, 3vw, 44px) !important;
    right: auto !important;
}

body.moa-home-page .moa-testimonials-carousel .moa-carousel-next {
    right: clamp(18px, 3vw, 44px) !important;
    left: auto !important;
}

/* Center the arrow glyph itself */
body.moa-home-page .moa-testimonials-carousel .moa-carousel-arrow span {
    display: block !important;
    width: 100% !important;
    height: 100% !important;

    font-size: 34px !important;
    font-weight: 300 !important;
    line-height: 49px !important;
    text-align: center !important;

    color: #fffdf8 !important;
    transform: none !important;
}

/* Hover: same restrained behavior, not jumping */
body.moa-home-page .moa-testimonials-carousel .moa-carousel-arrow:hover {
    background: #101923 !important;
    color: #fffdf8 !important;
    border-color: rgba(185, 150, 88, 0.55) !important;
    transform: translateY(-50%) !important;
}

/* Mobile adjustment */
@media (max-width: 767px) {
    body.moa-home-page .moa-testimonials-section .moa-testimonial-photo {
        width: 150px !important;
        height: 150px !important;
        margin-bottom: 16px !important;
    }

    body.moa-home-page .moa-testimonials-carousel .moa-carousel-arrow {
        width: 46px !important;
        height: 46px !important;
        min-width: 46px !important;
        min-height: 46px !important;
    }

    body.moa-home-page .moa-testimonials-carousel .moa-carousel-arrow span {
        font-size: 30px !important;
        line-height: 41px !important;
    }

    body.moa-home-page .moa-testimonials-carousel .moa-carousel-prev {
        left: 10px !important;
    }

    body.moa-home-page .moa-testimonials-carousel .moa-carousel-next {
        right: 10px !important;
    }
}


/* =========================================================
   Final carousel correction:
   remove arrows from Projects and Testimonials,
   prevent accidental page reloads from side cards,
   smooth animation behavior
   ========================================================= */

/* Remove carousel arrows completely */
body.moa-home-page .moa-carousel-arrow,
body.moa-home-page .moa-carousel-prev,
body.moa-home-page .moa-carousel-next,
body.moa-home-page [data-moa-carousel-prev],
body.moa-home-page [data-moa-carousel-next] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Prevent accidental opening of side cards during animation */
body.moa-home-page .moa-project-card.is-prev,
body.moa-home-page .moa-project-card.is-next {
    pointer-events: none !important;
    cursor: default !important;
}

/* Only the central active card should be clickable */
body.moa-home-page .moa-project-card.is-active {
    pointer-events: auto !important;
}

/* Make the carousel motion more stable */
body.moa-home-page .moa-project-card {
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
    transform-style: preserve-3d !important;
    will-change: transform, opacity !important;
    transition:
        transform 950ms cubic-bezier(0.16, 1, 0.3, 1),
        opacity 950ms cubic-bezier(0.16, 1, 0.3, 1),
        box-shadow 950ms cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* Avoid visual jumps caused by heavy filters during carousel movement */
body.moa-home-page .moa-project-card.is-prev,
body.moa-home-page .moa-project-card.is-next,
body.moa-home-page .moa-project-card.is-active {
    filter: none !important;
}

/* Keep the carousel area open so card shadows are not clipped */
body.moa-home-page .moa-carousel,
body.moa-home-page .moa-carousel-stage {
    overflow: visible !important;
}


/* =========================================================
   Testimonials mobile fix
   Vertical cards only on mobile
   ========================================================= */
@media (max-width: 767px) {

    /* Give the testimonial carousel enough vertical room */
    body.moa-home-page .moa-testimonials-section .moa-carousel,
    body.moa-home-page .moa-testimonials-section .moa-carousel-stage {
        min-height: 760px !important;
        overflow: visible !important;
    }

    /* Make testimonial cards vertical instead of horizontal */
    body.moa-home-page .moa-testimonials-section .moa-testimonial-card {
        aspect-ratio: 4 / 5 !important;
        width: min(82vw, 340px) !important;
        max-width: 340px !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-card-inner {
        aspect-ratio: 4 / 5 !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 26px 22px 28px !important;
        justify-content: flex-start !important;
    }

    /* Portrait */
    body.moa-home-page .moa-testimonials-section .moa-testimonial-photo {
        width: 132px !important;
        height: 132px !important;
        margin: 0 auto 16px !important;
    }

    /* Name */
    body.moa-home-page .moa-testimonials-section .moa-testimonial-content h3 {
        font-size: 24px !important;
        line-height: 1.05 !important;
        margin: 0 !important;
    }

    /* Position */
    body.moa-home-page .moa-testimonials-section .moa-testimonial-position {
        font-size: 11px !important;
        line-height: 1.4 !important;
        margin-top: 8px !important;
    }

    /* Quote */
    body.moa-home-page .moa-testimonials-section .moa-testimonial-content blockquote {
        font-size: 14px !important;
        line-height: 1.48 !important;
        margin-top: 14px !important;
        max-width: 100% !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-content blockquote::before {
        font-size: 34px !important;
        vertical-align: -12px !important;
        margin-right: 4px !important;
    }

    /* Link */
    body.moa-home-page .moa-testimonials-section .moa-testimonial-read-more {
        margin-top: 16px !important;
        font-size: 11px !important;
    }

    /* Side cards should stay smaller and not break the center composition */
    body.moa-home-page .moa-testimonials-section .moa-testimonial-card.is-prev,
    body.moa-home-page .moa-testimonials-section .moa-testimonial-card.is-next {
        opacity: 0.42 !important;
    }

    /* All testimonials link spacing */
    body.moa-home-page .moa-testimonials-section .moa-carousel-footer {
        margin-top: 34px !important;
    }
}


/* =========================================================
   Carousel side cards:
   restore click-to-center behavior without arrows
   ========================================================= */

/* Side cards must receive clicks again */
body.moa-home-page .moa-project-card.is-prev,
body.moa-home-page .moa-project-card.is-next {
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* But only the active center card behaves visually as a real link */
body.moa-home-page .moa-project-card.is-active {
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* Keep arrows removed */
body.moa-home-page .moa-carousel-arrow,
body.moa-home-page .moa-carousel-prev,
body.moa-home-page .moa-carousel-next,
body.moa-home-page [data-moa-carousel-prev],
body.moa-home-page [data-moa-carousel-next] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}


/* =========================================================
   Testimonials mobile: real vertical card, no clipping
   ========================================================= */
@media (max-width: 767px) {

    body.moa-home-page .moa-testimonials-section {
        padding-top: 86px !important;
        padding-bottom: 110px !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-carousel,
    body.moa-home-page .moa-testimonials-section .moa-carousel-stage {
        min-height: 1040px !important;
        height: 1040px !important;
        overflow: visible !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-card {
        width: min(82vw, 340px) !important;
        max-width: 340px !important;
        height: auto !important;
        min-height: 900px !important;
        aspect-ratio: auto !important;
        overflow: visible !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-card-inner {
        width: 100% !important;
        height: auto !important;
        min-height: 900px !important;
        aspect-ratio: auto !important;
        overflow: visible !important;

        padding: 34px 24px 38px !important;
        justify-content: flex-start !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-photo {
        width: 150px !important;
        height: 150px !important;
        margin: 0 auto 22px !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-content h3 {
        font-size: 25px !important;
        line-height: 1.05 !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-position {
        font-size: 11px !important;
        line-height: 1.45 !important;
        margin-top: 10px !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-content blockquote {
        font-size: 14px !important;
        line-height: 1.56 !important;
        margin-top: 22px !important;
        max-width: 100% !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-read-more {
        margin-top: 24px !important;
        font-size: 11px !important;
    }

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

/* =========================================================
   Side cards must be clickable again
   ========================================================= */
body.moa-home-page .moa-project-card.is-prev,
body.moa-home-page .moa-project-card.is-next {
    pointer-events: auto !important;
    cursor: pointer !important;
}

body.moa-home-page .moa-project-card.is-active {
    pointer-events: auto !important;
}


/* =========================================================
   Testimonials mobile: dynamic equal height
   Height is calculated by JS from the tallest testimonial card
   ========================================================= */
@media (max-width: 767px) {

    body.moa-home-page .moa-testimonials-section .moa-carousel,
    body.moa-home-page .moa-testimonials-section .moa-carousel-stage {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-card {
        aspect-ratio: auto !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonial-card-inner {
        aspect-ratio: auto !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
        justify-content: flex-start !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonials-carousel.is-height-calculated,
    body.moa-home-page .moa-testimonials-section .moa-testimonials-carousel.is-height-calculated .moa-carousel-stage {
        height: var(--moa-testimonial-mobile-stage-height) !important;
        min-height: var(--moa-testimonial-mobile-stage-height) !important;
    }

    body.moa-home-page .moa-testimonials-section .moa-testimonials-carousel.is-height-calculated .moa-testimonial-card,
    body.moa-home-page .moa-testimonials-section .moa-testimonials-carousel.is-height-calculated .moa-testimonial-card-inner {
        height: var(--moa-testimonial-mobile-card-height) !important;
        min-height: var(--moa-testimonial-mobile-card-height) !important;
    }
}


/* =========================================================
   Publications — final redesign
   ========================================================= */

body.moa-home-page .moa-publications-section-v2 {
    background: #0f1924 !important;
    color: #fffdf8 !important;
    padding-top: clamp(90px, 10vw, 150px) !important;
    padding-bottom: clamp(100px, 10vw, 160px) !important;
}

body.moa-home-page .moa-publications-head {
    width: min(1180px, calc(100% - 48px)) !important;
    margin: 0 auto clamp(54px, 6vw, 90px) !important;
}

body.moa-home-page .moa-publications-head h2 {
    color: #fffdf8 !important;
}

body.moa-home-page .moa-publications-head p {
    max-width: 760px !important;
    color: rgba(255, 253, 248, 0.72) !important;
}

body.moa-home-page .moa-publications-list {
    display: flex !important;
    flex-direction: column !important;
    gap: clamp(56px, 6vw, 88px) !important;
}

body.moa-home-page .moa-publication-item {
    align-items: stretch !important;
}

body.moa-home-page .moa-publication-copy {
    background: transparent !important;
    color: #fffdf8 !important;
}

body.moa-home-page .moa-publication-copy .moa-predesign-copy-inner {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

body.moa-home-page .moa-publication-copy h3 {
    color: #fffdf8 !important;
}

body.moa-home-page .moa-publication-copy p {
    color: rgba(255, 253, 248, 0.74) !important;
}

body.moa-home-page .moa-publication-media {
    display: block !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    background: rgba(255,255,255,0.06) !important;
}

body.moa-home-page .moa-publication-media img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.moa-home-page .moa-publication-media:hover img {
    transform: scale(1.03) !important;
}

body.moa-home-page .moa-publication-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    align-items: center !important;
    margin-top: clamp(22px, 2.5vw, 34px) !important;
}

body.moa-home-page .moa-publication-button,
body.moa-home-page .moa-publication-coming-soon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: 0 22px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

body.moa-home-page .moa-publication-button {
    border: 1px solid rgba(255, 253, 248, 0.78) !important;
    color: #0f1924 !important;
    background: #fffdf8 !important;
}

body.moa-home-page .moa-publication-button.is-secondary {
    background: transparent !important;
    color: #fffdf8 !important;
}

body.moa-home-page .moa-publication-button:hover {
    border-color: #b99658 !important;
}

body.moa-home-page .moa-publication-coming-soon {
    border: 1px solid rgba(255, 253, 248, 0.28) !important;
    color: rgba(255, 253, 248, 0.62) !important;
    background: transparent !important;
}

/* =========================================================
   Calendar block
   ========================================================= */

body.moa-home-page .moa-calendar-request {
    width: min(1180px, calc(100% - 48px)) !important;
    margin: clamp(96px, 10vw, 150px) auto 0 !important;
    padding-top: clamp(54px, 6vw, 88px) !important;
    border-top: 1px solid rgba(255, 253, 248, 0.14) !important;
}

body.moa-home-page .moa-calendar-intro {
    max-width: 860px !important;
    margin-bottom: clamp(42px, 5vw, 64px) !important;
}

body.moa-home-page .moa-calendar-intro h3 {
    margin: 0 0 22px !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(42px, 4.2vw, 66px) !important;
    font-weight: 400 !important;
    line-height: 0.98 !important;
    letter-spacing: -0.04em !important;
    color: #fffdf8 !important;
}

body.moa-home-page .moa-calendar-intro p {
    margin: 0 0 18px !important;
    font-size: clamp(16px, 1.14vw, 19px) !important;
    font-weight: 300 !important;
    line-height: 1.72 !important;
    color: rgba(255, 253, 248, 0.74) !important;
}

body.moa-home-page .moa-calendar-panel {
    display: grid !important;
    grid-template-columns: minmax(300px, 420px) minmax(0, 1fr) !important;
    gap: clamp(34px, 5vw, 72px) !important;
    align-items: start !important;
}

body.moa-home-page .moa-calendar-visual {
    position: relative !important;
}

body.moa-home-page .moa-calendar-image-frame {
    position: relative !important;
    padding: 18px !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.03)) !important;
    border: 1px solid rgba(255, 253, 248, 0.14) !important;
    box-shadow: 0 26px 70px rgba(0,0,0,0.30) !important;
}

body.moa-home-page .moa-calendar-image-frame::before {
    content: "" !important;
    position: absolute !important;
    inset: -10px auto auto -10px !important;
    width: 84px !important;
    height: 84px !important;
    border-top: 1px solid rgba(185, 150, 88, 0.5) !important;
    border-left: 1px solid rgba(185, 150, 88, 0.5) !important;
    pointer-events: none !important;
}

body.moa-home-page .moa-calendar-image-frame::after {
    content: "" !important;
    position: absolute !important;
    inset: auto -10px -10px auto !important;
    width: 84px !important;
    height: 84px !important;
    border-right: 1px solid rgba(185, 150, 88, 0.5) !important;
    border-bottom: 1px solid rgba(185, 150, 88, 0.5) !important;
    pointer-events: none !important;
}

body.moa-home-page .moa-calendar-image-frame img {
    width: 100% !important;
    display: block !important;
    height: auto !important;
}

body.moa-home-page .moa-calendar-form-card {
    background: #fffdf8 !important;
    color: #0f1924 !important;
    padding: clamp(28px, 3vw, 42px) !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.28) !important;
}

body.moa-home-page .moa-calendar-form .moa-form-row {
    margin-bottom: 16px !important;
}

body.moa-home-page .moa-calendar-form label {
    display: block !important;
    margin: 0 0 8px !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: rgba(15, 25, 36, 0.70) !important;
}

body.moa-home-page .moa-calendar-form input,
body.moa-home-page .moa-calendar-form select {
    width: 100% !important;
    height: 46px !important;
    padding: 0 14px !important;
    border: 1px solid rgba(15, 25, 36, 0.16) !important;
    background: #ffffff !important;
    color: #0f1924 !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
    border-radius: 0 !important;
}

body.moa-home-page .moa-form-grid {
    display: grid !important;
    grid-template-columns: 1fr 150px 110px !important;
    gap: 12px !important;
    margin-bottom: 18px !important;
}

body.moa-home-page .moa-calendar-consent {
    display: grid !important;
    grid-template-columns: 18px 1fr !important;
    gap: 12px !important;
    align-items: start !important;
    margin: 18px 0 24px !important;
}

body.moa-home-page .moa-calendar-consent input {
    width: 18px !important;
    height: 18px !important;
    margin: 2px 0 0 !important;
}

body.moa-home-page .moa-calendar-consent span {
    font-size: 13px !important;
    line-height: 1.6 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: rgba(15, 25, 36, 0.74) !important;
}

body.moa-home-page .moa-calendar-submit {
    width: 100% !important;
    height: 50px !important;
    border: 0 !important;
    background: #0f1924 !important;
    color: #fffdf8 !important;
    font-size: 12px !important;
    line-height: 1 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
}

body.moa-home-page .moa-calendar-message {
    margin-bottom: 18px !important;
    padding: 12px 14px !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

body.moa-home-page .moa-calendar-message.is-success {
    background: rgba(80, 130, 80, 0.12) !important;
    color: #254a25 !important;
}

body.moa-home-page .moa-calendar-message.is-error {
    background: rgba(160, 50, 50, 0.12) !important;
    color: #7d2424 !important;
}

@media (max-width: 980px) {
    body.moa-home-page .moa-calendar-panel {
        grid-template-columns: 1fr !important;
    }

    body.moa-home-page .moa-form-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 767px) {
    body.moa-home-page .moa-publications-section-v2 {
        padding-top: 86px !important;
        padding-bottom: 98px !important;
    }

    body.moa-home-page .moa-publications-head,
    body.moa-home-page .moa-calendar-request {
        width: calc(100% - 40px) !important;
    }

    body.moa-home-page .moa-publication-item,
    body.moa-home-page .moa-publication-item.is-reversed {
        display: flex !important;
        flex-direction: column !important;
    }

    body.moa-home-page .moa-publication-copy {
        order: 2 !important;
    }

    body.moa-home-page .moa-publication-media {
        order: 1 !important;
    }

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

    body.moa-home-page .moa-publication-button,
    body.moa-home-page .moa-publication-coming-soon {
        width: 100% !important;
    }
}


/* =========================================================
   Publications final layout fix
   Must visually repeat Predesign Projects section
   ========================================================= */

body.moa-home-page .moa-publications-section-v2 {
    background: #101923 !important;
    color: #fffdf8 !important;
    padding-top: clamp(92px, 10vw, 155px) !important;
    padding-bottom: clamp(100px, 10vw, 165px) !important;
    overflow: hidden !important;
}

/* Header: same two-column logic as Predesign Projects */
body.moa-home-page .moa-publications-section-v2 .moa-publications-head {
    width: min(1180px, calc(100% - 48px)) !important;
    margin: 0 auto clamp(84px, 9vw, 135px) !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publications-head > div {
    display: grid !important;
    grid-template-columns: minmax(280px, 0.75fr) minmax(420px, 1.25fr) !important;
    gap: clamp(54px, 7vw, 120px) !important;
    align-items: start !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publications-head h2 {
    order: 2 !important;
    margin: 0 !important;
    color: #fffdf8 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(58px, 5.8vw, 96px) !important;
    font-weight: 400 !important;
    line-height: 0.94 !important;
    letter-spacing: -0.055em !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publications-head p {
    order: 1 !important;
    max-width: 480px !important;
    margin: 10px 0 0 !important;
    color: rgba(255, 253, 248, 0.68) !important;
    font-family: "Inter", sans-serif !important;
    font-size: clamp(16px, 1.13vw, 20px) !important;
    font-weight: 300 !important;
    line-height: 1.68 !important;
}

/* List spacing */
body.moa-home-page .moa-publications-section-v2 .moa-publications-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
}

/* Full-viewport 50/50 rows, same principle as Predesign */
body.moa-home-page .moa-publications-section-v2 .moa-publication-item {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;

    display: grid !important;
    grid-template-columns: 50vw 50vw !important;
    gap: 0 !important;
    align-items: stretch !important;

    background: #101923 !important;
    color: #fffdf8 !important;
}

/* Make reversed rows exact, without inherited flex/order problems */
body.moa-home-page .moa-publications-section-v2 .moa-publication-item.is-reversed {
    display: grid !important;
    grid-template-columns: 50vw 50vw !important;
}

/* Image half */
body.moa-home-page .moa-publications-section-v2 .moa-publication-media {
    width: 50vw !important;
    max-width: 50vw !important;
    aspect-ratio: 4 / 3 !important;
    height: auto !important;
    min-height: 0 !important;
    display: block !important;
    overflow: hidden !important;
    background: rgba(255, 253, 248, 0.06) !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publication-media img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
}

/* Text half */
body.moa-home-page .moa-publications-section-v2 .moa-publication-copy {
    width: 50vw !important;
    max-width: 50vw !important;
    min-height: 100% !important;

    display: flex !important;
    align-items: center !important;

    background: #101923 !important;
    color: #fffdf8 !important;
    box-sizing: border-box !important;
}

/* This is the main fix: real inner spacing, so text never sticks to image */
body.moa-home-page .moa-publications-section-v2 .moa-publication-copy .moa-predesign-copy-inner {
    width: 100% !important;
    max-width: 680px !important;
    height: auto !important;

    display: block !important;

    padding-top: clamp(50px, 6vw, 96px) !important;
    padding-bottom: clamp(50px, 6vw, 96px) !important;
    padding-left: clamp(54px, 7vw, 124px) !important;
    padding-right: clamp(54px, 7vw, 124px) !important;

    box-sizing: border-box !important;
}

/* For reversed row: keep equal breathing room */
body.moa-home-page .moa-publications-section-v2 .moa-publication-item.is-reversed .moa-publication-copy .moa-predesign-copy-inner {
    margin-left: auto !important;
    margin-right: 0 !important;
}

/* Typography identical in spirit to Predesign */
body.moa-home-page .moa-publications-section-v2 .moa-publication-copy h3 {
    margin: 0 0 clamp(18px, 2vw, 30px) !important;
    color: #fffdf8 !important;

    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(42px, 4vw, 72px) !important;
    font-weight: 400 !important;
    line-height: 0.98 !important;
    letter-spacing: -0.045em !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publication-copy p {
    max-width: 620px !important;
    margin: 0 !important;

    color: rgba(255, 253, 248, 0.70) !important;
    font-family: "Inter", sans-serif !important;
    font-size: clamp(16px, 1.12vw, 20px) !important;
    font-weight: 300 !important;
    line-height: 1.68 !important;
}

/* Buttons: same disciplined scale as site buttons */
body.moa-home-page .moa-publications-section-v2 .moa-publication-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    align-items: center !important;
    margin-top: clamp(30px, 3.4vw, 52px) !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publication-button,
body.moa-home-page .moa-publications-section-v2 .moa-publication-coming-soon {
    min-height: 50px !important;
    padding: 0 28px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;

    box-sizing: border-box !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publication-button {
    background: #fffdf8 !important;
    color: #101923 !important;
    border: 1px solid #fffdf8 !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publication-button.is-secondary {
    background: transparent !important;
    color: #fffdf8 !important;
    border: 1px solid rgba(255, 253, 248, 0.70) !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publication-button:hover {
    border-color: #b99658 !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publication-coming-soon {
    color: rgba(255, 253, 248, 0.58) !important;
    border: 1px solid rgba(255, 253, 248, 0.26) !important;
    background: transparent !important;
}

/* Mobile: image first, text second, clean vertical stack */
@media (max-width: 767px) {
    body.moa-home-page .moa-publications-section-v2 {
        padding-top: 86px !important;
        padding-bottom: 100px !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publications-head {
        width: calc(100% - 40px) !important;
        margin-bottom: 54px !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publications-head > div {
        display: block !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publications-head h2 {
        font-size: clamp(48px, 15vw, 68px) !important;
        margin-bottom: 22px !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publications-head p {
        margin: 0 !important;
        font-size: 16px !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-item,
    body.moa-home-page .moa-publications-section-v2 .moa-publication-item.is-reversed {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;

        display: flex !important;
        flex-direction: column !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-media {
        order: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-copy {
        order: 2 !important;
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-copy .moa-predesign-copy-inner,
    body.moa-home-page .moa-publications-section-v2 .moa-publication-item.is-reversed .moa-publication-copy .moa-predesign-copy-inner {
        max-width: none !important;
        margin: 0 !important;
        padding: 34px 24px 58px !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-copy h3 {
        font-size: clamp(36px, 11vw, 52px) !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-copy p {
        font-size: 16px !important;
        line-height: 1.62 !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-actions {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-button,
    body.moa-home-page .moa-publications-section-v2 .moa-publication-coming-soon {
        width: 100% !important;
    }
}


/* =========================================================
   Publications image ratio fix
   Force horizontal 4:3 image everywhere
   ========================================================= */

body.moa-home-page .moa-publications-section-v2 .moa-publication-media {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    background: rgba(255,255,255,0.06) !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publication-media img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 4 / 3 !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* desktop: image takes its half cleanly */
@media (min-width: 768px) {
    body.moa-home-page .moa-publications-section-v2 .moa-publication-item {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        align-items: stretch !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-media,
    body.moa-home-page .moa-publications-section-v2 .moa-publication-copy {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* mobile: keep the same horizontal 4:3 ratio */
@media (max-width: 767px) {
    body.moa-home-page .moa-publications-section-v2 .moa-publication-media {
        width: 100% !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-media img {
        width: 100% !important;
        height: 100% !important;
        aspect-ratio: 4 / 3 !important;
        object-fit: cover !important;
    }
}


/* =========================================================
   Publications image ratio fix
   Force horizontal 4:3 image everywhere
   ========================================================= */

body.moa-home-page .moa-publications-section-v2 .moa-publication-media {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    background: rgba(255,255,255,0.06) !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publication-media img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 4 / 3 !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* desktop: image takes its half cleanly */
@media (min-width: 768px) {
    body.moa-home-page .moa-publications-section-v2 .moa-publication-item {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        align-items: stretch !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-media,
    body.moa-home-page .moa-publications-section-v2 .moa-publication-copy {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* mobile: keep the same horizontal 4:3 ratio */
@media (max-width: 767px) {
    body.moa-home-page .moa-publications-section-v2 .moa-publication-media {
        width: 100% !important;
        aspect-ratio: 4 / 3 !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-media img {
        width: 100% !important;
        height: 100% !important;
        aspect-ratio: 4 / 3 !important;
        object-fit: cover !important;
    }
}


/* =========================================================
   Publications image hard ratio fix
   Real 4:3 horizontal image, not square
   ========================================================= */

/* Desktop: publication image occupies half screen width.
   50vw / 4 * 3 = 37.5vw */
@media (min-width: 768px) {
    body.moa-home-page .moa-publications-section-v2 .moa-publication-media {
        position: relative !important;
        display: block !important;

        width: 50vw !important;
        max-width: 50vw !important;
        height: 37.5vw !important;
        min-height: 0 !important;
        max-height: none !important;

        aspect-ratio: auto !important;
        overflow: hidden !important;
        flex: none !important;
        background: rgba(255,255,255,0.06) !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-media img {
        position: absolute !important;
        inset: 0 !important;

        width: 100% !important;
        height: 100% !important;

        display: block !important;
        object-fit: cover !important;
        object-position: center center !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-copy {
        height: 37.5vw !important;
        min-height: 37.5vw !important;
    }
}

/* Mobile: full width image.
   Width is 100%, height is 75% of width = 4:3 */
@media (max-width: 767px) {
    body.moa-home-page .moa-publications-section-v2 .moa-publication-media {
        position: relative !important;
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;
        height: 75vw !important;
        min-height: 0 !important;
        max-height: none !important;

        aspect-ratio: auto !important;
        overflow: hidden !important;
        flex: none !important;
        background: rgba(255,255,255,0.06) !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publication-media img {
        position: absolute !important;
        inset: 0 !important;

        width: 100% !important;
        height: 100% !important;

        display: block !important;
        object-fit: cover !important;
        object-position: center center !important;
    }
}


/* =========================================================
   Publications header order fix
   Text on the left, "Publications" on the right
   ========================================================= */

body.moa-home-page .moa-publications-section-v2 .moa-publications-head > div {
    display: grid !important;
    grid-template-columns: minmax(280px, 0.75fr) minmax(420px, 1.25fr) !important;
    gap: clamp(54px, 7vw, 120px) !important;
    align-items: start !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publications-head p {
    order: 1 !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin: 10px 0 0 !important;
    max-width: 520px !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publications-head h2 {
    order: 2 !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin: 0 !important;
}

/* =========================================================
   Calendar block — light background, full-width image/form row
   ========================================================= */

body.moa-home-page .moa-publications-section-v2 .moa-calendar-request {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    margin-top: clamp(100px, 10vw, 160px) !important;

    padding: clamp(82px, 8vw, 130px) 0 clamp(90px, 8vw, 140px) !important;

    background: #fffdf8 !important;
    color: #101923 !important;
    border-top: none !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-calendar-intro {
    width: min(1180px, calc(100% - 48px)) !important;
    max-width: none !important;
    margin: 0 auto clamp(48px, 5vw, 78px) !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-calendar-intro h3 {
    color: #101923 !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-calendar-intro p {
    max-width: 860px !important;
    color: rgba(16, 25, 35, 0.72) !important;
}

/* Image from left edge to center, form from center to right */
body.moa-home-page .moa-publications-section-v2 .moa-calendar-panel {
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;

    display: grid !important;
    grid-template-columns: 50vw 50vw !important;
    gap: 0 !important;
    align-items: stretch !important;
}

/* Calendar image: no frame, no border, no decorative corners */
body.moa-home-page .moa-publications-section-v2 .moa-calendar-visual {
    width: 50vw !important;
    max-width: 50vw !important;
    min-height: 0 !important;
    display: block !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-calendar-image-frame {
    width: 50vw !important;
    height: 37.5vw !important;
    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-calendar-image-frame::before,
body.moa-home-page .moa-publications-section-v2 .moa-calendar-image-frame::after {
    display: none !important;
    content: none !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-calendar-image-frame img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* Form column: not lower than image */
body.moa-home-page .moa-publications-section-v2 .moa-calendar-form-card {
    width: 50vw !important;
    max-width: 50vw !important;
    height: 37.5vw !important;
    min-height: 37.5vw !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;

    padding: clamp(34px, 4vw, 72px) clamp(44px, 5vw, 96px) !important;
    box-sizing: border-box !important;

    background: #fffdf8 !important;
    color: #101923 !important;
    box-shadow: none !important;
    border: none !important;
    overflow: visible !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-calendar-form {
    width: 100% !important;
    max-width: 620px !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-calendar-form input,
body.moa-home-page .moa-publications-section-v2 .moa-calendar-form select {
    background: #ffffff !important;
    border: 1px solid rgba(16, 25, 35, 0.18) !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-calendar-submit:disabled {
    opacity: 0.72 !important;
    cursor: wait !important;
}

body.moa-home-page .moa-calendar-success-final {
    max-width: 560px !important;
}

body.moa-home-page .moa-calendar-success-final h4 {
    margin: 0 0 18px !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(42px, 4vw, 64px) !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: -0.04em !important;
    color: #101923 !important;
}

body.moa-home-page .moa-calendar-success-final p {
    margin: 0 !important;
    font-family: "Inter", sans-serif !important;
    font-size: clamp(16px, 1.12vw, 19px) !important;
    font-weight: 300 !important;
    line-height: 1.72 !important;
    color: rgba(16, 25, 35, 0.72) !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.moa-home-page .moa-publications-section-v2 .moa-publications-head > div {
        display: flex !important;
        flex-direction: column !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publications-head p {
        order: 1 !important;
        margin-bottom: 20px !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publications-head h2 {
        order: 2 !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-calendar-request {
        padding-top: 74px !important;
        padding-bottom: 86px !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-calendar-intro {
        width: calc(100% - 40px) !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-calendar-panel {
        display: flex !important;
        flex-direction: column !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-calendar-visual,
    body.moa-home-page .moa-publications-section-v2 .moa-calendar-image-frame,
    body.moa-home-page .moa-publications-section-v2 .moa-calendar-form-card {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-calendar-image-frame {
        height: 75vw !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-calendar-form-card {
        height: auto !important;
        min-height: 0 !important;
        padding: 36px 24px 0 !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-calendar-form {
        max-width: none !important;
    }
}


/* =========================================================
   Publications header: title left, description right
   ========================================================= */

body.moa-home-page .moa-publications-section-v2 .moa-publications-head > div {
    display: grid !important;
    grid-template-columns: minmax(420px, 1.25fr) minmax(280px, 0.75fr) !important;
    gap: clamp(54px, 7vw, 120px) !important;
    align-items: start !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publications-head h2 {
    order: 1 !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin: 0 !important;
}

body.moa-home-page .moa-publications-section-v2 .moa-publications-head p {
    order: 2 !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    max-width: 520px !important;
    margin: 12px 0 0 !important;
}

/* =========================================================
   Calendar form compact mode
   Labels hidden, placeholders used instead
   ========================================================= */

body.moa-home-page .moa-calendar-form .moa-form-row label,
body.moa-home-page .moa-calendar-form .moa-form-grid label {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

body.moa-home-page .moa-calendar-form .moa-form-row {
    margin-bottom: 11px !important;
}

body.moa-home-page .moa-calendar-form input,
body.moa-home-page .moa-calendar-form select {
    margin-top: 0 !important;
    height: 44px !important;
}

body.moa-home-page .moa-form-grid {
    gap: 11px !important;
    margin-bottom: 14px !important;
}

body.moa-home-page .moa-calendar-form input::placeholder {
    color: rgba(16, 25, 35, 0.46) !important;
}

body.moa-home-page .moa-calendar-message.is-error {
    margin-bottom: 14px !important;
    padding: 11px 13px !important;
    background: rgba(160, 50, 50, 0.10) !important;
    color: #7d2424 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

body.moa-home-page .moa-calendar-field-error {
    border-color: #9b2c2c !important;
    box-shadow: 0 0 0 1px rgba(155, 44, 44, 0.14) !important;
}

/* Mobile order remains title first, text below */
@media (max-width: 767px) {
    body.moa-home-page .moa-publications-section-v2 .moa-publications-head > div {
        display: flex !important;
        flex-direction: column !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publications-head h2 {
        order: 1 !important;
    }

    body.moa-home-page .moa-publications-section-v2 .moa-publications-head p {
        order: 2 !important;
        margin: 0 !important;
    }
}


/* =========================================================
   Final Contact section
   ========================================================= */

body.moa-home-page .moa-contact-section-v2 {
    background: #101923 !important;
    color: #fffdf8 !important;
    padding: clamp(96px, 10vw, 165px) 0 !important;
}

body.moa-home-page .moa-contact-inner {
    width: min(1180px, calc(100% - 48px)) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.75fr) !important;
    gap: clamp(54px, 7vw, 112px) !important;
    align-items: start !important;
}

body.moa-home-page .moa-contact-copy h2 {
    max-width: 760px !important;
    margin: 0 0 clamp(22px, 2.4vw, 34px) !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(48px, 5.2vw, 86px) !important;
    font-weight: 400 !important;
    line-height: 0.95 !important;
    letter-spacing: -0.055em !important;
    color: #fffdf8 !important;
}

body.moa-home-page .moa-contact-copy > p {
    max-width: 720px !important;
    margin: 0 !important;
    font-size: clamp(16px, 1.18vw, 20px) !important;
    font-weight: 300 !important;
    line-height: 1.72 !important;
    color: rgba(255, 253, 248, 0.72) !important;
}

body.moa-home-page .moa-contact-people {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(28px, 4vw, 58px) !important;
    margin-top: clamp(44px, 5vw, 72px) !important;
    padding-top: clamp(30px, 3.6vw, 54px) !important;
    border-top: 1px solid rgba(255, 253, 248, 0.14) !important;
}

body.moa-home-page .moa-contact-person h3 {
    margin: 0 0 16px !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(28px, 2.3vw, 40px) !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;
    color: #fffdf8 !important;
}

body.moa-home-page .moa-contact-person p {
    margin: 0 0 9px !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    color: rgba(255, 253, 248, 0.72) !important;
}

body.moa-home-page .moa-contact-person a {
    color: rgba(255, 253, 248, 0.78) !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(185, 150, 88, 0.42) !important;
}

body.moa-home-page .moa-contact-person a:hover {
    color: #fffdf8 !important;
    border-bottom-color: #b99658 !important;
}

/* Form */
body.moa-home-page .moa-contact-form-card {
    background: #fffdf8 !important;
    color: #101923 !important;
    padding: clamp(30px, 3.2vw, 46px) !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.28) !important;
}

body.moa-home-page .moa-contact-form-row {
    margin-bottom: 13px !important;
}

body.moa-home-page .moa-contact-form input,
body.moa-home-page .moa-contact-form textarea {
    width: 100% !important;
    border: 1px solid rgba(16, 25, 35, 0.16) !important;
    background: #ffffff !important;
    color: #101923 !important;
    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    box-sizing: border-box !important;
    border-radius: 0 !important;
}

body.moa-home-page .moa-contact-form input {
    height: 46px !important;
    padding: 0 14px !important;
}

body.moa-home-page .moa-contact-form textarea {
    min-height: 136px !important;
    resize: vertical !important;
    padding: 14px !important;
    line-height: 1.55 !important;
}

body.moa-home-page .moa-contact-form input::placeholder,
body.moa-home-page .moa-contact-form textarea::placeholder {
    color: rgba(16, 25, 35, 0.46) !important;
}

body.moa-home-page .moa-contact-consent {
    display: grid !important;
    grid-template-columns: 18px 1fr !important;
    gap: 12px !important;
    align-items: start !important;
    margin: 18px 0 24px !important;
}

body.moa-home-page .moa-contact-consent input {
    width: 18px !important;
    height: 18px !important;
    margin: 2px 0 0 !important;
}

body.moa-home-page .moa-contact-consent span {
    font-size: 13px !important;
    line-height: 1.6 !important;
    color: rgba(16, 25, 35, 0.72) !important;
}

body.moa-home-page .moa-contact-submit {
    width: 100% !important;
    height: 50px !important;
    border: 0 !important;
    background: #101923 !important;
    color: #fffdf8 !important;
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    line-height: 1 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
}

body.moa-home-page .moa-contact-submit:disabled {
    opacity: 0.72 !important;
    cursor: wait !important;
}

body.moa-home-page .moa-contact-message.is-error {
    margin-bottom: 14px !important;
    padding: 12px 14px !important;
    background: rgba(160, 50, 50, 0.10) !important;
    color: #7d2424 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

body.moa-home-page .moa-contact-field-error {
    border-color: #9b2c2c !important;
    box-shadow: 0 0 0 1px rgba(155, 44, 44, 0.14) !important;
}

body.moa-home-page .moa-contact-success-final h4 {
    margin: 0 0 18px !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(42px, 4vw, 64px) !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: -0.04em !important;
    color: #101923 !important;
}

body.moa-home-page .moa-contact-success-final p {
    margin: 0 !important;
    font-size: clamp(16px, 1.12vw, 19px) !important;
    font-weight: 300 !important;
    line-height: 1.72 !important;
    color: rgba(16, 25, 35, 0.72) !important;
}

@media (max-width: 900px) {
    body.moa-home-page .moa-contact-inner {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 767px) {
    body.moa-home-page .moa-contact-section-v2 {
        padding: 86px 0 96px !important;
    }

    body.moa-home-page .moa-contact-inner {
        width: calc(100% - 40px) !important;
        gap: 44px !important;
    }

    body.moa-home-page .moa-contact-people {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }

    body.moa-home-page .moa-contact-form-card {
        padding: 28px 24px !important;
    }
}


/* =========================================================
   Final visual polish
   ========================================================= */

/* 1. Less empty space above Contact heading */
body.moa-home-page .moa-contact-section-v2 {
    padding-top: clamp(58px, 6vw, 92px) !important;
}

/* 2. Calendar checkbox text aligned with checkbox */
body.moa-home-page .moa-calendar-consent {
    align-items: center !important;
}

body.moa-home-page .moa-calendar-consent input {
    margin: 0 !important;
}

body.moa-home-page .moa-calendar-consent span {
    display: block !important;
    padding-top: 0 !important;
}

/* 3. Homepage navigation */
body.moa-home-page .moa-topbar a {
    scroll-behavior: smooth !important;
}

body.moa-home-page .moa-topbar .moa-nav-contact,
body.moa-home-page .moa-topbar a[href="#contact"] {
    color: #101923 !important;
    background: rgba(255, 253, 248, 0.92) !important;
    border: 1px solid rgba(255, 253, 248, 0.95) !important;
    padding: 10px 16px !important;
}

body.moa-home-page .moa-topbar .moa-nav-contact:hover,
body.moa-home-page .moa-topbar a[href="#contact"]:hover {
    background: #fffdf8 !important;
    color: #101923 !important;
}

/* 4. Back-to-top button */
body.moa-home-page .moa-back-to-top {
    position: fixed !important;
    right: 22px !important;
    bottom: 22px !important;
    z-index: 9999 !important;

    width: 48px !important;
    height: 48px !important;
    border-radius: 999px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border: 1px solid rgba(255, 253, 248, 0.36) !important;
    background: rgba(16, 25, 35, 0.58) !important;
    color: #fffdf8 !important;

    font-family: "Inter", sans-serif !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    line-height: 1 !important;

    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(10px) !important;
    transition: opacity 260ms ease, transform 260ms ease, visibility 260ms ease, background 260ms ease !important;

    cursor: pointer !important;
    backdrop-filter: blur(8px) !important;
}

body.moa-home-page .moa-back-to-top.is-visible {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

body.moa-home-page .moa-back-to-top:hover {
    background: rgba(16, 25, 35, 0.82) !important;
}

/* 5. Hero image: reduce dark overlay by about 15% */
body.moa-home-page .moa-hero::before,
body.moa-home-page .moa-hero:before {
    opacity: 0.85 !important;
}

body.moa-home-page .moa-hero {
    background-color: transparent !important;
}

/* If the darkness is created by an overlay element rather than ::before */
body.moa-home-page .moa-hero-overlay,
body.moa-home-page .moa-hero-shade,
body.moa-home-page .moa-hero-dark {
    opacity: 0.85 !important;
}

/* Mobile */
@media (max-width: 767px) {
    body.moa-home-page .moa-contact-section-v2 {
        padding-top: 58px !important;
    }

    body.moa-home-page .moa-back-to-top {
        right: 16px !important;
        bottom: 16px !important;
        width: 44px !important;
        height: 44px !important;
    }
}


/* =========================================================
   Final hero and calendar form corrections
   ========================================================= */

/* 1. Remove hero darkening completely */
body.moa-home-page .moa-hero::before,
body.moa-home-page .moa-hero:before,
body.moa-home-page .moa-hero::after,
body.moa-home-page .moa-hero:after {
    opacity: 0 !important;
    background: transparent !important;
    display: none !important;
    content: none !important;
}

body.moa-home-page .moa-hero-overlay,
body.moa-home-page .moa-hero-shade,
body.moa-home-page .moa-hero-dark {
    opacity: 0 !important;
    background: transparent !important;
    display: none !important;
}

body.moa-home-page .moa-hero {
    background-blend-mode: normal !important;
    filter: none !important;
}

/* Keep hero text readable without dark overlay */
body.moa-home-page .moa-hero-content,
body.moa-home-page .moa-hero-inner {
    text-shadow: 0 2px 18px rgba(0, 0, 0, 0.38) !important;
}

/* 2. Calendar consent: checkbox and text in one line */
body.moa-home-page .moa-calendar-consent {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 14px 0 20px !important;
}

body.moa-home-page .moa-calendar-consent input {
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
}

body.moa-home-page .moa-calendar-consent span {
    display: inline !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

/* In narrow screens allow wrapping after the checkbox, but keep same line start */
@media (max-width: 767px) {
    body.moa-home-page .moa-calendar-consent {
        align-items: flex-start !important;
    }

    body.moa-home-page .moa-calendar-consent input {
        margin-top: 2px !important;
    }
}


/* =========================================================
   Calendar consent checkbox — match Contact form alignment
   ========================================================= */

body.moa-home-page .moa-calendar-form .moa-calendar-consent {
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) !important;
    column-gap: 12px !important;
    align-items: start !important;

    margin: 18px 0 24px !important;
    padding: 0 !important;

    font-size: 13px !important;
    line-height: 1.6 !important;
    color: rgba(16, 25, 35, 0.72) !important;
}

body.moa-home-page .moa-calendar-form .moa-calendar-consent input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;

    margin: 3px 0 0 !important;
    padding: 0 !important;

    grid-column: 1 !important;
    grid-row: 1 !important;
}

body.moa-home-page .moa-calendar-form .moa-calendar-consent span {
    display: block !important;

    grid-column: 2 !important;
    grid-row: 1 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 13px !important;
    line-height: 1.6 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: rgba(16, 25, 35, 0.72) !important;
}

/* Remove earlier flex override if it appears later in cascade */
body.moa-home-page .moa-calendar-consent {
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) !important;
    column-gap: 12px !important;
    align-items: start !important;
}



/* =========================================================
   Hero image final brightness fix
   No dark overlay, original image brightness
   ========================================================= */

body.moa-home-page .moa-hero__shade {
    display: none !important;
    opacity: 0 !important;
    background: transparent !important;
}

body.moa-home-page .moa-hero::before,
body.moa-home-page .moa-hero:before,
body.moa-home-page .moa-hero::after,
body.moa-home-page .moa-hero:after {
    display: none !important;
    opacity: 0 !important;
    background: transparent !important;
    content: none !important;
}

body.moa-home-page .moa-hero {
    filter: none !important;
    background-blend-mode: normal !important;
}


/* =========================================================
   Hero final image override
   Remove all CSS gradients and show original image brightness
   ========================================================= */

body.moa-home-page .moa-hero,
body .moa-site .moa-hero {
    background-image: url("https://molodin.org/wp-content/uploads/2026/05/title2.jpg") !important;
    background-color: transparent !important;
    background-blend-mode: normal !important;
    filter: none !important;
}

body.moa-home-page .moa-hero__shade,
body .moa-site .moa-hero__shade,
body.moa-home-page .moa-hero::before,
body.moa-home-page .moa-hero::after,
body .moa-site .moa-hero::before,
body .moa-site .moa-hero::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    background: transparent !important;
    background-image: none !important;
    content: none !important;
}


/* =========================================================
   Selected Projects carousel final behavior
   Hide arrows and allow side-card click-to-center
   ========================================================= */

body.moa-home-page #portfolio .moa-carousel-arrow,
body.moa-home-page #portfolio .moa-carousel-prev,
body.moa-home-page #portfolio .moa-carousel-next,
body.moa-home-page .moa-projects-section .moa-carousel-arrow,
body.moa-home-page .moa-projects-section .moa-carousel-prev,
body.moa-home-page .moa-projects-section .moa-carousel-next,
body.moa-home-page .moa-portfolio-section .moa-carousel-arrow,
body.moa-home-page .moa-portfolio-section .moa-carousel-prev,
body.moa-home-page .moa-portfolio-section .moa-carousel-next {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.moa-home-page #portfolio .moa-project-card.is-prev,
body.moa-home-page #portfolio .moa-project-card.is-next,
body.moa-home-page .moa-projects-section .moa-project-card.is-prev,
body.moa-home-page .moa-projects-section .moa-project-card.is-next,
body.moa-home-page .moa-portfolio-section .moa-project-card.is-prev,
body.moa-home-page .moa-portfolio-section .moa-project-card.is-next {
    pointer-events: auto !important;
    cursor: pointer !important;
}

body.moa-home-page #portfolio .moa-project-card.is-active,
body.moa-home-page .moa-projects-section .moa-project-card.is-active,
body.moa-home-page .moa-portfolio-section .moa-project-card.is-active {
    pointer-events: auto !important;
    cursor: pointer !important;
}


/* =========================================================
   Final carousel arrows removal
   Hide all carousel arrow controls visually and functionally
   ========================================================= */

body.moa-home-page .moa-carousel button[aria-label*="Previous"],
body.moa-home-page .moa-carousel button[aria-label*="Next"],
body.moa-home-page .moa-carousel [data-moa-carousel-prev],
body.moa-home-page .moa-carousel [data-moa-carousel-next],
body.moa-home-page .moa-carousel .moa-carousel-arrow,
body.moa-home-page .moa-carousel .moa-carousel-prev,
body.moa-home-page .moa-carousel .moa-carousel-next,
body.moa-home-page .moa-carousel .moa-orbit-prev,
body.moa-home-page .moa-carousel .moa-orbit-next,
body.moa-home-page .moa-carousel .swiper-button-prev,
body.moa-home-page .moa-carousel .swiper-button-next,
body.moa-home-page #portfolio button[aria-label*="Previous"],
body.moa-home-page #portfolio button[aria-label*="Next"],
body.moa-home-page #testimonials button[aria-label*="Previous"],
body.moa-home-page #testimonials button[aria-label*="Next"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}


/* =========================================================
   Topbar offset after removing Kadence page title
   Keeps hero navigation away from the top edge
   ========================================================= */

body.moa-home-page .moa-site .moa-topbar {
    top: clamp(22px, 2.4vw, 38px) !important;
}

@media (max-width: 767px) {
    body.moa-home-page .moa-site .moa-topbar {
        top: 18px !important;
    }
}


/* =========================================================
   Hero balance correction
   Move top menu slightly up and shift hero image slightly down
   ========================================================= */

body.moa-home-page .moa-site .moa-topbar {
    top: clamp(12px, 1.45vw, 24px) !important;
}

/* Show the original hero image a little lower to avoid the cross behind the menu */
body.moa-home-page .moa-hero,
body .moa-site .moa-hero {
    background-position: center 58% !important;
}

@media (max-width: 767px) {
    body.moa-home-page .moa-site .moa-topbar {
        top: 12px !important;
    }

    body.moa-home-page .moa-hero,
    body .moa-site .moa-hero {
        background-position: center 56% !important;
    }
}


/* =========================================================
   Hero image vertical framing correction
   Shows more sky / upper part of the image and less ground
   ========================================================= */

body.moa-home-page .moa-hero,
body .moa-site .moa-hero {
    background-position: center 38% !important;
}

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


/* =========================================================
   Invisible anti-spam honeypot field
   ========================================================= */

body.moa-home-page .moa-antispam-field {
    position: absolute !important;
    left: -10000px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}


/* MOA INNER PAGES MENU TYPOGRAPHY BACK TO TOP — 2026-06-01 */

/* Hide the regular Kadence header on internal pages and use the same custom navigation logic as the homepage. */
body:not(.moa-home-page) #masthead,
body:not(.moa-home-page) .site-header,
body:not(.moa-home-page) .site-header-wrap {
    display: none !important;
}

body:not(.moa-home-page) {
    padding-top: 78px;
}

/* Internal-page top navigation. */
body:not(.moa-home-page) .moa-inner-topbar {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99990;
    min-height: 78px;
    padding: 0 clamp(18px, 4vw, 54px);
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(16, 25, 35, 0.97);
    border-bottom: 1px solid rgba(255, 255, 255, 0.11);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

body.admin-bar:not(.moa-home-page) .moa-inner-topbar {
    top: 32px;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(14px, 2vw, 30px);
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
    color: rgba(255, 253, 248, 0.88);
    text-decoration: none;
    font-family: "Inter", Arial, sans-serif;
    font-size: 13px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.075em;
    text-transform: uppercase;
    transition: color 180ms ease, border-color 180ms ease, background-color 180ms ease;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:hover {
    color: #fffdf8;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
    padding: 12px 18px;
    border: 1px solid rgba(185, 150, 88, 0.68);
    border-radius: 999px;
    color: #fffdf8 !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact:hover {
    background: rgba(185, 150, 88, 0.18);
    border-color: rgba(185, 150, 88, 0.95);
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle {
    display: none;
}

/* Serif headings on all internal pages. */
body:not(.moa-home-page) h1,
body:not(.moa-home-page) h2,
body:not(.moa-home-page) h3,
body:not(.moa-home-page) .entry-title,
body:not(.moa-home-page) .page-title,
body:not(.moa-home-page) .archive-title {
    font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
    font-weight: 500 !important;
    letter-spacing: -0.025em;
}

body:not(.moa-home-page) h1,
body:not(.moa-home-page) .entry-title,
body:not(.moa-home-page) .page-title,
body:not(.moa-home-page) .archive-title {
    font-size: clamp(42px, 4.6vw, 68px) !important;
    line-height: 1.02 !important;
}

body:not(.moa-home-page) h2 {
    font-size: clamp(32px, 3.2vw, 50px) !important;
    line-height: 1.08 !important;
}

body:not(.moa-home-page) h3 {
    font-size: clamp(24px, 2.2vw, 34px) !important;
    line-height: 1.14 !important;
}

/* Remove old footer/bottom scroll-up arrows on internal pages. */
body:not(.moa-home-page) #kt-scroll-up,
body:not(.moa-home-page) .kadence-scroll-to-top,
body:not(.moa-home-page) .site-scroll-top-wrap,
body:not(.moa-home-page) .scroll-to-top,
body:not(.moa-home-page) .scrollup,
body:not(.moa-home-page) footer a[href="#top"],
body:not(.moa-home-page) footer a[href="#page"],
body:not(.moa-home-page) .site-footer a[href="#top"],
body:not(.moa-home-page) .site-footer a[href="#page"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* New fixed side arrow, matching the homepage behavior more closely. */
body:not(.moa-home-page) .moa-floating-back-to-top {
    position: fixed;
    right: 24px;
    bottom: 28px;
    z-index: 99995;
    width: 48px;
    height: 48px;
    border-radius: 999px;
    border: 1px solid rgba(185, 150, 88, 0.72);
    background: rgba(16, 25, 35, 0.94);
    color: #fffdf8;
    font-family: "Inter", Arial, sans-serif;
    font-size: 24px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 16px 42px rgba(0, 0, 0, 0.25);
    transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

body:not(.moa-home-page) .moa-floating-back-to-top:hover {
    transform: translateY(-3px);
    background: #101923;
    border-color: rgba(185, 150, 88, 1);
}

@media (max-width: 860px) {
    body:not(.moa-home-page) {
        padding-top: 72px;
    }

    body:not(.moa-home-page) .moa-inner-topbar {
        min-height: 72px;
        justify-content: flex-end;
        padding: 0 18px;
    }

    body.admin-bar:not(.moa-home-page) .moa-inner-topbar {
        top: 46px;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle {
        display: inline-flex;
        width: 44px;
        height: 44px;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 5px;
        border: 1px solid rgba(255, 255, 255, 0.2);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.04);
        cursor: pointer;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle span {
        display: block;
        width: 18px;
        height: 1px;
        background: #fffdf8;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu {
        display: none;
        position: absolute;
        top: 100%;
        left: 14px;
        right: 14px;
        padding: 18px;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        background: rgba(16, 25, 35, 0.98);
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 18px;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.32);
    }

    body:not(.moa-home-page) .moa-inner-topbar.is-open .moa-topbar__menu {
        display: flex;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
        padding: 14px 12px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child {
        border-bottom: 0;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
        margin-top: 10px;
        text-align: center;
    }

    body:not(.moa-home-page) .moa-floating-back-to-top {
        right: 16px;
        bottom: 18px;
        width: 44px;
        height: 44px;
        font-size: 22px;
    }
}


/* MOA INNER MENU — REFINED HOMEPAGE-LIKE STYLE — 2026-06-02 */

/* Softer internal-page menu: closer to the homepage overlay, not a heavy admin-like bar. */
body:not(.moa-home-page) {
    padding-top: 76px !important;
}

body:not(.moa-home-page) .moa-inner-topbar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 99990 !important;
    min-height: 76px !important;
    padding: 0 clamp(22px, 4vw, 58px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(
        180deg,
        rgba(16, 25, 35, 0.82) 0%,
        rgba(16, 25, 35, 0.54) 58%,
        rgba(16, 25, 35, 0.00) 100%
    ) !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.admin-bar:not(.moa-home-page) .moa-inner-topbar {
    top: 32px !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(18px, 2.25vw, 34px) !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
    color: rgba(255, 253, 248, 0.86) !important;
    text-decoration: none !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
    letter-spacing: 0.115em !important;
    text-transform: uppercase !important;
    padding: 8px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transition: color 180ms ease, opacity 180ms ease !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:hover {
    color: #fffdf8 !important;
    opacity: 1 !important;
}

/* Contact remains slightly emphasized, but not as a rough button. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
    padding: 10px 17px !important;
    border: 1px solid rgba(255, 253, 248, 0.44) !important;
    border-radius: 999px !important;
    color: #fffdf8 !important;
    background: rgba(255, 255, 255, 0.035) !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact:hover {
    background: rgba(255, 255, 255, 0.09) !important;
    border-color: rgba(255, 253, 248, 0.72) !important;
}

/* Mobile: keep the same refined language, but make the dropdown calmer. */
@media (max-width: 860px) {
    body:not(.moa-home-page) {
        padding-top: 72px !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar {
        min-height: 72px !important;
        justify-content: flex-end !important;
        padding: 0 18px !important;
        background: linear-gradient(
            180deg,
            rgba(16, 25, 35, 0.88) 0%,
            rgba(16, 25, 35, 0.60) 68%,
            rgba(16, 25, 35, 0.00) 100%
        ) !important;
    }

    body.admin-bar:not(.moa-home-page) .moa-inner-topbar {
        top: 46px !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle {
        display: inline-flex !important;
        width: 42px !important;
        height: 42px !important;
        align-items: center !important;
        justify-content: center !important;
        flex-direction: column !important;
        gap: 5px !important;
        border: 1px solid rgba(255, 253, 248, 0.38) !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, 0.035) !important;
        box-shadow: none !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle span {
        width: 17px !important;
        height: 1px !important;
        background: rgba(255, 253, 248, 0.92) !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu {
        display: none !important;
        position: absolute !important;
        top: calc(100% - 4px) !important;
        left: 14px !important;
        right: 14px !important;
        padding: 14px 16px !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        background: rgba(16, 25, 35, 0.96) !important;
        border: 1px solid rgba(255, 253, 248, 0.12) !important;
        border-radius: 16px !important;
        box-shadow: 0 22px 58px rgba(0, 0, 0, 0.28) !important;
        backdrop-filter: blur(14px) !important;
        -webkit-backdrop-filter: blur(14px) !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar.is-open .moa-topbar__menu {
        display: flex !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
        padding: 13px 6px !important;
        border-bottom: 1px solid rgba(255, 253, 248, 0.08) !important;
        font-size: 12px !important;
        letter-spacing: 0.11em !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child {
        border-bottom: 0 !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
        margin-top: 10px !important;
        text-align: center !important;
        border: 1px solid rgba(255, 253, 248, 0.36) !important;
    }
}


/* MOA INNER PAGES FINAL REFINEMENT — SMALL RIGHT MENU, ELEGANT TEXT, NO FOOTER ARROW — 2026-06-02 */

/* Internal top menu: smaller, lighter, right-aligned. */
body:not(.moa-home-page) .moa-inner-topbar {
    justify-content: flex-end !important;
    min-height: 68px !important;
    padding-left: 22px !important;
    padding-right: clamp(26px, 5vw, 82px) !important;
    background: linear-gradient(
        180deg,
        rgba(16, 25, 35, 0.74) 0%,
        rgba(16, 25, 35, 0.43) 58%,
        rgba(16, 25, 35, 0.00) 100%
    ) !important;
}

body:not(.moa-home-page) {
    padding-top: 68px !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu {
    justify-content: flex-end !important;
    gap: clamp(10px, 1.35vw, 20px) !important;
    width: auto !important;
    max-width: 100% !important;
}

/* Regular menu items: smaller and more delicate. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
    font-size: 10.5px !important;
    font-weight: 400 !important;
    letter-spacing: 0.105em !important;
    line-height: 1.15 !important;
    padding: 8px 4px !important;
    white-space: nowrap !important;
    color: rgba(255, 253, 248, 0.80) !important;
}

/* Contact button: no clipped word, more air on both sides. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
    padding: 9px 22px !important;
    min-width: max-content !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 253, 248, 0.38) !important;
    background: rgba(255, 255, 255, 0.025) !important;
    color: rgba(255, 253, 248, 0.94) !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact:hover {
    background: rgba(255, 255, 255, 0.075) !important;
    border-color: rgba(255, 253, 248, 0.62) !important;
}

/* Internal-page body typography: lighter, more elegant, less WordPress-heavy. */
body:not(.moa-home-page),
body:not(.moa-home-page) .site,
body:not(.moa-home-page) .content-area,
body:not(.moa-home-page) .entry-content,
body:not(.moa-home-page) .entry-summary {
    font-family: "Inter", Arial, sans-serif !important;
    font-weight: 300 !important;
    color: rgba(20, 23, 26, 0.82) !important;
}

body:not(.moa-home-page) .entry-content p,
body:not(.moa-home-page) .entry-content li,
body:not(.moa-home-page) .entry-content td,
body:not(.moa-home-page) .entry-content blockquote,
body:not(.moa-home-page) .entry-summary p {
    font-size: clamp(16px, 1.02vw, 18.5px) !important;
    line-height: 1.78 !important;
    font-weight: 300 !important;
    letter-spacing: 0.002em !important;
    color: rgba(20, 23, 26, 0.78) !important;
}

/* Keep headings serif, but make them refined rather than bold. */
body:not(.moa-home-page) h1,
body:not(.moa-home-page) h2,
body:not(.moa-home-page) h3,
body:not(.moa-home-page) .entry-title,
body:not(.moa-home-page) .page-title,
body:not(.moa-home-page) .archive-title {
    font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
    font-weight: 400 !important;
    color: rgba(20, 23, 26, 0.92) !important;
}

body:not(.moa-home-page) h1,
body:not(.moa-home-page) .entry-title,
body:not(.moa-home-page) .page-title,
body:not(.moa-home-page) .archive-title {
    font-size: clamp(40px, 4.2vw, 64px) !important;
    line-height: 1.03 !important;
    letter-spacing: -0.028em !important;
}

/* Remove old duplicate back-to-top arrows near or below the footer. */
body:not(.moa-home-page) #kt-scroll-up,
body:not(.moa-home-page) .kt-scroll-up,
body:not(.moa-home-page) .kadence-scroll-to-top,
body:not(.moa-home-page) .kadence-scroll-to-top-wrap,
body:not(.moa-home-page) .site-scroll-top-wrap,
body:not(.moa-home-page) .scroll-to-top,
body:not(.moa-home-page) .scrollup,
body:not(.moa-home-page) .back-to-top,
body:not(.moa-home-page) .to-top,
body:not(.moa-home-page) footer .moa-floating-back-to-top,
body:not(.moa-home-page) footer a[href="#top"],
body:not(.moa-home-page) footer a[href="#page"],
body:not(.moa-home-page) .site-footer a[href="#top"],
body:not(.moa-home-page) .site-footer a[href="#page"],
body:not(.moa-home-page) .site-footer button[aria-label*="top" i],
body:not(.moa-home-page) .site-footer a[aria-label*="top" i] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Keep only our fixed side arrow. */
body:not(.moa-home-page) body > .moa-floating-back-to-top,
body:not(.moa-home-page) .moa-floating-back-to-top {
    display: flex !important;
}

/* Refine the fixed side arrow too. */
body:not(.moa-home-page) .moa-floating-back-to-top {
    right: 22px !important;
    bottom: 24px !important;
    width: 42px !important;
    height: 42px !important;
    font-size: 19px !important;
    font-weight: 300 !important;
    border: 1px solid rgba(255, 253, 248, 0.35) !important;
    background: rgba(16, 25, 35, 0.78) !important;
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.20) !important;
}

/* Mobile menu remains usable, but also smaller. */
@media (max-width: 860px) {
    body:not(.moa-home-page) {
        padding-top: 68px !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar {
        min-height: 68px !important;
        padding-right: 16px !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu {
        right: 12px !important;
        left: auto !important;
        width: min(300px, calc(100vw - 24px)) !important;
        align-items: stretch !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
        font-size: 10.5px !important;
        padding: 12px 8px !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
        padding: 11px 20px !important;
    }
}


/* MOA INNER MENU BUTTON WIDTH REFINEMENT — 2026-06-02 */

/* Add more horizontal breathing room to internal menu items. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
    padding: 9px 13px !important;
    border-radius: 999px !important;
}

/* Contact button remains slightly wider and more prominent. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
    padding: 10px 26px !important;
}

/* Mobile dropdown: keep enough side padding too. */
@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
        padding: 12px 16px !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
        padding: 12px 24px !important;
    }
}


/* MOA INNER MENU RECTANGULAR BUTTONS — 2026-06-02 */

/* Internal menu buttons must remain rectangular, not rounded. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
    border-radius: 0 !important;
}

/* Contact button also rectangular. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
    border-radius: 0 !important;
}

/* Mobile dropdown keeps the same rectangular logic. */
@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
        border-radius: 0 !important;
    }
}


/* MOA REMOVE LEFT DUPLICATE ARROW — 2026-06-02 */

/* Keep our intended right-side arrow only. */
body:not(.moa-home-page) .moa-floating-back-to-top {
    right: 22px !important;
    left: auto !important;
}

/* Hide common left-side scroll-to-top widgets if theme/plugin outputs them. */
body:not(.moa-home-page) #scrollUp,
body:not(.moa-home-page) .scrollUp,
body:not(.moa-home-page) .scroll-up,
body:not(.moa-home-page) .back-to-top-left,
body:not(.moa-home-page) .left-scroll-top,
body:not(.moa-home-page) .site-footer .scroll-to-top,
body:not(.moa-home-page) .site-footer .back-to-top {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}


/* MOA FINAL INTERNAL MENU CLEANUP — NO SHADE, BUTTONS ONLY — 2026-06-02 */

/* Remove every dark gradient / shadow / shade under the internal menu. */
body:not(.moa-home-page) .moa-inner-topbar {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Keep the menu right-aligned. */
body:not(.moa-home-page) .moa-inner-topbar {
    justify-content: flex-end !important;
    padding-right: clamp(26px, 5vw, 82px) !important;
}

/* Only the buttons remain visible. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
    color: rgba(16, 25, 35, 0.86) !important;
    background: rgba(255, 253, 248, 0.90) !important;
    border: 1px solid rgba(16, 25, 35, 0.18) !important;
    box-shadow: 0 8px 24px rgba(16, 25, 35, 0.08) !important;
    padding: 9px 16px !important;
    border-radius: 0 !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.105em !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:hover {
    color: rgba(16, 25, 35, 1) !important;
    background: #fffdf8 !important;
    border-color: rgba(16, 25, 35, 0.34) !important;
}

/* Contact should also be rectangular, just slightly wider. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact {
    padding: 9px 22px !important;
    border-radius: 0 !important;
}

/* Force-hide the known blue left arrow if it is theme-generated. */
body:not(.moa-home-page) #kt-scroll-up,
body:not(.moa-home-page) #scrollUp,
body:not(.moa-home-page) .scrollUp,
body:not(.moa-home-page) .kt-scroll-up,
body:not(.moa-home-page) .kadence-scroll-to-top,
body:not(.moa-home-page) .kadence-scroll-to-top-wrap,
body:not(.moa-home-page) .site-scroll-top-wrap,
body:not(.moa-home-page) .scroll-to-top,
body:not(.moa-home-page) .scrollup,
body:not(.moa-home-page) .back-to-top,
body:not(.moa-home-page) .to-top {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Keep only our right-side arrow. */
body:not(.moa-home-page) .moa-floating-back-to-top {
    display: flex !important;
    left: auto !important;
    right: 22px !important;
}

/* Mobile menu: no top shade either. */
@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar {
        background: transparent !important;
        background-image: none !important;
        background-color: transparent !important;
        padding-right: 16px !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle {
        border-radius: 0 !important;
        background: rgba(255, 253, 248, 0.92) !important;
        border: 1px solid rgba(16, 25, 35, 0.20) !important;
        box-shadow: 0 8px 24px rgba(16, 25, 35, 0.08) !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle span {
        background: rgba(16, 25, 35, 0.86) !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu {
        background: rgba(255, 253, 248, 0.98) !important;
        border: 1px solid rgba(16, 25, 35, 0.14) !important;
        border-radius: 0 !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a {
        background: transparent !important;
        box-shadow: none !important;
        border-left: 0 !important;
        border-right: 0 !important;
        border-top: 0 !important;
        border-bottom: 1px solid rgba(16, 25, 35, 0.10) !important;
        color: rgba(16, 25, 35, 0.88) !important;
    }
}


/* MOA FINAL MENU AND LEFT ARROW FIX — 2026-06-02 */

/* Remove known theme/plugin back-to-top arrows everywhere. */
#kt-scroll-up,
#scrollUp,
.scrollUp,
.kt-scroll-up,
.kadence-scroll-to-top,
.kadence-scroll-to-top-wrap,
.site-scroll-top-wrap,
.scroll-to-top,
.scrollup,
.back-to-top,
.to-top,
a[href="#top"].scroll-to-top,
a[href="#page"].scroll-to-top,
button[aria-label*="top" i]:not(.moa-floating-back-to-top),
a[aria-label*="top" i]:not(.moa-floating-back-to-top) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Keep only our intended right-side arrow. */
.moa-floating-back-to-top {
    display: flex !important;
    left: auto !important;
    right: 22px !important;
}

/* Topbar itself: no shade, no strip, no gradient. */
body:not(.moa-home-page) .moa-inner-topbar,
body .moa-inner-topbar {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    justify-content: flex-end !important;
    padding-right: clamp(24px, 5vw, 82px) !important;
}

/* Menu buttons: transparent dark, no border, rectangular. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
body .moa-inner-topbar .moa-topbar__menu a {
    color: rgba(255, 253, 248, 0.94) !important;
    background: rgba(16, 25, 35, 0.42) !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 10px 18px !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.105em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    text-decoration: none !important;
}

/* Hover: text becomes slightly paler, not brighter. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:hover,
body .moa-inner-topbar .moa-topbar__menu a:hover {
    color: rgba(255, 253, 248, 0.68) !important;
    background: rgba(16, 25, 35, 0.36) !important;
    border: 0 !important;
}

/* Contact is the same visual language, just a little wider. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
body .moa-inner-topbar .moa-topbar__contact {
    padding-left: 24px !important;
    padding-right: 24px !important;
    border-radius: 0 !important;
    border: 0 !important;
}

/* Mobile: show a real hamburger, not a circle. */
@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar,
    body .moa-inner-topbar {
        min-height: 66px !important;
        padding-right: 16px !important;
        justify-content: flex-end !important;
        background: transparent !important;
        background-image: none !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle,
    body .moa-inner-topbar .moa-topbar__toggle {
        display: inline-flex !important;
        width: 44px !important;
        height: 34px !important;
        padding: 0 !important;
        margin: 0 !important;
        align-items: center !important;
        justify-content: center !important;
        flex-direction: column !important;
        gap: 6px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: rgba(16, 25, 35, 0.46) !important;
        box-shadow: none !important;
        cursor: pointer !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle span,
    body .moa-inner-topbar .moa-topbar__toggle span {
        display: block !important;
        width: 24px !important;
        height: 1px !important;
        background: rgba(255, 253, 248, 0.94) !important;
        border: 0 !important;
        border-radius: 0 !important;
        opacity: 1 !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu,
    body .moa-inner-topbar .moa-topbar__menu {
        display: none !important;
        position: absolute !important;
        top: calc(100% + 8px) !important;
        right: 16px !important;
        left: auto !important;
        width: min(310px, calc(100vw - 32px)) !important;
        padding: 8px !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 4px !important;
        background: rgba(16, 25, 35, 0.72) !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar.is-open .moa-topbar__menu,
    body .moa-inner-topbar.is-open .moa-topbar__menu {
        display: flex !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
    body .moa-inner-topbar .moa-topbar__menu a {
        display: block !important;
        padding: 12px 14px !important;
        background: rgba(16, 25, 35, 0.38) !important;
        border: 0 !important;
        color: rgba(255, 253, 248, 0.94) !important;
        text-align: left !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:hover,
    body .moa-inner-topbar .moa-topbar__menu a:hover {
        color: rgba(255, 253, 248, 0.68) !important;
        background: rgba(16, 25, 35, 0.32) !important;
    }
}


/* MOA INNER MENU — SCROLL WITH PAGE + REAL MOBILE HAMBURGER — 2026-06-02 */

/* The internal-page menu belongs to the top of the page and scrolls away with content.
   It must not remain fixed over the viewport. */
body:not(.moa-home-page) .moa-inner-topbar,
body .moa-inner-topbar {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 50 !important;
    min-height: 68px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    padding-left: 22px !important;
    padding-right: clamp(24px, 5vw, 82px) !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Keep content below the non-fixed top menu. */
body:not(.moa-home-page) {
    padding-top: 68px !important;
}

/* No admin-bar fixed correction is needed because the menu is no longer fixed. */
body.admin-bar:not(.moa-home-page) .moa-inner-topbar {
    top: 0 !important;
}

/* Desktop menu: right aligned, transparent dark rectangular buttons, no border. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu,
body .moa-inner-topbar .moa-topbar__menu {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: clamp(8px, 1.1vw, 16px) !important;
    width: auto !important;
    max-width: 100% !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
body .moa-inner-topbar .moa-topbar__menu a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: rgba(255, 253, 248, 0.94) !important;
    background: rgba(16, 25, 35, 0.42) !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 10px 18px !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.105em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    text-decoration: none !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:hover,
body .moa-inner-topbar .moa-topbar__menu a:hover {
    color: rgba(255, 253, 248, 0.68) !important;
    background: rgba(16, 25, 35, 0.36) !important;
}

/* Mobile: show a real hamburger icon, not a circle and not an empty square. */
@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar,
    body .moa-inner-topbar {
        position: absolute !important;
        top: 0 !important;
        min-height: 64px !important;
        padding-right: 16px !important;
        justify-content: flex-end !important;
    }

    body:not(.moa-home-page) {
        padding-top: 64px !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle,
    body .moa-inner-topbar .moa-topbar__toggle {
        display: flex !important;
        position: relative !important;
        width: 46px !important;
        height: 36px !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: rgba(16, 25, 35, 0.46) !important;
        box-shadow: none !important;
        cursor: pointer !important;
        appearance: none !important;
        -webkit-appearance: none !important;
        font-size: 0 !important;
        color: transparent !important;
    }

    /* Draw the hamburger with background layers so it appears even if span styles are overridden. */
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle {
        background-image:
            linear-gradient(rgba(255, 253, 248, 0.96), rgba(255, 253, 248, 0.96)),
            linear-gradient(rgba(255, 253, 248, 0.96), rgba(255, 253, 248, 0.96)),
            linear-gradient(rgba(255, 253, 248, 0.96), rgba(255, 253, 248, 0.96)) !important;
        background-repeat: no-repeat !important;
        background-size: 24px 1px, 24px 1px, 24px 1px !important;
        background-position:
            center calc(50% - 7px),
            center center,
            center calc(50% + 7px) !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle span,
    body .moa-inner-topbar .moa-topbar__toggle span {
        display: none !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu,
    body .moa-inner-topbar .moa-topbar__menu {
        display: none !important;
        position: absolute !important;
        top: calc(100% + 8px) !important;
        right: 16px !important;
        left: auto !important;
        width: min(310px, calc(100vw - 32px)) !important;
        padding: 8px !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 4px !important;
        background: rgba(16, 25, 35, 0.72) !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar.is-open .moa-topbar__menu,
    body .moa-inner-topbar.is-open .moa-topbar__menu {
        display: flex !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
    body .moa-inner-topbar .moa-topbar__menu a {
        display: flex !important;
        justify-content: flex-start !important;
        padding: 12px 14px !important;
        color: rgba(255, 253, 248, 0.94) !important;
        background: rgba(16, 25, 35, 0.38) !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        text-align: left !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:hover,
    body .moa-inner-topbar .moa-topbar__menu a:hover {
        color: rgba(255, 253, 248, 0.68) !important;
        background: rgba(16, 25, 35, 0.32) !important;
    }
}


/* MOA INNER MENU — NAVY BLUE REFINEMENT + LIGHT CONTACT BUTTON — 2026-06-02 */

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
body .moa-inner-topbar .moa-topbar__menu a {
    background: rgba(18, 43, 68, 0.58) !important;
    color: rgba(255, 253, 248, 0.94) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:hover,
body .moa-inner-topbar .moa-topbar__menu a:hover {
    background: rgba(18, 43, 68, 0.50) !important;
    color: rgba(255, 253, 248, 0.68) !important;
}

/* Last Contact button: light, rectangular, with dark navy text. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
body .moa-inner-topbar .moa-topbar__contact,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
body .moa-inner-topbar .moa-topbar__menu a:last-child {
    background: rgba(255, 253, 248, 0.92) !important;
    color: rgba(18, 43, 68, 0.96) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact:hover,
body .moa-inner-topbar .moa-topbar__contact:hover,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child:hover,
body .moa-inner-topbar .moa-topbar__menu a:last-child:hover {
    background: rgba(255, 253, 248, 0.82) !important;
    color: rgba(18, 43, 68, 0.72) !important;
}

/* Mobile dropdown keeps the same color language. */
@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__toggle,
    body .moa-inner-topbar .moa-topbar__toggle {
        background-color: rgba(18, 43, 68, 0.62) !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu,
    body .moa-inner-topbar .moa-topbar__menu {
        background: rgba(18, 43, 68, 0.72) !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
    body .moa-inner-topbar .moa-topbar__menu a {
        background: rgba(18, 43, 68, 0.46) !important;
        color: rgba(255, 253, 248, 0.94) !important;
    }

    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
    body .moa-inner-topbar .moa-topbar__menu a:last-child {
        background: rgba(255, 253, 248, 0.92) !important;
        color: rgba(18, 43, 68, 0.96) !important;
    }
}


/* MOA INNER MENU — CONTACT SAME AS OTHER BUTTONS — 2026-06-02 */

/* Contact button must look exactly like the other menu buttons. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
body .moa-inner-topbar .moa-topbar__contact,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
body .moa-inner-topbar .moa-topbar__menu a:last-child {
    background: rgba(18, 43, 68, 0.58) !important;
    color: rgba(255, 253, 248, 0.94) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 10px 18px !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.105em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

/* Same hover behavior as the rest of the menu. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact:hover,
body .moa-inner-topbar .moa-topbar__contact:hover,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child:hover,
body .moa-inner-topbar .moa-topbar__menu a:last-child:hover {
    background: rgba(18, 43, 68, 0.50) !important;
    color: rgba(255, 253, 248, 0.68) !important;
}

/* Mobile: Contact also remains the same as the other items. */
@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
    body .moa-inner-topbar .moa-topbar__contact,
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
    body .moa-inner-topbar .moa-topbar__menu a:last-child {
        background: rgba(18, 43, 68, 0.46) !important;
        color: rgba(255, 253, 248, 0.94) !important;
        padding: 12px 14px !important;
    }
}


/* MOA INNER MENU — MATCH HOMEPAGE MENU SIZE — 2026-06-02 */

/* Internal menu: slightly larger, closer to homepage navigation. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
body .moa-inner-topbar .moa-topbar__menu a,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
body .moa-inner-topbar .moa-topbar__contact,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
body .moa-inner-topbar .moa-topbar__menu a:last-child {
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: 0.105em !important;
    line-height: 1 !important;
    padding: 12px 22px !important;
    background: rgba(18, 43, 68, 0.58) !important;
    color: rgba(255, 253, 248, 0.94) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    white-space: nowrap !important;
}

/* Keep spacing between buttons elegant after the size increase. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu,
body .moa-inner-topbar .moa-topbar__menu {
    gap: clamp(9px, 1.15vw, 17px) !important;
}

/* Same soft hover behavior. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:hover,
body .moa-inner-topbar .moa-topbar__menu a:hover,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact:hover,
body .moa-inner-topbar .moa-topbar__contact:hover {
    background: rgba(18, 43, 68, 0.50) !important;
    color: rgba(255, 253, 248, 0.68) !important;
}

/* Mobile menu: same proportion, but not too bulky. */
@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
    body .moa-inner-topbar .moa-topbar__menu a,
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
    body .moa-inner-topbar .moa-topbar__contact,
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
    body .moa-inner-topbar .moa-topbar__menu a:last-child {
        font-size: 12px !important;
        padding: 13px 18px !important;
    }
}


/* MOA INNER MENU — SIZE 11PX FINAL ADJUSTMENT — 2026-06-02 */

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
body .moa-inner-topbar .moa-topbar__menu a,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
body .moa-inner-topbar .moa-topbar__contact,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
body .moa-inner-topbar .moa-topbar__menu a:last-child {
    font-size: 11px !important;
    padding: 11px 20px !important;
    letter-spacing: 0.105em !important;
}

/* Slightly tighter spacing after reducing the buttons. */
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu,
body .moa-inner-topbar .moa-topbar__menu {
    gap: clamp(8px, 1vw, 15px) !important;
}

@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
    body .moa-inner-topbar .moa-topbar__menu a,
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
    body .moa-inner-topbar .moa-topbar__contact,
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
    body .moa-inner-topbar .moa-topbar__menu a:last-child {
        font-size: 11px !important;
        padding: 12px 16px !important;
    }
}


/* MOA INNER MENU — SIZE 10PX FINAL ADJUSTMENT — 2026-06-02 */

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
body .moa-inner-topbar .moa-topbar__menu a,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
body .moa-inner-topbar .moa-topbar__contact,
body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
body .moa-inner-topbar .moa-topbar__menu a:last-child {
    font-size: 10px !important;
    padding: 10px 18px !important;
    letter-spacing: 0.105em !important;
}

body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu,
body .moa-inner-topbar .moa-topbar__menu {
    gap: clamp(7px, 0.9vw, 13px) !important;
}

@media (max-width: 860px) {
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a,
    body .moa-inner-topbar .moa-topbar__menu a,
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__contact,
    body .moa-inner-topbar .moa-topbar__contact,
    body:not(.moa-home-page) .moa-inner-topbar .moa-topbar__menu a:last-child,
    body .moa-inner-topbar .moa-topbar__menu a:last-child {
        font-size: 10px !important;
        padding: 11px 15px !important;
    }
}


/* MOA HOMEPAGE COPYRIGHT — LIGHTER TEXT — 2026-06-02 */

body.moa-home-page .moa-home-copyright-lightened {
    color: rgba(255, 253, 248, 0.68) !important;
}



/* Cloudflare Turnstile spacing for CRM forms */
body.moa-home-page .moa-turnstile-wrap {
    margin: 14px 0 18px;
    min-height: 65px;
}
