* { box-sizing: border-box; }
:root { color-scheme: light; font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #0b0b0b; background: #faf9f6; }
body { margin: 0; }
.shell { max-width: 1160px; margin: auto; padding: 32px 56px 28px; }
header { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.brand { display: block; object-fit: contain; }
.badge { display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; border: 1px solid #dddcd8; border-radius: 999px; font-size: 12px; font-weight: 600; background: #fff; }
.dot { width: 6px; height: 6px; border-radius: 50%; background: #246749; }
.hero { padding: 65px 0 45px; }
.eyebrow { margin: 0 0 22px; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #66635c; }
h1 { margin: 0; font-size: clamp(48px, 7vw, 86px); line-height: 1.04; letter-spacing: -.065em; font-weight: 750; }
.period { color: #ff3b3b; }
.intro { margin: 25px 0 22px; color: #605e58; font-size: 18px; line-height: 1.65; letter-spacing: -.01em; }
.formats { padding: 0; margin: 0; display: flex; gap: 8px; list-style: none; flex-wrap: wrap; }
.formats li { padding: 8px 13px; border: 1px solid #deddd8; border-radius: 999px; font-size: 12px; color: #45443f; }
.preview { border: 1px solid #e0ded8; border-radius: 22px; background: #fff; padding: 28px 30px 0; overflow: hidden; }
.preview-heading { display: flex; align-items: center; gap: 14px; }
.connection { width: 38px; height: 38px; display: flex; align-items: center; justify-content: center; border-radius: 50%; flex-shrink: 0; background: #eef6f0; color: #246749; font-size: 19px; }
h2 { margin: 0; font-size: 19px; letter-spacing: -.025em; }
.preview-heading p { margin: 5px 0 0; color: #605e58; font-size: 13px; line-height: 1.5; }
.preview-copy { color: #605e58; font-size: 14px; line-height: 1.75; max-width: 700px; margin: 21px 0 26px; }
.steps { display: grid; grid-template-columns: repeat(3, 1fr); list-style: none; padding: 0; margin: 0; border-top: 1px solid #ecebe6; }
.steps li { display: flex; align-items: flex-start; gap: 12px; padding: 22px 10px 25px 0; }
.step-number { padding-top: 1px; font-size: 11px; font-weight: 600; color: #78756e; }
.steps strong { display: block; font-size: 13px; font-weight: 600; }
.steps div > span { display: block; margin-top: 6px; font-size: 12px; color: #78756e; }
.current .step-number, .current div > span { color: #246749; }
footer { display: flex; justify-content: space-between; gap: 16px; padding-top: 27px; color: #79766f; font-size: 11px; line-height: 1.6; }
@media (max-width: 620px) { .shell { padding: 22px 24px 26px; } .brand { width: 60px; height: 60px; } .hero { padding: 48px 0 33px; } .eyebrow { font-size: 10px; margin-bottom: 18px; } .intro { font-size: 16px; } .wide-only { display: none; } .preview { padding: 22px 22px 0; } .steps { grid-template-columns: 1fr; } .steps li { padding: 17px 0; } .steps li + li { border-top: 1px solid #f0efeb; } footer { flex-direction: column; gap: 5px; } }
