@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Geist:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500&family=Instrument+Serif:ital@0;1&family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,600;12..96,700&display=swap');
:root{--bg:#f6f1e8;--ink:#291a29;--line:#d6c9d1;--accent:#652747;--button:#50203c;--button-text:#fff;--font:'DM Sans',sans-serif;--display:'Instrument Serif',Georgia,serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:1rem/1.6 var(--font)}a{color:inherit}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:4px;z-index:3;background:var(--bg);padding:.5rem}.shell{width:min(100% - 3rem,1240px);margin-inline:auto}.review{display:flex;justify-content:center;align-items:center;gap:1rem;padding:.6rem 1rem;background:#201b23;color:#fff;font-size:.78rem}.review nav,header nav{display:flex;gap:.65rem;align-items:center}.review a{padding:.25rem .65rem;text-decoration:none;border-radius:2rem}.review a[aria-current]{background:#fff;color:#201b23}.review a:focus-visible{outline-color:white}
header,footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.35rem 0;border-bottom:1px solid var(--line)}header nav{gap:1.4rem}header nav a{text-decoration:none;font-size:.9rem}header a:hover,.profile:hover{text-decoration:underline}.brand{text-decoration:none;font-weight:700;line-height:1.15}.brand span{display:block;font-size:.72rem;font-weight:500;margin-top:.35rem}
.hero{display:grid;grid-template-columns:1.18fr 1fr;align-items:center;gap:2rem;padding-block:4.5rem 5rem}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:400;letter-spacing:-.035em;line-height:.97}h1{font-size:clamp(3.8rem,7.45vw,8rem);margin-bottom:1.35rem}h2{font-size:clamp(2.8rem,5.2vw,5rem);margin-bottom:1.4rem}.intro{max-width:34ch;font-size:1.17rem;margin-bottom:1.8rem}.button{display:inline-flex;align-items:center;gap:1.3rem;padding:.8rem 1.1rem;background:var(--button);color:var(--button-text);text-decoration:none;font-weight:700;font-size:.9rem}.button:hover{filter:brightness(1.2)}
.art{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(300px,40vw,510px);background:linear-gradient(155deg,#eab6aa,#a45b76 53%,#372037)}.shape{position:absolute}.v0 .one,.v0 .two,.v0 .three{width:70%;aspect-ratio:.78;border-radius:50% 50% 0 0;transform:rotate(-33deg);background:linear-gradient(115deg,#f1c2a7,#a15470 55%,#492346);box-shadow:16px 20px 38px #39132866}.v0 .one{top:19%;left:28%}.v0 .two{top:39%;left:8%}.v0 .three{top:59%;left:-14%}
.services,.about{border-top:1px solid var(--line);padding-block:4rem}.services{display:grid;grid-template-columns:1fr 1.25fr;gap:3rem}.section-heading{max-width:26rem}.offerings article{padding:1.25rem 0;border-bottom:1px solid var(--line)}.offerings article:first-child{padding-top:0}h3{font-size:1.24rem;margin-bottom:.4rem}.offerings p{margin-bottom:.65rem}.offerings .output{font-size:.81rem;color:var(--accent);font-weight:700;margin-bottom:0}.about{display:grid;grid-template-columns:1fr 1.25fr;gap:3rem}.about p{max-width:58ch}.profile{font-weight:700;text-underline-offset:.3em}footer{border-top:1px solid var(--line);border-bottom:0;font-size:.82rem}
.v1{--bg:#111821;--ink:#f5f7f2;--line:#39464f;--accent:#dbf88c;--button:#dbf88c;--button-text:#111821;--font:Geist,sans-serif;--display:Geist,sans-serif}.v1 h1,.v1 h2{font-weight:600;letter-spacing:-.075em}.v1 h1{font-size:clamp(3.4rem,6.7vw,7rem)}.v1 .art{background:linear-gradient(#ffffff13 1px,transparent 1px),linear-gradient(90deg,#ffffff13 1px,transparent 1px),#182630;background-size:30px 30px;border:1px solid var(--line)}.v1 .shape{inset:19%;border:1px solid #dbf88c;transform:rotate(-26deg) skew(11deg);background:#dbf88c12}.v1 .two{inset:28%;transform:rotate(-26deg) skew(11deg) translate(16%,14%)}.v1 .three{inset:37%;background:#dbf88c;box-shadow:0 0 45px #dbf88c60}.v1 .services{display:block}.v1 .section-heading{max-width:42rem}.v1 .offerings{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.v1 .offerings article{padding:1.35rem;border-right:1px solid var(--line)}
.v2{--bg:#eee8ff;--ink:#221448;--line:#bfb1df;--accent:#522f9c;--button:#351c6f;--button-text:#fff;--font:'DM Sans',sans-serif;--display:'Bricolage Grotesque',sans-serif}.v2 .hero{grid-template-columns:.9fr 1.15fr}.v2 .hero-copy{grid-column:2;grid-row:1}.v2 .art{grid-column:1;grid-row:1;border-radius:49% 49% 3% 3%;background:radial-gradient(ellipse at 27% 15%,#fdf7ff,#ab86ed 49%,#473381 87%)}.v2 .shape{width:66%;aspect-ratio:1;border-radius:48% 52% 63% 37% / 48% 39% 61% 52%;box-shadow:15px 14px 36px #34136e6e;background:radial-gradient(circle at 30% 15%,#faf0ff,#b394f4 42%,#492d89 85%)}.v2 .one{left:15%;top:18%;transform:rotate(30deg)}.v2 .two{left:32%;top:45%;transform:rotate(-38deg)}.v2 .three{left:-19%;top:63%;transform:rotate(19deg)}.v2 h1,.v2 h2{font-weight:700;letter-spacing:-.065em}.v2 h1{font-size:clamp(3.3rem,6.4vw,6.8rem)}.v2 .button{border-radius:4rem;padding-inline:1.25rem}.v2 .services{grid-template-columns:1fr 1.45fr}.v2 .offerings article{padding:1.1rem 1.35rem;border:1px solid var(--line);border-radius:1rem;margin-bottom:.6rem;background:#f7f2ff}
@media(max-width:850px){.hero,.v2 .hero{gap:1.5rem}.v1 .offerings{grid-template-columns:repeat(2,1fr)}.services,.about,.v2 .services{gap:1.5rem}}
@media(max-width:660px){.shell{width:calc(100% - 2rem)}.review{flex-wrap:wrap;gap:.3rem}.hero,.v2 .hero,.services,.about,.v2 .services{grid-template-columns:1fr}.hero{padding-block:2.7rem}.v2 .hero-copy,.v2 .art{grid-column:auto;grid-row:auto}.art{min-height:260px}.services,.about{padding-block:2.7rem}.v1 .offerings{grid-template-columns:1fr}h1{font-size:clamp(3rem,12vw,4.6rem)}header nav{gap:.75rem}footer{align-items:flex-start}.v2 .art{max-width:380px;width:100%}}

.engagement,.workspace,.learning{padding-block:4rem;border-top:1px solid var(--line)}
.engagement{display:grid;grid-template-columns:1fr 1.25fr;gap:2rem;align-items:start}
.engagement .section-heading,.workspace .section-heading,.learning .section-heading{max-width:48rem}

.worksheet-note{font-size:.85rem;margin:.9rem 0}
button.button{border:0;cursor:pointer;font-family:inherit}button.button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.topic-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.5rem 0}
.topic-list article{border-top:1px solid var(--line);padding-top:.8rem}
.lesson{max-width:48rem}.lesson fieldset{border:0;padding:0;margin:0 0 1rem}.lesson label{display:block;margin:.45rem 0}.lesson input{accent-color:var(--accent)}#lesson-feedback:empty{display:none}#lesson-feedback{font-weight:700;margin:1rem 0 0}
.v2 .lesson{border-radius:1rem;background:#f7f2ff}.v2 .topic-list article{border:1px solid var(--line);padding:1rem;border-radius:1rem}
@media(max-width:660px){.engagement{grid-template-columns:1fr}.engagement,.workspace,.learning{padding-block:2.7rem}header nav{flex-wrap:wrap;justify-content:flex-end}}

.mia-intro .intro,.mia-bio{max-width:46ch}.mia-bio{margin-bottom:1rem}.story-link{display:inline-block;margin-top:1rem;text-underline-offset:.3em;font-size:.9rem}.mia-intro .profile{display:block;width:fit-content}
.challenge,.solution-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:2rem;border-top:1px solid var(--line);padding-block:3.6rem;align-items:start}
.challenge h2,.solution-intro h2{margin-bottom:0}.challenge p{max-width:52ch}.challenge ul{padding-left:1.15rem;margin-bottom:0}.challenge li+li{margin-top:.45rem}.solution-links{display:flex;align-items:flex-start;flex-direction:column;gap:.8rem}.solution-links .profile{width:fit-content}
.v1 .challenge ul{border-left:1px solid var(--accent);padding-left:1.6rem}.v2 .challenge>div:nth-child(2){background:#f7f2ff;border:1px solid var(--line);padding:1.35rem;border-radius:1rem}
@media(max-width:660px){.challenge,.solution-intro{grid-template-columns:1fr;gap:1rem;padding-block:2.7rem}}

.portrait img{position:absolute;inset:auto 5% 0;width:90%;height:96%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 18px #1b11252b)}
.v0 .portrait{background:linear-gradient(155deg,#f3d5bc,#a45b76 65%,#372037)}
.v1 .portrait .shape{opacity:.62}.v1 .portrait img{filter:drop-shadow(0 0 23px #dbf88c33)}
.v2 .portrait img{inset-inline:7%;width:86%;height:91%}.v2 .portrait .shape{opacity:.65}

.download-list{list-style:none;padding:0;margin:1.5rem 0 0;max-width:54rem}
.download-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 0;border-bottom:1px solid var(--line)}
.download-list li:first-child{border-top:1px solid var(--line)}.download-list h3{margin-bottom:.25rem}.download-list p{margin:0}.download-list a{flex:none}
.v1 .download-list li{padding-inline:1rem;border-inline:1px solid var(--line)}.v2 .download-list li{padding:1.1rem;border:1px solid var(--line);border-radius:1rem;background:#f7f2ff;margin-bottom:.65rem}
.advocacy-steps{padding-left:1.2rem;margin:1.4rem 0}.advocacy-steps li+li{margin-top:1rem}.advocacy-steps h3{font-size:1rem}.advocacy-steps h3 span{font-size:.76rem;color:var(--accent);font-weight:600;margin-left:.4rem}.advocacy-steps p{margin-bottom:0}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:660px){.download-list li{flex-direction:column;align-items:flex-start;gap:.5rem}.download-list a{display:inline-block;padding-block:.35rem}}

.accounting-band{border-top:1px solid var(--line);padding-block:2rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:2rem;align-items:start}
.accounting-theme{margin:0;max-width:38ch}.accounting-theme strong{color:var(--accent)}.accounting-quote{font-family:var(--display);font-size:clamp(1.55rem,3vw,2.5rem);line-height:1.15;margin:0 0 .65rem}.accounting-band a{font-size:.9rem}
@media(max-width:660px){.accounting-band{grid-template-columns:1fr;gap:.85rem}}

.editorial-quotes .accounting-quote{color:#762b53}
.quote-break{border-top:1px solid var(--line);padding-block:1.65rem}
.quote-break .accounting-quote{max-width:35ch;margin:0;padding-left:1rem;border-left:3px solid currentColor}
.quote-rose{color:#8a3b4b}.quote-teal{color:#255e59}.quote-lilac{color:#50318d}.quote-orchid{color:#8a2e78}
.quote-ticker .accounting-quote{color:#dbf88c;font-size:clamp(1.25rem,2.6vw,2rem);min-height:3.5em}

.ticker-controls{display:flex;align-items:center;gap:.4rem;margin:0 0 .85rem}.ticker-controls[hidden]{display:none}
.ticker-controls button{color:var(--ink);background:transparent;border:1px solid #8292a0;padding:.4rem .65rem;min-height:2.75rem;min-width:2.75rem;font:inherit;cursor:pointer}.ticker-controls button:hover{border-color:var(--accent)}.ticker-controls button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.ticker-enter{animation:ticker-in .35s ease-out both}@keyframes ticker-in{from{opacity:0;transform:translateY(.45rem)}to{opacity:1;transform:translateY(0)}}
.quote-wall{grid-template-columns:1fr}.quote-wall .accounting-theme{max-width:58ch}.quote-wall>.profile{width:fit-content}
.wallpaper{display:grid;align-content:center;gap:1.5rem;min-height:clamp(15rem,34vw,24rem);padding:clamp(1.25rem,5vw,4rem);background:radial-gradient(ellipse at 95% 0%,#dab7ff,transparent 60%),linear-gradient(135deg,#f8efff,#c8b6ef);border-radius:1.4rem}
.wallpaper .accounting-quote{max-width:25ch;color:#32105d;font-size:clamp(2rem,5.3vw,4.5rem);font-weight:700;letter-spacing:-.05em;margin:0}.wallpaper-caption{max-width:32ch;color:#5c2c6f;margin:0;font-size:clamp(1rem,2.3vw,1.4rem)}
@media(prefers-reduced-motion:reduce){.ticker-enter{animation:none}}

.ticker-position{margin-left:.3rem;color:#dbf88c;font:500 .75rem/1.4 "IBM Plex Mono",monospace}

.rule-quote{margin:0}.rule-quote blockquote p{margin:0}.rule-quote figcaption{font:600 .85rem/1.45 var(--font);margin:.45rem 0 0;color:var(--ink)}
.accounting-band .rule-quote{margin-bottom:.65rem}.quote-break .rule-quote figcaption{margin-left:1.2rem}.wallpaper .rule-quote{margin:0}.wallpaper .rule-quote figcaption{color:#452268}

.rule-quote figcaption .rule-author:not(:first-child)::before{content:" · "}
.accounting-band .accounting-theme{margin:0}.desk-byline{font-weight:600}
