:root{--paper: #f4ecdb;--paper-soft: #ebe1c8;--paper-deep: #d6c8a2;--paper-warm: #faf3e2;--night: #1f1a3a;--night-soft: #2a2548;--night-deepest:#0f0c20;--purple: #3e2466;--purple-soft: #5a3a86;--purple-bright: #7a52a8;--purple-deep: #2a1647;--amethyst: #4a3e6a;--amethyst-soft: #6e5e8e;--amethyst-mute: #8b7fa1;--gold: #b58c4a;--gold-bright: #d4ab68;--gold-soft: #e6c89a;--gold-deep: #7b5e2d;--brass: #7b6a3e;--brass-soft: #9c8a58;--brass-deep: #4f4327;--ink: var(--night);--ink-soft: var(--night-soft);--ink-mute: var(--amethyst-mute);--accent: var(--purple);--accent-dark: var(--purple-deep);--mcu-moss-100: var(--purple-soft);--mcu-moss-300: var(--purple);--mcu-moss-500: var(--purple-deep);--mcu-moss-700: var(--night);--mcu-moss-900: var(--night-deepest);--mcu-manx-100: var(--gold-soft);--mcu-manx-500: var(--gold);--mcu-manx-700: var(--gold-deep);--mcu-gold-500: var(--gold);--mcu-parchment: var(--paper);--mcu-parchment-soft: var(--paper-soft);--mcu-parchment-deep: var(--paper-deep);--mcu-ink: var(--night);--mcu-ink-soft: var(--night-soft);--mcu-ink-mute: var(--amethyst-mute);--hair: color-mix(in oklab, var(--night) 12%, transparent);--hair-deep: color-mix(in oklab, var(--night) 26%, transparent);--hair-paper: color-mix(in oklab, var(--paper) 22%, transparent);--hair-gold: color-mix(in oklab, var(--gold) 42%, transparent);--ff-display: "Bodoni Moda", "Playfair Display", "Didot", "Bodoni 72", Georgia, serif;--ff-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ff-mono: "JetBrains Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--wrap: 1240px;--gutter: 28px;--radius: 2px;--shadow-soft: 0 1px 2px rgba(31, 26, 58, .06), 0 10px 28px -10px rgba(31, 26, 58, .22);--shadow-lift: 0 2px 6px rgba(31, 26, 58, .1), 0 24px 48px -18px rgba(31, 26, 58, .3);--shadow-night: 0 4px 18px -6px rgba(15, 12, 32, .55)}*{box-sizing:border-box}html{overflow-x:hidden;scroll-behavior:smooth}html,body{margin:0;padding:0}body{background:var(--paper);background-image:radial-gradient(ellipse 65% 45% at 0% 0%,color-mix(in oklab,var(--purple) 10%,transparent) 0%,transparent 70%),radial-gradient(ellipse 55% 42% at 100% 100%,color-mix(in oklab,var(--gold) 12%,transparent) 0%,transparent 70%);color:var(--night);font-family:var(--ff-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:var(--night);text-decoration:none}a:hover{color:var(--purple)}a:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}h1,h2,h3,h4{font-family:var(--ff-display);font-weight:500;color:var(--night);letter-spacing:-.005em;line-height:1.1;margin:0}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}.section{padding:clamp(56px,8vw,96px) 0;position:relative}.bg-ink{background:var(--night);color:var(--paper)}.bg-ink h1,.bg-ink h2,.bg-ink h3,.bg-ink h4{color:var(--paper)}.bg-night{background:var(--night-deepest);color:var(--paper)}.bg-night h1,.bg-night h2,.bg-night h3,.bg-night h4{color:var(--paper)}.bg-purple{background:var(--purple-deep);color:var(--paper)}.bg-purple h1,.bg-purple h2,.bg-purple h3,.bg-purple h4{color:var(--paper)}.bg-soft{background:var(--paper-soft)}.eyebrow{font-family:var(--ff-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--amethyst-mute);font-weight:600}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;background:var(--night);color:var(--paper);border-radius:var(--radius);font-weight:600;font-size:13.5px;letter-spacing:.04em;border:1px solid var(--night);cursor:pointer;transition:background .18s ease,transform .18s ease,color .18s ease;text-decoration:none;text-transform:uppercase}.btn-primary:hover{background:var(--purple-deep);color:var(--gold-soft);border-color:var(--purple-deep);transform:translateY(-1px)}.btn-primary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.btn-gold{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;background:var(--gold);color:var(--night);border-radius:var(--radius);font-weight:700;font-size:13.5px;letter-spacing:.04em;border:1px solid var(--gold);cursor:pointer;transition:background .18s ease,transform .18s ease;text-decoration:none;text-transform:uppercase}.btn-gold:hover{background:var(--gold-deep);color:var(--paper);border-color:var(--gold-deep);transform:translateY(-1px)}.btn-gold:focus-visible{outline:2px solid var(--night);outline-offset:3px}.btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;background:transparent;color:var(--night);border:1px solid var(--hair-deep);border-radius:var(--radius);font-weight:600;font-size:13.5px;letter-spacing:.04em;text-decoration:none;text-transform:uppercase}.btn-ghost:hover{background:color-mix(in oklab,var(--purple) 6%,transparent);border-color:var(--night)}.btn-ghost:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.card{background:var(--paper-warm);border:1px solid var(--hair);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-soft)}.card-dark{background:var(--night);color:var(--paper);padding:28px;border-radius:var(--radius);border:1px solid var(--hair-gold)}.card-dark h1,.card-dark h2,.card-dark h3,.card-dark h4{color:var(--paper)}.finding{display:grid;grid-template-columns:96px 1fr;gap:28px;align-items:start;padding:36px 0;border-top:1px solid var(--hair)}.finding:first-child{border-top:none}.finding__num{font-family:var(--ff-display);font-size:68px;color:var(--purple);font-weight:400;line-height:1;font-style:italic}.finding__title{font-family:var(--ff-display);font-size:28px;font-weight:500;margin-bottom:18px;line-height:1.2;letter-spacing:-.008em}.finding__row{margin-top:16px;display:grid;grid-template-columns:120px 1fr;gap:12px 24px;align-items:baseline}.finding__row dt{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--amethyst-mute);font-weight:600;margin:0}.finding__row dd{margin:0;color:var(--amethyst);font-size:14.5px;line-height:1.65}@media(max-width:780px){.finding{grid-template-columns:1fr}.finding__num{font-size:52px}.finding__row{grid-template-columns:1fr}}.form-thanks{margin:0;padding:18px 22px;background:color-mix(in oklab,var(--gold) 8%,transparent);border:1px solid color-mix(in oklab,var(--gold) 24%,transparent);border-left:3px solid var(--gold);border-radius:var(--radius);font-size:14.5px;color:var(--night);line-height:1.6}.visit-map{margin:32px 0 0;border:1px solid var(--hair-deep);border-radius:var(--radius);overflow:hidden;background:var(--paper-warm);box-shadow:0 1px 2px #0000000a}.visit-map iframe{display:block;width:100%;height:380px;border:0;filter:saturate(.85) contrast(1.04)}.visit-map figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;font-family:var(--ff-mono);font-size:11.5px;letter-spacing:.06em;color:var(--amethyst);background:var(--paper-soft);border-top:1px solid var(--hair)}.visit-map figcaption a{color:var(--night);font-weight:700;white-space:nowrap;border-bottom:1px solid var(--gold)}@media(max-width:640px){.visit-map iframe{height:280px}.visit-map figcaption{flex-direction:column;align-items:flex-start;gap:6px;text-align:left}}@media(max-width:900px){.nav-desktop{display:none}.nav-burger{display:inline-flex}}@media(min-width:901px){.nav-burger{display:none}}@media(max-width:900px){.grid-2{grid-template-columns:1fr!important;gap:32px!important}.grid-3{grid-template-columns:1fr!important;gap:24px!important}.grid-4{grid-template-columns:repeat(2,1fr)!important;gap:16px!important}}@media(max-width:560px){.grid-4{grid-template-columns:1fr!important}}.gilt-rule{height:1px;background:linear-gradient(to right,transparent 0%,var(--gold) 18%,var(--gold) 82%,transparent 100%);border:0;margin:0}.gen{position:relative;padding:26px 0 26px 56px;border-left:1px solid color-mix(in oklab,var(--gold) 38%,transparent)}.gen+.gen{border-top:1px solid color-mix(in oklab,var(--paper) 14%,transparent)}.gen:before{content:"";position:absolute;left:-7px;top:30px;width:13px;height:13px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--night)}.gen__num{position:absolute;left:-56px;top:22px;width:36px;text-align:right;font-family:var(--ff-display);font-style:italic;font-size:26px;color:var(--gold-soft);line-height:1}.gen__year{font-family:var(--ff-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft);font-weight:700}.gen__names{font-family:var(--ff-display);font-size:clamp(20px,2.3vw,26px);font-weight:500;color:var(--paper);margin-top:6px;line-height:1.25;letter-spacing:-.005em}.gen__role{font-family:var(--ff-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in oklab,var(--paper) 60%,transparent);margin-top:6px}.gen__body{margin-top:10px;font-size:14.5px;color:color-mix(in oklab,var(--paper) 78%,transparent);line-height:1.65}@media(max-width:700px){.gen{padding-left:36px}.gen__num{left:-36px;font-size:20px;top:24px}}.patronage{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:color-mix(in oklab,var(--gold) 30%,transparent);border:1px solid color-mix(in oklab,var(--gold) 30%,transparent);border-radius:var(--radius)}.patronage__cell{background:var(--night);padding:20px 18px;display:flex;flex-direction:column;gap:6px}.patronage__year{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-soft);font-weight:700}.patronage__name{font-family:var(--ff-display);font-size:17px;color:var(--paper);line-height:1.25;font-style:italic;font-weight:500}.patronage__body{font-size:13px;color:color-mix(in oklab,var(--paper) 70%,transparent);line-height:1.55}@media(max-width:900px){.patronage{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.patronage{grid-template-columns:1fr}}.press-quote{border-left:3px solid var(--gold);padding:6px 0 6px 24px;font-family:var(--ff-display);font-style:italic;font-size:clamp(20px,2.4vw,26px);line-height:1.35;color:var(--paper);margin:0}.press-attrib{margin-top:12px;font-family:var(--ff-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);font-weight:600}.service{background:var(--paper-warm);border:1px solid var(--hair);border-top:2px solid var(--gold);border-radius:var(--radius);padding:28px 28px 26px;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}.service:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.service__eyebrow{font-family:var(--ff-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--purple);font-weight:700}.service__title{font-family:var(--ff-display);font-size:22px;font-weight:500;line-height:1.25;margin-top:10px;letter-spacing:-.005em}.service__body{color:var(--amethyst);font-size:14.5px;margin-top:10px;line-height:1.7}.portfolio__cap{font-family:var(--ff-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--amethyst-mute);margin-top:10px;line-height:1.55}details.faq{padding:18px 22px;border:1px solid var(--hair);border-radius:var(--radius);background:var(--paper-warm);margin:0}details.faq+details.faq{margin-top:10px}details.faq summary{cursor:pointer;font-family:var(--ff-display);font-size:18px;font-weight:500;color:var(--night);list-style:none;position:relative;padding-right:32px;line-height:1.3}details.faq summary::-webkit-details-marker{display:none}details.faq summary:after{content:"+";position:absolute;right:0;top:0;font-family:var(--ff-display);font-size:24px;color:var(--gold);transition:transform .18s ease;line-height:1}details.faq[open] summary:after{content:""}details.faq[open] summary{color:var(--purple-deep)}details.faq p{margin:14px 0 0;color:var(--amethyst);font-size:14.5px;line-height:1.7}
