/* =========================================================
   MoClarus 2026 — Main
   Production landing page
   ========================================================= */

:root {
    --mc-yellow: #f4c430;
    --mc-yellow-dark: #dfb21b;
    --mc-yellow-soft: #fff6cc;

    --mc-black: #181818;
    --mc-text: #373737;
    --mc-muted: #6d6d68;

    --mc-background: #fffdf8;
    --mc-white: #ffffff;
    --mc-surface: #f5f2e9;
    --mc-border: #e4dfd4;

    --mc-container: 1240px;
    --mc-content: 720px;
    --mc-hero-text: 580px;
    --mc-section-heading: 780px;
    --mc-hero-media: 560px;
    --mc-hero-media-ratio: 6 / 5;

    --font-size-body: 1rem;
    --font-size-small: .875rem;
    --font-size-eyebrow: .75rem;
    --font-size-h1: clamp(2.6rem, 4vw, 4.4rem);
    --font-size-h2: clamp(2.1rem, 3.2vw, 3.4rem);
    --font-size-h3: clamp(1.2rem, 1.7vw, 1.5rem);

    --line-height-body: 1.65;
    --line-height-heading: 1.02;
    --font-weight-heading: 740;
    --font-weight-body: 400;

    --space-xs: .5rem;
    --space-sm: .75rem;
    --space-md: 1.25rem;
    --space-lg: 2rem;
    --space-xl: clamp(3rem, 5vw, 4.5rem);
    --space-2xl: clamp(4rem, 6vw, 6rem);
    --space-section: clamp(4rem, 6vw, 6rem);
    --hero-gap: clamp(3rem, 5vw, 5rem);
    --hero-padding-block: clamp(4.5rem, 5.3vw, 5.75rem);
    --mc-hero-height-desktop: calc(clamp(454.86px, calc(20vw + 250px), 503.06px) + (2 * var(--hero-padding-block)) + 1px);

    --mc-radius: 14px;
    --mc-radius-large: 24px;

    --mc-font:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Helvetica,
        Arial,
        sans-serif;
}


/* =========================================================
   BASE
   ========================================================= */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    background: var(--mc-background);
    scroll-behavior: smooth;
    scrollbar-gutter: stable;
    overflow-y: scroll;
}

/*
 * Keep the outgoing document visible until the next same-origin page is
 * ready. Supporting browsers get a very short cross-fade instead of exposing
 * their default white navigation canvas. Reduced-motion users and older
 * browsers retain normal navigation.
 */
@view-transition {
    navigation: auto;
}

@media (prefers-reduced-motion: no-preference) {
    ::view-transition-old(root) {
        animation: mc-page-out 90ms ease-out both;
    }

    ::view-transition-new(root) {
        animation: mc-page-in 140ms ease-out both;
    }

    @keyframes mc-page-out {
        to {
            opacity: 0.94;
        }
    }

    @keyframes mc-page-in {
        from {
            opacity: 0;
        }
    }
}

@media (prefers-reduced-motion: reduce) {
    ::view-transition-old(root),
    ::view-transition-new(root) {
        animation-duration: 0s;
    }
}

body {
    margin: 0;

    background: var(--mc-background);
    color: var(--mc-text);

    font-family: var(--mc-font);
    font-size: var(--font-size-body);
    font-weight: var(--font-weight-body);
    line-height: var(--line-height-body);

    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
}

a {
    color: inherit;
}

button,
input,
textarea,
select {
    font: inherit;
}

.mc-container {
    width: min(calc(100% - 3rem), var(--mc-container));
    margin-inline: auto;
}

.mc-main {
    overflow: hidden;
}


/* =========================================================
   ACCESSIBILITY
   ========================================================= */

.mc-skip-link {
    position: absolute;
    top: -100px;
    left: 1rem;
    z-index: 9999;

    padding: 0.75rem 1rem;

    background: var(--mc-black);
    color: var(--mc-white);

    text-decoration: none;
}

.mc-skip-link:focus {
    top: 1rem;
}


/* =========================================================
   TYPOGRAPHY
   ========================================================= */

.mc-eyebrow {
    margin: 0 0 var(--space-md);

    color: var(--mc-muted);

    font-size: var(--font-size-eyebrow);
    font-weight: 750;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.mc-section-title {
    max-width: var(--mc-section-heading);
    margin: 0;

    color: var(--mc-black);

    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: -0.045em;
}

.mc-section-intro {
    max-width: var(--mc-content);
    margin: var(--space-md) 0 0;

    color: var(--mc-muted);

    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
}


/* =========================================================
   BUTTONS
   ========================================================= */

.mc-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;

    margin-top: 1.75rem;
}

.mc-button {
    min-height: 46px;

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

    padding: 0.72rem 1.25rem;

    border: 1px solid transparent;
    border-radius: 999px;

    color: var(--mc-black);

    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1;

    text-decoration: none;

    transition:
        transform 160ms ease,
        background-color 160ms ease,
        border-color 160ms ease;
}

.mc-button:hover {
    transform: translateY(-1px);
}

.mc-button:focus-visible {
    outline: 3px solid var(--mc-black);
    outline-offset: 3px;
}

.mc-button--primary {
    background: var(--mc-yellow);
}

.mc-button--primary:hover {
    background: var(--mc-yellow-dark);
}

.mc-button--secondary {
    background: transparent;
    border-color: var(--mc-border);
}

.mc-button--secondary:hover {
    border-color: var(--mc-black);
}


/* =========================================================
   HERO
   ========================================================= */

.mc-home-hero__content {
    position: relative;
    z-index: 2;
}

.mc-home-hero__title span {
    position: relative;

    display: block;
    width: fit-content;

    margin-top: 0.07em;
}

.mc-home-hero__title span::after {
    content: "";

    position: absolute;
    left: 0;
    right: 0;
    bottom: -0.17em;

    height: 0.06em;

    background: var(--mc-yellow);
    border-radius: 999px;

    transform: rotate(-1deg);
}

.mc-home-hero__audience {
    max-width: 620px;
    margin: 1.7rem 0 0;

    color: var(--mc-muted);

    font-size: 0.88rem;
    line-height: 1.55;
}

.mc-home-hero__visual {
    position: relative;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.mc-home-hero__image {
    width: 100%;
    margin: 0;

    overflow: hidden;

    border-radius: 18px;
    background: var(--mc-surface);
}

.mc-home-hero__image img,
.mc-home-hero__img {
    width: 100%;
    height: auto;

    aspect-ratio: var(--mc-hero-media-ratio);

    object-fit: cover;
    object-position: center 56%;

    background: var(--mc-white);
}

.mc-home-hero__placeholder {
    width: 100%;
    aspect-ratio: var(--mc-hero-media-ratio);

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

    background: var(--mc-surface);
    color: var(--mc-muted);
}

.mc-home-hero__note {
    position: relative;

    margin: 0.75rem 0 0 1rem;

    color: var(--mc-muted);

    font-size: 0.84rem;
    font-style: italic;
    line-height: 1.4;
}

.mc-home-hero__note::before {
    content: "";

    position: absolute;
    left: -1rem;
    top: 0.65em;

    width: 0.55rem;
    height: 2px;

    background: var(--mc-yellow);
}


/* =========================================================
   CHALLENGES
   ========================================================= */

.mc-home-reality {
    padding:
        clamp(4rem, 6.5vw, 6rem)
        0;

    background: var(--mc-black);
    color: var(--mc-white);
}

.mc-home-reality__grid {
    display: grid;
    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(320px, 1.1fr);

    gap: clamp(3rem, 6vw, 5.5rem);
}

.mc-home-reality .mc-eyebrow {
    color: #a7a7a2;
}

.mc-home-reality .mc-section-title {
    max-width: 600px;

    color: var(--mc-white);

    font-size: clamp(2.3rem, 4.2vw, 3.9rem);
}

.mc-home-reality .mc-section-intro {
    color: #c9c9c4;
}

.mc-home-reality__list {
    border-top: 1px solid #3b3b3b;
}

.mc-home-reality__list article {
    padding: 1.15rem 0;

    border-bottom: 1px solid #3b3b3b;
}

.mc-home-reality__list h3 {
    margin: 0 0 0.3rem;

    color: var(--mc-white);

    font-size: 1rem;
    line-height: 1.3;
}

.mc-home-reality__list p {
    margin: 0;

    color: #bdbdb8;

    font-size: 0.9rem;
    line-height: 1.5;
}


/* =========================================================
   APPROACH
   ========================================================= */

.mc-home-approach {
    padding:
        clamp(4rem, 6.5vw, 6rem)
        0;

    border-bottom: 1px solid rgba(0, 0, 0, 0.035);
}

.mc-home-section-heading {
    max-width: 760px;
}

.mc-steps {
    margin: 0;
    padding: 0;

    list-style: none;
}

.mc-steps--horizontal {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));

    gap: 0;

    margin-top: 3rem;

    border-top: 1px solid var(--mc-border);
    border-bottom: 1px solid var(--mc-border);
}

.mc-steps--horizontal .mc-step {
    display: block;

    padding: 1.65rem 1.15rem;

    border-right: 1px solid var(--mc-border);
}

.mc-steps--horizontal .mc-step:first-child {
    padding-left: 0;
}

.mc-steps--horizontal .mc-step:last-child {
    padding-right: 0;
    border-right: 0;
}

.mc-step__number {
    display: block;

    margin-bottom: 0.8rem;

    color: var(--mc-black);

    font-size: 0.92rem;
    font-weight: 800;
}

.mc-step__number::after {
    content: "";

    display: block;

    width: 17px;
    height: 3px;

    margin-top: 0.4rem;

    background: var(--mc-yellow);
}

.mc-step h3 {
    margin: 0 0 0.45rem;

    color: var(--mc-black);

    font-size: 0.95rem;
    line-height: 1.3;
}

.mc-step p {
    margin: 0;

    color: var(--mc-muted);

    font-size: 0.86rem;
    line-height: 1.5;
}


/* =========================================================
   PARTNERSHIP
   ========================================================= */

.mc-home-partnership {
    padding:
        clamp(4rem, 6.5vw, 6rem)
        0;

    background: var(--mc-surface);
}

.mc-home-partnership__grid {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1.05fr);

    gap: clamp(3rem, 6vw, 5.5rem);

    align-items: center;
}

.mc-home-partnership__image {
    margin: 0;

    overflow: hidden;

    border-radius: 16px;
    background: var(--mc-yellow-soft);
}

.mc-home-partnership__image img {
    width: 100%;
    height: auto;

    min-height: 390px;
    max-height: 520px;

    object-fit: contain;

    background: var(--mc-white);
}

.mc-home-partnership__statement {
    max-width: 560px;

    margin: 2rem 0 0;
    padding-left: 1.15rem;

    border-left: 4px solid var(--mc-yellow);

    color: var(--mc-black);

    font-size: clamp(1.05rem, 1.6vw, 1.22rem);
    font-weight: 650;
    line-height: 1.5;
}


/* =========================================================
   FINAL CTA
   ========================================================= */

.mc-home-closing {
    position: relative;

    padding:
        clamp(4.3rem, 6.5vw, 6.3rem)
        0;

    background: #102526;
    color: var(--mc-white);
}

.mc-home-closing .mc-eyebrow {
    color: #aeb8b5;
}

.mc-home-closing__inner {
    max-width: 820px;
}

.mc-home-closing__title {
    max-width: 820px;
    margin: 0;

    color: var(--mc-white);

    font-size: clamp(2.8rem, 5.7vw, 5.3rem);
    font-weight: 740;
    line-height: 0.99;
    letter-spacing: -0.05em;
}

.mc-home-closing__text {
    max-width: 600px;

    margin: 1.7rem 0;

    color: #d5dcda;

    font-size: clamp(1rem, 1.5vw, 1.17rem);
    line-height: 1.6;
}


/* =========================================================
   FOOTER
   ========================================================= */

.mc-footer {
    padding: 2.7rem 0 1.4rem;

    background: var(--mc-black);
    color: var(--mc-white);
}

.mc-footer__top {
    display: grid;
    grid-template-columns:
        minmax(240px, .75fr)
        minmax(0, 1.75fr);

    gap: 3.5rem;

    padding-bottom: 2rem;

    border-bottom: 1px solid #333;
}

.mc-footer__intro {
    max-width: 420px;
}

.mc-footer__brand {
    display: flex;
    align-items: center;
}

.mc-footer__brand .custom-logo-link {
    display: inline-block;
}

.mc-footer__brand .custom-logo {
    display: block;

    width: auto !important;
    height: auto !important;

    max-width: 120px !important;
    max-height: 44px !important;

    object-fit: contain;
}

.mc-footer__brand > a {
    color: var(--mc-white);

    font-size: 1.05rem;
    font-weight: 750;

    text-decoration: none;
}

.mc-footer__tagline {
    max-width: 390px;

    margin: 1rem 0 0;

    color: #bdbdb8;

    font-size: 0.88rem;
    line-height: 1.55;
}

.mc-footer__links {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 2.2rem;
}

.mc-footer__column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 0.5rem;
}

.mc-footer__column h2 {
    margin: 0 0 0.35rem;

    color: var(--mc-white);

    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.mc-footer__column a {
    display: block;

    color: #bdbdb8;

    font-size: 0.84rem;
    line-height: 1.4;

    text-decoration: none;
}

.mc-footer__column a:hover,
.mc-footer__column a:focus {
    color: var(--mc-white);
}

.mc-footer__company address,
.mc-footer__company p {
    display: grid;
    gap: .2rem;
    margin: 0 0 .45rem;
    color: #bdbdb8;
    font-size: .84rem;
    font-style: normal;
    line-height: 1.45;
}

.mc-footer__company p { margin-top: .45rem; }

.mc-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: flex-start;

    padding-top: 1.4rem;
}

.mc-footer__copyright {
    margin: 0;

    color: #858580;

    font-size: 0.76rem;
}

@media (max-width: 900px) {
    .mc-footer__top {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
}

@media (max-width: 760px) {
    .mc-footer__links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .mc-footer__links {
        grid-template-columns: 1fr;
        gap: 1.6rem;
    }
}


/* =========================================================
   STANDARD WORDPRESS PAGES
   ========================================================= */

.mc-page {
    padding:
        clamp(4rem, 7vw, 6.5rem)
        0;
}

.mc-page__header {
    max-width: var(--mc-content);

    margin-bottom: 3rem;
}

.mc-page__content {
    max-width: var(--mc-content);
}

.mc-page__content h1,
.mc-page__content h2,
.mc-page__content h3 {
    color: var(--mc-black);
    line-height: 1.15;
}

.mc-page__content p {
    margin: 0 0 1.5rem;
}

/* =========================================================
   BUSINESS DEVELOPMENT / SERVICES
   ========================================================= */

.mc-service-hero {
    padding:
        clamp(3.8rem, 6vw, 5.5rem)
        0
        clamp(2.6rem, 4.5vw, 4rem);
}

.mc-service-hero .mc-eyebrow {
    margin-bottom: 0.85rem;
}

.mc-service-hero__title {
    max-width: 820px;
    margin: 0;

    color: var(--mc-black);

    font-size: clamp(2.8rem, 5.3vw, 5rem);
    font-weight: 740;
    line-height: 0.98;
    letter-spacing: -0.055em;
}

.mc-service-hero__lead {
    max-width: 650px;

    margin:
        1.25rem
        0
        0;

    color: var(--mc-muted);

    font-size: clamp(1rem, 1.5vw, 1.16rem);
    line-height: 1.6;
}


/* =========================================================
   SERVICE CHOICES
   ========================================================= */

.mc-service-choices {
    padding:
        0
        0
        clamp(3.5rem, 5vw, 4.5rem);
}

.mc-service-choice-grid {
    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: clamp(1rem, 2vw, 1.4rem);
}


/* CARD */

.mc-service-choice-card {
    display: grid;

    grid-template-columns:
        minmax(180px, 0.92fr)
        minmax(0, 1.08fr);

    min-height: 285px;

    overflow: hidden;

    border: 1px solid var(--mc-border);
    border-radius: var(--mc-radius);

    background: var(--mc-white);
}


/* IMAGE */

.mc-service-choice-card__image {
    min-width: 0;

    background: var(--mc-surface);
}

.mc-service-choice-card__img,
.mc-service-choice-card__image img {
    width: 100%;
    height: 100%;

    min-height: 285px;

    object-fit: cover;
}

.mc-service-choice-card__placeholder {
    width: 100%;
    height: 100%;

    min-height: 285px;

    background:
        linear-gradient(
            135deg,
            var(--mc-surface),
            var(--mc-yellow-soft)
        );
}


/* CONTENT */

.mc-service-choice-card__content {
    display: flex;
    flex-direction: column;

    padding:
        clamp(1.5rem, 3vw, 2.2rem);
}

.mc-service-choice-card__content::before {
    content: "";

    width: 34px;
    height: 3px;

    margin-bottom: 1.25rem;

    background: var(--mc-yellow);
}

.mc-service-choice-card h2 {
    max-width: 330px;

    margin:
        0
        0
        1rem;

    color: var(--mc-black);

    font-size: var(--font-size-h3);
    font-weight: var(--font-weight-heading);
    line-height: 1.15;
    letter-spacing: -0.025em;
}

.mc-service-choice-card p {
    max-width: 360px;

    margin:
        0
        0
        1.5rem;

    color: var(--mc-muted);

    font-size: 0.96rem;
    line-height: 1.55;
}


/* SELECT SERVICE */

.mc-service-choice-card__link {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;

    gap: 1rem;

    width: 100%;

    margin-top: auto;

    padding-top: 0.9rem;

    border-top: 1px solid var(--mc-border);

    color: var(--mc-black);

    font-size: 0.9rem;
    font-weight: 700;

    text-decoration: none;
}

.mc-service-choice-card__link span:last-child {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 36px;
    height: 36px;

    flex: 0 0 36px;

    border-radius: 50%;

    background: var(--mc-yellow);

    transition:
        transform 160ms ease,
        background-color 160ms ease;
}

.mc-service-choice-card__link:hover span:last-child {
    transform: translateX(2px);
    background: var(--mc-yellow-dark);
}

.mc-service-choice-card__link:focus-visible {
    outline: 3px solid var(--mc-black);
    outline-offset: 4px;
}


/* =========================================================
   SERVICE CONTEXT
   ========================================================= */

.mc-service-context {
    padding: var(--space-section) 0;
    background: var(--mc-surface);
}

.mc-service-context__inner {
    display: grid;
    grid-template-columns: minmax(220px, 0.72fr) minmax(0, 1.28fr);
    gap: clamp(2.5rem, 7vw, 7rem);
    align-items: start;
}

.mc-service-context__intro h2 {
    max-width: 430px;
    margin: 0;
    color: var(--mc-black);
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: -0.045em;
}

.mc-service-context__body {
    max-width: 700px;
}

.mc-service-context__body > p {
    margin: 0 0 1.2rem;
    color: var(--mc-muted);
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
}

.mc-service-context__principles {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.3rem;
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--mc-border);
}

.mc-service-context__principles h3 {
    margin: 0 0 0.5rem;
    color: var(--mc-black);
    font-size: 1rem;
    line-height: 1.2;
}

.mc-service-context__principles p {
    margin: 0;
    color: var(--mc-muted);
    font-size: 0.9rem;
    line-height: 1.55;
}


/* =========================================================
   BUSINESS DIRECTION DETAIL
   ========================================================= */

body.page-id-1268 main .mc-page__header {
    width: 100%;
    max-width: 1180px;
    margin-left: 0;
    box-sizing: border-box;
    background:
        linear-gradient(
            90deg,
            rgba(255, 253, 248, 0.98) 0%,
            rgba(255, 249, 232, 0.82) 38%,
            rgba(255, 249, 232, 0.14) 78%,
            rgba(255, 249, 232, 0) 100%
        ),
        url("/wp-content/uploads/2026/09/business-direction.png") right center / 52% auto no-repeat,
        linear-gradient(135deg, #fffdf8 0%, #fff8e6 100%) !important;
}

/* Commercial Structure: aligned visual hero and readable editorial layout */
body.page-id-1264 main .mc-page__header {
    width: 100%;
    max-width: 1180px;
    margin-left: 0;
    box-sizing: border-box;
    min-height: clamp(430px, 36vw, 520px);
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: clamp(4rem, 7vw, 6.5rem) 0 3rem !important;
    background:
        linear-gradient(
            90deg,
            rgba(255, 253, 248, .98) 0%,
            rgba(255, 249, 232, .82) 42%,
            rgba(255, 249, 232, .18) 78%,
            rgba(255, 249, 232, 0) 100%
        ),
        url("/wp-content/uploads/2026/09/market-understanding-validation.png") right center / 36% auto no-repeat,
        linear-gradient(135deg, #fffdf8 0%, #fff8e6 100%) !important;
}

body.page-id-1264 main .mc-page__header h1 {
    max-width: 50%;
    font-size: clamp(2.7rem, 5vw, 4.8rem);
    line-height: .98;
    letter-spacing: -.055em;
}

body.page-id-1264 main .mc-page__content {
    max-width: 1180px;
    padding-top: clamp(3.5rem, 6vw, 5.5rem);
    padding-bottom: clamp(4rem, 7vw, 6rem);
    background: #fbfaf6;
}

body.page-id-1264 main .mc-page__content > h2:first-of-type {
    max-width: 780px;
    margin-top: 0;
    font-size: clamp(2.2rem, 4vw, 4rem);
    line-height: 1.02;
    letter-spacing: -.04em;
}

body.page-id-1264 main .mc-page__content > p,
body.page-id-1264 main .mc-page__content > ul {
    max-width: 780px;
    color: #55534c;
    font-size: 1.03rem;
    line-height: 1.75;
}

body.page-id-1264 main .mc-page__content > h2 {
    max-width: 820px;
    margin-top: clamp(3rem, 5vw, 4.5rem);
    margin-bottom: 1rem;
    font-size: clamp(1.7rem, 2.8vw, 2.7rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

body.page-id-1264 main .mc-page__content > h3 {
    max-width: 780px;
    margin-top: 2rem;
    margin-bottom: .8rem;
    font-size: 1.2rem;
}

body.page-id-1264 main .mc-page__content > ul {
    padding: 1.2rem 1.5rem 1.2rem 2.8rem;
    border-left: 3px solid var(--mc-yellow);
    background: #fffefa;
    border-radius: 0 .8rem .8rem 0;
}

body.page-id-1264 main .mc-page__content .mc-button {
    display: inline-flex;
    margin-top: .5rem;
    padding: .9rem 1.2rem;
    border-radius: 999px;
    background: var(--mc-yellow);
    color: var(--mc-black);
    font-weight: 700;
    text-decoration: none;
}

@media (max-width: 782px) {
    body.page-id-1264 main .mc-page__header {
        width: 100%;
        margin-left: 0;
        min-height: 360px;
        padding: 3rem 1.25rem !important;
        background:
            linear-gradient(180deg, rgba(255, 253, 248, .96) 0%, rgba(255, 249, 232, .82) 58%, rgba(255, 249, 232, .18) 100%),
            url("/wp-content/uploads/2026/09/market-understanding-validation.png") right bottom / 72% auto no-repeat !important;
    }

    body.page-id-1264 main .mc-page__header h1 {
        max-width: 72%;
        font-size: clamp(2.4rem, 12vw, 4rem);
    }

    body.page-id-1264 main .mc-page__content {
        padding-top: 3rem;
        padding-bottom: 4rem;
    }
}


/* =========================================================
   PRIVACY POLICY
   ========================================================= */

.mc-privacy-page {
    overflow: visible;
}

.mc-privacy-hero {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
    background:
        radial-gradient(circle at 82% 18%, rgba(244, 196, 48, .13), transparent 26%),
        var(--mc-background);
    border-bottom: 1px solid var(--mc-border);
}

.mc-privacy-hero__inner {
    max-width: 940px;
}

.mc-privacy-hero .mc-eyebrow {
    margin: 0 0 var(--space-sm);
    color: #7a6214;
    font-size: var(--font-size-eyebrow);
}

.mc-privacy-hero h1 {
    max-width: 760px;
    margin: 0;
    color: var(--mc-black);
    font-size: clamp(2.75rem, 5vw, 4.5rem);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: -.045em;
}

.mc-privacy-hero__lead {
    max-width: 700px;
    margin: var(--space-md) 0 0;
    color: #44433e;
    font-size: 1.08rem;
    line-height: 1.65;
}

.mc-privacy-hero__updated {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .65rem;
    margin: var(--space-lg) 0 0;
    color: var(--mc-muted);
    font-size: var(--font-size-small);
    line-height: 1.5;
}

.mc-privacy-hero__updated span {
    color: var(--mc-black);
    font-weight: 700;
}

.mc-privacy-layout {
    max-width: 1080px;
    display: grid;
    grid-template-columns: minmax(220px, 240px) minmax(0, 740px);
    justify-content: center;
    gap: clamp(3.75rem, 6vw, 5rem);
    padding-top: clamp(4rem, 6vw, 5.5rem);
    padding-bottom: clamp(5rem, 8vw, 7rem);
}

.mc-privacy-toc {
    min-width: 0;
}

.mc-privacy-toc__inner {
    position: sticky;
    top: 7rem;
    padding-top: 1.15rem;
    border-top: 3px solid var(--mc-yellow);
}

.mc-privacy-toc h2 {
    margin: 0 0 1rem;
    color: var(--mc-black);
    font-size: var(--font-size-small);
    line-height: 1.35;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.mc-privacy-toc ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mc-privacy-toc li {
    margin: 0;
}

.mc-privacy-toc a {
    min-height: 38px;
    display: flex;
    align-items: center;
    padding: .38rem 0;
    color: #55544f;
    font-size: .92rem;
    line-height: 1.35;
    text-decoration: none;
}

.mc-privacy-toc a:hover {
    color: var(--mc-black);
    text-decoration: underline;
    text-decoration-color: var(--mc-yellow-dark);
    text-underline-offset: .2em;
}

.mc-privacy-toc a:focus,
.mc-privacy-toc a:focus-visible {
    outline: 3px solid var(--mc-yellow);
    outline-offset: 3px;
}

.mc-privacy-document {
    min-width: 0;
    max-width: 740px;
}

.mc-privacy-document section {
    padding: 0 0 clamp(2.75rem, 4vw, 3.75rem);
}

.mc-privacy-document section + section {
    padding-top: clamp(2.75rem, 4vw, 3.75rem);
    border-top: 1px solid var(--mc-border);
}

.mc-privacy-document h2 {
    max-width: 680px;
    margin: 0 0 1.15rem;
    color: var(--mc-black);
    font-size: clamp(1.5rem, 2.2vw, 2rem);
    font-weight: var(--font-weight-heading);
    line-height: 1.15;
    letter-spacing: -.025em;
    scroll-margin-top: 7rem;
}

.mc-privacy-document h3 {
    margin: 2rem 0 .8rem;
    color: var(--mc-black);
    font-size: var(--font-size-h3);
    line-height: 1.25;
}

.mc-privacy-document p,
.mc-privacy-document li {
    color: #4c4b46;
    font-size: var(--font-size-body);
    line-height: 1.75;
}

.mc-privacy-document p {
    margin: 0 0 1.25rem;
}

.mc-privacy-document section > :last-child {
    margin-bottom: 0;
}

.mc-privacy-document a {
    color: #4e4219;
    font-weight: 650;
    text-decoration-color: var(--mc-yellow-dark);
    text-decoration-thickness: 2px;
    text-underline-offset: .18em;
}

.mc-privacy-document a:hover {
    color: var(--mc-black);
}

.mc-privacy-document a:focus,
.mc-privacy-document a:focus-visible {
    outline: 3px solid var(--mc-yellow);
    outline-offset: 3px;
}

/* Unresolved facts must remain visible until they are confirmed for production. */
.mc-privacy-document__warning {
    margin-top: 1.5rem !important;
    padding: 1rem 1.15rem;
    background: var(--mc-yellow-soft);
    border-left: 4px solid var(--mc-yellow-dark);
    color: #4b411f !important;
}

.mc-privacy-document__warning strong {
    display: block;
    margin-bottom: .3rem;
    color: #5f4b08;
    font-size: .78rem;
    letter-spacing: .06em;
}

@media (max-width: 900px) {
    .mc-privacy-layout {
        max-width: 788px;
        grid-template-columns: minmax(0, 1fr);
        gap: var(--space-xl);
    }

    .mc-privacy-toc__inner {
        position: static;
    }

    .mc-privacy-toc ol {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0 2rem;
    }
}

@media (max-width: 560px) {
    .mc-privacy-hero {
        padding: 2.75rem 0 3rem;
    }

    .mc-privacy-hero h1 {
        font-size: clamp(2.55rem, 13vw, 3.25rem);
    }

    .mc-privacy-layout {
        gap: var(--space-lg);
        padding-top: 3rem;
        padding-bottom: 4.5rem;
    }

    .mc-privacy-toc ol {
        grid-template-columns: minmax(0, 1fr);
    }

    .mc-privacy-toc a {
        min-height: 44px;
    }

    .mc-privacy-document section,
    .mc-privacy-document section + section {
        padding-top: 0;
        padding-bottom: 2.75rem;
        border-top: 0;
    }
}

/* Keep Business Direction in the same service-page hero system. */
body.page-id-1268 main .mc-page__header {
    min-height: clamp(430px, 36vw, 520px);
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: clamp(4rem, 7vw, 6.5rem) 0 3rem !important;
    background:
        linear-gradient(
            90deg,
            rgba(255, 253, 248, .98) 0%,
            rgba(255, 249, 232, .82) 42%,
            rgba(255, 249, 232, .18) 78%,
            rgba(255, 249, 232, 0) 100%
        ),
        url("/wp-content/uploads/2026/09/business-direction.png") right center / 36% auto no-repeat,
        linear-gradient(135deg, #fffdf8 0%, #fff8e6 100%) !important;
}

body.page-id-1268 main .mc-page__header h1 {
    max-width: 50%;
    font-size: clamp(2.7rem, 5vw, 4.8rem);
    line-height: .98;
    letter-spacing: -.055em;
}

/* Contact page: clear conversion path with the same visual language as services. */
body.page-id-1266 main .mc-page__header {
    width: 100%;
    max-width: 1180px;
    margin-left: 0;
    box-sizing: border-box;
    min-height: clamp(430px, 36vw, 520px);
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: clamp(4rem, 7vw, 6.5rem) 0 3rem !important;
    background:
        linear-gradient(
            90deg,
            rgba(255, 253, 248, .98) 0%,
            rgba(255, 249, 232, .82) 42%,
            rgba(255, 249, 232, .18) 78%,
            rgba(255, 249, 232, 0) 100%
        ),
        url("/wp-content/uploads/2026/09/contact-conversation.png") right center / 36% auto no-repeat,
        linear-gradient(135deg, #fffdf8 0%, #fff8e6 100%) !important;
}

body.page-id-1266 main .mc-page__header h1 {
    max-width: 50%;
    font-size: clamp(2.7rem, 5vw, 4.8rem);
    line-height: .98;
    letter-spacing: -.055em;
}

body.page-id-1266 main .mc-page__content {
    max-width: 1180px;
    padding-top: clamp(3.5rem, 6vw, 5.5rem);
    padding-bottom: clamp(4rem, 7vw, 6rem);
    background: #fbfaf6;
}

body.page-id-1266 main .mc-page__content > h2,
body.page-id-1266 main .mc-page__content > h3,
body.page-id-1266 main .mc-page__content > p,
body.page-id-1266 main .mc-page__content > ul,
body.page-id-1266 main .mc-page__content > .wpcf7 {
    max-width: 780px;
}

body.page-id-1266 main .mc-page__content > h2:first-of-type {
    margin-top: 0;
    font-size: clamp(2.2rem, 4vw, 4rem);
    line-height: 1.02;
    letter-spacing: -.04em;
}

body.page-id-1266 main .mc-page__content > h2 {
    margin-top: clamp(3rem, 5vw, 4.5rem);
    margin-bottom: 1rem;
    font-size: clamp(1.7rem, 2.8vw, 2.7rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

body.page-id-1266 main .mc-page__content > h3 {
    margin-top: 2rem;
    margin-bottom: .8rem;
    font-size: 1.2rem;
}

body.page-id-1266 main .mc-page__content > p,
body.page-id-1266 main .mc-page__content > ul {
    color: #55534c;
    font-size: 1.03rem;
    line-height: 1.75;
}

body.page-id-1266 main .mc-page__content > ul {
    padding: 1.2rem 1.5rem 1.2rem 2.8rem;
    border-left: 3px solid var(--mc-yellow);
    background: #fffefa;
    border-radius: 0 .8rem .8rem 0;
}

body.page-id-1266 main .mc-page__content > .wpcf7 {
    margin-top: 1.5rem;
    padding: clamp(1.5rem, 3vw, 2.5rem);
    border: 1px solid var(--mc-border);
    border-radius: var(--mc-radius);
    background: var(--mc-white);
    box-shadow: 0 18px 45px rgba(41, 39, 31, .06);
}

body.page-id-1266 main .wpcf7 form label {
    display: block;
    margin-bottom: 1rem;
    color: var(--mc-black);
    font-size: .92rem;
    font-weight: 650;
}

body.page-id-1266 main .wpcf7 form input:not([type="submit"]),
body.page-id-1266 main .wpcf7 form textarea {
    display: block;
    width: 100%;
    min-height: 48px;
    margin-top: .4rem;
    padding: .85rem .95rem;
    border: 1px solid var(--mc-border);
    border-radius: .55rem;
    background: #fffdf8;
    color: var(--mc-black);
    font: inherit;
    font-size: 1rem;
    line-height: 1.5;
    box-sizing: border-box;
    -webkit-appearance: none;
    appearance: none;
}

body.page-id-1266 main .wpcf7 form textarea {
    min-height: 150px;
    resize: vertical;
}

body.page-id-1266 main .wpcf7 form input[type="submit"] {
    padding: .9rem 1.25rem;
    border: 0;
    border-radius: 999px;
    background: var(--mc-yellow);
    color: var(--mc-black);
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}

@media (max-width: 782px) {
    body.page-id-1266 main .mc-page__header {
        min-height: 360px;
        padding: 3rem 1.25rem !important;
        background:
            linear-gradient(180deg, rgba(255, 253, 248, .96) 0%, rgba(255, 249, 232, .82) 58%, rgba(255, 249, 232, .18) 100%),
            url("/wp-content/uploads/2026/09/contact-conversation.png") right bottom / 72% auto no-repeat !important;
    }

    body.page-id-1266 main .mc-page__header h1 {
        max-width: 72%;
        font-size: clamp(2.4rem, 12vw, 4rem);
    }
}

/* Remove the old contact-page split layout so the content reads as one clear flow. */
body.page-id-1266 main .mc-page__content {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 !important;
    grid-template-columns: none !important;
    grid-template-areas: none !important;
}

body.page-id-1266 main .mc-page__content::before,
body.page-id-1266 main .mc-page__content::after {
    display: none !important;
    content: none !important;
}

body.page-id-1266 main .mc-page__content > * {
    position: static !important;
    float: none !important;
    grid-area: auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
}

/* About Us: warm, editorial hero and readable business story. */
body.page-id-1263 main .mc-page__header {
    width: 100%;
    max-width: 1180px;
    min-height: clamp(390px, 34vw, 500px);
    margin-left: 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    padding: clamp(3rem, 6vw, 5.5rem) clamp(1.25rem, 5vw, 4.5rem);
    background:
        linear-gradient(90deg, rgba(255, 253, 248, .99) 0%, rgba(255, 253, 248, .94) 34%, rgba(255, 253, 248, .24) 68%, rgba(255, 253, 248, 0) 100%),
        url("/wp-content/uploads/2026/09/about-us-collaboration.png") right center / 68% auto no-repeat,
        linear-gradient(135deg, #fffdf8 0%, #fff8e6 100%);
    border-radius: 0 0 1.25rem 1.25rem;
}

body.page-id-1263 main .mc-page__header h1 {
    max-width: 480px;
    margin: 0;
    color: var(--mc-black);
    font-size: clamp(3rem, 6vw, 5.8rem);
    font-weight: 740;
    line-height: .96;
    letter-spacing: -.06em;
}

body.page-id-1263 main .mc-page__content {
    max-width: 780px;
    margin: clamp(3rem, 6vw, 5.5rem) auto 0;
    display: block !important;
    position: relative !important;
    width: 100% !important;
    grid-template-columns: none !important;
    grid-template-areas: none !important;
}

body.page-id-1263 main .mc-page__content::before,
body.page-id-1263 main .mc-page__content::after {
    display: none !important;
    content: none !important;
}

body.page-id-1263 main .mc-page__content > * {
    position: static !important;
    float: none !important;
    grid-area: auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
}

body.page-id-1263 main .mc-page__content .mc-about-lead {
    margin-bottom: clamp(2.5rem, 5vw, 4rem);
    color: var(--mc-black);
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    line-height: 1.5;
}

body.page-id-1263 main .mc-page__content h2 {
    margin: clamp(2.6rem, 5vw, 4rem) 0 1rem;
    color: var(--mc-black);
    font-size: clamp(1.8rem, 3.2vw, 2.8rem);
    letter-spacing: -.045em;
}

body.page-id-1263 main .mc-page__content p {
    color: #55534c;
    font-size: 1.04rem;
    line-height: 1.72;
}

body.page-id-1263 main .mc-page__content a {
    color: var(--mc-black);
    text-decoration-color: var(--mc-yellow);
    text-decoration-thickness: 3px;
    text-underline-offset: 4px;
}

@media (max-width: 782px) {
    body.page-id-1263 main .mc-page__header {
        min-height: 430px;
        align-items: flex-start;
        padding: 3rem 1.25rem;
        background:
            linear-gradient(180deg, rgba(255, 253, 248, .98) 0%, rgba(255, 253, 248, .9) 38%, rgba(255, 253, 248, .18) 100%),
            url("/wp-content/uploads/2026/09/about-us-collaboration.png") center bottom / cover no-repeat;
    }

    body.page-id-1263 main .mc-page__header h1 {
        max-width: 80%;
        font-size: clamp(2.8rem, 13vw, 4.5rem);
    }

    body.page-id-1263 main .mc-page__content {
        margin-top: 2.5rem;
    }
}

@media (max-width: 782px) {
    body.page-id-1268 main .mc-page__header {
        min-height: 360px;
        padding: 3rem 1.25rem !important;
        background:
            linear-gradient(180deg, rgba(255, 253, 248, .96) 0%, rgba(255, 249, 232, .82) 58%, rgba(255, 249, 232, .18) 100%),
            url("/wp-content/uploads/2026/09/business-direction.png") right bottom / 72% auto no-repeat !important;
    }

    body.page-id-1268 main .mc-page__header h1 {
        max-width: 72%;
        font-size: clamp(2.4rem, 12vw, 4rem);
    }
}

body.page-id-1268 main .mc-business-direction-detail {
    max-width: 760px;
    margin: 0 auto clamp(3rem, 6vw, 5rem);
    padding: clamp(1.5rem, 3vw, 2.5rem) 0 clamp(0.25rem, 1vw, 0.75rem) clamp(1.25rem, 3vw, 2.5rem);
    border-left: 3px solid var(--mc-yellow);
}

body.page-id-1268 main .mc-business-direction-detail h3 {
    margin: 0 0 0.85rem;
    color: var(--mc-black);
    font-size: clamp(1.45rem, 2.2vw, 2rem);
    line-height: 1.1;
    letter-spacing: -0.025em;
}

body.page-id-1268 main .mc-business-direction-detail p {
    margin: 0 0 1rem;
    color: #55534c;
    font-size: 1.04rem;
    line-height: 1.7;
}

@media (max-width: 782px) {
    body.page-id-1268 main .mc-page__header {
        background:
            linear-gradient(
                180deg,
                rgba(255, 253, 248, 0.9) 0%,
                rgba(255, 249, 232, 0.82) 100%
            ),
            url("/wp-content/uploads/2026/09/business-direction.png") center / cover no-repeat !important;
    }
}


/* =========================================================
   SERVICE HELP
   ========================================================= */

.mc-service-help {
    padding:
        clamp(2.2rem, 4vw, 3.2rem)
        0;

    background: var(--mc-surface);
}

.mc-service-help__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: clamp(2rem, 5vw, 5rem);
}

.mc-service-help__content {
    max-width: 720px;
}

.mc-service-help .mc-eyebrow {
    margin-bottom: 0.75rem;
}

.mc-service-help h2 {
    margin: 0;

    color: var(--mc-black);

    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: -0.04em;
}

.mc-service-help p {
    max-width: 620px;

    margin:
        0.8rem
        0
        0;

    color: var(--mc-muted);

    font-size: 0.98rem;
    line-height: 1.6;
}

.mc-service-help .mc-button {
    flex: 0 0 auto;
}

/* =========================================================
   POSITIONING & GO-TO-MARKET DETAIL
   ========================================================= */

.mc-positioning-hero {
    padding: clamp(3rem, 6vw, 5.5rem) 0 clamp(4rem, 7vw, 6.5rem);
    background: linear-gradient(135deg, #fffdf8 0%, #fff8e6 100%);
}

.mc-positioning-hero__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .92fr);
    gap: clamp(2rem, 6vw, 6rem);
    align-items: center;
}

.mc-positioning-hero h1 {
    max-width: 650px;
    margin: 0;
    color: var(--mc-black);
    font-size: clamp(3rem, 6.2vw, 6rem);
    font-weight: 740;
    line-height: .95;
    letter-spacing: -.065em;
}

.mc-positioning-hero__lead {
    max-width: 570px;
    margin: 1.5rem 0 1.8rem;
    color: var(--mc-muted);
    font-size: clamp(1.05rem, 1.7vw, 1.25rem);
    line-height: 1.6;
}

.mc-positioning-hero__image {
    margin: 0;
    overflow: hidden;
    border-radius: 1.25rem;
    background: var(--mc-white);
    box-shadow: 0 24px 60px rgba(41, 39, 31, .1);
}

.mc-positioning-hero__image img {
    display: block;
    width: 100%;
    height: auto;
}

.mc-positioning-intro,
.mc-positioning-process {
    padding: clamp(4.2rem, 7vw, 6.5rem) 0;
    background: var(--mc-surface);
}

.mc-positioning-intro__inner,
.mc-positioning-process__inner {
    display: grid;
    grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr);
    gap: clamp(2.5rem, 7vw, 7rem);
    align-items: start;
}

.mc-positioning-intro h2,
.mc-positioning-process h2 {
    max-width: 520px;
    margin: 0;
    color: var(--mc-black);
    font-size: clamp(2rem, 3.5vw, 3.3rem);
    line-height: 1.03;
    letter-spacing: -.05em;
}

.mc-positioning-intro__body {
    max-width: 700px;
}

.mc-positioning-intro__body p,
.mc-positioning-process__steps p {
    margin: 0 0 1.2rem;
    color: var(--mc-muted);
    font-size: 1.03rem;
    line-height: 1.72;
}

.mc-positioning-pillars {
    padding: clamp(4.2rem, 7vw, 6.5rem) 0;
    background: var(--mc-black);
    color: var(--mc-white);
}

.mc-positioning-pillars .mc-eyebrow,
.mc-positioning-pillar-grid span {
    color: var(--mc-yellow);
}

.mc-positioning-pillar-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.5rem;
    margin-top: 2.5rem;
}

.mc-positioning-pillar-grid article {
    padding-top: 1.2rem;
    border-top: 1px solid rgba(255, 255, 255, .24);
}

.mc-positioning-pillar-grid span {
    font-size: .78rem;
    font-weight: 750;
    letter-spacing: .08em;
}

.mc-positioning-pillar-grid h3 {
    margin: 2.2rem 0 .7rem;
    color: var(--mc-white);
    font-size: 1.25rem;
}

.mc-positioning-pillar-grid p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    line-height: 1.6;
}

.mc-positioning-process__steps > div {
    padding: 1.2rem 0;
    border-top: 1px solid var(--mc-border);
}

.mc-positioning-process__steps strong {
    display: block;
    margin-bottom: .45rem;
    color: var(--mc-black);
    font-size: 1.25rem;
}

.mc-positioning-process__steps p {
    margin-bottom: 0;
}

.mc-positioning-cta {
    background: var(--mc-yellow-soft, #fff8e6);
}

.mc-container {
    width: min(calc(100% - 3rem), var(--mc-container));
}

.mc-page {
    padding:
        clamp(3rem, 5vw, 5rem)
        0;
}

.mc-page__header {
    margin-bottom: 2.25rem;
}

.mc-service-hero {
    padding:
        clamp(3rem, 5vw, 4.6rem)
        0
        clamp(2.2rem, 4vw, 3.2rem);
}

.mc-service-hero__title {
    font-size: clamp(2.5rem, 4.7vw, 4.4rem);
}

body.page-id-1263 main .mc-page__header,
body.page-id-1268 main .mc-page__header,
body.page-id-1266 main .mc-page__header {
    min-height: clamp(380px, 32vw, 470px);
    padding-top: clamp(3rem, 5vw, 4.8rem) !important;
    padding-bottom: 2.5rem !important;
}

body.page-id-1263 main .mc-page__header h1,
body.page-id-1268 main .mc-page__header h1,
body.page-id-1266 main .mc-page__header h1 {
    font-size: clamp(2.5rem, 4.7vw, 4.5rem);
}

.mc-home-reality,
.mc-home-approach,
.mc-home-partnership,
.mc-home-closing {
    padding-top: clamp(3.2rem, 5vw, 4.8rem);
    padding-bottom: clamp(3.2rem, 5vw, 4.8rem);
}

.mc-home-reality .mc-section-title {
    font-size: clamp(2.05rem, 3.7vw, 3.45rem);
}

.mc-home-closing__title {
    font-size: clamp(2.45rem, 4.8vw, 4.6rem);
}

.mc-steps--horizontal {
    margin-top: 2.25rem;
}

.mc-home-partnership__image img {
    min-height: 0;
    max-height: 460px;
}

/* MoClarusCRM entry page: same site, with a focused workspace feel. */
body.page-id-2310 main .mc-page__header {
    width: 100%;
    max-width: 1140px;
    min-height: clamp(320px, 25vw, 390px);
    margin-left: 0;
    padding: clamp(3rem, 5vw, 4.6rem) clamp(1.25rem, 5vw, 4rem) !important;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    background: linear-gradient(135deg, #102526 0%, #1d3b3b 62%, #314c48 100%);
    border-radius: 0 0 1.25rem 1.25rem;
}

body.page-id-2310 main .mc-page__header h1 {
    max-width: 620px;
    margin: 0;
    color: var(--mc-white);
    font-size: clamp(2.7rem, 5vw, 4.8rem);
    line-height: .98;
    letter-spacing: -.055em;
}

body.page-id-2310 main .mc-page__content {
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

body.page-id-2310 main .mc-page__content .mc-crm-lead {
    max-width: 680px;
    margin-bottom: 2.5rem;
    color: var(--mc-black);
    font-size: clamp(1.2rem, 2vw, 1.45rem);
    line-height: 1.5;
}

body.page-id-2310 main .mc-page__content h2 {
    margin: 2.8rem 0 1rem;
    color: var(--mc-black);
    font-size: clamp(1.8rem, 3vw, 2.7rem);
    letter-spacing: -.04em;
}

body.page-id-2310 main .mc-page__content p {
    color: #55534c;
    font-size: 1rem;
    line-height: 1.7;
}

.mc-crm-panels {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin: 2rem 0 3rem;
}

.mc-crm-panel {
    padding: 1.4rem;
    border: 1px solid var(--mc-border);
    border-radius: var(--mc-radius);
    background: var(--mc-white);
}

.mc-crm-panel__label {
    display: block;
    margin-bottom: 1.2rem;
    color: var(--mc-yellow-dark);
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.mc-crm-panel h2 {
    margin: 0 0 .5rem;
    color: var(--mc-black);
    font-size: 1.1rem;
}

.mc-crm-panel p {
    margin: 0;
    font-size: 1rem !important;
    line-height: 1.6 !important;
}

.mc-crm-note {
    margin-top: 2rem;
    padding: 1rem 1.2rem;
    border-left: 3px solid var(--mc-yellow);
    background: var(--mc-yellow-soft);
}

@media (max-width: 782px) {
    body.page-id-2310 main .mc-page__header {
        min-height: 300px;
        padding: 2.75rem 1.25rem !important;
    }

    body.page-id-2310 main .mc-page__header h1 {
        font-size: clamp(2.5rem, 11vw, 3.7rem);
    }

    body.page-id-2310 main .mc-page__content {
        padding: 2.75rem 0;
    }

    .mc-crm-panels {
        grid-template-columns: 1fr;
    }
}

/* Product-specific details inside the shared public hero frame. */
.mc-product__title {
    width: fit-content;
}

.mc-product__title::after {
    content: "";
    display: block;
    height: .06em;
    margin-top: .12em;
    background: var(--mc-yellow);
    border-radius: 999px;
}

.mc-product__lead p {
    margin: 0;
}

.mc-product__local-note {
    margin: .85rem 0 0;
    color: var(--mc-muted);
    font-size: .84rem;
}

.mc-product__visual {
    width: 100%;
    aspect-ratio: var(--mc-hero-media-ratio);
    overflow: hidden;
    border: 1px solid var(--mc-border);
    border-radius: 18px;
    background: var(--mc-white);
    box-shadow: 0 22px 55px rgba(32, 29, 19, .07);
}

.mc-product__visual-top {
    height: 16%;
    display: flex;
    align-items: center;
    gap: .7rem;
    padding: 0 5%;
    border-bottom: 1px solid var(--mc-border);
    color: var(--mc-muted);
    font-size: clamp(.65rem, .9vw, .8rem);
    font-weight: 750;
    letter-spacing: .12em;
}

.mc-product__visual-mark {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.1rem;
    height: 2.1rem;
    border: 1px solid var(--mc-black);
    border-radius: .4rem;
    color: var(--mc-black);
    font-size: .85rem;
    letter-spacing: -.14em;
    background: #fff url('../images/cropped-favicon.png') center / 72% no-repeat;
    color: transparent;
    font-size: 0;
}

.mc-product__visual-mark span { display: none; }
.mc-product__visual-dots { display: flex; gap: .3rem; margin-left: auto; }
.mc-product__visual-dots i { width: .35rem; height: .35rem; border-radius: 50%; background: var(--mc-border); }
.mc-product__visual-body { display: grid; grid-template-columns: 18% 1fr; height: 84%; }
.mc-product__visual-rail { display: flex; flex-direction: column; gap: 9%; padding: 28% 26%; border-right: 1px solid var(--mc-border); background: #faf8f1; }
.mc-product__visual-rail i { width: 100%; height: 5%; border-radius: 999px; background: #dedbd1; }
.mc-product__visual-rail i:first-child { background: var(--mc-yellow); }
.mc-product__visual-content { padding: 10% 9%; }
.mc-product__visual-kicker, .mc-product__visual-heading, .mc-product__visual-line { display: block; border-radius: 999px; }
.mc-product__visual-kicker { width: 24%; height: 2%; background: var(--mc-yellow); }
.mc-product__visual-heading { width: 58%; height: 7%; margin-top: 5%; background: var(--mc-black); }
.mc-product__visual-line { width: 78%; height: 2%; margin-top: 5%; background: var(--mc-border); }
.mc-product__visual-line--short { width: 50%; margin-top: 7%; }
.mc-product__visual-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3%; height: 38%; margin-top: 8%; }
.mc-product__visual-cards i { border: 1px solid var(--mc-border); border-radius: .65rem; background: var(--mc-surface); }
.mc-product__visual-cards i:nth-child(2) { background: var(--mc-yellow-soft); }

.mc-product__details { padding: var(--space-section) 0; }
.mc-product__content { max-width: 900px; margin-inline: auto; }
.mc-product__content h2 { margin: 0 0 1rem; color: var(--mc-black); font-size: var(--font-size-h2); font-weight: var(--font-weight-heading); line-height: var(--line-height-heading); letter-spacing: -.045em; }
.mc-product__content h2:not(:first-child) { margin-top: var(--space-xl); }
.mc-product__content > p { max-width: var(--mc-content); margin: 0 0 1.5rem; color: var(--mc-muted); font-size: var(--font-size-body); line-height: var(--line-height-body); }
.mc-product__content .mc-crm-panels { margin: 2.25rem 0 0; }
.mc-product__content .mc-crm-panel { padding: clamp(1.5rem, 2.5vw, 2rem); }
.mc-product__content .mc-crm-panel h2 { font-size: 1.2rem; }
.mc-product__content .mc-crm-panel p { color: var(--mc-muted); }
.mc-product__content .mc-crm-note { max-width: 720px; margin-top: 2rem; }

.mc-product__closing { padding: var(--space-section) 0; background: var(--mc-yellow-soft); }
.mc-product__closing-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.mc-product__closing .mc-button { flex: none; }

@media (max-width: 780px) {
    .mc-product__title { overflow-wrap: anywhere; }
    .mc-product__visual { max-width: 580px; }
    .mc-product__closing-inner { align-items: flex-start; flex-direction: column; }
}

/* MoClarusCRM Dashboard */
body.page-id-2312 main .mc-page__header {
    width: 100%;
    max-width: 1140px;
    min-height: clamp(260px, 22vw, 340px);
    margin-left: 0;
    padding: clamp(2.75rem, 5vw, 4rem) clamp(1.25rem, 5vw, 4rem) !important;
    display: flex;
    align-items: flex-end;
    box-sizing: border-box;
    background: linear-gradient(135deg, #102526 0%, #1d3b3b 62%, #314c48 100%);
    border-radius: 0 0 1.25rem 1.25rem;
}

body.page-id-2312 main .mc-page__header h1 {
    margin: 0;
    color: var(--mc-white);
    font-size: clamp(2.5rem, 4.8vw, 4.4rem);
    line-height: .98;
    letter-spacing: -.055em;
}

body.page-id-2312 main .mc-page__content {
    max-width: 1140px;
    margin: 0 auto;
    padding: clamp(2.75rem, 5vw, 4.5rem) 0;
}

body.page-id-2312 main .mc-crm-dashboard-intro {
    max-width: 720px;
    margin-bottom: 2.2rem;
}

body.page-id-2312 main .mc-crm-lead {
    margin: 0 0 .7rem;
    color: var(--mc-black);
    font-size: clamp(1.15rem, 2vw, 1.4rem);
    line-height: 1.5;
}

body.page-moclarus-crm-dashboard main .mc-crm-muted {
    margin: 0;
    color: var(--mc-muted);
    font-size: 1rem;
    line-height: 1.65;
}

.mc-crm-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.mc-crm-dashboard-card {
    min-height: 220px;
    padding: clamp(1.35rem, 2.5vw, 2rem);
    border: 1px solid var(--mc-border);
    border-radius: var(--mc-radius);
    background: var(--mc-white);
    box-shadow: 0 12px 32px rgba(41, 39, 31, .045);
}

.mc-crm-dashboard-card--wide {
    grid-column: span 2;
    min-height: 240px;
    background: #f5f2e9;
}

.mc-crm-dashboard-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.mc-crm-dashboard-label {
    display: block;
    color: var(--mc-muted);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .13em;
}

.mc-crm-dashboard-status {
    padding: .35rem .6rem;
    border-radius: 999px;
    background: #e5f0e7;
    color: #32613d;
    font-size: .72rem;
    font-weight: 700;
}

.mc-crm-dashboard-card h2 {
    max-width: 620px;
    margin: 1.5rem 0 .8rem;
    color: var(--mc-black);
    font-size: clamp(1.7rem, 3vw, 2.7rem);
    line-height: 1.06;
    letter-spacing: -.04em;
}

.mc-crm-dashboard-card p {
    max-width: 620px;
    margin: 0 0 1rem;
    color: var(--mc-muted);
    font-size: .95rem;
    line-height: 1.6;
}

.mc-crm-dashboard-number {
    display: block;
    margin: 1.5rem 0 .2rem;
    color: var(--mc-black);
    font-size: 3.2rem;
    line-height: 1;
}

.mc-crm-dashboard-link,
.mc-crm-dashboard-action {
    color: var(--mc-black);
    font-size: .88rem;
    font-weight: 750;
    text-decoration-color: var(--mc-yellow);
    text-decoration-thickness: 3px;
    text-underline-offset: 4px;
}

.mc-crm-dashboard-action--muted {
    color: var(--mc-muted);
    text-decoration: none;
}

@media (max-width: 782px) {
    body.page-id-2312 main .mc-page__header {
        min-height: 250px;
        padding: 2.5rem 1.25rem !important;
    }

    body.page-id-2312 main .mc-page__header h1 {
        font-size: clamp(2.35rem, 11vw, 3.6rem);
    }

    body.page-id-2312 main .mc-page__content {
        padding: 2.75rem 0;
    }

    .mc-crm-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .mc-crm-dashboard-card--wide {
        grid-column: auto;
    }
}

/* CRM application dashboard */
body.page-id-2312 {
    background: #eef4fb;
}

body.page-id-2312 .mc-header,
body.page-id-2312 .mc-footer,
body.page-id-2312 main .mc-page__header {
    display: none !important;
}

body.page-id-2312 main .mc-page {
    padding: 0 !important;
}

body.page-id-2312 main .mc-container,
body.page-id-2312 main .mc-page__content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mc-crm-app {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 230px minmax(0, 1fr);
    background: #eef4fb;
    color: #193452;
}

.mc-crm-app__sidebar {
    position: sticky;
    top: 0;
    height: 100vh;
    display: flex;
    flex-direction: column;
    padding: 1.65rem 1rem 1rem;
    background: linear-gradient(180deg, #264878 0%, #183456 100%);
    color: #edf5ff;
}

.mc-crm-app__brand {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: 0 .65rem 1.6rem;
}

.mc-crm-app__brand-mark {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border: 2px solid rgba(255,255,255,.7);
    border-radius: 10px;
    background: rgba(255,255,255,.12);
    color: #fff;
    font-size: .8rem;
    font-weight: 800;
}

.mc-crm-app__brand strong,
.mc-crm-app__brand small,
.mc-crm-app__profile strong,
.mc-crm-app__profile small {
    display: block;
}

.mc-crm-app__brand strong {
    font-size: 1.15rem;
    letter-spacing: .04em;
}

.mc-crm-app__brand small,
.mc-crm-app__profile small {
    color: #a9c1df;
    font-size: .72rem;
}

.mc-crm-app__nav {
    display: flex;
    flex-direction: column;
    gap: .18rem;
}

.mc-crm-app__nav-label {
    margin: .55rem .65rem .25rem;
    color: #a9c1df;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.mc-crm-app__nav a {
    display: flex;
    align-items: center;
    gap: .65rem;
    min-height: 36px;
    padding: .45rem .65rem;
    border-radius: 7px;
    color: #edf5ff;
    font-size: .86rem;
    font-weight: 650;
    text-decoration: none;
}

.mc-crm-app__nav a span {
    width: 18px;
    color: #c5dcf8;
    font-size: 1rem;
    text-align: center;
}

.mc-crm-app__nav a:hover,
.mc-crm-app__nav a.is-active {
    background: rgba(87, 151, 235, .42);
    box-shadow: inset 0 0 0 1px rgba(166, 211, 255, .18);
}

.mc-crm-app__profile {
    display: flex;
    align-items: center;
    gap: .65rem;
    margin-top: auto;
    padding: 1rem .65rem 0;
    border-top: 1px solid rgba(255,255,255,.12);
}

.mc-crm-app__avatar {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e6b94d;
    color: #183456;
    font-size: .7rem;
    font-weight: 800;
}

.mc-crm-app__profile strong {
    font-size: .78rem;
}

.mc-crm-app__profile i {
    color: #65d4a3;
    font-style: normal;
}

.mc-crm-app__workspace {
    min-width: 0;
}

.mc-crm-app__topbar {
    min-height: 142px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 1.8rem clamp(1.5rem, 3vw, 3.3rem);
    background: linear-gradient(110deg, #f8fbff 0%, #e6f0fb 100%);
    border-bottom: 1px solid #d9e6f5;
}

.mc-crm-app__eyebrow {
    color: #2265c3;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.mc-crm-app__topbar h1 {
    margin: .35rem 0 .15rem;
    color: #193452;
    font-size: clamp(1.7rem, 3vw, 2.5rem);
    line-height: 1.05;
    letter-spacing: -.035em;
}

.mc-crm-app__topbar p {
    margin: 0;
    color: #647a94;
    font-size: .88rem;
}

.mc-crm-app__tools {
    display: flex;
    align-items: center;
    gap: .55rem;
}

.mc-crm-app__tools button {
    min-height: 38px;
    padding: .55rem .8rem;
    border: 1px solid #d6e1ef;
    border-radius: 9px;
    background: #fff;
    color: #506882;
    font-size: .8rem;
    font-weight: 650;
}

.mc-crm-app__tools button:first-child {
    min-width: 148px;
    text-align: left;
}

.mc-crm-app__main {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: clamp(1.25rem, 2.5vw, 2.5rem);
}

.mc-crm-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.mc-crm-stat-card,
.mc-crm-module,
.mc-crm-next {
    border: 1px solid #d9e5f2;
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(43, 75, 112, .05);
}

.mc-crm-stat-card {
    min-height: 138px;
    padding: 1.25rem 1.35rem;
}

.mc-crm-stat-card--accent {
    background: linear-gradient(120deg, #fff 0%, #e9f3ff 100%);
}

.mc-crm-stat-card h2 {
    margin: 0;
    color: #29425e;
    font-size: .76rem;
    line-height: 1.25;
}

.mc-crm-stat-card strong {
    display: block;
    margin: .75rem 0 .2rem;
    color: #1a3655;
    font-size: 1.75rem;
    line-height: 1;
}

.mc-crm-stat-card p,
.mc-crm-module__header p,
.mc-crm-next p,
.mc-crm-empty p {
    margin: 0;
    color: #74879b;
    font-size: .76rem;
}

.mc-crm-module__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.2rem;
    border-bottom: 1px solid #e4edf6;
}

.mc-crm-module__header > div:first-child {
    display: flex;
    align-items: center;
    gap: .75rem;
}

.mc-crm-module__header h2 {
    margin: 0 0 .15rem;
    color: #243e5c;
    font-size: .98rem;
}

.mc-crm-module__icon,
.mc-crm-next__icon {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #e9f3ff;
    color: #2d79d8;
    font-size: 1rem;
}

.mc-crm-module__icon--yellow {
    background: #fff6dc;
    color: #d49b19;
}

.mc-crm-module__header a,
.mc-crm-next a,
.mc-crm-empty a {
    color: #1f69c8;
    font-size: .76rem;
    font-weight: 750;
    text-decoration: none;
}

.mc-crm-pill {
    display: inline-flex;
    margin-right: .75rem;
    padding: .45rem .7rem;
    border: 1px solid #d9e8fa;
    border-radius: 999px;
    background: #f2f8ff;
    color: #2167c3;
    font-size: .72rem;
    font-weight: 750;
}

.mc-crm-week {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: .6rem;
    padding: 1rem 1.2rem 1.2rem;
}

.mc-crm-week article {
    position: relative;
    min-height: 108px;
    padding: .8rem .7rem;
    border: 1px solid #e1eaf4;
    border-radius: 10px;
    background: #fbfdff;
}

.mc-crm-week article.is-today {
    border-color: #76aaf0;
    background: #f1f6ff;
    box-shadow: 0 0 0 1px #c8ddfa;
}

.mc-crm-week b {
    display: block;
    color: #5e7590;
    font-size: .65rem;
}

.mc-crm-week strong {
    display: block;
    margin-top: .2rem;
    color: #273f5b;
    font-size: .95rem;
}

.mc-crm-week article > span {
    position: absolute;
    top: .65rem;
    right: .65rem;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e9f3ff;
    color: #1e68c8;
    font-size: .68rem;
    font-weight: 800;
}

.mc-crm-week p {
    margin: 1rem 0 0;
    color: #71849a;
    font-size: .68rem;
    white-space: nowrap;
}

.mc-crm-week p i {
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: .25rem;
    border-radius: 50%;
    background: #40c69a;
}

.mc-crm-next {
    display: flex;
    align-items: center;
    gap: .9rem;
    padding: 1.1rem 1.25rem;
    background: linear-gradient(110deg, #f5fcfb 0%, #effaff 100%);
}

.mc-crm-next > div:nth-child(2) {
    flex: 1;
}

.mc-crm-next > div:nth-child(2) > span {
    color: #2877d2;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.mc-crm-next h2 {
    margin: .2rem 0 .15rem;
    color: #24415e;
    font-size: 1rem;
}

.mc-crm-next a {
    padding: .7rem .95rem;
    border-radius: 8px;
    background: #2b77d7;
    color: #fff;
}

.mc-crm-empty {
    min-height: 230px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: .45rem;
    padding: 2rem;
    text-align: center;
}

.mc-crm-empty > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e9f8f1;
    color: #30aa7d;
    font-size: 1.15rem;
}

.mc-crm-empty h2 {
    margin: .25rem 0 0;
    color: #29425e;
    font-size: .95rem;
}

.mc-crm-empty a {
    margin-top: .6rem;
}

@media (max-width: 980px) {
    .mc-crm-app {
        grid-template-columns: 190px minmax(0, 1fr);
    }

    .mc-crm-week {
        overflow-x: auto;
        grid-template-columns: repeat(7, minmax(120px, 1fr));
    }
}

@media (max-width: 700px) {
    .mc-crm-app {
        display: block;
    }

    .mc-crm-app__sidebar {
        position: static;
        height: auto;
        padding: 1rem;
    }

    .mc-crm-app__brand {
        padding-bottom: 1rem;
    }

    .mc-crm-app__nav {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mc-crm-app__nav-label {
        grid-column: 1 / -1;
    }

    .mc-crm-app__profile {
        display: none;
    }

    .mc-crm-app__topbar {
        align-items: flex-start;
        flex-direction: column;
        gap: 1rem;
    }

    .mc-crm-app__tools {
        width: 100%;
    }

    .mc-crm-app__tools button:first-child {
        flex: 1;
    }

    .mc-crm-stat-grid {
        grid-template-columns: 1fr;
    }

    .mc-crm-module__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .mc-crm-next {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .mc-crm-next a {
        margin-left: 2.4rem;
    }
}

/* Align the CRM dashboard with the MoClarus visual system. */
body.page-id-2312 {
    background: var(--mc-background);
}

body.page-id-2312 .mc-crm-app {
    background: var(--mc-background);
    color: var(--mc-text);
}

body.page-id-2312 .mc-crm-app__sidebar {
    background: var(--mc-black);
    color: var(--mc-white);
}

body.page-id-2312 .mc-crm-app__brand-mark {
    border-color: var(--mc-yellow);
    background: transparent;
    color: var(--mc-yellow);
}

body.page-id-2312 .mc-crm-app__brand small,
body.page-id-2312 .mc-crm-app__profile small,
body.page-id-2312 .mc-crm-app__nav-label {
    color: #aaa9a1;
}

body.page-id-2312 .mc-crm-app__nav a {
    color: #e7e5dc;
}

body.page-id-2312 .mc-crm-app__nav a span {
    color: #b8b6ac;
}

body.page-id-2312 .mc-crm-app__nav a:hover,
body.page-id-2312 .mc-crm-app__nav a.is-active {
    background: var(--mc-yellow);
    color: var(--mc-black);
    box-shadow: none;
}

body.page-id-2312 .mc-crm-app__nav a:hover span,
body.page-id-2312 .mc-crm-app__nav a.is-active span {
    color: var(--mc-black);
}

body.page-id-2312 .mc-crm-app__profile {
    border-top-color: #343430;
}

body.page-id-2312 .mc-crm-app__avatar {
    background: var(--mc-yellow);
    color: var(--mc-black);
}

body.page-id-2312 .mc-crm-app__topbar {
    background: linear-gradient(110deg, #fffdf8 0%, #fff6d9 100%);
    border-bottom-color: var(--mc-border);
}

body.page-id-2312 .mc-crm-app__eyebrow {
    color: #8a6b00;
}

body.page-id-2312 .mc-crm-app__topbar h1,
body.page-id-2312 .mc-crm-app__topbar p {
    color: var(--mc-black);
}

body.page-id-2312 .mc-crm-app__topbar p {
    color: var(--mc-muted);
}

body.page-id-2312 .mc-crm-app__tools button {
    border-color: var(--mc-border);
    background: var(--mc-white);
    color: var(--mc-text);
}

body.page-id-2312 .mc-crm-stat-card,
body.page-id-2312 .mc-crm-module,
body.page-id-2312 .mc-crm-next {
    border-color: var(--mc-border);
    background: var(--mc-white);
    box-shadow: 0 8px 22px rgba(41, 39, 31, .045);
}

body.page-id-2312 .mc-crm-stat-card--accent {
    background: linear-gradient(120deg, #fff 0%, #fff8e6 100%);
}

body.page-id-2312 .mc-crm-stat-card h2,
body.page-id-2312 .mc-crm-stat-card strong,
body.page-id-2312 .mc-crm-module__header h2,
body.page-id-2312 .mc-crm-next h2,
body.page-id-2312 .mc-crm-empty h2,
body.page-id-2312 .mc-crm-week strong {
    color: var(--mc-black);
}

body.page-id-2312 .mc-crm-stat-card p,
body.page-id-2312 .mc-crm-module__header p,
body.page-id-2312 .mc-crm-next p,
body.page-id-2312 .mc-crm-empty p {
    color: var(--mc-muted);
}

body.page-id-2312 .mc-crm-module__header {
    border-bottom-color: var(--mc-border);
}

body.page-id-2312 .mc-crm-module__icon {
    background: var(--mc-yellow-soft);
    color: #8a6b00;
}

body.page-id-2312 .mc-crm-module__icon--yellow {
    background: var(--mc-yellow-soft);
    color: #8a6b00;
}

body.page-id-2312 .mc-crm-pill {
    border-color: #eadba4;
    background: var(--mc-yellow-soft);
    color: #7a5f00;
}

body.page-id-2312 .mc-crm-week article {
    border-color: var(--mc-border);
    background: #fffefa;
}

body.page-id-2312 .mc-crm-week article.is-today {
    border-color: var(--mc-yellow);
    background: #fff8e6;
    box-shadow: 0 0 0 1px #f1d66f;
}

body.page-id-2312 .mc-crm-week b,
body.page-id-2312 .mc-crm-week p {
    color: var(--mc-muted);
}

body.page-id-2312 .mc-crm-week article > span {
    background: var(--mc-yellow-soft);
    color: #7a5f00;
}

body.page-id-2312 .mc-crm-next {
    background: linear-gradient(110deg, #fffdf8 0%, #f5f2e9 100%);
}

body.page-id-2312 .mc-crm-next__icon {
    background: var(--mc-yellow-soft);
    color: #8a6b00;
}

body.page-id-2312 .mc-crm-next > div:nth-child(2) > span,
body.page-id-2312 .mc-crm-module__header a,
body.page-id-2312 .mc-crm-empty a {
    color: #806300;
}

body.page-id-2312 .mc-crm-next a {
    background: var(--mc-yellow);
    color: var(--mc-black);
}

body.page-id-2312 .mc-crm-empty > span {
    background: #e9f3e9;
    color: #4c8058;
}

/* Keep CRM controls available while scrolling through the workspace. */
body.page-id-2312 .mc-crm-app__topbar {
    position: sticky;
    top: 0;
    z-index: 50;
}

body.admin-bar.page-id-2312 .mc-crm-app__topbar {
    top: 32px;
}

@media (max-width: 700px) {
    body.admin-bar.page-id-2312 .mc-crm-app__topbar {
        top: 46px;
    }
}

/* Keep the main MoClarus navigation available inside the CRM area. */
body.page-id-2312 .mc-header {
    display: block !important;
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: var(--mc-background);
    width: 100% !important;
    min-height: 68px !important;
    height: 68px !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
}

body.admin-bar.page-id-2312 .mc-header {
    top: 32px;
}

body.page-id-2312 .mc-crm-app {
    margin-top: 68px;
}

body.page-id-2312 .mc-header__inner {
    display: flex !important;
    min-height: 68px;
    width: calc(100% - 4rem) !important;
    max-width: var(--mc-container, 1140px) !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

body.page-id-2312 .mc-header .mc-navigation,
body.page-id-2312 .mc-header .mc-navigation__menu,
body.page-id-2312 .mc-header .mc-navigation__crm {
    visibility: visible !important;
    opacity: 1 !important;
}

body.page-id-2312 .mc-crm-app__topbar {
    top: 68px;
}

body.admin-bar.page-id-2312 .mc-crm-app__topbar {
    top: 100px;
}

@media (max-width: 782px) {
    .mc-container {
        width: calc(100% - 2rem);
    }

    body.page-id-2312 .mc-header {
        height: 62px !important;
        min-height: 62px !important;
    }

    body.page-id-2312 .mc-crm-app {
        margin-top: 62px;
    }

    body.page-id-2312 .mc-crm-app__topbar {
        top: 62px;
    }

    body.admin-bar.page-id-2312 .mc-crm-app__topbar {
        top: 108px;
    }

    body.page-id-1263 main .mc-page__header,
    body.page-id-1268 main .mc-page__header,
    body.page-id-1266 main .mc-page__header {
        min-height: 350px;
        padding: 2.75rem 1.25rem !important;
    }

    body.page-id-1263 main .mc-page__header h1,
    body.page-id-1268 main .mc-page__header h1,
    body.page-id-1266 main .mc-page__header h1 {
        font-size: clamp(2.35rem, 11vw, 3.7rem);
    }

    .mc-home-reality,
    .mc-home-approach,
    .mc-home-partnership,
    .mc-home-closing {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }

    .mc-home-closing__title {
        font-size: clamp(2.35rem, 11vw, 3.7rem);
    }
}

/* Keep service-page headlines and explanatory copy on the same readable scale. */
.mc-positioning-hero h1 {
    font-size: clamp(2.5rem, 5vw, 4rem);
    line-height: 1.03;
}

.mc-home-reality__list p,
.mc-step p,
.mc-service-choice-card p,
.mc-service-context__principles p,
.mc-service-help__content > p:not(.mc-eyebrow) {
    font-size: 1rem;
    line-height: 1.6;
}

/* Let the service and contact heroes meet the line beneath navigation. */
body.page-id-1264 .mc-page,
body.page-id-1268 .mc-page,
body.page-id-1266 .mc-page {
    padding-top: 0;
}

body.page-id-1264 main .mc-page__header {
    margin-top: -1.5rem;
}

body.page-id-1263 .mc-page {
    padding-top: 1.5rem;
}

body.home #mc-home-title {
    font-size: var(--font-size-h1);
    line-height: var(--line-height-heading);
}

body.home .mc-site-hero {
    height: auto;
    min-height: var(--mc-hero-height-desktop);
    overflow: visible;
}

body.home .mc-site-hero__grid {
    height: auto;
}

body.home .mc-site-hero__content,
body.home .mc-site-hero__visual,
body.home .mc-home-reality__grid > *,
body.home .mc-home-partnership__grid > *,
body.home .mc-steps--horizontal .mc-step {
    min-width: 0;
}

body.home .mc-home-hero__title span,
body.home .mc-button {
    max-width: 100%;
}

body.home .mc-button {
    white-space: normal;
    text-align: center;
}

body.home #mc-home-title span::after {
    transform: none;
}

body.home .mc-home-hero__lead,
body.home .mc-home-hero__audience {
    margin-top: var(--space-md);
}

body.home .mc-home-hero__visual {
    background: transparent;
    box-shadow: none;
}

body.home .mc-home-hero__image {
    margin: 0;
    padding: 0;
    background: transparent;
}

body.home .mc-home-hero__img {
    display: block;
    border-radius: 1.25rem;
    box-shadow: 0 18px 44px rgba(24, 24, 24, .08);
}

body.home .mc-home-hero__note {
    display: block;
    width: auto;
    margin: 1.1rem 0 0;
    padding: 0 0 0 1rem;
    background: transparent;
    border: 0;
    border-left: 3px solid #f4c430;
    border-radius: 0;
    box-shadow: none;
}

body.home .mc-home-hero__note::before {
    display: none;
}

body.home .mc-home-reality__list h3,
body.home .mc-step h3 {
    font-size: 1.04rem;
}

body.home .mc-home-reality__list p,
body.home .mc-step p {
    font-size: 0.98rem;
    line-height: 1.6;
}

body.home .mc-footer__brand .custom-logo {
    filter: brightness(0) invert(1);
}

/* The selected WordPress images replace duplicate CSS background downloads. */
body.home main.mc-home .mc-home-hero__image,
body.home main.mc-home .mc-home-partnership__image {
    min-height: 0;
    background: none;
}

body.home main.mc-home .mc-home-hero__image {
    aspect-ratio: var(--mc-hero-media-ratio);
}

body.home main.mc-home .mc-home-partnership__image {
    aspect-ratio: 1;
    background: var(--mc-background);
}

body.home main.mc-home .mc-home-partnership__image picture {
    display: block;
    width: 100%;
    height: 100%;
}

body.home main.mc-home .mc-home-hero__image img {
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center 56%;
    opacity: 1;
}

body.home main.mc-home .mc-home-partnership__image img {
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    object-fit: contain;
    object-position: center;
    background: var(--mc-background);
}

body.home .mc-steps--horizontal {
    gap: clamp(1rem, 2vw, 1.8rem);
    border-bottom: 0;
}

body.home .mc-steps--horizontal .mc-step,
body.home .mc-steps--horizontal .mc-step:first-child,
body.home .mc-steps--horizontal .mc-step:last-child {
    padding: 1.55rem 0 1.35rem;
    border-right: 0;
}

@media (min-width: 981px) {
    body.home .mc-steps--horizontal .mc-step h3 {
        min-height: 2.6em;
    }
}

@media (max-width: 980px) {
    body.home .mc-site-hero__grid {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "content"
            "image";
    }

    body.home .mc-site-hero__visual {
        justify-self: center;
    }

    body.home main.mc-home .mc-home-hero__image {
        aspect-ratio: var(--mc-hero-media-ratio);
    }

    body.home main.mc-home .mc-home-partnership__image {
        aspect-ratio: 1;
    }

    body.home .mc-steps--horizontal {
        gap: 0 clamp(1.5rem, 4vw, 2.5rem);
    }

    body.home .mc-steps--horizontal .mc-step,
    body.home .mc-steps--horizontal .mc-step:first-child,
    body.home .mc-steps--horizontal .mc-step:last-child {
        padding: 1.4rem 0;
        border-right: 0;
        border-bottom: 1px solid var(--mc-border);
    }
}

@media (min-width: 641px) and (max-width: 980px) {
    body.home .mc-steps--horizontal .mc-step:last-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 640px) {
    body.home main.mc-home .mc-home-hero__image {
        aspect-ratio: var(--mc-hero-media-ratio);
    }

    body.home .mc-steps--horizontal {
        gap: 0;
    }
}

/* About uses the same left edge as the other service and company pages. */
body.page-id-1263 main .mc-page__header {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

@media (max-width: 782px) {
    body.page-id-1263 main .mc-page__header {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }
}

/* About Us: editorial sections below the shared public hero. */
.mc-about-section {
    padding: var(--space-section) 0;
}

.mc-about-section--perspective {
    background: #f8f5ed;
}

.mc-about-section--expect {
    background: #fff9eb;
}

.mc-about-section__inner {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: clamp(2.5rem, 7vw, 6rem);
    align-items: start;
}

.mc-about-section h2 {
    max-width: 510px;
    margin: 0;
    color: var(--mc-black);
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: -.045em;
}

.mc-about-section__copy > p,
.mc-about-section__intro > p {
    max-width: 680px;
    margin: 0 0 1.2rem;
    color: #55534c;
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
}

.mc-about-section__copy > p:last-child {
    margin-bottom: 0;
}

.mc-about-section__copy > .mc-about-accent {
    margin-top: 1.7rem;
    padding-left: 1.2rem;
    border-left: 3px solid var(--mc-yellow);
    color: var(--mc-black);
}

.mc-about-principles {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
    margin-top: 2rem;
}

.mc-about-principles > div,
.mc-about-expectations > div {
    padding-top: 1.2rem;
    border-top: 1px solid var(--mc-border);
}

.mc-about-principles h3,
.mc-about-expectations h3 {
    margin: 0 0 .65rem;
    color: var(--mc-black);
    font-size: var(--font-size-h3);
    font-weight: var(--font-weight-heading);
    line-height: 1.25;
}

.mc-about-principles p,
.mc-about-expectations p {
    margin: 0;
    color: #55534c;
    font-size: .98rem;
    line-height: 1.6;
}

.mc-about-section__intro {
    max-width: 760px;
}

.mc-about-section__intro > p {
    margin: 1.25rem 0 0;
}

.mc-about-expectations {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1.5rem, 3vw, 3rem);
    margin-top: 2.8rem;
}

.mc-about-cta {
    padding: var(--space-xl) 0;
    background: #1d1d1b;
    color: #fffdf8;
}

.mc-about-cta__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2.5rem;
}

.mc-about-cta .mc-eyebrow {
    color: var(--mc-yellow);
}

.mc-about-cta h2 {
    max-width: 760px;
    margin: 0;
    color: #fffdf8;
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: -.045em;
}

.mc-about-cta p:not(.mc-eyebrow) {
    max-width: 650px;
    margin: 1rem 0 0;
    color: #dedbd2;
    font-size: 1.04rem;
    line-height: 1.65;
}

.mc-about-cta .mc-button {
    flex: 0 0 auto;
    white-space: nowrap;
}

@media (max-width: 782px) {
    .mc-about-section__inner {
        grid-template-columns: 1fr;
        gap: 1.75rem;
    }

    .mc-about-expectations {
        gap: 1.25rem;
    }

    .mc-about-cta__inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 640px) {
    .mc-about-section {
        padding: 3.5rem 0;
    }

    .mc-about-principles,
    .mc-about-expectations {
        grid-template-columns: 1fr;
    }

    .mc-about-cta .mc-button {
        width: 100%;
    }
}

/* Contact: content below the shared public hero. */
.mc-contact-content {
    padding-top: var(--space-section);
    padding-bottom: var(--space-section);
}

.mc-contact-content > section,
.mc-contact-content > figure {
    margin: 0 auto;
}

.mc-contact-intro,
.mc-contact-process {
    max-width: 900px;
}

.mc-contact-content h2 {
    margin: 0 0 1rem;
    color: var(--mc-black);
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: -.04em;
}

.mc-contact-content p {
    margin: 0;
    color: #55534c;
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
}

.mc-contact-intro p {
    max-width: 720px;
}

.mc-contact-illustration {
    max-width: 1000px;
    padding: clamp(2.5rem, 5vw, 4rem) 0;
}

.mc-contact-illustration img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 1.1rem;
}

.mc-contact-process ol {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1.25rem, 3vw, 2.5rem);
    margin: 2rem 0 0;
    padding: 0;
    list-style: none;
}

.mc-contact-process li {
    min-width: 0;
    padding-top: 1rem;
    border-top: 2px solid var(--mc-yellow);
}

.mc-contact-process h3 {
    margin: 0 0 .55rem;
    color: var(--mc-black);
    font-size: var(--font-size-h3);
    font-weight: var(--font-weight-heading);
    line-height: 1.25;
}

.mc-contact-process li p {
    font-size: .99rem;
}

.mc-contact-process__expectation {
    max-width: 720px;
    margin-top: 2rem !important;
}

.mc-contact-form-section {
    max-width: 900px;
    margin-top: clamp(3.5rem, 6vw, 5.5rem) !important;
    padding: clamp(1.5rem, 4vw, 3rem);
    border: 1px solid var(--mc-border);
    border-radius: var(--mc-radius-large);
    background: #fffaf0;
}

.mc-contact-form-section > p {
    max-width: 670px;
}

.mc-contact-form-section .wpcf7 {
    margin-top: 2rem;
}

.mc-contact-form-section .wpcf7 form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 1.25rem;
}

.mc-contact-form-section .wpcf7 form > p {
    min-width: 0;
    margin: 0 0 1.25rem;
}

.mc-contact-form-section .wpcf7 form > p:nth-of-type(n+5),
.mc-contact-form-section .wpcf7 form > .wpcf7-response-output {
    grid-column: 1 / -1;
}

.mc-contact-form-section .wpcf7 label {
    display: block;
    color: var(--mc-black);
    font-size: .94rem;
    font-weight: 650;
    line-height: 1.5;
}

.mc-contact-form-section .wpcf7 input:not([type="submit"]),
.mc-contact-form-section .wpcf7 textarea {
    display: block;
    width: 100%;
    min-height: 48px;
    margin-top: .45rem;
    padding: .85rem .95rem;
    border: 1px solid #d9d3c5;
    border-radius: .6rem;
    background: #fff;
    color: var(--mc-black);
    font: inherit;
    font-size: 1rem;
    line-height: 1.5;
    box-sizing: border-box;
    -webkit-appearance: none;
    appearance: none;
    transition: border-color 140ms ease, box-shadow 140ms ease;
}

.mc-contact-form-section .wpcf7 textarea {
    min-height: 150px;
    resize: vertical;
}

.mc-contact-form-section .wpcf7 input:not([type="submit"]):focus,
.mc-contact-form-section .wpcf7 textarea:focus {
    border-color: #9b7410;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(155, 116, 16, .2);
}

.mc-contact-form-section .wpcf7 input[type="submit"] {
    width: auto;
    min-height: 48px;
    padding: .8rem 1.45rem;
    border: 0;
    border-radius: 999px;
    background: var(--mc-yellow);
    color: var(--mc-black);
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}

@media (max-width: 782px) {
    .mc-contact-process ol,
    .mc-contact-form-section .wpcf7 form {
        grid-template-columns: 1fr;
    }

    .mc-contact-form-section .wpcf7 form > p:nth-of-type(n+5),
    .mc-contact-form-section .wpcf7 form > .wpcf7-response-output {
        grid-column: auto;
    }
}

/* Business Direction: one hero, followed by the existing service and outcome styles. */
.mc-business-direction-hero__frame {
    position: relative;
    display: flex;
    align-items: center;
    min-height: clamp(420px, 34vw, 500px);
    overflow: hidden;
    border-radius: 0 0 1.25rem 1.25rem;
    background: #fff8e6;
}

.mc-business-direction-hero__image {
    position: absolute;
    inset: 0 0 0 auto;
    width: 56%;
    height: 100%;
    object-fit: cover;
    object-position: right center;
}

.mc-business-direction-hero__frame::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #fffdf8 0%, rgba(255, 253, 248, .96) 31%, rgba(255, 253, 248, .76) 49%, transparent 84%);
    pointer-events: none;
}

.mc-business-direction-hero__content {
    position: relative;
    z-index: 1;
    max-width: 720px;
    padding: clamp(2rem, 5vw, 4rem);
}

.mc-business-direction-hero .mc-eyebrow {
    color: #7a6214;
}

.mc-business-direction-hero h1 {
    max-width: 640px;
    margin: 0;
    color: var(--mc-black);
    font-size: clamp(3rem, 5.3vw, 5rem);
    font-weight: 740;
    line-height: .98;
    letter-spacing: -.055em;
}

.mc-business-direction-hero__lead {
    max-width: 560px;
    margin: 1.5rem 0 0;
    color: #44433e;
    font-size: clamp(1.02rem, 1.5vw, 1.14rem);
    line-height: 1.6;
}

.mc-business-direction-content {
    padding-top: clamp(3.25rem, 5vw, 4.5rem);
    padding-bottom: clamp(4rem, 7vw, 6rem);
}

body.page-id-1268 .mc-business-direction-grid h2 {
    margin: 0 0 .9rem;
    color: var(--mc-black);
    font-size: 1.35rem;
    line-height: 1.1;
}

@media (max-width: 782px) {
    .mc-business-direction-hero__frame {
        min-height: 0;
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    .mc-business-direction-hero__frame::after {
        display: none;
    }

    .mc-business-direction-hero__image {
        position: static;
        order: 2;
        width: 100%;
        height: auto;
    }

    .mc-business-direction-hero__content {
        padding: 3rem 1.5rem 2.5rem;
    }

    .mc-business-direction-hero h1 {
        font-size: clamp(2.7rem, 10vw, 4rem);
    }
}

@media (max-width: 640px) {
    .mc-business-direction-hero__content {
        padding: 2.75rem 1.25rem 2.25rem;
    }
}

/* Keep the shorter service headlines at the locked Business Direction hero height. */
body:is(.page-id-1265, .page-id-1262) .mc-business-direction-hero__frame {
    min-height: clamp(420px, calc(62.5vw - 320px), 589px);
}

body:is(.page-id-1265, .page-id-1262) .mc-business-direction-hero__content {
    align-self: stretch;
}

@media (max-width: 782px) {
    body:is(.page-id-1265, .page-id-1262) .mc-business-direction-hero__frame {
        min-height: 0;
    }

    body:is(.page-id-1265, .page-id-1262) .mc-business-direction-hero__content {
        min-height: 414px;
    }
}

@media (max-width: 640px) {
    body:is(.page-id-1265, .page-id-1262) .mc-business-direction-hero__content {
        min-height: 456px;
    }
}

/* Market Validation follows the locked Business Direction hero and outcome scale. */
.mc-market-content {
    padding-top: clamp(3.25rem, 5vw, 4.5rem);
    padding-bottom: clamp(4rem, 7vw, 6rem);
}

.mc-market-content h2 {
    margin: 0 0 .9rem;
    color: var(--mc-black);
    font-size: clamp(1.55rem, 2.3vw, 2.2rem);
    line-height: 1.12;
    letter-spacing: -.03em;
}

.mc-market-content p,
.mc-market-content li,
.mc-market-content dd {
    color: #55534c;
    font-size: 1rem;
    line-height: 1.65;
}

.mc-market-content p {
    margin: 0 0 1rem;
}

.mc-market-overview,
.mc-market-explanation {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    margin-bottom: clamp(3rem, 6vw, 5rem);
}

.mc-market-overview > section {
    min-width: 0;
    padding: clamp(1.5rem, 3vw, 2.25rem);
    border: 1px solid #e9e2d5;
    border-radius: 1rem;
    background: #fffefa;
    box-shadow: 0 12px 30px rgba(24, 24, 24, .045);
}

.mc-market-overview ul {
    margin: 1.25rem 0 0;
    padding-left: 1.15rem;
}

.mc-market-overview li + li {
    margin-top: .5rem;
}

.mc-market-explanation > section {
    min-width: 0;
    padding-top: 1.2rem;
    border-top: 2px solid var(--mc-yellow);
}

.mc-market-explanation p:last-child,
.mc-market-overview p:last-child {
    margin-bottom: 0;
}

.mc-market-example {
    margin-bottom: clamp(3rem, 6vw, 5rem);
}

.mc-market-example > p {
    max-width: 720px;
}

.mc-market-example dl {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
    margin: 1.6rem 0 0;
}

.mc-market-example dl > div {
    min-width: 0;
    padding: 1.1rem 0 0;
    border-top: 1px solid var(--mc-border);
}

.mc-market-example dt {
    margin-bottom: .5rem;
    color: var(--mc-black);
    font-size: 1.1rem;
    font-weight: 700;
}

.mc-market-example dd {
    margin: 0;
}

.mc-market-principle {
    margin-bottom: clamp(3rem, 6vw, 5rem);
    padding: clamp(1.6rem, 4vw, 3rem);
    border-left: 4px solid var(--mc-yellow);
    border-radius: 0 1rem 1rem 0;
    background: #fff8e6;
}

.mc-market-principle h2 {
    max-width: 800px;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
}

.mc-market-principle p:last-child {
    max-width: 760px;
    margin-bottom: 0;
}

.mc-market-outcome {
    padding: clamp(2rem, 5vw, 4rem);
    border-radius: 1.25rem;
    background: #1d1d1b;
    color: #fffdf8;
}

.mc-market-outcome .mc-eyebrow {
    color: #f4c430;
}

.mc-market-outcome h2 {
    max-width: 720px;
    margin: .75rem 0 1.25rem;
    color: #fffdf8;
    font-size: clamp(2.25rem, 4vw, 4rem);
    line-height: 1;
    letter-spacing: -.04em;
}

.mc-market-outcome p:not(.mc-eyebrow) {
    max-width: 620px;
    color: rgba(255, 253, 248, .78);
    font-size: 1.08rem;
    line-height: 1.7;
}

.mc-market-outcome .mc-button {
    display: inline-flex;
    margin-top: 1.25rem;
    padding: .85rem 1.2rem;
    border-radius: 999px;
    background: #f4c430;
    color: #1d1d1b;
    font-weight: 700;
    text-decoration: none;
}

@media (max-width: 782px) {
    .mc-market-overview,
    .mc-market-explanation,
    .mc-market-example dl {
        grid-template-columns: 1fr;
    }
}

/* Positioning uses the locked Business Direction content and outcome proportions. */
body.page-id-1265 .mc-positioning-content > section:not(:last-child) {
    margin-bottom: clamp(3rem, 6vw, 5rem);
}

body.page-id-1265 .mc-positioning-intro,
body.page-id-1265 .mc-positioning-pillars,
body.page-id-1265 .mc-positioning-process {
    padding: 0;
    background: transparent;
    color: var(--mc-text);
}

body.page-id-1265 .mc-positioning-intro__inner,
body.page-id-1265 .mc-positioning-process__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(2rem, 5vw, 5rem);
}

body.page-id-1265 .mc-positioning-intro h2,
body.page-id-1265 .mc-positioning-process h2 {
    max-width: 520px;
    font-size: clamp(1.75rem, 2.6vw, 2.2rem);
    line-height: 1.12;
    letter-spacing: -.03em;
}

body.page-id-1265 .mc-positioning-intro__body p,
body.page-id-1265 .mc-positioning-process__steps p {
    color: #55534c;
    font-size: 1rem;
    line-height: 1.65;
}

body.page-id-1265 .mc-positioning-pillars .mc-eyebrow {
    color: #7a6214;
}

body.page-id-1265 .mc-positioning-pillar-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    margin-top: 1.25rem;
}

body.page-id-1265 .mc-positioning-pillar-grid article {
    min-height: 230px;
    padding: clamp(1.5rem, 3vw, 2.25rem);
    border: 1px solid #e9e2d5;
    border-radius: 1rem;
    background: #fffefa;
    box-shadow: 0 12px 30px rgba(24, 24, 24, .045);
}

body.page-id-1265 .mc-positioning-pillar-grid span {
    color: #7a6214;
}

body.page-id-1265 .mc-positioning-pillar-grid h3 {
    margin: 1.3rem 0 .7rem;
    color: var(--mc-black);
    font-size: 1.35rem;
    line-height: 1.1;
}

body.page-id-1265 .mc-positioning-pillar-grid p {
    color: #55534c;
    font-size: 1rem;
    line-height: 1.65;
}

body.page-id-1265 .mc-positioning-cta {
    padding: clamp(2rem, 5vw, 4rem);
    border-radius: 1.25rem;
    background: #1d1d1b;
    color: #fffdf8;
}

body.page-id-1265 .mc-positioning-cta .mc-eyebrow {
    color: #f4c430;
}

body.page-id-1265 .mc-positioning-cta h2 {
    max-width: 720px;
    margin: .75rem 0 1.25rem;
    color: #fffdf8;
    font-size: clamp(2.25rem, 4vw, 4rem);
    line-height: 1;
    letter-spacing: -.04em;
}

body.page-id-1265 .mc-positioning-cta p:not(.mc-eyebrow) {
    max-width: 620px;
    color: rgba(255, 253, 248, .78);
    font-size: 1.08rem;
    line-height: 1.7;
}

body.page-id-1265 .mc-positioning-cta .mc-button {
    display: inline-flex;
    margin-top: 1.25rem;
    padding: .85rem 1.2rem;
    border-radius: 999px;
    background: #f4c430;
    color: #1d1d1b;
    font-weight: 700;
    text-decoration: none;
}

@media (max-width: 782px) {
    body.page-id-1265 .mc-positioning-intro__inner,
    body.page-id-1265 .mc-positioning-process__inner,
    body.page-id-1265 .mc-positioning-pillar-grid {
        grid-template-columns: 1fr;
    }
}

/* Structure & Execution follows the locked service-page content proportions. */
body.page-id-1262 .mc-structure-content > section:not(:last-child) {
    margin-bottom: clamp(3rem, 6vw, 5rem);
}

body.page-id-1262 .mc-positioning-intro,
body.page-id-1262 .mc-positioning-pillars,
body.page-id-1262 .mc-positioning-process {
    padding: 0;
    background: transparent;
    color: var(--mc-text);
}

body.page-id-1262 .mc-positioning-intro__inner,
body.page-id-1262 .mc-positioning-process__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(2rem, 5vw, 5rem);
}

body.page-id-1262 .mc-positioning-intro h2,
body.page-id-1262 .mc-positioning-process h2 {
    max-width: 520px;
    font-size: clamp(1.75rem, 2.6vw, 2.2rem);
    line-height: 1.12;
    letter-spacing: -.03em;
}

body.page-id-1262 .mc-positioning-intro__body p,
body.page-id-1262 .mc-positioning-process__steps p {
    color: #55534c;
    font-size: 1rem;
    line-height: 1.65;
}

body.page-id-1262 .mc-positioning-pillars .mc-eyebrow {
    color: #7a6214;
}

body.page-id-1262 .mc-positioning-pillar-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    margin-top: 1.25rem;
}

body.page-id-1262 .mc-positioning-pillar-grid article {
    min-height: 230px;
    padding: clamp(1.5rem, 3vw, 2.25rem);
    border: 1px solid #e9e2d5;
    border-radius: 1rem;
    background: #fffefa;
    box-shadow: 0 12px 30px rgba(24, 24, 24, .045);
}

body.page-id-1262 .mc-positioning-pillar-grid span {
    color: #7a6214;
}

body.page-id-1262 .mc-positioning-pillar-grid h3 {
    margin: 1.3rem 0 .7rem;
    color: var(--mc-black);
    font-size: 1.35rem;
    line-height: 1.1;
}

body.page-id-1262 .mc-positioning-pillar-grid p {
    color: #55534c;
    font-size: 1rem;
    line-height: 1.65;
}

body.page-id-1262 .mc-positioning-cta {
    padding: clamp(2rem, 5vw, 4rem);
    border-radius: 1.25rem;
    background: #1d1d1b;
    color: #fffdf8;
}

body.page-id-1262 .mc-positioning-cta .mc-service-help__inner {
    display: block;
}

body.page-id-1262 .mc-positioning-cta .mc-eyebrow {
    color: #f4c430;
}

body.page-id-1262 .mc-positioning-cta h2 {
    max-width: 720px;
    margin: .75rem 0 1.25rem;
    color: #fffdf8;
    font-size: clamp(2.25rem, 4vw, 4rem);
    line-height: 1;
    letter-spacing: -.04em;
}

body.page-id-1262 .mc-positioning-cta p:not(.mc-eyebrow) {
    max-width: 620px;
    color: rgba(255, 253, 248, .78);
    font-size: 1.08rem;
    line-height: 1.7;
}

body.page-id-1262 .mc-positioning-cta .mc-button {
    display: inline-flex;
    margin-top: 1.25rem;
    padding: .85rem 1.2rem;
    border-radius: 999px;
    background: #f4c430;
    color: #1d1d1b;
    font-weight: 700;
    text-decoration: none;
}

@media (max-width: 782px) {
    body.page-id-1262 .mc-positioning-intro__inner,
    body.page-id-1262 .mc-positioning-process__inner,
    body.page-id-1262 .mc-positioning-pillar-grid {
        grid-template-columns: 1fr;
    }
}

/* Shared hero frame for all six public main pages. */
.mc-site-hero {
    position: relative;
    height: var(--mc-hero-height-desktop);
    overflow: hidden;
    padding: var(--hero-padding-block) 0;
    background:
        radial-gradient(circle at 86% 12%, rgba(244, 196, 48, .16) 0 9%, transparent 32%),
        linear-gradient(135deg, #fffdf8 0%, #fff9eb 58%, #fff2c7 100%);
    border-bottom: 1px solid rgba(0, 0, 0, .035);
}

.mc-site-hero__grid {
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr);
    grid-template-areas: "content image";
    gap: var(--hero-gap);
    align-items: center;
    overflow: visible;
    border-radius: 0;
    background: transparent;
}

.mc-site-hero__grid::after {
    display: none;
}

.mc-site-hero__content {
    grid-area: content;
    align-self: center;
    max-width: var(--mc-hero-text);
    padding: 0;
}

.mc-site-hero__visual {
    grid-area: image;
    justify-self: end;
    width: 100%;
    max-width: var(--mc-hero-media);
}

.mc-site-hero__media {
    position: static;
    grid-area: image;
    justify-self: end;
    width: 100%;
    max-width: var(--mc-hero-media);
    height: auto;
    aspect-ratio: var(--mc-hero-media-ratio);
    object-fit: cover;
    object-position: center;
    border-radius: 1.25rem;
    box-shadow: 0 18px 44px rgba(24, 24, 24, .08);
}

.mc-about-hero__image.mc-site-hero__media {
    object-position: right 15%;
}

.mc-site-hero .mc-eyebrow {
    margin: 0 0 var(--space-md);
    color: #7a6214;
    font-size: var(--font-size-eyebrow);
}

.mc-site-hero .mc-site-hero__title {
    max-width: var(--mc-hero-text);
    margin: 0;
    color: var(--mc-black);
    font-size: var(--font-size-h1);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: -.045em;
}

.mc-site-hero__lead {
    max-width: var(--mc-hero-text);
    margin: var(--space-md) 0 0;
    color: #44433e;
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
}

.mc-services-overview-hero + .mc-service-choices {
    padding-top: var(--space-section);
}

@media (max-width: 782px) {
    .mc-site-hero {
        height: auto;
        padding: var(--space-xl) 0;
    }

    .mc-site-hero__grid {
        height: auto;
        min-height: 0;
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "content"
            "image";
        gap: var(--space-lg);
    }

    .mc-site-hero__content {
        width: 100%;
        max-width: none;
        min-height: 0;
        padding: 0;
    }

    .mc-site-hero__visual,
    .mc-site-hero__media {
        order: initial;
        justify-self: center;
        width: 100%;
        max-height: none;
    }

    .mc-site-hero .mc-site-hero__title {
        max-width: var(--mc-hero-text);
    }
}

/* Keep the focused CRM introduction compact enough to understand at a glance. */
body.page-id-2310 .mc-site-hero {
    height: auto;
    min-height: 520px;
    padding: clamp(2.75rem, 4vw, 4rem) 0;
}

body.page-id-2310 .mc-site-hero__grid {
    min-height: 0;
    gap: clamp(2rem, 4vw, 4rem);
}

body.page-id-2310 .mc-product__visual {
    max-width: 520px;
}

body.page-id-2310 .mc-product__details {
    padding: clamp(2.75rem, 4.5vw, 4rem) 0;
}

body.page-id-2310 .mc-product__content h2:not(:first-child) {
    margin-top: clamp(2.4rem, 4vw, 3.4rem);
}

body.page-id-2310 .mc-product__content > p {
    margin-bottom: 1rem;
}

body.page-id-2310 .mc-product__content .mc-crm-panels {
    gap: .85rem;
    margin: 1.5rem 0 0;
}

body.page-id-2310 .mc-product__content .mc-crm-panel {
    padding: clamp(1.15rem, 2vw, 1.55rem);
}

body.page-id-2310 .mc-crm-panel__label {
    margin-bottom: .75rem;
}

body.page-id-2310 .mc-product__closing {
    padding: clamp(2.5rem, 4vw, 3.5rem) 0;
}

@media (max-width: 782px) {
    body.page-id-2310 .mc-site-hero {
        min-height: 0;
        padding: 2.25rem 0;
    }

    body.page-id-2310 .mc-site-hero__grid {
        gap: 1.5rem;
    }

    body.page-id-2310 .mc-product__details {
        padding: 2.35rem 0;
    }

    body.page-id-2310 .mc-product__content h2:not(:first-child) {
        margin-top: 2.35rem;
    }

    body.page-id-2310 .mc-product__content .mc-crm-panels {
        gap: .75rem;
        margin-top: 1.25rem;
    }

    body.page-id-2310 .mc-product__closing {
        padding: 2.25rem 0;
    }
}
