:root {
  --montorox-ink: #19191d;
  --montorox-paper: #f8f6f2;
  --montorox-surface: #fff;
  --montorox-muted: #625f65;
  --montorox-plum: #663053;
  --montorox-plum-dark: #49213b;
  --montorox-orange: #d18346;
  --montorox-border: #ded9d5;
  --montorox-dark: #221b24;
  --montorox-gutter: clamp(44px, 4vw, 60px);
  --montorox-section-space: 112px;
}

html { scroll-behavior: smooth; }
body { overflow-x: clip; }
body, button, input, select, textarea { font-family: "IBM Plex Sans", "Helvetica Neue", Arial, sans-serif; }
* { box-sizing: border-box; }
img { max-width: 100%; height: auto; }
.wp-site-blocks { overflow: clip; }
.wp-block-post-content { margin-block-start: 0; }
.wp-block-post-content > .wp-block-group { margin-block-start: 0; }
.wp-block-post-content > .wp-block-group + .wp-block-group { margin-block-start: 0; }
.wp-block-group.alignwide,
.wp-block-columns.alignwide,
.wp-block-query.alignwide {
  max-width: min(1320px, calc(100% - 2 * var(--montorox-gutter)));
  margin-inline: auto;
}
.wp-block-group.alignfull { width: 100%; }
p { overflow-wrap: break-word; }
h1, h2, h3 { text-wrap: balance; }
.wp-site-blocks main h2.wp-block-heading,
.editor-styles-wrapper h2.wp-block-heading {
  font-size: clamp(38px, 4.2vw, 66px);
  line-height: 1.08;
  letter-spacing: -.045em;
}
.wp-site-blocks main h3.wp-block-heading,
.editor-styles-wrapper h3.wp-block-heading {
  font-size: clamp(23px, 2.2vw, 32px);
  line-height: 1.16;
  letter-spacing: -.025em;
}
a { text-underline-offset: .2em; }
a:hover { text-decoration-thickness: 2px; }
:where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid var(--montorox-orange);
  outline-offset: 3px;
}

/* Native block Navigation supplies the submenu and accessible overlay behavior. */
.montorox-site-header {
  position: relative;
  z-index: 20;
  background: var(--montorox-paper);
  border-bottom: 1px solid var(--montorox-border);
  margin-block-start: 0 !important;
}
.montorox-header-inner {
  min-height: 90px;
  gap: 24px;
}
.montorox-header-logo,
.montorox-header-logo img {
  width: 205px;
  max-width: 205px;
}
.montorox-site-header .wp-block-navigation {
  font-size: 15px;
  font-weight: 600;
}
.montorox-site-header .wp-block-navigation-item__content {
  color: var(--montorox-ink);
}
.montorox-site-header .wp-block-navigation-item__content:hover,
.montorox-site-header .current-menu-item > .wp-block-navigation-item__content,
.montorox-site-header .current-menu-ancestor > .wp-block-navigation-item__content {
  color: var(--montorox-plum);
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}
.montorox-site-header .wp-block-navigation__submenu-container {
  min-width: 330px;
  padding: 10px;
  background: var(--montorox-surface);
  border: 1px solid var(--montorox-border);
  box-shadow: 0 14px 36px #221b241c;
}
.montorox-nav-desktop .wp-block-navigation__submenu-container {
  width: 330px !important;
  min-width: 330px !important;
}
.montorox-site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  padding: 11px 12px;
}
.montorox-site-header .wp-block-navigation__responsive-container-open,
.montorox-site-header .wp-block-navigation__responsive-container-close,
.montorox-site-header .wp-block-navigation-submenu__toggle {
  min-width: 44px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
}
.montorox-nav-mobile { display: none !important; }
.montorox-header-cta { margin-block-start: 0; }
.montorox-header-cta .wp-block-button__link { white-space: nowrap; }

/* Surfaces and reusable styles. */
.montorox-section {
  padding-block: var(--montorox-section-space);
  padding-inline: var(--montorox-gutter);
}
.montorox-section > .alignwide {
  max-width: 1320px;
}
.montorox-section > .wp-block-group.alignwide > * { max-width: none; }
.montorox-section > .wp-block-group.alignwide > h2 { max-width: 900px; }
.is-style-section-paper { background: var(--montorox-paper); color: var(--montorox-ink); }
.is-style-section-white { background: var(--montorox-surface); color: var(--montorox-ink); }
.is-style-section-dark,
.is-style-dark-panel { background: var(--montorox-dark); color: var(--montorox-surface); }
.is-style-section-muted { background: #e9e3e6; color: var(--montorox-ink); }
.is-style-section-plum,
.is-style-plum-panel { background: var(--montorox-plum-dark); color: var(--montorox-surface); }
.is-style-section-dark a,
.is-style-section-plum a,
.is-style-dark-panel a,
.is-style-plum-panel a { color: inherit; }
.is-style-section-dark .is-style-eyebrow,
.is-style-section-plum .is-style-eyebrow { color: #e3aa79; }
.is-style-section-dark p,
.is-style-section-plum p { color: #e6dce3; }
.is-style-section-dark .is-style-eyebrow,
.is-style-section-plum .is-style-eyebrow { color: #e3aa79; }
.is-style-eyebrow,
.is-style-technical-label {
  font-family: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 500;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--montorox-plum);
}
.is-style-body-large { font-size: clamp(17px, 1.5vw, 21px); line-height: 1.5; }
.is-style-section-heading { max-width: 850px; }
.is-style-technical-rule,
.wp-block-separator.is-style-technical-rule {
  border: 0;
  border-top: 1px solid var(--montorox-border);
  max-width: none;
}
.is-style-callout {
  border: 1px solid var(--montorox-border);
  border-radius: 6px;
  background: var(--montorox-surface);
  padding: 24px;
}
.is-style-dark-panel,
.is-style-plum-panel { border-radius: 6px; padding: 32px; }

/* Calls to action. */
.wp-block-button__link,
.wp-element-button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  transition: background-color .16s ease, color .16s ease, border-color .16s ease;
}
.wp-block-button.is-style-primary .wp-block-button__link {
  background: var(--montorox-plum-dark);
  color: #fff;
  border: 1px solid var(--montorox-plum-dark);
}
.wp-block-button.is-style-primary .wp-block-button__link:hover { background: var(--montorox-plum); }
.wp-block-button.is-style-secondary .wp-block-button__link {
  background: transparent;
  color: var(--montorox-ink);
  border: 1px solid #8b8189;
}
.wp-block-button.is-style-secondary .wp-block-button__link:hover { border-color: var(--montorox-plum); color: var(--montorox-plum); }
.wp-block-button.is-style-text-link .wp-block-button__link {
  padding: 0;
  min-height: 44px;
  background: transparent;
  color: var(--montorox-plum-dark);
  text-decoration: underline;
  text-underline-offset: 5px;
}
.montorox-text-link { font-weight: 600; }
.montorox-text-link a { text-decoration: underline; text-underline-offset: 5px; }
.montorox-light-button .wp-block-button__link {
  color: var(--montorox-plum-dark) !important;
  background: #fff !important;
  border-color: #fff !important;
}

/* Home scaffold: section-specific geometry, reusable card primitives. */
.montorox-hero { padding-block: 78px 94px; }
.montorox-hero-columns { align-items: center !important; gap: clamp(30px, 3.4vw, 54px); }
.montorox-hero-columns > .wp-block-column { min-width: 0; }
.montorox-hero-title {
  font-size: clamp(48px, 5.9vw, 92px) !important;
  line-height: 1.02;
  letter-spacing: -.058em;
  max-width: 760px;
}
.montorox-hero-title span { white-space: normal; }
.montorox-hero .is-style-body-large { max-width: 660px; color: #444149; }
.montorox-hero-actions { margin-block: 28px 34px; }
.montorox-capability-line {
  border-top: 1px solid var(--montorox-border);
  padding-top: 18px;
  color: var(--montorox-muted);
}
.montorox-hero-visual {
  min-height: 430px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 32px 34px 24px;
  background:
    linear-gradient(#66305312 1px, transparent 1px),
    linear-gradient(90deg, #66305312 1px, transparent 1px),
    linear-gradient(145deg, #ebe1e8, #faf8f4 65%, #ead9cb);
  background-size: 40px 40px, 40px 40px, auto;
  border-color: #dcced5;
}
.montorox-hero-visual .is-style-technical-label { margin: 0; color: var(--montorox-plum-dark); }
.montorox-system-top, .montorox-system-bottom { width: 100%; gap: 12px; }
.montorox-system-list {
  width: min(100%, 415px);
  margin: 24px auto;
  padding: 17px 25px;
  list-style: none;
  background: #fff;
  border: 1px solid #d7c6d0;
  border-radius: 5px;
  box-shadow: 0 10px 24px #221b2412;
}
.montorox-system-list li {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 49px;
  padding: 8px 0;
  border-bottom: 1px solid var(--montorox-border);
  font-size: 14px;
  line-height: 1.3;
}
.montorox-system-list li::before {
  content: '';
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--montorox-plum);
}
.montorox-system-list li:nth-child(even)::before { background: var(--montorox-orange); }
.montorox-system-list li:last-child { border-bottom: 0; }
.montorox-system-list strong { font-weight: 600; }
.montorox-system-list em {
  font: 11px/1.3 "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
  color: var(--montorox-muted);
  text-transform: uppercase;
  font-style: normal;
}
.montorox-implementation-sequence {
  padding-top: 23px;
  margin-top: 28px;
  border-top: 1px solid #695b65;
  color: #e3aa79 !important;
  line-height: 1.8;
}
.montorox-solution-card,
.is-style-solution-card {
  min-height: 258px;
  padding: 30px;
  border: 1px solid var(--montorox-border);
  border-radius: 5px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.montorox-solution-featured {
  min-height: 230px;
  margin-block: 38px 16px;
  background: #f2ebef;
  border-color: #e1d0da;
  border-left: 4px solid var(--montorox-plum);
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  column-gap: clamp(30px, 5vw, 90px);
  align-content: center;
}
.montorox-solution-featured > .is-style-technical-label { grid-column: 1 / -1; }
.montorox-solution-featured > h3 { grid-row: span 2; max-width: 640px; }
.montorox-solution-featured > p:not(.is-style-technical-label) { max-width: 450px; }
.montorox-solution-card h3 { margin: 0; }
.montorox-solution-card .montorox-text-link { margin-top: auto; }
.montorox-card-grid { gap: 16px; align-items: stretch !important; }
.montorox-card-grid .wp-block-column > .wp-block-group { height: 100%; }
.montorox-process-grid { margin-top: 48px; gap: 0; align-items: stretch !important; }
.is-style-process-step {
  min-height: 220px;
  padding: 22px 14px 10px 0;
  border-top: 1px solid #b8afb5;
  border-right: 1px solid #cbc2c8;
}
.montorox-process-grid .wp-block-column:last-child .is-style-process-step { border-right: 0; }
.wp-site-blocks main .is-style-process-step h3.wp-block-heading { font-size: clamp(23px, 2vw, 29px); }
.is-style-process-step p:last-child { font-size: 15px; }
.is-style-product-card {
  overflow: hidden;
  border: 1px solid var(--montorox-border);
  border-radius: 5px;
  background: #fff;
  display: flex;
  flex-direction: column;
  padding: 0 24px 27px;
  gap: 12px;
}
.is-style-product-card h3 { margin: 0; }
.is-style-product-card .montorox-text-link { margin-top: auto; }
.montorox-image-slot,
.montorox-product-screen {
  aspect-ratio: 16 / 10;
  margin-inline: -24px;
  margin-block: 0 10px;
  overflow: hidden;
  border-bottom: 1px solid var(--montorox-border);
  background: #eee9e6;
}
.montorox-image-slot {
  padding: 20px;
  display: grid;
  place-items: center;
  text-align: center;
  color: var(--montorox-muted);
  font: 12px/1.4 "IBM Plex Mono", monospace;
}
.montorox-image-slot p { max-width: 190px; }
.montorox-product-screen img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.montorox-development-row {
  border: 1px solid var(--montorox-border);
  padding: 18px 22px;
  margin-top: 18px;
  background: #f3f0ed;
}
.montorox-development-row p { margin: 0; }
.is-style-editorial-card {
  border-top: 1px solid var(--montorox-border);
  padding-block: 22px;
}
.is-style-editorial-card h3 { margin-block: 0 8px; }
.is-style-editorial-card p { margin-block: 0; }
.montorox-media-card { display: grid; grid-template-columns: 76px 1fr; gap: 18px; align-items: center; }
.wp-site-blocks main .montorox-media-card h3.wp-block-heading { font-size: clamp(21px, 1.8vw, 25px); }
.montorox-media-placeholder {
  display: grid;
  place-items: center;
  aspect-ratio: 1;
  padding: 8px;
  border: 1px solid var(--montorox-border);
  border-radius: 4px;
  background: #f2efec;
  color: var(--montorox-muted);
  font-size: 9px;
  text-align: center;
}
.montorox-editorial-columns { gap: clamp(40px, 5vw, 80px); }
.montorox-home-insights .wp-block-post-template { margin: 0; }
.montorox-home-insights .wp-block-post { list-style: none; }
.montorox-home-insights .wp-block-query-no-results { padding-block: 22px; border-top: 1px solid var(--montorox-border); }
.montorox-company-columns { align-items: center !important; }
.montorox-company-mark { display: flex; align-items: center; justify-content: center; min-height: 250px; }
.montorox-company-mark figure { width: 185px; margin: 0; opacity: .9; }
.montorox-founder {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 30px;
  border-top: 1px solid #c8bac3;
  padding-top: 35px;
  margin-top: 60px;
}
.montorox-founder-body { display: grid; grid-template-columns: minmax(190px, .6fr) minmax(0, 1.4fr); gap: 18px 38px; }
.montorox-founder-heading h3 { margin: 0 0 7px; }
.montorox-founder-heading .is-style-technical-label { margin: 0; }
.montorox-founder-body > p { max-width: 700px; margin: 0; }
.montorox-founder-body > .montorox-text-link { grid-column: 2; }
.montorox-company + .is-style-section-plum h2 { max-width: 900px; }

/* Generic pages and Insights. */
.montorox-marketing-page,
.montorox-product-page { min-height: 45vh; }
.montorox-standard-hero {
  padding-block: 90px 62px;
}
.montorox-standard-hero h1 { max-width: 980px; }
.wp-site-blocks main.montorox-standard-hero h1,
.wp-site-blocks main .montorox-standard-hero h1 { font-size: clamp(44px, 5vw, 72px); line-height: 1.04; letter-spacing: -.045em; margin-block: 20px 24px; }
.montorox-standard-hero .is-style-body-large { max-width: 760px; color: var(--montorox-muted); }

/* Phase 4 solution family. All copy and diagrams are Page blocks. */
.montorox-solution-hero { padding-block: 82px 94px; }
.montorox-solution-hero-columns { align-items: center !important; gap: clamp(42px, 5vw, 84px); }
.montorox-solution-hero-columns > .wp-block-column { min-width: 0; }
.montorox-solution-hero-copy { max-width: 760px; }
.montorox-solution-title {
  font-size: clamp(48px, 5.05vw, 74px) !important;
  line-height: 1.05;
  letter-spacing: -.052em;
  max-width: 770px;
}
.montorox-solution-hero-copy .is-style-body-large { color: #444149; max-width: 700px; }
.montorox-solution-actions { margin-top: 31px; gap: 12px; }
.montorox-solution-diagram {
  padding: 30px 34px;
  background: linear-gradient(#6630530d 1px, transparent 1px), linear-gradient(90deg, #6630530d 1px, transparent 1px), #f0e9ed;
  background-size: 36px 36px;
  border: 1px solid #d9cbd3;
  border-radius: 5px;
}
.montorox-solution-diagram > .is-style-technical-label { margin: 0 0 22px; }
.montorox-solution-diagram-steps { background: #fff; border: 1px solid #d5c7cf; border-radius: 4px; padding: 10px 22px; }
.montorox-solution-diagram-step { display: grid; grid-template-columns: 38px 1fr; gap: 14px; align-items: center; border-bottom: 1px solid var(--montorox-border); min-height: 56px; }
.montorox-solution-diagram-step:last-child { border-bottom: 0; }
.montorox-solution-diagram-step p { margin: 0; font-size: 14px; line-height: 1.35; }
.montorox-solution-diagram-step .is-style-technical-label { color: var(--montorox-orange-dark, #8f4c1e); font-size: 11px; }
.montorox-diagram-note { font: 11px/1.4 "IBM Plex Mono", monospace; color: var(--montorox-muted); margin: 16px 0 0; }
.montorox-solution-framing .montorox-solution-split,
.montorox-solution-controls .montorox-solution-split { gap: clamp(45px, 7vw, 120px); align-items: start !important; }
.montorox-solution-split > .wp-block-column { min-width: 0; }
.montorox-solution-framing-list,
.montorox-solution-control-list,
.montorox-solution-side-note { border-top: 2px solid var(--montorox-plum); padding: 20px 0 0; }
.montorox-solution-side-note h3 { margin-top: 10px; }
.montorox-solution-side-note p:last-child { color: var(--montorox-muted); }
.montorox-solution-framing-list ul,
.montorox-solution-control-list ul,
.montorox-solution-example-list ul,
.montorox-solution-fit-panel ul { padding-left: 1.3em; }
.montorox-solution-framing-list li,
.montorox-solution-control-list li,
.montorox-solution-example-list li,
.montorox-solution-fit-panel li { padding: 6px 0; line-height: 1.5; }
.montorox-solution-capabilities h2 { max-width: 850px; }
.montorox-solution-card-grid,
.montorox-solution-steps,
.montorox-solution-evidence-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 42px; }
.montorox-solution-card-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.montorox-solution-detail-card { min-width: 0; border: 1px solid var(--montorox-border); border-top: 3px solid var(--montorox-plum); background: #fff; padding: 25px 22px; }
.montorox-solution-detail-card .is-style-technical-label { margin: 0 0 24px; }
.wp-site-blocks main .montorox-solution-detail-card h3.wp-block-heading { font-size: clamp(20px, 1.7vw, 25px); margin: 0 0 14px; }
.montorox-solution-detail-card p:last-child { margin: 0; font-size: 15px; line-height: 1.55; color: #4b4850; }
.montorox-solution-examples h2,
.montorox-solution-evidence h2,
.montorox-solution-fit h2 { max-width: 850px; }
.montorox-solution-example-list ul { columns: 2; column-gap: 60px; padding-left: 1.4em; }
.montorox-solution-example-list li { break-inside: avoid; }
.montorox-solution-evidence-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.montorox-solution-evidence .montorox-solution-detail-card { background: #302832; border-color: #6c5c68; border-top-color: #d18346; }
.montorox-solution-evidence .montorox-solution-detail-card p:last-child { color: #e5dde3; }
.montorox-solution-evidence > .alignwide > .montorox-text-link { margin-top: 30px; }
.montorox-solution-steps { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.montorox-solution-steps .montorox-solution-detail-card { border: 0; border-top: 1px solid #a99da5; padding: 22px 15px 0 0; background: transparent; }
.montorox-solution-fit-columns { gap: 18px; margin-top: 34px; }
.montorox-solution-fit-panel { border: 1px solid #766a73; padding: 30px; min-height: 270px; }
.montorox-solution-fit-panel .is-style-technical-label { color: #e3aa79; }
.montorox-solution-faq-list { border-top: 1px solid var(--montorox-border); margin-top: 35px; }
.montorox-solution-faq-item { display: grid; grid-template-columns: minmax(240px, .9fr) minmax(0, 1.1fr); gap: 45px; padding: 24px 0; border-bottom: 1px solid var(--montorox-border); }
.montorox-solution-faq-item h3,
.montorox-solution-faq-item p { margin: 0; }
.wp-site-blocks main .montorox-solution-faq-item h3.wp-block-heading { font-size: clamp(20px, 1.7vw, 26px); }
.montorox-solution-related { padding-block: 70px; }
.montorox-solution-related h2 { font-size: clamp(34px, 3.2vw, 46px) !important; }
.montorox-solution-related-links { display: flex; flex-wrap: wrap; gap: 15px 36px; margin-top: 27px; }
.montorox-solution-related-links p { margin: 0; }
.montorox-solution-related-links a { display: inline-flex; align-items: center; min-height: 44px; }
.montorox-solution-final h2 { max-width: 880px; }
.montorox-solution-final .wp-block-button__link { background: #fff !important; color: var(--montorox-plum-dark) !important; }
.montorox-solution-final .wp-block-button__link:hover { background: #f0e8ed !important; }

/* Phase 5 portfolio. Images show actual public product interfaces. */
.montorox-portfolio-hero { padding-block: 92px 104px; }
.montorox-portfolio-hero-copy { max-width: 1050px; }
.montorox-portfolio-title { font-size: clamp(54px, 5.5vw, 82px) !important; line-height: 1.04; letter-spacing: -.055em; max-width: 950px; }
.montorox-portfolio-hero .is-style-body-large { max-width: 760px; color: #45414a; }
.montorox-portfolio-hero .wp-block-buttons,
.montorox-portfolio-detail-hero .wp-block-buttons { margin-top: 32px; gap: 12px; }
.montorox-portfolio-overview-columns,
.montorox-portfolio-experience-columns { gap: clamp(45px, 7vw, 110px); align-items: start !important; }
.montorox-portfolio-overview-list,
.montorox-portfolio-operations-list { border-top: 2px solid var(--montorox-plum); padding-top: 19px; }
.montorox-portfolio-overview-list ul,
.montorox-portfolio-operations-list ul { padding-left: 1.3em; }
.montorox-portfolio-overview-list li,
.montorox-portfolio-operations-list li { padding-block: 7px; line-height: 1.5; }
.montorox-portfolio-feature { border-top: 1px solid var(--montorox-border); }
.montorox-portfolio-feature-columns { gap: clamp(38px, 5vw, 80px); align-items: center !important; }
.montorox-portfolio-feature-columns > .wp-block-column { min-width: 0; }
.montorox-portfolio-feature-columns.is-reversed > .wp-block-column:first-child { order: 2; }
.montorox-portfolio-feature-columns.is-reversed > .wp-block-column:last-child { order: 1; }
.montorox-portfolio-feature-copy h2 { margin-block: 12px 8px; }
.montorox-portfolio-feature-copy > p:not(.is-style-technical-label):not(.montorox-portfolio-descriptor) { max-width: 570px; line-height: 1.6; }
.montorox-portfolio-descriptor { color: var(--montorox-plum-dark); font-weight: 650; font-size: 18px; margin-block: 0 18px; }
.montorox-portfolio-actions { gap: 10px; margin-top: 28px; }
.montorox-portfolio-visual,
.montorox-portfolio-detail-visual { min-width: 0; }
.montorox-portfolio-image { display: block; margin: 0; border: 1px solid #d4cdd1; border-radius: 5px; overflow: hidden; background: #f2efec; aspect-ratio: 16 / 10; }
.montorox-portfolio-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.montorox-portfolio-caption { color: var(--montorox-muted); font: 11px/1.5 "IBM Plex Mono", monospace; margin: 12px 0 0; }
.montorox-portfolio-development { padding-block: 62px; }
.montorox-portfolio-development-panel { border-top: 2px solid var(--montorox-plum); padding-top: 28px; max-width: 850px; }
.montorox-portfolio-development-panel h2 { margin-block: 8px; }
.montorox-portfolio-card-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 38px; }
.montorox-portfolio-card { border-top: 1px solid #aa99a3; padding: 22px 14px 8px 0; }
.montorox-portfolio-card .is-style-technical-label { color: #e3aa79; margin: 0 0 20px; }
.wp-site-blocks main .montorox-portfolio-card h3.wp-block-heading { font-size: clamp(21px, 1.8vw, 27px); margin: 0 0 15px; }
.montorox-portfolio-card p:last-child { font-size: 15px; line-height: 1.55; margin: 0; }
.montorox-portfolio-related h2 { max-width: 850px; }
.montorox-portfolio-links { display: flex; flex-wrap: wrap; gap: 10px 34px; margin-top: 27px; }
.montorox-portfolio-links p { margin: 0; }
.montorox-portfolio-links a { display: inline-flex; align-items: center; min-height: 44px; }
.montorox-portfolio-final h2 { max-width: 850px; }
.montorox-portfolio-final .wp-block-button.is-style-primary .wp-block-button__link { background: #fff; border-color: #fff; color: var(--montorox-plum-dark); }
.montorox-portfolio-final .wp-block-button.is-style-secondary .wp-block-button__link { background: transparent; border-color: #d9c5d2; color: #fff; }
.montorox-portfolio-final .wp-block-button.is-style-primary .wp-block-button__link:hover { background: #f0e8ed; }
.montorox-portfolio-final .wp-block-button.is-style-secondary .wp-block-button__link:hover { border-color: #fff; color: #fff; }
.montorox-portfolio-detail-hero { padding-block: 78px 88px; }
.montorox-portfolio-detail-hero-copy { max-width: 940px; }
.montorox-portfolio-detail-hero .is-style-body-large { max-width: 760px; color: #45414a; }
.montorox-portfolio-evidence { padding-top: 76px; }
.montorox-portfolio-detail-visual { max-width: 1180px; }
.montorox-portfolio-detail-visual > .montorox-portfolio-image { width: 100%; max-width: 1180px !important; }
.montorox-portfolio-what .montorox-portfolio-card { border-color: var(--montorox-plum); }
.montorox-portfolio-what .montorox-portfolio-card .is-style-technical-label { color: var(--montorox-plum-dark); }
.montorox-portfolio-relationship h2 { max-width: 870px; }
.montorox-portfolio-relationship .is-style-body-large { max-width: 970px; }

/* Phase 6: editorial Media and company About Pages. Copy stays in Page blocks. */
.montorox-media-hero,
.montorox-about-hero { padding-block: 94px 110px; }
.montorox-media-hero-copy,
.montorox-about-hero-copy { max-width: 1050px; }
.montorox-media-title,
.montorox-about-title { font-size: clamp(53px, 5.5vw, 82px) !important; line-height: 1.04; letter-spacing: -.055em; max-width: 1000px; }
.montorox-media-hero .is-style-body-large,
.montorox-about-hero .is-style-body-large { max-width: 820px; color: #45414a; }
.montorox-media-feature-columns { gap: 22px; margin-top: 44px; align-items: stretch !important; }
.montorox-media-feature-columns > .wp-block-column { min-width: 0; }
.montorox-media-feature-card { height: 100%; min-height: 460px; display: flex; flex-direction: column; border: 1px solid var(--montorox-border); border-top: 3px solid var(--montorox-plum); padding: 30px; background: #fff; }
.montorox-media-feature-card > .is-style-technical-label { margin: 0 0 38px; }
.montorox-media-artwork-note { display: inline-flex; align-items: center; align-self: flex-start; min-height: 52px; margin: 0 0 36px; padding: 0 18px; background: #f0e9ed; border: 1px solid #ddcdd7; color: #625f65; font: 11px/1.4 "IBM Plex Mono", monospace; text-transform: uppercase; letter-spacing: .06em; }
.montorox-media-feature-card h3 { margin: 0 0 12px; }
.montorox-media-descriptor { color: var(--montorox-plum-dark); font-weight: 650; margin-block: 0 18px; }
.montorox-media-feature-card > p:not(.is-style-technical-label):not(.montorox-media-artwork-note):not(.montorox-media-descriptor):not(.montorox-text-link) { line-height: 1.6; max-width: 520px; }
.montorox-media-feature-card .montorox-text-link { margin-top: auto; padding-top: 20px; }
.montorox-media-feature-card .montorox-text-link a { display: inline-flex; align-items: center; min-height: 44px; }
.montorox-media-secondary { padding-block: 78px; }
.montorox-media-secondary-copy { max-width: 780px; border-top: 2px solid var(--montorox-plum); padding-top: 27px; }
.montorox-media-secondary-copy h2 { margin-block: 8px 18px; }
.montorox-media-discipline-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 42px; }
.montorox-media-discipline { border-top: 1px solid #907f8a; padding: 20px 12px 0 0; }
.montorox-media-discipline .is-style-technical-label { color: #e3aa79; }
.wp-site-blocks main .montorox-media-discipline h3.wp-block-heading { font-size: clamp(21px, 1.8vw, 28px); margin-block: 18px 12px; }
.montorox-media-discipline p:last-child { font-size: 15px; line-height: 1.55; }
.montorox-media-tech-columns,
.montorox-about-positioning-columns { gap: clamp(48px, 7vw, 115px); align-items: start !important; }
.montorox-media-related-links,
.montorox-about-positioning-note { border-top: 2px solid var(--montorox-plum); padding-top: 22px; }
.montorox-media-related-links .montorox-text-link a { display: inline-flex; align-items: center; min-height: 44px; }
.montorox-media-final .wp-block-button.is-style-primary .wp-block-button__link,
.montorox-about-final .wp-block-button.is-style-primary .wp-block-button__link { background: #fff; border-color: #fff; color: var(--montorox-plum-dark); }
.montorox-media-final .wp-block-button.is-style-secondary .wp-block-button__link,
.montorox-about-final .wp-block-button.is-style-secondary .wp-block-button__link { border-color: #d9c5d2; color: #fff; }
.montorox-media-final .wp-block-buttons,
.montorox-about-final .wp-block-buttons { margin-top: 28px; }
.montorox-about-positioning-note h3 { margin-block: 7px 15px; }
.montorox-about-positioning-note p:last-child { color: var(--montorox-muted); }
.montorox-about-capability-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 40px; }
.montorox-about-capability { border: 1px solid var(--montorox-border); border-top: 3px solid var(--montorox-plum); background: #fff; padding: 24px 26px; }
.montorox-about-capability .is-style-technical-label { margin: 0 0 18px; }
.montorox-about-capability h3 { margin-block: 0 13px; }
.montorox-about-capability > p:not(.is-style-technical-label):not(.montorox-text-link) { color: #4b4850; line-height: 1.55; }
.montorox-about-capability .montorox-text-link { margin-bottom: 0; }
.montorox-about-capability .montorox-text-link a { display: inline-flex; align-items: center; min-height: 44px; }
.montorox-about-principles { border-top: 1px solid var(--montorox-border); margin-top: 38px; }
.montorox-about-principle { display: grid; grid-template-columns: 70px minmax(220px, .8fr) minmax(0, 1.2fr); gap: 20px; align-items: start; padding: 25px 0; border-bottom: 1px solid var(--montorox-border); }
.montorox-about-principle > * { margin: 0; }
.wp-site-blocks main .montorox-about-principle h3.wp-block-heading { font-size: clamp(21px, 1.8vw, 27px); }
.montorox-about-principle p:last-child { line-height: 1.55; color: #4b4850; }
.montorox-about-pillar-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 40px; }
.montorox-about-pillar { border-top: 1px solid #907f8a; padding: 23px 15px 0 0; }
.montorox-about-pillar .is-style-technical-label { color: #e3aa79; }
.montorox-about-pillar h3 { margin-block: 20px 12px; }
.montorox-about-pillar p:not(.is-style-technical-label):not(.montorox-text-link) { line-height: 1.55; }
.montorox-about-pillar .montorox-text-link a { display: inline-flex; align-items: center; min-height: 44px; }
.montorox-about-founder-columns { gap: clamp(42px, 7vw, 120px); align-items: start !important; }
.montorox-about-founder-identity { border-top: 2px solid var(--montorox-plum); padding-top: 20px; }
.montorox-about-founder-identity h2 { margin-block: 8px 4px; }
.montorox-about-founder-role { font-weight: 650; color: var(--montorox-plum-dark); margin: 0 0 24px; }
.montorox-about-founder-identity .is-style-technical-label { line-height: 1.7; }
.montorox-about-founder-bio .is-style-body-large { margin-top: 0; }
.montorox-about-founder-context { color: var(--montorox-muted); margin-top: 26px; }
.montorox-insights-query { padding-bottom: 112px; }
.montorox-insights-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.montorox-insights-grid .wp-block-post { list-style: none; }
.montorox-insights-grid .wp-block-post:first-child { grid-column: 1 / -1; }
.montorox-editorial-card {
  background: #fff;
  border: 1px solid var(--montorox-border);
  border-radius: 5px;
  padding: clamp(22px, 3vw, 36px);
}
.montorox-editorial-card .wp-block-post-title { margin-block: 12px; }
.montorox-editorial-card .wp-block-post-title a { text-decoration: none; }
.montorox-editorial-card .wp-block-post-title a:hover { text-decoration: underline; }
.montorox-editorial-card .wp-block-post-date { font-size: 14px; color: var(--montorox-muted); }
.montorox-insights-grid .wp-block-post:first-child .wp-block-post-title { font-size: clamp(32px, 3vw, 46px); max-width: 850px; }
.montorox-editorial-card .wp-block-post-featured-image {
  aspect-ratio: 16/10;
  overflow: hidden;
}
.montorox-editorial-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.montorox-empty-state { margin-block: 30px 90px; }
main.montorox-single-post,
main.montorox-not-found { box-sizing: border-box; padding-inline: var(--montorox-gutter); }
.montorox-single-post .montorox-post-header { padding-block: 85px 35px; }
.wp-site-blocks main.montorox-single-post .wp-block-post-title { max-width: 740px; margin-inline: auto; font-size: clamp(42px, 4.5vw, 68px); line-height: 1.07; }
.montorox-single-post .wp-block-post-excerpt { max-width: 740px; margin-inline: auto; font-size: 20px; color: var(--montorox-muted); }
.montorox-post-back { margin-bottom: 30px; font-size: 14px; }
.montorox-post-back a { text-decoration: none; }
.montorox-post-back a:hover { text-decoration: underline; }
.montorox-post-meta { color: var(--montorox-muted); font-size: 14px; }
.montorox-single-post > .wp-block-post-featured-image { margin-block: 25px 70px; }
.montorox-single-post .wp-block-post-content { padding-bottom: 60px; }
.montorox-single-post .wp-block-post-content > * + * { margin-block-start: 1.4em; }
.wp-site-blocks main.montorox-single-post .wp-block-post-content h2 { margin-block-start: 1.6em; font-size: clamp(30px, 3vw, 42px); }
.wp-site-blocks main.montorox-single-post .wp-block-post-content h3 { font-size: clamp(23px, 2.2vw, 29px); }
.montorox-single-post .wp-block-post-content p,
.montorox-single-post .wp-block-post-content li { line-height: 1.75; }
.montorox-single-post .wp-block-post-content .wp-block-table { overflow-x: auto; }
.montorox-single-post .wp-block-post-content pre { max-width: 100%; overflow-x: auto; }
.montorox-single-post .wp-block-post-content blockquote { border-left: 3px solid var(--montorox-plum); padding-left: 24px; }
.montorox-post-end { border-top: 1px solid var(--montorox-border); padding-block: 32px 112px; }
.montorox-not-found { min-height: 60vh; }
.montorox-not-found .wp-block-buttons { margin-top: 36px; gap: 14px; }
.montorox-search-result { padding: 28px 0; border-bottom: 1px solid var(--montorox-border); }
.montorox-search-result .wp-block-post-title { font-size: clamp(25px, 2.3vw, 34px); }

/* Footer. */
.montorox-site-footer {
  background: var(--montorox-dark);
  color: #eee9ec;
  padding: 52px var(--montorox-gutter) 28px;
  margin-block-start: 0 !important;
}
.montorox-footer-inner { max-width: 1320px !important; }
.montorox-footer-columns { gap: 36px; }
.montorox-footer-logo-plate {
  display: inline-block;
  background: var(--montorox-paper);
  padding: 7px 12px;
  border-radius: 4px;
}
.montorox-footer-logo-plate .wp-block-site-logo,
.montorox-footer-logo-plate img { width: 172px; max-width: 172px; }
.montorox-site-footer a { color: #eee9ec; }
.montorox-site-footer p { font-size: 14px; line-height: 1.6; color: #c9c1c8; }
.montorox-site-footer .montorox-footer-heading {
  color: #dca875;
  font: 500 12px/1.4 "IBM Plex Mono", monospace;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.montorox-footer-bottom {
  border-top: 1px solid #5c4d59;
  margin-top: 38px;
  padding-top: 18px;
}
.montorox-footer-bottom p { margin: 0; font-size: 12px; }

@media (max-width: 1023px) {
  :root { --montorox-gutter: 28px; }
  .montorox-nav-desktop,
  .montorox-header-cta { display: none !important; }
  .montorox-nav-mobile { display: flex !important; }
  .montorox-header-inner { min-height: 76px; }
  .montorox-site-header .wp-block-navigation__responsive-container.is-menu-open {
    color: var(--montorox-ink);
    background: var(--montorox-paper);
    padding: 24px var(--montorox-gutter);
  }
  .montorox-nav-mobile .wp-block-navigation__responsive-container-content {
    width: 100%;
    padding-top: 42px;
  }
  .montorox-nav-mobile .wp-block-navigation__responsive-container-content > .wp-block-navigation__container {
    width: 100%;
    align-items: stretch;
    gap: 0;
  }
  .montorox-nav-mobile .wp-block-navigation__responsive-container-content > .wp-block-navigation__container > li {
    width: 100%;
    border-bottom: 1px solid var(--montorox-border);
  }
  .montorox-nav-mobile .wp-block-navigation__responsive-container-content > .wp-block-navigation__container > li > .wp-block-navigation-item__content {
    justify-content: flex-start;
    width: 100%;
    min-height: 52px;
    padding: 12px 0;
    text-align: left;
    font-size: 18px;
  }
  .montorox-nav-mobile .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
    position: static;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 0 12px 16px;
    border: 0;
    box-shadow: none;
    background: transparent;
  }
  .montorox-nav-mobile .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    width: 100%;
    padding: 9px 0;
    text-align: left;
    font-size: 15px;
  }
  .montorox-nav-mobile .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container .wp-block-navigation-item {
    align-items: flex-start;
    width: 100%;
  }
  .montorox-hero-columns { flex-direction: column; }
  .montorox-hero-columns > .wp-block-column { flex-basis: auto !important; width: 100%; }
  .montorox-hero-visual { min-height: 350px; }
  .montorox-process-grid { flex-wrap: wrap !important; }
  .montorox-process-grid > .wp-block-column { flex-basis: 30% !important; }
  .montorox-founder { grid-template-columns: 110px 1fr; }
  .montorox-founder-body { grid-template-columns: 1fr; }
  .montorox-founder-body > .montorox-text-link { grid-column: 1; }
  .montorox-solution-hero-columns { flex-direction: column; }
  .montorox-solution-hero-columns > .wp-block-column { width: 100%; flex-basis: auto !important; }
  .montorox-solution-diagram { max-width: 700px; }
  .montorox-solution-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .montorox-portfolio-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .montorox-media-discipline-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
  :root { --montorox-gutter: 20px; --montorox-section-space: 76px; }
  .montorox-header-logo,
  .montorox-header-logo img { width: 170px; max-width: 170px; }
  .montorox-hero { padding-block: 38px 60px; }
  .montorox-hero-title { font-size: clamp(48px, 10vw, 52px) !important; }
  .montorox-hero-actions { gap: 8px; }
  .montorox-hero-actions .wp-block-button__link { padding-inline: 13px; font-size: 13px; }
  .montorox-capability-line { font-size: 10px; }
  .montorox-hero-visual { min-height: 350px; padding: 20px 17px; }
  .montorox-system-list { padding: 12px 14px; margin-block: 18px; }
  .montorox-system-list li { font-size: 12px; grid-template-columns: 8px minmax(0, 1fr) auto; gap: 8px; }
  .montorox-system-list em { font-size: 9px; }
  .montorox-system-top .is-style-technical-label,
  .montorox-system-bottom .is-style-technical-label { font-size: 10px; }
  .montorox-solution-featured { display: flex; min-height: 0; }
  .montorox-card-grid,
  .montorox-editorial-columns { flex-direction: column; }
  .montorox-card-grid > .wp-block-column,
  .montorox-editorial-columns > .wp-block-column { flex-basis: 100% !important; }
  .montorox-process-grid { display: block; }
  .montorox-process-grid > .wp-block-column { width: 100%; }
  .is-style-process-step { min-height: 0; border-right: 0; padding-block: 20px; }
  .montorox-company-columns { flex-direction: column; }
  .montorox-company-columns > .wp-block-column { width: 100%; flex-basis: auto !important; }
  .montorox-company-mark { min-height: 140px; justify-content: flex-start; }
  .montorox-company-mark figure { width: 130px; }
  .montorox-founder { display: block; margin-top: 25px; }
  .montorox-founder-body { margin-top: 20px; }
  .montorox-footer-columns { display: grid !important; grid-template-columns: 1fr 1fr; gap: 28px; }
  .montorox-footer-columns > .wp-block-column:first-child { grid-column: span 2; }
  .montorox-footer-bottom { display: block; }
  .montorox-insights-grid { display: block; }
  .montorox-solution-hero { padding-block: 54px 72px; }
  .montorox-solution-title { font-size: clamp(43px, 10vw, 51px) !important; }
  .montorox-solution-diagram { padding: 20px; }
  .montorox-solution-diagram-steps { padding-inline: 14px; }
  .montorox-solution-card-grid,
  .montorox-solution-evidence-grid { grid-template-columns: 1fr; }
  .montorox-solution-steps { grid-template-columns: 1fr; }
  .montorox-solution-detail-card { padding: 23px 20px; }
  .montorox-solution-steps .montorox-solution-detail-card { padding: 20px 0 0; }
  .montorox-solution-example-list ul { columns: 1; }
  .montorox-solution-fit-columns { flex-direction: column; }
  .montorox-solution-fit-columns > .wp-block-column { flex-basis: auto !important; width: 100%; }
  .montorox-solution-fit-panel { min-height: 0; }
  .montorox-solution-faq-item { display: block; }
  .montorox-solution-faq-item p { margin-top: 12px; }
  .montorox-portfolio-hero,
  .montorox-portfolio-detail-hero { padding-block: 55px 70px; }
  .montorox-portfolio-title { font-size: clamp(45px, 10.2vw, 55px) !important; }
  .montorox-portfolio-feature-columns { flex-direction: column; }
  .montorox-portfolio-feature-columns > .wp-block-column { width: 100%; flex-basis: auto !important; }
  .montorox-portfolio-feature-columns.is-reversed > .wp-block-column:first-child,
  .montorox-portfolio-feature-columns.is-reversed > .wp-block-column:last-child { order: initial; }
  .montorox-portfolio-card-grid { grid-template-columns: 1fr; }
  .montorox-portfolio-visual { margin-top: 20px; }
  .montorox-portfolio-evidence { padding-top: 58px; }
  .montorox-media-hero,
  .montorox-about-hero { padding-block: 55px 70px; }
  .montorox-media-title,
  .montorox-about-title { font-size: clamp(44px, 10.2vw, 54px) !important; }
  .montorox-media-feature-columns,
  .montorox-media-tech-columns,
  .montorox-about-positioning-columns,
  .montorox-about-founder-columns { flex-direction: column; }
  .montorox-media-feature-columns > .wp-block-column,
  .montorox-media-tech-columns > .wp-block-column,
  .montorox-about-positioning-columns > .wp-block-column,
  .montorox-about-founder-columns > .wp-block-column { width: 100%; flex-basis: auto !important; }
  .montorox-media-feature-card { min-height: 0; }
  .montorox-media-artwork-note { margin-bottom: 28px; }
  .montorox-media-discipline-grid,
  .montorox-about-capability-grid,
  .montorox-about-pillar-grid { grid-template-columns: 1fr; }
  .montorox-about-principle { display: block; }
  .montorox-about-principle h3 { margin-block: 11px; }
  .montorox-about-founder-identity { margin-bottom: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Phase 7 Contact page. Form behavior and data handling live in montorox-core. */
.montorox-contact-hero { padding-block: 86px 105px; }
.montorox-contact-hero h1 { max-width: 920px; font-size: clamp(48px, 6vw, 88px); line-height: 1.02; letter-spacing: -.055em; margin-block: 24px 27px; }
.montorox-contact-hero .is-style-body-large { max-width: 780px; color: #45414a; }
.montorox-contact-columns { gap: clamp(44px, 7vw, 110px); align-items: start !important; }
.montorox-contact-columns > .wp-block-column { min-width: 0; }
.montorox-contact-columns > .wp-block-column:first-child { border-top: 2px solid var(--montorox-plum); padding-top: 24px; }
.montorox-contact-columns h2 { margin-block: 13px 22px; }
.montorox-contact-columns > .wp-block-column:first-child p:not(.is-style-eyebrow) { color: #4b4850; line-height: 1.65; max-width: 410px; }
.montorox-contact-info-columns { gap: clamp(45px, 9vw, 140px); }
.montorox-contact-info-columns > .wp-block-column { border-top: 2px solid var(--montorox-plum); padding-top: 22px; }
.montorox-contact-info-columns h2 { margin-block: 12px 20px; }
.montorox-contact-info-columns p:not(.is-style-eyebrow) { max-width: 560px; line-height: 1.7; }
.montorox-contact-privacy { padding-block: 60px 75px; }
.montorox-contact-privacy .alignwide { border-top: 1px solid var(--montorox-border); padding-top: 25px; }
.montorox-contact-privacy p:last-child { max-width: 800px; color: var(--montorox-muted); }
.montorox-legal-page { padding: 90px var(--montorox-gutter) 112px; }
.montorox-legal-inner { max-width: 760px !important; margin-inline: auto !important; }
.wp-site-blocks main .montorox-legal-page h1 { font-size: clamp(44px, 5vw, 68px); line-height: 1.06; margin-block: 18px 30px; }
.wp-site-blocks main .montorox-legal-page h2 { font-size: clamp(26px, 2.5vw, 34px); line-height: 1.2; margin-block: 54px 16px; }
.montorox-legal-inner > p:not(.is-style-eyebrow) { line-height: 1.72; max-width: 760px; }
.montorox-legal-inner > p:last-child { padding-top: 22px; border-top: 1px solid var(--montorox-border); }
.montorox-inquiry-form { max-width: 790px; }
.montorox-inquiry-form form { margin: 0; }
.montorox-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; }
.montorox-form-field { margin-bottom: 21px; min-width: 0; }
.montorox-form-field label { display: block; margin-bottom: 8px; font-weight: 650; line-height: 1.45; }
.montorox-form-field label span, .montorox-form-consent label span, .montorox-form-required-note span { color: #a22d37; }
.montorox-form-field :where(input,select,textarea) { display: block; width: 100%; min-width: 0; min-height: 50px; border: 1px solid #a7a1a5; border-radius: 4px; padding: 12px 14px; color: var(--montorox-ink); background: #fff; font-size: 16px; line-height: 1.45; }
.montorox-form-field textarea { resize: vertical; min-height: 116px; }
.montorox-form-field :where(input,select,textarea)[aria-invalid="true"] { border: 2px solid #a22d37; }
.montorox-form-required-note, .montorox-form-help { color: var(--montorox-muted); font-size: 14px; line-height: 1.5; }
.montorox-form-required-note { margin: 0 0 23px; }
.montorox-form-help { margin: -12px 0 26px; }
.montorox-form-consent { display: grid; grid-template-columns: 22px 1fr; gap: 10px; align-items: start; margin: 15px 0 30px; line-height: 1.55; }
.montorox-form-consent input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--montorox-plum); }
.montorox-form-consent label { font-size: 15px; }
.montorox-form-consent .montorox-form-error { grid-column: 2; }
.montorox-form-error { display: block; color: #8d1f2b; font-size: 14px; margin-top: 6px; font-weight: 650; }
.montorox-form-summary { border: 2px solid #a22d37; background: #fff4f4; padding: 16px 20px; margin-bottom: 25px; }
.montorox-form-summary p { margin: 5px 0 0; }
.montorox-form-submit { min-height: 54px; background: var(--montorox-plum-dark); color: #fff; border: 2px solid var(--montorox-plum-dark); border-radius: 4px; padding: 11px 25px; font-size: 16px; font-weight: 650; cursor: pointer; }
.montorox-form-submit:hover { background: var(--montorox-plum); }
.montorox-form-success { max-width: 790px; border-top: 4px solid #236c4c; background: #f1f8f3; padding: 30px; }
.montorox-form-success h2 { margin-top: 0; }
.montorox-form-success p { margin-bottom: 0; }
.montorox-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 782px) {
  .montorox-contact-hero { padding-block: 60px 72px; }
  .montorox-contact-hero h1 { font-size: clamp(46px, 10vw, 64px); }
  .montorox-contact-columns, .montorox-contact-info-columns { flex-direction: column; }
  .montorox-contact-columns > .wp-block-column, .montorox-contact-info-columns > .wp-block-column { width: 100%; flex-basis: auto !important; }
  .montorox-contact-columns > .wp-block-column:first-child { margin-bottom: 20px; }
}
@media (max-width: 520px) {
  .montorox-form-grid { grid-template-columns: 1fr; }
  .montorox-contact-hero h1 { font-size: clamp(43px, 10.5vw, 52px); }
  .montorox-form-success { padding: 23px; }
}
