:root{--purple: #51399b;--purple-deep: #2e1f63;--pink: #fa74af;--lime: #b6f74d;--coral: #ff8578;--ink: #160b1f;--muted: #5b5266;--line: #e9e4ef;--soft: #f7f4fb;--white: #ffffff;--display: "Bricolage Grotesque", system-ui, sans-serif;--body: "Inter", system-ui, sans-serif;--wrap: 1180px;--gutter: clamp(16px, 4vw, 40px);--radius: 22px;--shadow: 0 1px 2px rgb(22 11 31 / 6%), 0 12px 32px -12px rgb(81 57 155 / 22%)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}body{margin:0;background:var(--white);color:var(--ink);font:400 1.0625rem/1.65 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}img,video,iframe{display:block;max-width:100%}img{height:auto}a{color:inherit}:focus-visible{outline:3px solid var(--purple);outline-offset:3px;border-radius:6px}h1,h2,h3,h4{font-family:var(--display);line-height:1.04;letter-spacing:-.02em;margin:0 0 .5em;font-weight:800;text-wrap:balance}h1{font-size:clamp(2.5rem,7vw,5.25rem)}h2{font-size:clamp(2rem,4.6vw,3.5rem)}h3{font-size:clamp(1.25rem,2vw,1.5rem);letter-spacing:-.01em}p{margin:0 0 1em;text-wrap:pretty}.wrap{width:min(100% - 2 * var(--gutter),var(--wrap));margin-inline:auto}.narrow{width:min(100% - 2 * var(--gutter),720px);margin-inline:auto}.section{padding-block:clamp(56px,9vw,112px)}.section+.section{padding-top:0}.lead{font-size:clamp(1.125rem,1.6vw,1.3rem);color:var(--muted);max-width:62ch}.muted{color:var(--muted)}.center{text-align:center}.center .lead{margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.title{margin-bottom:clamp(24px,4vw,44px)}.title h2 span,.title h1 span{display:block}.title h2 span+span,.title h1 span+span{color:var(--purple)}.title .lead{margin-top:.75rem}.mark{background:linear-gradient(transparent 58%,var(--lime) 58%,var(--lime) 92%,transparent 92%);padding-inline:.08em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;padding:.75em 1.4em;border-radius:999px;border:2px solid var(--ink);font:700 1rem/1 var(--body);text-decoration:none;cursor:pointer;background:var(--ink);color:var(--white);transition:transform .15s ease,background .15s ease,color .15s ease}.btn:hover{transform:translateY(-2px);background:var(--purple);border-color:var(--purple)}.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:var(--white);border-color:var(--ink)}.btn.lime{background:var(--lime);color:var(--ink);border-color:var(--ink)}.btn.lime:hover{background:var(--ink);color:var(--lime)}.actions{display:flex;flex-wrap:wrap;gap:12px}.link{font-weight:700;text-decoration:none;border-bottom:2px solid var(--pink)}.link:hover{color:var(--purple);border-color:var(--purple)}.tag{display:inline-block;padding:.3em .8em;border-radius:999px;font:700 .75rem/1.2 var(--body);letter-spacing:.02em;background:var(--soft);color:var(--purple)}.tone-lime{--tone: var(--lime)}.tone-pink{--tone: var(--pink)}.tone-purple{--tone: #c9b8ff}.tone-coral{--tone: var(--coral)}.grid{display:grid;gap:clamp(16px,2.4vw,28px)}@media(min-width:640px){.grid.two,.grid.three,.grid.four{grid-template-columns:repeat(2,1fr)}}@media(min-width:960px){.grid.three{grid-template-columns:repeat(3,1fr)}.grid.four{grid-template-columns:repeat(4,1fr)}}.card{position:relative;display:flex;flex-direction:column;border-radius:var(--radius);background:var(--white);border:1px solid var(--line);overflow:hidden;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}a.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card .media{aspect-ratio:4 / 3;background:var(--soft);overflow:hidden}.card .media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}a.card:hover .media img{transform:scale(1.04)}.card .body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:8px;flex:1}.card h3{margin:0}.card p{margin:0;color:var(--muted);font-size:.975rem}.person{text-align:left}.person img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius);background:var(--soft)}.person h3{margin:14px 0 2px;font-size:1.15rem}.person .role{color:var(--purple);font-weight:700;font-size:.9rem;margin:0 0 6px}.person p{color:var(--muted);font-size:.95rem;margin:0}.quote{margin:0;padding:clamp(24px,4vw,44px);border-radius:var(--radius);background:var(--soft);border-left:6px solid var(--pink)}.quote p{font:700 clamp(1.2rem,2.2vw,1.6rem)/1.35 var(--display);letter-spacing:-.01em;margin:0 0 12px}.quote cite{font-style:normal;color:var(--purple);font-weight:700}.gallery{display:grid;grid-auto-flow:column;grid-auto-columns:78%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin}.gallery>*{scroll-snap-align:start}.gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:16px;background:var(--soft)}@media(min-width:720px){.gallery{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);overflow:visible}}@media(min-width:1100px){.gallery.dense{grid-template-columns:repeat(4,1fr)}}.page-hero{padding-block:clamp(40px,8vw,96px) clamp(32px,5vw,56px)}.page-hero .lead{margin-top:1rem}.split{display:grid;gap:clamp(28px,5vw,64px);align-items:center}@media(min-width:900px){.split{grid-template-columns:1.1fr .9fr}.split.flip>:first-child{order:2}}.split img.feature{width:100%;border-radius:var(--radius)}.prose{font-size:1.125rem;line-height:1.75}.prose h2{font-size:clamp(1.6rem,3vw,2.1rem);margin-top:1.8em}.prose h3{margin-top:1.6em}.prose img{border-radius:16px;margin-block:1.6em;width:100%}.prose a{color:var(--purple);text-decoration-thickness:2px;text-underline-offset:3px}.prose blockquote{margin:1.6em 0;padding-left:1.2em;border-left:4px solid var(--pink);font-style:italic;color:var(--muted)}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin-bottom:.4em}.field{display:grid;gap:6px;margin-bottom:16px}.field label{font-weight:700;font-size:.95rem}.field input,.field textarea,.field select{width:100%;min-height:50px;padding:12px 16px;border:2px solid var(--line);border-radius:14px;font:inherit;background:var(--white);color:var(--ink)}.field input:focus,.field textarea:focus{outline:none;border-color:var(--purple)}.js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.js [data-reveal].in{opacity:1;transform:none}
