*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{min-height:100vh;display:flex;flex-direction:column;background:#FBF7ED;color:#27190D;
  font-family:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:#B80018}
a:focus-visible{outline:3px solid #C6A15B;outline-offset:2px}
.bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:18px clamp(16px,5vw,72px)}
header.bar{border-bottom:1px solid #E6D7B4}
footer.bar{border-top:1px solid #E6D7B4;font-size:13px;color:#74614A}
.brand{display:flex;align-items:center;gap:10px;font-family:Fraunces,Georgia,"Times New Roman",serif;font-weight:600;
  font-size:24px;letter-spacing:-0.02em}
.brand-mark{width:34px;height:34px}
.links{display:flex;gap:20px}
main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:48px 16px}
.intro{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
.hero-mark{width:88px;height:88px}
h1{margin:0;font-family:Fraunces,Georgia,"Times New Roman",serif;font-weight:700;font-size:44px;letter-spacing:-0.02em}
.intro p{margin:0;font-size:17px;color:#74614A}
.card{width:100%;max-width:400px;background:#FFFEF9;border:1px solid #E6D7B4;border-top:3px solid #27190D;border-radius:2px;
  padding:28px;display:flex;flex-direction:column;gap:14px;box-shadow:0 18px 40px -28px rgba(39,25,13,.35)}
.btn{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:2px;font-size:16px;font-weight:600;
  text-decoration:none}
.primary{background:#B80018;color:#FFFEF9}
.primary:hover{background:#930013}
.outline{border:1.5px solid #B80018;color:#27190D}
.outline:hover{background:#FBEDEA}
.hint{margin:4px 0 0;font-size:13px;text-align:center;color:#74614A}
.notice{margin:0;padding:10px 12px;border-left:3px solid #C6A15B;background:#F6EEDB;font-size:14px}
@media (max-width:480px){h1{font-size:34px}.hero-mark{width:72px;height:72px}.card{padding:22px 20px}.brand{font-size:20px}
  .brand-mark{width:28px;height:28px}}
@media (prefers-color-scheme:dark){
  body{background:#14100B;color:#F1E8D6}
  a{color:#F28C96}
  header.bar,footer.bar{border-color:#3A2D20}
  footer.bar,.intro p,.hint{color:#B8A88B}
  .brand-mark path:first-child,.hero-mark path:first-child{fill:#1E1711}
  .card{background:#1E1711;border-color:#3A2D20;border-top-color:#D4B26A;box-shadow:none}
  .primary{background:#C81A30;color:#FFFFFF}
  .primary:hover{background:#A3142A}
  .outline{color:#F1E8D6;border-color:#C81A30}
  .outline:hover{background:#3A1418}
  .notice{background:#2E2615;border-left-color:#D4B26A}
}
