/* Public pages are rendered on the server. The examples supply the color. */
:root { --mk-ink:#222420; --mk-muted:#5c605c; --mk-line:#cccec7; --mk-soft:#f0f0e9; --mk-blue:#254ee8; }
body { background:#f8f8f2; color:var(--mk-ink); }
.mk-shell { max-width:1440px; }
h1,h2,h3 { font-family:'DM Sans',sans-serif; }
h1,h2 { text-wrap:balance; }
.mk-header { height:82px; border-bottom:1px solid var(--mk-line); gap:22px; }
.mk-header .mk-logo svg { color:var(--mk-blue); }
.mk-desktop-nav { gap:23px; }
.mk-desktop-nav a,.mk-login { color:#3f443d; }
.mk-desktop-nav a { padding:10px 0; }
.mk-login { display:inline-flex; align-items:center; }
.mk-main { min-width:0; }
.mk-button { border-radius:3px; min-height:48px; cursor:pointer; }
.mk-primary { border:1px solid var(--mk-blue); }
.mk-secondary { border:1px solid #848b7e; color:#292e27; background:transparent; }
.mk-eyebrow { color:#5a6055; font-size:11px; letter-spacing:.12em; }
.mk-footer { background:#eeeee5; border-top:1px solid var(--mk-line); }
.mk-brand-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(28px,4vw,64px); padding:32px 0; }
.mk-brand-hero-copy { min-width:0; }
.mk-brand-hero h1 { font-size:clamp(2.7rem,4.8vw,4.4rem); line-height:1.04; letter-spacing:-.055em; font-weight:600; margin:18px 0 22px; }
.mk-brand-hero h1 em,.mk-brand-cta h2 em { font-family:Georgia,serif; font-weight:400; letter-spacing:-.06em; }
.mk-brand-hero-copy>p { max-width:440px; font-size:17px; line-height:1.7; }
.mk-brand-hero .mk-actions { gap:16px 22px; margin-top:24px; }
.mk-hero-example { min-width:0; }
.mk-hero-example>a { display:block; aspect-ratio:1.2; overflow:hidden; border:1px solid #d9dcd2; background:#e4e7dc; }
.mk-hero-example img { display:block; width:100%; height:auto; }
.mk-hero-example figcaption { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:4px 12px; font-size:11px; padding-top:8px; color:var(--mk-muted); }
.mk-hero-example figcaption a { display:inline-flex; align-items:center; gap:8px; min-height:36px; }
.mk-brand-strip { border-block:1px solid var(--mk-line); padding:18px 0; display:flex; justify-content:space-between; align-items:center; gap:20px; font-size:13px; }
.mk-brand-strip>span { font-weight:650; }
.mk-brand-strip nav { display:flex; gap:30px; flex-wrap:wrap; }
.mk-brand-strip a { display:flex; align-items:center; gap:8px; color:#43483d; text-decoration:none; min-height:44px; }
.mk-brand-strip a:hover { text-decoration:underline; }
.mk-work-section { padding:36px 0 58px; }
.mk-work-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:50px; margin-bottom:30px; }
.mk-work-heading h2 { font-size:clamp(2.2rem,3.2vw,2.8rem); margin-top:14px; line-height:1.08; letter-spacing:-.05em; }
.mk-work-heading>div+div { max-width:360px; padding-bottom:3px; }
.mk-work-heading p { font-size:15px; line-height:1.7; }
.mk-work-heading .mk-text-link { margin-top:15px; }
.mk-design-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px 22px; }
.mk-design-card { min-width:0; }
.mk-design-link { display:block; text-decoration:none; color:inherit; }
.mk-design-window { position:relative; background:#e4e7dc; border:1px solid #d9dcd2; aspect-ratio:1.22; overflow:hidden; }
.mk-design-window img { display:block; width:100%; height:auto; transition:transform .25s ease; }
.mk-design-link:hover .mk-design-window img { transform:translateY(-10px); }
.mk-design-open { position:absolute; bottom:12px; right:12px; display:flex; align-items:center; gap:9px; color:#24281e; background:#fff; padding:9px 12px; border:1px solid #d7dacd; border-radius:2px; font-size:12px; }
.mk-design-caption { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; padding:13px 0 0; }
.mk-design-caption h3 { font-size:17px; font-weight:650; letter-spacing:-.02em; }
.mk-design-caption p { font-size:12px; margin-top:4px; }
.mk-design-type { font-size:10px; margin-top:2px; padding:3px 7px; border:1px solid #d6d8cf; color:#555d4c; white-space:nowrap; }
.mk-work-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:30px; }
.mk-work-footer p { font-size:12px; }
.mk-manifesto { border-block:1px solid var(--mk-line); padding:52px 0; display:grid; grid-template-columns:1fr 1.15fr; gap:32px 70px; }
.mk-manifesto h2 { font-family:Georgia,serif; font-size:clamp(2.6rem,4vw,4rem); font-weight:400; line-height:1.05; letter-spacing:-.05em; margin-top:17px; }
.mk-manifesto>div+div { max-width:540px; }
.mk-manifesto p { font-size:16px; line-height:1.8; }
.mk-manifesto p+p { margin-top:15px; }
.mk-manifesto .mk-text-link { margin-top:20px; }
.mk-sample-brief { grid-column:1/-1; display:grid; grid-template-columns:175px 1fr; align-items:center; gap:20px; padding:25px 28px; margin:0; border:1px solid #aeb5a2; }
.mk-sample-brief p { font-family:Georgia,serif; font-size:20px; line-height:1.45; color:#353a2d; }
.mk-home-process { padding:56px 0; }
.mk-home-process .mk-section-heading { max-width:none; margin-bottom:35px; }
.mk-home-process .mk-steps { gap:30px; }
.mk-home-process .mk-steps article { border-top:1px solid #9ea792; padding-top:18px; }
.mk-home-process .mk-steps article>span { color:var(--mk-blue); font-family:Georgia,serif; font-size:42px; line-height:1; letter-spacing:-.04em; }
.mk-home-process .mk-steps h3 { font-size:20px; margin-top:17px; }
.mk-home-process .mk-steps p { font-size:15px; }
.mk-own-it { background:#24271f; color:#f5f5ec; padding:48px 40px; display:grid; grid-template-columns:1fr 1.2fr; gap:60px; }
.mk-own-it .mk-eyebrow { color:#bfc8b2; }
.mk-own-it h2 { margin:18px 0 20px; font-family:Georgia,serif; font-weight:400; font-size:clamp(2.5rem,3.4vw,3.4rem); line-height:1.08; }
.mk-own-it>div>p { max-width:370px; font-size:16px; color:#ccd2c2; }
.mk-own-it .mk-text-link { margin-top:26px; color:#dde4ff; }
.mk-ownership-list { display:grid; grid-template-columns:1fr 1fr; gap:26px; align-content:start; }
.mk-ownership-list article { display:flex; align-items:flex-start; gap:13px; padding-top:15px; border-top:1px solid #686e60; }
.mk-ownership-list svg { color:#b5c4ff; width:19px; margin-top:3px; }
.mk-ownership-list h3 { font-size:17px; }
.mk-ownership-list p { font-size:14px; margin-top:10px; color:#ccd2c2; }
.mk-home-journal { padding:62px 0; border-bottom:1px solid var(--mk-line); }
.mk-journal-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.mk-journal-links article { display:flex; gap:16px; padding-top:18px; border-top:2px solid var(--mk-blue); }
.mk-journal-number { font-family:Georgia,serif; font-size:27px; line-height:1.1; color:var(--mk-blue); }
.mk-journal-links h3 { margin-top:10px; font-family:Georgia,serif; font-weight:400; font-size:23px; line-height:1.25; letter-spacing:-.03em; }
.mk-journal-links h3 a { color:var(--mk-ink); text-decoration:none; }
.mk-journal-links h3 a:hover { text-decoration:underline; }
.mk-journal-links p { font-size:14px; line-height:1.65; margin-top:12px; }
.mk-home-questions { display:grid; grid-template-columns:1fr 1.2fr; gap:60px; padding:54px 0; }
.mk-home-questions h2 { margin-top:15px; font-size:30px; }
.mk-home-questions details { border-bottom:1px solid var(--mk-line); padding:18px 0; }
.mk-home-questions details:first-child { padding-top:0; }
.mk-home-questions summary { cursor:pointer; font-size:17px; font-weight:600; }
.mk-home-questions details p { font-size:15px; margin-top:12px; }
.mk-brand-cta { border-top:2px solid var(--mk-blue); padding:45px 0 8px; display:flex; justify-content:space-between; align-items:center; gap:45px; }
.mk-brand-cta h2 { font-size:clamp(2.7rem,4.8vw,4.6rem); line-height:1.05; margin-top:18px; font-weight:600; letter-spacing:-.055em; }
.mk-brand-cta .mk-actions { margin:0; }
.mk-gallery-intro{padding:28px 0 20px;max-width:900px}.mk-gallery-intro h1{font-size:clamp(2rem,3.8vw,3.2rem);letter-spacing:-.045em;margin:12px 0 14px;line-height:1.07}.mk-gallery-intro>p{font-size:15px;line-height:1.6;max-width:600px}.mk-concept-note{font-size:11px;color:#5c605c;margin-top:10px}.mk-gallery-filters{display:flex;align-items:end;gap:12px;padding:16px 0;border-top:1px solid var(--mk-line);border-bottom:1px solid var(--mk-line)}.mk-gallery-filters label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:600;min-width:0;flex:1}.mk-gallery-filters .mk-gallery-search{flex:1.5}.mk-gallery-filters input,.mk-gallery-filters select{font:inherit;font-weight:400;font-size:16px;background:white;color:#292e38;border:1px solid #cbced2;border-radius:6px;min-width:0;width:100%;height:46px;padding:10px 12px}.mk-gallery-filters input:focus-visible,.mk-gallery-filters select:focus-visible,.mk-gallery-filters button:focus-visible{outline:3px solid #345bd5;outline-offset:3px}.mk-gallery-filters button{min-height:46px;font-size:13px}.mk-gallery-result{display:flex;justify-content:space-between;gap:16px;font-size:12px;padding:10px 0}.mk-gallery-pagination{display:flex;justify-content:center;align-items:center;gap:30px;margin-top:50px;font-size:13px}.mk-gallery-empty{border:1px solid var(--mk-line);border-radius:10px;text-align:center;padding:64px 20px}.mk-gallery-empty h2{font-size:26px}.mk-gallery-empty p{margin:16px 0 24px}.mk-example-back{display:inline-flex;margin-top:38px;font-size:13px;text-decoration:none}.mk-example-detail{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2.1fr);grid-template-areas:"overview image" "details image";gap:24px 60px;align-items:start;padding:38px 0 70px}.mk-example-overview{grid-area:overview;min-width:0}.mk-example-brief{grid-area:details;min-width:0}.mk-example-full{grid-area:image}.mk-example-overview h1{font-size:clamp(2rem,3vw,3rem);margin:20px 0}.mk-example-overview>p{font-size:14px;line-height:1.85}.mk-example-brief dl{margin:26px 0;display:grid;gap:16px}.mk-example-brief dt{font-size:10px;font-weight:600;color:#626873;text-transform:uppercase;letter-spacing:.08em}.mk-example-brief dd{margin:4px 0 0;font-size:13px}.mk-example-prompt{padding-top:24px;border-top:1px solid var(--mk-line);margin-bottom:28px}.mk-example-prompt h2{font-size:16px;letter-spacing:-.02em;margin-bottom:13px}.mk-example-prompt p{font-size:13px;line-height:1.85}.mk-example-brief .mk-button{font-size:12px;margin-bottom:16px}.mk-example-brief .mk-example-disclosure{font-size:10px;color:#626873;line-height:1.7}.mk-example-full{border:1px solid #dededb;background:#eeefea;border-radius:6px;overflow:hidden}.mk-example-full img{width:100%;display:block}.mk-gallery-section+.mk-next{margin-top:80px}
@media(max-width:1100px) {
  .mk-brand-strip { flex-direction:column; align-items:flex-start; gap:10px; }
  .mk-design-type { display:none; }
  .mk-work-heading { gap:32px; }
  .mk-example-detail { gap:32px; }
  .mk-manifesto { gap:28px 38px; }
  .mk-own-it { gap:35px; padding:35px 26px; }
}
@media(max-width:960px) {
  .mk-desktop-nav { display:none; }
  .mk-header-actions { margin-left:auto; }
  .mk-mobile-menu { display:block; }
  .mk-mobile-menu { position:static; }
  .mk-header { position:relative; }
  .mk-mobile-menu>button { min-height:44px; display:flex; align-items:center; gap:8px; cursor:pointer; padding:10px; border:0; background:transparent; color:var(--mk-ink); font-size:13px; }
  .mk-mobile-menu>button:focus-visible { outline:3px solid var(--mk-blue); outline-offset:4px; }
  .mk-mobile-menu nav { display:none; position:fixed; margin:0; inset:91px 20px auto; width:auto; max-height:calc(100dvh - 110px); overflow-y:auto; overscroll-behavior:contain; background:#f8f8f2; border:1px solid var(--mk-line); padding:18px; box-shadow:0 12px 24px #22242012; }
  .mk-mobile-menu nav:popover-open { display:flex; flex-direction:column; }
  .mk-mobile-menu nav a { display:block; padding:12px; color:var(--mk-ink); }
}
@media(max-width:850px) { .mk-mobile-menu nav { top:77px; max-height:calc(100dvh - 96px); } }
@media(min-width:961px) { .mk-mobile-menu nav { display:none; } }
@media(max-width:760px) {
  .mk-header { height:70px; }
  .mk-mobile-menu nav { top:69px; max-height:calc(100dvh - 88px); }
  .mk-brand-hero { grid-template-columns:1fr; padding:24px 0; gap:22px; }
  .mk-brand-hero h1 { font-size:clamp(2.3rem,7vw,3.5rem); margin:12px 0 14px; }
  .mk-brand-hero-copy>p { font-size:16px; line-height:1.6; max-width:520px; }
  .mk-brand-hero .mk-actions { margin-top:18px; gap:12px 18px; }
  .mk-hero-example>a { aspect-ratio:1.6; }
  .mk-brand-strip nav { gap:10px 22px; font-size:12px; }
  .mk-work-section { padding:36px 0; }
  .mk-work-heading { display:block; margin-bottom:24px; }
  .mk-work-heading>div+div { margin-top:20px; max-width:540px; }
  .mk-design-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 16px; }
  .mk-work-footer { align-items:flex-start; }
  .mk-manifesto { grid-template-columns:1fr; padding:36px 0; gap:24px; }
  .mk-sample-brief { grid-template-columns:1fr; gap:10px; padding:20px; }
  .mk-sample-brief p { font-size:18px; }
  .mk-home-process { padding:38px 0; }
  .mk-own-it { grid-template-columns:1fr; gap:30px; }
  .mk-home-journal { padding:38px 0; }
  .mk-journal-links { grid-template-columns:1fr; gap:24px; }
  .mk-journal-links h3 { font-size:24px; }
  .mk-home-questions { grid-template-columns:1fr; gap:28px; padding:38px 0; }
  .mk-brand-cta { flex-direction:column; align-items:flex-start; padding-top:32px; gap:26px; }
  .mk-gallery-intro { padding:18px 0 12px; }
  .mk-gallery-filters { flex-wrap:wrap; }
  .mk-gallery-filters .mk-gallery-search { flex:1 1 100%; }
  .mk-gallery-filters label { flex:1 1 calc(50% - 12px); }
  .mk-gallery-filters button { flex:1; }
  .mk-example-detail { grid-template-columns:1fr; gap:24px; padding-bottom:40px; }
  .mk-example-brief { position:static; }
  .mk-example-brief dl { grid-template-columns:1fr 1fr; }
  .mk-example-prompt p { max-width:600px; }
}
@media(max-width:480px) {
  .mk-header .mk-header-actions .mk-small { display:none; }
  .mk-brand-hero h1 { font-size:clamp(2.25rem,9vw,2.75rem); }
  .mk-design-grid { grid-template-columns:1fr; gap:27px; }
  .mk-design-type { display:block; }
  .mk-design-window { aspect-ratio:1.15; }
  .mk-work-footer { flex-direction:column; gap:12px; }
  .mk-ownership-list { grid-template-columns:1fr; }
  .mk-gallery-filters label { flex-basis:calc(50% - 6px); }
  .mk-gallery-filters .mk-gallery-search { flex-basis:100%; }
  .mk-gallery-result { align-items:flex-start; }
  .mk-gallery-pagination { gap:18px; }
  .mk-example-overview h1 { font-size:36px; }
}
@media(prefers-reduced-motion:reduce) {
  .mk-design-window img { transition:none; }
  .mk-design-link:hover .mk-design-window img { transform:none; }
}

.mk-gallery-filters [hidden],[data-gallery-retry][hidden] { display:none; }
.mk-gallery-feedback { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.mk-gallery-feedback:has(p:empty):not(:has(button:not([hidden]))) { display:none; }
.mk-gallery-feedback p:not(:empty) { padding-top:12px; font-size:13px; }
.mk-gallery-result a,.mk-gallery-pagination>a,.mk-example-back { display:inline-flex; align-items:center; min-height:44px; }
.mk-gallery-result { align-items:center; }
.mk-example-back { margin-top:20px; }
.mk-example-detail { padding-top:18px; }
@media(max-width:760px) {
  .mk-example-detail { display:flex; flex-direction:column; gap:20px; }
  .mk-example-overview h1 { margin:10px 0; }
  .mk-example-full { width:100%; }
  .mk-example-brief { width:100%; }
  .mk-example-brief dl { margin:0 0 24px; }
  .mk-example-prompt { margin-bottom:22px; }
}
