.xz-member-page { min-height: 78vh; padding: 160px 24px 100px; background: #f3f4f0; }
.xz-member-card { width: min(560px, 100%); margin: 0 auto; padding: 46px; background: #fff; border: 1px solid rgba(18,20,19,.1); box-shadow: 0 14px 44px rgba(18,20,19,.07); }
.xz-member-kicker { margin: 0 0 14px; color: #66820b; font-size: 10px; font-weight: 800; letter-spacing: .16em; }
.xz-member-card h1 { margin: 0 0 14px; font-size: clamp(30px, 5vw, 46px); font-weight: 500; line-height: 1.16; }
.xz-member-card > p:not(.xz-member-kicker) { color: #626762; line-height: 1.8; }
.xz-line-form { display: grid; gap: 22px; margin-top: 30px; }
.xz-line-button { display: flex; justify-content: center; gap: 12px; align-items: center; min-height: 52px; padding: 12px 20px; color: #fff; border: 0; background: #06c755; cursor: pointer; font-weight: 800; text-align: center; }
.xz-line-button span { display: grid; width: 32px; height: 32px; place-items: center; color: #06c755; background: #fff; border-radius: 50%; font-size: 8px; }
.xz-line-form label { display: grid; gap: 8px; padding-top: 20px; border-top: 1px solid rgba(18,20,19,.1); font-size: 12px; font-weight: 700; }
.xz-line-form input { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid rgba(18,20,19,.2); }
.xz-line-form small, .xz-member-privacy { color: #777c77; font-size: 10px; font-weight: 400; }
.xz-member-error { padding: 11px 13px; color: #8a2020 !important; background: #fff0f0; border: 1px solid #efc1c1; }
.xz-member-pending { display: grid; gap: 5px; margin-top: 28px; padding: 18px; background: #edf1e2; }
.xz-member-status { display: flex; justify-content: space-between; gap: 20px; margin-top: 12px; padding: 14px 0; border-bottom: 1px solid rgba(18,20,19,.1); }
.xz-member-status span { color: #6b706c; }
.xz-member-actions { display: flex; gap: 18px; align-items: center; margin-top: 30px; }
.xz-member-actions .xz-line-button { min-width: 160px; }
.xz-contact-card { width: min(720px, 100%); margin: 0 auto; padding: 40px; background: #fff; border: 1px solid rgba(18,20,19,.1); }
.xz-contact-card h2 { margin: 0 0 12px; font-size: clamp(28px, 5vw, 44px); font-weight: 500; }
.xz-contact-card > p:not(.xz-member-kicker) { color: #626762; line-height: 1.8; }
.xz-contact-form { display: grid; gap: 18px; margin-top: 28px; }
.xz-contact-form label { display: grid; gap: 8px; font-size: 12px; font-weight: 700; }
.xz-contact-form input, .xz-contact-form textarea { width: 100%; padding: 12px; border: 1px solid rgba(18,20,19,.2); background: #fff; font: inherit; }
.xz-contact-form textarea { resize: vertical; }
.xz-contact-form .xz-line-button { width: max-content; min-width: 180px; background: #121413; }
.xz-contact-hp { position: absolute !important; left: -9999px !important; }
.xz-contact-notice { padding: 11px 13px; border: 1px solid; }
.xz-contact-notice.is-success { color: #315200 !important; background: #edf6d8; border-color: #b9d87b; }
.xz-contact-notice.is-error { color: #8a2020 !important; background: #fff0f0; border-color: #efc1c1; }
@media (max-width: 600px) { .xz-member-page { padding: 118px 16px 70px; } .xz-member-card { padding: 30px 22px; } }
@media (max-width: 600px) { .xz-contact-card { padding: 28px 20px; } .xz-contact-form .xz-line-button { width: 100%; } }
