.sc { position: absolute; inset: 0; overflow-y: auto; scrollbar-width: none; overscroll-behavior: contain; }
.sc::-webkit-scrollbar { display: none; }
.mock-h { display: flex; align-items: center; gap: 22px; height: 64px; padding: 0 clamp(20px, 4cqw, 48px); font-size: 13px; font-weight: 500; }
.mock-h b { font-size: 17px; font-weight: 550; letter-spacing: -0.022em; margin-right: auto; }
.mock-hero { padding: 60px clamp(20px, 4cqw, 48px) 40px; }
.mock-hero h3 { margin: 0; font-size: clamp(40px, 7cqw, 86px); line-height: .94; letter-spacing: -0.022em; font-weight: 550; max-width: 11ch; }
.mock-hero p { margin: 18px 0 0; max-width: 42ch; font-size: 17px; opacity: .7; }
.mock-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 0 clamp(20px, 4cqw, 48px) 60px; }
.mock-grid i { display: block; height: 220px; border-radius: 12px; }
@container (max-width: 700px) { .mock-grid { grid-template-columns: 1fr 1fr; } .mock-grid i:nth-child(3) { display: none; } .mock-h span { display: none; } }

/* ── F1. Footer behind the page ──────────────────────── */
.f1 { height: 640px; background: var(--gray-870); }
.f1-page { position: relative; z-index: 2; background: var(--gray-40); color: var(--gray-850); box-shadow: var(--e3); }
.f1-foot { position: sticky; bottom: 0; z-index: 1; height: 460px; background: var(--gray-870); color: var(--gray-70); overflow: hidden; }
.f1-in { height: 100%; display: flex; flex-direction: column; padding: 56px clamp(20px, 4cqw, 48px) 28px; will-change: transform; }
.f1-in h4 { margin: 0; font-size: clamp(40px, 8cqw, 104px); line-height: .9; letter-spacing: -0.022em; font-weight: 550; }
.f1-mail { margin-top: 16px; font-size: clamp(17px, 2.2cqw, 24px); color: color-mix(in srgb, var(--gray-70) 70%, transparent); }
.f1-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: auto; font-size: 13px; }
.f1-cols p { margin: 0 0 8px; color: color-mix(in srgb, var(--gray-70) 45%, transparent); font-size: 12px; }
.f1-cols span { display: block; padding: 2px 0; }
.f1-bot { display: flex; justify-content: space-between; margin-top: 28px; padding-top: 18px; border-top: 1px solid color-mix(in srgb, var(--gray-70) 12%, transparent); font-size: 13px; color: color-mix(in srgb, var(--gray-70) 50%, transparent); }

