*{box-sizing:border-box}
:root{
  --ink:#171714;
  --soft:#f3ede5;
  --paper:#fbf7f1;
  --accent:#d8b89b;
  --line:rgba(23,23,20,.15);
}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.6;
}
a{text-decoration:none;color:inherit}
.wrap{width:min(1120px,calc(100% - 40px));margin:auto}
.hero{
  min-height:88vh;
  display:flex;
  align-items:end;
  position:relative;
  background:
    linear-gradient(90deg,rgba(8,10,9,.72),rgba(8,10,9,.28)),
    url('hero.jpg') center/cover no-repeat;
  color:#fff;
}
.hero-inner{padding:120px 0 90px;max-width:720px}
.kicker{letter-spacing:.24em;text-transform:uppercase;font-size:.76rem;font-weight:700}
h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.02;margin:0}
h1{font-size:clamp(3.8rem,8vw,7.7rem);margin-top:18px}
h2{font-size:clamp(2.3rem,5vw,4.8rem)}
.lead{font-size:clamp(1.05rem,2vw,1.3rem);max-width:620px;margin:28px 0 34px}
.btn{
  display:inline-block;
  border:0;
  border-radius:999px;
  padding:16px 24px;
  background:#fff;
  color:#111;
  font-weight:700;
  letter-spacing:.03em;
  cursor:pointer;
}
.section{padding:90px 0;border-bottom:1px solid var(--line)}
.intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.statement{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,4vw,4.2rem);line-height:1.1}
.points{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:50px}
.card{padding:28px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.52)}
.card h3{margin-top:0;font-size:1.1rem}
.dark{background:#141815;color:#f6f2ec}
.dark .card{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.03)}
.signup{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.formbox{background:#fff;color:#111;padding:32px;border-radius:22px}
label{display:block;font-size:.9rem;font-weight:700;margin:16px 0 7px}
input,textarea{
  width:100%;padding:14px 15px;border:1px solid #d4cec7;border-radius:12px;
  font:inherit;background:#fff
}
textarea{min-height:120px;resize:vertical}
.check{display:flex;gap:10px;align-items:flex-start;margin:18px 0}
.check input{width:auto;margin-top:6px}
.small{font-size:.86rem;opacity:.76}
.error{padding:12px 14px;background:#f8dddd;border-radius:10px;margin-bottom:12px}
.success{padding:12px 14px;background:#e4f1e7;border-radius:10px;margin-bottom:12px}
footer{padding:34px 0;background:#0e110f;color:#ddd;font-size:.86rem}
.center{max-width:760px;margin:auto;text-align:center}
.confirm{min-height:100vh;display:grid;place-items:center;padding:40px}
.confirm-card{max-width:680px;padding:50px;border:1px solid var(--line);border-radius:24px;background:#fff}
@media(max-width:800px){
  .intro,.signup{grid-template-columns:1fr}
  .points{grid-template-columns:1fr}
  .hero{min-height:78vh}
  .hero-inner{padding:90px 0 60px}
}
