@import url('https://fonts.googleapis.com/css2?family=DM+Mono&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,700&family=Playfair+Display:ital,wght@0,600;1,600&display=swap');

:root { --ink: #f1f2ed; --paper: #000; --muted: #a4aea7; --accent: #fed801; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: "DM Sans", sans-serif; }
a:visited { color: inherit; }
main { min-height: 100svh; padding: 30px 5vw; display: flex; flex-direction: column; }
.brand { display: inline-flex; align-items: center; gap: 14px; color: inherit; text-decoration: none; font-size: clamp(24px, 2.2vw, 34px); font-weight: 700; letter-spacing: -.06em; }
.brand img { width: 82px; height: 82px; border-radius: 50%; object-fit: cover; }
section { margin: auto 0; }
.hero { position: relative; isolation: isolate; }
.snake { position: absolute; z-index: -1; height: min(78svh, 800px); width: auto; right: -1vw; top: 50%; transform: translateY(-50%); mix-blend-mode: screen; pointer-events: none; }
.eyebrow, footer { font: 11px "DM Mono", monospace; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); }
h1 { position: relative; margin: 23px 0 30px; max-width: 1000px; font-size: clamp(3.4rem, 9vw, 9.5rem); line-height: .9; letter-spacing: -.08em; text-shadow: 0 0 22px #000; }
h1 em { color: var(--accent); font-family: "Playfair Display", Georgia, serif; font-weight: 600; }
.intro { max-width: 365px; margin: 0 0 28px; font-size: 18px; line-height: 1.4; }
footer { margin-top: auto; }
footer a, footer a:visited { display: inline-flex; align-items: center; gap: 5px; color: var(--accent); text-decoration: none; border-bottom: 1px solid var(--accent); padding-bottom: 3px; }
footer a:hover { color: var(--ink); border-color: var(--ink); }
@media (max-width: 600px) { main { padding: 24px 6vw; } .snake { height: 76svh; right: -34vw; opacity: .75; } h1 { font-size: clamp(3rem, 14vw, 5rem); } }
