/* Everything theme.json cannot express.
   Keep this file small — if a rule can live in theme.json, put it there instead. */

/* ---- display type: authored lowercase by hand, never transformed ---------
   (the capital I in "things I built" must survive — see the design system readme) */

html{scroll-behavior:smooth}
body{overflow-x:hidden}
.mnia-site-header{z-index:100}

/* v1.1.0 stored the numeric size slugs without WordPress's separator.
   Keep these aliases so existing starter pages immediately render correctly. */
.has-2xl-font-size{font-size:var(--wp--preset--font-size--2-xl)!important}
.has-3xl-font-size{font-size:var(--wp--preset--font-size--3-xl)!important}
.has-4xl-font-size{font-size:var(--wp--preset--font-size--4-xl)!important}
.has-5xl-font-size{font-size:var(--wp--preset--font-size--5-xl)!important}
.has-6xl-font-size{font-size:var(--wp--preset--font-size--6-xl)!important}

/* ---- offset shadow utilities -------------------------------------------- */
.mnia-offset{box-shadow:6px 6px 0 var(--wp--preset--color--ink)}
.mnia-offset-sm{box-shadow:3px 3px 0 var(--wp--preset--color--ink)}
.mnia-offset-lg{box-shadow:10px 10px 0 var(--wp--preset--color--ink)}

/* ---- card: white stock, 2px ink, hard offset, pushes into its shadow ---- */
.mnia-card{background:var(--wp--preset--color--white);border:2px solid var(--wp--preset--color--ink);border-radius:10px;box-shadow:6px 6px 0 var(--wp--preset--color--ink);transition:transform 190ms cubic-bezier(.2,.9,.3,1.25),box-shadow 190ms cubic-bezier(.2,.7,.3,1)}
.mnia-card:is(:hover,:focus-within){transform:translate(3px,3px);box-shadow:3px 3px 0 var(--wp--preset--color--ink)}

/* ---- die-cut sticker ---------------------------------------------------- */
.mnia-sticker{display:inline-block;font-family:var(--wp--preset--font-family--display);font-weight:800;line-height:1.02;letter-spacing:-.025em;padding:6px 14px 7px;border:5px solid var(--wp--preset--color--white);border-radius:999px;box-shadow:0 4px 10px -3px rgba(23,20,15,.35)}
.mnia-sticker--lg{font-size:26px;padding:10px 22px 12px;border-radius:20px}
.mnia-sticker--a{transform:rotate(-2.2deg)}
.mnia-sticker--b{transform:rotate(1.6deg)}
.mnia-sticker--c{transform:rotate(-1deg)}

/* ---- interjection band -------------------------------------------------- */
.mnia-band{border-top:3px solid var(--wp--preset--color--ink);border-bottom:3px solid var(--wp--preset--color--ink)}
.mnia-band p,.mnia-band h2{font-family:var(--wp--preset--font-family--display);font-weight:800;line-height:.95;letter-spacing:-.025em;max-width:22ch;margin:0}

/* ---- proof marquee ------------------------------------------------------ */
.mnia-marquee{overflow:hidden;border-top:3px solid var(--wp--preset--color--ink);border-bottom:3px solid var(--wp--preset--color--ink);background:var(--wp--preset--color--ink);color:var(--wp--preset--color--paper)}
.mnia-marquee__run{display:flex;width:max-content;gap:24px;padding:12px 0;font-family:var(--wp--preset--font-family--mono);font-size:14px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;animation:mnia-scroll 34s linear infinite}
.mnia-marquee__run span{display:inline-flex;gap:24px}
@keyframes mnia-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---- mono captions ------------------------------------------------------ */
.mnia-caption,.wp-block-image figcaption,.wp-element-caption{font-family:var(--wp--preset--font-family--mono);font-size:12px;line-height:1.25;color:var(--wp--preset--color--ink-2)}
.mnia-caption--caps{text-transform:uppercase;letter-spacing:.14em}
footer .mnia-caption,.has-ink-background-color .mnia-caption{color:var(--wp--preset--color--paper-3)}

/* ---- rule-separated index rows (work + writing) ------------------------- */
.mnia-rows .wp-block-post{border-bottom:2px solid var(--wp--preset--color--ink);padding:24px 0;margin:0}
.mnia-rows{border-top:3px solid var(--wp--preset--color--ink)}
.mnia-rows .wp-block-post-title{margin:0}
.mnia-rows .wp-block-post-excerpt__excerpt{margin:8px 0 0;color:var(--wp--preset--color--ink-2);max-width:54ch}

/* ---- featured work: full-bleed image, title overprinted ----------------- */
.mnia-featured{position:relative;min-height:clamp(320px,46vw,620px);border:3px solid var(--wp--preset--color--ink);border-radius:10px;overflow:hidden;background:var(--wp--preset--color--paper-2)}
.mnia-featured .wp-block-post-featured-image{height:100%;margin:0}
.mnia-featured .wp-block-post-featured-image img{display:block;width:100%;height:100%;object-fit:cover}
.mnia-featured__over{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(20px,5vw,64px);pointer-events:none}
.mnia-featured__over *{pointer-events:auto}

/* ---- labelled media placeholders; replace with a real Image block later -- */
.mnia-placeholder{min-height:clamp(260px,45vw,560px);display:flex;align-items:center;justify-content:center;padding:32px;border:3px solid var(--wp--preset--color--ink);border-radius:10px;background-color:var(--wp--preset--color--paper-2);background-image:repeating-linear-gradient(135deg,rgba(23,20,15,.055) 0,rgba(23,20,15,.055) 1px,transparent 1px,transparent 14px)}
.mnia-placeholder p{max-width:44ch;margin:0;text-align:center;font-family:var(--wp--preset--font-family--mono);font-size:12px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:var(--wp--preset--color--ink-2)}

/* ---- companion-plugin output -------------------------------------------- */
.mnia-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:24px;margin-block:56px;padding:0}
.mnia-fact{border-top:2px solid var(--wp--preset--color--ink);padding-top:12px}
.mnia-fact dt{font-family:var(--wp--preset--font-family--mono);font-size:12px;line-height:1.25;letter-spacing:.14em;text-transform:uppercase;color:var(--wp--preset--color--ink-3)}
.mnia-fact dd{margin:8px 0 0;font-weight:700}
.mnia-fact a{overflow-wrap:anywhere}
.mnia-artifact-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px);gap:32px;align-items:center}
.mnia-artifact-row>.mnia-caption{text-align:right}
.mnia-artifact-row>.mnia-caption span{display:block;margin-top:6px}
.mnia-testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.mnia-testimonial{margin:0;padding:32px;background:var(--wp--preset--color--white);border:2px solid var(--wp--preset--color--ink);border-radius:10px;box-shadow:6px 6px 0 var(--wp--preset--color--ink)}
.mnia-testimonial__quote{font-family:var(--wp--preset--font-family--display);font-size:clamp(21px,2.4vw,30px);font-weight:800;line-height:1.08;letter-spacing:-.02em}
.mnia-testimonial cite{display:block;margin-top:24px;font-family:var(--wp--preset--font-family--mono);font-size:12px;font-style:normal;line-height:1.5;color:var(--wp--preset--color--ink-2)}
.mnia-contact-form{max-width:760px}
.mnia-contact-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.mnia-field{margin:0 0 24px}
.mnia-field label{display:block;margin-bottom:8px;font-family:var(--wp--preset--font-family--mono);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.mnia-field input,.mnia-field textarea{box-sizing:border-box;width:100%;padding:14px 16px;border:2px solid var(--wp--preset--color--ink);border-radius:10px;background:var(--wp--preset--color--white);color:var(--wp--preset--color--ink);font:inherit}
.mnia-field input:focus,.mnia-field textarea:focus{outline:3px solid var(--wp--preset--color--red);outline-offset:2px;box-shadow:3px 3px 0 var(--wp--preset--color--ink)}
.mnia-contact-form button{padding:14px 24px;border:2px solid var(--wp--preset--color--ink);border-radius:999px;background:var(--wp--preset--color--yellow);color:var(--wp--preset--color--ink);font:700 16px/1 var(--wp--preset--font-family--sans);letter-spacing:.08em;text-transform:uppercase;box-shadow:6px 6px 0 var(--wp--preset--color--ink);cursor:pointer}
.mnia-contact-form button:hover{transform:translate(2px,2px);box-shadow:4px 4px 0 var(--wp--preset--color--ink)}
.mnia-form-note,.mnia-form-status{font-family:var(--wp--preset--font-family--mono);font-size:12px;line-height:1.5;color:var(--wp--preset--color--ink-2)}
.mnia-form-status{margin-bottom:24px;padding:16px;border:2px solid var(--wp--preset--color--ink);border-radius:10px;background:var(--wp--preset--color--paper-2);color:var(--wp--preset--color--ink)}
.mnia-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* ---- images sit in a 2px ink frame, never a soft shadow ----------------- */
.wp-block-image img{border-radius:10px}
.wp-block-image.is-style-framed img{border:2px solid var(--wp--preset--color--ink)}

/* ---- focus, selection, reduced motion ---------------------------------- */
:focus-visible{outline:3px solid var(--wp--preset--color--red);outline-offset:2px}
::selection{background:var(--wp--preset--color--yellow);color:var(--wp--preset--color--ink)}
@media (max-width:781px){
  .mnia-testimonial-grid,.mnia-contact-form__grid{grid-template-columns:1fr}
  .mnia-site-header .wp-block-site-title{font-size:18px!important}
  .mnia-site-header .wp-block-buttons{display:none}
  .mnia-featured{min-height:0}
  .mnia-featured__over{position:static;padding:24px}
  .mnia-featured__over .wp-block-post-title{font-size:clamp(36px,12vw,64px)!important}
  .mnia-rows .wp-block-column[style*="flex-basis"]{flex-basis:auto!important}
  .mnia-rows .has-text-align-right{text-align:left}
  .mnia-artifact-row{grid-template-columns:1fr;gap:12px}
  .mnia-artifact-row>.mnia-caption{text-align:left}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mnia-marquee__run{animation:none}.mnia-card{transition:none}}
