@font-face {
  font-family: 'EB Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/eb-garamond-regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/geist-regular.woff2') format('woff2');
}
:root {
  color-scheme: light;
  font-family: 'Geist', Arial, sans-serif;
  letter-spacing: -0.01em;
  color: #191919;
  background: #f5f5f5;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; }
.page { width: min(640px, calc(100% - 48px)); margin: 79px auto 40px; }
.masthead { margin-bottom: 36px; }
h1 { margin: 0 0 3px; font-family: 'EB Garamond', 'Times New Roman', serif; font-size: 46.4px; font-weight: 400; line-height: 0.95; letter-spacing: -0.03em; }
h1 a { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; }
.brand-mark { display: block; width: 40px; height: 40px; flex: 0 0 auto; mix-blend-mode: multiply; }
p, li, summary { font-size: 16px; line-height: 1.58; }
p { margin: 0 0 20px; }
.tagline { margin: 0; line-height: 1.5; }
ul { padding-left: 19px; margin: -16px 0 22px; }
li { padding-left: 0; margin: 0 0 7px; }
a { color: inherit; text-underline-offset: 3px; text-decoration-thickness: 1px; }
a:hover { color: #686868; }
a:focus-visible, summary:focus-visible { outline: 2px solid #525252; outline-offset: 5px; border-radius: 1px; }
.mission:focus { outline: none; }
.studio-partnerships { margin-top: 32px; }
.studio-partnerships h2 { margin: 0 0 14px; font-family: 'EB Garamond', Georgia, serif; font-size: 28px; font-weight: 400; line-height: 1.15; letter-spacing: -0.025em; }
.contact { margin-bottom: 0; }
.contact a { overflow-wrap: anywhere; }
.memo-link { margin: 22px 0 0; font-size: 14px; }
summary { display: flex; align-items: baseline; gap: 8px; color: #666; cursor: pointer; list-style: none; width: fit-content; }
summary::-webkit-details-marker { display: none; }
summary:hover { color: #191919; }
.disclosure-icon { flex: 0 0 9px; position: relative; width: 9px; height: 9px; top: -1px; }
.disclosure-icon::before, .disclosure-icon::after { content: ''; position: absolute; background: currentColor; }
.disclosure-icon::before { width: 9px; height: 1px; left: 0; top: 4px; }
.disclosure-icon::after { width: 1px; height: 9px; left: 4px; top: 0; }
details[open] .disclosure-icon::after { display: none; }
.footer { margin-top: auto; padding: 24px; text-align: right; font-size: 12px; line-height: 1.5; }
.skip-link { position: absolute; top: 10px; left: 24px; padding: 8px; background: #fff; transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }
@media (max-width: 680px) {
  .page { margin-top: 48px; margin-bottom: 44px; }
  .masthead { margin-bottom: 32px; }
  h1 { font-size: 42px; }
  .brand-mark { width: 36px; height: 36px; }
  .footer { text-align: left; padding-top: 18px; }
}
@media (prefers-reduced-motion: no-preference) {
  a, summary { transition: color 140ms ease; }
}
