@import "tailwindcss"; @import "../styles/tokens.css"; @theme inline { --color-ivory-50: var(--color-ivory-50); --color-ivory-100: var(--color-ivory-100); --color-ivory-200: var(--color-ivory-200); --color-ivory-300: var(--color-ivory-300); --color-pale-100: var(--color-pale-100); --color-pale-200: var(--color-pale-200); --color-pale-300: var(--color-pale-300); --color-pale-400: var(--color-pale-400); --color-slate-500: var(--color-slate-500); --color-slate-600: var(--color-slate-600); --color-slate-700: var(--color-slate-700); --color-navy-800: var(--color-navy-800); --color-navy-900: var(--color-navy-900); --color-gold-300: var(--color-gold-300); --color-gold-400: var(--color-gold-400); --color-gold-500: var(--color-gold-500); --color-gold-600: var(--color-gold-600); --color-gold-700: var(--color-gold-700); --color-ink-900: var(--color-ink-900); --color-ink-700: var(--color-ink-700); --color-ink-500: var(--color-ink-500); --color-ink-300: var(--color-ink-300); --color-danger: var(--color-danger); --color-success: var(--color-success); --font-serif: var(--font-serif); --font-sans: var(--font-sans); --radius-sm: var(--radius-sm); --radius-md: var(--radius-md); --radius-lg: var(--radius-lg); --radius-xl: var(--radius-xl); --radius-pill: var(--radius-pill); --shadow-sm: var(--shadow-sm); --shadow-md: var(--shadow-md); --shadow-lg: var(--shadow-lg); --ease-out: var(--ease-out); } @layer base { html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; } @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; } } body { background: var(--color-ivory-50); color: var(--color-ink-700); font-family: var(--font-sans); font-size: var(--text-base); line-height: var(--leading-normal); overflow-x: clip; } h1, h2, h3, h4 { font-family: var(--font-serif); color: var(--color-navy-900); font-weight: 500; letter-spacing: -0.01em; text-wrap: balance; } p { text-wrap: pretty; } :focus-visible { outline: 3px solid var(--color-slate-500); outline-offset: 3px; border-radius: var(--radius-sm); } ::selection { background: var(--color-gold-300); color: var(--color-navy-900); } } @layer components { .container-site { width: 100%; max-width: var(--container-max); margin-inline: auto; padding-inline: var(--container-pad); } .section-y { padding-block: var(--section-y); } .overtitle { font-family: var(--font-sans); font-size: var(--text-xs); font-weight: 600; letter-spacing: var(--tracking-caps); text-transform: uppercase; color: var(--color-gold-700); } .skip-link { position: absolute; left: 1rem; top: -100%; z-index: 100; padding: 0.5rem 1rem; background: var(--color-navy-900); color: white; border-radius: var(--radius-sm); } .skip-link:focus { top: 1rem; } .text-display { font-size: var(--text-display); line-height: var(--leading-tight); } .text-h2 { font-size: var(--text-4xl); line-height: var(--leading-snug); } .text-h3 { font-size: var(--text-3xl); line-height: var(--leading-snug); } .text-h4 { font-size: var(--text-xl); line-height: var(--leading-snug); } .text-lead { font-size: var(--text-lg); } } @layer components { .prose-site p { color: var(--color-ink-700); } .prose-site a { color: var(--color-navy-900); } } @keyframes fade-in { from { opacity: 0; } to { opacity: 1; } }