* { box-sizing: border-box; }
html, body { min-height: 100%; }
body {
    margin: 0;
    color: #24202c;
    background: linear-gradient(180deg, #d9ccff 0%, #f6f0ff 56%, #fffafb 100%);
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
    line-height: 1.72;
}
.page { max-width: 880px; margin: 0 auto; padding: 34px 20px 60px; }
.card {
    padding: 30px;
    background: rgba(255, 255, 255, 0.90);
    border: 1px solid rgba(255, 255, 255, 0.78);
    border-radius: 26px;
    box-shadow: 0 18px 44px rgba(69, 52, 120, 0.14);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}
.brand { display: flex; align-items: center; gap: 17px; margin-bottom: 22px; }
.brand-logo {
    width: 78px; height: 78px; flex: 0 0 auto; object-fit: cover;
    border: 2px solid rgba(255, 255, 255, 0.88); border-radius: 23px;
    box-shadow: 0 10px 26px rgba(92, 69, 174, 0.22);
}
h1 { margin: 0 0 4px; font-size: 30px; line-height: 1.25; }
h2 { margin: 27px 0 8px; font-size: 19px; }
p { margin: 8px 0; }
ul { margin: 8px 0; padding-left: 21px; }
.subtitle { margin: 0; color: #766b88; }
.updated {
    display: inline-flex; align-items: center; min-height: 30px; margin-bottom: 15px;
    padding: 3px 12px; color: #654fbd; background: #eee7ff;
    border-radius: 999px; font-size: 13px; font-weight: 600;
}
.note, .welcome { padding: 13px 15px; color: #62596d; background: #f8f4ff; border-radius: 14px; }
.note { border-left: 4px solid #9d83f2; }
.faq { margin-top: 10px; padding: 15px 17px; background: rgba(255,255,255,.78); border: 1px solid #eee8fa; border-radius: 16px; }
.faq strong { display: block; margin-bottom: 4px; }
a { color: #654fbd; font-weight: 600; text-decoration: none; }
.contact-button {
    display: inline-flex; align-items: center; justify-content: center; min-height: 48px;
    margin-top: 12px; padding: 0 22px; color: #fff; background: #8068df;
    border-radius: 999px; font-weight: 700; box-shadow: 0 8px 18px rgba(101,79,189,.22);
}
.footer-links { margin-top: 26px; color: #766b88; font-size: 14px; }
@media (max-width: 560px) {
    .page { padding: 18px 12px 40px; }
    .card { padding: 22px 18px; border-radius: 22px; }
    .brand { gap: 13px; }
    .brand-logo { width: 64px; height: 64px; border-radius: 19px; }
    h1 { font-size: 24px; }
}
