:root { --ink:#241238; --plum:#2a1346; --gold:#d9a93a; --paper:#fbf8f2; --muted:#6a5d7a; --line:#e9e3d8; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Noto Sans Malayalam", sans-serif; color:var(--ink); background:var(--paper); line-height:1.65; }
a { color: inherit; }
.wrap { max-width: 880px; margin: 0 auto; padding: 0 20px; }
header.hero { background: radial-gradient(1200px 500px at 70% -10%, #4b2a7a 0%, var(--plum) 55%, #1b0d30 100%); color:#fff; padding: 56px 0 64px; text-align:center; }
header.page { background: var(--plum); color:#fff; padding: 28px 0; }
header.page h1 { margin:0; font-size: clamp(24px, 4.5vw, 32px); }
header.page a.back { color: var(--gold); text-decoration: none; font-size: 14px; display:inline-block; margin-bottom: 6px; }
.hat { font-size: 54px; line-height:1; margin-bottom: 8px; }
h1 { margin: 0 0 6px; font-size: clamp(30px, 6vw, 46px); letter-spacing: .5px; }
.tag { color: var(--gold); font-size: clamp(16px, 3vw, 20px); margin: 0 0 22px; }
.hero p.lead { max-width: 660px; margin: 0 auto 26px; color: #e9e1f5; font-size: 17px; }
.btn { display:inline-block; background: var(--gold); color:#2a1346; padding: 12px 22px; border-radius: 999px; font-weight: 700; text-decoration:none; }
.btn.ghost { background: transparent; color:#fff; border: 2px solid rgba(255,255,255,.55); margin-left: 8px; }
nav.top { background:#1b0d30; }
nav.top .wrap { display:flex; flex-wrap:wrap; gap: 4px 18px; padding-top:10px; padding-bottom:10px; font-size:14px; }
nav.top a { color:#e9e1f5; text-decoration:none; }
nav.top a:hover { color: var(--gold); }
main section { padding: 40px 0; border-bottom: 1px solid var(--line); }
main section:last-child { border-bottom: 0; }
h2 { margin: 0 0 12px; font-size: 26px; color: var(--plum); }
h3 { margin: 22px 0 6px; font-size: 19px; color: var(--plum); }
.card { background:#fff; border:1px solid #eadfc9; border-radius: 16px; padding: 22px 24px; box-shadow: 0 6px 20px rgba(42,19,70,.06); }
.meta { color: var(--muted); margin: 2px 0; }
dl { margin: 0; display:grid; grid-template-columns: 130px 1fr; gap: 6px 14px; }
dt { color: var(--muted); }
dd { margin: 0; font-weight: 600; }
table.fees { width:100%; border-collapse: collapse; margin: 8px 0 4px; }
table.fees th, table.fees td { text-align:left; padding: 10px 12px; border-bottom: 1px solid var(--line); }
table.fees th { color: var(--muted); font-weight: 600; font-size: 14px; }
table.fees td.amt { font-weight: 700; white-space: nowrap; }
.note { color: var(--muted); font-size: 14px; }
.legal p, .legal li { max-width: 760px; }
.legal ul { padding-left: 22px; }
.updated { color: var(--muted); font-size: 14px; }
footer { background:#1b0d30; color:#cfc4e0; padding: 26px 0; font-size: 14px; }
footer .wrap { display:flex; flex-wrap:wrap; justify-content:space-between; gap: 10px 24px; }
footer a { color:#fff; }
footer nav a { margin-right: 14px; display:inline-block; }
@media (max-width: 560px) { dl { grid-template-columns: 1fr; } dt { margin-top: 8px; } .btn.ghost { margin: 10px 0 0; } table.fees th, table.fees td { padding: 8px 6px; } }
