.invitation-main { width: min(620px, calc(100% - 36px)); margin: 64px auto; }
.invitation-panel { background: #fff; border: 1px solid #d5e0e3; border-radius: 12px; padding: 36px; }
.invitation-panel h1 { font-size: clamp(26px, 5vw, 34px); line-height: 1.25; letter-spacing: -.025em; margin: 18px 0; }
.invitation-panel p { line-height: 1.65; max-width: 65ch; font-size: 15px; }
.invitation-icon { width: 36px; height: 36px; fill: none; stroke: #14685f; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.invitation-note { color: #526a73; margin: 20px 0 28px; }
#invitation-form .button { width: 100%; min-height: 46px; font-size: 14px; }
#invitation-status, .invitation-terms, .invitation-contact { color: #526a73; font-size: 12px !important; }
.invitation-terms { border-top: 1px solid #d5e0e3; padding-top: 20px; margin-top: 24px; }
.invitation-contact { margin: 20px 12px; text-align: center; }
@media(max-width: 480px) { .invitation-main { margin: 32px auto; } .invitation-panel { padding: 24px; } }
