:root {
  --ink: #08243c;
  --muted: #5b7083;
  --blue: #1677ff;
  --turquoise: #17c9c1;
  --pale: #eefaff;
  --line: rgba(8, 36, 60, .12);
  --white: #ffffff;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--white); font: 16px/1.6 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { color: inherit; }
.wrap { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }
.nav { display:flex; align-items:center; justify-content:space-between; min-height:78px; }
.brand { font-size:1.55rem; font-weight:800; letter-spacing:-.045em; text-decoration:none; }
.brand span { background:linear-gradient(105deg,var(--blue),var(--turquoise)); -webkit-background-clip:text; color:transparent; }
.links { display:flex; gap:28px; align-items:center; }
.links a { text-decoration:none; color:var(--muted); font-weight:600; font-size:.95rem; }
.hero { position:relative; overflow:hidden; padding:92px 0 84px; background:radial-gradient(circle at 82% 20%, rgba(23,201,193,.18), transparent 30%), linear-gradient(150deg,#f7fbff 0%,#fff 54%,#f1fffd 100%); border-block:1px solid var(--line); }
.hero-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:70px; align-items:center; }
.eyebrow { display:inline-flex; padding:7px 12px; border:1px solid rgba(22,119,255,.18); border-radius:999px; color:var(--blue); font-size:.82rem; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }
h1 { max-width:720px; margin:22px 0 20px; font-size:clamp(3.25rem,7vw,6.25rem); line-height:.92; letter-spacing:-.065em; }
h1 em { font-style:normal; background:linear-gradient(100deg,var(--blue),var(--turquoise)); -webkit-background-clip:text; color:transparent; }
.lead { max-width:620px; margin:0; color:var(--muted); font-size:1.18rem; }
.actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:32px; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 22px; border-radius:14px; text-decoration:none; font-weight:750; }
.button.primary { color:white; background:linear-gradient(105deg,var(--blue),#0faebc); box-shadow:0 14px 30px rgba(22,119,255,.22); }
.button.secondary { background:white; border:1px solid var(--line); }
.word-card { position:relative; padding:34px; border-radius:30px; background:rgba(255,255,255,.86); border:1px solid rgba(22,119,255,.14); box-shadow:0 30px 80px rgba(8,36,60,.12); backdrop-filter:blur(14px); transform:rotate(2deg); }
.word-card:before { content:""; position:absolute; width:120px; height:120px; right:-30px; top:-35px; border-radius:50%; background:linear-gradient(140deg,var(--blue),var(--turquoise)); opacity:.12; }
.word-meta { display:flex; justify-content:space-between; color:var(--muted); font-size:.88rem; }
.word { margin:40px 0 4px; font-size:2.7rem; font-weight:850; letter-spacing:-.045em; }
.phonetic { color:var(--blue); font-weight:650; }
.meaning { margin:24px 0 0; padding-top:22px; border-top:1px solid var(--line); font-size:1.05rem; }
.example { margin-top:18px; color:var(--muted); font-style:italic; }
.section { padding:88px 0; }
.section h2 { margin:0 0 14px; font-size:clamp(2rem,4vw,3.25rem); line-height:1.05; letter-spacing:-.045em; }
.intro { max-width:660px; color:var(--muted); font-size:1.08rem; }
.features { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:42px; }
.feature { padding:26px; border:1px solid var(--line); border-radius:22px; background:#fff; }
.feature b { display:block; margin-bottom:8px; font-size:1.08rem; }
.feature p { margin:0; color:var(--muted); }
.feature .num { display:inline-grid; place-items:center; width:34px; height:34px; margin-bottom:22px; border-radius:10px; background:var(--pale); color:var(--blue); font-weight:800; }
.band { padding:64px 0; color:white; background:linear-gradient(115deg,#0868ed,#0ca7c4 58%,#17c9c1); }
.band-inner { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.band h2 { margin:0; font-size:clamp(2rem,4vw,3.2rem); letter-spacing:-.05em; }
.band p { max-width:530px; margin:10px 0 0; color:rgba(255,255,255,.84); }
.footer { padding:34px 0; }
.footer-inner { display:flex; justify-content:space-between; gap:24px; color:var(--muted); font-size:.9rem; }
.footer nav { display:flex; gap:20px; }
.content { max-width:760px; padding:72px 0 90px; }
.content h1 { font-size:clamp(2.7rem,6vw,4.8rem); }
.content h2 { margin-top:40px; font-size:1.35rem; }
.content p,.content li { color:var(--muted); }
.content a { color:var(--blue); font-weight:650; }
.faq { border-top:1px solid var(--line); margin-top:34px; }
.faq article { padding:22px 0; border-bottom:1px solid var(--line); }
.faq h3 { margin:0 0 7px; }
.faq p { margin:0; }
@media (max-width:800px) {
  .links a:not(:last-child) { display:none; }
  .hero { padding:64px 0; }
  .hero-grid { grid-template-columns:1fr; gap:44px; }
  .word-card { transform:none; }
  .features { grid-template-columns:1fr; }
  .band-inner,.footer-inner { align-items:flex-start; flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
