:root{
  --bg:#F5F1EB;
  --card:#FFFFFF;
  --accent:#C9B9A6;
  --text:#3F3A36;
  --muted:#7A726B;
  --border:#E3DBD1;
  --gold: #BFA67A;
  --shadow: 0 10px 30px rgba(63,58,54,.08);
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family: system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  line-height:1.45;
}

a{ color:inherit; text-decoration:none; }
.wrap{ max-width:980px; margin:0 auto; padding:22px 16px 56px; }

header{
  position:sticky; top:0; z-index:10;
  background:rgba(245,241,235,.86);
  backdrop-filter: blur(10px);
  border-bottom:1px solid rgba(227,219,209,.8);
}

.nav{
  display:flex; align-items:center; justify-content:space-between;
  max-width:980px; margin:0 auto; padding:14px 16px;
  gap:12px;
}

.brand{
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  letter-spacing:.02em;
  display:flex; flex-direction:column;
}
.brand small{ font-family:inherit; color:var(--muted); font-size:.9rem; }

.links{ display:flex; gap:14px; flex-wrap:wrap; align-items:center; justify-content:flex-end; }
.links a{ color:var(--muted); font-size:.95rem; }
.links a:hover{ color:var(--text); }

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:10px 16px; border-radius:999px;
  background: linear-gradient(135deg, var(--accent), var(--gold));
  border:0; box-shadow: 0 8px 18px rgba(201,185,166,.35);
}
.btn:hover{ filter:brightness(.98); }
.btn-ghost{
  background:transparent; color:var(--text);
  border:1px solid var(--border);
  box-shadow:none;
}

.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:18px;
  padding:22px;
  box-shadow: var(--shadow);
}

h1,h2{
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  letter-spacing:.02em;
}
h1{ margin:0 0 10px 0; font-size: clamp(2rem, 4vw, 3rem); }
.section-title{ margin:22px 0 12px; font-size: 1.6rem; }
.sub{ color:var(--muted); font-size:1.05rem; margin:0 0 18px; }
.muted{ color:var(--muted); }

.hero{
  padding:80px 0 40px;
  display:grid;
  grid-template-columns: 1fr;
  gap:30px;
  align-items:center;
  text-align:center;
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,0.6),
    rgba(245,241,235,0.9)
  );
  z-index:-1;
}

.cta{ display:flex; gap:10px; flex-wrap:wrap; margin-top:10px; }

.grid{
  display:grid; grid-template-columns: repeat(4, 1fr);
  gap:12px; margin-top:12px;
}
.info{
  border-radius:16px; border:1px solid var(--border);
  padding:14px; background:#fff;
}
.info .k{ color:var(--muted); font-size:.85rem; }
.info .v{ font-weight:650; margin-top:4px; }

section{ scroll-margin-top:90px; }

.timeline{ display:grid; gap:10px; }
.titem{
  display:flex; justify-content:space-between; gap:14px;
  padding:14px; border:1px solid var(--border);
  border-radius:16px; background:#fff;
}
.titem b{ font-weight:650; }

.two{ display:grid; grid-template-columns: 1fr 1fr; gap:12px; }

.faq details{
  border:1px solid var(--border);
  border-radius:16px;
  padding:12px 14px;
  background:#fff;
}
.faq details + details{ margin-top:10px; }

footer{
  text-align:center;
  color:var(--muted);
  margin-top:34px;
  font-size:.9rem;
}

.notice{
  border:1px dashed var(--border);
  border-radius:16px;
  padding:14px;
  background:#fff;
}

@media (max-width: 860px){
  .hero{ grid-template-columns: 1fr; }
  .grid{ grid-template-columns: repeat(2,1fr); }
  .two{ grid-template-columns: 1fr; }
  .links{ gap:10px; }
}