:root{
  --indigo:#22284A; --coral:#E85D4C; --mango:#F2A94D;
  --paper:#FAF6F2; --ink:#241E35; --muted:#948EA3; --hair:#E4DEE8;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Inter',sans-serif;-webkit-font-smoothing:antialiased;}
.wrap{max-width:720px;margin:0 auto;padding:0 32px;}
@media (max-width:640px){.wrap{padding:0 20px;}}

header{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid var(--hair);}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;}
.brand img{height:56px;width:auto;display:block;}

.btn-ghost{border:1px solid var(--ink);background:transparent;color:var(--ink);padding:9px 18px;border-radius:999px;font-size:14px;cursor:pointer;}
.btn-coral{background:var(--coral);color:#fff;padding:9px 20px;border-radius:999px;font-size:14px;border:none;cursor:pointer;font-weight:500;}

.gate{padding:100px 0;text-align:center;}
.gate h1{font-family:'Fraunces',serif;font-size:26px;margin:0 0 12px;}
.gate p{color:#5C5570;font-size:15px;line-height:1.6;margin:0 auto 24px;max-width:420px;}

.panel{padding:56px 0 90px;}
.badge{display:inline-block;background:#E9E9F5;color:var(--indigo);font-size:12px;font-weight:600;padding:5px 12px;border-radius:999px;margin-bottom:16px;letter-spacing:0.2px;}
.panel h1{font-family:'Fraunces',serif;font-size:28px;margin:0 0 10px;}
.panel > p{color:#5C5570;font-size:15px;line-height:1.6;max-width:520px;}

.card{background:#fff;border:1px solid var(--hair);border-radius:16px;padding:26px 28px;margin-top:24px;}
.card dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:10px 20px;font-size:14.5px;}
.card dt{color:var(--muted);}
.card dd{margin:0;font-weight:500;}

.app-footer{border-top:1px solid var(--hair);padding:24px 0;margin-top:60px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted);}
.footer-legal{display:flex;gap:16px;flex-wrap:wrap;}
.footer-legal a{color:var(--muted);text-decoration:none;}
.footer-legal a:hover{color:var(--ink);text-decoration:underline;}
@media (max-width:640px){.app-footer{flex-direction:column;text-align:center;}}
