/* Mohammad Marzbani — unified public UI, 2026 */
:root {
    color-scheme: light;
    --ui-ink: #101828;
    --ui-ink-2: #263248;
    --ui-paper: #f5f6f2;
    --ui-surface: #ffffff;
    --ui-surface-soft: #ecefe9;
    --ui-line: #d9ded8;
    --ui-muted: #667085;
    --ui-blue: #365cf5;
    --ui-blue-dark: #203aa8;
    --ui-teal: #15a39a;
    --ui-coral: #f06449;
    --ui-yellow: #f3d15f;
    --ui-success: #137a57;
    --ui-danger: #be3b3b;
    --ui-radius-sm: 12px;
    --ui-radius: 20px;
    --ui-radius-lg: 30px;
    --ui-shadow: 0 24px 70px rgba(16, 24, 40, .09);
    --ui-shell: 1240px;
    --ui-gutter: clamp(18px, 4vw, 56px);
    --ui-header: 76px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body {
    margin: 0;
    min-width: 0;
    background: var(--ui-paper);
    color: var(--ui-ink);
    font-family: Estedad, Tahoma, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.75;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}
body.ui-menu-open { overflow: hidden; }
main { display: block; min-height: 55vh; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
img, svg, video { display: block; max-width: 100%; }
figure, blockquote, dl, dd { margin: 0; }
.ui-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
::selection { background: var(--ui-yellow); color: var(--ui-ink); }
.container { width: min(calc(100% - 2 * var(--ui-gutter)), var(--ui-shell)); margin-inline: auto; }
.ui-skip { position: fixed; z-index: 1000; inset: 10px auto auto 12px; translate: 0 -150%; padding: 10px 15px; border-radius: 10px; background: var(--ui-ink); color: #fff; }
.ui-skip:focus { translate: 0; }

/* Header */
.ui-header {
    position: fixed;
    z-index: 100;
    inset: 0 0 auto;
    height: var(--ui-header);
    border-bottom: 1px solid transparent;
    background: rgba(245, 246, 242, .82);
    backdrop-filter: blur(16px);
    transition: translate .3s ease, background .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.ui-has-scrolled .ui-header { border-color: rgba(217, 222, 216, .9); background: rgba(245, 246, 242, .88); box-shadow: 0 8px 30px rgba(16, 24, 40, .04); backdrop-filter: blur(18px); }
.ui-header.ui-header-hidden { translate: 0 -110%; }
.ui-header-inner { width: min(calc(100% - 2 * var(--ui-gutter)), 1380px); height: 100%; margin-inline: auto; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 28px; }
.ui-brand { display: inline-flex; align-items: center; gap: 11px; justify-self: start; }
.ui-brand-mark { display: grid; place-items: center; width: 41px; height: 41px; flex: none; border-radius: 13px; background: linear-gradient(145deg, var(--ui-blue), #7045dc 62%, var(--ui-coral)); color: #fff; font: 750 1.08rem/1 Arial, sans-serif; box-shadow: 0 10px 24px rgba(54, 92, 245, .22); }
.ui-brand-copy { display: grid; line-height: 1.4; }
.ui-brand-copy strong { font-size: .79rem; font-weight: 720; }
.ui-brand-copy small { color: var(--ui-muted); font-size: .625rem; }
.ui-nav { display: flex; align-items: center; gap: 5px; padding: 5px; border: 1px solid rgba(217, 222, 216, .82); border-radius: 999px; background: rgba(255, 255, 255, .58); }
.ui-nav a { position: relative; padding: 8px 14px; border-radius: 999px; color: var(--ui-muted); font-size: .7rem; font-weight: 570; transition: background .2s, color .2s; }
.ui-nav a:hover { color: var(--ui-ink); }
.ui-nav a.is-active { background: var(--ui-ink); color: #fff; }
.ui-header-actions { display: flex; justify-self: end; align-items: center; gap: 9px; }
.ui-account-links { display: flex; align-items: center; gap: 6px; }
.ui-account-links form { margin: 0; }
.ui-account-links a,.ui-account-links button { padding: 8px 10px; border: 1px solid var(--ui-line); border-radius: 9px; background: var(--ui-surface); color: var(--ui-ink); font-size: .68rem; }
.ui-header-cta { display: flex; align-items: center; gap: 18px; padding: 10px 15px; border: 1px solid var(--ui-ink); border-radius: 12px; background: var(--ui-ink); color: #fff; font-size: .69rem; font-weight: 650; transition: translate .2s, box-shadow .2s; }
.ui-header-cta:hover { translate: 0 -2px; box-shadow: 0 10px 26px rgba(16, 24, 40, .16); }
.ui-header-cta span { color: #9dafef; }
.ui-menu-button { display: none; width: 42px; height: 42px; padding: 0; border: 1px solid var(--ui-line); border-radius: 12px; background: var(--ui-surface); }
.ui-menu-button span { display: block; width: 17px; height: 1.5px; margin: 5px auto; background: var(--ui-ink); transition: rotate .2s, translate .2s; }
.ui-menu-backdrop { display: none; }

/* Footer */
.ui-footer { background: #0f1728; color: #f8fafc; }
.ui-footer-cta { width: min(calc(100% - 2 * var(--ui-gutter)), var(--ui-shell)); margin-inline: auto; padding: 74px 0 54px; display: flex; justify-content: space-between; align-items: end; gap: 35px; border-bottom: 1px solid rgba(255, 255, 255, .13); }
.ui-footer-cta span, .ui-footer-status>span, .ui-footer-social>span { color: #93a3c4; font-size: .63rem; }
.ui-footer-cta h2 { max-width: none; margin: 12px 0 0; font-size: clamp(1.3rem, 2vw, 1.9rem); line-height: 1.5; font-weight: 580; letter-spacing: -.025em; white-space: nowrap; }
.ui-footer-cta>a { display: flex; gap: 35px; padding: 14px 18px; border-radius: 12px; background: var(--ui-blue); font-size: .72rem; font-weight: 650; }
.ui-footer-main { width: min(calc(100% - 2 * var(--ui-gutter)), var(--ui-shell)); margin-inline: auto; display: grid; grid-template-columns: 1fr .85fr .5fr; gap: 8vw; padding: 52px 0; }
.ui-footer-identity { display: flex; align-items: start; gap: 15px; }
.ui-footer-identity strong { display: block; margin-top: 2px; font-size: .9rem; }
.ui-footer-identity p { margin: 7px 0 0; color: #8e99ae; font-size: .72rem; line-height: 1.8; }
.ui-footer-status, .ui-footer-social { display: flex; flex-direction: column; align-items: start; gap: 10px; }
.ui-footer-status strong { max-width: 330px; font-size: .82rem; font-weight: 590; }
.ui-footer-status a, .ui-footer-social a { color: #c8d1e2; font-size: .7rem; }
.ui-footer-status a:hover, .ui-footer-social a:hover { color: #fff; }
.ui-footer-bottom { width: min(calc(100% - 2 * var(--ui-gutter)), var(--ui-shell)); margin-inline: auto; display: flex; justify-content: space-between; padding: 17px 0 24px; border-top: 1px solid rgba(255, 255, 255, .1); color: #7f8ba1; font-size: .625rem; }
.ui-scroll-top { position: fixed; z-index: 60; left: max(18px,env(safe-area-inset-left)); bottom: max(18px,env(safe-area-inset-bottom)); width: 46px; height: 46px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; color: #fff; background: #0b1729; box-shadow: 0 14px 34px rgba(7,18,35,.3),inset 0 1px 0 rgba(255,255,255,.14); cursor: pointer; opacity: 0; visibility: hidden; transform: translateY(12px); transition: opacity .2s ease,transform .2s ease,visibility .2s; }
.ui-scroll-top.is-visible { opacity: 1; visibility: visible; transform: none; }
.ui-scroll-top:hover { transform: translateY(-3px); background: #142641; }
.ui-scroll-top .ui-top-icon {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 14 6-6 6 6'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 14 6-6 6 6'/%3E%3C/svg%3E");
}

/* Home hero */
.mm-home { overflow: hidden; background: var(--ui-paper); }
.mm-home-hero { position: relative; padding: calc(var(--ui-header) + 28px) 0 28px; }
.mm-home-hero::before { content: ""; position: absolute; z-index: 0; inset: 0 0 auto; height: 760px; background: radial-gradient(circle at 15% 12%, rgba(21, 163, 154, .14), transparent 31%), radial-gradient(circle at 85% 25%, rgba(54, 92, 245, .13), transparent 31%); pointer-events: none; }
.mm-home-hero-grid { position: relative; z-index: 1; min-height: 610px; display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr); overflow: hidden; border: 1px solid var(--ui-line); border-radius: var(--ui-radius-lg); background: rgba(255, 255, 255, .76); box-shadow: var(--ui-shadow); }
.mm-home-copy { min-width: 0; display: flex; flex-direction: column; justify-content: center; padding: 58px clamp(28px, 5vw, 72px); }
.mm-availability { display: flex; align-items: center; gap: 9px; width: max-content; max-width: 100%; padding: 8px 11px; border: 1px solid rgba(19, 122, 87, .18); border-radius: 999px; background: rgba(19, 122, 87, .07); color: var(--ui-success); font-size: .65rem; }
.mm-availability i { width: 6px; height: 6px; flex: none; border-radius: 50%; background: #19a673; box-shadow: 0 0 0 5px rgba(25, 166, 115, .12); }
.mm-availability.is-closed { border-color: rgba(100,116,139,.2); background: rgba(100,116,139,.08); color: #64748b; }
.mm-availability.is-closed i { background: #94a3b8; box-shadow: 0 0 0 5px rgba(148,163,184,.13); }
.mm-home-copy h1 { max-width: none; margin: 27px 0 16px; font-size: clamp(1.8rem, 2.7vw, 2.35rem); line-height: 1.5; letter-spacing: -.035em; font-weight: 600; white-space: nowrap; }
@media(min-width:1101px){.mm-home-copy{position:relative;z-index:3;translate:28px 0}.mm-home-copy h1{font-size:clamp(1.5rem,2vw,1.92rem);letter-spacing:-.025em}}
.mm-home-copy>p { max-width: 570px; margin: 0; color: var(--ui-muted); font-size: .93rem; line-height: 2; }
.mm-home-actions { display: flex; gap: 9px; margin-top: 28px; }
.mm-home-actions a { min-width: 148px; display: flex; justify-content: space-between; gap: 25px; padding: 13px 16px; border: 1px solid var(--ui-line); border-radius: 12px; background: var(--ui-surface); font-size: .7rem; font-weight: 640; transition: translate .2s, box-shadow .2s; }
.mm-home-actions a:first-child { border-color: var(--ui-blue); background: var(--ui-blue); color: #fff; }
.mm-home-actions a:hover { translate: 0 -2px; box-shadow: 0 12px 30px rgba(16, 24, 40, .1); }
.mm-home-portrait { position: relative; min-width: 0; min-height: 610px; overflow: hidden; background: linear-gradient(145deg, #d9e3ff, #b4c6ff 48%, #80cfc5); }
.mm-home-portrait::before { content: ""; position: absolute; inset: 10% 8% auto auto; width: 62%; aspect-ratio: 1; border: 1px solid rgba(255, 255, 255, .65); border-radius: 50%; box-shadow: 0 0 0 52px rgba(255, 255, 255, .1), 0 0 0 104px rgba(255, 255, 255, .07); }
.mm-home-portrait::after { content: ""; position: absolute; inset: auto 0 0; height: 35%; background: linear-gradient(transparent, rgba(20, 43, 73, .48)); }
.mm-home-portrait img { position: absolute; z-index: 1; inset: auto 50% 0 auto; translate: 50% 0; width: 100%; height: 100%; object-fit: contain; object-position: center bottom; }
.mm-home-portrait figcaption { position: absolute; z-index: 3; right: 23px; bottom: 23px; display: grid; gap: 3px; color: #fff; }
.mm-home-portrait figcaption span { font-size: .62rem; opacity: .82; }
.mm-home-portrait figcaption strong { font: 700 .64rem/1 Arial, sans-serif; letter-spacing: .1em; }
.mm-home-portrait>b { position: absolute; z-index: 3; top: 22px; left: 22px; display: grid; place-items: center; width: 47px; height: 47px; border: 1px solid rgba(255, 255, 255, .7); border-radius: 15px; background: rgba(255, 255, 255, .2); color: #fff; direction: ltr; unicode-bidi: isolate; backdrop-filter: blur(8px); }

.mm-capabilities { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, 1fr) 1.12fr; padding: 0 20px; margin-top: -1px; }
.mm-capabilities>* { min-height: 92px; display: grid; align-content: center; gap: 3px; padding: 17px 20px; border: 1px solid var(--ui-line); border-top: 0; background: rgba(255, 255, 255, .74); }
.mm-capabilities>*+* { border-right: 0; }
.mm-capabilities article:first-child { border-radius: 0 0 18px 0; }
.mm-capabilities a { border-radius: 0 0 0 18px; background: var(--ui-ink); color: #fff; }
.mm-capabilities span { color: var(--ui-blue); font: 700 .62rem/1 Arial, sans-serif; }
.mm-capabilities strong { font-size: .75rem; }
.mm-capabilities small { color: var(--ui-muted); font-size: .62rem; }
.mm-capabilities a small { color: #aebbd1; }

/* Home sections */
.mm-manifesto { padding: clamp(80px, 9vw, 125px) 0; }
.mm-manifesto-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: clamp(50px, 10vw, 140px); align-items: start; }
.mm-manifesto span, .mm-home-services header>span, .mm-selected-work header span, .mm-abilities header>span, .mm-final-cta span { display: inline-flex; align-items: center; gap: 8px; color: var(--ui-blue); font-size: .64rem; font-weight: 680; }
.mm-manifesto span::before, .mm-home-services header>span::before, .mm-selected-work header span::before, .mm-abilities header>span::before, .mm-final-cta span::before { content: ""; width: 18px; height: 2px; border-radius: 2px; background: currentColor; }
.mm-manifesto h2, .mm-home-services h2, .mm-selected-work h2, .mm-abilities h2 { margin: 20px 0 0; font-size: clamp(1.3rem, 2vw, 1.85rem); line-height: 1.6; letter-spacing: -.025em; font-weight: 590; white-space: nowrap; }
.mm-manifesto-grid>div:last-child { padding-top: 35px; border-top: 1px solid var(--ui-line); }
.mm-manifesto p { max-width: 580px; margin: 0 0 16px; color: var(--ui-muted); line-height: 2.05; }
.mm-manifesto p:first-child { color: var(--ui-ink-2); font-size: 1rem; }

.mm-home-services { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(45px, 8vw, 110px); padding-block: clamp(80px, 9vw, 120px); border-top: 1px solid var(--ui-line); }
.mm-home-services header { position: sticky; top: 110px; align-self: start; }
.mm-home-services header>p, .mm-abilities header>p { max-width: 440px; color: var(--ui-muted); line-height: 1.95; }
.mm-home-services>div { border-top: 1px solid var(--ui-line); }
.mm-home-services article, .mm-home-services>div>a { display: grid; grid-template-columns: 44px 1fr 30px; gap: 15px; align-items: start; padding: 25px 6px; border-bottom: 1px solid var(--ui-line); transition: padding .22s, background .22s; }
.mm-home-services>div>a:hover { padding-inline: 18px; background: var(--ui-surface); }
.mm-home-services article>b, .mm-home-services>div>a>b { color: var(--ui-blue); font: 700 .63rem/1.8 Arial, sans-serif; }
.mm-home-services h3 { margin: 0 0 6px; font-size: 1.17rem; font-weight: 640; }
.mm-home-services p { max-width: 550px; margin: 0; color: var(--ui-muted); font-size: .78rem; }
.mm-home-services>div>a>span { width: 29px; height: 29px; display: grid; place-items: center; border: 1px solid var(--ui-line); border-radius: 9px; font-size: .72rem; }

.mm-selected-work { padding: clamp(80px, 9vw, 120px) 0; background: var(--ui-ink); color: #fff; }
.mm-selected-work header { display: flex; justify-content: space-between; align-items: end; gap: 35px; }
.mm-selected-work header span { color: #8aa2ff; }
.mm-selected-work header>a { padding-bottom: 5px; border-bottom: 1px solid rgba(255, 255, 255, .28); color: #c3ccdc; font-size: .68rem; }
.mm-work-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 45px 22px; margin-top: 46px; }
.mm-work-list>a { min-width: 0; }
.mm-work-list>a>div { position: relative; aspect-ratio: 16/10; display: grid; place-items: center; overflow: hidden; border-radius: 18px; background: #1a263b; }
.mm-work-list>a>div::after { content: ""; position: absolute; inset: 0; border: 1px solid rgba(255, 255, 255, .13); border-radius: inherit; }
.mm-work-list img { width: 100%; height: 100%; object-fit: cover; transition: scale .45s ease; }
.mm-work-list a:hover img { scale: 1.025; }
.mm-work-list small { display: block; margin-top: 15px; color: #8ca3ff; font-size: .625rem; }
.mm-work-list h3 { margin: 6px 0; font-size: 1.28rem; font-weight: 620; }
.mm-work-list p { max-width: 540px; margin: 0; color: #9eabc0; font-size: .74rem; }
.mm-no-work { margin-top: 40px; padding: 55px; border: 1px dashed rgba(255, 255, 255, .2); border-radius: var(--ui-radius); background: rgba(255, 255, 255, .03); }
.mm-no-work span { color: #8ca3ff; font: 700 .62rem/1 Arial, sans-serif; }
.mm-no-work h3 { margin: 14px 0 5px; font-size: 1.25rem; font-weight: 620; }
.mm-no-work p { margin: 0; color: #9eabc0; }

.mm-abilities { display: grid; grid-template-columns: .7fr 1.3fr; gap: clamp(45px, 8vw, 110px); padding-block: clamp(80px, 9vw, 120px); }
.mm-abilities header { align-self: start; }
.mm-ability-list { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--ui-line); border-right: 1px solid var(--ui-line); }
.mm-ability-list article { min-height: 220px; display: grid; grid-template-columns: 34px 1fr; align-content: space-between; padding: 24px; border-left: 1px solid var(--ui-line); border-bottom: 1px solid var(--ui-line); transition: background .22s; }
.mm-ability-list article:hover { background: var(--ui-surface); }
.mm-ability-list article>b { color: var(--ui-blue); font: 700 .62rem/1 Arial, sans-serif; }
.mm-ability-list article>div { grid-column: 2; }
.mm-ability-list span { color: var(--ui-teal); font: 700 .58rem/1 Arial, sans-serif; letter-spacing: .1em; }
.mm-ability-list h3 { margin: 10px 0 6px; font-size: 1.05rem; font-weight: 640; }
.mm-ability-list p { margin: 0; color: var(--ui-muted); font-size: .72rem; line-height: 1.85; }
.mm-abilities>footer { grid-column: 2; display: grid; grid-template-columns: 130px 1fr; gap: 20px; align-items: start; }
.mm-abilities>footer>span { color: var(--ui-muted); font-size: .65rem; }
.mm-abilities>footer>div { display: flex; flex-wrap: wrap; gap: 7px; }
.mm-abilities>footer b { padding: 7px 11px; border: 1px solid var(--ui-line); border-radius: 999px; background: rgba(255, 255, 255, .55); font-size: .65rem; font-weight: 570; }
.mm-final-cta { position: relative; overflow: hidden; padding: clamp(80px, 9vw, 120px) 0; background: linear-gradient(135deg, #dbe3ff, #d6efea); text-align: center; }
.mm-final-cta::before, .mm-final-cta::after { content: ""; position: absolute; width: 280px; aspect-ratio: 1; border: 1px solid rgba(54, 92, 245, .13); border-radius: 50%; }
.mm-final-cta::before { top: -130px; right: -70px; box-shadow: 0 0 0 55px rgba(54, 92, 245, .04); }
.mm-final-cta::after { bottom: -170px; left: -40px; box-shadow: 0 0 0 55px rgba(21, 163, 154, .05); }
.mm-final-cta .container { position: relative; z-index: 1; }
.mm-final-cta h2 { max-width: none; margin: 22px auto 12px; font-size: clamp(1.35rem, 2vw, 1.8rem); line-height: 1.55; font-weight: 590; letter-spacing: -.025em; white-space: nowrap; }
.mm-final-cta p { max-width: 610px; margin: 0 auto 25px; color: var(--ui-muted); }
.mm-final-cta a { display: inline-flex; gap: 35px; padding: 13px 17px; border-radius: 12px; background: var(--ui-ink); color: #fff; font-size: .72rem; font-weight: 650; }

/* Projects */
.folio-index, .offer-index, .journal-index, .checkup-page, .offer-detail { overflow: hidden; }
.folio-intro, .offer-intro { padding-top: calc(var(--ui-header) + clamp(70px, 9vw, 115px)); padding-bottom: clamp(55px, 7vw, 88px); }
.folio-eyebrow { display: flex; align-items: center; gap: 10px; color: var(--ui-blue); font-size: .65rem; }
.folio-eyebrow span { display: grid; place-items: center; width: 29px; height: 29px; border: 1px solid rgba(54, 92, 245, .25); border-radius: 9px; background: rgba(54, 92, 245, .06); }
.folio-intro h1, .offer-intro h1, .journal-head h1 { max-width: none; margin: 25px 0; font-size: clamp(1.75rem, 2.7vw, 2.3rem); line-height: 1.5; letter-spacing: -.035em; font-weight: 600; white-space: nowrap; }
.folio-intro h1 em, .offer-intro h1 em, .journal-head h1 em { color: #8490a2; font-style: normal; font-weight: 540; }
.folio-intro-foot { display: grid; grid-template-columns: 1fr auto; gap: 35px; align-items: center; padding-top: 20px; border-top: 1px solid var(--ui-line); }
.folio-intro-foot p { max-width: 630px; margin: 0; color: var(--ui-muted); font-size: .8rem; }
.folio-intro-foot a { display: flex; align-items: center; gap: 12px; font-size: .69rem; font-weight: 630; }
.folio-intro-foot i { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 10px; background: var(--ui-blue); color: #fff; font-style: normal; }
.folio-list { padding-bottom: 100px; }
.folio-item { display: grid; grid-template-columns: 40px minmax(230px, .78fr) 1.15fr 115px; gap: clamp(20px, 3vw, 42px); align-items: center; padding: 24px 0; border-top: 1px solid var(--ui-line); }
.folio-item:last-child { border-bottom: 1px solid var(--ui-line); }
.folio-number { align-self: start; padding-top: 8px; color: var(--ui-blue); font: 700 .61rem/1 Arial, sans-serif; }
.folio-thumb { aspect-ratio: 16/10; display: grid; place-items: center; overflow: hidden; border-radius: 16px; background: linear-gradient(145deg, #dbe3ff, #cfebe6); }
.folio-thumb img { width: 100%; height: 100%; object-fit: cover; transition: scale .4s ease; }
.folio-item:hover .folio-thumb img { scale: 1.025; }
.folio-thumb>span { font-size: 3rem; font-weight: 700; color: rgba(16, 24, 40, .3); }
.folio-copy { display: grid; gap: 18px; }
.folio-copy small { color: var(--ui-teal); font-size: .6rem; }
.folio-copy h2 { margin: 5px 0 0; font-size: clamp(1.25rem, 2.1vw, 2rem); font-weight: 640; }
.folio-copy p { max-width: 600px; margin: 0; color: var(--ui-muted); font-size: .75rem; }
.folio-open { font-size: .63rem; }
.folio-open b { display: block; margin-top: 8px; color: var(--ui-blue); font-size: 1rem; }
.folio-empty { padding: 70px; border: 1px dashed var(--ui-line); border-radius: var(--ui-radius); text-align: center; }

/* Services */
.offer-intro { position: relative; }
.offer-intro::after { content: ""; position: absolute; z-index: -1; top: 70px; left: 5%; width: 360px; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(21, 163, 154, .12), transparent 68%); }
.offer-intro>span, .journal-head span, .offer-detail-head>span { color: var(--ui-blue); font: 700 .64rem/1 Arial, sans-serif; letter-spacing: .1em; }
.offer-intro>p { max-width: 650px; color: var(--ui-muted); }
.offer-list { padding-bottom: 90px; }
.offer-row { display: grid; grid-template-columns: 42px 1fr 190px 160px; gap: 30px; align-items: center; padding: 28px 6px; border-top: 1px solid var(--ui-line); transition: padding .2s, background .2s; }
.offer-row:last-child { border-bottom: 1px solid var(--ui-line); }
.offer-row:hover { padding-inline: 18px; background: var(--ui-surface); }
.offer-no { color: var(--ui-blue); font: 700 .62rem/1 Arial, sans-serif; }
.offer-main h2 { margin: 0 0 5px; font-size: 1.35rem; font-weight: 640; }
.offer-main p { max-width: 570px; margin: 0; color: var(--ui-muted); font-size: .73rem; }
.offer-meta { display: grid; gap: 3px; }
.offer-meta small { color: var(--ui-muted); font-size: .6rem; }
.offer-meta strong { font-size: .7rem; font-weight: 620; }
.offer-row>a { justify-self: end; padding: 10px 13px; border: 1px solid var(--ui-line); border-radius: 10px; background: var(--ui-surface); font-size: .64rem; font-weight: 620; }
.offer-row>a:hover { border-color: var(--ui-blue); color: var(--ui-blue); }
.offer-method { display: grid; grid-template-columns: .65fr 1.35fr; gap: 8vw; padding-block: 95px; border-top: 1px solid var(--ui-line); }
.offer-method>div span { color: var(--ui-blue); font-size: .64rem; }
.offer-method h2 { max-width: none; margin: 17px 0; font-size: clamp(1.3rem, 2vw, 1.8rem); line-height: 1.6; font-weight: 590; white-space: nowrap; }
.offer-method ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--ui-line); }
.offer-method li { display: grid; grid-template-columns: 38px 160px 1fr; gap: 20px; align-items: start; padding: 21px 5px; border-bottom: 1px solid var(--ui-line); }
.offer-method li b { color: var(--ui-blue); font: 700 .62rem/1.8 Arial, sans-serif; }
.offer-method li strong { font-size: .79rem; }
.offer-method li p { margin: 0; color: var(--ui-muted); font-size: .7rem; }

/* Journal */
.journal-head { display: grid; grid-template-columns: 1.35fr .65fr; gap: 8vw; align-items: end; padding-top: calc(var(--ui-header) + 90px); padding-bottom: 54px; }
.journal-head h1 { font-size: clamp(1.75rem, 2.7vw, 2.3rem); }
.journal-head>p { margin: 0 0 28px; color: var(--ui-muted); font-size: .8rem; }
.journal-tools { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding-block: 17px; border-block: 1px solid var(--ui-line); }
.journal-tools form { min-width: min(100%, 410px); display: flex; gap: 7px; }
.journal-tools input { width: 100%; min-width: 0; padding: 10px 12px; border: 1px solid var(--ui-line); border-radius: 10px; background: var(--ui-surface); outline: 0; font-size: .7rem; }
.journal-tools input:focus { border-color: var(--ui-blue); box-shadow: 0 0 0 3px rgba(54, 92, 245, .1); }
.journal-tools button { padding: 10px 14px; border: 0; border-radius: 10px; background: var(--ui-ink); color: #fff; font-size: .66rem; }
.journal-tools nav { display: flex; flex-wrap: wrap; gap: 5px; }
.journal-tools nav a { padding: 7px 10px; border-radius: 999px; color: var(--ui-muted); font-size: .62rem; }
.journal-tools nav a.active { background: var(--ui-blue); color: #fff; }
.journal-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px 20px; padding-block: 55px 80px; }
.journal-card { min-width: 0; }
.journal-card.journal-featured { grid-column: 1/-1; display: grid; grid-template-columns: 1.25fr .75fr; gap: 35px; padding-bottom: 50px; border-bottom: 1px solid var(--ui-line); }
.journal-image { aspect-ratio: 16/10; display: grid; place-items: center; overflow: hidden; border-radius: 18px; background: linear-gradient(145deg, #dbe3ff, #d1ede8); }
.journal-image img { width: 100%; height: 100%; object-fit: cover; transition: scale .4s; }
.journal-card:hover .journal-image img { scale: 1.025; }
.journal-image>span { color: rgba(16, 24, 40, .45); font: 700 .62rem/1 Arial, sans-serif; letter-spacing: .13em; }
.journal-copy { padding-top: 14px; }
.journal-copy>span { color: var(--ui-teal); font-size: .625rem; }
.journal-copy h2 { margin: 8px 0; font-size: clamp(1.15rem, 2vw, 1.75rem); line-height: 1.6; font-weight: 640; }
.journal-featured .journal-copy h2 { font-size: clamp(1.4rem, 2.7vw, 2.35rem); }
.journal-copy p { margin: 0 0 13px; color: var(--ui-muted); font-size: .72rem; }
.journal-copy b { color: var(--ui-blue); font-size: .63rem; }
.journal-pages { display: flex; gap: 6px; padding-bottom: 75px; }
.journal-pages a { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--ui-line); border-radius: 10px; font-size: .65rem; }
.journal-pages a.active { border-color: var(--ui-blue); background: var(--ui-blue); color: #fff; }

/* Site checkup */
.checkup-hero { position: relative; padding-top: calc(var(--ui-header) + 35px); overflow: hidden; background: #0f1728; color: #fff; }
.checkup-hero::before { content: ""; position: absolute; inset: -30% -10% auto auto; width: 620px; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(54, 92, 245, .32), transparent 66%); }
.checkup-hero-grid { position: relative; z-index: 1; min-height: 520px; display: grid; grid-template-columns: 1.12fr .88fr; gap: 8vw; align-items: center; padding-block: 50px 65px; }
.checkup-copy>span { color: #8ca3ff; font: 700 .62rem/1 Arial, sans-serif; letter-spacing: .12em; }
.checkup-copy h1 { max-width: none; margin: 22px 0 15px; font-size: clamp(1.75rem, 2.7vw, 2.3rem); line-height: 1.5; letter-spacing: -.035em; font-weight: 600; white-space: nowrap; }
.checkup-copy h1 em { color: #96a4bb; font-style: normal; font-weight: 540; }
.checkup-copy p { max-width: 620px; margin: 0; color: #a9b4c7; font-size: .8rem; }
.checkup-box { padding: 25px; border: 1px solid rgba(255, 255, 255, .13); border-radius: 20px; background: rgba(255, 255, 255, .08); box-shadow: 0 25px 60px rgba(0, 0, 0, .18); backdrop-filter: blur(14px); }
.checkup-box label { display: block; margin-bottom: 8px; color: #d8deea; font-size: .65rem; }
.checkup-box input { width: 100%; padding: 14px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 11px; background: rgba(255, 255, 255, .95); color: var(--ui-ink); outline: 0; font-family: Arial, sans-serif; }
.checkup-box input:focus { border-color: #8ca3ff; box-shadow: 0 0 0 4px rgba(140, 163, 255, .14); }
.checkup-box>span { display: block; margin-top: 5px; color: #ff9b88; font-size: .62rem; }
.checkup-box button { width: 100%; display: flex; justify-content: space-between; margin-top: 9px; padding: 13px 15px; border: 0; border-radius: 11px; background: var(--ui-blue); color: #fff; font-size: .7rem; font-weight: 650; }
.checkup-box small { display: block; margin-top: 11px; color: #8f9db4; font-size: .625rem; }
.checkup-marquee { direction: ltr; display: flex; justify-content: center; gap: 24px; padding: 14px var(--ui-gutter); border-top: 1px solid rgba(255, 255, 255, .1); overflow: hidden; white-space: nowrap; color: #7f8ea6; font: 700 .59rem/1 Arial, sans-serif; letter-spacing: .08em; }
.checkup-marquee i { color: #8ca3ff; }
.checkup-scope { display: grid; grid-template-columns: .7fr 1.3fr; gap: 8vw; padding-block: 95px; }
.checkup-scope-title>span, .checkup-reason span { color: var(--ui-blue); font-size: .63rem; }
.checkup-scope-title h2 { max-width: none; margin: 18px 0; font-size: clamp(1.25rem, 1.9vw, 1.7rem); line-height: 1.6; font-weight: 590; white-space: nowrap; }
.checkup-scope-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--ui-line); border-right: 1px solid var(--ui-line); }
.checkup-scope-grid article { min-height: 215px; padding: 23px; border-left: 1px solid var(--ui-line); border-bottom: 1px solid var(--ui-line); }
.checkup-scope-grid b { color: var(--ui-blue); font: 700 .61rem/1 Arial, sans-serif; }
.checkup-scope-grid h3 { margin: 40px 0 7px; font-size: 1.05rem; font-weight: 640; }
.checkup-scope-grid p { margin: 0; color: var(--ui-muted); font-size: .69rem; }
.checkup-reason { padding: 85px 0; background: #dbe3ff; }
.checkup-reason blockquote { max-width: none; margin: 22px 0 15px; font-size: clamp(1.2rem, 2vw, 1.75rem); line-height: 1.65; font-weight: 570; letter-spacing: -.02em; white-space: nowrap; }
.checkup-reason p { color: #53617a; font-size: .76rem; }

/* Shared content */
.rich-content { color: var(--ui-ink-2); line-height: 2.05; }
.rich-content h2, .rich-content h3, .rich-content h4 { margin: 2em 0 .6em; color: var(--ui-ink); line-height: 1.55; font-weight: 650; }
.rich-content p { margin: 0 0 1.25em; }
.rich-content a { color: var(--ui-blue); text-decoration: underline; text-underline-offset: 4px; }
.rich-content img { height: auto; margin-block: 28px; border-radius: 16px; }
.rich-content blockquote { margin: 28px 0; padding: 20px 22px; border-right: 3px solid var(--ui-blue); border-radius: 12px 0 0 12px; background: #e9edff; }
.rich-content pre, .rich-content code { direction: ltr; font-family: Consolas, monospace; }
.rich-content pre { overflow: auto; padding: 18px; border-radius: 12px; background: var(--ui-ink); color: #e8edf7; }
.form-error, .validation-summary-errors { color: var(--ui-danger); font-size: .7rem; }
.form-error ul, .validation-summary-errors ul { margin: 0 0 10px; padding-right: 18px; }
.field-validation-error { color: var(--ui-danger); font-size: .63rem; }
.ui-error-page { min-height: 100svh; display: grid; align-items: center; padding: calc(var(--ui-header) + 50px) 0 70px; background: radial-gradient(circle at 15% 15%, rgba(240, 100, 73, .1), transparent 30%); }
.ui-error-shell { display: grid; grid-template-columns: .85fr 1.15fr; gap: 8vw; align-items: center; }
.ui-error-code { direction: ltr; display: flex; justify-content: center; align-items: center; gap: 6px; color: #d9ded8; font: 760 clamp(6rem, 18vw, 14rem)/1 Arial, sans-serif; letter-spacing: -.1em; }
.ui-error-code i { display: grid; place-items: center; width: .62em; height: .62em; border-radius: 50%; background: var(--ui-coral); color: #fff; font-size: .3em; font-style: normal; letter-spacing: 0; }
.ui-error-copy>span { color: var(--ui-coral); font-size: .65rem; font-weight: 680; }
.ui-error-copy h1 { margin: 15px 0 10px; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.45; font-weight: 650; }
.ui-error-copy p { max-width: 600px; color: var(--ui-muted); }
.ui-error-copy code { display: block; width: max-content; max-width: 100%; margin: 20px 0; padding: 8px 11px; overflow: auto; border-radius: 8px; background: var(--ui-surface-soft); color: var(--ui-muted); font-size: .66rem; }
.ui-error-copy>div { display: flex; gap: 8px; margin-top: 23px; }
.ui-error-copy a { padding: 11px 15px; border: 1px solid var(--ui-line); border-radius: 10px; background: var(--ui-surface); font-size: .69rem; font-weight: 630; }
.ui-error-copy a:first-child { border-color: var(--ui-ink); background: var(--ui-ink); color: #fff; }

/* Motion */
[data-reveal] { opacity: 0; translate: 0 18px; transition: opacity .55s ease, translate .55s ease; }
[data-reveal].is-visible { opacity: 1; translate: 0; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } [data-reveal] { opacity: 1; translate: none; } }

/* Tablet */
@media (max-width: 1050px) {
    :root { --ui-gutter: 24px; }
    .ui-header-inner { grid-template-columns: 1fr auto; }
    .ui-nav { position: fixed; z-index: 102; inset: calc(var(--ui-header) + 10px) var(--ui-gutter) auto; display: grid; gap: 3px; padding: 14px; border-radius: 18px; background: var(--ui-surface); box-shadow: var(--ui-shadow); opacity: 0; visibility: hidden; translate: 0 -10px; transition: opacity .2s, visibility .2s, translate .2s; }
    .ui-nav a { padding: 11px 13px; border-radius: 10px; }
    .ui-menu-open .ui-nav { opacity: 1; visibility: visible; translate: 0; }
    .ui-menu-button { display: block; }
    .ui-menu-open .ui-menu-button span:first-child { translate: 0 3.25px; rotate: 45deg; }
    .ui-menu-open .ui-menu-button span:last-child { translate: 0 -3.25px; rotate: -45deg; }
    .ui-menu-backdrop { position: fixed; z-index: 90; inset: 0; background: rgba(16, 24, 40, .34); opacity: 0; visibility: hidden; transition: opacity .2s, visibility .2s; }
    .ui-menu-open .ui-menu-backdrop { display: block; opacity: 1; visibility: visible; }
    .mm-home-hero-grid { min-height: 550px; }
    .mm-home-portrait { min-height: 550px; }
    .mm-home-copy h1 { font-size: clamp(1.65rem, 3.4vw, 2.25rem); }
    .mm-abilities { grid-template-columns: 1fr; }
    .mm-abilities>footer { grid-column: auto; }
    .folio-item { grid-template-columns: 35px minmax(210px, .7fr) 1fr; }
    .folio-open { grid-column: 3; }
    .offer-row { grid-template-columns: 38px 1fr 165px; }
    .offer-row>a { grid-column: 3; }
}

/* Mobile */
@media (max-width: 760px) {
    :root { --ui-header: 68px; --ui-gutter: 17px; --ui-radius-lg: 22px; }
    body { font-size: 14px; }
    .ui-header-cta { display: none; }
    .ui-brand-copy small { display: none; }
    .ui-footer-cta { align-items: start; flex-direction: column; padding-top: 58px; }
    .ui-footer-cta h2 { font-size: clamp(1rem, 4.2vw, 1.35rem); }
    .ui-footer-main { grid-template-columns: 1fr; gap: 35px; }
    .ui-footer-bottom { align-items: start; flex-direction: column; gap: 7px; }

    .mm-home-hero { padding-top: calc(var(--ui-header) + 12px); padding-bottom: 0; }
    .mm-home-hero-grid { width: 100%; grid-template-columns: minmax(0, 1fr); min-height: 0; border-inline: 0; border-bottom: 0; border-radius: 0; }
    .mm-home-copy { padding: 38px 22px 30px; }
    .mm-home-copy h1 { margin-top: 22px; font-size: clamp(1.15rem, 4.8vw, 1.75rem); line-height: 1.6; }
    .mm-home-copy>p { font-size: .82rem; }
    .mm-home-actions { flex-direction: column; }
    .mm-home-actions a { width: 100%; }
    .mm-home-portrait { width: 100%; min-width: 0; min-height: 440px; }
    .mm-home-portrait img { width: 108%; height: 96%; }
    .mm-capabilities { width: 100%; grid-template-columns: 1fr; padding: 0; margin-top: 0; }
    .mm-capabilities>* { min-height: 74px; border: 1px solid var(--ui-line); border-radius: 0; }
    .mm-capabilities>*+* { border-top: 0; }
    .mm-capabilities article:first-child { border-radius: 15px 15px 0 0; }
    .mm-capabilities a { border-radius: 0 0 15px 15px; }
    .mm-manifesto-grid, .mm-home-services, .offer-method, .journal-head, .checkup-scope { grid-template-columns: 1fr; gap: 35px; }
    .mm-manifesto h2, .mm-home-services h2, .mm-selected-work h2, .mm-abilities h2 { font-size: clamp(1rem, 4.5vw, 1.35rem); }
    .mm-manifesto-grid>div:last-child { padding-top: 24px; }
    .mm-home-services header { position: static; }
    .mm-work-list { grid-template-columns: 1fr; }
    .mm-selected-work header { align-items: start; flex-direction: column; }
    .mm-ability-list { grid-template-columns: 1fr; }
    .mm-ability-list article { min-height: 190px; }
    .mm-abilities>footer { grid-template-columns: 1fr; }
    .mm-final-cta h2 { font-size: clamp(1rem, 4.4vw, 1.35rem); }

    .folio-intro, .offer-intro { padding-top: calc(var(--ui-header) + 58px); }
    .folio-intro h1, .offer-intro h1, .journal-head h1 { font-size: clamp(1rem, 4.3vw, 1.45rem); }
    .folio-intro-foot { grid-template-columns: 1fr; }
    .folio-intro-foot a { justify-self: start; }
    .folio-item { grid-template-columns: 30px 1fr; gap: 15px; }
    .folio-thumb, .folio-copy, .folio-open { grid-column: 2; }
    .folio-open b { display: inline; margin-right: 7px; }
    .offer-row { grid-template-columns: 30px 1fr; gap: 13px; }
    .offer-main, .offer-meta, .offer-row>a { grid-column: 2; justify-self: start; }
    .offer-method li { grid-template-columns: 32px 1fr; }
    .offer-method li p { grid-column: 2; }
    .journal-head { padding-top: calc(var(--ui-header) + 60px); }
    .journal-tools { align-items: stretch; flex-direction: column; }
    .journal-tools form { min-width: 0; }
    .journal-grid { grid-template-columns: 1fr; }
    .journal-card.journal-featured { grid-column: auto; display: block; padding-bottom: 38px; }
    .journal-featured .journal-copy h2 { font-size: 1.45rem; }
    .checkup-hero-grid { min-height: 0; grid-template-columns: 1fr; gap: 34px; padding-block: 45px 55px; }
    .checkup-copy h1 { font-size: clamp(1.1rem, 4.6vw, 1.55rem); }
    .checkup-box { padding: 19px; }
    .checkup-marquee { justify-content: start; }
    .checkup-scope-grid { grid-template-columns: 1fr; }
    .checkup-scope-grid article { min-height: 185px; }
    .checkup-scope-title h2 { font-size: clamp(1rem, 4.3vw, 1.3rem); }
    .checkup-reason blockquote { font-size: clamp(.92rem, 3.4vw, 1.12rem); }
    .ui-error-shell { grid-template-columns: 1fr; gap: 30px; }
    .ui-error-code { font-size: clamp(6rem, 36vw, 10rem); }
}

@media (max-width: 420px) {
    .ui-brand-copy strong { font-size: .72rem; }
    .mm-home-portrait { min-height: 380px; }
    .mm-home-portrait figcaption { right: 16px; bottom: 16px; }
    .mm-no-work, .folio-empty { padding: 35px 22px; }
}

/* --------------------------------------------------------------------------
   Liquid glass public experience
   -------------------------------------------------------------------------- */
:root {
    --ui-paper: #edf3f8;
    --ui-surface: rgba(255, 255, 255, .58);
    --ui-surface-soft: rgba(237, 244, 250, .7);
    --ui-line: rgba(255, 255, 255, .72);
    --ui-ink: #122033;
    --ui-ink-2: #26374d;
    --ui-muted: #64748a;
    --ui-blue: #315cff;
    --ui-blue-dark: #1d3db6;
    --ui-teal: #158f8c;
    --ui-glass: rgba(255, 255, 255, .55);
    --ui-glass-strong: rgba(255, 255, 255, .76);
    --ui-glass-dark: rgba(10, 23, 42, .72);
    --ui-glass-edge: rgba(255, 255, 255, .78);
    --ui-glass-shadow: 0 24px 70px rgba(35, 58, 91, .13), 0 2px 8px rgba(35, 58, 91, .06), inset 0 1px 0 rgba(255, 255, 255, .88);
    --ui-glass-shadow-hover: 0 30px 80px rgba(35, 58, 91, .18), 0 5px 15px rgba(35, 58, 91, .08), inset 0 1px 0 rgba(255, 255, 255, .94);
    --ui-glass-blur: blur(24px) saturate(145%);
    --ui-radius-sm: 14px;
    --ui-radius: 24px;
    --ui-radius-lg: 34px;
}

body.ui-page {
    position: relative;
    isolation: isolate;
    background:
        radial-gradient(circle at 8% 12%, rgba(120, 224, 210, .3), transparent 25rem),
        radial-gradient(circle at 90% 10%, rgba(120, 147, 255, .27), transparent 28rem),
        radial-gradient(circle at 75% 72%, rgba(198, 148, 255, .17), transparent 34rem),
        linear-gradient(145deg, #eef7f6 0%, #f2f5fb 45%, #e9f0f9 100%);
    background-attachment: fixed;
}

body.ui-page::before,
body.ui-page::after {
    position: fixed;
    z-index: -1;
    width: min(42vw, 560px);
    aspect-ratio: 1;
    border-radius: 50%;
    content: "";
    pointer-events: none;
    filter: blur(70px);
    opacity: .34;
}

body.ui-page::before { inset: 18% auto auto -14%; background: #75d8d1; }
body.ui-page::after { inset: auto -12% 8% auto; background: #8fa7ff; }

main { position: relative; z-index: 1; }

::selection { background: rgba(49, 92, 255, .24); color: var(--ui-ink); }

:where(.ui-link-icon, .ui-external-icon, .ui-top-icon, .ui-note-icon) {
    display: inline-block;
    width: 1.05rem;
    height: 1.05rem;
    flex: none;
    background: currentColor;
    vertical-align: -.18em;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
}

.ui-link-icon {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 1.7 5.3L19 10l-5.3 1.7L12 17l-1.7-5.3L5 10l5.3-1.7L12 3Z'/%3E%3Cpath d='m19 15 .7 2.3L22 18l-2.3.7L19 21l-.7-2.3L16 18l2.3-.7L19 15Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 1.7 5.3L19 10l-5.3 1.7L12 17l-1.7-5.3L5 10l5.3-1.7L12 3Z'/%3E%3Cpath d='m19 15 .7 2.3L22 18l-2.3.7L19 21l-.7-2.3L16 18l2.3-.7L19 15Z'/%3E%3C/svg%3E");
}

.ui-external-icon {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 5h5v5M19 5l-8 8'/%3E%3Cpath d='M19 14v4a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 5h5v5M19 5l-8 8'/%3E%3Cpath d='M19 14v4a1 1 0 0 1-1 1H6a1 1 0 0 1 1-1h4'/%3E%3C/svg%3E");
}

.ui-top-icon {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 19V5M6 11l6-6 6 6'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 19V5M6 11l6-6 6 6'/%3E%3C/svg%3E");
}

.ui-note-icon {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5M12 8h.01'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5M12 8h.01'/%3E%3C/svg%3E");
}

.ui-external-icon {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M9.5 14.5 7 17a4 4 0 0 1-5.7-5.7l3.2-3.2a4 4 0 0 1 5.7 0'/%3E%3Cpath d='M14.5 9.5 17 7a4 4 0 1 1 5.7 5.7l-3.2 3.2a4 4 0 0 1-5.7 0'/%3E%3Cpath d='m8.5 15.5 7-7'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M9.5 14.5 7 17a4 4 0 0 1-5.7-5.7l3.2-3.2a4 4 0 0 1 5.7 0'/%3E%3Cpath d='M14.5 9.5 17 7a4 4 0 1 1 5.7 5.7l-3.2 3.2a4 4 0 0 1-5.7 0'/%3E%3Cpath d='m8.5 15.5 7-7'/%3E%3C/svg%3E");
}

.ui-top-icon {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 11 8-6 8 6v9h-6v-6h-4v6H4v-9Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 11 8-6 8 6v9h-6v-6h-4v6H4v-9Z'/%3E%3C/svg%3E");
}

/* Floating navigation */
.ui-header {
    inset: 10px 0 auto;
    height: var(--ui-header);
    border: 0;
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.ui-header-inner {
    width: min(calc(100% - 2 * var(--ui-gutter)), 1380px);
    height: calc(var(--ui-header) - 10px);
    padding-inline: 12px;
    border: 1px solid var(--ui-glass-edge);
    border-radius: 24px;
    background: var(--ui-glass);
    box-shadow: 0 12px 42px rgba(31, 55, 86, .1), inset 0 1px 0 rgba(255, 255, 255, .9);
    backdrop-filter: var(--ui-glass-blur);
    -webkit-backdrop-filter: var(--ui-glass-blur);
}

.ui-has-scrolled .ui-header { border: 0; background: transparent; box-shadow: none; backdrop-filter: none; }
.ui-has-scrolled .ui-header-inner { background: rgba(255, 255, 255, .7); box-shadow: 0 16px 48px rgba(31, 55, 86, .14), inset 0 1px 0 #fff; }

.ui-brand-mark {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .72);
    background: linear-gradient(145deg, rgba(43, 91, 255, .96), rgba(115, 67, 225, .9) 60%, rgba(235, 92, 165, .92));
    box-shadow: 0 12px 28px rgba(67, 73, 192, .25), inset 0 1px 1px rgba(255, 255, 255, .55);
}

.ui-brand-mark::after {
    position: absolute;
    inset: 2px 3px 52% 3px;
    border-radius: 10px 10px 50% 50%;
    content: "";
    background: linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,0));
    pointer-events: none;
}

.ui-nav { border-color: rgba(255, 255, 255, .72); background: rgba(255, 255, 255, .38); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75); }
.ui-nav a { transition: color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease; }
.ui-nav a:hover { background: rgba(255, 255, 255, .55); transform: translateY(-1px); }
.ui-nav a.is-active { background: rgba(18, 32, 51, .92); box-shadow: 0 7px 18px rgba(18, 32, 51, .16), inset 0 1px 0 rgba(255,255,255,.22); }

.ui-header-cta,
.mm-home-actions a,
.mm-final-cta a,
.ui-footer-cta > a,
.checkup-box button,
.offer-row > a,
.journal-tools button {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .6);
    box-shadow: 0 12px 30px rgba(31, 55, 86, .13), inset 0 1px 0 rgba(255, 255, 255, .25);
}

:where(.ui-header-cta,.mm-home-actions a,.mm-final-cta a,.ui-footer-cta>a,.checkup-box button,.offer-row>a,.journal-tools button)::before {
    position: absolute;
    inset: 0 0 52%;
    border-radius: inherit;
    content: "";
    background: linear-gradient(180deg, rgba(255, 255, 255, .2), transparent);
    pointer-events: none;
}

.ui-menu-button { border-color: var(--ui-glass-edge); background: rgba(255, 255, 255, .48); box-shadow: inset 0 1px 0 rgba(255,255,255,.8); }

/* Home */
.mm-home { background: transparent; }
.mm-home-hero::before { height: 100%; background: radial-gradient(circle at 12% 10%, rgba(89, 216, 203, .24), transparent 32%), radial-gradient(circle at 88% 22%, rgba(88, 116, 255, .23), transparent 34%); }
.mm-home-hero-grid {
    border-color: var(--ui-glass-edge);
    background: rgba(255, 255, 255, .46);
    box-shadow: var(--ui-glass-shadow);
    backdrop-filter: var(--ui-glass-blur);
    -webkit-backdrop-filter: var(--ui-glass-blur);
}

.mm-home-copy { background: linear-gradient(145deg, rgba(255,255,255,.5), rgba(255,255,255,.16)); }
.mm-availability { border-color: rgba(255,255,255,.76); background: rgba(224, 250, 241, .58); box-shadow: inset 0 1px 0 #fff, 0 6px 20px rgba(19,122,87,.08); }
.mm-home-copy h1 { font-size: clamp(1.48rem, 2vw, 1.9rem); font-weight: 610; }
.mm-home-actions a { background: rgba(255,255,255,.62); }
.mm-home-actions a:first-child { background: linear-gradient(135deg, rgba(49,92,255,.96), rgba(100,69,221,.94)); }
.mm-home-portrait { background: linear-gradient(145deg, rgba(187, 209, 255, .86), rgba(177, 196, 255, .78) 48%, rgba(108, 206, 199, .82)); }
.mm-home-portrait::after { background: linear-gradient(transparent, rgba(14, 41, 71, .48)); }
.mm-home-portrait > b { background: rgba(255,255,255,.2); box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 12px 28px rgba(33,55,90,.14); }

.mm-capabilities { gap: 9px; padding-top: 12px; }
.mm-capabilities > * {
    border: 1px solid var(--ui-glass-edge);
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .5);
    box-shadow: 0 13px 34px rgba(35,58,91,.08), inset 0 1px 0 rgba(255,255,255,.85);
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
}
.mm-capabilities > * + * { border-right: 1px solid var(--ui-glass-edge); }
.mm-capabilities a { background: rgba(13, 31, 55, .88); }
.mm-capabilities small .ui-link-icon { margin-right: 4px; }

.mm-manifesto-grid > div:last-child,
.mm-home-services,
.mm-abilities { border-color: rgba(114, 137, 164, .18); }

.mm-home-services > div { display: grid; gap: 10px; border: 0; }
.mm-home-services article,
.mm-home-services > div > a,
.mm-ability-list article {
    border: 1px solid var(--ui-glass-edge);
    border-radius: 20px;
    background: rgba(255, 255, 255, .48);
    box-shadow: 0 15px 42px rgba(35,58,91,.08), inset 0 1px 0 rgba(255,255,255,.86);
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
}
.mm-home-services > div > a:hover,
.mm-ability-list article:hover { padding-inline: 18px; background: rgba(255,255,255,.72); box-shadow: var(--ui-glass-shadow-hover); transform: translateY(-2px); }
.mm-home-services > div > a > span { border-color: rgba(49,92,255,.17); background: rgba(49,92,255,.08); color: var(--ui-blue); }

.mm-selected-work {
    position: relative;
    background: linear-gradient(145deg, rgba(8, 22, 42, .96), rgba(20, 39, 67, .93));
}
.mm-selected-work::before { position: absolute; inset: 0; content: ""; background: radial-gradient(circle at 20% 10%, rgba(79,112,255,.24), transparent 35%), radial-gradient(circle at 90% 90%, rgba(34,187,168,.15), transparent 34%); pointer-events: none; }
.mm-selected-work .container { position: relative; }
.mm-work-list > a > div,
.mm-no-work { border: 1px solid rgba(255,255,255,.15); background: rgba(255,255,255,.07); box-shadow: 0 24px 60px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.12); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }

.mm-ability-list { gap: 10px; border: 0; }
.mm-ability-list article { border: 1px solid var(--ui-glass-edge); }
.mm-abilities > footer b { border-color: var(--ui-glass-edge); background: rgba(255,255,255,.48); box-shadow: inset 0 1px 0 rgba(255,255,255,.85); }

.mm-final-cta { background: linear-gradient(135deg, rgba(219,229,255,.78), rgba(213,244,239,.72)); }
.mm-final-cta .container { width: min(calc(100% - 2 * var(--ui-gutter)), 920px); padding: clamp(34px,5vw,62px); border: 1px solid var(--ui-glass-edge); border-radius: 30px; background: rgba(255,255,255,.48); box-shadow: var(--ui-glass-shadow); backdrop-filter: var(--ui-glass-blur); -webkit-backdrop-filter: var(--ui-glass-blur); }
.mm-final-cta h2 { font-size: clamp(1.2rem,1.8vw,1.65rem); }

/* Index pages */
.folio-index,
.offer-index,
.journal-index,
.checkup-page { background: transparent; }

.folio-intro,
.offer-intro,
.journal-head { position: relative; }

.folio-intro::before,
.offer-intro::before,
.journal-head::before {
    position: absolute;
    z-index: -1;
    inset: calc(var(--ui-header) + 35px) -28px 24px;
    border: 1px solid var(--ui-glass-edge);
    border-radius: 30px;
    content: "";
    background: rgba(255,255,255,.39);
    box-shadow: 0 20px 65px rgba(35,58,91,.08), inset 0 1px 0 rgba(255,255,255,.85);
    backdrop-filter: blur(20px) saturate(135%);
    -webkit-backdrop-filter: blur(20px) saturate(135%);
}

.folio-intro h1,
.offer-intro h1,
.journal-head h1 { font-size: clamp(1.45rem, 2.25vw, 2rem); font-weight: 610; }

.folio-intro-foot { border-color: rgba(111,135,164,.18); }
.folio-intro-foot a,
.folio-open,
.offer-row > a,
.journal-copy > b { display: inline-flex; align-items: center; gap: 8px; }

.folio-list { display: grid; gap: 15px; }
.folio-item {
    padding: 18px;
    border: 1px solid var(--ui-glass-edge) !important;
    border-radius: 24px;
    background: rgba(255,255,255,.48);
    box-shadow: 0 16px 44px rgba(35,58,91,.08), inset 0 1px 0 rgba(255,255,255,.88);
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
    transition: transform .24s ease, box-shadow .24s ease, background .24s ease;
}
.folio-item:hover { transform: translateY(-3px); background: rgba(255,255,255,.65); box-shadow: var(--ui-glass-shadow-hover); }
.folio-thumb { border: 1px solid rgba(255,255,255,.72); box-shadow: inset 0 1px 0 rgba(255,255,255,.7); }
.folio-copy h2 { font-size: clamp(1.12rem,1.7vw,1.55rem); }
.folio-open .ui-link-icon { color: var(--ui-blue); }
.folio-empty { border: 1px solid var(--ui-glass-edge); background: rgba(255,255,255,.42); box-shadow: var(--ui-glass-shadow); backdrop-filter: var(--ui-glass-blur); -webkit-backdrop-filter: var(--ui-glass-blur); }

.offer-list { display: grid; gap: 12px; }
.offer-row {
    padding: 24px;
    border: 1px solid var(--ui-glass-edge) !important;
    border-radius: 22px;
    background: rgba(255,255,255,.48);
    box-shadow: 0 15px 42px rgba(35,58,91,.075), inset 0 1px 0 rgba(255,255,255,.88);
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
}
.offer-row:hover { padding-inline: 30px; background: rgba(255,255,255,.68); box-shadow: var(--ui-glass-shadow-hover); }
.offer-row > a { border-color: var(--ui-glass-edge); background: rgba(255,255,255,.54); }
.offer-method { border: 1px solid var(--ui-glass-edge); border-radius: 28px; padding: clamp(32px,5vw,64px); margin-bottom: 90px; background: rgba(255,255,255,.43); box-shadow: var(--ui-glass-shadow); backdrop-filter: blur(20px) saturate(135%); -webkit-backdrop-filter: blur(20px) saturate(135%); }
.offer-method h2 { font-size: clamp(1.15rem,1.65vw,1.45rem); }
.offer-method ol { display: grid; gap: 8px; border: 0; }
.offer-method li { border: 1px solid rgba(255,255,255,.72); border-radius: 17px; background: rgba(255,255,255,.42); }

.journal-tools { padding: 12px; border: 1px solid var(--ui-glass-edge); border-radius: 20px; background: rgba(255,255,255,.46); box-shadow: 0 15px 42px rgba(35,58,91,.07), inset 0 1px 0 rgba(255,255,255,.82); backdrop-filter: blur(18px) saturate(135%); -webkit-backdrop-filter: blur(18px) saturate(135%); }
.journal-tools input { border-color: var(--ui-glass-edge); background: rgba(255,255,255,.63); box-shadow: inset 0 1px 2px rgba(30,55,88,.04); }
.journal-tools nav a { border: 1px solid transparent; }
.journal-tools nav a:hover { border-color: var(--ui-glass-edge); background: rgba(255,255,255,.55); }
.journal-tools nav a.active { border-color: rgba(255,255,255,.5); background: linear-gradient(135deg,#315cff,#7045dc); box-shadow: 0 8px 20px rgba(49,92,255,.2); }
.journal-grid { gap: 20px; }
.journal-card { padding: 16px; border: 1px solid var(--ui-glass-edge); border-radius: 24px; background: rgba(255,255,255,.46); box-shadow: 0 16px 44px rgba(35,58,91,.075), inset 0 1px 0 rgba(255,255,255,.86); backdrop-filter: blur(18px) saturate(135%); -webkit-backdrop-filter: blur(18px) saturate(135%); transition: transform .24s ease, box-shadow .24s ease, background .24s ease; }
.journal-card:hover { transform: translateY(-3px); background: rgba(255,255,255,.65); box-shadow: var(--ui-glass-shadow-hover); }
.journal-card.journal-featured { padding: 16px; border-bottom: 1px solid var(--ui-glass-edge); }
.journal-image { border: 1px solid rgba(255,255,255,.7); }
.journal-copy { padding: 16px 7px 5px; }
.journal-copy h2,.journal-featured .journal-copy h2 { font-size: clamp(1.1rem,1.8vw,1.55rem); }

/* Checkup */
.checkup-hero {
    margin: 0 var(--ui-gutter);
    padding-top: calc(var(--ui-header) + 35px);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 0 0 36px 36px;
    background: linear-gradient(145deg, rgba(8,22,42,.96), rgba(17,39,69,.92));
    box-shadow: 0 30px 80px rgba(17,38,68,.2), inset 0 1px 0 rgba(255,255,255,.15);
}
.checkup-hero::after { position: absolute; inset: 0; content: ""; pointer-events: none; background: radial-gradient(circle at 80% 20%, rgba(97,121,255,.28), transparent 35%), radial-gradient(circle at 15% 85%, rgba(47,206,190,.18), transparent 32%); }
.checkup-hero-grid,.checkup-marquee { position: relative; z-index: 1; }
.checkup-copy h1 { font-size: clamp(1.4rem,2.25vw,2rem); }
.checkup-box { border-color: rgba(255,255,255,.24); border-radius: 25px; background: rgba(255,255,255,.1); box-shadow: 0 28px 70px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.22); backdrop-filter: blur(26px) saturate(145%); -webkit-backdrop-filter: blur(26px) saturate(145%); }
.checkup-box input { border-color: rgba(255,255,255,.65); border-radius: 14px; background: rgba(255,255,255,.88); box-shadow: inset 0 2px 5px rgba(27,48,77,.08), 0 1px 0 rgba(255,255,255,.3); }
.checkup-box button { align-items: center; background: linear-gradient(135deg,#3d66ff,#7349df); }
.checkup-scope { align-items: start; }
.checkup-scope-grid { gap: 10px; border: 0; }
.checkup-scope-grid article { border: 1px solid var(--ui-glass-edge); border-radius: 21px; background: rgba(255,255,255,.48); box-shadow: 0 15px 40px rgba(35,58,91,.075), inset 0 1px 0 rgba(255,255,255,.86); backdrop-filter: blur(18px) saturate(135%); -webkit-backdrop-filter: blur(18px) saturate(135%); }
.checkup-scope-title h2 { font-size: clamp(1.12rem,1.55vw,1.4rem); }
.checkup-reason { margin: 0 var(--ui-gutter) 70px; border: 1px solid var(--ui-glass-edge); border-radius: 30px; background: rgba(216,230,255,.52); box-shadow: var(--ui-glass-shadow); backdrop-filter: blur(24px) saturate(140%); -webkit-backdrop-filter: blur(24px) saturate(140%); }
.checkup-reason blockquote { font-size: clamp(1.05rem,1.65vw,1.45rem); }

/* Footer glass */
.ui-footer { position: relative; margin: 0 var(--ui-gutter) var(--ui-gutter); overflow: hidden; border: 1px solid rgba(255,255,255,.17); border-radius: 34px; background: linear-gradient(145deg, rgba(8,22,42,.95), rgba(20,40,69,.91)); box-shadow: 0 30px 80px rgba(16,35,62,.2), inset 0 1px 0 rgba(255,255,255,.15); }
.ui-footer::before { position: absolute; inset: 0; content: ""; pointer-events: none; background: radial-gradient(circle at 15% 0, rgba(77,111,255,.22), transparent 35%), radial-gradient(circle at 90% 100%, rgba(28,191,171,.14), transparent 30%); }
.ui-footer > * { position: relative; }
.ui-footer-cta h2 { font-size: clamp(1.15rem,1.65vw,1.5rem); white-space: normal; }
.ui-footer-cta > a { align-items: center; background: rgba(76,104,255,.78); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.ui-footer-status a,.ui-footer-social a,.ui-footer-bottom a { display: inline-flex; align-items: center; gap: 7px; }

/* Glass fallback */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .ui-header-inner,
    .mm-home-hero-grid,
    .mm-capabilities > *,
    .mm-home-services article,
    .mm-home-services > div > a,
    .mm-ability-list article,
    .mm-final-cta .container,
    .folio-intro::before,
    .offer-intro::before,
    .journal-head::before,
    .folio-item,
    .offer-row,
    .offer-method,
    .journal-tools,
    .journal-card,
    .checkup-scope-grid article,
    .checkup-reason { background: #f7fafd; }
    .checkup-box { background: #1b2c48; }
}

@media (max-width: 1050px) {
    .ui-header-inner { grid-template-columns: 1fr auto; }
    .ui-nav { border: 1px solid var(--ui-glass-edge); background: rgba(248,251,255,.88); box-shadow: var(--ui-glass-shadow); backdrop-filter: blur(24px) saturate(145%); -webkit-backdrop-filter: blur(24px) saturate(145%); }
    .folio-intro::before,.offer-intro::before,.journal-head::before { inset-inline: -12px; }
}

@media (max-width: 760px) {
    body.ui-page::before,body.ui-page::after { width: 78vw; opacity: .25; }
    .ui-header { inset-block-start: 6px; }
    .ui-header-inner { width: calc(100% - 20px); height: calc(var(--ui-header) - 8px); padding-inline: 9px; border-radius: 19px; }
    .ui-nav { inset: calc(var(--ui-header) + 8px) 10px auto; border-radius: 20px; }

    .mm-home-hero { padding-top: calc(var(--ui-header) + 14px); }
    .mm-home-hero-grid { width: calc(100% - 20px); border: 1px solid var(--ui-glass-edge); border-radius: 26px; }
    .mm-home-copy { padding: 34px 21px 28px; }
    .mm-home-copy h1 { font-size: clamp(1.08rem,4.5vw,1.35rem); white-space: normal; }
    .mm-home-portrait { min-height: 390px; }
    .mm-capabilities { width: calc(100% - 20px); gap: 8px; padding: 10px 0 0; }
    .mm-capabilities > * { border: 1px solid var(--ui-glass-edge); border-radius: 17px !important; }
    .mm-capabilities > * + * { border-top: 1px solid var(--ui-glass-edge); }
    .mm-manifesto h2,.mm-home-services h2,.mm-selected-work h2,.mm-abilities h2,.mm-final-cta h2 { white-space: normal; }
    .mm-home-services > div { gap: 8px; }
    .mm-home-services article,.mm-home-services > div > a { border-radius: 18px; }
    .mm-ability-list { gap: 8px; }
    .mm-final-cta { padding-inline: 10px; }
    .mm-final-cta .container { width: 100%; padding: 32px 20px; border-radius: 24px; }

    .folio-intro::before,.offer-intro::before,.journal-head::before { inset: calc(var(--ui-header) + 22px) -7px 18px; border-radius: 24px; }
    .folio-intro h1,.offer-intro h1,.journal-head h1 { font-size: clamp(1.05rem,4.45vw,1.35rem); white-space: normal; }
    .folio-item,.offer-row,.journal-card { padding: 14px; border-radius: 19px; }
    .folio-item:hover,.offer-row:hover { padding-inline: 14px; }
    .folio-thumb,.journal-image { border-radius: 15px; }
    .offer-method { margin-inline: 10px; padding: 25px 18px; border-radius: 23px; }
    .offer-method h2 { white-space: normal; }
    .journal-tools { border-radius: 18px; }
    .journal-card.journal-featured { padding: 14px; }

    .checkup-hero { margin-inline: 10px; border-radius: 0 0 27px 27px; }
    .checkup-copy h1,.checkup-scope-title h2,.checkup-reason blockquote { white-space: normal; }
    .checkup-scope-grid { gap: 8px; }
    .checkup-scope-grid article { border-radius: 18px; }
    .checkup-reason { margin: 0 10px 50px; padding-block: 55px; border-radius: 24px; }

    .ui-footer { margin: 0 10px 10px; border-radius: 25px; }
    .ui-footer-cta { padding-top: 52px; }
}

@media (prefers-reduced-motion: reduce) {
    body.ui-page { background-attachment: scroll; }
    body.ui-page::before,body.ui-page::after { display: none; }
    :where(.folio-item,.offer-row,.journal-card,.mm-home-services>div>a,.mm-ability-list article):hover { transform: none; }
}
