/* Useful page-progress control, paired with the existing article navigation dock. */
body .motion-indicator{display:flex!important;pointer-events:auto;cursor:pointer;width:104px;border:1px solid #18181824;padding:7px 12px;gap:10px;letter-spacing:.05em}
.motion-indicator .ms-top-ring{position:relative;display:grid;place-items:center;width:32px;height:32px;flex-shrink:0}
.ms-top-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.ms-top-track{stroke:#d9d9d2}.ms-top-fill{stroke:#304cf4;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--page-progress,0)*100)}
.motion-indicator .rotating-star{font-size:17px}.motion-indicator:hover{background:#ededeb;color:#181818}.motion-indicator:focus-visible{outline:3px solid #304cf4;outline-offset:4px}
.motion-indicator:not(.is-visible){pointer-events:none}
/* Post and project headers use deliberate summaries rather than the full content as a teaser. */
body.single .article-head h1{font-size:clamp(44px,6vw,88px);line-height:1.02;letter-spacing:-.065em;max-width:24ch}
body.single .article-head .lede{font:400 clamp(17px,1.7vw,22px)/1.6 var(--body);max-width:66ch;margin-top:22px}
.single-ms_project .article-head .wp-block-post-date{display:none}
.prose .case-statement{font:600 clamp(30px,3.1vw,48px)/1.12 var(--sans);letter-spacing:-.055em;padding:0;margin:0 0 28px;max-width:22ch}
.studio-case-body{max-width:none}.studio-case-body h2{font-size:clamp(30px,3vw,44px);line-height:1.13;letter-spacing:-.05em;margin:48px 0 20px}
.studio-case-body p{font-size:18px;line-height:1.75}.studio-case-body ul{padding-left:22px;line-height:1.75}
.studio-case-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border-block:1px solid #18181830;padding-block:24px;margin:32px 0}
.studio-case-facts p{font-size:14px;line-height:1.5}.studio-case-facts strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.studio-case-body figure{margin-block:30px}.studio-case-body figure img{height:auto}
.prose pre,.prose .wp-block-code{overflow-x:auto;max-width:100%;font-size:14px;line-height:1.65;white-space:pre}
.prose .wp-block-table{overflow-x:auto;max-width:100%}.prose p,.prose li{overflow-wrap:anywhere}
.studio-resource-links{border-top:1px solid #18181830;padding-top:28px;margin-top:32px}.studio-resource-links a{text-decoration:underline;text-underline-offset:.2em}
.studio-author-note{border-top:1px solid #18181830;padding-top:24px;margin-top:36px;font-size:14px;color:#686862}
/* A full-height, core Navigation dialog with a distinct conversation action. */
@media(max-width:1100px){
 body .top .wp-block-navigation__responsive-container-open{display:flex!important}
 body .top .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
 .top .wp-block-navigation__responsive-container-open svg{display:none}
 .top .wp-block-navigation__responsive-container-open::after{content:'Menu +';font:700 12px var(--body);white-space:nowrap}
 .top .mobile-cta{display:block;margin-left:auto}.top .mobile-cta a{font:700 11px var(--body);padding:11px;border:1px solid currentColor;white-space:nowrap}
 body .top .wp-block-navigation__responsive-container.is-menu-open{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:none!important;padding:calc(var(--wp-admin--admin-bar--height,0px) + 112px) 7vw 36px!important;background:#304cf4!important;color:white!important;overflow-y:auto!important;z-index:100000}
 .top .is-menu-open .wp-block-navigation__responsive-dialog{display:flex;flex-direction:column;min-height:100%;width:100%}
 body .top .is-menu-open .wp-block-navigation__responsive-container-content{display:flex;flex:1;align-items:stretch!important;padding:0!important;width:100%}
 body .top .is-menu-open .wp-block-navigation__container{display:flex!important;flex:1;flex-direction:column;align-items:stretch!important;justify-content:flex-start!important;gap:25px!important;width:100%;min-height:100%}
 body .top .is-menu-open .wp-block-navigation-item{width:100%;font:500 clamp(34px,6vw,62px)/1.08 var(--sans)!important;letter-spacing:-.05em}
 body .top .is-menu-open .wp-block-navigation-item a{width:100%;color:white}
 body .top .is-menu-open .wp-block-navigation-item.nav-cta{margin-top:auto!important;padding-top:40px!important;border:0!important}
 body .top .is-menu-open .wp-block-navigation-item.nav-cta>a{display:flex!important;justify-content:space-between;align-items:center;max-width:540px;padding:18px 22px!important;border:1px solid white!important;background:white!important;color:#304cf4!important;font:700 16px/1.4 var(--body)!important;letter-spacing:0}
 .top .is-menu-open .nav-cta>a::after{content:'↗';font-size:22px;margin-left:25px}
 body .top .wp-block-navigation__responsive-container-close{position:fixed;top:calc(var(--wp-admin--admin-bar--height,0px) + 26px);right:7vw;width:44px;height:44px;padding:10px;border:1px solid #ffffff80;border-radius:0;color:white;background:transparent;z-index:100003}
 body:has(.top .is-menu-open) .top .wordmark{position:fixed;left:7vw;top:calc(var(--wp-admin--admin-bar--height,0px) + 31px);z-index:100002;color:white;font-size:30px}
 body:has(.top .is-menu-open) .top>.mobile-cta{display:none}
}
@media(max-width:700px){
 body .motion-indicator{width:48px;height:48px;min-width:48px;right:16px;bottom:16px;padding:7px;gap:0}
 .motion-indicator .ms-top-label{display:none}
 body:has(.ms-reading-dock.is-visible) .motion-indicator{bottom:86px}
 .studio-case-facts{grid-template-columns:1fr;gap:18px}.studio-case-body p{font-size:16px}
 body.single .article-head h1{font-size:clamp(40px,10vw,66px)}
}
@media(prefers-reduced-motion:reduce){body .motion-indicator{display:flex!important;transition:none}.motion-indicator.is-visible{transform:none}}

.prose :is(.mzt,.mzc) .statement{padding:0;min-height:0;height:auto;margin:28px 0;font-size:clamp(30px,3.1vw,48px);line-height:1.12}
.article-main{min-width:0}.article-main .prose{max-width:none}.article-main .studio-author-note{max-width:70ch;line-height:1.7}
.studio-footer-legal{display:flex;gap:18px;flex-wrap:wrap}.studio-footer-baseline{flex-wrap:wrap}

.studio-hero-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.studio-hero-actions .btn{margin:0}
.studio-section-content>.wp-block-list{padding-left:22px;line-height:1.8}.studio-section-content>.wp-block-list li+li{margin-top:12px}
.studio-section-content .studio-card-grid{margin-top:0}.studio-service-card h3 a{color:inherit;text-decoration:none}.studio-service-card h3 a:hover{color:#304cf4}

@media(max-width:1100px){
 body .top .wp-block-navigation__responsive-container.is-menu-open{display:flex!important;flex-direction:column}
 body .top .is-menu-open .wp-block-navigation__responsive-close{display:flex;flex:1;width:100%;max-width:none;margin:0}
 body .top .is-menu-open .wp-block-navigation__responsive-dialog{flex:1;min-height:0}
 body .top .is-menu-open .wp-block-navigation-item:not(.nav-cta)>a{font:inherit!important;letter-spacing:inherit}
}

/* Old palette classes must not turn dark buttons into blue-on-black links. */
body .prose a.wp-block-button__link.wp-element-button{color:#fafaf8!important;background:#181818!important;border:1px solid #181818!important;border-radius:0!important;padding:16px 20px!important;text-decoration:none}
body .prose a.wp-block-button__link.wp-element-button:is(:hover,:focus-visible){background:#304cf4!important;border-color:#304cf4!important;color:#fff!important}
body :is(.dark,.studio-service-closing,.has-contrast-background-color) .prose a.wp-block-button__link.wp-element-button{background:transparent!important;border-color:#fafaf8!important}
.studio-skills{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 45px}.studio-skills .studio-skill{margin:0!important;padding:8px 12px;border:1px solid #18181840;font:500 14px/1.5 var(--body)}
.studio-resume-contact{display:flex;gap:20px;flex-wrap:wrap;margin:24px 0 36px}.studio-resume-contact p{margin:0!important}
.studio-resume-portrait{max-width:340px;margin:26px 0!important}.studio-resume-portrait img{aspect-ratio:1;object-fit:cover;filter:grayscale(1)}
