/* ============================================================
   Materialidad Contable -- Landing page
   Pixel clone of Claude Design project "Materialidad Contable
   Design System" -> templates/landing-page/LandingPage.dc.html
   Scoped entirely under .mc-landing so it cannot leak into, or be
   leaked into by, the rest of the site.
   ============================================================ */

body.mc-landing-body{margin:0!important;background:#fff!important;overflow-x:hidden}

.mc-landing{
  /* ---- design tokens (verbatim from the source design system) ---- */
  --ink-1000:#0A0B0D;--ink-900:#14161A;--ink-800:#22262C;--ink-700:#3A3F47;
  --ink-600:#5B6068;--ink-500:#7C828B;--ink-400:#A6ABB3;--ink-300:#D2D6DB;
  --ink-200:#E6E8EB;--ink-100:#F1F2F4;--ink-050:#F7F8F9;--white:#FFFFFF;

  --coral-050:#FFF1EE;--coral-100:#FFE0DA;--coral-200:#FFC2B7;--coral-400:#FF7A66;
  --coral-500:#F55A45;--coral-600:#DE4531;--coral-700:#B93524;

  --lavender-050:#F4F1FD;--lavender-100:#E9E4FA;--lavender-500:#6C5CE0;
  --sky-050:#EEF5FE;--sky-100:#DCEAFD;--sky-500:#2F6FED;
  --mint-050:#EAF7F1;--mint-500:#12A971;
  --amber-050:#FEF5E7;--amber-500:#D98E1B;

  --text-display:var(--ink-1000);--text-heading:var(--ink-900);--text-body:var(--ink-600);
  --text-muted:var(--ink-400);--text-invert:var(--white);--text-invert-muted:#9AA0A8;
  --text-link:var(--coral-600);--text-link-hover:var(--coral-700);

  --surface-page:var(--white);--surface-shell:var(--ink-050);--surface-card:var(--white);
  --surface-card-sunken:var(--ink-100);--surface-dark:var(--ink-1000);
  --surface-tint-lavender:var(--lavender-050);--surface-tint-sky:var(--sky-050);

  --border-subtle:var(--ink-200);--border-default:var(--ink-300);--border-dark:#23262B;
  --border-focus:var(--sky-500);

  --action-primary:var(--coral-500);--action-primary-hover:var(--coral-600);--action-primary-press:var(--coral-700);
  --action-dark:var(--ink-1000);--action-dark-hover:var(--ink-800);

  --status-complete:var(--mint-500);--status-complete-bg:var(--mint-050);
  --status-progress:var(--sky-500);--status-progress-bg:var(--sky-050);
  --status-pending:var(--amber-500);--status-pending-bg:var(--amber-050);

  --wash-hero:radial-gradient(120% 90% at 15% 100%,var(--lavender-100) 0%,rgba(233,228,250,0) 55%),radial-gradient(110% 90% at 88% 100%,var(--sky-100) 0%,rgba(220,234,253,0) 55%);

  --font-display:"Plus Jakarta Sans","Helvetica Neue",Arial,sans-serif;
  --font-body:"Inter","Helvetica Neue",Arial,sans-serif;
  --font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;

  --text-hero:80px;--lh-hero:0.98;--ls-hero:-0.035em;
  --text-h1:56px;--lh-h1:1.04;--ls-h1:-0.03em;
  --text-h2:44px;--lh-h2:1.08;--ls-h2:-0.028em;
  --text-h3:30px;--lh-h3:1.15;--ls-h3:-0.02em;
  --text-h4:22px;--lh-h4:1.25;--ls-h4:-0.015em;
  --text-stat:88px;--lh-stat:0.92;--ls-stat:-0.04em;
  --text-lead:19px;--lh-lead:1.55;
  --text-body-lg:17px;--lh-body-lg:1.6;
  --text-body-md:15px;--lh-body-md:1.62;
  --text-body-sm:13.5px;--lh-body-sm:1.55;
  --text-caption:12px;--lh-caption:1.4;--ls-caption:0.02em;
  --text-eyebrow:11.5px;--ls-eyebrow:0.12em;

  --weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-black:800;

  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;
  --space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;
  --space-30:120px;--space-40:160px;

  --container-max:1200px;--container-narrow:820px;--gutter:24px;--gutter-mobile:20px;
  --section-y:120px;--section-y-mobile:72px;--shell-pad:64px;--nav-height:56px;--hit-min:44px;

  --radius-xs:8px;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:24px;
  --radius-2xl:32px;--radius-3xl:40px;--radius-pill:999px;

  --shadow-hairline:0 0 0 1px var(--border-subtle);
  --shadow-xs:0 1px 2px rgba(10,11,13,.05);
  --shadow-sm:0 2px 8px rgba(10,11,13,.05),0 1px 2px rgba(10,11,13,.04);
  --shadow-md:0 8px 24px rgba(10,11,13,.07),0 2px 6px rgba(10,11,13,.04);
  --shadow-lg:0 18px 48px rgba(10,11,13,.10),0 4px 12px rgba(10,11,13,.05);
  --shadow-float:0 28px 70px rgba(10,11,13,.14),0 8px 20px rgba(10,11,13,.06);
  --shadow-coral:0 10px 26px rgba(245,90,69,.30);
  --shadow-inset-top:inset 0 1px 0 rgba(255,255,255,.06);
  --focus-ring:0 0 0 3px rgba(47,111,237,.35);

  --ease-out:cubic-bezier(.22,.61,.36,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--ease-soft:cubic-bezier(.32,.72,0,1);
  --dur-fast:120ms;--dur-base:200ms;--dur-slow:420ms;--dur-reveal:640ms;
  --reveal-offset:16px;--reveal-stagger:70ms;--lift-hover:-3px;--press-scale:.985;

  display:block;font-family:var(--font-body);color:var(--text-body);background:var(--white);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
@media (prefers-reduced-motion:reduce){
  .mc-landing{--dur-slow:1ms;--dur-reveal:1ms;--reveal-offset:0px;--lift-hover:0px}
}

/* ---- scoped reset ---- */
.mc-landing,.mc-landing *,.mc-landing *::before,.mc-landing *::after{box-sizing:border-box}
:where(.mc-landing) h1,:where(.mc-landing) h2,:where(.mc-landing) h3,:where(.mc-landing) h4,:where(.mc-landing) p,:where(.mc-landing) figure{margin:0;font:inherit;color:inherit}
:where(.mc-landing) ul,:where(.mc-landing) ol{margin:0;padding:0;list-style:none}
:where(.mc-landing) a{color:inherit;text-decoration:none}
:where(.mc-landing) button{font:inherit;border:0;background:none;padding:0;color:inherit;cursor:pointer}
:where(.mc-landing) input{font:inherit;color:inherit}
.mc-landing img{max-width:100%;display:block}
.mc-landing :focus-visible{outline:none;box-shadow:var(--focus-ring)}
.mc-landing .mc-icon{display:inline-flex;flex:0 0 auto}
.mc-landing .mc-icon svg{display:block}

.mc-eyebrow{font-family:var(--font-body);font-size:var(--text-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;font-weight:var(--weight-semibold);color:var(--text-muted)}
.mc-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.mc-container{max-width:var(--container-max);margin:0 auto;padding:0 var(--gutter)}

/* ================= Navbar ================= */
.mc-nav-wrap{position:sticky;top:16px;z-index:60;padding:0 var(--gutter)}
.mc-navbar{max-width:1120px;margin:0 auto;background:var(--surface-dark);border-radius:var(--radius-pill);border:1px solid var(--border-dark);box-shadow:var(--shadow-md);padding:7px;display:flex;align-items:center;gap:16px;transition:box-shadow var(--dur-slow) var(--ease-soft)}
.mc-navbar.is-compact{box-shadow:var(--shadow-float)}
.mc-navbar__brand{display:flex;align-items:center;gap:9px;padding:0 8px 0 14px;flex:0 0 auto}
.mc-navbar__mark{width:22px;height:22px;border-radius:6px;background:var(--coral-500);display:grid;place-items:center}
.mc-navbar__brand-text{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-body-md);letter-spacing:-0.02em;color:var(--white);white-space:nowrap}
.mc-navbar__links{list-style:none;display:flex;align-items:center;gap:2px;margin:0 auto;padding:0}
.mc-navbar__link{display:flex;align-items:center;height:36px;padding:0 14px;border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:var(--weight-medium);color:var(--text-invert-muted);background:transparent;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}
.mc-navbar__link:hover{color:var(--white)}
.mc-navbar__link.is-active,.mc-navbar__link.is-active:hover{color:var(--white);background:var(--coral-500)}
.mc-navbar__actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.mc-navbar__burger{display:none;width:40px;height:40px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:var(--white);align-items:center;justify-content:center;cursor:pointer;flex:0 0 auto}
.mc-navbar__mobile{max-width:1120px;margin:10px auto 0;background:var(--surface-dark);border-radius:var(--radius-xl);border:1px solid var(--border-dark);padding:14px;display:grid;gap:4px;box-shadow:var(--shadow-float)}
.mc-navbar__mobile[hidden]{display:none}
.mc-navbar__mobile-link{display:flex;align-items:center;min-height:var(--hit-min);padding:0 12px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-body-md);font-weight:var(--weight-medium);color:var(--white)}
@media (max-width:900px){.mc-navbar__links,.mc-navbar__actions{display:none!important}.mc-navbar__burger{display:flex!important}}

/* ================= Buttons ================= */
.mc-btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-body);font-weight:var(--weight-semibold);letter-spacing:-0.006em;white-space:nowrap;border-radius:var(--radius-pill);cursor:pointer;transition:background var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);border:1px solid transparent}
.mc-btn:active{transform:scale(var(--press-scale))}
.mc-btn--sm{height:36px;padding:0 16px;gap:6px;font-size:var(--text-body-sm)}
.mc-btn--md{height:44px;padding:0 22px;gap:8px;font-size:var(--text-body-md)}
.mc-btn--lg{height:54px;padding:0 30px;gap:10px;font-size:var(--text-body-lg)}
.mc-btn--full{display:flex;width:100%}
.mc-btn--primary{background:var(--action-primary);color:var(--white);box-shadow:0 4px 12px rgba(245,90,69,.18)}
.mc-btn--primary:hover{background:var(--action-primary-hover);box-shadow:var(--shadow-coral)}
.mc-btn--dark{background:var(--action-dark);color:var(--white);box-shadow:var(--shadow-xs)}
.mc-btn--dark:hover{background:var(--action-dark-hover);box-shadow:var(--shadow-md)}
.mc-btn--secondary{background:var(--white);color:var(--ink-900);border-color:var(--border-default);box-shadow:var(--shadow-xs)}
.mc-btn--secondary:hover{background:var(--ink-050)}
.mc-btn--ghost{background:transparent;color:var(--ink-800)}
.mc-btn--ghost:hover{background:var(--ink-050)}
.mc-btn--invert{background:rgba(255,255,255,.08);color:var(--white);border-color:rgba(255,255,255,.16)}
.mc-btn--invert:hover{background:rgba(255,255,255,.14)}
.mc-btn--link{background:transparent;color:var(--coral-600);height:auto;padding:0;border-color:transparent}
.mc-btn--link:hover{color:var(--coral-700)}

/* ================= Hero ================= */
.mc-hero{padding:72px 0 0;background:var(--wash-hero),#fff}
.mc-hero__inner{max-width:1200px;margin:0 auto;padding:0 24px;display:grid;gap:38px;justify-items:center;text-align:center}
.mc-hero__top{display:grid;gap:24px;justify-items:center;max-width:900px}
.mc-hero__badge{display:inline-flex;align-items:center;height:28px;padding:0 11px;border-radius:var(--radius-pill);background:var(--lavender-050);color:var(--lavender-500);font-size:13.5px;font-weight:600}
.mc-hero__title{font-family:var(--font-display);font-weight:800;font-size:clamp(38px,6.2vw,80px);line-height:.99;letter-spacing:-.035em;color:var(--ink-1000);margin:0}
.mc-hero__subtitle{font-size:19px;line-height:1.5;color:var(--text-body);max-width:560px;margin:0}
.mc-hero__mockup-wrap{width:100%;margin-top:30px;padding-bottom:96px}

/* ---- Email capture ---- */
.mc-email-capture{display:grid;gap:14px;justify-items:center}
.mc-email-capture__form{display:flex;align-items:center;gap:8px;width:100%;max-width:470px;padding:7px;background:var(--white);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);transition:border-color var(--dur-base) var(--ease-out)}
.mc-email-capture__form:focus-within{border-color:var(--border-focus)}
.mc-email-capture__input{flex:1;min-width:0;height:40px;border:none;outline:none;background:transparent;padding:0 10px 0 16px;font-family:var(--font-body);font-size:var(--text-body-md);color:var(--ink-900)}
.mc-email-capture__note{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--text-muted);text-align:center;max-width:460px}

/* ---- Hero mockup (3-card composition) ---- */
.mc-hero-mockup{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.25fr) minmax(0,.82fr);gap:22px;align-items:center}
.mc-hero-mockup__left{transform:translateY(14px)}
.mc-hero-mockup__right{transform:translateY(-14px)}
@media (max-width:980px){.mc-hero-mockup{grid-template-columns:1fr}.mc-hero-mockup>*{transform:none!important}}

.mc-expediente-card,.mc-trace-card,.mc-detail-panel{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-float);text-align:left}
.mc-expediente-card{padding:24px;display:grid;gap:18px;min-width:244px}
.mc-expediente-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.mc-expediente-card__folio{font-size:var(--text-body-lg);font-weight:var(--weight-semibold);color:var(--ink-900);letter-spacing:-0.01em}
.mc-expediente-card__progress-row{display:flex;justify-content:space-between;font-family:var(--font-body);font-size:var(--text-caption);color:var(--text-muted)}
.mc-expediente-card__bar{height:6px;border-radius:var(--radius-pill);background:var(--ink-100);overflow:hidden;margin-top:8px}
.mc-expediente-card__bar-fill{width:100%;height:100%;border-radius:var(--radius-pill);background:var(--status-complete)}
.mc-expediente-card__list{display:grid;gap:10px;margin-top:2px}
.mc-expediente-card__list li{display:flex;align-items:center;gap:9px;font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--ink-800)}

.mc-detail-panel{padding:24px;display:grid;gap:20px}
.mc-detail-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.mc-detail-panel__head-meta{display:grid;gap:4px}
.mc-detail-panel__name{font-family:var(--font-display);font-size:19px;font-weight:var(--weight-bold);letter-spacing:-0.025em;color:var(--ink-900)}
.mc-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mc-detail-cell{display:grid;gap:4px;padding:14px;background:var(--ink-050);border-radius:var(--radius-sm)}
.mc-detail-cell__label{font-size:10px}
.mc-detail-cell__value{font-size:13.5px;font-weight:var(--weight-medium);color:var(--ink-900)}
.mc-detail-cell__value--mono{font-family:var(--font-mono)}
.mc-detail-seq{display:grid;gap:14px;padding:18px 16px 16px;background:var(--ink-050);border-radius:var(--radius-md)}
.mc-detail-seq__label{font-size:10px}
.mc-detail-panel__foot{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-family:var(--font-body);font-size:var(--text-body-sm)}

.mc-trace-card{padding:22px;display:grid;gap:16px;min-width:232px}
.mc-trace-card__head{display:flex;align-items:center;gap:8px}
.mc-trace-card__title{font-family:var(--font-display);font-size:var(--text-body-md);font-weight:var(--weight-bold);letter-spacing:-0.02em;color:var(--ink-900)}
.mc-trace-card__list{display:grid;gap:13px}
.mc-trace-card__list li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:10px;align-items:start}
.mc-trace-card__node{display:grid;justify-items:center;gap:3px;padding-top:3px}
.mc-trace-card__node-line{width:1px;height:16px;background:var(--ink-200)}
.mc-trace-card__event-label{font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:var(--weight-medium);color:var(--ink-800)}
.mc-trace-card__event-meta{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--text-muted)}

/* ---- DocTimeline (horizontal, inside detail panel) ---- */
.mc-doctimeline{list-style:none;margin:0;padding:0;display:flex;align-items:flex-start}
.mc-doctimeline__step{display:flex;flex-direction:column;align-items:center;gap:10px;flex:1;min-width:0;opacity:1;transition:opacity var(--dur-slow) var(--ease-soft)}
.mc-doctimeline.is-animating .mc-doctimeline__step{opacity:.25}
.mc-doctimeline.is-animating .mc-doctimeline__step.is-on{opacity:1}
.mc-doctimeline__row{display:flex;align-items:center;width:100%}
.mc-doctimeline__line{flex:1;height:2px;background:var(--ink-200)}
.mc-doctimeline__line--done{background:var(--status-complete)}
.mc-doctimeline__line--current{background:var(--status-progress)}
.mc-doctimeline__node{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;border:1.5px solid var(--ink-300);background:var(--ink-100)}
.mc-doctimeline__node--done{border-color:var(--status-complete);background:var(--status-complete-bg);color:var(--status-complete)}
.mc-doctimeline__node--current{border-color:var(--status-progress);background:var(--status-progress-bg);color:var(--status-progress)}
.mc-doctimeline__node--pending{border-color:var(--ink-300);background:var(--ink-100);color:var(--ink-300)}
.mc-doctimeline__line--spacer{background:transparent}
.mc-doctimeline__label{font-family:var(--font-body);font-size:var(--text-caption);font-weight:var(--weight-medium);color:var(--ink-800);text-align:center;white-space:nowrap}
.mc-doctimeline__label--pending{color:var(--text-muted)}

/* ================= Stats ================= */
.mc-stats-section,.mc-solution-section,.mc-cta-section{padding:0 0 112px}
.mc-stats-shell{background:var(--surface-shell);border-radius:var(--radius-2xl);padding:56px}
.mc-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:44px}
.mc-stat{display:grid;gap:16px}
.mc-stat--divider{padding-left:40px;border-left:1px dashed var(--border-subtle)}
.mc-stat__figure{display:flex;align-items:flex-start;gap:2px}
.mc-stat__value{font-family:var(--font-display);font-size:var(--text-stat);line-height:var(--lh-stat);letter-spacing:var(--ls-stat);font-weight:var(--weight-black);color:var(--text-display)}
.mc-stat__unit{font-family:var(--font-display);font-size:30px;font-weight:var(--weight-bold);color:var(--text-display);line-height:1.2;margin-top:6px}
.mc-stat__desc{font-family:var(--font-body);font-size:var(--text-body-sm);line-height:1.65;color:var(--text-body);max-width:300px}
.mc-stats-note{margin:30px 0 0;font-size:13.5px;color:var(--text-muted);max-width:640px}

/* ================= Badges ================= */
.mc-badge{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);letter-spacing:-0.004em;white-space:nowrap}
.mc-badge--sm{height:22px;padding:0 8px;font-size:var(--text-caption)}
.mc-badge--dot::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.mc-badge--neutral{background:var(--ink-100);color:var(--ink-700)}
.mc-badge--coral{background:var(--coral-050);color:var(--coral-700)}
.mc-badge--complete{background:var(--status-complete-bg);color:var(--status-complete)}
.mc-badge--progress{background:var(--status-progress-bg);color:var(--status-progress)}
.mc-badge--pending{background:var(--status-pending-bg);color:var(--status-pending)}
.mc-badge--lavender{background:var(--lavender-050);color:var(--lavender-500)}
.mc-badge--sky{background:var(--sky-050);color:var(--sky-500)}

/* ================= Solution / DocFlow ================= */
.mc-solution-shell{background:var(--surface-shell);border-radius:var(--radius-2xl);padding:64px;display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:64px;align-items:center}
.mc-solution-copy{display:grid;gap:24px;max-width:470px;text-align:left}
.mc-solution-copy__title{font-family:var(--font-display);font-weight:800;font-size:44px;line-height:1.08;letter-spacing:-.028em;color:var(--ink-1000)}
.mc-solution-copy__text{font-size:17px;line-height:1.62}

.mc-checklist{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mc-checklist li{display:flex;gap:10px;align-items:center}
.mc-checklist__mark{width:22px;height:22px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;background:var(--status-complete-bg);color:var(--status-complete)}
.mc-checklist__text{font-family:var(--font-body);font-size:var(--text-body-md);color:inherit;font-weight:var(--weight-medium)}

.mc-docflow{display:grid;gap:0;min-width:0}
.mc-docflow__step{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 18px;background:var(--white);color:var(--text-body);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}
.mc-docflow__step--accent{box-shadow:var(--shadow-md)}
.mc-docflow__step--final{background:var(--ink-1000);color:var(--white);border-color:var(--ink-1000);box-shadow:var(--shadow-md)}
.mc-docflow__icon{width:34px;height:34px;border-radius:var(--radius-xs);display:grid;place-items:center;background:var(--ink-050);color:var(--ink-700)}
.mc-docflow__step--accent .mc-docflow__icon{background:var(--lavender-050);color:var(--lavender-500)}
.mc-docflow__step--final .mc-docflow__icon{background:rgba(255,255,255,.10);color:var(--white)}
.mc-docflow__body{display:grid;gap:2px;min-width:0}
.mc-docflow__title{font-family:var(--font-display);font-size:14.5px;font-weight:var(--weight-bold);letter-spacing:-0.015em;color:var(--ink-900)}
.mc-docflow__step--final .mc-docflow__title{color:var(--white)}
.mc-docflow__note{font-family:var(--font-body);font-size:12.5px;color:var(--text-muted)}
.mc-docflow__step--final .mc-docflow__note{color:var(--text-invert-muted)}
.mc-docflow__index{font-size:11px;color:var(--text-muted)}
.mc-docflow__step--final .mc-docflow__index{color:var(--text-invert-muted)}
.mc-docflow__connector{position:relative;display:grid;place-items:center;height:22px}
.mc-docflow__connector-line{width:1px;height:100%;background:var(--border-default)}
.mc-docflow__connector .mc-icon{position:absolute;background:var(--white)}

/* ================= CTA banner + Disclaimer ================= */
.mc-cta-stack{display:grid;gap:40px}
.mc-cta-banner{border-radius:var(--radius-2xl);padding:72px 64px;display:grid;gap:28px;justify-items:center;text-align:center;position:relative;overflow:hidden}
.mc-cta-banner.is-dark{background:var(--surface-dark)}
.mc-cta-banner__wash{position:absolute;inset:0;pointer-events:none;background:radial-gradient(70% 120% at 50% 120%,rgba(245,90,69,.22) 0%,rgba(245,90,69,0) 60%)}
.mc-cta-banner__title{max-width:720px;color:var(--white);position:relative;font-family:var(--font-display);font-weight:800;font-size:var(--text-h2);line-height:var(--lh-h2);letter-spacing:var(--ls-h2)}
.mc-cta-banner__desc{max-width:560px;font-family:var(--font-body);font-size:var(--text-body-lg);line-height:1.62;color:var(--text-invert-muted);position:relative}
.mc-cta-banner__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;position:relative}

.mc-disclaimer{font-family:var(--font-body);font-size:var(--text-body-sm);line-height:var(--lh-body-sm);color:var(--text-muted);border-left:2px solid var(--border-subtle);padding-left:14px;max-width:720px}
.mc-disclaimer--center{margin:0 auto;text-align:center}

/* ================= Footer ================= */
.mc-footer{background:var(--surface-dark);color:var(--white);padding-top:88px;overflow:hidden}
.mc-footer__container{display:grid;gap:56px}
.mc-footer__grid{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,0.7fr));gap:40px}
.mc-footer__brand-col{display:grid;gap:20px;align-content:start;text-align:left;min-width:0}
.mc-footer__brand-row{display:flex;align-items:center;gap:10px}
.mc-footer__mark{width:26px;height:26px;border-radius:7px;background:var(--coral-500);display:grid;place-items:center}
.mc-footer__brand-text{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:19px;letter-spacing:-0.025em}
.mc-footer__email{display:inline-block;max-width:100%;font-family:var(--font-display);font-size:22px;font-weight:var(--weight-bold);letter-spacing:-0.02em;color:var(--white);overflow-wrap:break-word;word-break:break-word}
.mc-footer__tagline{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--text-invert-muted);max-width:320px}
.mc-footer__col{display:grid;gap:14px;align-content:start;text-align:left}
.mc-footer__col-links{display:grid;gap:10px}
.mc-footer__col-links a{font-family:var(--font-body);font-size:var(--text-body-md);color:var(--white);opacity:.82}
.mc-footer__col-links a:hover{opacity:1}
.mc-footer__bottom{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;padding-top:22px;border-top:1px solid var(--border-dark)}
.mc-footer__legal{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--text-invert-muted)}
.mc-footer__legal-links{display:flex;gap:22px}
.mc-footer__legal-links a{color:var(--text-invert-muted)}
.mc-footer__wordmark-row{margin-top:40px;display:flex;justify-content:center}
.mc-footer__wordmark{font-family:var(--font-display);font-weight:var(--weight-black);letter-spacing:-0.045em;font-size:clamp(64px,13.5vw,220px);line-height:.78;color:rgba(255,255,255,.07);white-space:nowrap;user-select:none;transform:translateY(18%)}
@media (max-width:640px){.mc-footer__grid{grid-template-columns:1fr}}

/* ================= WhatsApp FAB ================= */
.mc-whatsapp-fab{position:fixed;right:24px;bottom:24px;z-index:70;display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 16px;background:var(--ink-1000);color:var(--white);border-radius:var(--radius-pill);box-shadow:var(--shadow-lg);transition:padding var(--dur-slow) var(--ease-soft),box-shadow var(--dur-slow) var(--ease-soft)}
.mc-whatsapp-fab__label{font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:var(--weight-semibold);max-width:0;overflow:hidden;white-space:nowrap;transition:max-width var(--dur-slow) var(--ease-soft)}
.mc-whatsapp-fab:hover{padding:0 22px 0 18px;box-shadow:var(--shadow-float)}
.mc-whatsapp-fab:hover .mc-whatsapp-fab__label{max-width:120px}

/* ================= Blog index ================= */
.mc-page-hero{padding:72px 0 0;background:var(--wash-hero),#fff}
.mc-page-hero__inner{max-width:1200px;margin:0 auto;padding:0 24px 88px;display:grid;gap:20px;justify-items:center;text-align:center}
.mc-page-hero__eyebrow{display:inline-flex;align-items:center;height:28px;padding:0 11px;border-radius:var(--radius-pill);background:var(--lavender-050);color:var(--lavender-500);font-size:13.5px;font-weight:600}
.mc-page-hero__title{font-family:var(--font-display);font-weight:800;font-size:clamp(32px,4.6vw,56px);line-height:1.04;letter-spacing:-.03em;color:var(--ink-1000);margin:0;max-width:820px}
.mc-page-hero__subtitle{font-size:18px;line-height:1.55;color:var(--text-body);max-width:600px;margin:0}

.mc-blog-grid{display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}
.mc-blogcard{display:grid;grid-template-columns:1fr;gap:18px;text-decoration:none;color:inherit;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:16px;box-shadow:var(--shadow-xs);transition:box-shadow var(--dur-slow) var(--ease-soft),transform var(--dur-slow) var(--ease-soft)}
.mc-blogcard:hover{box-shadow:var(--shadow-lg);transform:translateY(var(--lift-hover))}
.mc-blogcard--featured{grid-column:1 / -1;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;padding:22px;align-items:center}
.mc-blogcard__media{aspect-ratio:16/10;border-radius:var(--radius-md);overflow:hidden;background:var(--ink-100)}
.mc-blogcard--featured .mc-blogcard__media{aspect-ratio:4/3}
.mc-blogcard__media img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0;box-shadow:none}
.mc-blogcard__body{display:grid;gap:12px;align-content:start;padding:4px 6px 10px}
.mc-blogcard--featured .mc-blogcard__body{padding:8px 12px}
.mc-blogcard__meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mc-blogcard__meta-date{font-family:var(--font-body);font-size:var(--text-caption);color:var(--text-muted)}
.mc-blogcard__title{font-family:var(--font-display);font-weight:700;font-size:19px;line-height:1.28;letter-spacing:-.015em;color:var(--ink-900);margin:0}
.mc-blogcard--featured .mc-blogcard__title{font-size:var(--text-h3);line-height:1.15}
.mc-blogcard__excerpt{font-family:var(--font-body);font-size:var(--text-body-sm);line-height:1.65;color:var(--text-body);margin:0}
.mc-blogcard__cta{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:600;color:var(--coral-600)}
.mc-blogcard:hover .mc-blogcard__cta{color:var(--coral-700)}
@media(max-width:820px){.mc-blog-grid{grid-template-columns:1fr}.mc-blogcard--featured{grid-template-columns:1fr}}

.mc-pagination{display:flex;justify-content:center;gap:8px;margin-top:56px}
.mc-pagination a,.mc-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;border-radius:var(--radius-pill);font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--ink-700);border:1px solid var(--border-subtle);text-decoration:none}
.mc-pagination a:hover{background:var(--ink-050)}
.mc-pagination .current{background:var(--coral-500);border-color:var(--coral-500);color:#fff}

.mc-empty-state{grid-column:1/-1;display:grid;justify-items:center;gap:10px;padding:64px 24px;text-align:center;color:var(--text-muted)}

/* ================= Contact page ================= */
.mc-contact-shell{background:var(--surface-shell);border-radius:var(--radius-2xl);padding:56px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr);gap:56px;align-items:start}
@media(max-width:900px){.mc-contact-shell{grid-template-columns:1fr}}

.mc-field{display:block}
.mc-field + .mc-field{margin-top:0}
.mc-field__label{display:block;margin-bottom:8px;font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:600;color:var(--ink-800)}
.mc-field__required{color:var(--coral-500)}
.mc-field__input,.mc-field__select,.mc-field__textarea{width:100%;box-sizing:border-box;font-family:var(--font-body);font-size:var(--text-body-md);color:var(--ink-900);background:#fff;border:1px solid var(--border-default);border-radius:var(--radius-sm);outline:none;transition:border-color .2s ease-out,box-shadow .2s ease-out}
.mc-field__input,.mc-field__select{height:48px;padding:0 16px}
.mc-field__textarea{padding:14px 16px;resize:vertical;line-height:var(--lh-body-md)}
.mc-field__input:focus,.mc-field__select:focus,.mc-field__textarea:focus{border-color:var(--border-focus);box-shadow:var(--focus-ring)}
.mc-field__select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%237C828B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}

.mc-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}

.mc-checkbox-row{display:flex;gap:10px;align-items:flex-start;cursor:pointer;min-height:44px}
.mc-checkbox-row input{position:absolute;opacity:0;width:1px;height:1px}
.mc-checkbox-row__box{width:20px;height:20px;flex:0 0 auto;margin-top:1px;display:grid;place-items:center;border-radius:6px;background:#fff;border:1px solid var(--border-default);transition:background .2s ease-out,border-color .2s ease-out}
.mc-checkbox-row input:checked ~ .mc-checkbox-row__box{background:var(--coral-500);border-color:var(--coral-500)}
.mc-checkbox-row__box svg{display:none;width:13px;height:13px}
.mc-checkbox-row input:checked ~ .mc-checkbox-row__box svg{display:block}
.mc-checkbox-row__label{font-family:var(--font-body);font-size:var(--text-body-sm);line-height:var(--lh-body-sm);color:var(--text-body)}

.mc-contact-info-card{background:var(--ink-1000);color:#fff;border-radius:var(--radius-xl);padding:32px;display:grid;gap:22px}
.mc-contact-info-card__row{display:flex;align-items:flex-start;gap:14px}
.mc-contact-info-card__icon{width:38px;height:38px;border-radius:var(--radius-sm);background:rgba(255,255,255,.08);display:grid;place-items:center;flex:0 0 auto}
.mc-contact-info-card__label{font-family:var(--font-body);font-size:12px;color:var(--text-invert-muted);margin-bottom:2px}
.mc-contact-info-card__value{font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:-.01em;color:#fff}
.mc-contact-info-card__value a{color:#fff}

.mc-form-success{display:grid;gap:10px;padding:32px;background:var(--status-complete-bg);border-radius:var(--radius-lg)}
.mc-form-success h3{color:var(--ink-900);margin:0}
.mc-form-error{display:grid;gap:6px;padding:16px 20px;background:var(--coral-050);color:var(--coral-700);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:14px;margin-bottom:8px}
.mc-hp{position:absolute;left:-9999px;top:-9999px;height:0;width:0;overflow:hidden;opacity:0;pointer-events:none}

/* ================= Scroll reveal (progressive enhancement) ================= */
/* Gated behind html.mc-js so no-JS / crawlers always see full content (never hidden). */
html.mc-js .mc-reveal{opacity:0;transform:translateY(var(--reveal-offset));transition:opacity var(--dur-reveal) var(--ease-soft),transform var(--dur-reveal) var(--ease-soft)}
html.mc-js .mc-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html.mc-js .mc-reveal{opacity:1!important;transform:none!important;transition:none!important}}

.mc-stat:nth-child(1){transition-delay:0ms}
.mc-stat:nth-child(2){transition-delay:90ms}
.mc-stat:nth-child(3){transition-delay:180ms}
.mc-docflow.mc-reveal{transition-delay:120ms}
.mc-blogcard:nth-child(1){transition-delay:0ms}
.mc-blogcard:nth-child(2){transition-delay:70ms}
.mc-blogcard:nth-child(3){transition-delay:140ms}
.mc-blogcard:nth-child(4){transition-delay:210ms}
.mc-blogcard:nth-child(5){transition-delay:280ms}

/* ================= Native cross-document page transitions ================= */
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:.32s;animation-timing-function:cubic-bezier(.22,.61,.36,1)}
@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}
/* ================= CSS-only burger icon (no icon-library dependency) ================= */
.mc-navbar__burger{flex-direction:column;gap:4px}
.mc-burger-bar{width:16px;height:2px;background:#fff;border-radius:2px;transition:transform var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-out)}
.mc-navbar__burger.is-open .mc-burger-bar:nth-child(1){transform:translateY(6px) rotate(45deg)}
.mc-navbar__burger.is-open .mc-burger-bar:nth-child(2){opacity:0}
.mc-navbar__burger.is-open .mc-burger-bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* ================= Local landing pages (template-landing-local.php) ================= */
.mc-local-hero{padding:56px 0 0;background:var(--wash-hero),#fff}
.mc-local-hero__inner{max-width:1200px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,0.86fr);gap:56px;align-items:center}
.mc-local-hero__copy{display:grid;gap:22px}
.mc-local-badge{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 13px;border-radius:var(--radius-pill);background:var(--lavender-050);color:var(--lavender-500);font-family:var(--font-body);font-size:13.5px;font-weight:600;width:fit-content}
.mc-local-hero__title{font-family:var(--font-display);font-weight:800;font-size:clamp(32px,4.4vw,54px);line-height:1.04;letter-spacing:-.03em;color:var(--ink-1000);margin:0}
.mc-local-hero__subtitle{font-size:18px;line-height:1.55;color:var(--text-body);max-width:520px;margin:0}
.mc-local-hero__trust{display:flex;flex-wrap:wrap;gap:18px;margin-top:6px}
.mc-local-hero__trust-item{display:flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:13.5px;font-weight:600;color:var(--ink-700)}
.mc-local-hero__trust-item svg{flex:0 0 auto;color:var(--status-complete)}
.mc-local-hero__media{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-float);aspect-ratio:4/5}
.mc-local-hero__media img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0;box-shadow:none}
@media(max-width:900px){.mc-local-hero__inner{grid-template-columns:1fr}.mc-local-hero__media{aspect-ratio:16/10;order:-1}}

.mc-local-section{padding:0 0 96px}
.mc-local-trust-shell{background:var(--ink-1000);color:#fff;border-radius:var(--radius-2xl);padding:56px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.mc-local-trust-shell h2{color:#fff}
.mc-local-trust-shell p{color:var(--text-invert-muted);font-size:16px;line-height:1.65}
.mc-local-trust-list{display:grid;gap:16px}
.mc-local-trust-list li{display:flex;gap:12px;align-items:flex-start;font-family:var(--font-body);font-size:15px;color:#fff}
.mc-local-trust-list svg{flex:0 0 auto;margin-top:2px;color:var(--coral-500)}
@media(max-width:820px){.mc-local-trust-shell{grid-template-columns:1fr}}