.hx-home { --hx-orange: #f58c54; }
.hx-home .hx-hero { padding: 70px 0 22px; background: radial-gradient(ellipse at 78% 38%,rgba(181,63,22,.16),transparent 57%),#0a0b0d; }
.hx-home .hero-grid { grid-template-columns: 1fr 1.15fr; gap: 46px; align-items: center; }
.hx-home .hx-copy h1 { font-size: clamp(2.7rem,4.7vw,4.3rem); line-height: 1.02; letter-spacing: -.045em; max-width: 17ch; margin-bottom: 25px; }
.hx-home .hx-copy h1 span { color: var(--hx-orange); }
.hx-home .hx-copy .lede { font-size: 1.14rem; line-height: 1.6; max-width: 40ch; }
.hx-home .hx-copy .eyebrow { font-size: .75rem; letter-spacing: .12em; }
.hx-home .hx-copy .cta-row { gap: 12px; }
.hx-console { min-width: 0; border: 1px solid #68432e; border-radius: 16px; background: #101216; box-shadow: 0 26px 70px #0007,0 0 60px #a4431510; overflow: hidden; transform: rotate(1deg); }
.hx-console-head { display: flex; justify-content: space-between; gap: 10px; padding: 16px 20px; font-size: .68rem; letter-spacing: .12em; color: #adaca9; border-bottom: 1px solid #ffffff12; }
.hx-console-head span:first-child { color: #f3e8df; }
.hx-console-head i { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--hx-orange); margin-right: 7px; box-shadow: 0 0 12px #f58c5455; }
.hx-map { position: relative; overflow: hidden; }
.hx-map svg { display: block; width: 100%; height: auto; }
.hx-map .ticks { fill: #a79b90; stroke: #8e7660; stroke-width: 1; font-size: 10px; }
.hx-map .roads { fill: none; stroke: #a09a8855; stroke-width: 2; }
.hx-map .parcels { fill: #f4ad7e; }
.hx-map .parcels.muted { fill: #8a969b; opacity: .55; }
.hx-map .cluster path { fill: #d76c1817; stroke: #f0a471; stroke-width: 1.5; stroke-dasharray: 5 5; }
.hx-map .cluster text { fill: #ffe3c8; font-size: 13px; font-weight: 700; letter-spacing: 1px; }
.hx-map .site-lock { fill: none; stroke: #f8b07a; stroke-width: 1; opacity: .5; }
.hx-map .site-lock .lock-dot { fill: #f8b07a; }
.hx-map .cluster-ping,.hx-map .zoom-locks { opacity: 0; }
.hx-map .scan-sweep { animation: hx-scan 3.5s ease-in-out 1 both; }
.hx-map .scan-sweep line { stroke: #f6b88766; }
.hx-map .cluster { transition: opacity .35s; }
.hx-map-label { position: absolute; bottom: 13px; left: 20px; display: flex; align-items: center; gap: 10px; color: #bcbab6; font-size: .75rem; }
.hx-map-label strong { color: #fff0e5; font-weight: 400; }
.hx-cross { font-size: 2rem; line-height: 1; color: #f58c54; }
.hx-controls { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid #ffffff15; border-bottom: 1px solid #ffffff15; }
.hx-controls button { padding: 14px 8px; border: 0; border-right: 1px solid #ffffff12; background: #171a1e; color: #b7b8ba; font: inherit; font-size: .93rem; cursor: pointer; }
.hx-controls button:last-child { border-right: 0; }
.hx-controls button span { margin-right: 5px; font-size: .72rem; color: #8d8279; }
.hx-controls button:hover { background: #29231f; color: white; }
.hx-controls button[aria-pressed="true"] { background: #a23b14; color: white; box-shadow: inset 0 -2px #f5a66b; }
.hx-controls button[aria-pressed="true"] span { color: #ffd5b3; }
.hx-caption { padding: 18px 20px 0; min-height: 110px; }
.hx-caption strong { font-size: 1.12rem; color: #f5eae2; }
.hx-caption p { color: #b2b0ae; font-size: .93rem; line-height: 1.5; margin: 7px 0 0; }
.hx-fine { padding: 0 20px 17px; margin: 0; font-size: .69rem; line-height: 1.5; color: #a29d96; }
.hx-console[data-view="fit"] .cluster-a path { fill: #e084394d; stroke-width: 3; stroke-dasharray: none; }
.hx-console[data-view="fit"] .cluster-b path { fill: #e084392b; }
.hx-console[data-view="campaign"] .cluster-b,.hx-console[data-view="campaign"] .cluster-c { opacity: .16; }
.hx-console[data-view="campaign"] .cluster-a path { stroke-width: 3; fill: #e084395c; stroke-dasharray: none; }
.hx-console[data-view="campaign"] .cluster-a .site-lock { opacity: 1; stroke-width: 2; }
.hx-scroll { padding-top: 35px; text-align: center; }
.hx-scroll a { color: #a8a29a; font-size: .8rem; }
.hx-scroll span { margin-left: 12px; color: var(--hx-orange); }
.hx-home #how { background: linear-gradient(180deg,#131210,#0d0e10); }
.hx-home .tx-flow { border: 1px solid #ffffff12; background: #121416; border-radius: 14px; padding: 25px; }
.hx-home .hx-report { background: radial-gradient(ellipse at 24% 50%,#633a2024,transparent 65%),#0d0f12; }
.hx-home .hx-report .report-show { gap: 80px; padding: 25px 15px 15px; align-items: center; }
.hx-home .hx-report .report-frame { position: relative; overflow: visible; transform: rotate(-3deg); max-width: 350px; margin: 15px auto 25px; border: none; background: none; box-shadow: 0 25px 60px #0007; }
.hx-home .hx-report .report-frame img { position: relative; width: 100%; display: block; border-radius: 5px; border: 1px solid #a68c6944; }
.hx-home .hx-report .report-frame .hx-report-back { position: absolute; inset: 0; transform: rotate(8deg) translate(18px,-12px); opacity: .85; }
.hx-home .hx-report .report-point { border-left: 2px solid #a74520; padding-left: 19px; }
.hx-home .hx-report .rp-k { color: #f6be90; }
@keyframes hx-scan { from { transform: translateX(0); opacity: 0; } 10% { opacity: 1; } 85% { opacity: 1; } to { transform: translateX(900px); opacity: 0; } }
@media(max-width:900px) { .hx-home .hero-grid { grid-template-columns: 1fr; gap: 35px; } .hx-home .hx-copy { max-width: 640px; } .hx-home .hx-copy h1 { max-width: 17ch; } .hx-console { transform: none; max-width: 650px; width: 100%; margin: 0 auto; } .hx-home .hx-hero { padding-top: 40px; } .hx-home .hx-report .report-show { gap: 40px; } }
@media(max-width:560px) { .hx-home .hx-copy h1 { font-size: 2.75rem; margin-bottom: 18px; } .hx-home .hx-copy .lede { font-size: 1.02rem; } .hx-home .hx-copy .eyebrow { font-size: .65rem; } .hx-console-head { padding: 12px; font-size: .57rem; letter-spacing: .07em; } .hx-caption { padding: 15px 14px 10px; min-height: 116px; } .hx-caption strong { font-size: 1rem; } .hx-caption p { font-size: .85rem; } .hx-fine { padding: 0 14px 14px; } .hx-map-label { bottom: 7px; left: 13px; font-size: .62rem; } .hx-controls button { font-size: .85rem; min-height: 46px; } .hx-home .hx-report .report-frame { max-width: 235px; } .hx-home .hx-report .report-show { padding-left: 0; padding-right: 0; } .hx-home .tx-flow { padding: 20px 14px; } }
@media(prefers-reduced-motion:reduce) { .hx-map .scan-sweep { animation: none; display: none; } .hx-map .cluster { transition: none; } }
.hx-home section[id] { scroll-margin-top: 85px; } @media(max-width:360px) { .hx-home .hx-report .report-frame { max-width: 195px; } }
