:root {
	--mobi-single-navy: #031326;
	--mobi-single-navy-2: #071c36;
	--mobi-single-ink: #06162b;
	--mobi-single-copy: #33445c;
	--mobi-single-muted: #6c798b;
	--mobi-single-red: #e20d19;
	--mobi-single-line: #d8e0ea;
	--mobi-single-shell: 1240px;
}

body.single-post { margin: 0; background: #fff; color: var(--mobi-single-ink); }
body.single-post .mobisig-header { position: absolute; top: 0; left: 0; z-index: 1000; background: transparent; }
body.single-post .mobisig-header__brand { position: absolute; left: max(32px,calc((100vw - var(--mobi-single-shell))/2)); z-index: 2; min-height: 96px; padding: 0; border: 0; }
body.single-post .mobisig-header__nav-row { min-height: 96px; background: transparent; border-bottom: 1px solid rgba(255,255,255,.16); }
body.single-post .mobisig-header__nav-inner { display: flex; justify-content: flex-end; width: min(var(--mobi-single-shell),calc(100% - 64px)); }
body.single-post .mobisig-primary-menu { min-height: 96px; }
body.single-post .mobisig-primary-menu > li > a { color: #fff; }
body.single-post .mobisig-footer { background: var(--mobi-single-navy-2); }
body.single-post .mobisig-footer__legal { background: var(--mobi-single-navy); }

.mobi-single,.mobi-single * { box-sizing: border-box; }
.mobi-single { overflow: hidden; background: #fff; color: var(--mobi-single-ink); font-family: Arial,Helvetica,sans-serif; }
.mobi-single [hidden] { display: none !important; }
.mobi-single a { color: inherit; text-decoration: none; }
.mobi-single-shell { width: min(var(--mobi-single-shell),calc(100% - 64px)); margin-inline: auto; }

.mobi-single-hero { min-height: 590px; padding: 166px 0 164px; background: var(--mobi-single-navy); color: #fff; }
.mobi-single-hero__inner { max-width: var(--mobi-single-shell); }
.mobi-single-breadcrumb { display: flex; gap: 12px; align-items: center; margin-bottom: 28px; color: #c9d5e3; font-size: 13px; }
.mobi-single-breadcrumb a { transition: color .2s; }
.mobi-single-breadcrumb a:hover,.mobi-single-breadcrumb a:focus-visible { color: #fff; }
.mobi-single-hero h1 { max-width: 1050px; margin: 0 0 26px; font-size: clamp(52px,5.25vw,78px); font-weight: 700; letter-spacing: -.055em; line-height: .98; }
.mobi-single-hero__excerpt { max-width: 690px; margin: 0 0 28px; color: #d5e0ec; font-size: 18px; line-height: 1.6; }
.mobi-single-meta { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; color: #c7d3e1; font-size: 12px; font-weight: 700; letter-spacing: .045em; }
.mobi-single-meta a { color: var(--mobi-single-red); text-transform: uppercase; }

.mobi-single-featured { position: relative; z-index: 2; margin-top: -112px; margin-bottom: 0; }
.mobi-single-featured img { display: block; width: 100%; max-height: 610px; object-fit: cover; background: #dfe6ee; }
.mobi-single-featured figcaption { padding: 9px 0 0; color: var(--mobi-single-muted); font-size: 11px; line-height: 1.45; text-align: center; }

.mobi-single-layout { display: grid; grid-template-columns: minmax(0,760px) minmax(190px,240px); gap: clamp(70px,8vw,130px); justify-content: center; padding-top: 72px; padding-bottom: 74px; }
.mobi-single-content { min-width: 0; color: var(--mobi-single-copy); font-size: 18px; line-height: 1.72; }
.mobi-single-content > :first-child { margin-top: 0; }
.mobi-single-content > :last-child { margin-bottom: 0; }
.mobi-single-content p,.mobi-single-content ul,.mobi-single-content ol,.mobi-single-content blockquote,.mobi-single-content pre,.mobi-single-content table,.mobi-single-content figure { margin-top: 0; margin-bottom: 28px; }
.mobi-single-content h2,.mobi-single-content h3,.mobi-single-content h4,.mobi-single-content h5,.mobi-single-content h6 { color: var(--mobi-single-ink); font-weight: 700; letter-spacing: -.035em; line-height: 1.08; scroll-margin-top: 32px; }
.mobi-single-content h2 { margin: 58px 0 20px; font-size: clamp(34px,3.35vw,48px); }
.mobi-single-content h3 { margin: 42px 0 16px; font-size: clamp(27px,2.45vw,34px); }
.mobi-single-content h4 { margin: 34px 0 14px; font-size: 23px; }
.mobi-single-content a { color: var(--mobi-single-red); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.mobi-single-content strong { color: var(--mobi-single-ink); }
.mobi-single-content ul,.mobi-single-content ol { padding-left: 25px; }
.mobi-single-content li { padding-left: 5px; margin-bottom: 9px; }
.mobi-single-content li::marker { color: var(--mobi-single-red); font-weight: 700; }
.mobi-single-content blockquote,.mobi-single-content .wp-block-quote { padding: 8px 0 8px 28px; border: 0; border-left: 3px solid var(--mobi-single-red); color: var(--mobi-single-ink); font-size: 19px; font-weight: 700; line-height: 1.55; }
.mobi-single-content blockquote p { margin-bottom: 10px; }
.mobi-single-content blockquote cite { color: var(--mobi-single-muted); font-size: 12px; font-style: normal; font-weight: 400; }
.mobi-single-content img { max-width: 100%; height: auto; }
.mobi-single-content figure img { display: block; width: 100%; }
.mobi-single-content figcaption,.mobi-single-content .wp-element-caption { margin: 8px 0 0; color: var(--mobi-single-muted); font-size: 11px; line-height: 1.45; text-align: center; }
.mobi-single-content .alignleft { float: left; max-width: 48%; margin: 7px 28px 20px 0; }
.mobi-single-content .alignright { float: right; max-width: 48%; margin: 7px 0 20px 28px; }
.mobi-single-content .aligncenter { display: block; margin-right: auto; margin-left: auto; }
.mobi-single-content .alignwide { width: min(1000px,calc(100vw - 64px)); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.mobi-single-content .alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }
.mobi-single-content .wp-block-image,.mobi-single-content .wp-block-gallery,.mobi-single-content .wp-block-cover,.mobi-single-content .wp-block-embed { margin-top: 40px; margin-bottom: 40px; }
.mobi-single-content .wp-block-cover { min-height: 430px; color: #fff; }
.mobi-single-content .wp-block-cover p { color: inherit; }
.mobi-single-content .wp-block-columns { gap: 32px; margin: 42px 0; }
.mobi-single-content .wp-block-column > :last-child { margin-bottom: 0; }
.mobi-single-content .wp-block-pullquote { padding: 35px 0; border-top: 1px solid var(--mobi-single-line); border-bottom: 1px solid var(--mobi-single-line); }
.mobi-single-content .wp-block-pullquote blockquote { padding-left: 0; border-left: 0; text-align: left; }
.mobi-single-content .wp-block-separator { width: 72px; margin: 52px 0; border: 0; border-top: 3px solid var(--mobi-single-red); }
.mobi-single-content .wp-block-table { overflow-x: auto; }
.mobi-single-content table { width: 100%; border-spacing: 0; border-collapse: collapse; font-size: 14px; line-height: 1.5; }
.mobi-single-content th { padding: 14px 16px; background: var(--mobi-single-navy); border: 1px solid #35455a; color: #fff; text-align: left; }
.mobi-single-content td { padding: 13px 16px; border: 1px solid var(--mobi-single-line); vertical-align: top; }
.mobi-single-content pre,.mobi-single-content code { font-family: Consolas,Monaco,monospace; }
.mobi-single-content pre { overflow-x: auto; padding: 22px; background: #f3f6f9; border-left: 3px solid var(--mobi-single-red); color: var(--mobi-single-ink); font-size: 13px; line-height: 1.55; white-space: pre-wrap; }
.mobi-single-content :not(pre) > code { padding: 2px 5px; background: #edf1f5; color: var(--mobi-single-ink); font-size: .88em; }
.mobi-single-content .wp-block-button__link { padding: 16px 24px; background: var(--mobi-single-red); border: 1px solid var(--mobi-single-red); border-radius: 0; color: #fff; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.mobi-single-content .wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--mobi-single-red); }
.mobi-single-content iframe,.mobi-single-content video { max-width: 100%; }
.mobi-single-content::after { display: block; clear: both; content: ""; }

.mobi-single-toc { position: sticky; top: 30px; align-self: start; padding-left: 32px; border-left: 1px solid var(--mobi-single-line); }
.mobi-single-toc h2 { position: relative; padding-bottom: 17px; margin: 0 0 20px; font-size: 12px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.mobi-single-toc h2::after { position: absolute; bottom: 0; left: 0; width: 38px; height: 2px; background: var(--mobi-single-red); content: ""; }
.mobi-single-toc ol { padding: 0; margin: 0; list-style: none; }
.mobi-single-toc li { margin-bottom: 17px; }
.mobi-single-toc li.is-subsection { padding-left: 15px; }
.mobi-single-toc a { color: var(--mobi-single-copy); font-size: 12px; line-height: 1.45; transition: color .2s; }
.mobi-single-toc a:hover,.mobi-single-toc a:focus-visible { color: var(--mobi-single-red); }

.mobi-single-pages { display: flex; gap: 10px; align-items: center; padding-top: 30px; margin-top: 40px; border-top: 1px solid var(--mobi-single-line); font-size: 13px; }
.mobi-single-footer { display: flex; gap: 35px; align-items: flex-end; justify-content: space-between; padding-top: 28px; padding-bottom: 58px; border-top: 1px solid var(--mobi-single-line); }
.mobi-single-taxonomy { display: grid; gap: 12px; }
.mobi-single-taxonomy > div { display: flex; gap: 20px; align-items: baseline; }
.mobi-single-taxonomy strong { min-width: 82px; color: var(--mobi-single-ink); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.mobi-single-taxonomy span { color: var(--mobi-single-muted); font-size: 12px; }
.mobi-single-taxonomy a { color: var(--mobi-single-red); }
.mobi-single-back { display: inline-flex; flex: 0 0 auto; gap: 16px; align-items: center; color: var(--mobi-single-red) !important; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.mobi-single-back svg { width: 22px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5; }

.mobi-single-post-nav { background: var(--mobi-single-navy); color: #fff; }
.mobi-single-post-nav__grid { display: grid; grid-template-columns: 1fr 1fr; }
.mobi-single-post-nav__item { display: flex; gap: 28px; align-items: center; min-height: 180px; padding: 35px 0; }
.mobi-single-post-nav__item + .mobi-single-post-nav__item { padding-left: 55px; border-left: 1px solid rgba(255,255,255,.28); }
.mobi-single-post-nav__item--next { justify-content: flex-end; text-align: right; }
.mobi-single-post-nav__item svg { flex: 0 0 auto; width: 38px; fill: none; stroke: #fff; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.25; transition: transform .2s; }
.mobi-single-post-nav__item--previous:hover svg { transform: translateX(-5px); }
.mobi-single-post-nav__item--next:hover svg { transform: translateX(5px); }
.mobi-single-post-nav__item span { display: grid; gap: 11px; max-width: 390px; }
.mobi-single-post-nav__item small { color: #aebed0; font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.mobi-single-post-nav__item strong { font-size: 18px; line-height: 1.4; }

.mobi-single-related { padding: 78px 0 96px; background: #fff; }
.mobi-single-related h2 { position: relative; padding-bottom: 16px; margin: 0 0 35px; color: var(--mobi-single-ink); font-size: clamp(38px,4vw,56px); font-weight: 700; letter-spacing: -.05em; line-height: 1; }
.mobi-single-related h2::after { position: absolute; bottom: 0; left: 0; width: 42px; height: 3px; background: var(--mobi-single-red); content: ""; }
.mobi-single-related__grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--mobi-single-line); border-left: 1px solid var(--mobi-single-line); }
.mobi-single-related-card { min-width: 0; border-right: 1px solid var(--mobi-single-line); border-bottom: 1px solid var(--mobi-single-line); }
.mobi-single-related-card__media { display: block; aspect-ratio: 1.75; overflow: hidden; background: #dfe6ee; }
.mobi-single-related-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.mobi-single-related-card__media:hover img { transform: scale(1.025); }
.mobi-single-related-card__content { padding: 20px 22px 24px; }
.mobi-single-related-card__category { display: inline-block; margin-bottom: 10px; color: var(--mobi-single-red) !important; font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.mobi-single-related-card h3 { margin: 0 0 22px; font-size: clamp(23px,2vw,30px); font-weight: 700; letter-spacing: -.04em; line-height: 1.08; }
.mobi-single-related-card h3 a:hover,.mobi-single-related-card h3 a:focus-visible { color: var(--mobi-single-red); }
.mobi-single-related-card time { color: var(--mobi-single-muted); font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }

.mobi-single-comments { padding-top: 78px; padding-bottom: 96px; border-top: 1px solid var(--mobi-single-line); }
.mobi-single-comments .comments-title,.mobi-single-comments .comment-reply-title { color: var(--mobi-single-ink); font-size: 32px; letter-spacing: -.03em; }
.mobi-single-comments .comment-list { padding: 0; list-style: none; }
.mobi-single-comments .comment-body { padding: 26px 0; border-bottom: 1px solid var(--mobi-single-line); }
.mobi-single-comments input:not([type="submit"]),.mobi-single-comments textarea { width: 100%; padding: 14px; border: 1px solid var(--mobi-single-line); border-radius: 0; font: inherit; }
.mobi-single-comments input[type="submit"] { padding: 16px 25px; background: var(--mobi-single-red); border: 0; border-radius: 0; color: #fff; cursor: pointer; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

@media (max-width:980px) {
	body.single-post .mobisig-header__brand { left: 32px; }
	.mobi-single-layout { grid-template-columns: minmax(0,760px); }
	.mobi-single-toc { display: none; }
}

@media (max-width:860px) {
	body.single-post .mobisig-header__brand { min-height: 80px; }
	body.single-post .mobisig-header__nav-row { min-height: 80px; }
	body.single-post .mobisig-header__nav-inner { width: 100%; }
	body.single-post .mobisig-menu-toggle { min-height: 80px; color: #fff; }
	body.single-post .mobisig-navigation { top: 80px; background: var(--mobi-single-navy); }
}

@media (max-width:660px) {
	.mobi-single-shell { width: min(100% - 40px,var(--mobi-single-shell)); }
	.mobi-single-hero { min-height: 0; padding: 138px 0 112px; }
	.mobi-single-breadcrumb { margin-bottom: 24px; font-size: 12px; }
	.mobi-single-hero h1 { font-size: clamp(40px,12.5vw,55px); }
	.mobi-single-hero__excerpt { font-size: 16px; }
	.mobi-single-meta { font-size: 10px; }
	.mobi-single-featured { width: 100%; margin-top: -66px; }
	.mobi-single-featured img { min-height: 250px; max-height: 420px; object-fit: cover; }
	.mobi-single-featured figcaption { padding-inline: 20px; }
	.mobi-single-layout { padding-top: 52px; padding-bottom: 55px; }
	.mobi-single-content { font-size: 17px; line-height: 1.68; }
	.mobi-single-content h2 { margin-top: 48px; font-size: 34px; }
	.mobi-single-content h3 { font-size: 27px; }
	.mobi-single-content .alignleft,.mobi-single-content .alignright { float: none; max-width: 100%; margin: 35px 0; }
	.mobi-single-content .alignwide { width: calc(100vw - 40px); }
	.mobi-single-content .wp-block-columns { gap: 8px; }
	.mobi-single-content table { min-width: 600px; }
	.mobi-single-footer { display: grid; align-items: start; padding-bottom: 50px; }
	.mobi-single-taxonomy > div { display: grid; gap: 5px; }
	.mobi-single-post-nav__grid { grid-template-columns: 1fr; width: 100%; }
	.mobi-single-post-nav__item { min-height: 145px; padding: 28px 20px; }
	.mobi-single-post-nav__item + .mobi-single-post-nav__item { padding-left: 20px; border-top: 1px solid rgba(255,255,255,.22); border-left: 0; }
	.mobi-single-related { padding: 62px 0 72px; }
	.mobi-single-related h2 { font-size: 42px; }
	.mobi-single-related__grid { grid-template-columns: 1fr; }
	.mobi-single-related-card h3 { font-size: 27px; }
}

@media (prefers-reduced-motion:reduce) {
	.mobi-single * { scroll-behavior: auto !important; transition: none !important; }
}
