.reserve-page { background:var(--foinse-color-paper); }
.reserve-hero { overflow:hidden; background:var(--foinse-color-surface-1); }
.reserve-hero h1 { max-width:760px; letter-spacing:-.055em; }
.reserve-status { padding:28px; background:var(--foinse-color-surface-1); border:1px solid var(--foinse-color-rule-200); border-radius:18px; box-shadow:0 12px 32px rgba(28,25,23,.08); }
.reserve-status__head,.reserve-status dl div { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.reserve-status__head { padding-bottom:22px; border-bottom:1px solid var(--foinse-color-rule-200); }
.reserve-status__head span { color:var(--foinse-color-ink-500); font-size:12px; font-weight:700; letter-spacing:.1em; }
.reserve-status__head b { color:var(--foinse-color-reserve); font-size:13px; }
.reserve-status__ratio { display:grid; gap:4px; padding:28px 0; }
.reserve-status__ratio strong { color:var(--foinse-text-primary); font-size:clamp(52px,6vw,76px); line-height:1; letter-spacing:-.06em; }
.reserve-status__ratio span,.reserve-status dt { color:var(--foinse-color-ink-500); }
.reserve-status dl { margin:0; }
.reserve-status dl div { padding:11px 0; border-top:1px solid var(--foinse-color-rule-200); }
.reserve-status dd { margin:0; font:600 13px var(--foinse-font-family-mono); }
.reserve-status > p { margin:22px 0 0; padding:12px; color:var(--foinse-color-reserve); font:12px var(--foinse-font-family-mono); text-align:center; background:var(--foinse-color-reserve-tint); border-radius:7px; }
.reserve-page main > .foinse-section:nth-of-type(2) { background:var(--foinse-color-paper); }
.reserve-page .grammar-grid { gap:1px; overflow:hidden; background:var(--foinse-color-rule-200); border:1px solid var(--foinse-color-rule-200); border-radius:14px; }
.reserve-page .grammar-grid > div { min-height:180px; padding:28px; background:var(--foinse-color-surface-1); }
.reserve-page .grammar-grid b { display:block; margin-bottom:48px; color:var(--foinse-color-reserve); font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.reserve-page .foinse-steps > li { min-height:235px; padding:28px; background:var(--foinse-color-surface-1); }
.reserve-page .foinse-step-no { color:var(--foinse-color-reserve); }
.reserve-page .foinse-block--reserve { padding:clamp(34px,5vw,64px); border-radius:16px; }
.reserve-page .foinse-reserve-line { margin-top:34px; padding:18px; text-align:center; background:var(--foinse-color-reserve-tint); border:1px solid rgba(15,157,88,.22); border-radius:8px; }
.reserve-attestations-hero { padding-block:clamp(70px,9vw,120px); background:var(--foinse-color-surface-1); }
.reserve-attestations-hero h1 { letter-spacing:-.055em; }
.reserve-attestations-page main > .foinse-section:first-of-type .wrap { max-width:900px; padding:clamp(34px,6vw,68px); background:var(--foinse-color-surface-1); border:1px solid var(--foinse-color-rule-200); border-radius:16px; }
.reserve-attestations-page main > .foinse-section:first-of-type h2::before { display:block; width:12px; height:12px; margin-bottom:24px; content:""; background:var(--foinse-color-caution); border-radius:50%; box-shadow:0 0 0 7px rgba(217,119,6,.09); }
.reserve-attestations-page main > .foinse-section:first-of-type p { max-width:780px; color:var(--foinse-color-ink-700); line-height:1.75; }
@media (max-width:900px) { .reserve-hero .hero-grid { grid-template-columns:1fr; } .reserve-status { max-width:620px; } }
@media (max-width:640px) { .reserve-status { padding:22px; } .reserve-page .grammar-grid { grid-template-columns:1fr; } .reserve-page .grammar-grid > div { min-height:0; } .reserve-page .grammar-grid b { margin-bottom:16px; } }
