:root { --ink:#20241e; --muted:#677064; --paper:#f7f8f2; --lime:#d9ff5b; --violet:#a6a3ff; --line:#dfe3da; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
.page { min-height:100vh; padding:0 5vw; }
a { color:inherit; text-decoration:none; }
.header, .footer { max-width:1200px; margin:auto; display:flex; align-items:center; }
.header { height:92px; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:flex; gap:10px; align-items:center; font-weight:700; font-size:18px; letter-spacing:-.04em; }
.mark { width:28px; height:28px; padding:5px; display:inline-flex; align-items:end; gap:3px; border-radius:9px; background:var(--ink); }
.mark i { width:4px; background:var(--lime); border-radius:5px; }
.mark i:nth-child(1) { height:8px; }
.mark i:nth-child(2) { height:14px; }
.mark i:nth-child(3) { height:10px; }
nav { display:flex; gap:24px; color:var(--muted); font-size:14px; }
.locale { padding:9px 12px; border:1px solid var(--ink); border-radius:999px; font-size:13px; font-weight:700; }
.hero { position:relative; isolation:isolate; max-width:1200px; min-height:570px; margin:auto; padding:105px 0 70px; }
.eyebrow { margin:0 0 18px; color:var(--muted); font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.hero h1 { position:relative; z-index:1; max-width:760px; margin:0; font-size:clamp(42px,6vw,80px); letter-spacing:-.09em; line-height:.84; }
.intro { position:relative; z-index:1; max-width:450px; margin:32px 0; color:var(--muted); font-size:19px; line-height:1.55; }
.cta { position:relative; z-index:1; display:inline-block; padding:15px 19px; background:var(--ink); color:#fff; border-radius:9px; font-size:14px; font-weight:700; }
.note { position:relative; z-index:1; color:var(--muted); font-size:12px; margin-top:18px; }
.orb { position:absolute; z-index:-1; border-radius:50%; }
.one { width:330px; height:330px; right:4%; top:70px; background:var(--lime); box-shadow:-45px 80px 0 30px var(--violet); }
.two { width:100px; height:100px; right:31%; top:350px; background:#ffb45d; }
.features { max-width:1200px; margin:0 auto 100px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.features article { padding:31px 34px 34px 0; border-right:1px solid var(--line); }
.features article + article { padding-left:34px; }
.features article:last-child { border:0; }
.features span { font-size:12px; color:var(--muted); }
.features h2 { font-size:23px; letter-spacing:-.04em; margin:42px 0 10px; }
.features p, .policy section p { margin:0; color:var(--muted); line-height:1.6; }
.policy { max-width:760px; margin:auto; padding:100px 0; }
.policy h1 { margin:0 0 65px; font-size:clamp(48px,8vw,84px); letter-spacing:-.07em; line-height:.9; }
.policy section { padding:28px 0; border-top:1px solid var(--line); }
.policy h2 { margin:0 0 12px; font-size:23px; letter-spacing:-.04em; }
.footer { gap:12px; min-height:100px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
.footer .mark { transform:scale(.75); transform-origin:left; }
.footer small { margin-left:auto; }
@media (max-width:720px) {
  .page { padding:0 6vw; }
  .header { height:72px; }
  nav { display:none; }
  .hero { min-height:590px; padding-top:90px; }
  .one { width:210px; height:210px; right:-20px; top:270px; box-shadow:-30px 60px 0 18px var(--violet); }
  .two { right:42%; top:440px; }
  .features { grid-template-columns:1fr; margin-bottom:60px; }
  .features article, .features article + article { padding:24px 0; border-right:0; border-bottom:1px solid var(--line); }
  .features h2 { margin-top:22px; }
  .policy { padding:70px 0; }
  .footer { align-items:flex-start; flex-wrap:wrap; padding:23px 0; min-height:0; }
  .footer small { margin-left:40px; }
}
