:root { --accent: #984f34; --accent-text: #984f34; --accent-soft: #d8caff; --canvas: #f4f1eb; --ink: #171513; }
.brand-mark { border-radius: 50%; background: var(--accent-soft); }
.hero { min-height: 650px; margin-top: 12px; padding: clamp(38px, 6vw, 76px); border-radius: 30px; background: var(--accent); }
.hero .eyebrow, .hero-description, .hero .utility-note { color: #fff7f1; }
.hero h1 { color: #fffdf8; font-family: Iowan Old Style, Baskerville, Georgia, serif; font-size: clamp(54px, 6.8vw, 88px); font-weight: 500; letter-spacing: -.055em; }
.hero .utility-note strong { color: white; }
.tool-column { min-width: 0; }
.tool-note { display: flex; justify-content: space-between; padding: 0 4px 12px; color: #fff7f1; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.tool-shell { border: 0; border-radius: 16px; box-shadow: none; }
.primary-button { border-color: var(--accent-soft); background: var(--accent-soft); color: var(--ink); }
.primary-button:hover:not(:disabled) { box-shadow: 0 7px 0 rgba(41, 27, 20, .28); }
.limit-upsell { border-color: var(--ink); background: #f4eddf; }
.limit-upsell .primary-button { background: var(--ink); color: white; }
.information-heading h2 { font-family: Iowan Old Style, Baskerville, Georgia, serif; font-weight: 500; }
@media (max-width: 980px) { .hero { padding: 52px; } }
@media (max-width: 720px) { .hero { margin-inline: 0; padding: 36px 18px; border-radius: 18px; } }
@media (max-width: 520px) { .hero h1 { font-size: clamp(42px, 14.5vw, 58px); } }
