/* Product home. Scoped so campaign and customer pages retain their own design. */
body.hp-home {
    --hp-ink: #182e3b;
    --hp-muted: #64717b;
    --hp-coral: #e85339;
    --hp-coral-soft: #fff0e9;
    --hp-teal: #148677;
    --hp-teal-soft: #e9f6f0;
    --hp-idle: #a8b8c6;
    --hp-line: #e6e9e8;
    --hp-cream: #fbf8f3;
    background: #fff;
    color: var(--hp-ink);
}

body.hp-home :where(button, input, select) { font: inherit; }
body.hp-home [hidden] { display: none !important; }
body.hp-home :where(a, button, summary):focus-visible { outline: 3px solid #b33b25; outline-offset: 5px; }
body.hp-home main { overflow: clip; }
body.hp-home main [id] { scroll-margin-top: 150px; }
body.hp-home .hp-wrap { width: min(1180px, 92vw); margin-inline: auto; }
body.hp-home :where(.hp-hero-grid, .hp-problem-grid, .hp-tour-grid, .hp-explorer-grid, .hp-feature-grid, .hp-steps, .hp-flow-grid, .hp-final-grid) > * { min-width: 0; }
body.hp-home .hp-section { padding-block: 90px; }
body.hp-home .hp-section--soft { background: var(--hp-cream); }
body.hp-home .hp-section--dark { background: var(--hp-ink); color: #fff; }
body.hp-home .hp-eyebrow { margin: 0 0 15px; color: #ae3b25; font-size: .7rem; font-weight: 700; line-height: 1.6; letter-spacing: .13em; text-transform: uppercase; }
body.hp-home .hp-eyebrow::before { content: ""; display: inline-block; width: 24px; height: 2px; margin-right: 9px; background: currentColor; vertical-align: middle; }
body.hp-home .hp-section-head { max-width: 720px; margin-bottom: 38px; }
body.hp-home .hp-section-head h2,
body.hp-home .hp-final h2 { margin: 0; font-size: clamp(1.9rem, 3.8vw, 2.85rem); font-weight: 700; line-height: 1.15; letter-spacing: -.045em; text-wrap: balance; }
body.hp-home .hp-section-head > p:not(.hp-eyebrow) { margin: 17px 0 0; max-width: 60ch; color: var(--hp-muted); font-size: .98rem; line-height: 1.8; }
body.hp-home .hp-accent { color: var(--hp-coral); }
body.hp-home .hp-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 13px; margin-top: 27px; }
body.hp-home .hp-actions .cd-btn { min-height: 50px; max-width: 100%; padding: 14px 23px; border-radius: 7px; font-size: .84rem; text-align: center; line-height: 1.5; white-space: normal; }
body.hp-home .hp-actions .cd-btn-coral { background: var(--hp-coral); box-shadow: 0 5px 12px #e853391f; }
body.hp-home .hp-actions .cd-btn-coral:hover { background: #c83c27; }
body.hp-home .hp-actions .cd-btn-outline-coral { color: var(--hp-ink) !important; border: 1px solid #d5d9d7; background: #fff; }
body.hp-home .hp-actions .cd-btn-outline-coral:hover { border-color: var(--hp-ink); background: #f6f7f5; }
body.hp-home .hp-note,
body.hp-home .hp-caption,
body.hp-home .hp-demo-disclosure,
body.hp-home .hp-chart-caption { color: var(--hp-muted); font-size: .71rem; line-height: 1.7; }
body.hp-home .hp-note { margin: 14px 0 0; }
body.hp-home .hp-caption { margin: 15px 0 0; }
body.hp-home .hp-link { display: inline-flex; gap: 6px; align-items: center; color: #b53e28; font-size: .83rem; font-weight: 600; text-underline-offset: 4px; }
body.hp-home .hp-link:hover { color: #8d2d1c; }

/* A readable first screen, with a bespoke demonstration of the product. */
body.hp-home .hp-hero { position: relative; padding-block: 66px 52px; background: linear-gradient(120deg, #fffcf9 14%, #fbf5ef 58%, #eef6f1 100%); }
body.hp-home .hp-hero-grid { display: grid; grid-template-columns: .98fr 1.02fr; align-items: center; gap: 40px; }
body.hp-home .hp-hero-copy { position: relative; z-index: 1; }
body.hp-home .hp-hero-copy h1 { margin: 0 0 23px; max-width: 12ch; font-size: clamp(2.9rem, 4.8vw, 4rem); font-weight: 800; letter-spacing: -.06em; line-height: 1.08; text-wrap: balance; }
body.hp-home .hp-hero-copy h1 em { color: var(--hp-coral); font-style: normal; }
body.hp-home .hp-lead { max-width: 46ch; margin: 0; color: #56646d; font-size: 1rem; line-height: 1.8; }
body.hp-home .hp-lead strong { color: var(--hp-ink); font-weight: 600; }
body.hp-home .hp-contact-line { margin: 16px 0 0; font-size: .72rem; line-height: 1.8; color: #66717a; }
body.hp-home .hp-contact-line a { color: #a93b27; font-weight: 600; overflow-wrap: anywhere; text-underline-offset: 3px; }
body.hp-home .hp-trust-row { display: flex; flex-wrap: wrap; gap: 8px 15px; margin-top: 26px; color: #56666a; font-size: .68rem; }
body.hp-home .hp-trust-row > span { display: inline-flex; align-items: center; gap: 5px; }
body.hp-home .hp-trust-row > span::before { content: "✓"; color: var(--hp-teal); font-weight: 700; }
body.hp-home .hp-trust-row svg { width: 15px; height: 15px; color: var(--hp-teal); flex-shrink: 0; }
body.hp-home .hp-dashboard-wrap { position: relative; padding-block: 26px 38px; min-width: 0; }
body.hp-home .hp-dashboard-wrap::before { content: ""; position: absolute; z-index: 0; width: 83%; aspect-ratio: 1; border: 1px solid #d5e4db; border-radius: 50%; top: 0; left: 17%; background: #e9f2e85c; }
body.hp-home .hp-dashboard { position: relative; width: 100%; margin: 0; border: 1px solid #e0e5e3; border-radius: 13px; background: #fff; box-shadow: 0 24px 60px -25px #2549364a, 0 4px 14px #2549360c; overflow: hidden; }
body.hp-home .hp-dashboard > figcaption { padding: 9px 12px; color: #7a898c; background: #fff; border-top: 1px solid var(--hp-line); font-size: .55rem; line-height: 1.7; }
body.hp-home .hp-window-bar { display: flex; align-items: center; justify-content: space-between; gap: 10px; height: 39px; padding-inline: 14px; background: #fff; border-bottom: 1px solid #e9eceb; }
body.hp-home .hp-window-dots { display: flex; align-items: center; gap: 4px; flex-shrink: 0; }
body.hp-home .hp-window-dots span { width: 6px; height: 6px; background: #d9dfdd; border-radius: 50%; }
body.hp-home .hp-window-dots span:first-child { background: #f0a994; }
body.hp-home .hp-window-dots span:nth-child(2) { background: #e5cf9c; }
body.hp-home .hp-window-dots span:nth-child(3) { background: #aad0bf; }
body.hp-home .hp-window-bar > :not(.hp-window-dots) { font-size: .58rem; color: #7d8b91; }
body.hp-home .hp-example-badge { display: inline-flex; align-items: center; gap: 5px; border: 1px solid #d7e4de; border-radius: 4px; padding: 3px 6px; font-size: .57rem; line-height: 1.4; color: #4f6d61; background: #f4f9f6; white-space: nowrap; }
body.hp-home .hp-demo-layout { display: grid; grid-template-columns: 82px minmax(0, 1fr); min-height: 340px; }
body.hp-home .hp-demo-sidebar { padding: 16px 9px; background: var(--hp-ink); color: #8b9eaa; font-size: .55rem; }
body.hp-home .hp-demo-sidebar > strong { display: block; margin-bottom: 22px; color: #fff; font-size: .62rem; letter-spacing: -.03em; }
body.hp-home .hp-demo-sidebar > span,
body.hp-home .hp-demo-sidebar > a { display: flex; align-items: center; gap: 5px; padding: 8px 5px; margin-bottom: 5px; border-radius: 4px; color: inherit; text-decoration: none; line-height: 1.4; }
body.hp-home .hp-demo-sidebar :where(.is-active, .is-current) { background: #ffffff13; color: #fff; }
body.hp-home .hp-demo-sidebar svg { width: 12px; height: 12px; flex-shrink: 0; }
body.hp-home .hp-demo-main { min-width: 0; padding: 18px 17px 20px; background: #f7f9fa; }
body.hp-home .hp-demo-heading { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 17px; }
body.hp-home .hp-demo-heading h2,
body.hp-home .hp-demo-heading h3 { margin: 0; font-size: .9rem; font-weight: 700; line-height: 1.4; letter-spacing: -.025em; }
body.hp-home .hp-demo-heading p { margin: 3px 0 0; color: #8b969c; font-size: .56rem; }
body.hp-home .hp-demo-heading > div > small { display: block; margin-bottom: 4px; color: #859299; font-size: .55rem; }
body.hp-home .hp-demo-heading > div > strong { display: block; font-size: .83rem; line-height: 1.4; font-weight: 600; letter-spacing: -.025em; }
body.hp-home .hp-demo-heading > span { padding: 4px 7px; border: 1px solid #e1e6e8; background: #fff; border-radius: 4px; color: #77868e; font-size: .5rem; white-space: nowrap; }
body.hp-home .hp-demo-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
body.hp-home .hp-stat { min-width: 0; padding: 11px 10px; border: 1px solid #e7eceb; border-radius: 6px; background: #fff; }
body.hp-home .hp-stat strong { display: block; font-size: 1.3rem; line-height: 1.2; letter-spacing: -.045em; font-weight: 700; }
body.hp-home .hp-stat small { display: block; margin-top: 4px; color: #7b8990; font-size: .52rem; }
body.hp-home .hp-stat:first-child strong { color: var(--hp-teal); }
body.hp-home .hp-stat:last-child strong { color: var(--hp-coral); }
body.hp-home .hp-demo-chart { margin-top: 12px; padding: 12px; border: 1px solid #e7eceb; border-radius: 6px; background: #fff; }
body.hp-home .hp-demo-chart > strong { display: block; margin-bottom: 4px; font-size: .6rem; font-weight: 600; }
body.hp-home .hp-demo-chart svg { display: block; width: 100%; height: auto; overflow: visible; }
body.hp-home .hp-demo-chart svg text { font-family: inherit; }
body.hp-home .hp-chart-key { display: flex; flex-wrap: wrap; align-items: center; gap: 7px 12px; color: #76858c; font-size: .53rem; }
body.hp-home .hp-mini-timeline + .hp-chart-key { margin-top: 8px; }
body.hp-home .hp-chart-key > span { display: inline-flex; align-items: center; gap: 4px; }
body.hp-home .hp-key-dot { display: inline-block; width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: var(--hp-idle); }
body.hp-home .hp-key-dot.is-active { background: var(--hp-teal); }
body.hp-home .hp-key-dot.is-idle { background: var(--hp-idle); }
body.hp-home .hp-key-dot.is-apps { background: var(--hp-coral); }
body.hp-home .hp-mini-timeline { display: flex; gap: 3px; overflow: hidden; height: 12px; margin-top: 15px; border-radius: 3px; background: #edf0f2; }
body.hp-home .hp-segment { min-width: 0; flex: var(--segment, 1); background: var(--hp-teal); }
body.hp-home .hp-segment[data-kind="active"] { background: var(--hp-teal); }
body.hp-home .hp-segment[data-kind="idle"] { background: var(--hp-idle); }
body.hp-home .hp-segment[data-kind="apps"] { background: var(--hp-coral); }
body.hp-home .hp-time-labels { display: flex; justify-content: space-between; gap: 5px; margin-top: 5px; color: #829097; font-size: .52rem; }
body.hp-home .hp-float-card { position: absolute; z-index: 2; display: flex; align-items: center; gap: 10px; padding: 12px 16px; background: #fff; border: 1px solid #e6ebe6; border-radius: 9px; box-shadow: 0 9px 25px -10px #263d3e3b; font-size: .66rem; line-height: 1.5; }
body.hp-home .hp-float-card > svg { width: 29px; height: 29px; padding: 6px; background: var(--hp-teal-soft); color: var(--hp-teal); border-radius: 8px; flex-shrink: 0; }
body.hp-home .hp-float-card strong { display: block; color: var(--hp-ink); font-size: .72rem; }
body.hp-home .hp-float-card small { color: #7b878b; font-size: .6rem; }
body.hp-home .hp-float-card--top { top: 0; right: -13px; }
body.hp-home .hp-float-card--bottom { bottom: 10px; left: -16px; }
body.hp-home .hp-signal-dot { display: inline-block; width: 7px; height: 7px; flex-shrink: 0; border-radius: 50%; background: var(--hp-teal); box-shadow: 0 0 0 4px #14867715; }
body.hp-home .hp-value-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 45px; border-top: 1px solid #e2e6df; padding-top: 26px; gap: 20px; }
body.hp-home .hp-value-item { display: flex; min-width: 0; align-items: center; gap: 11px; color: #576568; font-size: .73rem; line-height: 1.6; }
body.hp-home .hp-value-item svg { width: 23px; height: 23px; flex-shrink: 0; color: var(--hp-teal); }
body.hp-home .hp-value-item strong { display: block; color: var(--hp-ink); font-size: .76rem; font-weight: 600; }

/* The business problem is explained in three short, visible signals. */
body.hp-home .hp-problem-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
body.hp-home .hp-problem-card { padding: 28px; border: 1px solid var(--hp-line); border-radius: 12px; background: #fff; }
body.hp-home .hp-problem-number { display: block; font-size: .68rem; color: #acb6b8; font-weight: 600; letter-spacing: .08em; }
body.hp-home .hp-problem-card h3 { margin: 17px 0 10px; font-size: 1.13rem; line-height: 1.4; font-weight: 600; letter-spacing: -.025em; }
body.hp-home .hp-problem-card p { margin: 0; color: var(--hp-muted); font-size: .82rem; line-height: 1.8; }
body.hp-home .hp-mini-bars { display: flex; height: 74px; align-items: flex-end; gap: 7px; padding-top: 10px; margin-top: 22px; border-bottom: 1px solid var(--hp-line); }
body.hp-home .hp-mini-bars > span { flex: 1; min-width: 0; height: var(--bar, 70%); border-radius: 4px 4px 0 0; background: #dfece6; transform-origin: bottom; }
body.hp-home .hp-mini-bars > span:nth-child(3n) { background: #efa18c; }
body.hp-home .hp-mini-bars > span:last-child { background: var(--hp-coral); }
body.hp-home .hp-mini-bars--compare { align-items: center; flex-direction: column; justify-content: center; height: 74px; padding: 0; gap: 8px; border-bottom: 0; }
body.hp-home .hp-mini-bars--compare > span { width: var(--bar, 70%); height: 12px; min-height: 12px; align-self: flex-start; border-radius: 3px; flex: 0 0 12px; transform-origin: left; }
body.hp-home .hp-mini-bars--compare > span:first-child { background: var(--hp-teal); }

/* Product tour, with real interface screenshots. */
body.hp-home .hp-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid var(--hp-line); }
body.hp-home .hp-tab { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 43px; padding: 10px 16px; border: 1px solid transparent; border-radius: 6px; background: transparent; color: #69757d; font-size: .76rem; font-weight: 500; line-height: 1.5; text-align: center; cursor: pointer; }
body.hp-home .hp-tab svg { width: 17px; height: 17px; flex-shrink: 0; }
body.hp-home .hp-tab:hover { background: #f2f3ef; color: var(--hp-ink); }
body.hp-home .hp-tab[aria-selected="true"] { color: #a23624; background: #fff1e9; border-color: #f1d3c8; }
body.hp-home .hp-tour-panel[hidden] { display: none !important; }
body.hp-home .hp-tour-panel:not([hidden]) + .hp-tour-panel:not([hidden]) { margin-top: 46px; }
body.hp-home .hp-tour-grid { display: grid; grid-template-columns: .65fr 1.35fr; gap: 42px; align-items: center; }
body.hp-home .hp-tour-copy h3 { margin: 0 0 17px; font-size: clamp(1.45rem, 2.4vw, 2.05rem); font-weight: 700; line-height: 1.25; letter-spacing: -.035em; }
body.hp-home .hp-tour-copy > p { margin: 0; color: var(--hp-muted); font-size: .88rem; line-height: 1.85; }
body.hp-home .hp-bullets { list-style: none; padding: 0; margin: 23px 0 0; }
body.hp-home .hp-bullets li { position: relative; margin-top: 12px; padding-left: 23px; color: #43565f; font-size: .78rem; line-height: 1.7; }
body.hp-home .hp-bullets li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--hp-teal); font-weight: 700; }
body.hp-home .hp-tour-copy .hp-link { margin-top: 22px; }
body.hp-home .hp-shot-window { margin: 0; border: 1px solid #dfe5e3; border-radius: 10px; overflow: hidden; background: #fff; box-shadow: 0 22px 45px -27px #2a494c48; }
body.hp-home .hp-shot-topbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 38px; padding: 10px 13px; border-bottom: 1px solid var(--hp-line); background: #fff; color: #78878b; font-size: .61rem; line-height: 1.5; }
body.hp-home .hp-shot-topbar > span { min-width: 0; }
body.hp-home .hp-zoom { display: block; position: relative; background: #f6f8f7; cursor: zoom-in; }
body.hp-home .hp-zoom img { display: block; width: 100%; height: auto; }
body.hp-home .hp-zoom::after { content: "Ampliar captura ↗"; position: absolute; bottom: 12px; right: 12px; color: #fff; background: #182e3be8; padding: 6px 9px; border-radius: 4px; font-size: .58rem; line-height: 1.5; pointer-events: none; }
body.hp-home .hp-shot-caption { margin: 0; padding: 11px 14px; color: #6f7d83; font-size: .62rem; line-height: 1.65; border-top: 1px solid var(--hp-line); }
body.hp-home .hp-tour-progress { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 24px; font-size: .75rem; }
body.hp-home .hp-tour-progress a { color: #7a8589; text-underline-offset: 4px; }

/* An interactive illustrated day: the labels and numbers remain readable. */
body.hp-home .hp-section--dark .hp-eyebrow { color: #ffc0a7; }
body.hp-home .hp-section--dark .hp-section-head > p:not(.hp-eyebrow) { color: #bbccd1; }
body.hp-home .hp-explorer-grid { display: grid; grid-template-columns: .82fr 1.18fr; align-items: center; gap: 60px; }
body.hp-home .hp-explorer-grid .hp-section-head { margin-bottom: 0; }
body.hp-home .hp-explorer-grid > div:first-child > h2 { margin: 0; font-size: clamp(1.9rem, 3.5vw, 2.65rem); font-weight: 700; line-height: 1.2; letter-spacing: -.045em; text-wrap: balance; }
body.hp-home .hp-explorer-grid > div:first-child > p:not(.hp-eyebrow) { margin: 17px 0 0; color: #bbccd1; font-size: .88rem; line-height: 1.85; }
body.hp-home .hp-explorer-grid > div:first-child > p.hp-note { color: #a2b6be; font-size: .7rem; }
body.hp-home .hp-scenario-buttons { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
body.hp-home .hp-scenario-buttons button { padding: 10px 12px; min-height: 43px; border: 1px solid #ffffff38; border-radius: 5px; background: transparent; color: #d0dce0; cursor: pointer; font-size: .71rem; font-weight: 500; line-height: 1.5; }
body.hp-home .hp-scenario-buttons button:hover { border-color: #c3d7da; background: #ffffff08; }
body.hp-home .hp-scenario-buttons button[aria-pressed="true"] { color: var(--hp-ink); background: #fff; border-color: #fff; }
body.hp-home .hp-explorer-card { padding: 25px; border: 1px solid #e5ebe7; border-radius: 14px; background: #fff; color: var(--hp-ink); box-shadow: 0 20px 50px -30px #0006; }
body.hp-home .hp-explorer-card > .hp-demo-heading { margin-bottom: 14px; }
body.hp-home .hp-explorer-card .hp-demo-heading h3 { font-size: .91rem; }
body.hp-home .hp-explorer-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; align-items: center; }
body.hp-home .hp-donut { position: relative; width: 100%; max-width: 250px; margin-inline: auto; aspect-ratio: 1; }
body.hp-home .hp-donut > svg { display: block; width: 100%; height: auto; transform: rotate(-90deg); }
body.hp-home .hp-donut svg circle { fill: none; stroke-width: 13px; }
body.hp-home .hp-ring-track { stroke: #eff2f2; }
body.hp-home .hp-ring-active { stroke: var(--hp-teal); }
body.hp-home .hp-ring-idle { stroke: var(--hp-idle); }
body.hp-home .hp-ring-apps { stroke: var(--hp-coral); }
body.hp-home :where(.hp-ring-active, .hp-ring-idle, .hp-ring-apps) { transition: stroke-dasharray .65s ease, stroke-dashoffset .65s ease; }
body.hp-home .hp-donut-center { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; text-align: center; padding: 25%; pointer-events: none; }
body.hp-home .hp-donut-center strong { font-size: clamp(1.8rem, 3.3vw, 2.65rem); letter-spacing: -.05em; line-height: 1.1; color: var(--hp-ink); font-weight: 700; }
body.hp-home .hp-donut-center small { margin-top: 5px; color: #829096; font-size: .61rem; }
body.hp-home .hp-breakdown { display: grid; gap: 17px; min-width: 0; }
body.hp-home .hp-breakdown-row { display: grid; grid-template-columns: 8px 1fr auto; align-items: center; gap: 7px; font-size: .68rem; color: #657880; }
body.hp-home .hp-breakdown-row strong { color: var(--hp-ink); font-size: .86rem; font-weight: 600; white-space: nowrap; }
body.hp-home .hp-breakdown-row .hp-key-dot { width: 7px; height: 7px; }
body.hp-home .hp-explorer-timeline { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--hp-line); }
body.hp-home .hp-explorer-timeline > strong { display: block; margin-bottom: 9px; font-size: .65rem; font-weight: 600; }
body.hp-home .hp-timeline { display: flex; gap: 4px; overflow: hidden; height: 21px; border-radius: 4px; background: #edf0f2; }
body.hp-home .hp-demo-disclosure { margin: 15px 0 0; color: #aebfc5; }
body.hp-home .hp-explorer-card .hp-demo-disclosure { color: #78878e; font-size: .63rem; }
body.hp-home .hp-chart-caption { margin: 14px 0 0; }
body.hp-home .hp-motion-toggle { margin-top: 17px; padding: 5px 0; border: 0; background: none; color: inherit; font-size: .7rem; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
body.hp-home .hp-section--dark .hp-motion-toggle:focus-visible { outline-color: #ffc0a7; }

/* Each function is paired with a small visual, rather than a wall of text. */
body.hp-home .hp-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
body.hp-home .hp-feature-card { display: flex; flex-direction: column; min-width: 0; padding: 26px; background: #fff; border: 1px solid var(--hp-line); border-radius: 12px; }
body.hp-home .hp-feature-icon { display: inline-flex; width: 37px; height: 37px; align-items: center; justify-content: center; border-radius: 9px; background: var(--hp-coral-soft); color: #c94d33; }
body.hp-home .hp-feature-icon svg { width: 19px; height: 19px; }
body.hp-home .hp-feature-card h3 { margin: 17px 0 10px; font-size: 1.02rem; font-weight: 600; line-height: 1.4; letter-spacing: -.025em; }
body.hp-home .hp-feature-card p { margin: 0; color: var(--hp-muted); font-size: .78rem; line-height: 1.85; }
body.hp-home .hp-feature-visual { position: relative; display: flex; min-height: 130px; align-items: center; justify-content: center; margin-top: 22px; padding: 17px; border: 1px solid #edf0eb; background: #f8faf7; border-radius: 8px; overflow: hidden; }
body.hp-home .hp-feature-link { margin-top: auto; padding-top: 20px; color: #ae3b25; font-size: .72rem; font-weight: 600; text-underline-offset: 4px; }
body.hp-home .hp-clock-visual { display: flex; align-items: center; justify-content: center; gap: 14px; }
body.hp-home .hp-clock-visual > svg { width: 49px; height: 49px; color: var(--hp-teal); }
body.hp-home .hp-clock-visual strong { display: block; color: var(--hp-ink); font-size: 1.85rem; letter-spacing: -.055em; line-height: 1.2; font-weight: 600; }
body.hp-home .hp-clock-visual small { display: block; margin-top: 4px; color: #7b8b90; font-size: .6rem; }
body.hp-home .hp-clock-visual > span { min-width: 0; text-align: center; color: #829095; font-size: .58rem; line-height: 1.8; }
body.hp-home .hp-clock-visual > i { color: #9ab3aa; font-size: 1rem; font-style: normal; }
body.hp-home .hp-app-bars { width: 100%; display: grid; gap: 11px; }
body.hp-home .hp-app-bar { display: grid; grid-template-columns: 87px 1fr; align-items: center; gap: 8px; }
body.hp-home .hp-app-bar label { color: #6d7b83; font-size: .55rem; overflow-wrap: anywhere; }
body.hp-home .hp-app-bar > span { display: block; position: relative; width: 100%; height: 9px; border-radius: 3px; background: #e9eeeb; overflow: hidden; }
body.hp-home .hp-app-bar > span::before { content: ""; position: absolute; inset-block: 0; left: 0; width: var(--bar, 70%); background: var(--hp-teal); border-radius: inherit; transform-origin: left; }
body.hp-home .hp-app-bar:last-child > span::before { background: #e99a85; }
body.hp-home .hp-compare-bars { display: flex; align-items: flex-end; justify-content: space-between; gap: 11px; width: 100%; height: 87px; border-bottom: 1px solid #e3e9e6; padding-inline: 10px; }
body.hp-home .hp-compare-bars > span { position: relative; height: var(--bar, 75%); min-width: 0; flex: 1; max-width: 33px; border-radius: 4px 4px 0 0; background: var(--hp-teal); transform-origin: bottom; }
body.hp-home .hp-compare-bars > span:nth-child(2n) { background: #9bc8b6; }
body.hp-home .hp-compare-bars > span:last-child { background: #e99a85; }
body.hp-home .hp-compare-bars > span > i { position: absolute; bottom: 4px; inset-inline: 0; color: #fff; text-align: center; font-size: .53rem; font-style: normal; }
body.hp-home .hp-feature-visual:has(.hp-alert-pill) { flex-direction: column; gap: 7px; }
body.hp-home .hp-alert-pill { display: flex; align-items: center; gap: 9px; max-width: 100%; border: 1px solid #eeddd4; border-radius: 7px; padding: 12px 14px; background: #fff; color: #9b543c; font-size: .66rem; line-height: 1.6; box-shadow: 0 5px 15px #273d3510; }
body.hp-home .hp-feature-visual > .hp-alert-pill { width: 100%; padding: 8px 11px; font-size: .6rem; }
body.hp-home .hp-alert-pill svg { width: 21px; height: 21px; flex-shrink: 0; color: #db7d56; }
body.hp-home .hp-alert-pill strong { display: block; color: #77402f; font-size: .69rem; }
body.hp-home .hp-csv-preview { width: 100%; border: 1px solid #e4eae6; border-radius: 5px; background: #fff; overflow: hidden; }
body.hp-home .hp-feature-visual.hp-csv-preview { display: flex; flex-direction: column; align-items: stretch; padding: 0; }
body.hp-home .hp-csv-preview table { width: 100%; border-collapse: collapse; font-size: .54rem; text-align: left; }
body.hp-home .hp-csv-preview :where(th, td) { padding: 6px; border-bottom: 1px solid #edf0ec; color: #75868a; font-weight: 400; }
body.hp-home .hp-csv-preview th { background: #edf5ef; color: #487461; font-weight: 600; }
body.hp-home .hp-csv-row { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 8px; padding: 7px 10px; border-bottom: 1px solid #edf0ec; color: #75868a; font-size: .54rem; }
body.hp-home .hp-csv-row:first-child { background: #edf5ef; color: #487461; font-weight: 600; }
body.hp-home .hp-csv-row:last-child { border: 0; }
body.hp-home .hp-calendar-mini { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 5px; width: 100%; max-width: 225px; }
body.hp-home .hp-calendar-mini span { display: flex; align-items: center; justify-content: center; min-height: 19px; border-radius: 3px; color: #7e8f95; background: #fff; font-size: .53rem; }
body.hp-home .hp-calendar-mini .is-dayoff { background: #edf0eb; color: #9ea7a8; }
body.hp-home .hp-calendar-mini .is-selected { background: #e4b29c; color: #623d30; }

body.hp-home .hp-steps,
body.hp-home .hp-flow-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; counter-reset: hp-step; }
body.hp-home ol.hp-steps { list-style: none; padding: 0; margin: 0; }
body.hp-home .hp-flow-card { position: relative; padding: 24px 0 0; border-top: 1px solid #d8e0da; }
body.hp-home .hp-step-number { display: inline-flex; width: 36px; height: 36px; align-items: center; justify-content: center; margin-bottom: 17px; border: 1px solid #e9c8b9; background: #fff0e8; color: #b94c30; border-radius: 50%; font-size: .74rem; font-weight: 600; }
body.hp-home :where(.hp-steps, .hp-flow-grid) h3 { margin: 0 0 9px; font-size: 1.05rem; line-height: 1.5; font-weight: 600; letter-spacing: -.02em; }
body.hp-home :where(.hp-steps, .hp-flow-grid) p { margin: 0; color: var(--hp-muted); font-size: .81rem; line-height: 1.85; }
body.hp-home .hp-price-card { display: flex; align-items: center; justify-content: space-between; gap: 32px; margin-top: 42px; padding: 30px 35px; border: 1px solid #e5dfd4; border-radius: 11px; background: #fff; }
body.hp-home .hp-price-card h3 { margin: 0 0 6px; font-size: 1.05rem; font-weight: 600; line-height: 1.5; }
body.hp-home .hp-price-card p { margin: 0; max-width: 50ch; color: var(--hp-muted); font-size: .78rem; line-height: 1.8; }
body.hp-home .hp-price-amount { flex-shrink: 0; color: var(--hp-ink); font-size: 2.4rem; font-weight: 700; letter-spacing: -.05em; line-height: 1.2; }
body.hp-home .hp-price-amount :where(small, span) { display: block; margin-top: 7px; color: var(--hp-muted); font-size: .64rem; letter-spacing: 0; line-height: 1.6; font-weight: 400; }
body.hp-home .hp-price-card .hp-price-amount { margin-block: 7px 14px; color: var(--hp-ink); font-size: 2.4rem; font-weight: 700; letter-spacing: -.05em; line-height: 1.2; }
body.hp-home .hp-price-card > .cd-btn { min-height: 50px; padding: 14px 23px; border-radius: 7px; font-size: .84rem; text-align: center; line-height: 1.5; }
body.hp-home .hp-price-card .hp-actions { margin: 0; flex-shrink: 0; }
body.hp-home .hp-faq { max-width: 850px; }
body.hp-home .hp-faq details { padding-block: 22px; border-bottom: 1px solid var(--hp-line); }
body.hp-home .hp-faq details:first-child { border-top: 1px solid var(--hp-line); }
body.hp-home .hp-faq summary { position: relative; padding-right: 35px; color: var(--hp-ink); list-style: none; font-size: .92rem; font-weight: 500; line-height: 1.65; cursor: pointer; }
body.hp-home .hp-faq summary::-webkit-details-marker { display: none; }
body.hp-home .hp-faq summary::after { content: "+"; position: absolute; right: 2px; top: 0; color: var(--hp-coral); font-size: 1.3rem; line-height: 1.2; font-weight: 400; }
body.hp-home .hp-faq details[open] summary::after { content: "−"; }
body.hp-home .hp-faq p { margin: 13px 0 0; max-width: 75ch; color: var(--hp-muted); font-size: .82rem; line-height: 1.9; }
body.hp-home .hp-final { padding-block: 70px; background: #f7ebe2; color: var(--hp-ink); }
body.hp-home .hp-final .hp-eyebrow { color: #ae3b25; }
body.hp-home .hp-final-grid { display: grid; grid-template-columns: 1.12fr .88fr; align-items: center; gap: 70px; }
body.hp-home .hp-final h2 { max-width: 17ch; }
body.hp-home .hp-final p:not(.hp-eyebrow) { margin: 17px 0 0; max-width: 48ch; color: #6c6a65; font-size: .91rem; line-height: 1.85; }
body.hp-home .hp-final-grid > div:last-child { padding: 28px; border: 1px solid #e8d7ca; border-radius: 10px; background: #fff9f4; }
body.hp-home .hp-final-grid > div:last-child > p:first-child { margin-top: 0; }
body.hp-home .hp-final .hp-email { display: inline-block; margin-top: 12px; max-width: 100%; color: #a73d28; font-size: clamp(.9rem, 1.8vw, 1.2rem); font-weight: 600; letter-spacing: -.02em; text-underline-offset: 5px; overflow-wrap: anywhere; }
body.hp-home .hp-final .hp-actions { margin-top: 22px; }
body.hp-home .hp-final .hp-note { color: #81766c; font-size: .69rem; }

/* Progressive motion: the page is fully visible when JavaScript is unavailable. */
body.hp-home :where(.hp-reveal, [data-hp-reveal]) { opacity: 1; transform: none; }
body.hp-home.hp-motion-ready :where(.hp-reveal, [data-hp-reveal]):not(.is-visible) { opacity: 0; transform: translateY(18px); }
body.hp-home.hp-motion-ready :where(.hp-reveal, [data-hp-reveal]) { transition: opacity .55s ease, transform .55s ease; }
body.hp-home.hp-motion-ready .hp-float-card { animation: hp-float 6s ease-in-out infinite; }
body.hp-home.hp-motion-ready .hp-float-card--bottom { animation-delay: -3s; }
body.hp-home.hp-motion-ready .is-visible [data-hp-bar] { animation: hp-bar-in .8s cubic-bezier(.2,.6,.3,1) both; }
body.hp-home.hp-motion-paused *,
body.hp-home.hp-motion-paused *::before,
body.hp-home.hp-motion-paused *::after { animation-play-state: paused !important; }
@keyframes hp-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
@keyframes hp-bar-in { from { transform: scaleY(.15); opacity: .45; } to { transform: scaleY(1); opacity: 1; } }

/* Full size image viewer. A screenshot remains a usable link without JavaScript. */
body.hp-home .hp-lightbox { position: fixed; width: min(1200px, 94vw); max-width: 94vw; max-height: 94dvh; padding: 20px; border: 1px solid #d8e1de; border-radius: 10px; color: var(--hp-ink); background: #fff; box-shadow: 0 25px 100px #0005; }
body.hp-home .hp-lightbox::backdrop { background: #12212dd9; }
body.hp-home .hp-lightbox:not([open]) { display: none; }
body.hp-home .hp-lightbox img { display: block; width: 100%; max-height: 80dvh; object-fit: contain; margin-top: 25px; }
body.hp-home .hp-lightbox-close { position: absolute; right: 12px; top: 9px; display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 5px 9px; border: 0; border-radius: 4px; background: #f1f4f2; color: var(--hp-ink); font-size: .71rem; cursor: pointer; }
body.hp-home .hp-lightbox-caption { margin: 12px 0 0; color: #6b7b83; font-size: .71rem; line-height: 1.7; }

@media (max-width: 1100px) {
    body.hp-home .hp-hero-grid { gap: 27px; grid-template-columns: 1fr 1fr; }
    body.hp-home .hp-hero-copy h1 { font-size: clamp(2.75rem, 4.8vw, 3.5rem); }
    body.hp-home .hp-demo-sidebar { padding-inline: 6px; }
    body.hp-home .hp-demo-layout { grid-template-columns: 72px minmax(0, 1fr); }
    body.hp-home .hp-demo-main { padding-inline: 12px; }
    body.hp-home .hp-explorer-grid { gap: 36px; }
    body.hp-home .hp-price-card { flex-wrap: wrap; }
    body.hp-home .hp-price-card > :first-child { flex: 1 1 55%; }
}

@media (max-width: 960px) {
    body.hp-home .hp-section { padding-block: 66px; }
    body.hp-home .hp-hero { padding-top: 44px; }
    body.hp-home .hp-hero-grid { grid-template-columns: 1fr; gap: 20px; }
    body.hp-home .hp-hero-copy { max-width: 680px; }
    body.hp-home .hp-hero-copy h1 { max-width: 15ch; font-size: clamp(3rem, 6.5vw, 3.75rem); }
    body.hp-home .hp-lead { max-width: 58ch; }
    body.hp-home .hp-dashboard-wrap { width: min(660px, 96%); margin-inline: auto; }
    body.hp-home .hp-demo-layout { grid-template-columns: 85px minmax(0, 1fr); }
    body.hp-home .hp-demo-main { padding: 20px; }
    body.hp-home .hp-demo-sidebar { padding-inline: 10px; }
    body.hp-home .hp-value-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 25px; }
    body.hp-home .hp-problem-grid { gap: 14px; }
    body.hp-home .hp-problem-card { padding: 23px 19px; }
    body.hp-home .hp-tour-grid { grid-template-columns: 1fr; gap: 26px; }
    body.hp-home .hp-tour-copy { max-width: 620px; }
    body.hp-home .hp-bullets { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 22px; margin-top: 17px; }
    body.hp-home .hp-bullets li { margin-top: 0; }
    body.hp-home .hp-explorer-grid { grid-template-columns: 1fr; gap: 30px; }
    body.hp-home .hp-explorer-card { max-width: 640px; width: 100%; }
    body.hp-home .hp-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.hp-home .hp-steps,
    body.hp-home .hp-flow-grid { gap: 22px; }
    body.hp-home .hp-final-grid { grid-template-columns: 1fr 1fr; gap: 35px; }
    body.hp-home .hp-final-grid > div:last-child { padding: 23px; }
    body.hp-home .hp-final .hp-email { font-size: .93rem; }
}

@media (max-width: 640px) {
    body.hp-home main [id] { scroll-margin-top: 130px; }
    body.hp-home .hp-section { padding-block: 48px; }
    body.hp-home .hp-section-head { margin-bottom: 27px; }
    body.hp-home .hp-section-head h2,
    body.hp-home .hp-final h2 { font-size: clamp(1.85rem, 7.8vw, 2.4rem); }
    body.hp-home .hp-section-head > p:not(.hp-eyebrow) { font-size: .86rem; line-height: 1.85; }
    body.hp-home .hp-eyebrow { font-size: .64rem; letter-spacing: .1em; margin-bottom: 12px; }
    body.hp-home .hp-hero { padding-block: 34px 30px; }
    body.hp-home .hp-hero-copy h1 { font-size: clamp(2.5rem, 10.4vw, 3.15rem); margin-bottom: 19px; max-width: 14ch; }
    body.hp-home .hp-lead { font-size: .91rem; }
    body.hp-home .hp-actions { gap: 10px; margin-top: 22px; }
    body.hp-home .hp-actions .cd-btn { min-height: 47px; padding: 12px 16px; font-size: .77rem; }
    body.hp-home .hp-hero-copy .hp-actions .cd-btn:first-child { width: 100%; }
    body.hp-home .hp-hero-copy .hp-actions .cd-btn:not(:first-child) { width: 100%; }
    body.hp-home .hp-contact-line { font-size: .67rem; }
    body.hp-home .hp-trust-row { gap: 8px 12px; font-size: .6rem; margin-top: 21px; }
    body.hp-home .hp-trust-row svg { width: 13px; height: 13px; }
    body.hp-home .hp-dashboard-wrap { width: 100%; padding-block: 20px 36px; }
    body.hp-home .hp-dashboard { border-radius: 9px; }
    body.hp-home .hp-demo-layout { grid-template-columns: 59px minmax(0, 1fr); min-height: 290px; }
    body.hp-home .hp-demo-sidebar { font-size: .43rem; padding: 12px 5px; }
    body.hp-home .hp-demo-sidebar > strong { font-size: .48rem; margin-bottom: 15px; }
    body.hp-home .hp-demo-sidebar > span,
    body.hp-home .hp-demo-sidebar > a { padding: 7px 3px; gap: 3px; overflow-wrap: anywhere; }
    body.hp-home .hp-demo-sidebar svg { width: 9px; height: 9px; }
    body.hp-home .hp-window-bar { height: 32px; padding-inline: 10px; }
    body.hp-home .hp-window-bar > :not(.hp-window-dots) { font-size: .46rem; }
    body.hp-home .hp-example-badge { padding: 3px 5px; font-size: .47rem; }
    body.hp-home .hp-demo-main { padding: 13px 10px; }
    body.hp-home .hp-demo-heading { gap: 6px; margin-bottom: 12px; }
    body.hp-home .hp-demo-heading h2,
    body.hp-home .hp-demo-heading h3 { font-size: .71rem; }
    body.hp-home .hp-demo-heading p { font-size: .47rem; }
    body.hp-home .hp-demo-heading > span { font-size: .43rem; padding: 3px 5px; }
    body.hp-home .hp-demo-stats { gap: 5px; }
    body.hp-home .hp-stat { padding: 9px 7px; }
    body.hp-home .hp-stat strong { font-size: 1.08rem; }
    body.hp-home .hp-stat small { font-size: .43rem; line-height: 1.4; }
    body.hp-home .hp-demo-chart { margin-top: 8px; padding: 9px; }
    body.hp-home .hp-demo-chart > strong { font-size: .51rem; }
    body.hp-home .hp-chart-key { font-size: .45rem; gap: 5px 8px; }
    body.hp-home .hp-mini-timeline { height: 9px; margin-top: 11px; gap: 2px; }
    body.hp-home .hp-time-labels { font-size: .44rem; }
    body.hp-home .hp-float-card { padding: 9px 11px; gap: 7px; border-radius: 7px; font-size: .56rem; }
    body.hp-home .hp-float-card strong { font-size: .61rem; }
    body.hp-home .hp-float-card small { font-size: .51rem; }
    body.hp-home .hp-float-card > svg { width: 25px; height: 25px; padding: 5px; }
    body.hp-home .hp-float-card--top { top: 0; right: 5px; }
    body.hp-home .hp-float-card--bottom { bottom: 10px; left: 6px; }
    body.hp-home .hp-value-strip { padding-top: 22px; gap: 18px 12px; margin-top: 12px; }
    body.hp-home .hp-value-item { align-items: flex-start; gap: 8px; font-size: .61rem; }
    body.hp-home .hp-value-item strong { font-size: .65rem; line-height: 1.6; }
    body.hp-home .hp-value-item svg { width: 18px; height: 18px; margin-top: 2px; }
    body.hp-home .hp-problem-grid { grid-template-columns: 1fr; gap: 13px; }
    body.hp-home .hp-problem-card { padding: 22px; }
    body.hp-home .hp-problem-card h3 { margin-top: 11px; font-size: 1.08rem; }
    body.hp-home .hp-problem-card p { font-size: .8rem; }
    body.hp-home .hp-mini-bars { margin-top: 17px; height: 53px; }
    body.hp-home .hp-mini-bars--compare { height: 54px; }
    body.hp-home .hp-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; margin-bottom: 24px; padding-bottom: 16px; }
    body.hp-home .hp-tab { padding: 9px 8px; min-height: 43px; font-size: .67rem; gap: 6px; }
    body.hp-home .hp-tab svg { width: 14px; height: 14px; }
    body.hp-home .hp-tour-grid { gap: 23px; }
    body.hp-home .hp-tour-copy h3 { font-size: 1.45rem; margin-bottom: 13px; }
    body.hp-home .hp-tour-copy > p { font-size: .82rem; }
    body.hp-home .hp-bullets { grid-template-columns: 1fr; gap: 9px; }
    body.hp-home .hp-bullets li { font-size: .75rem; }
    body.hp-home .hp-shot-window { border-radius: 7px; }
    body.hp-home .hp-shot-topbar { padding: 8px 10px; min-height: 33px; font-size: .53rem; }
    body.hp-home .hp-shot-caption { padding: 9px 11px; font-size: .57rem; }
    body.hp-home .hp-zoom::after { font-size: .51rem; bottom: 8px; right: 8px; padding: 5px 7px; }
    body.hp-home .hp-explorer-grid { gap: 25px; }
    body.hp-home .hp-scenario-buttons { gap: 6px; margin-top: 21px; }
    body.hp-home .hp-scenario-buttons button { flex: 1 1 28%; padding: 9px 7px; font-size: .63rem; }
    body.hp-home .hp-explorer-card { padding: 18px; border-radius: 10px; }
    body.hp-home .hp-explorer-card .hp-demo-heading h3 { font-size: .77rem; }
    body.hp-home .hp-explorer-layout { gap: 12px; }
    body.hp-home .hp-donut-center strong { font-size: clamp(1.45rem, 7vw, 2.25rem); }
    body.hp-home .hp-donut-center small { margin-top: 3px; font-size: .5rem; line-height: 1.5; }
    body.hp-home .hp-breakdown { gap: 14px; }
    body.hp-home .hp-breakdown-row { grid-template-columns: 6px 1fr; gap: 4px 6px; font-size: .6rem; line-height: 1.5; }
    body.hp-home .hp-breakdown-row strong { grid-column: 2; font-size: .79rem; }
    body.hp-home .hp-breakdown-row .hp-key-dot { width: 6px; height: 6px; }
    body.hp-home .hp-timeline { gap: 2px; height: 17px; }
    body.hp-home .hp-chart-caption { font-size: .64rem; }
    body.hp-home .hp-demo-disclosure { font-size: .65rem; }
    body.hp-home .hp-feature-grid { grid-template-columns: 1fr; gap: 15px; }
    body.hp-home .hp-feature-card { padding: 23px; }
    body.hp-home .hp-feature-card h3 { font-size: 1.05rem; }
    body.hp-home .hp-feature-card p { font-size: .8rem; }
    body.hp-home .hp-feature-visual { min-height: 120px; margin-top: 18px; }
    body.hp-home .hp-steps,
    body.hp-home .hp-flow-grid { grid-template-columns: 1fr; gap: 26px; }
    body.hp-home .hp-flow-card { padding-top: 20px; }
    body.hp-home .hp-step-number { margin-bottom: 12px; }
    body.hp-home .hp-price-card { flex-direction: column; align-items: flex-start; gap: 23px; margin-top: 30px; padding: 24px; }
    body.hp-home .hp-price-card > :first-child { flex-basis: auto; }
    body.hp-home .hp-price-card .hp-actions { width: 100%; }
    body.hp-home .hp-price-card .cd-btn { width: 100%; }
    body.hp-home .hp-price-amount { font-size: 2.3rem; }
    body.hp-home .hp-faq details { padding-block: 19px; }
    body.hp-home .hp-faq summary { font-size: .83rem; padding-right: 27px; }
    body.hp-home .hp-faq p { font-size: .77rem; }
    body.hp-home .hp-final { padding-block: 47px; }
    body.hp-home .hp-final-grid { grid-template-columns: 1fr; gap: 26px; }
    body.hp-home .hp-final h2 { max-width: 19ch; }
    body.hp-home .hp-final p:not(.hp-eyebrow) { font-size: .84rem; }
    body.hp-home .hp-final-grid > div:last-child { padding: 22px; }
    body.hp-home .hp-final .hp-email { font-size: clamp(.9rem, 4.3vw, 1.25rem); }
    body.hp-home .hp-final .hp-actions .cd-btn { width: 100%; }
    body.hp-home .hp-lightbox { padding: 12px; }
    body.hp-home .hp-lightbox img { margin-top: 31px; }
}

@media (max-width: 360px) {
    body.hp-home .hp-hero-copy h1 { font-size: 2.4rem; }
    body.hp-home .hp-demo-layout { grid-template-columns: 49px minmax(0, 1fr); }
    body.hp-home .hp-demo-sidebar { padding-inline: 3px; font-size: .39rem; }
    body.hp-home .hp-demo-sidebar > strong { font-size: .42rem; }
    body.hp-home .hp-demo-sidebar svg { display: none; }
    body.hp-home .hp-demo-main { padding-inline: 8px; }
    body.hp-home .hp-demo-heading > span { display: none; }
    body.hp-home .hp-stat { padding-inline: 5px; }
    body.hp-home .hp-stat strong { font-size: .94rem; }
    body.hp-home .hp-window-dots span { width: 5px; height: 5px; }
    body.hp-home .hp-feature-card { padding: 20px; }
    body.hp-home .hp-explorer-card { padding: 14px; }
    body.hp-home .hp-explorer-layout { gap: 8px; }
    body.hp-home .hp-breakdown-row { font-size: .55rem; }
}

@media (prefers-reduced-motion: reduce) {
    html:has(body.hp-home) { scroll-behavior: auto; }
    body.hp-home *, body.hp-home *::before, body.hp-home *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
    body.hp-home.hp-motion-ready :where(.hp-reveal, [data-hp-reveal]):not(.is-visible) { opacity: 1; transform: none; }
}

@media print {
    body.hp-home :where(.hp-reveal, [data-hp-reveal]) { opacity: 1 !important; transform: none !important; }
    body.hp-home :where(.hp-motion-toggle, .hp-tabs, .hp-lightbox, .hp-float-card) { display: none !important; }
    body.hp-home .hp-section { padding-block: 24px; }
}

/* Match the semantic content of the home components. */
body.hp-home .hp-dashboard { margin: 0; }
body.hp-home .hp-dashboard figcaption { margin: 0; padding: 10px 14px; color: var(--hp-muted); font-size: .57rem; line-height: 1.6; border-top: 1px solid var(--hp-line); }
body.hp-home .hp-demo-heading > div > strong { display: block; font-size: .84rem; line-height: 1.35; }
body.hp-home .hp-demo-heading > div > small { display: block; margin-bottom: 3px; color: var(--hp-muted); font-size: .54rem; }
body.hp-home .hp-demo-heading > strong { font-size: .9rem; }
body.hp-home .hp-clock-visual > span { width: auto; height: auto; border-radius: 0; background: none; font-size: .6rem; color: var(--hp-muted); }
body.hp-home .hp-clock-visual > i { font-style: normal; color: var(--hp-teal); }
body.hp-home .hp-alerts-visual { flex-direction: column; gap: 10px; align-items: stretch; }
body.hp-home .hp-csv-preview { display: block; }
body.hp-home .hp-compare-bars > span > i { position: absolute; inset: auto 0 5px; text-align: center; font-size: .56rem; font-style: normal; color: #fff; }
body.hp-home .hp-steps { list-style: none; padding: 0; margin: 0; }
body.hp-home .hp-price-card p.hp-price-amount { color: var(--hp-ink); font-size: 2.8rem; font-weight: 700; line-height: 1.2; margin-bottom: 12px; }
body.hp-home .hp-explorer-grid > div > h2 { font-size: clamp(1.9rem, 3.4vw, 2.7rem); line-height: 1.16; letter-spacing: -.04em; text-wrap: balance; margin: 0 0 20px; }
body.hp-home .hp-explorer-grid > div > p:not(.hp-eyebrow) { color: #c6d5da; font-size: .9rem; line-height: 1.8; }
body.hp-home .hp-explorer-card .hp-demo-disclosure { color: var(--hp-muted); }
body.hp-home [data-hp-bar] { transform-box: fill-box; transform-origin: bottom; }
body.hp-home main [id] { scroll-margin-top: var(--cd-header-anchor-offset, 170px); }
body.hp-home .cd-productivity-guides { padding-block: 45px; background: #f8faf8; }
body.hp-home .cd-productivity-guides .inner { width: min(1180px, 92vw); }
body.hp-home .cd-productivity-guides h2 { font-size: 1.6rem; line-height: 1.25; letter-spacing: -.025em; }
body.hp-home .cd-productivity-guides p { max-width: 75ch; color: var(--hp-muted); font-size: .84rem; line-height: 1.7; }
body.hp-home .cd-productivity-guides ul { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; list-style: none; }
body.hp-home .cd-productivity-guides li a { display: block; border: 1px solid var(--hp-line); background: #fff; border-radius: 5px; padding: 8px 12px; color: #3a535b; font-size: .74rem; }
@media (max-width: 640px) {
    body.hp-home .hp-demo-heading > div > strong { font-size: .66rem; }
    body.hp-home .hp-demo-heading > div > small { font-size: .45rem; }
    body.hp-home .hp-demo-heading > strong { font-size: .75rem; }
    body.hp-home .hp-price-card p.hp-price-amount { font-size: 2.4rem; }
    body.hp-home .hp-clock-visual strong { font-size: 1.7rem; }
}

body.hp-home .hp-explorer-grid .hp-explorer-card > p.hp-chart-caption,
body.hp-home .hp-explorer-grid .hp-explorer-card > p.hp-demo-disclosure {
    color: #596c76;
    font-size: .73rem;
    line-height: 1.75;
}
body.hp-home .hp-float-card--bottom { bottom: -3px; }
body.hp-home.hp-motion-paused :where(.hp-ring-active, .hp-ring-idle, .hp-ring-apps) { transition: none; }
body.hp-home .cd-email-float { display: none; }
