/* Public pages share the current homepage's white canvas, Geist type and blue
   actions. Loaded after legacy content CSS; product workspace styles stay isolated. */
body:not(.in-app) .public-site-header{box-sizing:border-box;display:flex;position:sticky;top:0;z-index:40;align-items:center;height:76px;min-height:76px;padding:0 max(28px,calc((100vw - 1264px)/2));gap:32px;background:#fff;border-bottom:1px solid var(--mh-line);font-family:var(--mh-font)}
body:not(.in-app) .public-site-header .brand{display:flex;align-items:center;gap:8px;font:700 23px/1 var(--mh-font);letter-spacing:-.06em;text-decoration:none;color:var(--mh-ink)}
.public-site-header .brand-mark{width:30px;height:30px}
body:not(.in-app) .public-site-header nav{display:flex;align-items:center;gap:26px}
body:not(.in-app) .public-site-header :is(nav a,.nav-signin,.nav-dashboard){display:flex;align-items:center;min-height:44px;font:500 14px/1.5 var(--mh-font);color:var(--mh-muted);text-decoration:none;white-space:nowrap}
body:not(.in-app) .public-site-header .header-actions{display:flex;align-items:center;gap:18px;margin-left:auto}
body:not(.in-app) .public-site-header .nav-dashboard{padding:11px 17px;border:1px solid var(--mh-blue);border-radius:8px;background:var(--mh-blue);color:#fff;font-weight:600}
body:not(.signed-in) .public-site-header .nav-dashboard{display:none}
body.signed-in .public-site-header :is(.nav-signin,.public-site-cta){display:none}
body:not(.in-app) .public-site-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:11px 17px;border:1px solid var(--mh-blue);border-radius:8px;background:var(--mh-blue);color:#fff;font:600 14px/1.4 var(--mh-font);text-decoration:none;white-space:nowrap}
.public-site-cta:hover{background:var(--mh-blue-hover)}
body:not(.in-app) .public-site-menu{top:76px;background:#fff;color:var(--mh-ink);border-color:var(--mh-line);font-family:var(--mh-font)}
body:not(.in-app) .public-site-menu a{font-family:var(--mh-font);font-size:16px;text-decoration:none}
body:not(.in-app) > .public-site-footer{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(140px,1fr));align-items:start;gap:48px;padding:64px max(28px,calc((100vw - 1264px)/2));border-top:1px solid var(--mh-line);background:#fff;color:var(--mh-ink);font-family:var(--mh-font)}
.public-site-footer .brand{display:inline-flex;align-items:center;gap:8px;font:700 23px/1 var(--mh-font);letter-spacing:-.06em;color:var(--mh-ink);text-decoration:none}
body:not(.in-app) .public-site-footer :is(p,small){max-width:230px;color:var(--mh-muted);font:400 14px/1.65 var(--mh-font)}
.public-site-footer small{display:block;margin-top:24px}
.public-site-footer .footer-col{display:grid;gap:8px;justify-items:start}
body:not(.in-app) .public-site-footer h4{margin:0 0 8px;color:var(--mh-ink);font:600 14px/1.5 var(--mh-font);letter-spacing:0;text-transform:none}
body:not(.in-app) .public-site-footer :is(.footer-col a,.footer-col button){display:inline-flex;align-items:center;min-height:32px;padding:0;border:0;background:none;color:var(--mh-muted);font:400 14px/1.5 var(--mh-font);text-decoration:none;text-align:left;cursor:pointer}
.public-site-footer :is(a,button):hover{color:var(--mh-blue);text-decoration:underline;text-underline-offset:4px}
:is(.public-site-header,.public-site-footer,.public-site-menu) :is(a,button):focus-visible{outline:3px solid var(--mh-blue);outline-offset:4px;border-radius:4px}
body[data-public-page]{font:400 16px/1.7 var(--mh-font);background:#fff;color:var(--mh-ink);--pad:max(28px,calc((100vw - 1264px)/2))}
/* Some static reports load editorial.css inside the body. Keep legacy token
   declarations from switching their headings back to a different family. */
body[data-public-page],body.public-edition[data-public-page]{--sans:var(--mh-font);--display:var(--mh-font);font-family:var(--mh-font)}
body[data-public-page] :is(h1,h2,h3,h4,p,a,button,summary,label,select,input){font-family:var(--mh-font)}
body[data-public-page] :is(h1,h2,h3,h4){color:var(--mh-ink);font-style:normal;letter-spacing:-.04em}
body[data-public-page] :is(h1,h2,h3) em{font-family:inherit;font-style:normal;color:var(--mh-blue)}
body[data-public-page] .editorial-hero{min-height:0;padding:72px var(--pad);background:#fff;border-color:var(--mh-line)}
body[data-public-page] :is(.editorial-hero h1,.article-header h1,.method-intro h1,.legal-page h1){margin:18px 0 24px;max-width:1000px;font-size:clamp(36px,4.5vw,60px);line-height:1.1;font-weight:650;letter-spacing:-.05em}
body[data-public-page] :is(.editorial-hero>p,.article-header>p,.method-intro>p,.legal-page>p){font-size:18px;line-height:1.7;color:var(--mh-muted)}
body[data-public-page] :is(.editorial-hero>span,.article-header>span,.section-kicker,.blog-card>div span,.related>span,.newsletter-cta span,.faq-group header span){font:600 13px/1.5 var(--mh-font);letter-spacing:.02em;text-transform:none;color:var(--mh-blue)}
body[data-public-page] .article-header{padding:64px var(--pad);border-color:var(--mh-line)}
body[data-public-page] .article-header>div{font:400 13px/1.5 var(--mh-font);color:var(--mh-muted)}
body[data-public-page] .breadcrumbs{font:400 14px/1.5 var(--mh-font);border-color:var(--mh-line)}
body[data-public-page] .blog-grid{gap:24px;background:#fff;padding:48px var(--pad) 80px}
body[data-public-page] .blog-card{min-height:300px;padding:32px;border:1px solid var(--mh-line);border-radius:12px;background:#fff}
body[data-public-page] .blog-card.featured{min-height:0;background:var(--mh-surface)}
body[data-public-page] .blog-card h2{font-size:clamp(24px,2.5vw,36px);line-height:1.18;margin:24px 0 16px}
body[data-public-page] .blog-card :is(p,small){font:400 15px/1.65 var(--mh-font);color:var(--mh-muted)}
body[data-public-page] :is(.article-content p,.article-content li,.legal-page article p,.legal-page article li){font-size:16px;line-height:1.8;color:var(--mh-muted)}
body[data-public-page] :is(.newsletter-cta,.article-callout,.faq-start-options>div){border:1px solid var(--mh-line);border-radius:12px;background:var(--mh-surface);color:var(--mh-ink)}
body[data-public-page] .newsletter-cta h2{font-size:36px;line-height:1.15}
body[data-public-page] .newsletter-cta>a{background:var(--mh-blue);color:#fff;border-radius:8px;font-size:15px}
body[data-public-page] .legal-page{max-width:1000px;margin:0 auto;padding:72px 28px 88px}
body[data-public-page] .legal-page article{margin-top:40px;border-color:var(--mh-line)}
body[data-public-page] .method-section{padding:72px var(--pad)}
body[data-public-page] .method-steps article{border-color:var(--mh-line)}
@media(min-width:1101px){.public-site-header .menu-toggle{display:none}}
@media(max-width:1100px){body:not(.in-app) .public-site-header nav,body:not(.in-app) .public-site-header .nav-signin{display:none}.public-site-header .menu-toggle{display:flex}body:not(.in-app) > .public-site-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}
@media(max-width:600px){body:not(.in-app) .public-site-header{padding-inline:20px;gap:12px}.public-site-header .header-actions{gap:10px!important}.public-site-header .public-site-cta{display:none!important}body:not(.in-app) > .public-site-footer{padding:40px 20px;gap:28px 20px}.public-site-footer .footer-brand-col{grid-column:1/-1}body[data-public-page]{--pad:20px}body[data-public-page] :is(.editorial-hero,.article-header){padding-block:44px}body[data-public-page] .blog-grid{grid-template-columns:1fr}.public-site-footer .footer-col :is(a,button){min-height:44px}body[data-public-page] .newsletter-cta{display:grid;gap:20px;padding:24px}}
