/* MARCURSO webfonts.
   SUBSTITUTION NOTE: marcurso.ch ships no licensed webfonts (the wordmark is a
   flattened PNG set in a high-contrast didone). Nearest open equivalents:
   - Newsreader  → editorial display serif, optical sizes, very light weights.
   - Archivo     → grotesque for interface, navigation, metadata.
   Replace these two @import lines with real @font-face rules when the licensed
   families arrive. See readme.md → TYPOGRAPHY. */
@import url("https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,200..500;1,6..72,200..400&family=Archivo:wght@300;400;500;600&display=swap");

:root{
  --font-display:"Newsreader",Georgia,"Times New Roman",serif;
  --font-serif:"Newsreader",Georgia,"Times New Roman",serif;
  --font-sans:"Archivo","Helvetica Neue",Helvetica,Arial,sans-serif;
  --font-ui:var(--font-sans);
}


/* MARCURSO colour system — warm, material, low-chroma.
   Base palette: ivory / stone / sand / taupe / warm grey / charcoal / ink.
   One accent only: Clay, taken from the tanned-leather and camel tones that
   dominate the Marcurso shoe and fabric photography. */
:root{
  /* ——— base neutrals (warm axis) ——— */
  --ivory-50:#FBF9F5;
  --ivory-100:#F6F3EE;
  --stone-200:#EDE8E0;
  --stone-300:#E1DAD0;
  --sand-400:#D3C9B9;
  --taupe-500:#B4A796;
  --warm-grey-600:#8B8378;
  --warm-grey-700:#6B655C;
  --charcoal-800:#3A3833;
  --ink-900:#211F1C;
  --ink-950:#14130F;
  --white:#FFFFFF;

  /* ——— accent: Clay ——— */
  --clay-300:#C9A793;
  --clay-500:#9A6B57;
  --clay-600:#7F5646;
  --clay-700:#674538;

  /* ——— semantic: surfaces ——— */
  --bg-primary:var(--ivory-100);
  --bg-secondary:var(--stone-200);
  --bg-tertiary:var(--stone-300);
  --bg-dark:var(--ink-900);
  --bg-dark-deep:var(--ink-950);
  --surface:var(--ivory-50);
  --surface-raised:var(--white);
  --surface-inverse:var(--charcoal-800);
  --scrim:rgba(20,19,15,.58);

  /* ——— semantic: text ——— */
  --text-primary:var(--ink-900);
  --text-secondary:var(--warm-grey-700);
  --text-muted:var(--warm-grey-600);
  --text-on-dark:var(--ivory-100);
  --text-on-dark-muted:rgba(246,243,238,.62);
  --text-accent:var(--clay-600);

  /* ——— semantic: lines ——— */
  --border-subtle:rgba(33,31,28,.14);
  --border-strong:rgba(33,31,28,.32);
  --border-on-dark:rgba(246,243,238,.20);
  --border-on-dark-strong:rgba(246,243,238,.42);
  --rule-hairline:rgba(33,31,28,.10);

  /* ——— semantic: interaction ——— */
  --accent:var(--clay-500);
  --accent-hover:var(--clay-600);
  --accent-active:var(--clay-700);
  --interactive-hover:var(--charcoal-800);
  --interactive-active:var(--ink-950);
  --interactive-disabled:var(--taupe-500);
  --interactive-disabled-bg:var(--stone-300);
  --focus-ring:var(--clay-600);
  --focus-ring-on-dark:var(--clay-300);
  --selection-bg:rgba(154,107,87,.22);
}


/* MARCURSO type scale.
   Two families, one job each: Newsreader carries voice, Archivo carries function.
   Display weights stay at 200–300 — luxury is scale, not bold. */
:root{
  /* ——— responsive display sizes ——— */
  --fs-display-xl:clamp(3.75rem,9.2vw,9.25rem); /* @kind font */   /*  60 → 148 */
  --fs-display-l:clamp(3rem,6.2vw,6rem); /* @kind font */          /*  48 →  96 */
  --fs-h1:clamp(2.5rem,4.2vw,4rem); /* @kind font */               /*  40 →  64 */
  --fs-h2:clamp(2rem,2.9vw,2.75rem); /* @kind font */              /*  32 →  44 */
  --fs-h3:clamp(1.5rem,1.9vw,1.875rem); /* @kind font */           /*  24 →  30 */
  --fs-h4:1.25rem; /* @kind font */                                /*  20 */
  --fs-lead:clamp(1.25rem,1.6vw,1.625rem); /* @kind font */        /*  20 →  26 */
  --fs-body-lg:1.125rem; /* @kind font */                          /*  18 */
  --fs-body:1rem; /* @kind font */                                 /*  16 */
  --fs-body-sm:0.875rem; /* @kind font */                          /*  14 */
  --fs-caption:0.75rem; /* @kind font */                           /*  12 */
  --fs-eyebrow:0.6875rem; /* @kind font */                         /*  11 */
  --fs-nav:0.8125rem; /* @kind font */                             /*  13 */
  --fs-button:0.75rem; /* @kind font */                            /*  12 */
  --fs-meta:0.75rem; /* @kind font */                              /*  12 */

  /* ——— line heights ——— */
  --lh-display:0.94; /* @kind font */
  --lh-display-l:0.98; /* @kind font */
  --lh-tight:1.06; /* @kind font */
  --lh-heading:1.14; /* @kind font */
  --lh-snug:1.3; /* @kind font */
  --lh-lead:1.5; /* @kind font */
  --lh-body:1.68; /* @kind font */
  --lh-flat:1; /* @kind font */

  /* ——— tracking ——— */
  --ls-display:-0.03em; /* @kind font */
  --ls-heading:-0.018em; /* @kind font */
  --ls-snug:-0.008em; /* @kind font */
  --ls-normal:0; /* @kind font */
  --ls-wide:0.04em; /* @kind font */
  --ls-wider:0.08em; /* @kind font */
  --ls-nav:0.14em; /* @kind font */
  --ls-button:0.16em; /* @kind font */
  --ls-eyebrow:0.22em; /* @kind font */
  --ls-wordmark:0.34em; /* @kind font */

  /* ——— weights ——— */
  --fw-thin:200; /* @kind font */
  --fw-light:300; /* @kind font */
  --fw-regular:400; /* @kind font */
  --fw-medium:500; /* @kind font */
  --fw-semibold:600; /* @kind font */

  /* ——— composed roles (shorthand: weight size/lh family) ——— */
  --type-display-xl:var(--fw-thin) var(--fs-display-xl)/var(--lh-display) var(--font-display); /* @kind font */
  --type-display-l:var(--fw-thin) var(--fs-display-l)/var(--lh-display-l) var(--font-display); /* @kind font */
  --type-h1:var(--fw-light) var(--fs-h1)/var(--lh-tight) var(--font-display); /* @kind font */
  --type-h2:var(--fw-light) var(--fs-h2)/var(--lh-heading) var(--font-display); /* @kind font */
  --type-h3:var(--fw-regular) var(--fs-h3)/var(--lh-snug) var(--font-display); /* @kind font */
  --type-h4:var(--fw-regular) var(--fs-h4)/var(--lh-snug) var(--font-display); /* @kind font */
  --type-lead:var(--fw-light) var(--fs-lead)/var(--lh-lead) var(--font-display); /* @kind font */
  --type-body-lg:var(--fw-regular) var(--fs-body-lg)/var(--lh-body) var(--font-sans); /* @kind font */
  --type-body:var(--fw-regular) var(--fs-body)/var(--lh-body) var(--font-sans); /* @kind font */
  --type-body-sm:var(--fw-regular) var(--fs-body-sm)/1.6 var(--font-sans); /* @kind font */
  --type-caption:var(--fw-regular) var(--fs-caption)/1.45 var(--font-sans); /* @kind font */
  --type-eyebrow:var(--fw-medium) var(--fs-eyebrow)/var(--lh-flat) var(--font-sans); /* @kind font */
  --type-nav:var(--fw-regular) var(--fs-nav)/var(--lh-flat) var(--font-sans); /* @kind font */
  --type-button:var(--fw-medium) var(--fs-button)/var(--lh-flat) var(--font-sans); /* @kind font */
  --type-meta:var(--fw-regular) var(--fs-meta)/1.4 var(--font-sans); /* @kind font */
}


/* MARCURSO spacing. 4px base for interface, editorial jumps above 64.
   Section rhythm is deliberately uneven: never two identical gaps in a row. */
:root{
  --space-0:0;
  --space-1:0.125rem;  /*   2 */
  --space-2:0.25rem;   /*   4 */
  --space-3:0.5rem;    /*   8 */
  --space-4:0.75rem;   /*  12 */
  --space-5:1rem;      /*  16 */
  --space-6:1.5rem;    /*  24 */
  --space-7:2rem;      /*  32 */
  --space-8:3rem;      /*  48 */
  --space-9:4rem;      /*  64 */
  --space-10:6rem;     /*  96 */
  --space-11:8rem;     /* 128 */
  --space-12:11.25rem; /* 180 */
  --space-13:15rem;    /* 240 */

  /* section rhythm — three intensities, alternated down the page */
  --section-y-sm:clamp(4rem,7vw,7rem); /* @kind spacing */
  --section-y:clamp(6rem,10vw,11.25rem); /* @kind spacing */
  --section-y-lg:clamp(8rem,14vw,15rem); /* @kind spacing */

  /* component internals */
  --pad-button-y:1.0625rem;   /* 17 */
  --pad-button-x:2.25rem;     /* 36 */
  --pad-button-sm-y:0.75rem;
  --pad-button-sm-x:1.5rem;
  --pad-field-y:0.9375rem;    /* 15 */
  --pad-field-x:0;            /* underline fields sit flush */
  --pad-card:var(--space-6);
  --tap-min:44px; /* @kind spacing */
}


/* MARCURSO grid — 12 / 8 / 4 columns, hairline-ruled.
   Content caps at 1680 so large screens gain margin, not line length. */
:root{
  --grid-cols:12; /* @kind other */
  --grid-gutter:2rem;      /* 32 */
  --page-margin:6rem;      /* 96 */
  --max-content:1680px;
  --max-text:44rem;        /* 704 — editorial measure, ~72ch */
  --max-text-narrow:32rem; /* 512 */
  --header-h:5.5rem;       /* 88 */
  --header-h-compact:4.25rem;
}
@media (max-width:1180px){
  :root{
    --grid-cols:8; /* @kind other */
    --grid-gutter:1.5rem;
    --page-margin:3rem;
    --header-h:5rem;
  }
}
@media (max-width:720px){
  :root{
    --grid-cols:4; /* @kind other */
    --grid-gutter:1rem;
    --page-margin:1.25rem;
    --header-h:4rem;
  }
}


/* MARCURSO lines, radii, elevation.
   Radius is near-zero by policy: tailoring is square. Shadows are almost absent —
   depth comes from tone, not blur. */
:root{
  --hairline:1px;
  --border-hairline:1px solid var(--border-subtle); /* @kind other */
  --border-rule:1px solid var(--rule-hairline); /* @kind other */
  --border-strong-1:1px solid var(--border-strong); /* @kind other */
  --border-dark:1px solid var(--border-on-dark); /* @kind other */

  --radius-none:0;
  --radius-xs:2px;     /* form fields, image masks only */
  --radius-pill:999px; /* tags and swatch dots only */

  --shadow-none:none;
  --shadow-whisper:0 1px 2px rgba(33,31,28,.04);
  --shadow-drawer:-24px 0 64px rgba(20,19,15,.14);
  --shadow-overlay:0 24px 64px rgba(20,19,15,.18);

  --focus-outline:1px solid var(--focus-ring); /* @kind other */
  --focus-offset:3px;
}


/* MARCURSO motion. Slow enough to read as deliberate, fast enough to obey.
   Everything decelerates; nothing bounces; nothing overshoots. */
:root{
  --dur-instant:120ms; /* @kind other */
  --dur-hover:240ms; /* @kind other */
  --dur-button:200ms; /* @kind other */
  --dur-link:320ms; /* @kind other */
  --dur-nav:520ms; /* @kind other */
  --dur-menu:640ms; /* @kind other */
  --dur-page:700ms; /* @kind other */
  --dur-reveal:900ms; /* @kind other */
  --dur-image:1200ms; /* @kind other */

  --ease-quiet:cubic-bezier(.22,1,.36,1); /* @kind other */        /* default: strong deceleration */
  --ease-inout:cubic-bezier(.65,0,.35,1); /* @kind other */        /* menus, drawers */
  --ease-image:cubic-bezier(.19,1,.22,1); /* @kind other */        /* scale + mask reveals */
  --ease-linear:linear; /* @kind other */

  --reveal-shift:28px; /* @kind other */   /* y-offset for entrance reveals */
  --image-zoom:1.035; /* @kind other */    /* hover scale ceiling for imagery */
  --stagger:90ms; /* @kind other */
}
@media (prefers-reduced-motion:reduce){
  :root{
    --dur-hover:1ms; /* @kind other */
    --dur-button:1ms; /* @kind other */
    --dur-link:1ms; /* @kind other */
    --dur-nav:1ms; /* @kind other */
    --dur-menu:1ms; /* @kind other */
    --dur-page:1ms; /* @kind other */
    --dur-reveal:1ms; /* @kind other */
    --dur-image:1ms; /* @kind other */
    --reveal-shift:0px;
    --image-zoom:1; /* @kind other */
    --stagger:0ms; /* @kind other */
  }
}


/* Minimal element defaults so any page linking styles.css starts correct. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg-primary);color:var(--text-primary);font:var(--type-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,p,figure,blockquote{margin:0}
img{display:block;max-width:100%}
::selection{background:var(--selection-bg)}
a{color:var(--text-primary);text-decoration:none;transition:color var(--dur-hover) var(--ease-quiet)}
a:hover{color:var(--accent-hover)}
:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
button,input,select,textarea{font:inherit;color:inherit}


.mc-btn{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;font:var(--type-button);letter-spacing:var(--ls-button);text-transform:uppercase;text-decoration:none;border:1px solid transparent;border-radius:var(--radius-none);cursor:pointer;padding:var(--pad-button-y) var(--pad-button-x);min-height:var(--tap-min);transition:background-color var(--dur-button) var(--ease-quiet),color var(--dur-button) var(--ease-quiet),border-color var(--dur-button) var(--ease-quiet),transform var(--dur-instant) var(--ease-quiet);white-space:nowrap}
.mc-btn--sm{padding:var(--pad-button-sm-y) var(--pad-button-sm-x);min-height:38px;font-size:.6875rem}
.mc-btn--block{display:flex;width:100%}
.mc-btn--primary{background:var(--ink-900);color:var(--ivory-100)}
.mc-btn--primary:hover{background:var(--charcoal-800)}
.mc-btn--primary:active{background:var(--interactive-active);transform:translateY(1px)}
.mc-btn--secondary{background:transparent;color:var(--text-primary);border-color:var(--border-strong)}
.mc-btn--secondary:hover{background:var(--stone-200);border-color:var(--ink-900)}
.mc-btn--secondary:active{background:var(--stone-300)}
.mc-btn--dark{background:var(--ivory-100);color:var(--ink-900)}
.mc-btn--dark:hover{background:var(--white)}
.mc-btn--dark:active{background:var(--stone-200);transform:translateY(1px)}
.mc-btn--light{background:transparent;color:var(--ivory-100);border-color:var(--border-on-dark-strong)}
.mc-btn--light:hover{background:rgba(246,243,238,.10);border-color:var(--ivory-100)}
.mc-btn--text{background:none;padding:0;min-height:auto;color:var(--text-primary);gap:.625rem}
.mc-btn--text .mc-btn__label{position:relative;padding-bottom:.375rem}
.mc-btn--text .mc-btn__label::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--dur-link) var(--ease-quiet)}
.mc-btn--text:hover{color:var(--accent-hover)}
.mc-btn--text:hover .mc-btn__label::after{transform:scaleX(1)}
.mc-btn--text .mc-btn__icon{transition:transform var(--dur-hover) var(--ease-quiet)}
.mc-btn--text:hover .mc-btn__icon{transform:translateX(6px)}
.mc-btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.mc-btn--light:focus-visible,.mc-btn--dark:focus-visible{outline-color:var(--focus-ring-on-dark)}
.mc-btn[disabled],.mc-btn[aria-disabled="true"]{background:var(--interactive-disabled-bg);color:var(--interactive-disabled);border-color:transparent;cursor:not-allowed;transform:none}
.mc-btn--text[disabled]{background:none;color:var(--interactive-disabled)}

.mc-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);padding:0;background:none;border:1px solid transparent;border-radius:var(--radius-none);color:var(--text-primary);cursor:pointer;transition:color var(--dur-hover) var(--ease-quiet),background-color var(--dur-hover) var(--ease-quiet),border-color var(--dur-hover) var(--ease-quiet)}
.mc-iconbtn:hover{color:var(--accent-hover)}
.mc-iconbtn:active{color:var(--accent-active)}
.mc-iconbtn--outlined{border-color:var(--border-subtle)}
.mc-iconbtn--outlined:hover{border-color:var(--border-strong);background:var(--stone-200)}
.mc-iconbtn--filled{background:var(--ink-900);color:var(--ivory-100)}
.mc-iconbtn--filled:hover{background:var(--charcoal-800);color:var(--ivory-100)}
.mc-iconbtn--on-dark{color:var(--ivory-100)}
.mc-iconbtn--on-dark:hover{color:var(--clay-300)}
.mc-iconbtn--on-dark.mc-iconbtn--outlined{border-color:var(--border-on-dark)}
.mc-iconbtn--on-dark.mc-iconbtn--outlined:hover{border-color:var(--ivory-100);background:rgba(246,243,238,.10)}
.mc-iconbtn:focus-visible{outline:var(--focus-outline);outline-offset:2px}
.mc-iconbtn--on-dark:focus-visible{outline-color:var(--focus-ring-on-dark)}
.mc-iconbtn[disabled]{color:var(--interactive-disabled);cursor:not-allowed}

.mc-link{position:relative;display:inline;color:inherit;text-decoration:none;transition:color var(--dur-hover) var(--ease-quiet)}
.mc-link::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--dur-link) var(--ease-quiet)}
.mc-link:hover{color:var(--accent-hover)}
.mc-link:hover::after{transform:scaleX(1)}
.mc-link--persistent::after{transform:scaleX(1);background:var(--border-strong)}
.mc-link--persistent:hover::after{background:currentColor}
.mc-link--muted{color:var(--text-secondary)}
.mc-link--on-dark{color:var(--ivory-100)}
.mc-link--on-dark:hover{color:var(--clay-300)}
.mc-link:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.mc-link--on-dark:focus-visible{outline-color:var(--focus-ring-on-dark)}
.mc-link__ext{display:inline-block;vertical-align:-1px;margin-left:.375rem;transition:transform var(--dur-hover) var(--ease-quiet)}
.mc-link:hover .mc-link__ext{transform:translate(2px,-2px)}

.mc-fig{margin:0;display:block}
.mc-fig__mask{position:relative;overflow:hidden;background:var(--stone-200)}
.mc-fig__img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--dur-image) var(--ease-image)}
.mc-fig--zoom:hover .mc-fig__img,a:hover .mc-fig--zoom .mc-fig__img{transform:scale(var(--image-zoom))}
.mc-fig__cap{display:flex;gap:var(--space-5);align-items:baseline;margin-top:var(--space-5);font:var(--type-caption);letter-spacing:var(--ls-wide);color:var(--text-muted)}
.mc-fig__idx{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);color:var(--text-muted);flex:none}
.mc-fig--reveal{opacity:0;transform:translateY(var(--reveal-shift));transition:opacity var(--dur-reveal) var(--ease-quiet),transform var(--dur-reveal) var(--ease-quiet)}
.mc-fig--in{opacity:1;transform:none}
.mc-fig__scrim{position:absolute;inset:0;pointer-events:none}
.mc-fig__scrim--full{background:var(--scrim)}
.mc-fig__scrim--bottom{background:linear-gradient(to top,rgba(20,19,15,.62) 0%,rgba(20,19,15,.28) 32%,transparent 55%)}

.mc-ed{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.mc-ed__eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-5)}
.mc-ed__title{font:var(--type-h3);letter-spacing:var(--ls-snug);color:var(--text-primary);margin-top:var(--space-6);max-width:24ch;transition:color var(--dur-hover) var(--ease-quiet)}
.mc-ed__excerpt{font:var(--type-body-sm);color:var(--text-secondary);margin-top:var(--space-4);max-width:46ch}
.mc-ed__cta{display:inline-flex;align-items:center;gap:.625rem;margin-top:var(--space-6);font:var(--type-button);letter-spacing:var(--ls-button);text-transform:uppercase;color:var(--text-primary)}
.mc-ed__cta span{position:relative;padding-bottom:.3125rem}
.mc-ed__cta span::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--dur-link) var(--ease-quiet)}
.mc-ed:hover .mc-ed__cta span::after{transform:scaleX(1)}
.mc-ed:hover .mc-ed__title{color:var(--accent-hover)}
.mc-ed__arrow{transition:transform var(--dur-hover) var(--ease-quiet)}
.mc-ed:hover .mc-ed__arrow{transform:translateX(6px)}
.mc-ed:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.mc-ed--dark .mc-ed__title{color:var(--ivory-100)}
.mc-ed--dark .mc-ed__excerpt{color:var(--text-on-dark-muted)}
.mc-ed--dark .mc-ed__eyebrow{color:var(--text-on-dark-muted)}
.mc-ed--dark .mc-ed__cta{color:var(--ivory-100)}
.mc-ed--dark:hover .mc-ed__title{color:var(--clay-300)}

.mc-bleed{position:relative;overflow:hidden;background:var(--ink-950)}
.mc-bleed__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.mc-bleed__scrim{position:absolute;inset:0;pointer-events:none}
.mc-bleed__scrim--bottom{background:linear-gradient(to top,rgba(20,19,15,.66) 0%,rgba(20,19,15,.30) 34%,transparent 58%)}
.mc-bleed__scrim--full{background:var(--scrim)}
.mc-bleed__scrim--none{display:none}
.mc-bleed__inner{position:relative;display:flex;flex-direction:column;min-height:inherit;padding:var(--section-y-sm) var(--page-margin);color:var(--ivory-100)}
.mc-bleed--bottom-left .mc-bleed__inner{justify-content:flex-end;align-items:flex-start}
.mc-bleed--bottom-right .mc-bleed__inner{justify-content:flex-end;align-items:flex-end;text-align:right}
.mc-bleed--center .mc-bleed__inner{justify-content:center;align-items:center;text-align:center}
.mc-bleed--top-left .mc-bleed__inner{justify-content:flex-start;align-items:flex-start}
.mc-bleed__eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:rgba(246,243,238,.74);margin-bottom:var(--space-6)}
.mc-bleed__title{font:var(--type-display-l);letter-spacing:var(--ls-display);max-width:20ch;text-wrap:balance}
.mc-bleed__text{font:var(--type-lead);color:rgba(246,243,238,.82);margin-top:var(--space-6);max-width:38ch}
.mc-bleed__actions{display:flex;flex-wrap:wrap;gap:var(--space-6);margin-top:var(--space-8)}
.mc-bleed__caption{position:absolute;right:var(--page-margin);bottom:var(--space-6);font:var(--type-caption);letter-spacing:var(--ls-wide);color:rgba(246,243,238,.62)}
@media (max-width:720px){.mc-bleed--bottom-right .mc-bleed__inner{align-items:flex-start;text-align:left}.mc-bleed__caption{display:none}}

.mc-itm{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--grid-gutter);align-items:center;padding:var(--section-y) var(--page-margin)}
.mc-itm--tight{padding-block:var(--section-y-sm)}
.mc-itm__media{grid-column:1 / span 6}
.mc-itm__body{grid-column:8 / span 4}
.mc-itm--right .mc-itm__media{grid-column:7 / span 6}
.mc-itm--right .mc-itm__body{grid-column:2 / span 4}
.mc-itm__eyebrow{display:block;font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-6)}
.mc-itm__title{font:var(--type-h2);letter-spacing:var(--ls-heading)}
.mc-itm__text{font:var(--type-body);color:var(--text-secondary);margin-top:var(--space-6);max-width:44ch}
.mc-itm__actions{display:flex;flex-wrap:wrap;gap:var(--space-6);margin-top:var(--space-8)}
.mc-itm--dark{background:var(--bg-dark);color:var(--text-on-dark)}
.mc-itm--dark .mc-itm__eyebrow,.mc-itm--dark .mc-itm__text{color:var(--text-on-dark-muted)}
@media (max-width:1180px){
  .mc-itm{grid-template-columns:repeat(8,1fr)}
  .mc-itm__media,.mc-itm--right .mc-itm__media{grid-column:1 / span 5}
  .mc-itm__body,.mc-itm--right .mc-itm__body{grid-column:6 / span 3}
}
@media (max-width:720px){
  .mc-itm{grid-template-columns:1fr;gap:var(--space-8)}
  .mc-itm__media,.mc-itm--right .mc-itm__media,.mc-itm__body,.mc-itm--right .mc-itm__body{grid-column:1 / -1}
  .mc-itm__body{padding-left:var(--space-5);border-left:1px solid var(--rule-hairline)}
  .mc-itm--dark .mc-itm__body{border-color:var(--border-on-dark)}
}

.mc-prod{display:block;text-decoration:none;color:inherit}
.mc-prod__body{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-5);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--rule-hairline)}
.mc-prod__name{font:var(--type-h4);letter-spacing:var(--ls-snug);color:var(--text-primary);transition:color var(--dur-hover) var(--ease-quiet)}
.mc-prod__meta{display:block;font:var(--type-meta);letter-spacing:var(--ls-wide);color:var(--text-muted);margin-top:var(--space-2)}
.mc-prod__price{font:var(--type-meta);letter-spacing:var(--ls-wide);color:var(--text-secondary);white-space:nowrap;flex:none}
.mc-prod:hover .mc-prod__name{color:var(--accent-hover)}
.mc-prod:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}
.mc-prod__swatches{display:flex;gap:.375rem;margin-top:var(--space-4)}
.mc-prod__swatch{width:10px;height:10px;border-radius:var(--radius-pill);border:1px solid var(--border-subtle)}

.mc-split{display:grid;grid-template-columns:1fr 1fr;min-height:78vh}
.mc-split--wide-left{grid-template-columns:1.35fr 1fr}
.mc-split--wide-right{grid-template-columns:1fr 1.35fr}
.mc-split__media{position:relative;overflow:hidden;background:var(--stone-200)}
.mc-split__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--dur-image) var(--ease-image)}
.mc-split:hover .mc-split__media--zoom img{transform:scale(var(--image-zoom))}
.mc-split__panel{display:flex;flex-direction:column;justify-content:center;padding:var(--section-y-sm) clamp(2rem,5vw,6rem);background:var(--bg-secondary)}
.mc-split__panel--tone-surface{background:var(--surface)}
.mc-split__panel--tone-dark{background:var(--bg-dark);color:var(--text-on-dark)}
.mc-split__eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-7)}
.mc-split__panel--tone-dark .mc-split__eyebrow{color:var(--text-on-dark-muted)}
.mc-split__title{font:var(--type-h1);letter-spacing:var(--ls-heading);max-width:18ch}
.mc-split__text{font:var(--type-body);color:var(--text-secondary);margin-top:var(--space-7);max-width:42ch}
.mc-split__panel--tone-dark .mc-split__text{color:var(--text-on-dark-muted)}
.mc-split__actions{display:flex;flex-wrap:wrap;gap:var(--space-6);margin-top:var(--space-8)}
@media (max-width:900px){
  .mc-split,.mc-split--wide-left,.mc-split--wide-right{grid-template-columns:1fr;min-height:0}
  .mc-split__media{aspect-ratio:4 / 3}
  .mc-split--flip-mobile .mc-split__media{order:-1}
}

.mc-stmt{padding:var(--section-y) var(--page-margin);display:grid;grid-template-columns:repeat(12,1fr);gap:var(--grid-gutter)}
.mc-stmt__inner{grid-column:2 / span 9}
.mc-stmt--centered .mc-stmt__inner{grid-column:3 / span 8;text-align:center}
.mc-stmt__rule{height:1px;background:var(--border-subtle);margin-bottom:var(--space-9)}
.mc-stmt__eyebrow{display:block;font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-8)}
.mc-stmt__quote{font:var(--fw-thin) var(--fs-display-l)/1.04 var(--font-display);letter-spacing:var(--ls-display);color:var(--text-primary);text-wrap:pretty;margin:0}
.mc-stmt__quote--h1{font:var(--type-h1);letter-spacing:var(--ls-heading)}
.mc-stmt__attr{display:block;font:var(--type-caption);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-muted);margin-top:var(--space-8)}
.mc-stmt--dark{background:var(--bg-dark)}
.mc-stmt--dark .mc-stmt__quote{color:var(--ivory-100)}
.mc-stmt--dark .mc-stmt__rule{background:var(--border-on-dark)}
.mc-stmt--dark .mc-stmt__eyebrow,.mc-stmt--dark .mc-stmt__attr{color:var(--text-on-dark-muted)}
@media (max-width:720px){.mc-stmt{grid-template-columns:1fr}.mc-stmt__inner,.mc-stmt--centered .mc-stmt__inner{grid-column:1 / -1;text-align:left}}

.mc-field{display:flex;flex-direction:column;gap:.4375rem}
.mc-field__label{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);transition:color var(--dur-hover) var(--ease-quiet)}
.mc-field__req{color:var(--accent);margin-left:.25rem}
.mc-field__control{width:100%;background:transparent;border:0;border-bottom:1px solid var(--border-strong);border-radius:var(--radius-none);padding:var(--pad-field-y) 0;font:var(--type-body);color:var(--text-primary);min-height:var(--tap-min);transition:border-color var(--dur-hover) var(--ease-quiet),background-color var(--dur-hover) var(--ease-quiet)}
.mc-field__control::placeholder{color:var(--taupe-500)}
.mc-field__control:hover{border-bottom-color:var(--ink-900)}
.mc-field__control:focus{outline:none;border-bottom-color:var(--accent)}
.mc-field:focus-within .mc-field__label{color:var(--accent-hover)}
.mc-field__control[disabled]{color:var(--interactive-disabled);border-bottom-color:var(--border-subtle);cursor:not-allowed}
.mc-field--error .mc-field__control{border-bottom-color:var(--clay-700)}
.mc-field--error .mc-field__label{color:var(--clay-700)}
.mc-field__hint{font:var(--type-caption);letter-spacing:var(--ls-wide);color:var(--text-muted)}
.mc-field--error .mc-field__hint{color:var(--clay-700)}
.mc-field textarea.mc-field__control{min-height:6.5rem;resize:vertical;line-height:var(--lh-body)}
.mc-field--boxed .mc-field__control{border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--surface-raised);padding:var(--pad-field-y) var(--space-5)}
.mc-field--boxed .mc-field__control:focus{border-color:var(--accent)}
.mc-field--on-dark .mc-field__label{color:var(--text-on-dark-muted)}
.mc-field--on-dark .mc-field__control{color:var(--ivory-100);border-bottom-color:var(--border-on-dark-strong)}
.mc-field--on-dark .mc-field__control::placeholder{color:rgba(246,243,238,.40)}
.mc-field--on-dark .mc-field__control:hover{border-bottom-color:var(--ivory-100)}
.mc-field--on-dark .mc-field__control:focus{border-bottom-color:var(--clay-300)}
.mc-field--on-dark:focus-within .mc-field__label{color:var(--clay-300)}

.mc-nl{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--grid-gutter);padding:var(--section-y) var(--page-margin);border-top:1px solid var(--border-subtle)}
.mc-nl__head{grid-column:1 / span 5}
.mc-nl__form{grid-column:7 / span 5;align-self:end}
.mc-nl__eyebrow{display:block;font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-6)}
.mc-nl__title{font:var(--type-h2);letter-spacing:var(--ls-heading);max-width:20ch}
.mc-nl__text{font:var(--type-body-sm);color:var(--text-secondary);margin-top:var(--space-5);max-width:40ch}
.mc-nl__row{display:flex;align-items:flex-end;gap:var(--space-6)}
.mc-nl__row > *:first-child{flex:1}
.mc-nl__legal{font:var(--type-caption);letter-spacing:var(--ls-wide);color:var(--text-muted);margin-top:var(--space-6);max-width:44ch}
.mc-nl__done{display:flex;align-items:center;gap:var(--space-4);font:var(--type-lead);color:var(--text-primary);padding-bottom:var(--space-4)}
.mc-nl--dark{background:var(--bg-dark);border-top-color:var(--border-on-dark)}
.mc-nl--dark .mc-nl__title,.mc-nl--dark .mc-nl__done{color:var(--ivory-100)}
.mc-nl--dark .mc-nl__eyebrow,.mc-nl--dark .mc-nl__text,.mc-nl--dark .mc-nl__legal{color:var(--text-on-dark-muted)}
@media (max-width:1180px){.mc-nl{grid-template-columns:repeat(8,1fr)}.mc-nl__head{grid-column:1 / span 8}.mc-nl__form{grid-column:1 / span 6;margin-top:var(--space-8)}}
@media (max-width:720px){.mc-nl{grid-template-columns:1fr}.mc-nl__head,.mc-nl__form{grid-column:1 / -1}.mc-nl__row{flex-direction:column;align-items:stretch;gap:var(--space-7)}}

.mc-search{display:flex;align-items:center;gap:var(--space-5);border-bottom:1px solid var(--border-strong);transition:border-color var(--dur-hover) var(--ease-quiet)}
.mc-search:focus-within{border-bottom-color:var(--accent)}
.mc-search__icon{color:var(--text-muted);flex:none}
.mc-search__input{flex:1;min-width:0;background:none;border:0;padding:var(--space-4) 0;font:var(--fw-light) var(--fs-h3)/1.2 var(--font-display);color:var(--text-primary);min-height:var(--tap-min)}
.mc-search__input:focus{outline:none}
.mc-search__input::placeholder{color:var(--taupe-500)}
.mc-search--compact .mc-search__input{font:var(--type-body);padding:var(--space-3) 0}
.mc-search--on-dark{border-bottom-color:var(--border-on-dark-strong)}
.mc-search--on-dark .mc-search__input{color:var(--ivory-100)}
.mc-search--on-dark .mc-search__input::placeholder{color:rgba(246,243,238,.42)}
.mc-search--on-dark .mc-search__icon{color:var(--text-on-dark-muted)}
.mc-search__clear{opacity:0;pointer-events:none;transition:opacity var(--dur-hover) var(--ease-quiet)}
.mc-search--filled .mc-search__clear{opacity:1;pointer-events:auto}

.mc-sel{display:flex;flex-direction:column;gap:.4375rem}
.mc-sel__label{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);transition:color var(--dur-hover) var(--ease-quiet)}
.mc-sel__wrap{position:relative;display:flex;align-items:center}
.mc-sel__control{appearance:none;-webkit-appearance:none;width:100%;background:transparent;border:0;border-bottom:1px solid var(--border-strong);border-radius:var(--radius-none);padding:var(--pad-field-y) 2rem var(--pad-field-y) 0;font:var(--type-body);color:var(--text-primary);min-height:var(--tap-min);cursor:pointer;transition:border-color var(--dur-hover) var(--ease-quiet)}
.mc-sel__control:hover{border-bottom-color:var(--ink-900)}
.mc-sel__control:focus{outline:none;border-bottom-color:var(--accent)}
.mc-sel:focus-within .mc-sel__label{color:var(--accent-hover)}
.mc-sel__chev{position:absolute;right:0;pointer-events:none;color:var(--text-muted);transition:transform var(--dur-hover) var(--ease-quiet)}
.mc-sel__wrap:hover .mc-sel__chev{color:var(--text-primary)}
.mc-sel__control[disabled]{color:var(--interactive-disabled);border-bottom-color:var(--border-subtle);cursor:not-allowed}
.mc-sel__hint{font:var(--type-caption);letter-spacing:var(--ls-wide);color:var(--text-muted)}
.mc-sel--error .mc-sel__control{border-bottom-color:var(--clay-700)}
.mc-sel--error .mc-sel__label,.mc-sel--error .mc-sel__hint{color:var(--clay-700)}
.mc-sel--on-dark .mc-sel__label{color:var(--text-on-dark-muted)}
.mc-sel--on-dark .mc-sel__control{color:var(--ivory-100);border-bottom-color:var(--border-on-dark-strong)}
.mc-sel--on-dark .mc-sel__control option{color:var(--ink-900)}
.mc-sel--on-dark .mc-sel__chev{color:var(--text-on-dark-muted)}

.mc-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.625rem;font:var(--type-caption);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-muted)}
.mc-crumbs a{color:inherit;text-decoration:none;transition:color var(--dur-hover) var(--ease-quiet)}
.mc-crumbs a:hover{color:var(--accent-hover)}
.mc-crumbs__sep{width:14px;height:1px;background:var(--border-strong);display:inline-block}
.mc-crumbs__current{color:var(--text-primary)}
.mc-crumbs--on-dark{color:var(--text-on-dark-muted)}
.mc-crumbs--on-dark .mc-crumbs__current{color:var(--ivory-100)}
.mc-crumbs--on-dark .mc-crumbs__sep{background:var(--border-on-dark-strong)}

.mc-catnav{display:flex;align-items:baseline;gap:clamp(1.5rem,3vw,3rem);flex-wrap:wrap;padding-bottom:var(--space-5);border-bottom:1px solid var(--border-subtle)}
.mc-catnav__item{position:relative;background:none;border:0;padding:0 0 var(--space-4);font:var(--type-nav);letter-spacing:var(--ls-nav);text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:color var(--dur-hover) var(--ease-quiet)}
.mc-catnav__item::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--text-primary);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-link) var(--ease-quiet)}
.mc-catnav__item:hover{color:var(--text-primary)}
.mc-catnav__item[aria-selected="true"]{color:var(--text-primary)}
.mc-catnav__item[aria-selected="true"]::after,.mc-catnav__item:hover::after{transform:scaleX(1)}
.mc-catnav__item:focus-visible{outline:var(--focus-outline);outline-offset:4px}
.mc-catnav__count{font:var(--type-caption);letter-spacing:var(--ls-wide);color:var(--text-muted);margin-left:.4375rem;vertical-align:super;font-size:.625rem}
.mc-catnav--scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.mc-catnav--scroll::-webkit-scrollbar{display:none}

.mc-mm{position:fixed;inset:0;z-index:60;background:var(--bg-dark);color:var(--text-on-dark);display:flex;flex-direction:column;opacity:0;visibility:hidden;transition:opacity var(--dur-menu) var(--ease-inout),visibility var(--dur-menu) step-end}
.mc-mm--open{opacity:1;visibility:visible;transition:opacity var(--dur-menu) var(--ease-inout),visibility 0s}
.mc-mm__bar{display:flex;align-items:center;justify-content:space-between;height:var(--header-h);padding:0 var(--page-margin);border-bottom:1px solid var(--border-on-dark)}
.mc-mm__list{flex:1;display:flex;flex-direction:column;justify-content:center;gap:0;padding:var(--space-9) var(--page-margin)}
.mc-mm__item{display:flex;align-items:baseline;gap:var(--space-6);padding:var(--space-6) 0;border-bottom:1px solid var(--border-on-dark);color:var(--ivory-100);text-decoration:none;opacity:0;transform:translateY(18px);transition:opacity var(--dur-nav) var(--ease-quiet),transform var(--dur-nav) var(--ease-quiet),color var(--dur-hover) var(--ease-quiet)}
.mc-mm--open .mc-mm__item{opacity:1;transform:none}
.mc-mm__item:hover{color:var(--clay-300)}
.mc-mm__idx{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);color:rgba(246,243,238,.44);flex:none;width:2rem}
.mc-mm__label{font:var(--fw-light) clamp(2rem,7vw,3.25rem)/1.06 var(--font-display);letter-spacing:var(--ls-heading)}
.mc-mm__foot{padding:var(--space-8) var(--page-margin);border-top:1px solid var(--border-on-dark);display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-8);font:var(--type-body-sm);color:var(--text-on-dark-muted)}
.mc-mm__foot a{color:var(--text-on-dark-muted);text-decoration:none;border-bottom:1px solid rgba(246,243,238,.22)}
.mc-mm__foot a:hover{color:var(--ivory-100);border-color:var(--ivory-100)}

.mc-hdr{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);height:var(--header-h);padding:0 var(--page-margin);background:transparent;color:var(--ivory-100);transition:background-color var(--dur-nav) var(--ease-inout),color var(--dur-nav) var(--ease-inout),height var(--dur-nav) var(--ease-inout),border-color var(--dur-nav) var(--ease-inout);border-bottom:1px solid transparent}
.mc-hdr--solid{background:var(--bg-primary);color:var(--text-primary);height:var(--header-h-compact);border-bottom-color:var(--rule-hairline)}
.mc-hdr--static{position:relative;background:var(--bg-primary);color:var(--text-primary);border-bottom-color:var(--rule-hairline)}
.mc-hdr__nav{display:flex;align-items:center;gap:clamp(1.5rem,2.6vw,2.75rem)}
.mc-hdr__link{position:relative;font:var(--type-nav);letter-spacing:var(--ls-nav);text-transform:uppercase;color:inherit;text-decoration:none;padding:.5rem 0;transition:opacity var(--dur-hover) var(--ease-quiet)}
.mc-hdr__link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--dur-link) var(--ease-quiet)}
.mc-hdr__link:hover::after,.mc-hdr__link[aria-current="page"]::after{transform:scaleX(1)}
.mc-hdr__link:focus-visible{outline:var(--focus-outline);outline-offset:4px}
.mc-hdr:not(.mc-hdr--solid):not(.mc-hdr--static) .mc-hdr__link:focus-visible{outline-color:var(--focus-ring-on-dark)}
.mc-hdr__side{display:flex;align-items:center;gap:var(--space-3);justify-content:flex-end}
.mc-hdr__brand{display:flex;align-items:center}
.mc-hdr__burger{display:none}
.mc-hdr__ext{display:inline-flex;align-items:center;gap:.5rem}
@media (max-width:1180px){.mc-hdr__nav{display:none}.mc-hdr__burger{display:inline-flex}}

.mc-util{display:flex;align-items:center;justify-content:center;gap:var(--space-6);min-height:38px;padding:.5rem var(--page-margin);background:var(--ink-900);color:var(--text-on-dark);font:var(--type-caption);letter-spacing:var(--ls-wider);text-transform:uppercase}
.mc-util--tone-stone{background:var(--bg-tertiary);color:var(--text-secondary)}
.mc-util__msg{display:inline-flex;align-items:center;gap:.5rem}
.mc-util__link{color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:1px;transition:opacity var(--dur-hover) var(--ease-quiet)}
.mc-util__link:hover{opacity:.66;color:inherit}
.mc-util__sep{width:1px;height:11px;background:currentColor;opacity:.34}
@media (max-width:720px){.mc-util__sep,.mc-util__secondary{display:none}}

.mc-acc{border-top:1px solid var(--border-subtle)}
.mc-acc__item{border-bottom:1px solid var(--border-subtle)}
.mc-acc__trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);width:100%;background:none;border:0;padding:var(--space-6) 0;text-align:left;cursor:pointer;color:var(--text-primary);transition:color var(--dur-hover) var(--ease-quiet)}
.mc-acc__trigger:hover{color:var(--accent-hover)}
.mc-acc__trigger:focus-visible{outline:var(--focus-outline);outline-offset:2px}
.mc-acc__label{font:var(--type-h4);letter-spacing:var(--ls-snug)}
.mc-acc__sign{position:relative;width:14px;height:14px;flex:none}
.mc-acc__sign::before,.mc-acc__sign::after{content:"";position:absolute;background:currentColor;transition:transform var(--dur-hover) var(--ease-quiet),opacity var(--dur-hover) var(--ease-quiet)}
.mc-acc__sign::before{left:0;right:0;top:6.5px;height:1px}
.mc-acc__sign::after{top:0;bottom:0;left:6.5px;width:1px}
.mc-acc__item--open .mc-acc__sign::after{transform:rotate(90deg);opacity:0}
.mc-acc__panel{overflow:hidden;height:0;transition:height var(--dur-nav) var(--ease-inout)}
.mc-acc__inner{padding:0 0 var(--space-7);font:var(--type-body);color:var(--text-secondary);max-width:56ch}
.mc-acc--dark{border-top-color:var(--border-on-dark)}
.mc-acc--dark .mc-acc__item{border-bottom-color:var(--border-on-dark)}
.mc-acc--dark .mc-acc__trigger{color:var(--ivory-100)}
.mc-acc--dark .mc-acc__trigger:hover{color:var(--clay-300)}
.mc-acc--dark .mc-acc__inner{color:var(--text-on-dark-muted)}

.mc-drawer__scrim{position:fixed;inset:0;z-index:70;background:var(--scrim);opacity:0;visibility:hidden;transition:opacity var(--dur-menu) var(--ease-inout),visibility var(--dur-menu) step-end}
.mc-drawer__scrim--open{opacity:1;visibility:visible;transition:opacity var(--dur-menu) var(--ease-inout),visibility 0s}
.mc-drawer{position:fixed;z-index:71;background:var(--surface);color:var(--text-primary);display:flex;flex-direction:column;box-shadow:var(--shadow-drawer);transition:transform var(--dur-menu) var(--ease-inout)}
.mc-drawer--right{top:0;right:0;bottom:0;width:min(460px,92vw);transform:translateX(101%)}
.mc-drawer--left{top:0;left:0;bottom:0;width:min(460px,92vw);transform:translateX(-101%)}
.mc-drawer--top{top:0;left:0;right:0;transform:translateY(-101%);box-shadow:var(--shadow-overlay)}
.mc-drawer--center{top:50%;left:50%;width:min(620px,92vw);transform:translate(-50%,-46%);opacity:0;box-shadow:var(--shadow-overlay);transition:transform var(--dur-nav) var(--ease-quiet),opacity var(--dur-nav) var(--ease-quiet)}
.mc-drawer--open.mc-drawer--right,.mc-drawer--open.mc-drawer--left{transform:translateX(0)}
.mc-drawer--open.mc-drawer--top{transform:translateY(0)}
.mc-drawer--open.mc-drawer--center{transform:translate(-50%,-50%);opacity:1}
.mc-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-7) var(--space-8);border-bottom:1px solid var(--border-subtle)}
.mc-drawer__title{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}
.mc-drawer__body{flex:1;overflow-y:auto;padding:var(--space-8)}
.mc-drawer__foot{padding:var(--space-7) var(--space-8);border-top:1px solid var(--border-subtle);display:flex;gap:var(--space-5)}

.mc-tabs__list{display:flex;gap:clamp(1.5rem,3vw,2.75rem);border-bottom:1px solid var(--border-subtle)}
.mc-tabs__tab{position:relative;background:none;border:0;padding:0 0 var(--space-5);font:var(--type-nav);letter-spacing:var(--ls-nav);text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:color var(--dur-hover) var(--ease-quiet)}
.mc-tabs__tab::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--text-primary);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-link) var(--ease-quiet)}
.mc-tabs__tab:hover{color:var(--text-primary)}
.mc-tabs__tab[aria-selected="true"]{color:var(--text-primary)}
.mc-tabs__tab[aria-selected="true"]::after{transform:scaleX(1)}
.mc-tabs__tab:focus-visible{outline:var(--focus-outline);outline-offset:4px}
.mc-tabs__panel{padding-top:var(--space-8);animation:mc-tab-in var(--dur-nav) var(--ease-quiet)}
@keyframes mc-tab-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.mc-tabs__panel{animation:none}}

.mc-social{display:flex;align-items:center;gap:var(--space-3)}
.mc-social__link{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);color:inherit;transition:color var(--dur-hover) var(--ease-quiet),transform var(--dur-hover) var(--ease-quiet)}
.mc-social__link:hover{color:var(--accent-hover)}
.mc-social--on-dark .mc-social__link:hover{color:var(--clay-300)}
.mc-social__link:focus-visible{outline:var(--focus-outline);outline-offset:2px}
.mc-social--on-dark .mc-social__link:focus-visible{outline-color:var(--focus-ring-on-dark)}
.mc-social--labelled{gap:var(--space-7)}
.mc-social--labelled .mc-social__link{width:auto;gap:.625rem;font:var(--type-caption);letter-spacing:var(--ls-wider);text-transform:uppercase}

.mc-ft{background:var(--bg-dark-deep);color:var(--text-on-dark);padding:var(--section-y-sm) var(--page-margin) var(--space-8)}
.mc-ft__top{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--grid-gutter);padding-bottom:var(--space-10);border-bottom:1px solid var(--border-on-dark)}
.mc-ft__brand{grid-column:1 / span 4;display:flex;flex-direction:column;gap:var(--space-7)}
.mc-ft__claim{font:var(--fw-light) var(--fs-h3)/1.28 var(--font-display);letter-spacing:var(--ls-snug);color:var(--ivory-100);max-width:20ch}
.mc-ft__col{grid-column:span 2}
.mc-ft__col--wide{grid-column:span 3}
.mc-ft__h{display:block;font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:rgba(246,243,238,.46);margin-bottom:var(--space-6)}
.mc-ft__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}
.mc-ft__list a,.mc-ft__addr a{position:relative;color:var(--text-on-dark);text-decoration:none;font:var(--type-body-sm);transition:color var(--dur-hover) var(--ease-quiet)}
.mc-ft__list a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--dur-link) var(--ease-quiet)}
.mc-ft__list a:hover{color:var(--clay-300)}
.mc-ft__list a:hover::after{transform:scaleX(1)}
.mc-ft__addr{font:var(--type-body-sm);color:var(--text-on-dark-muted);line-height:1.9;font-style:normal}
.mc-ft__addr strong{color:var(--ivory-100);font-weight:var(--fw-regular)}
.mc-ft__addr a:hover{color:var(--clay-300)}
.mc-ft__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6);padding-top:var(--space-8)}
.mc-ft__legal{display:flex;flex-wrap:wrap;gap:var(--space-6);font:var(--type-caption);letter-spacing:var(--ls-wide);color:rgba(246,243,238,.46)}
.mc-ft__legal a{color:inherit;text-decoration:none}
.mc-ft__legal a:hover{color:var(--ivory-100)}
@media (max-width:1180px){
  .mc-ft__top{grid-template-columns:repeat(8,1fr)}
  .mc-ft__brand{grid-column:1 / span 8}
  .mc-ft__col{grid-column:span 4}.mc-ft__col--wide{grid-column:span 4}
}
@media (max-width:720px){
  .mc-ft__top{grid-template-columns:1fr;gap:var(--space-8)}
  .mc-ft__brand,.mc-ft__col,.mc-ft__col--wide{grid-column:1 / -1}
}


@keyframes mc-rise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes mc-fade{from{opacity:0}to{opacity:1}}
@keyframes mc-drift{from{transform:translate3d(0,-4.5%,0) scale(1.12)}to{transform:translate3d(0,4.5%,0) scale(1.12)}}
@keyframes mc-hero-in{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}
@keyframes mc-hero-img{from{transform:scale(1.14)}to{transform:scale(1)}}
@keyframes mc-wipe{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
body{overscroll-behavior-y:none}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:var(--border-subtle)}
@media (prefers-reduced-motion:reduce){[data-reveal],[data-drift],[data-hero]{animation:none!important;opacity:1!important;transform:none!important;clip-path:none!important}}
