:root{ --bg: #2a0000; --bg-accent: rgba(255,255,255,.08); --text: #f9f9f9; --muted: #ffd9d9; --primary: #ffffff; --glass: rgba(255,255,255,.08); --radius:14px; --space-1:.25rem; --space-2:.5rem; --space-3:.75rem; --space-4:1rem; --space-5:1.5rem; --space-6:2rem; --space-7:3rem; --shadow: 0 10px 28px rgba(0,0,0,.35); } *{box-sizing:border-box} html,body{height:100%} html{font-size:16px} body{ margin:0; font-family: system-ui,-apple-system,"Segoe UI",Roboto,Inter,Arial; color:var(--text); background: linear-gradient(135deg, #2a0000 0%, #6a0000 50%, #2a0000 100%); min-height:100%; line-height:1.6; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; } a{color:inherit;text-decoration:none} a:hover{text-decoration:underline} a:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px} :focus{outline:none} :focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px} .site-header{ position:sticky; top:0; z-index:10; display:flex; align-items:center; justify-content:center; padding:.75rem 1rem; background: rgba(0,0,0,.25); backdrop-filter: blur(6px) saturate(120%); -webkit-backdrop-filter: blur(6px) saturate(120%); border-bottom:1px solid rgba(255,255,255,.25); box-shadow: 0 4px 12px rgba(0,0,0,.25); } .brand{ width:120px; height:28px; border-radius:8px; background: linear-gradient(90deg, rgba(255,255,255,.9), rgba(255,255,255,.3)); } .main{ display:block; } .hero.grid-layout{ display:grid; grid-template-columns: 1fr; gap: var(--space-4); align-items:center; justify-items:center; padding: var(--space-6) 1rem; max-width:1100px; margin:0 auto; width:100%; } .hero-media{ width:100%; display:flex; justify-content:center; align-items:center; padding:0; } .hero-figure img{ width:100%; height:auto; max-width:720px; border-radius:20px; border:1px solid rgba(255,255,255,.4); box-shadow:0 20px 40px rgba(0,0,0,.4); background:#fff; } .hero-content{ max-width:720px; padding:0 1rem; text-align:left; } .hero-content h1{ font-size: clamp(1.8rem, 4vw, 3rem); margin:0 0 .25rem; line-height:1.15; font-weight:800; color:var(--text); } .hero-content h2{ font-size: clamp(1rem, 2.5vw, 1.25rem); margin:0 0 1.5rem; color:var(--muted); font-weight:500; } .cta{ display:inline-block; padding:.92rem 1.25rem; border-radius:999px; background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(255,255,255,.85)); color:#0b0000; font-weight:800; letter-spacing:.2px; box-shadow:0 6px 22px rgba(0,0,0,.15); transition: transform .15s ease, box-shadow .2s ease; } .cta:hover{ transform: translateY(-1px); box-shadow:0 10px 26px rgba(255,255,255,.9); } .cta:focus-visible{ outline:2px solid var(--primary); outline-offset:2px; } .site-footer{ padding: var(--space-5) 1rem; display:flex; flex-direction:column; align-items:center; gap: var(--space-3); border-top:1px solid rgba(255,255,255,.25); background: rgba(0,0,0,.04); } .footer-ad{ width:100%; display:flex; justify-content:center; padding:.25rem; } .footer-ad a{ display:inline-block; padding:.5rem 1rem; border-radius:12px; background: var(--glass); border:1px solid rgba(255,255,255,.25); color:var(--text); font-weight:700; text-align:center; } .footer-ad a:hover{ transform: translateY(-1px); background: rgba(255,255,255,.24); } .footer-note{ text-align:center; color:var(--muted); font-size:.95rem; } @media (min-width:768px){ .hero.grid-layout{ grid-template-columns:1.05fr 0.95fr; padding: 3rem 1.25rem; } .hero-content{ text-align:left; } } @media (min-width:1024px){ .hero.grid-layout{ gap: 2rem; } } @media (prefers-reduced-motion: reduce){ * { transition: none !important; animation: none !important; } } @media print{ body { background: transparent; color: #000; } .site-header, .site-footer { display:none; } a { text-decoration: underline; color:#000; } .hero-figure img { max-width:100%; } } article{ width:72ch; margin:0 auto; padding: var(--space-4) 0; } article p:first-of-type::first-letter{ float:left; font-weight:700; line-height:1; margin-right: var(--space-2); font-size:clamp(3rem,6vw,5rem); text-transform:uppercase; } @media (max-width: 360px){ article p:first-of-type::first-letter{ font-size: clamp(2rem,8vw,3rem); } }