/* CSS Reset and base */ *, *::before, *::after { box-sizing: border-box; } :root { /* violet abstract blur background with yellow hacker accents */ --bg: #1b0a2a; --glass: rgba(255, 255, 255, 0.08); --text: #e9f2ff; --muted: #c9c2ff; --cta: linear-gradient(135deg, #ffd166 0%, #ffd24a 60%, #e5be00 100%); --shadow: 0 8px 18px rgba(0,0,0,.45); --brand: #ffd166; --brand-glow: 0 0 14px rgba(255, 209, 102, .9); } html, body { height: 100%; } html { scroll-behavior: smooth; } body { margin: 0; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto; color: var(--text); background: var(--bg); /* violet abstract blur with subtle grid-like crosshatch */ background-image: radial-gradient(circle at 15% 20%, rgba(255,210,0,.25) 0, rgba(255,210,0,0) 40%), radial-gradient(circle at 70% 70%, rgba(170,0,255,.25) 0, rgba(170,0,255,0) 40%), linear-gradient(135deg, rgba(27,0,58,.6), rgba(18,0,40,.8)); background-size: 180% 180%, 180% 180%, cover; min-height: 100vh; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; } a { color: inherit; text-decoration: none; } /* Header */ .site-header { padding: 0.75rem 1rem; text-align: center; background: rgba(2, 6, 20, 0.92); border-bottom: 1px solid rgba(255,255,255,.15); position: sticky; top: 0; z-index: 10; } .brand { font-weight: 900; letter-spacing: .18em; text-transform: uppercase; color: #ffd166; text-shadow: 0 0 10px rgba(255, 214, 102, 0.9); } /* Hero (frosted glass) */ .hero { width: min(92vw, 1100px); margin: 2rem auto; padding: 1.75rem; border-radius: 16px; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.22); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); box-shadow: var(--shadow); text-align: center; } .hero h1 { font-size: clamp(1.8rem, 5vw, 3rem); margin: 0 0 .5rem; color: #f2f6ff; text-shadow: 0 0 12px rgba(255, 212, 64, 0.75); } .subhead { margin: 0 0 1rem; color: #f0e8ff; font-weight: 600; opacity: .95; } .hero-media { width: 100%; margin: 0 auto; } .hero-media img { width: 100%; height: auto; display: block; border-radius: 12px; border: 1px solid rgba(255,255,255,.25); box-shadow: 0 6px 20px rgba(0,0,0,.4); } .cta { display: inline-block; padding: 0.95rem 1.6rem; margin-top: 0.75rem; border-radius: 999px; font-weight: 900; color: #0b0e18; background: var(--cta); text-decoration: none; letter-spacing: .02em; box-shadow: 0 8px 18px rgba(0,0,0,.5); transition: transform .2s ease, box-shadow .2s ease; } .cta:hover { transform: translateY(-1px); box-shadow: 0 12px 22px rgba(0,0,0,.6); } .cta:focus-visible { outline: 2px solid #6bd6ff; outline-offset: 2px; } /* Footer with small advertisement */ .site-footer { padding: 1rem; text-align: center; color: #e9e0d5; background: rgba(2,6,20,.92); border-top: 1px solid rgba(255,255,255,.14); } .footer-ad a { color: #ffd166; font-weight: 800; text-decoration: none; } .gratitude { margin-top: .5rem; font-size: .95rem; } /* Layout: grid for larger screens to emphasize centerpiece image */ @media (min-width: 900px) { .hero { display: grid; grid-template-columns: 1.2fr 0.8fr; grid-template-areas: "title media" "subtitle media" "cta media"; gap: 1.75rem; text-align: left; align-items: center; padding: 2rem; } .hero h1 { grid-area: title; justify-self: start; } .subhead { grid-area: subtitle; justify-self: start; } .hero-media { grid-area: media; justify-self: center; align-self: center; width: 100%; max-width: 720px; } .cta { grid-area: cta; justify-self: start; } } /* Focus and accessibility */ a:focus-visible { outline: 2px solid #6bd6ff; outline-offset: 2px; } /* Reduced motion */ @media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }