.hz-hero{display:grid;gap:var(--space-xl);align-items:center}.hz-hero>*{min-width:0}@media (min-width: 960px){.hz-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:var(--col-gap)}}.hz-h1{font-size:clamp(2.6rem,6vw,5.6rem)}.hz-map{margin:0}.hz-map-stage{position:relative;container-type:inline-size}.hz-map svg{display:block;width:100%;height:auto}.hz-dam{fill:var(--ink)}.hz-river{fill:none;stroke:url(#hz-river-fade);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:.45}#hz-river-fade stop{stop-color:var(--ink)}#hz-river-fade stop+stop{stop-opacity:0}.hz-map .hz-water{position:absolute;left:67.5%;top:40%;transform:translate(-50%,-50%);color:var(--paper);font-size:3.1cqw;line-height:1;white-space:nowrap;pointer-events:none}.hz-range,.hz-place,.hz-dir{position:absolute;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);white-space:nowrap;line-height:1;pointer-events:none}.hz-place{background:var(--paper);padding:3px 4px;border-radius:3px}.hz-range{left:4%;top:33%;letter-spacing:.22em;color:var(--ink);opacity:.55}.hz-place:before{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--ink);opacity:.55}.hz-place.is-r{transform:translate(9px,-50%)}.hz-place.is-r:before{left:-11.5px;top:calc(50% - 2.5px)}.hz-place.is-l{transform:translate(calc(-100% - 9px),-50%)}.hz-place.is-l:before{right:-11.5px;top:calc(50% - 2.5px)}.hz-place.is-a{transform:translate(-50%,calc(-100% - 8px))}.hz-place.is-a:before{left:calc(50% - 2.5px);bottom:-10.5px}.hz-place.is-b{transform:translate(-50%,8px)}.hz-place.is-b:before{left:calc(50% - 2.5px);top:-10.5px}.hz-dir{display:inline-flex;align-items:center;gap:4px;color:var(--ink);opacity:.7}.hz-dir svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.2}.hz-dir.is-n{left:20%;top:4%}.hz-dir.is-n svg{transform:rotate(-90deg)}.hz-dir.is-e{right:2.5%;bottom:11%}.hz-dir.is-se{right:2.5%;bottom:4%}.hz-dir.is-se svg{transform:rotate(45deg)}.hz-pin{position:absolute;z-index:2;display:block;width:0;height:0;text-decoration:none;color:var(--ink)}.hz-pin i{position:absolute;left:-8px;top:-8px;width:16px;height:16px;border-radius:50%;background:var(--orange);border:2.5px solid var(--ink);box-shadow:0 0 0 3px var(--paper)}.hz-pin>span{position:absolute;display:grid;gap:3px;padding:8px 12px;border-radius:10px;background:var(--paper);border:1px solid rgba(20,20,20,.12);box-shadow:0 14px 28px -16px #1414148c;white-space:nowrap;transition:background-color .2s,color .2s}.hz-pin.is-a>span{left:0;bottom:16px;transform:translate(-50%)}.hz-pin.is-r>span{left:16px;top:0;transform:translateY(-50%)}.hz-pin.is-l>span{right:16px;top:0;transform:translateY(-50%)}.hz-pin.is-lu>span{right:14px;bottom:4px}.hz-pin b{font-family:var(--font-display);font-weight:750;font-size:.98rem;letter-spacing:-.02em;line-height:1}.hz-pin small{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);line-height:1}@media (hover: hover){.hz-pin:hover>span{background:var(--ink);color:var(--paper)}.hz-pin:hover small{color:var(--muted-on-ink)}}.hz-pin.hz-home i{background:var(--ink);border-color:var(--orange)}.hz-pin.hz-home>span{background:var(--ink);color:var(--paper);border-color:var(--ink)}.hz-pin.hz-home small{color:var(--muted-on-ink)}@media (hover: hover){.hz-pin.hz-home:hover>span{background:var(--orange);border-color:var(--orange);color:var(--ink)}.hz-pin.hz-home:hover small{color:var(--ink)}}.hz-pin:focus-visible{outline:none}.hz-pin:focus-visible>span{outline:3px solid var(--orange-ink);outline-offset:2px}.hz-credit{margin-top:10px;font-size:.74rem;color:var(--muted);text-align:right}.hz-credit a{color:inherit}@media (min-width: 960px){.hz-hero-wrap{container-type:inline-size}.hz-map{--bleed: calc(max(0px, (100cqw - var(--max)) / 2) + var(--gutter));margin-right:calc(-1 * var(--bleed))}.hz-credit{padding-right:var(--bleed)}}@container (max-width: 540px){.hz-place.is-melodie{display:none}}@container (max-width: 420px){.hz-place:not(.is-major),.hz-range,.hz-dir.is-se{display:none}.hz-dir.is-e{bottom:4%}.hz-pin b{font-size:.86rem}.hz-pin>span{padding:6px 9px}.hz-pin i{width:13px;height:13px;left:-6.5px;top:-6.5px}.hz-pin.hz-home small{display:none}.hz-pin.is-lu>span{bottom:6px}}@media (max-width: 600px){.hz-map-stage{margin-inline:calc(-1 * var(--gutter))}}.hz-work-side{display:grid;gap:var(--space-m);justify-items:start}.hz-work-list{display:grid;gap:var(--space-3xl)}.hz-case{display:grid;gap:var(--space-xl);align-items:center;scroll-margin-top:calc(var(--nav-h) + 24px)}.hz-case>*{min-width:0}@media (min-width: 960px){.hz-case{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--col-gap)}.hz-case:nth-child(2n) .hz-case-media{order:2}}.hz-case-media{position:relative;padding:0 9% 12% 0}.hz-case-media .phone{position:absolute;right:0;bottom:0;width:24%}.hz-case h3{margin-top:var(--space-xs);font-size:clamp(2rem,3.6vw,3.2rem)}.hz-review{margin:var(--space-m) 0 0;padding-top:var(--space-m);border-top:1px solid var(--line-on-ink)}.hz-review blockquote{font-family:var(--font-display);font-weight:650;font-size:clamp(1.35rem,2.2vw,1.85rem);line-height:1.15;letter-spacing:-.03em;text-wrap:pretty}.hz-review .serif{font-size:1.1em}.hz-review figcaption{margin-top:var(--space-s);color:var(--muted-on-ink);font-size:.92rem}.hz-review figcaption b{color:var(--paper)}.hz-ext{color:var(--muted-on-ink)}.hz-ext svg{width:16px;height:16px}.hz-faces{margin-top:var(--space-l)}.hz-trades{list-style:none;border-top:1.5px solid var(--ink)}.hz-trades li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px 8px;align-items:baseline;padding:var(--space-m) 0;border-bottom:1px solid var(--line)}.hz-n{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.04em;color:var(--muted)}.hz-trade{font-family:var(--font-display);font-weight:700;font-size:clamp(1.4rem,2.6vw,2.1rem);line-height:1.08;letter-spacing:-.03em;text-wrap:balance}.hz-trade-desc{grid-column:2;color:var(--muted);max-width:54ch}@media (min-width: 900px){.hz-trades li{grid-template-columns:56px minmax(0,1fr) minmax(0,1.1fr);gap:var(--space-l)}.hz-trade-desc{grid-column:3}}
