/* Homepage composition is deliberately independent from other page shells. */
.mt-home-header { height: 80px; padding: 18px var(--mt-gutter); background: var(--mt-bg); box-shadow: inset 0 -1px var(--mt-border); }
.mt-home-header-inner { display: flex; max-width: 1312px; align-items: center; justify-content: space-between; margin-inline: auto; }
.mt-home-nav { font-size: 14px; line-height: 18px; }
.mt-home-nav .wp-block-navigation__container { gap: 32px; }
.mt-home-nav .wp-block-navigation__responsive-container-open { position: relative; width: 44px; height: 44px; align-items: center; justify-content: center; padding: 10px; }
.mt-home-nav .wp-block-navigation__responsive-container-open svg { visibility: hidden; }
.mt-home-nav .wp-block-navigation__responsive-container-open::before { position: absolute; width: 24px; height: 24px; content: ""; background: currentColor; mask: url("../images/header-menu.svg") center / contain no-repeat; }
.mt-home-nav .wp-block-navigation__responsive-container-open:focus-visible { outline: 2px solid var(--mt-focus); outline-offset: 2px; }
.mt-home-nav a, .mt-home-actions a { text-decoration: none; }
.mt-home-actions { display: flex; align-items: center; gap: 12px; font-size: 14px; line-height: 18px; }
.mt-home-nav .wp-block-navigation-item__content { display: flex; min-height: 44px; align-items: center; }
.mt-home-hero { position: relative; height: 860px; overflow: hidden; background: radial-gradient(circle at 50% 48%, var(--mt-hero-center, #171a15) 0, var(--mt-hero-mid, #0b0c0a) 52%, var(--mt-hero-edge, #050605) 100%); }
.mt-home-hero-dots { position: absolute; inset: 0; background: radial-gradient(var(--mt-hero-dots, #ffffff14) .65px, transparent .65px) 0 0 / 10px 10px; }
.mt-home-hero-dots canvas { display: none; width: 100%; height: 100%; pointer-events: none; }
@media (min-width: 1025px) {
  .mt-home-hero-dots[data-grid-ready] { background: none; pointer-events: none; }
  .mt-home-hero-dots canvas { display: block; }
}
.mt-home-hero-inner { position: relative; width: min(100% - 128px, 1312px); height: 100%; margin-inline: auto; }
.mt-home-collage { position: absolute; z-index: 1; top: 0; right: max(0px, (100% - 1440px) / 2); width: min(680px, 47.222222%); aspect-ratio: 680 / 860; pointer-events: none; }
.mt-hero-hover-card { transform-box: fill-box; transform-origin: center; }
@media (min-width: 701px) and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .mt-home-collage .mt-hero-hover-card { pointer-events: all; transition: transform 220ms cubic-bezier(.2, .7, .2, 1), filter 220ms; }
  .mt-home-collage .mt-hero-hover-card:hover { transform: scale(1.03); filter: var(--mt-hero-hover-shadow, drop-shadow(0 10px 18px #0005)); }
}
.mt-home-collage > [data-animation-poster] { visibility: hidden; }
.mt-home-collage[data-artwork-ready="true"][data-animation-state="static"] > [data-animation-poster],
.mt-home-collage[data-artwork-ready="true"][data-animation-state="fallback"] > [data-animation-poster] { visibility: visible; }
.mt-home-hero:has(.mt-home-collage[data-artwork-ready="true"]) .mt-home-coral,
.mt-home-hero:has(.mt-home-collage[data-artwork-ready="true"]) .mt-home-lavender,
.mt-home-hero:has(.mt-home-collage[data-artwork-ready="true"]) .mt-home-artwork,
.mt-home-hero:has(.mt-home-collage[data-artwork-ready="true"]) .mt-home-alphabet { visibility: hidden; }
.mt-home-editorial { position: absolute; top: 157px; left: 0; display: flex; width: 724px; flex-direction: column; align-items: flex-start; gap: 26px; }
.mt-home-logo { display: block; width: 170px; height: 47.6965px; object-fit: contain; }
.mt-home-editorial h1 { width: 100%; margin: 0; font-family: var(--wp--preset--font-family--ui); font-size: 92px; font-weight: 500; line-height: 1.02; letter-spacing: -5px; }
.mt-home-editorial p { width: 590px; max-width: 100%; margin: -2px 0 0; color: var(--mt-muted); font-size: 18px; line-height: 1.5; }
.mt-home-cta { display: inline-flex; min-width: 175px; align-items: center; gap: 26px; padding: 16px 22px; color: var(--mt-accent-ink); background: var(--mt-accent); border-radius: 8px; font-size: 14px; line-height: 20px; text-decoration: none; }
.mt-home-cta svg { display: block; flex: 0 0 20px; width: 20px; height: 20px; transition: transform var(--mt-transition-fast) ease; }
.mt-home-cta, .mt-home-catalog-cta { transition: background-color var(--mt-transition-fast) ease; }
.mt-home-cta:focus-visible svg { transform: translate(2px, -2px); }
.mt-home-cta:focus-visible, .mt-home-catalog-cta:focus-visible { background: var(--mt-accent-hover); }
.mt-home-product-grid h3 a:focus-visible { color: var(--mt-link); }
.mt-home-product-grid .mt-home-product-art:focus-visible { outline-color: var(--mt-link); }
.mt-home-product-grid .mt-home-license-link { text-decoration: none; text-underline-offset: .25em; }
.mt-home-product-grid .mt-home-license-link:focus-visible { text-decoration: underline; }
@media (hover: hover) and (pointer: fine) {
  .mt-home-project-cta:hover { text-decoration: underline; }
  .mt-home-product-grid .mt-home-license-link:hover { text-decoration: underline; }
  .mt-home-cta:hover, .mt-home-catalog-cta:hover { background: var(--mt-accent-hover); }
  .mt-home-cta:hover svg { transform: translate(2px, -2px); }
  .mt-home-product-grid h3 a:hover { color: var(--mt-link); }
  .mt-home-product-grid .mt-home-product-art:hover { outline-color: var(--mt-link); }
}
.mt-home-artwork { position: absolute; top: 350px; right: -64px; width: min(416px, 34%); aspect-ratio: 416 / 448; }
/* Anchor the specimen composition to the hero edge, scaling below the reference width. */
.mt-home-coral { position: absolute; top: 0; right: calc(max(0px, (100% - 1440px) / 2) + min(450px, 31.25vw)); width: min(160px, 11.111111vw); height: auto; aspect-ratio: 1; }
.mt-home-lavender { position: absolute; top: 0; right: max(0px, (100% - 1440px) / 2); width: min(450px, 31.25vw); height: auto; aspect-ratio: 450 / 284; }
.mt-home-alphabet { position: absolute; top: 668px; right: 16.158537%; width: min(384px, 32%); height: auto; aspect-ratio: 384 / 150; }
.mt-home-hero-label { position: absolute; bottom: 36px; left: max(64px, (100% - 1312px) / 2); margin: 0; color: var(--mt-muted); font-family: var(--wp--preset--font-family--mono); font-size: 10px; line-height: 13px; letter-spacing: .8px; }
.mt-home-catalog, .mt-home-journey, .mt-home-inspiration { padding: 64px var(--mt-gutter); }
.mt-home-catalog { background: var(--mt-surface); }
.mt-home-section-inner { max-width: 1312px; margin-inline: auto; }
.mt-home-section-inner h2 { margin: 0; font-family: var(--wp--preset--font-family--ui); font-size: 56px; font-weight: 500; line-height: 73px; letter-spacing: -1.8px; }
.mt-home-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
.mt-home-section-heading > a { color: var(--mt-link); font-size: 14px; line-height: 18px; text-decoration: none; }
.mt-home-catalog-tools { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-block: 30px; padding-bottom: 20px; box-shadow: inset 0 -1px var(--mt-ui-border, #44463f); }
.mt-home-catalog-tools nav { display: flex; flex-wrap: wrap; gap: 8px; }
.mt-home-catalog-tools nav a { padding: 10px 18px; background: var(--mt-ui-raised, #30322c); border-radius: 4px; font-size: 13px; line-height: 17px; text-decoration: none; }
.mt-home-catalog-tools nav a[aria-current] { color: var(--mt-accent-ink); background: var(--mt-accent); }
.mt-home-search { display: flex; width: 280px; height: 48px; align-items: center; padding: 0 4px 0 16px; border: 1px solid var(--mt-ui-border, #44463f); border-radius: 8px; }
.mt-home-search input { width: 100%; min-width: 0; padding: 0; color: var(--mt-text); background: transparent; border: 0; font: inherit; font-size: 13px; }
.mt-home-search button { display: grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; padding: 0; color: var(--mt-muted); background: none; border: 0; cursor: pointer; }
.mt-home-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.mt-home-product-grid article { min-width: 0; }
.mt-home-product-art { display: grid; grid-template-rows: minmax(0, 1fr); aspect-ratio: 3 / 2; overflow: hidden; border-radius: 12px; background: var(--mt-lavender); place-items: center; }
.mt-home-product-art img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.mt-home-product-grid article > div { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding-top: 16px; }
.mt-home-product-copy { flex: 1 1 160px; min-width: 0; overflow-wrap: anywhere; }
.mt-home-product-grid h3 { margin: 0; font-family: var(--wp--preset--font-family--ui); font-size: 17px; font-weight: 400; line-height: 22px; }
.mt-home-product-grid h3 a { overflow-wrap: anywhere; transition: color var(--mt-transition-fast) ease; }
.mt-home-product-grid a { text-decoration: none; }
.mt-home-product-grid .mt-home-product-art { outline: 2px solid transparent; outline-offset: -2px; transition: outline-color var(--mt-transition-fast) ease; }
.mt-home-license-link { flex: 0 0 auto; color: var(--mt-link); font-size: 12px; line-height: 16px; }
.mt-home-catalog-cta { display: table; min-width: 172px; margin: 38px auto 0; padding: 14px 24px; color: var(--mt-accent-ink); background: var(--mt-accent); border-radius: 8px; font-size: 14px; font-weight: 500; line-height: 18px; text-decoration: none; }
.mt-home-journey, .mt-home-inspiration { background: radial-gradient(ellipse 57.5% 57.5% at 50% 48%, var(--mt-hero-center, #171a15) 0, var(--mt-hero-mid, #0b0c0a) 52%, var(--mt-hero-edge, #050605) 100%); box-shadow: inset 0 1px var(--mt-border); }
.mt-home-journey-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 32px; }
.mt-home-journey-grid article { display: flex; flex-direction: column; gap: 16px; padding: 24px; background: var(--mt-surface); border-radius: 4px; }
.mt-home-journey-grid span { color: var(--mt-link); font-family: var(--wp--preset--font-family--mono); font-size: 12px; line-height: 16px; }
.mt-home-journey-grid h3 { margin: 0; font-family: var(--wp--preset--font-family--ui); font-size: 20px; font-weight: 500; line-height: 26px; }
.mt-home-journey-grid p { margin: 0; color: var(--mt-muted); font-size: 14px; line-height: 22px; }
.mt-home-projects { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; margin-top: 40px; }
.mt-home-projects figure { margin: 0; }
.mt-home-projects figure:nth-child(2) { margin-top: 48px; }
.mt-home-projects img { display: block; width: 100%; height: 360px; object-fit: cover; }
.mt-home-projects figcaption { display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; gap: 16px; padding-top: 16px; font-family: var(--wp--preset--font-family--ui); font-size: 17px; font-weight: 400; line-height: 22px; }
.mt-home-project-cta { display: inline-flex; min-height: 44px; flex: 0 0 auto; align-items: center; gap: 4px; padding: 0; color: var(--mt-link); background: none; border: 0; font: inherit; font-size: 12px; line-height: 16px; text-underline-offset: .25em; cursor: pointer; }
.mt-home-project-cta:focus-visible { outline: 2px solid var(--mt-focus); outline-offset: 4px; text-decoration: underline; }
.mt-home-footer { padding: 56px var(--mt-gutter) 32px; }
.mt-home-footer-top, .mt-home-legal { display: flex; max-width: 1312px; justify-content: space-between; gap: 32px; margin-inline: auto; }
.mt-home-newsletter { width: 510px; max-width: 100%; min-width: 0; }
.mt-home-newsletter h2 { margin: 0 0 18px; font-family: var(--wp--preset--font-family--display); font-size: 36px; font-weight: 600; line-height: 36px; letter-spacing: -.5px; }
.mt-home-newsletter p { margin: 0 0 18px; color: var(--mt-muted); font-size: 14px; line-height: 18px; }
.mt-home-sitemap { display: flex; align-items: flex-start; gap: 70px; }
.mt-home-sitemap > div { display: flex; flex-direction: column; gap: 15px; }
.mt-home-social-row { display: flex; flex-direction: column; gap: 15px; }
.mt-home-sitemap h3 { margin: 0; color: var(--mt-muted); font-family: var(--wp--preset--font-family--ui); font-size: 10px; font-weight: 400; line-height: 13px; letter-spacing: 1px; }
.mt-home-sitemap a, .mt-home-social-placeholder, .mt-home-footer-placeholder { color: var(--mt-muted); font-size: 13px; line-height: 17px; text-decoration: none; }
.mt-home-legal { padding-top: 24px; line-height: 14px; color: var(--mt-muted); box-shadow: inset 0 1px var(--mt-border); font-size: 11px; }

.mt-home-artwork img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mt-home-product-copy p { margin: 6px 0 0; color: var(--mt-muted); font-size: 12px; line-height: 16px; }
.mt-home-search svg { display: block; width: 18px; height: 18px; }
.mt-home-sitemap a:hover { color: var(--mt-link); }
.mt-home-footer .mt-footer-mark { margin-block: 32px; }

.mt-home-project-image { position: relative; }
.mt-home-project-chip { position: absolute; display: inline-flex; align-items: center; gap: 12px; bottom: 11px; left: 24px; padding: 14px 20px; color: var(--mt-paper-ink); background: var(--mt-lavender); border-radius: 16px; font-size: 16px; line-height: 21px; }

.mt-home-projects figure:nth-child(2) .mt-home-project-chip { background: var(--mt-accent); }
.mt-home-project-chip svg { width: 18px; height: 18px; flex: 0 0 18px; }

@media (min-width: 981px) {
  .mt-home-nav .wp-block-navigation__responsive-container-open { display: none; }
  .mt-home-nav .wp-block-navigation__responsive-container { display: block; }
}

@media (max-width: 980px) {
  .mt-home-header { height: 68px; padding: 12px 20px; }
  .mt-home-actions .mt-account-dropdown { display: none; }
  .mt-home-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
  .mt-home-nav .wp-block-navigation__responsive-container-open { display: flex; }
  .mt-home-cart { width: 44px; min-width: 44px; padding: 0; }
  .mt-home-cart-label { display: none; }
}

@media (max-width: 1100px) {
  .mt-home-editorial { width: 60%; }
  .mt-home-editorial h1 { font-size: 72px; letter-spacing: -3px; }
  .mt-home-alphabet { right: 6%; }
  .mt-home-catalog-tools { flex-wrap: wrap; }
  .mt-home-footer-top { flex-wrap: wrap; }
}
@media (max-width: 700px) {
  .mt-home-collage { display: none; }
  .mt-home-hero { height: auto; padding: 32px 20px 40px; }
  .mt-home-hero-inner { display: flex; width: 100%; height: auto; flex-direction: column; gap: 32px; }
  .mt-home-editorial { position: static; width: 100%; gap: 24px; }
  .mt-home-editorial h1 { font-size: 52px; letter-spacing: -2px; }
  .mt-home-editorial p { width: 100%; margin: 0; font-size: 16px; }
  .mt-home-hero-dots { display: none; }
  .mt-home-artwork { position: static; width: 100%; height: 270px; }
  .mt-home-coral, .mt-home-lavender, .mt-home-alphabet, .mt-home-hero-label { display: none; }
  .mt-home-catalog, .mt-home-journey, .mt-home-inspiration { padding-block: 40px; }
  .mt-home-section-inner h2 { font-size: 32px; line-height: 42px; letter-spacing: -1px; }
  .mt-home-section-heading { align-items: flex-start; flex-direction: column; }
  .mt-home-catalog-tools { flex-direction: column; gap: 20px; margin-block: 24px; }
  .mt-home-catalog-tools nav { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); width: 100%; gap: 8px; }
  .mt-home-catalog-tools nav a { grid-column: span 2; min-height: 44px; padding: 12px 8px; text-align: center; }
  .mt-home-catalog-tools nav a:nth-child(n+4) { grid-column: span 3; }
  .mt-home-search { width: 100%; }
  .mt-home-product-grid, .mt-home-journey-grid, .mt-home-projects { grid-template-columns: 1fr; gap: 20px; }
  /* Keep one cacheable WooCommerce query for both layouts; hidden cards are not focusable. */
  .mt-home-product-grid article:nth-child(n+4) { display: none; }
  .mt-home-catalog-cta { margin-top: 32px; }
  .mt-home-journey-grid, .mt-home-projects { margin-top: 24px; }
  .mt-home-journey .mt-home-section-heading, .mt-home-inspiration .mt-home-section-heading { gap: 16px; }
  .mt-home-journey .mt-home-section-inner h2, .mt-home-inspiration .mt-home-section-inner h2 { line-height: 1.15; }
  .mt-home-journey-grid { gap: 12px; }
  .mt-home-journey-grid article { gap: 12px; padding: 20px; }
  .mt-home-journey-grid h3 { line-height: 1.25; }
  .mt-home-journey-grid p { line-height: 1.5; }
  .mt-home-projects { gap: 32px; }
  .mt-home-projects figure:nth-child(2) { margin-top: 0; }
  .mt-home-projects img { height: 260px; }
  .mt-home-footer { padding-block: 40px 28px; }
  .mt-home-footer-top { flex-direction: column; }
  .mt-home-newsletter { width: 100%; }
  .mt-home-newsletter h2, .mt-home-newsletter p { margin-bottom: 16px; }
  .mt-home-project-chip { top: 196px; bottom: auto; left: 16px; gap: 8px; padding: 12px 16px; font-size: 14px; line-height: 18px; }
  .mt-home-project-chip svg { flex-basis: 16px; width: 16px; height: 16px; }
  .mt-home-newsletter h2 { font-family: var(--wp--preset--font-family--ui); font-size: 30px; font-weight: 500; line-height: 1.3; letter-spacing: -1px; }
  .mt-home-sitemap { display: grid; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; }
  .mt-home-sitemap > div { gap: 12px; }
  .mt-home-follow { grid-column: 1 / -1; }
  .mt-home-social-row { flex-direction: row; flex-wrap: wrap; gap: 16px; }
  .mt-home-legal { flex-direction: column; gap: 12px; padding-top: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .mt-home-cta svg, .mt-home-cta:hover svg, .mt-home-cta:focus-visible svg { transform: none; transition: none; }
  .mt-home-cta, .mt-home-catalog-cta, .mt-home-product-grid h3 a, .mt-home-product-grid .mt-home-product-art { transition: none; }
}
