/*
 * Mimoto theme styles. Tokens come from theme.json.
 * Brand Book V1.1: light grounds (White or Paper), Navy type, Coral about 5 percent,
 * square corners, no gradients, no shadows, no glows.
 */

:root {
	--m-navy: var(--wp--preset--color--navy, #170D7D);
	--m-coral: var(--wp--preset--color--coral, #FF662E);
	/* Coral for text on light backgrounds. The brand coral is too light for small
	   text to meet the accessibility standard (4.5 to 1), so small text uses a
	   deeper coral of the same hue, and large accents a touch deeper (3 to 1).
	   On Navy, the brand coral already passes and stays as is. */
	--m-coral-text: #CC3700;
	--m-coral-large: #FF5315;
	--m-blue: var(--wp--preset--color--light-blue, #92C5FC);
	--m-gray: var(--wp--preset--color--gray, #555869);
	--m-deep: var(--wp--preset--color--deep-navy, #0B1533);
	--m-paper: var(--wp--preset--color--paper, #F4FAFF);
	--m-pale: var(--wp--preset--color--pale, #DCE5F4);
	--m-mono: var(--wp--preset--font-family--plex-mono, "IBM Plex Mono", "Courier New", monospace);
	--m-navy-80: rgba(23, 13, 125, 0.8);
	--m-section: clamp(56px, 8vw, 112px);
}

html {
	scroll-padding-top: 96px;
}

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	font-feature-settings: "cv11", "ss01";
	overflow-x: clip;
}

::selection {
	background: var(--m-blue);
	color: var(--m-navy);
}

a {
	text-underline-offset: 0.18em;
	text-decoration-thickness: 1px;
}

a:hover {
	text-decoration-color: var(--m-coral);
}

:focus-visible {
	outline: 2px solid var(--m-coral);
	outline-offset: 3px;
}

/* Spacing between the header, main, and footer */
.wp-site-blocks > main,
.wp-site-blocks > footer {
	margin-block-start: 0;
}

.site-main > .alignfull {
	margin-block: 0;
}

/* ---------- Header ---------- */

header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 100;
	background: #fff;
}

.admin-bar header.wp-block-template-part {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar header.wp-block-template-part {
		top: 46px;
	}
}

.site-header {
	border-bottom: 1px solid var(--m-pale);
	background: #fff;
}

.site-header__inner {
	min-height: 76px;
	gap: 24px;
}

.site-wordmark,
.site-wordmark.wp-block-image {
	margin: 0;
	flex-shrink: 0;
}

.site-wordmark img {
	display: block;
	height: auto;
}

.site-header__nav {
	gap: 28px;
}

.site-nav .wp-block-navigation__container {
	gap: 28px;
}

.site-nav .wp-block-navigation-item__content {
	color: var(--m-navy);
	text-decoration: none;
	padding-block: 8px;
}

.site-nav .wp-block-navigation-item__content:hover {
	text-decoration: underline;
	text-decoration-color: var(--m-coral);
}

.site-nav .wp-block-navigation__submenu-container {
	border: 1px solid var(--m-pale) !important;
	background: #fff;
	color: var(--m-navy) !important;
	padding: 8px 0 !important;
	min-width: 280px !important;
}

.site-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 8px 20px !important;
	font-weight: 400;
}

/* Solutions menu: two labeled groups, by threat and by industry */
.site-nav .nav-label > .wp-block-navigation-item__content {
	font-family: var(--m-mono);
	font-size: 11px !important;
	font-weight: 500 !important;
	color: var(--m-gray) !important;
	text-decoration: none;
}

.site-nav .nav-label > .wp-block-navigation-item__content:hover {
	color: var(--m-navy) !important;
}

@media (min-width: 600px) {
	/* Two independent columns, so a long item on one side never stretches the other */
	.site-nav .nav-mega > .wp-block-navigation__submenu-container {
		display: block !important;
		columns: 2;
		column-gap: 0;
		column-rule: 1px solid var(--m-pale);
		min-width: 560px !important;
		padding: 14px 0 !important;
	}

	.site-nav .nav-mega > .wp-block-navigation__submenu-container > li {
		display: block;
		break-inside: avoid;
		background: transparent !important;
	}

	.site-nav .nav-mega > .wp-block-navigation__submenu-container > li > .wp-block-navigation-item__content {
		background: transparent !important;
	}

	.site-nav .nav-mega .nav-label.nav-col-2 {
		break-before: column;
	}
}

@media (min-width: 1000px) {
	/* Three groups side by side: by threat, by industry, by role */
	.site-nav .nav-mega > .wp-block-navigation__submenu-container {
		columns: 3;
		min-width: 820px !important;
		left: 50% !important;
		transform: translateX(-50%);
	}

	.site-nav .nav-mega .nav-label.nav-col-3 {
		break-before: column;
	}

	.site-nav .nav-mega .nav-label > .wp-block-navigation-item__content {
		padding-top: 4px !important;
		padding-bottom: 10px !important;
	}
}

/* Mobile menu: everything reads left to right */
.site-nav .is-menu-open .wp-block-navigation__responsive-container-content,
.site-nav .is-menu-open .wp-block-navigation__container,
.site-nav .is-menu-open .wp-block-navigation-item,
.site-nav .is-menu-open .wp-block-navigation__submenu-container {
	align-items: flex-start !important;
	text-align: left !important;
}

.site-nav .is-menu-open .nav-label {
	margin-top: 10px;
}

.site-nav .nav-cta-mobile {
	display: none;
}

.site-nav .wp-block-navigation__responsive-container.is-menu-open .nav-cta-mobile {
	display: block;
	margin-top: 16px;
	font-weight: 600;
}

.site-header__cta .wp-block-button__link {
	padding: 10px 16px;
	font-size: 14px;
}

@media (max-width: 900px) {
	.site-header .site-header__cta {
		display: none !important;
	}
}

.site-nav .wp-block-navigation__responsive-container.is-menu-open {
	--navigation-layout-justification-setting: flex-start;
	--navigation-layout-align: flex-start;
	padding: 24px clamp(16px, 4vw, 40px);
	background: #fff !important;
	color: var(--m-navy) !important;
}

.site-nav .is-menu-open .wp-block-navigation-submenu > .wp-block-navigation-item__content {
	font-family: var(--m-mono);
	font-size: 12px;
	font-weight: 400;
	color: var(--m-gray);
}

.site-nav .is-menu-open .wp-block-navigation__container {
	gap: 20px;
}

.site-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	border: 0 !important;
	padding: 4px 0 12px 12px !important;
	min-width: 0 !important;
}

/* ---------- Type styles (block styles) ---------- */

.is-style-eyebrow {
	font-family: var(--m-mono);
	font-weight: 500;
	font-size: 13px;
	line-height: 1.4;
	color: var(--m-coral-text);
}

.is-style-label {
	font-family: var(--m-mono);
	font-weight: 400;
	font-size: 12px;
	line-height: 1.4;
	color: var(--m-gray);
}

.is-style-source {
	font-family: var(--m-mono);
	font-size: 12px;
	line-height: 1.5;
	color: var(--m-gray);
}

.is-style-source a {
	color: var(--m-gray);
}

.is-style-stat {
	font-family: var(--m-mono);
	font-weight: 400;
	font-size: clamp(44px, 6vw, 64px);
	line-height: 1;
	letter-spacing: -0.02em;
	color: var(--m-navy);
}

.is-style-statement {
	font-size: clamp(26px, 3.2vw, 36px);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--m-navy);
}

.is-style-statement::after {
	content: "";
	display: block;
	width: 72px;
	height: 4px;
	margin-top: 20px;
	background: var(--m-coral);
}

.is-style-lead {
	font-size: clamp(18px, 1.6vw, 20px);
	line-height: 1.55;
	color: var(--m-navy-80);
	max-width: 36em;
}

.is-style-plain {
	list-style: none;
	padding-left: 0;
}

/* ---------- Boxes ---------- */

.is-style-callout {
	background: var(--m-paper);
	border-left: 4px solid var(--m-coral);
	padding: 28px 32px;
}

.is-style-callout > * + * {
	margin-top: 14px;
}

.is-style-card {
	background: #fff;
	border: 1px solid var(--m-pale);
	border-top: 3px solid var(--m-navy);
	padding: 24px 24px 22px;
	height: 100%;
}

.is-style-card > :first-child {
	margin-top: 0;
}

.is-style-card h3 {
	margin-top: 10px;
}

.is-style-card h3 a {
	text-decoration: none;
}

.is-style-card h3 a:hover {
	text-decoration: underline;
	text-decoration-color: var(--m-coral);
}

/* ---------- Sections ---------- */

.mimoto-section {
	padding-block: var(--m-section);
}

.mimoto-section--rule {
	border-top: 1px solid var(--m-pale);
}

.mimoto-section--paper {
	background: var(--m-paper);
	border-top: 1px solid var(--m-pale);
	border-bottom: 1px solid var(--m-pale);
}

.mimoto-section--paper + .mimoto-section--rule {
	border-top: 0;
}

.mimoto-section .wp-block-column h2 {
	max-width: 22em;
}

.mimoto-split {
	gap: clamp(32px, 6vw, 88px) !important;
}

.mimoto-intro {
	margin-bottom: 40px;
}

.mimoto-intro > *,
.mimoto-narrow > * {
	max-width: 720px;
}

.mimoto-narrow {
	margin-top: 56px;
}

/* ---------- Hero ---------- */

.mimoto-hero {
	padding-block: clamp(48px, 7vw, 96px) clamp(56px, 7vw, 88px);
	overflow-x: clip;
}

.mimoto-hero__cols {
	gap: clamp(32px, 5vw, 72px) !important;
}

.mimoto-hero__title {
	max-width: 9.9em; /* one question per line on wide screens */
	margin-top: 16px;
	letter-spacing: -0.025em;
	line-height: 1.06;
}

.mimoto-hero__actions {
	margin-top: 32px;
	gap: 12px;
}

/* The Capability Triad (Brand Book 2.06) */
.mimoto-triad {
	margin-top: clamp(48px, 6vw, 72px) !important;
	gap: 24px !important;
}

.mimoto-triad__item {
	border-top: 5px solid var(--m-coral);
	padding-top: 14px;
}

.mimoto-triad__word {
	margin: 0;
	font-weight: 700;
	font-size: clamp(20px, 2vw, 24px);
	line-height: 1.2;
	color: var(--m-navy);
}

.mimoto-triad__line {
	margin-top: 6px !important;
	font-size: 15px;
	line-height: 1.45;
	color: var(--m-navy-80);
}

@media (max-width: 781px) {
	.mimoto-triad {
		flex-wrap: nowrap !important;
		flex-direction: column;
	}
}

/* ---------- Diagrams (Brand Book 2.08) ---------- */

.mimoto-diagram {
	margin-top: clamp(40px, 5vw, 64px);
	background: var(--m-paper);
	border: 1px solid var(--m-pale);
	padding: 24px clamp(18px, 3vw, 32px) 28px;
}

.mimoto-diagram > .is-style-label {
	margin: 0 0 18px;
}

.mimoto-diagram__caption {
	margin-top: 18px !important;
	font-family: var(--m-mono);
	font-size: 12px;
	color: var(--m-gray);
}

.mimoto-flow.mimoto-flow {
	display: grid;
	gap: 40px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mimoto-flow.mimoto-flow--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mimoto-flow.mimoto-flow > * {
	margin-block: 0;
}

.mimoto-flow__box {
	position: relative;
	background: #fff;
	border: 2px solid var(--m-navy);
	padding: 16px 18px 18px;
}

.mimoto-flow__box > * {
	margin-block: 0;
}

.mimoto-flow__box > * + * {
	margin-top: 8px;
}

.mimoto-flow__box p {
	font-size: 15px;
	line-height: 1.45;
}

.mimoto-flow__label.mimoto-flow__label {
	font-family: var(--m-mono);
	font-size: 12px;
	color: var(--m-gray);
}

.mimoto-flow__box.is-solid {
	background: var(--m-navy);
	color: #F2F7FF;
}

.mimoto-flow__box.is-solid .mimoto-flow__label {
	color: var(--m-blue);
}

.mimoto-flow__box.is-response {
	border-left: 6px solid var(--m-coral);
}

.mimoto-flow__box.is-response .mimoto-flow__label {
	color: var(--m-coral-text);
}

/* Thin Navy connector with a small open arrowhead */
.mimoto-flow > .mimoto-flow__box:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -34px;
	width: 26px;
	height: 12px;
	transform: translateY(-50%);
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 12'%3E%3Cpath d='M0 6h24M19 1l5 5-5 5' fill='none' stroke='%23170D7D' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat center / contain;
}

@media (max-width: 860px) {
	.mimoto-flow.mimoto-flow,
	.mimoto-flow.mimoto-flow--4 {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.mimoto-flow > .mimoto-flow__box:not(:last-child)::after {
		top: auto;
		bottom: -24px;
		right: auto;
		left: 50%;
		transform: translateX(-50%) rotate(90deg);
	}
}

/* ---------- What Mimoto catches ---------- */

.mimoto-threats {
	margin-top: 28px;
	border-bottom: 1px solid var(--m-pale);
}

.mimoto-threats li {
	padding: 14px 0;
	border-top: 1px solid var(--m-pale);
	line-height: 1.5;
}

.mimoto-threats li a {
	text-decoration: none;
}

.mimoto-threats li a:hover strong {
	text-decoration: underline;
	text-decoration-color: var(--m-coral);
}

.mimoto-industries {
	margin-top: 24px;
	font-size: 15px;
	color: var(--m-navy-80);
}

/* ---------- Demo video slot ---------- */

.mimoto-video-slot {
	aspect-ratio: 16 / 9;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	background: #fff;
	border: 2px solid var(--m-navy);
	padding: 24px;
	position: relative;
}

.mimoto-video-slot::before {
	content: "";
	width: 56px;
	height: 56px;
	margin-bottom: 14px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 56'%3E%3Crect x='1' y='1' width='54' height='54' fill='none' stroke='%23170D7D' stroke-width='2'/%3E%3Cpath d='M22 17l18 11-18 11z' fill='%23170D7D'/%3E%3C/svg%3E") no-repeat center / contain;
}

.mimoto-video-slot p {
	max-width: 30em;
	margin: 6px 0 0;
	font-size: 15px;
}

/* ---------- Proof (placeholders) ---------- */

.mimoto-logos {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 16px;
	margin-top: 32px;
}

.mimoto-logos.mimoto-logos > * {
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 72px;
	border: 1px solid var(--m-pale);
	font-family: var(--m-mono);
	font-size: 12px;
	color: var(--m-gray);
}

@media (max-width: 781px) {
	.mimoto-logos {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.mimoto-quotes {
	margin-top: 24px !important;
}

.mimoto-quote {
	font-size: 19px;
	line-height: 1.5;
}

/* ---------- How it works ---------- */

.mimoto-steps li {
	padding: 14px 0;
	border-top: 1px solid var(--m-pale);
}

.mimoto-steps li:last-child {
	border-bottom: 1px solid var(--m-pale);
}

.mimoto-section .mimoto-split {
	margin-top: 48px;
}

.mimoto-section > .mimoto-split:first-child {
	margin-top: 0;
}

/* ---------- Products and tiles ---------- */

.mimoto-cards {
	margin-top: 32px !important;
	gap: 24px !important;
}

.mimoto-tiles {
	gap: 20px !important;
}

.mimoto-tile__title {
	font-size: 19px !important;
	line-height: 1.3;
}

.mimoto-tile__by {
	font-size: 14px;
	color: var(--m-navy-80);
	margin-top: 6px !important;
}

.mimoto-tile__links {
	margin-top: 16px !important;
	font-size: 14px;
}

.mimoto-open .is-style-card {
	display: flex;
	flex-direction: column;
}

.mimoto-open .mimoto-tile__links {
	margin-top: auto !important;
	padding-top: 16px;
}

.mimoto-open__more {
	margin-top: 32px !important;
	font-weight: 600;
}

@media (min-width: 782px) and (max-width: 1100px) {
	.mimoto-tiles {
		flex-wrap: wrap !important;
	}

	.mimoto-tiles > .wp-block-column {
		flex-basis: calc(50% - 10px) !important;
	}
}

/* ---------- FAQ ---------- */

.mimoto-faq .wp-block-details {
	border-top: 1px solid var(--m-pale);
	padding: 18px 0;
	margin: 0;
}

.mimoto-faq .wp-block-details:last-child {
	border-bottom: 1px solid var(--m-pale);
}

.mimoto-faq summary {
	cursor: pointer;
	font-weight: 600;
	font-size: 19px;
	line-height: 1.35;
	list-style: none;
	position: relative;
	padding-right: 40px;
}

.mimoto-faq summary::-webkit-details-marker {
	display: none;
}

.mimoto-faq summary::after {
	content: "+";
	position: absolute;
	right: 4px;
	top: -2px;
	font-family: var(--m-mono);
	font-weight: 400;
	font-size: 24px;
	color: var(--m-navy);
}

.mimoto-faq details[open] summary::after {
	content: "\2212";
}

.mimoto-faq details > p {
	margin-top: 10px;
	color: var(--m-navy-80);
}

.mimoto-faq h2 {
	margin-bottom: 28px;
}

.mimoto-faq__list > * {
	max-width: 880px;
}

/* ---------- Closing action ---------- */

.mimoto-cta {
	padding-block: 0 clamp(72px, 9vw, 120px);
	border-top: 1px solid var(--m-pale);
}

.mimoto-cta > .wp-block-buttons {
	margin-top: 28px;
}

/* ---------- Pages and posts ---------- */

.mimoto-page {
	padding-block: clamp(40px, 6vw, 80px) clamp(64px, 8vw, 112px);
}

.mimoto-page__title {
	margin-bottom: 24px;
}

.mimoto-post-meta {
	font-family: var(--m-mono);
	font-size: 12px;
	color: var(--m-gray);
	gap: 16px;
}

.mimoto-post-meta a {
	color: var(--m-coral-text);
	text-decoration: none;
}

.mimoto-post-byline {
	font-weight: 600;
	margin-bottom: 32px;
}

.mimoto-post-grid .wp-block-post-title {
	font-size: 20px;
	margin-top: 8px;
}

.mimoto-post-grid .wp-block-post-title a {
	text-decoration: none;
}

.wp-block-search__input {
	border: 2px solid var(--m-navy);
	border-radius: 0;
	padding: 10px 12px;
	font: inherit;
}

/* ---------- Footer ---------- */

.site-footer {
	background: var(--m-paper);
	border-top: 1px solid var(--m-pale);
	padding-block: 64px 32px;
	font-size: 15px;
}

.site-footer__cols {
	gap: 32px !important;
}

.site-footer__line {
	margin-top: 20px !important;
	max-width: 18em;
	color: var(--m-navy-80);
}

.site-footer .is-style-label {
	margin-bottom: 12px;
}

.site-footer .is-style-plain li {
	margin: 0 0 10px;
	line-height: 1.4;
}

.site-footer .is-style-plain a {
	text-decoration: none;
}

.site-footer .is-style-plain a:hover {
	text-decoration: underline;
	text-decoration-color: var(--m-coral);
}

.site-footer__base {
	margin-top: 48px;
	padding-top: 20px;
	border-top: 1px solid var(--m-pale);
	font-family: var(--m-mono);
	font-size: 12px;
	color: var(--m-gray);
}

.site-footer__base p {
	margin: 0;
}

.site-footer__base a {
	color: var(--m-gray);
}

@media (min-width: 782px) and (max-width: 1100px) {
	.site-footer__cols {
		flex-wrap: wrap !important;
	}

	.site-footer__cols > .wp-block-column {
		flex-basis: calc(33% - 22px) !important;
		flex-grow: 0;
	}

	.site-footer__cols > .site-footer__brand {
		flex-basis: 100% !important;
	}
}

/* ---------- Full architecture diagram (replaces the old engine diagram) ---------- */

.mimoto-flow__box.is-flag {
	border-left: 6px solid var(--m-coral);
}

.mimoto-flow__box.is-flag .mimoto-flow__label {
	color: var(--m-coral-text);
}

/* Live signal path and its plain-English walk-through */
.mimoto-decide-wrap {
	margin-top: 40px;
}

.mimoto-decide-wrap > .is-style-label {
	margin-bottom: 28px;
}

.mimoto-walk {
	margin-top: 48px !important;
	gap: 28px !important;
}

.mimoto-walk > .wp-block-column {
	border-top: 2px solid var(--m-navy);
	padding-top: 12px;
}

.mimoto-walk p {
	font-size: 15px;
	line-height: 1.5;
}

.mimoto-walk .mimoto-walk__label {
	margin: 0 0 6px;
	font-family: var(--m-mono);
	font-size: 12px;
	font-weight: 500;
}

/* ---------- Product screenshot, no device frame ---------- */

.mimoto-shot {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: var(--m-paper);
	border: 1px solid var(--m-pale);
	padding: clamp(20px, 3vw, 40px) 0 0 clamp(20px, 3vw, 40px);
}

.mimoto-shot.mimoto-shot > * {
	margin: 0;
}

.mimoto-shot img {
	display: block;
	width: 118%;
	max-width: none;
	height: auto;
	border: 1px solid var(--m-pale);
}

.mimoto-shot__caption {
	margin-top: 12px !important;
	font-family: var(--m-mono);
	font-size: 12px;
	line-height: 1.5;
	color: var(--m-gray);
}

.mimoto-section > .mimoto-shot {
	margin-top: 40px;
}

.mimoto-stack-gap {
	margin-top: 24px !important;
}

.mimoto-hero--page {
	padding-block: clamp(40px, 6vw, 80px) clamp(48px, 6vw, 72px);
}

.mimoto-hero--page h1 {
	margin-top: 12px;
}

/* ---------- Full site: shared page components ---------- */

.mimoto-intro--hero {
	margin-bottom: 0;
}

.mimoto-intro--hero > * {
	max-width: 780px;
}

.mimoto-subtitle {
	font-size: clamp(18px, 1.6vw, 21px);
	line-height: 1.45;
	color: var(--m-navy-80);
	max-width: 34em;
}

.mimoto-byline {
	font-weight: 600;
}

.mimoto-meta {
	font-size: 14px;
	line-height: 1.5;
	color: var(--m-navy-80);
}

.mimoto-more {
	margin-top: 28px !important;
	font-weight: 600;
}

/* Card grids: 2, 3, or 4 across, stepping down on smaller screens */
.mimoto-grid.mimoto-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mimoto-grid.mimoto-grid > * {
	margin-block: 0;
}

.mimoto-grid--3.mimoto-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mimoto-grid--4.mimoto-grid--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1000px) {
	.mimoto-grid--3.mimoto-grid--3,
	.mimoto-grid--4.mimoto-grid--4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.mimoto-grid.mimoto-grid,
	.mimoto-grid--3.mimoto-grid--3,
	.mimoto-grid--4.mimoto-grid--4 {
		grid-template-columns: 1fr;
	}
}

.mimoto-grid .is-style-card {
	display: flex;
	flex-direction: column;
}

.is-style-card .mimoto-card__title,
.is-style-card h3.mimoto-card__title {
	font-size: 20px;
	line-height: 1.3;
}

.is-style-card > p {
	font-size: 16px;
	line-height: 1.5;
}

.is-style-card > .mimoto-card__link {
	margin-top: auto !important;
	padding-top: 14px;
	font-size: 15px;
	font-weight: 600;
}

/* Narrow lines in a section sit on the content's left edge, not centered */
.mimoto-section > p:not(.has-text-align-center),
.mimoto-section > .mimoto-ph {
	max-width: 760px;
	margin-left: max(0px, calc((100% - 1200px) / 2)) !important;
	margin-right: auto !important;
}

.mimoto-section > .mimoto-grid + p,
.mimoto-section > .mimoto-diagram + p,
.mimoto-section > .mimoto-intro + .mimoto-ph {
	margin-top: 28px;
}

/* Today versus with Mimoto */
.mimoto-compare__list li {
	padding: 10px 0;
	border-top: 1px solid var(--m-pale);
	line-height: 1.5;
}

.mimoto-compare__mimoto.mimoto-compare__mimoto {
	border-top-color: var(--m-coral);
}

/* Short checklists */
.mimoto-checks li {
	position: relative;
	padding: 10px 0 10px 24px;
	border-top: 1px solid var(--m-pale);
	line-height: 1.5;
}

.mimoto-checks li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: 1.05em;
	width: 8px;
	height: 8px;
	background: var(--m-navy);
}

.is-style-callout .mimoto-checks li:first-child {
	border-top: 0;
}

.mimoto-glance li {
	padding: 6px 0;
	line-height: 1.5;
}

/* Audio and author video slots on white paper pages */
.mimoto-media {
	gap: 32px !important;
}

.mimoto-media h2 {
	margin-bottom: 18px;
}

/* Things to add before launch. Easy to spot, easy to delete. */
.mimoto-ph {
	font-family: var(--m-mono);
	font-size: 13px;
	line-height: 1.5;
	color: var(--m-navy);
	background: #fff;
	border: 1px dashed var(--m-navy);
	padding: 10px 14px;
	max-width: 760px;
}

/* Where a form plugin's block or a booking embed goes */
.mimoto-form-slot {
	background: #fff;
	border: 2px dashed var(--m-navy);
	padding: 24px;
}

.mimoto-form-slot__fields {
	list-style: none;
	padding: 0;
	margin: 14px 0 0;
}

.mimoto-form-slot__fields li {
	border: 1px solid var(--m-pale);
	padding: 10px 12px;
	margin: 0 0 8px;
	color: var(--m-gray);
	font-size: 15px;
}

.mimoto-form-slot__note {
	font-family: var(--m-mono);
	font-size: 12px;
	color: var(--m-gray);
}

/* Glossary */
.mimoto-glossary__term {
	border-top: 1px solid var(--m-pale);
	padding-top: 16px;
}

.mimoto-glossary__term h3 {
	font-size: 20px;
	margin: 0;
	scroll-margin-top: 110px;
}

.mimoto-glossary__term p {
	margin-top: 8px;
	line-height: 1.55;
}

.mimoto-glossary.mimoto-glossary {
	gap: 28px 48px;
}

/* Leadership */
.mimoto-team.mimoto-team {
	gap: 48px 32px;
}

/* Headshots: a circle, framed by the two coral arcs from the booth wall */
.mimoto-team__photo.wp-block-image {
	position: relative;
	width: 176px;
	height: 176px;
	margin: 0;
	display: grid;
	place-items: center;
}

.mimoto-team__photo.wp-block-image img {
	width: 140px !important;
	height: 140px;
	object-fit: cover;
	border-radius: 50%;
	display: block;
}

.mimoto-team__photo::before,
.mimoto-team__photo::after {
	content: "";
	position: absolute;
	inset: 0;
	border: 8px solid var(--m-coral);
	border-radius: 50%;
	pointer-events: none;
	transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1);
}

/* Two arcs: upper right (about 12 to 3 o'clock) and lower left (about 6 to 8 o'clock) */
.mimoto-team__photo::before {
	-webkit-mask: conic-gradient(#000 0deg 83deg, transparent 83deg 353deg, #000 353deg 360deg);
	mask: conic-gradient(#000 0deg 83deg, transparent 83deg 353deg, #000 353deg 360deg);
}

.mimoto-team__photo::after {
	-webkit-mask: conic-gradient(transparent 0deg 173deg, #000 173deg 245deg, transparent 245deg 360deg);
	mask: conic-gradient(transparent 0deg 173deg, #000 173deg 245deg, transparent 245deg 360deg);
}

/* Hover a headshot and the two arcs open slightly, each moving out along its own diagonal */
@media (hover: hover) {
	.mimoto-team__photo:hover::before {
		transform: translate(4px, -5px);
	}

	.mimoto-team__photo:hover::after {
		transform: translate(-3px, 5px);
	}
}

@media (prefers-reduced-motion: reduce) {
	.mimoto-team__photo::before,
	.mimoto-team__photo::after {
		transition: none;
	}
}

/* The larger headshot that opens Kris's features */
.mimoto-team__photo--lead.wp-block-image {
	width: 216px;
	height: 216px;
	margin-bottom: 24px;
}

.mimoto-team__photo--lead.wp-block-image img {
	width: 172px !important;
	height: 172px;
}

.mimoto-team__photo--lead::before,
.mimoto-team__photo--lead::after {
	border-width: 10px;
}

.mimoto-team__person h3 {
	margin-top: 18px;
	font-size: 22px;
}

.mimoto-team__person .is-style-label {
	margin-top: 4px;
}

.mimoto-writing li {
	padding: 12px 0;
	border-top: 1px solid var(--m-pale);
	line-height: 1.5;
}

/* user_name is not a Person */
.mimoto-equation {
	font-family: var(--m-mono);
	font-size: clamp(34px, 5vw, 60px);
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--m-navy);
}

.mimoto-ne {
	color: var(--m-coral-large);
}

/* Titles: each sentence starts its own line, and wrapped lines stay even */
h1,
h2,
h3,
.is-style-statement {
	text-wrap: balance;
}

/* Home: the fortress behind a chain-link fence (flat silhouette, London graphic style) */
.mimoto-stakes .is-style-callout {
	margin-top: 32px;
}

.mimoto-fortress.wp-block-image {
	margin: 0;
}

.mimoto-fortress img {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid var(--m-pale);
}

.mimoto-fortress figcaption.wp-element-caption {
	margin: 16px 0 0;
	font-family: var(--wp--preset--font-family--inter, Inter, Helvetica, Arial, sans-serif);
	letter-spacing: 0;
	text-transform: none;
	font-size: 17px;
	line-height: 1.5;
	text-align: left;
	color: var(--m-navy-80);
}

/* ---------- Icon lists, icon cards (privacy and elsewhere) ---------- */

.mimoto-iconlist li {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 60px;
	padding: 10px 0 10px 58px !important;
}

.mimoto-iconlist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	box-sizing: border-box;
	border: 2px solid var(--m-navy);
	background: #fff no-repeat center / 24px 24px;
}

.mimoto-compare__mimoto .mimoto-iconlist li::before {
	border-color: var(--m-pale);
}

.mimoto-compare__mimoto .mimoto-iconlist li::after {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M5 35L35 5' stroke='%23FF662E' stroke-width='3'/%3E%3C/svg%3E") no-repeat center / 40px 40px;
}

.mimoto-icard::before {
	content: "";
	display: block;
	width: 52px;
	height: 52px;
	margin-bottom: 18px;
	box-sizing: border-box;
	border: 2px solid var(--m-navy);
	background: #fff no-repeat center / 30px 30px;
}

.ic-typing::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23170D7D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='6.5' width='19' height='11'/%3E%3Cpath d='M6 10h.01M9.5 10h.01M13 10h.01M16.5 10h.01M6 13.5h.01M16.5 13.5h.01M9 13.5h4.5'/%3E%3C/svg%3E") !important;
}

.ic-timing::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23170D7D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='13.5' r='7.5'/%3E%3Cpath d='M12 13.5V9.5M10 3h4M12 3v3'/%3E%3C/svg%3E") !important;
}

.ic-hold::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23170D7D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='12' width='14' height='9'/%3E%3Cpath d='M12 2.5v6.5M9 6.5l3 3l3-3'/%3E%3C/svg%3E") !important;
}

.ic-mouse::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23170D7D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 3.5l6 16.5l2.4-7l7.1-2.5z'/%3E%3C/svg%3E") !important;
}

.ic-habits::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23170D7D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 16c2.5-6 4.5-9 6-9s1 6 2.5 6s2-4 3.5-4s1.5 3 3 3h3'/%3E%3Cpath d='M3 20.5h18'/%3E%3C/svg%3E") !important;
}

.ic-context::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23170D7D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='8'/%3E%3Cpath d='M3 21.5h18M8.2 6.6a5.5 5.5 0 0 1 7.6 0M10.3 8.7a2.5 2.5 0 0 1 3.4 0'/%3E%3C/svg%3E") !important;
}

.ic-eyeoff::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23170D7D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-6.5 10-6.5S22 12 22 12s-3.6 6.5-10 6.5S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M4 20L20 4'/%3E%3C/svg%3E") !important;
}

.ic-globe::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23170D7D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c2.5 2.6 3.8 5.6 3.8 9s-1.3 6.4-3.8 9c-2.5-2.6-3.8-5.6-3.8-9S9.5 5.6 12 3z'/%3E%3C/svg%3E") !important;
}

.ic-empty::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23170D7D' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='9' width='18' height='12'/%3E%3Cpath d='M3 9l3-5h12l3 5M9.5 13h5'/%3E%3C/svg%3E") !important;
}

.ic-words::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23555869' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 19L7.5 5l5 14M4.3 14h6.4'/%3E%3Ccircle cx='17.5' cy='15.5' r='3.2'/%3E%3Cpath d='M20.7 12v7'/%3E%3C/svg%3E") !important;
}

.ic-textfile::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23555869' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h9l4 4v14H6z'/%3E%3Cpath d='M15 3v4h4M9 11h7M9 14.5h7M9 18h5'/%3E%3C/svg%3E") !important;
}

.ic-screen::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23555869' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='13'/%3E%3Cpath d='M9 21h6M12 17v4'/%3E%3C/svg%3E") !important;
}

.ic-place::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23555869' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6.5-6.2-6.5-11a6.5 6.5 0 0 1 13 0c0 4.8-6.5 11-6.5 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E") !important;
}

/* ---------- Schedule a Conversation: the one coral button ---------- */
/* 0.10.42 (Ian): white text on coral; on hover, navy with white text (on navy bands, white with navy
   text, so the button does not disappear). Navy text on coral was about 5 to 1 contrast; white on
   coral is about 2.9 to 1. */
.wp-block-button__link[href*="contact"],
.wp-block-button.is-style-outline > .wp-block-button__link[href*="contact"] {
	background: var(--m-coral) !important;
	border: 2px solid var(--m-coral) !important;
	color: #fff !important;
}

.wp-block-button__link[href*="contact"]:hover,
.wp-block-button__link[href*="contact"]:focus-visible {
	background: var(--m-navy) !important;
	border-color: var(--m-navy) !important;
	color: #fff !important;
}

/* A second block inside the same section, without a second full section gap */
.mimoto-subsection {
	margin-top: clamp(56px, 6vw, 80px) !important;
}

.mimoto-subsection > h2 {
	margin-bottom: 28px;
}

.mimoto-section > .mimoto-pv + .mimoto-compare {
	margin-top: 44px !important;
}

/* ---------- Numbered steps: each number in a coral circle ---------- */
.mimoto-numbered {
	list-style: none;
	counter-reset: mimoto-step;
	margin: 0;
	padding: 0;
}

.mimoto-numbered > li {
	counter-increment: mimoto-step;
	position: relative;
	min-height: 44px;
	padding: 18px 0 18px 64px;
	border-top: 1px solid var(--m-pale);
	line-height: 1.5;
}

.mimoto-numbered > li:last-child {
	border-bottom: 1px solid var(--m-pale);
}

.mimoto-numbered > li::before {
	content: counter(mimoto-step);
	position: absolute;
	left: 0;
	top: 15px;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--m-coral);
	color: var(--m-navy);
	font-family: var(--m-mono);
	font-size: 18px;
	font-weight: 500;
	line-height: 42px;
	text-align: center;
}

.mimoto-section > .mimoto-split + .mimoto-diagram {
	margin-top: clamp(48px, 6vw, 72px);
}

/* Hero silhouettes on the threat, industry, and role pages */
.mimoto-hero-art.wp-block-image {
	margin: 0;
}

.mimoto-hero-art img {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid var(--m-pale);
}

/* ------------------------------------------------------------ 0.4.8 */

/* Meet the Team: where each person built before Mimoto */
.mimoto-team__past {
	margin-top: 10px;
	font-size: 15px;
	line-height: 1.5;
	color: var(--m-gray);
}

.mimoto-team__past strong {
	color: var(--m-navy);
	font-weight: 600;
}

/* Recent thoughts and features: one line per piece, kind chip first */
.mimoto-features.mimoto-features {
	list-style: none;
	padding: 0;
	margin: 0;
}

.mimoto-features li {
	display: grid;
	grid-template-columns: 92px 1fr;
	column-gap: 18px;
	align-items: baseline;
	padding: 16px 0;
	border-top: 1px solid var(--m-pale);
	line-height: 1.45;
}

.mimoto-features li:last-child {
	border-bottom: 1px solid var(--m-pale);
}

.mimoto-kind {
	grid-row: span 2;
	justify-self: start;
	font-family: var(--m-mono);
	font-size: 11px;
	color: var(--m-navy);
	background: var(--m-pale);
	padding: 4px 8px;
}

.mimoto-features a {
	font-weight: 600;
	color: var(--m-navy);
	text-decoration: none;
}

.mimoto-features a:hover,
.mimoto-features a:focus-visible {
	text-decoration: underline;
}

.mimoto-where {
	grid-column: 2;
	display: block;
	margin-top: 4px;
	font-size: 14px;
	color: var(--m-gray);
}

/* News: date, source, title, one line */
.mimoto-news.mimoto-news {
	margin-top: 8px;
}

.mimoto-news__item.mimoto-news__item {
	display: grid;
	grid-template-columns: 240px 1fr;
	column-gap: 40px;
	padding: 28px 0;
	border-top: 1px solid var(--m-pale);
}

.mimoto-news__item:last-child {
	border-bottom: 1px solid var(--m-pale);
}

.mimoto-news__item > * {
	margin: 0;
}

.mimoto-news__meta.mimoto-news__meta {
	grid-row: span 2;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.mimoto-news__date {
	font-family: var(--m-mono);
	font-size: 13px;
	letter-spacing: 0.04em;
	color: var(--m-gray);
}

.mimoto-news__source {
	font-weight: 700;
	color: var(--m-navy);
}

.mimoto-news__title.mimoto-news__title {
	margin: 0;
	font-size: clamp(20px, 2vw, 24px);
	line-height: 1.3;
}

.mimoto-news__title a {
	color: var(--m-navy);
	text-decoration: none;
}

.mimoto-news__title a::after {
	content: "";
	display: inline-block;
	width: 0.7em;
	height: 0.7em;
	margin-left: 8px;
	background: var(--m-coral);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M6 2h8v8M14 2L4 12M2 6v8h8' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M6 2h8v8M14 2L4 12M2 6v8h8' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat;
}

.mimoto-news__title a:hover,
.mimoto-news__title a:focus-visible {
	text-decoration: underline;
}

.mimoto-news__line.mimoto-news__line {
	margin-top: 8px;
	color: var(--m-gray);
}

@media (max-width: 781px) {
	.mimoto-news__item.mimoto-news__item {
		grid-template-columns: 1fr;
		row-gap: 8px;
	}
	.mimoto-news__meta.mimoto-news__meta {
		grid-row: auto;
		flex-direction: row;
		gap: 12px;
		align-items: baseline;
	}
}

/* White paper offer: a drawn cover beside what is inside */
.mimoto-offer.mimoto-offer {
	gap: clamp(32px, 5vw, 72px);
}

.mimoto-cover.mimoto-cover {
	position: relative;
	aspect-ratio: 3 / 4;
	max-width: 340px;
	margin: 0 auto;
	padding: 36px 32px;
	background: var(--m-navy);
	color: #fff;
	display: flex;
	flex-direction: column;
	box-shadow: 14px 14px 0 var(--m-pale);
}

.mimoto-cover::before,
.mimoto-cover::after {
	content: "";
	position: absolute;
	width: 72px;
	height: 72px;
	border: 6px solid var(--m-coral);
}

.mimoto-cover::before {
	top: -10px;
	right: -10px;
	border-left: 0;
	border-bottom: 0;
}

.mimoto-cover::after {
	bottom: -10px;
	left: -10px;
	border-right: 0;
	border-top: 0;
}

.mimoto-cover > * {
	margin: 0;
}

.mimoto-cover__kicker.mimoto-cover__kicker {
	font-family: var(--m-mono);
	font-size: 12px;
	color: var(--m-blue);
}

.mimoto-cover__title.mimoto-cover__title {
	margin-top: auto;
	font-size: clamp(26px, 2.6vw, 34px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: #fff;
}

.mimoto-cover__by.mimoto-cover__by {
	margin-top: 20px;
	padding-top: 14px;
	border-top: 2px solid var(--m-coral);
	font-size: 14px;
	color: #fff;
}

.mimoto-offer__note {
	font-size: 15px;
	color: var(--m-gray);
}

@media (max-width: 781px) {
	.mimoto-cover.mimoto-cover {
		max-width: 260px;
		padding: 28px 24px;
	}
}

/* Contact: keep a frame around the form and the calendar */
.mimoto-panel.mimoto-panel {
	height: 100%;
	background: #fff;
	border: 1px solid var(--m-navy);
	padding: clamp(24px, 3vw, 40px);
}

.mimoto-panel > h2:first-child {
	margin-top: 0;
}

.mimoto-panel .mimoto-form-slot {
	margin-top: 24px;
}

/* A tighter section rhythm, for pages built around one task (Contact) */
.mimoto-section.mimoto-section--tight {
	padding-block: clamp(48px, 6vw, 80px);
}

.mimoto-split > .wp-block-column > .mimoto-panel:only-child {
	height: 100%;
}

.mimoto-section--tight .mimoto-split {
	align-items: stretch !important;
}

/* Legal pages: comfortable reading width and quiet headings for pasted text */
.mimoto-legal {
	font-size: 17px;
	line-height: 1.65;
}

.mimoto-legal h2 {
	margin-top: 48px;
	font-size: clamp(24px, 2.4vw, 30px);
}

.mimoto-legal h3 {
	margin-top: 32px;
	font-size: 20px;
}

.mimoto-legal h4,
.mimoto-legal h5 {
	margin-top: 24px;
	font-size: 17px;
}

.mimoto-legal ul,
.mimoto-legal ol {
	padding-left: 1.4em;
}

.mimoto-legal li + li {
	margin-top: 6px;
}

.mimoto-legal table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
}

.mimoto-legal th,
.mimoto-legal td {
	border: 1px solid var(--m-pale);
	padding: 8px 10px;
	text-align: left;
	vertical-align: top;
}

/* Policies list: the arrow marks only the links that leave the site */
.mimoto-policies .mimoto-news__item:not(.is-external) .mimoto-news__title a::after {
	display: none;
}

/* Event landing pages: when, where, and where to find the stand */
.mimoto-event-facts.mimoto-event-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
	align-items: end;
	gap: 24px 40px;
}

.mimoto-event-facts__item > * {
	margin: 0;
}

.mimoto-event-facts__value.mimoto-event-facts__value {
	margin-top: 6px;
	font-size: clamp(20px, 2vw, 26px);
	font-weight: 700;
	line-height: 1.2;
	color: var(--m-navy);
}

.mimoto-event-facts__cta.mimoto-event-facts__cta {
	margin: 0;
}

.mimoto-event-facts + .mimoto-ph,
.mimoto-event-facts ~ p {
	margin-top: 28px;
}

@media (max-width: 900px) {
	.mimoto-event-facts.mimoto-event-facts {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.mimoto-event-facts__cta.mimoto-event-facts__cta {
		grid-column: 1 / -1;
	}
}

@media (max-width: 600px) {
	.mimoto-event-facts.mimoto-event-facts {
		grid-template-columns: 1fr;
	}
}

.mimoto-policies__note.mimoto-policies__note {
	margin-top: 28px;
	max-width: 760px;
	font-size: 15px;
	color: var(--m-gray);
}

/* ------------------------------------------------------------ 0.6.0 */

.mimoto-res-wrap.mimoto-res-wrap {
	scroll-margin-top: 96px;
}

.mimoto-section--tight .mimoto-res-wrap + .mimoto-ph {
	margin-top: 28px;
}

/* Video chapters: each time is a link that jumps the player */
.mimoto-chapters li,
.mimoto-moments li {
	padding: 10px 0;
	border-top: 1px solid var(--m-pale);
	line-height: 1.45;
}

.mimoto-chapters__time {
	display: inline-block;
	min-width: 64px;
	font-family: var(--m-mono);
	font-size: 14px;
	color: var(--m-coral-text);
	text-decoration: none;
	font-weight: 500;
}

.mimoto-chapters__time:hover,
.mimoto-chapters__time:focus-visible {
	text-decoration: underline;
}

.mimoto-chapters__hint {
	font-size: 14px;
	color: var(--m-gray);
}

/* Transcripts */
.mimoto-transcript.mimoto-transcript {
	margin-top: 20px;
	background: #fff;
	border: 1px solid var(--m-pale);
	padding: 18px 24px;
}

.mimoto-transcript summary {
	cursor: pointer;
	font-weight: 600;
	color: var(--m-navy);
}

.mimoto-transcript[open] summary {
	margin-bottom: 16px;
}

.mimoto-transcript p {
	max-width: 760px;
	line-height: 1.7;
}

/* A paper's full text: one closed box, so the page stays short. Search engines read it either way. */
.mimoto-fulltext.mimoto-fulltext {
	margin-top: 32px;
	background: #fff;
	border: 2px solid var(--m-navy);
}

.mimoto-fulltext > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 24px;
	cursor: pointer;
	list-style: none;
	font-size: 20px;
	font-weight: 700;
	color: var(--m-navy);
}

.mimoto-fulltext > summary::-webkit-details-marker {
	display: none;
}

.mimoto-fulltext > summary::after {
	content: "Open  +";
	white-space: pre;
	flex: none;
	font-family: var(--wp--preset--font-family--plex-mono, "IBM Plex Mono", "Courier New", monospace);
	font-size: 14px;
	font-weight: 500;
}

.mimoto-fulltext[open] > summary::after {
	content: "Close  \00D7";
}

.mimoto-fulltext > summary:hover,
.mimoto-fulltext > summary:focus-visible {
	background: var(--m-pale);
}

.mimoto-fulltext > summary:focus-visible {
	outline: 2px solid var(--m-navy);
	outline-offset: 3px;
}

.mimoto-fulltext[open] > summary {
	border-bottom: 1px solid var(--m-pale);
}

.mimoto-fulltext > .mimoto-legal {
	max-width: 760px;
	margin: 0;
	padding: 32px 24px 40px;
}

.mimoto-fulltext > .mimoto-legal > .mimoto-ph {
	margin-top: 24px;
}

@media (max-width: 600px) {
	.mimoto-fulltext > summary {
		padding: 18px;
		font-size: 18px;
	}
	.mimoto-fulltext > .mimoto-legal {
		padding: 24px 18px 32px;
	}
}

/* Customer stories */
.mimoto-story h2 {
	margin-top: 40px;
}

.mimoto-story h2:first-child {
	margin-top: 0;
}

.mimoto-quote.mimoto-quote {
	max-width: 900px;
	margin: 0 auto;
	padding: 8px 0 8px 32px;
	border-left: 6px solid var(--m-coral);
}

.mimoto-quote p {
	font-size: clamp(24px, 2.6vw, 34px);
	line-height: 1.3;
	font-weight: 600;
	color: var(--m-navy);
	letter-spacing: -0.01em;
}

.mimoto-quote cite {
	display: block;
	margin-top: 16px;
	font-style: normal;
	font-family: var(--m-mono);
	font-size: 13px;
	color: var(--m-gray);
}

/* Blog posts */
.mimoto-post.mimoto-post {
	padding-top: clamp(40px, 6vw, 80px);
	padding-bottom: clamp(48px, 6vw, 80px);
}

.mimoto-post__back {
	margin: 0;
	font-family: var(--m-mono);
	font-size: 13px;
}

.mimoto-post__back a {
	color: var(--m-coral-text);
	text-decoration: none;
}

.mimoto-post .mimoto-page__title {
	margin-top: 12px;
}

.mimoto-post__image {
	margin-top: 32px;
}

.mimoto-post .wp-block-post-content {
	margin-top: 32px;
	font-size: 18px;
	line-height: 1.7;
}

.mimoto-post .wp-block-post-content h2 {
	margin-top: 48px;
}

.mimoto-post__tags {
	margin-top: 40px;
	font-size: 14px;
	color: var(--m-gray);
}

.mimoto-author.mimoto-author {
	margin-top: 40px;
	padding: 24px;
	border: 1px solid var(--m-pale);
	border-top: 4px solid var(--m-navy);
}

.mimoto-author .wp-block-post-author__name {
	font-weight: 700;
	color: var(--m-navy);
}

.mimoto-sources li {
	font-size: 15px;
	color: var(--m-gray);
}

/* Shown only to logged-in editors on a hidden section */
.mimoto-hidden-bar {
	position: sticky;
	top: 0;
	z-index: 100;
	padding: 10px 16px;
	background: var(--m-coral);
	color: var(--m-navy);
	font-size: 14px;
	text-align: center;
}

.mimoto-hidden-bar a {
	color: var(--m-navy);
	font-weight: 700;
	margin-left: 8px;
}

.mimoto-hidden-preview {
	position: relative;
	outline: 3px dashed var(--m-coral);
	outline-offset: -3px;
}

.mimoto-hidden-preview__label {
	margin: 0;
	padding: 10px 16px;
	background: var(--m-coral);
	color: var(--m-navy);
	font-size: 14px;
	text-align: center;
}

.mimoto-hidden-preview__label a {
	color: var(--m-navy);
	font-weight: 700;
	margin-left: 8px;
}

/* Pictures on blog cards */
.is-style-card .mimoto-card-pic {
	margin: -24px -24px 18px;
}

.is-style-card .mimoto-card-pic img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: 50% 62%;
}

/* The white paper offer cover, with its art */
.mimoto-cover.mimoto-cover.has-art {
	padding: 0;
}

.mimoto-cover.has-art::before,
.mimoto-cover.has-art::after {
	content: none;
}

.mimoto-cover__art.wp-block-image {
	margin: 0;
}

.mimoto-cover__art img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	object-position: 50% 62%;
}

.mimoto-cover__text.mimoto-cover__text {
	display: flex;
	flex-direction: column;
	flex: 1;
	margin: 0;
	padding: 22px 24px 24px;
}

.mimoto-cover__text > * {
	margin: 0;
}

.mimoto-cover.has-art .mimoto-cover__title {
	margin-top: 10px;
	font-size: clamp(20px, 2vw, 26px);
}

.mimoto-cover.has-art .mimoto-cover__by {
	margin-top: auto;
}

.mimoto-cover.has-art .mimoto-cover__title {
	margin-bottom: 18px;
}

/* Text for screen readers only */
.screen-reader-text {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

/* Coral words set inside a heading with the text color tool: large, so a touch deeper */
.has-inline-color.has-coral-color {
	color: var(--m-coral-large) !important;
}

/* On Navy, the brand coral passes on its own */
.has-navy-background-color .is-style-eyebrow,
.has-navy-background-color .has-inline-color.has-coral-color {
	color: var(--m-coral) !important;
}
