.mk-page {
  --space-1: .25rem; --space-2: .5rem; --space-3: .75rem; --space-4: 1rem;
  --space-5: 1.25rem; --space-6: 1.5rem; --space-8: 2rem; --space-10: 2.5rem;
  --space-12: 3rem; --space-16: 4rem; --space-20: 5rem; --space-24: 6rem;
  --text-xs: .78rem; --text-sm: .9rem; --text-base: 1rem;
  --text-lg: clamp(1.3rem, 1rem + 1vw, 1.6rem);
  --text-xl: clamp(2rem, 1.5rem + 1.3vw, 2.6rem);
  --text-hero: clamp(3rem, 2rem + 2vw, 3.5rem);
  background: var(--ivory);
  overflow-wrap: anywhere;
}
.mk-page :focus-visible { outline: 2px solid var(--venom); outline-offset: 5px; }
.mk-page [id] { scroll-margin-top: 7rem; }
.mk-page h2 { font-size: var(--text-xl); line-height: 1.1; margin-bottom: var(--space-6); }
.mk-page h3 { font-size: var(--text-lg); font-weight: 500; line-height: 1.15; }
.mk-page p { max-width: 66ch; }
.mk-page em { font-weight: 400; }
.mk-page figure, .mk-page dl, .mk-page dd { margin: 0; }
.mk-wrap { width: min(1180px, calc(100% - 2 * clamp(1.25rem, 4vw, 4rem))); margin-inline: auto; }
.mk-section { padding-block: clamp(4rem, 7vw, 6rem); }
.mk-kicker { font-size: var(--text-xs); text-transform: uppercase; letter-spacing: .19em; color: var(--venom-deep); margin: 0 0 var(--space-6); }
.mk-note { font-size: var(--text-xs); line-height: 1.65; color: var(--ink-soft); }
.mk-aside { font-family: var(--serif); font-size: var(--text-lg); color: var(--venom-deep); font-style: italic; }
.mk-page .btn { white-space: normal; text-align: center; min-height: 44px; max-width: 100%; }
.mk-brand span { font-family: var(--serif); font-size: 1.5rem; }
.mk-skip { position: fixed; z-index: 100; top: -100px; left: var(--space-4); padding: var(--space-3) var(--space-4); background: var(--ivory); }
.mk-skip:focus { top: var(--space-4); }
.mk-hero { display: grid; grid-template-columns: 1fr 1.03fr; gap: clamp(2rem,5vw,5rem); padding-block: var(--space-20) var(--space-16); align-items: center; }
.mk-handle { font-size: var(--text-sm); color: var(--ink-soft); margin-bottom: var(--space-6); }
.mk-hero h1 { font-size: var(--text-hero); line-height: 1.02; margin-bottom: var(--space-8); }
.mk-intro { font-size: 1.12rem; line-height: 1.6; }
.mk-actions { display: flex; align-items: center; gap: var(--space-6); flex-wrap: wrap; margin-block: var(--space-8); }
.mk-text-link { font-size: var(--text-sm); border-bottom: 1px solid var(--line-strong); padding-block: var(--space-2); }
.mk-text-link:hover { color: var(--venom-deep); }
.mk-file-label { display: block; font-size: var(--text-xs); margin-top: var(--space-1); color: var(--ink-soft); }
.mk-location { font-size: var(--text-xs); color: var(--ink-soft); padding-top: var(--space-4); }
.mk-hero-photo img { width: 100%; height: auto; aspect-ratio: 1.02; object-fit: cover; object-position: 54% 42%; }
.mk-hero-photo figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-4); font-family: var(--serif); font-size: var(--text-lg); padding-top: var(--space-4); border-bottom: 1px solid var(--line); padding-bottom: var(--space-4); }
.mk-hero-photo figcaption span { font-family: var(--sans); font-size: var(--text-xs); align-self: center; color: var(--ink-soft); }
.mk-audience { background: var(--cream-2); padding-block: var(--space-10); }
.mk-section-line { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-6); }
.mk-section-line h2 { font-size: var(--text-lg); }
.mk-section-line p { font-size: var(--text-xs); color: var(--ink-soft); }
.mk-metrics { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); padding-bottom: var(--space-6); gap: var(--space-6); }
.mk-metrics div { display: flex; flex-direction: column-reverse; border-top: 1px solid var(--line-strong); padding-top: var(--space-4); }
.mk-metrics dd { font-family: var(--serif); font-size: 3.5rem; line-height: 1.15; }
.mk-metrics dt { font-size: var(--text-xs); color: var(--ink-soft); margin-top: var(--space-2); }
.mk-audience .mk-note { max-width: none; margin-bottom: 0; }
.mk-channel { display: grid; grid-template-columns: 1.2fr 1fr; gap: clamp(2rem,7vw,6rem); }
.mk-channel h2 em { font-size: .8em; }
.mk-definitions div { display: grid; grid-template-columns: 1fr 1.7fr; gap: var(--space-6); padding-block: var(--space-5); border-top: 1px solid var(--line); }
.mk-definitions dt { font-family: var(--serif); font-size: var(--text-lg); }
.mk-definitions dd { font-size: var(--text-sm); color: var(--ink-soft); }
.mk-channel blockquote { font-family: var(--serif); font-style: italic; font-size: var(--text-lg); margin: var(--space-6) 0 0; color: var(--venom-deep); }
.mk-dark { background: var(--ink); color: var(--ivory); }
.mk-dark h2, .mk-dark h3 { color: var(--ivory); }
.mk-dark em { color: #e7b5a4; }
.mk-dark .mk-kicker { color: #cfac7c; }
.mk-dark .mk-note { color: #d1c6b6; }
.mk-work-heading { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--space-12); align-items: end; margin-bottom: var(--space-10); }
.mk-work-heading > p { color: #e1d6c7; }
.mk-reels { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-12); }
.mk-reel { display: grid; grid-template-columns: minmax(0,.95fr) minmax(0,1fr); gap: var(--space-6); align-items: center; }
.mk-reel figure img { width: 100%; height: auto; }
.mk-reel figcaption { font-size: .75rem; color: #d1c6b6; margin-top: var(--space-3); }
.mk-reel h3 { font-size: 2rem; }
.mk-reel-stats { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: var(--space-5) var(--space-4); padding-block: var(--space-5); border-block: 1px solid #ffffff30; }
.mk-reel-stats div { display: flex; flex-direction: column-reverse; }
.mk-reel-stats dd { font-family: var(--serif); font-size: 1.85rem; line-height: 1.2; }
.mk-reel-stats dt { font-size: .75rem; color: #d1c6b6; margin-top: var(--space-1); }
.mk-reel-copy > p { font-size: var(--text-sm); color: #e1d6c7; margin-top: var(--space-5); }
.mk-reels + .mk-note { margin-top: var(--space-10); margin-bottom: 0; max-width: none; }
.mk-method-heading { max-width: 670px; }
.mk-method { list-style: none; padding: 0; margin: var(--space-12) 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--space-10); }
.mk-method li { border-top: 1px solid var(--line-strong); padding-top: var(--space-5); }
.mk-method li > span { color: var(--rose-deep); font-family: var(--serif); font-size: var(--text-lg); }
.mk-method h3 { margin-top: var(--space-3); }
.mk-method p { color: var(--ink-soft); font-size: var(--text-sm); }
.mk-story-heading { margin-top: var(--space-16); }
.mk-story-heading .mk-kicker { margin-bottom: var(--space-2); }
.mk-story { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: var(--space-4); list-style: none; margin: var(--space-6) 0; padding: 0; }
.mk-story img { width: 100%; height: auto; aspect-ratio: 1.3; object-fit: cover; margin-bottom: var(--space-4); }
.mk-story span { font-size: .75rem; color: var(--rose-deep); }
.mk-story h3 { margin-top: var(--space-2); }
.mk-story p { font-size: var(--text-sm); color: var(--ink-soft); }
.mk-settings { background: var(--cream); }
.mk-settings-copy { max-width: 770px; margin-bottom: var(--space-8); }
.mk-settings-copy a { text-decoration: underline; text-underline-offset: 3px; }
.mk-location-grid { display: grid; grid-template-columns: .9fr 1fr 1fr; grid-template-rows: 180px 180px; gap: var(--space-4); }
.mk-location-grid img { width: 100%; height: 100%; object-fit: cover; }
.mk-location-grid .mk-tall { grid-row: span 2; object-position: center 33%; }
.mk-setting-line { font-family: var(--serif); font-style: italic; font-size: var(--text-lg); color: var(--venom-deep); margin: var(--space-6) 0 0; max-width: none !important; }
.mk-packages-heading { max-width: 800px; margin-bottom: var(--space-10); }
.mk-packages article { display: grid; grid-template-columns: 1fr auto; gap: var(--space-8); padding-block: var(--space-6); border-top: 1px solid var(--line-strong); align-items: start; }
.mk-packages article:last-child { border-bottom: 1px solid var(--line-strong); }
.mk-packages article h3 { font-size: 1.8rem; }
.mk-packages article p { margin-bottom: var(--space-2); }
.mk-packages .mk-aside { font-size: 1.35rem; margin: 0; }
.mk-packages .mk-price { font-family: var(--serif); font-size: 2rem; text-align: right; margin: 0; }
.mk-price span { display: block; font-family: var(--sans); font-size: var(--text-xs); color: var(--ink-soft); margin-top: var(--space-1); }
.mk-packages .mk-arrangement { font-size: var(--text-lg); }
.mk-reel-package { background: var(--cream); padding-inline: var(--space-6); }
.mk-reel-package .mk-kicker { margin-bottom: var(--space-2); }
.mk-packages + .mk-note { margin-top: var(--space-6); max-width: none; }
.mk-terms { padding-bottom: var(--space-16); }
.mk-terms details { border-block-start: 1px solid var(--line-strong); }
.mk-terms details:last-child { border-bottom: 1px solid var(--line-strong); }
.mk-terms summary { display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); padding-block: var(--space-6); cursor: pointer; list-style: none; font-size: 1.05rem; }
.mk-terms summary::-webkit-details-marker { display: none; }
.mk-terms summary > span { font-size: 1.6rem; line-height: 1; transition: transform .2s ease; }
.mk-terms details[open] summary > span { transform: rotate(45deg); }
.mk-details-content { padding-bottom: var(--space-8); }
.mk-addons { display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--space-16); }
.mk-addons > div { display: flex; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) 0; border-bottom: 1px solid var(--line); }
.mk-addons dt { font-size: var(--text-base); min-width: 0; }
.mk-addons dt span { display: block; font-size: var(--text-xs); color: var(--ink-soft); }
.mk-addons dd { font-family: var(--serif); font-size: var(--text-lg); white-space: nowrap; }
.mk-addons + .mk-note { margin-top: var(--space-6); }
.mk-practical { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--space-6) var(--space-10); }
.mk-practical p { font-size: var(--text-sm); color: var(--ink-soft); }
.mk-favorites { padding-block: var(--space-6) var(--space-20); }
.mk-favorites h2 { font-size: var(--text-lg); }
.mk-favorite-names { font-family: var(--serif); font-size: var(--text-lg); max-width: none !important; }
.mk-favorite-names span { color: var(--rose); padding-inline: var(--space-3); }
.mk-enquire { padding-block: var(--space-20); }
.mk-enquire-inner { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--space-16); align-items: center; }
.mk-enquire-inner > div > p:not(.mk-kicker) { color: #e1d6c7; }
.mk-enquire-action .btn { width: 100%; }
.mk-email { display: block; font-family: var(--serif); font-size: var(--text-lg); margin-block: var(--space-5); overflow-wrap: anywhere; }
.mk-footer { display: flex; justify-content: space-between; flex-wrap: wrap; gap: var(--space-6); padding-block: var(--space-8); font-size: var(--text-xs); }
.mk-footer p { margin: 0; color: var(--ink-soft); }
@media (max-width: 1000px) {
  .mk-reel { grid-template-columns: 1fr; align-items: start; }
  .mk-reel figure img { max-height: 570px; object-fit: contain; object-position: left; }
  .mk-reel-stats { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .mk-hero, .mk-channel, .mk-work-heading, .mk-enquire-inner { grid-template-columns: minmax(0,1fr); gap: var(--space-8); }
  .mk-hero { padding-block: var(--space-10); }
  .mk-hero-photo img { aspect-ratio: 1.15; }
  .mk-brand span { font-size: 1.25rem; }
  .mk-hero .mk-kicker { margin-bottom: var(--space-3); }
  .mk-hero h1 { margin-bottom: var(--space-6); }
  .mk-hero .mk-location { padding-top: 0; }
  .mk-section-line { display: block; }
  .mk-section-line h2 { margin-bottom: var(--space-2); }
  .mk-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .mk-metrics dd { font-size: 2.8rem; }
  .mk-reels { grid-template-columns: minmax(0,1fr); gap: var(--space-12); }
  .mk-reel figure img { max-height: none; width: min(100%,390px); }
  .mk-method { grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-6); }
  .mk-story { grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-6) var(--space-4); }
  .mk-location-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 150px 150px 180px; gap: var(--space-3); }
  .mk-packages article { grid-template-columns: minmax(0,1fr); gap: var(--space-3); }
  .mk-packages .mk-price { text-align: left; }
  .mk-reel-package { padding-inline: var(--space-4); }
  .mk-addons, .mk-practical { grid-template-columns: minmax(0,1fr); }
  .mk-enquire { padding-block: var(--space-16); }
  .mk-footer { flex-direction: column; gap: var(--space-4); }
}
@media (max-width: 380px) {
  .mk-brand span { font-size: 1.1rem; }
  .mk-method { grid-template-columns: minmax(0,1fr); }
  .mk-reel-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .mk-page * { transition: none !important; }
}
