:root{--shell: #fdfafa;--ink: #201a20;--body-ink: #322a33;--soft: #766770;--pink: #f0508a;--pink-text: #c72d63;--hair: #eddce3;--glow: rgba(240, 80, 138, .05);--serif: "Newsreader", Georgia, serif;--sans: "Inter", -apple-system, sans-serif}:root[data-phase=day]{--shell: #fefcfb;--hair: #efe2e7}:root[data-phase=dusk]{--shell: #fbf0ea;--ink: #251c1e;--body-ink: #3a2d30;--soft: #786a66;--hair: #ecd9d0;--pink: #ee4f83;--glow: rgba(238, 79, 131, .08)}:root[data-phase=night]{--shell: #261c23;--ink: #f5ebf1;--body-ink: #e2d2db;--soft: #a58e9c;--hair: #453440;--pink: #ff7bab;--pink-text: #ff7bab;--glow: rgba(255, 123, 171, .07)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow-x:clip;background:radial-gradient(55% 50% at 88% 8%,var(--glow) 0%,transparent 60%),radial-gradient(40% 40% at 4% 96%,var(--glow) 0%,transparent 55%),var(--shell);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color 1.4s ease,color 1.4s ease;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath d='M5 2 L5 18.5 L9.3 14.6 L11.7 20.8 L14.6 19.6 L12.2 13.6 L18 13.2 Z' fill='%23201a20' stroke='white' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E") 4 2,auto}a,button,.flip-word,[role=button]{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath d='M5 2 L5 18.5 L9.3 14.6 L11.7 20.8 L14.6 19.6 L12.2 13.6 L18 13.2 Z' fill='white' stroke='%23201a20' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E") 4 2,pointer}a{color:inherit}::selection{background:var(--pink-text);color:#fff}:root[data-phase=night] ::selection{background:var(--pink);color:#261c23}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.4 0 0 0 0 0.45 0 0 0 0.03 0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}.top{position:relative;z-index:30;display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;padding:1.9rem clamp(1.6rem,4vw,3.5rem) .5rem}.top a{font-family:var(--sans);font-size:.68rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;color:var(--soft);transition:color .25s;padding:.65rem .35rem;margin:-.65rem -.35rem}.top a:hover,.top a[aria-current=page]{color:var(--pink-text)}.brand{color:var(--ink)!important}.brand:hover{color:var(--pink-text)!important}.top nav{display:flex;gap:1.8rem;align-items:baseline}.nav-item{position:relative;display:inline-block}.nav-item>a:after{content:"▾";font-size:.7em;margin-left:.35em;opacity:.6}@media(hover:none){.nav-item>a:after{content:none}}.nav-item .menu{position:absolute;top:100%;left:50%;transform:translate(-50%);padding:.8rem 1.1rem .9rem;margin-top:.5rem;display:flex;flex-direction:column;gap:.65rem;background:var(--shell);border:1px solid var(--hair);border-radius:10px;box-shadow:0 14px 34px #201a2024;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s;z-index:50;white-space:nowrap}.nav-item .menu:before{content:"";position:absolute;top:-.6rem;left:0;right:0;height:.6rem}.nav-item:hover .menu,.nav-item:focus-within .menu{opacity:1;visibility:visible}:root[data-phase=night] .nav-item .menu{box-shadow:0 14px 34px #00000080}.page{position:relative;z-index:2;flex:1;width:100%;max-width:1120px;margin:0 auto;padding:clamp(2rem,5vh,3.5rem) clamp(1.6rem,4vw,3.5rem) 3rem}.page-title{font-weight:300;font-size:clamp(2rem,1.6rem + 2vw,2.9rem);line-height:1;letter-spacing:-.015em;margin-bottom:1rem}.page-title .dot{color:var(--pink)}.page-hairline{display:block;width:44px;height:2px;background:var(--pink);margin-bottom:1.8rem}.page-note{font-weight:300;font-style:italic;font-size:1.05rem;color:var(--soft);margin-bottom:2.2rem;max-width:44rem;transition:color 1.4s ease}.foot{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:baseline;padding:1.4rem clamp(1.6rem,4vw,3.5rem) 1.9rem}.foot a{font-family:var(--sans);font-size:.66rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;color:var(--soft);transition:color .25s;padding:.65rem .35rem;margin:-.65rem -.35rem}.foot a:hover{color:var(--pink-text)}@keyframes flipOut{0%{transform:rotateX(0);opacity:1}to{transform:rotateX(90deg);opacity:0}}@keyframes flipIn{0%{transform:rotateX(-90deg);opacity:0}to{transform:rotateX(0);opacity:1}}.pixel-heart{position:fixed;z-index:999;pointer-events:none;image-rendering:pixelated;animation:heartRise .9s ease-out forwards}@keyframes heartRise{0%{transform:translateY(0) scale(.6);opacity:0}20%{opacity:1}to{transform:translateY(-44px) scale(1) rotate(8deg);opacity:0}}a:focus-visible,.flip-word:focus-visible,[role=button]:focus-visible{outline:2px solid var(--pink);outline-offset:4px}.skip-link{position:absolute;left:1rem;top:-100%;z-index:100;padding:.6rem 1rem;background:var(--shell);border:1px solid var(--hair);border-radius:8px;font-family:var(--sans);font-size:.8rem;color:var(--ink)}.skip-link:focus{top:.6rem}@media(max-width:560px){.top{flex-wrap:wrap;gap:.8rem 1.4rem}.top nav{flex-wrap:wrap;gap:1.3rem 1.3rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pixel-heart{animation:none}}
