@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root { --paper:#eeeae3; --ink:#181512; --muted:#665e55; --gold:#a66522; --line:#cfc5b8; --dark:#151719; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:'DM Sans',system-ui,sans-serif; }
a { color:inherit; text-decoration:none; }
.landing { min-height:100vh; overflow:hidden; }
.landing-nav { display:flex; align-items:center; justify-content:space-between; max-width:1240px; margin:auto; padding:26px 28px; }
.landing-brand { display:flex; align-items:center; gap:12px; font-family:Cinzel,serif; font-size:20px; font-weight:700; letter-spacing:.17em; text-transform:uppercase; color:var(--gold); }
.landing-brand img { width:48px; height:48px; object-fit:contain; filter:drop-shadow(0 6px 10px #a6652240); }
.nav-links { display:flex; gap:22px; align-items:center; color:var(--muted); font-size:14px; }
.nav-links a:hover { color:var(--gold); }
.nav-download, .hero-cta { border:1px solid var(--gold); border-radius:999px; background:var(--gold); color:#fffaf2; padding:12px 19px; font-weight:700; box-shadow:0 10px 24px #a6652230; }
.hero { max-width:1240px; margin:auto; min-height:690px; padding:80px 28px 100px; display:grid; grid-template-columns:minmax(0, .92fr) minmax(440px, 1.08fr); gap:55px; align-items:center; }
.eyebrow { color:var(--gold); font-size:12px; letter-spacing:.18em; text-transform:uppercase; font-weight:700; }
h1 { font-family:Cinzel,serif; font-weight:600; font-size:clamp(54px,7vw,100px); line-height:.98; letter-spacing:-.045em; margin:18px 0 26px; max-width:720px; }
.hero-copy p { color:var(--muted); font-size:19px; line-height:1.55; max-width:500px; margin:0 0 34px; }
.hero-actions { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.hero-cta { display:inline-flex; align-items:center; gap:10px; padding:16px 24px; }
.hero-secondary { color:var(--muted); font-weight:600; border-bottom:1px solid var(--line); padding:9px 0; }
.hero-secondary:hover { color:var(--gold); border-color:var(--gold); }
.hero-art { position:relative; min-height:470px; display:grid; place-items:center; }
.hero-art::before { content:''; position:absolute; width:580px; height:360px; border-radius:50%; background:#d9d2c7; filter:blur(2px); transform:rotate(-10deg); box-shadow:0 34px 60px #52473b33; }
.mini-board { position:relative; width:min(530px, 100%); aspect-ratio:1.22; transform:perspective(900px) rotateX(53deg) rotateZ(-7deg); border:11px solid #25272b; box-shadow:0 34px 36px #382d253c; background:repeating-conic-gradient(#f0ede8 0 25%, #3a3b40 0 50%) 50% / 25% 25%; }
.mini-board::before { content:'♜  ♞  ♝  ♛  ♚  ♝  ♞  ♜'; position:absolute; top:-20%; left:4%; right:4%; color:#1a1a1c; font-size:clamp(22px,4vw,44px); letter-spacing:.06em; transform:skewX(5deg); text-shadow:0 8px 0 #e5e0d8; }
.mini-board::after { content:'♜  ♞  ♝  ♛  ♚  ♝  ♞  ♜'; position:absolute; bottom:-20%; left:4%; right:4%; color:#f5f2ed; font-size:clamp(22px,4vw,44px); letter-spacing:.06em; transform:skewX(5deg); text-shadow:0 8px 0 #1d1e20; }
.feature-band { background:#1b1d20; color:#f2eee7; padding:86px 28px; }
.feature-inner { max-width:1240px; margin:auto; display:grid; grid-template-columns:1.1fr 1fr 1fr; gap:42px; }
.feature-intro h2 { font-family:Cinzel,serif; font-size:38px; line-height:1.1; margin:10px 0 0; font-weight:500; }
.feature { border-left:1px solid #a6652280; padding-left:22px; }
.feature h3 { margin:0 0 10px; font-size:17px; }
.feature p { margin:0; color:#bdb6ae; line-height:1.6; font-size:15px; }
.download { max-width:1240px; margin:auto; padding:100px 28px 110px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.download h2 { font-family:Cinzel,serif; font-size:42px; font-weight:500; margin:0 0 12px; }
.download p { margin:0; color:var(--muted); max-width:510px; line-height:1.6; }
.download-button { display:inline-flex; flex-direction:column; gap:3px; border:1px solid var(--gold); border-radius:16px; padding:17px 24px; min-width:220px; color:#fff; background:#1b1d20; box-shadow:0 14px 28px #241a1026; }
.download-button strong { font-size:17px; }
.download-button small { color:#d7b27a; }
footer { border-top:1px solid var(--line); max-width:1240px; margin:auto; padding:22px 28px 34px; color:var(--muted); font-size:13px; display:flex; justify-content:space-between; }
@media (max-width:800px) { .nav-links a:not(.nav-download) { display:none; } .hero { grid-template-columns:1fr; padding-top:48px; } .hero-art { min-height:350px; } .feature-inner { grid-template-columns:1fr; } .download { display:block; } .download-button { margin-top:28px; } h1 { font-size:58px; } }
