.nv-hero{--nv-bg:#fcfafb;--nv-ink:#25232a;--nv-mute:#6a606b;--nv-accent:#b51669;--nv-deep:#8d1152;--nv-tint:#f5e4ed;--nv-blush:var(--nv-tint);position:relative;display:grid;grid-template-columns:45fr 55fr;align-items:center;height:700px;margin:0;padding:0 clamp(16px,3vw,48px);background:var(--nv-bg);color:var(--nv-ink);overflow:hidden;overflow:clip;isolation:isolate;box-sizing:border-box}
.nv-hero *,.nv-hero *::before,.nv-hero *::after{box-sizing:border-box}
.nv-hero__copy{position:relative;z-index:2;align-self:center;min-width:0;max-width:560px;animation:nv-rise .75s cubic-bezier(.2,.7,.2,1) both}
.nv-hero__eyebrow{margin:0 0 20px;font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--nv-accent)}
.nv-hero__title{margin:0;font-size:clamp(44px,4.6vw,64px);line-height:1.16;font-weight:800;letter-spacing:-.03em;color:var(--nv-ink);word-break:keep-all}
.nv-hero__accent{color:var(--nv-accent)}
.nv-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.nv-hero__btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:44px;padding:0 24px;border-radius:999px;font:inherit;font-size:15px;font-weight:700;cursor:pointer;border:1.5px solid var(--nv-accent);transition:background-color .2s,color .2s,border-color .2s}
.nv-hero__btn--primary{background:var(--nv-accent);color:#fff}
.nv-hero__btn--primary:hover{background:var(--nv-deep);border-color:var(--nv-deep)}
.nv-hero__btn--ghost{background:transparent;color:var(--nv-accent)}
.nv-hero__btn--ghost:hover{background:var(--nv-tint)}
.nv-hero__picker{margin-top:28px;min-width:0}
.nv-hero__picklabel{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.08em;line-height:1.6;color:var(--nv-mute)}
.nv-hero__chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.nv-hero__chip{--c:#b51669;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;max-width:100%;padding:0 16px;border-radius:999px;border:1.5px solid #ddd5db;background:#fff;color:var(--nv-ink);font:inherit;font-size:14px;font-weight:700;line-height:1.3;word-break:keep-all;overflow-wrap:break-word;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.nv-hero__chip[data-nv-filter="sediment"]{--c:#b51669}
.nv-hero__chip[data-nv-filter="preblock"]{--c:#527626}
.nv-hero__chip[data-nv-filter="uf"]{--c:#b64b20}
.nv-hero__chip[data-nv-filter="postblock"]{--c:#176ba5}
.nv-hero__chip[data-nv-filter="sc"]{--c:#187b83}
.nv-hero__dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--c)}
.nv-hero__chip:hover{border-color:var(--c)}
.nv-hero__chip[aria-pressed="true"]{background:var(--c);border-color:var(--c);color:#fff}
.nv-hero__chip[aria-pressed="true"] .nv-hero__dot{background:#fff}
.nv-hero__chip.is-loading{border-style:dashed;border-color:var(--c);cursor:progress}
.nv-hero__status{margin:8px 0 0;min-height:21px;font-size:13px;line-height:1.6;color:var(--nv-mute);word-break:keep-all}
.nv-hero__status.is-error{color:#b3261e;font-weight:700}
.nv-hero__visual{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;height:100%;margin:0;animation:nv-fade .75s ease both}
.nv-hero__field{position:absolute;left:50%;top:50%;width:min(88%,640px);height:82%;transform:translate(-50%,-50%);border-radius:50%;opacity:.85;background:radial-gradient(ellipse at center,var(--nv-blush) 0%,var(--nv-blush) 40%,transparent 72%)}
.nv-hero__shadow{position:absolute;left:50%;bottom:7%;width:200px;height:26px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at center,rgba(37,35,42,.22),rgba(37,35,42,0) 70%)}
.nv-hero__stage{--nv-x:0px;--nv-y:0px;--nv-r:110px;--nv-cx:-100px;--nv-cy:-100px;position:relative;display:block;flex:none;width:232px;height:580px;margin:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer;user-select:none;-webkit-user-select:none}
.nv-hero__layer{position:absolute;left:0;top:0;width:100%;height:100%;display:block;object-fit:contain;pointer-events:none;-webkit-user-drag:none}
.nv-hero__stage.is-broken .nv-hero__layer{visibility:hidden}
.nv-hero__stage.is-on .nv-hero__ext{-webkit-mask-image:radial-gradient(circle var(--nv-r) at var(--nv-x) var(--nv-y),transparent 0,transparent 62%,rgba(0,0,0,.5) 80%,#000 100%);mask-image:radial-gradient(circle var(--nv-r) at var(--nv-x) var(--nv-y),transparent 0,transparent 62%,rgba(0,0,0,.5) 80%,#000 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}
.nv-hero__cross{display:none;position:absolute;left:0;top:0;width:38px;height:38px;pointer-events:none;transform:translate(calc(var(--nv-cx) - 19px),calc(var(--nv-cy) - 19px));z-index:3}
.nv-hero__cross::before,.nv-hero__cross::after{content:"";position:absolute;background:var(--nv-ink);box-shadow:0 0 0 1px rgba(255,255,255,.85)}
.nv-hero__cross::before{left:18px;top:0;width:2px;height:38px}
.nv-hero__cross::after{left:0;top:18px;width:38px;height:2px}
@media (hover:hover) and (pointer:fine){
  .nv-hero__stage.is-on.is-mouse:not(.is-held){cursor:none}
  .nv-hero__stage.is-on.is-mouse:not(.is-held) .nv-hero__cross{display:block}
}
.nv-hero__caption{position:absolute;left:0;right:0;bottom:20px;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:0 4%;margin:0}
.nv-hero__info{display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:min(200px,calc(50% - 132px))}
.nv-hero__tools{display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:min(190px,calc(50% - 132px));text-align:right}
.nv-hero__name{font-size:13px;color:var(--nv-mute);letter-spacing:.02em}
.nv-hero__link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:700;color:var(--nv-accent);text-decoration:none;border-bottom:1.5px solid transparent;align-self:flex-start}
.nv-hero__link:hover{border-bottom-color:var(--nv-accent)}
.nv-hero__hint{font-size:13px;font-weight:700;color:var(--nv-ink)}
.nv-hero__hint--fine{display:none}
.nv-hero__hint--touch{display:inline}
@media (hover:hover) and (pointer:fine){.nv-hero__hint--fine{display:inline}.nv-hero__hint--touch{display:none}}
.nv-hero__toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 18px;border-radius:999px;border:1.5px solid var(--nv-accent);background:transparent;color:var(--nv-accent);font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .2s,color .2s}
.nv-hero__toggle:hover{background:var(--nv-tint)}
.nv-hero__toggle[aria-pressed="true"]{background:var(--nv-accent);color:#fff}
.nv-hero__toggle[aria-pressed="true"]:hover{background:var(--nv-deep)}
.nv-hero__tag{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--nv-tint);color:var(--nv-deep);font-size:12px;font-weight:700;word-break:keep-all}
.nv-hero__tag:empty{display:none}
.nv-hero__note{font-size:12px;line-height:1.6;color:var(--nv-mute);word-break:keep-all}
.nv-hero__btn:focus-visible,.nv-hero__chip:focus-visible,.nv-hero__link:focus-visible,.nv-hero__toggle:focus-visible{outline:3px solid var(--nv-ink);outline-offset:3px}
.nv-hero__stage:focus-visible{outline:3px solid var(--nv-ink);outline-offset:6px;border-radius:12px}
@keyframes nv-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes nv-fade{from{opacity:0}to{opacity:1}}
@media (max-width:1279px){
  .nv-hero{height:auto;min-height:700px}
  .nv-hero__visual{flex-direction:column;justify-content:flex-start;height:auto;padding:28px 0 20px}
  .nv-hero__shadow{bottom:auto;top:596px}
  .nv-hero__caption{position:static;flex-direction:column;align-items:center;gap:8px;padding:16px 0 0}
  .nv-hero__info{align-items:center;max-width:none;text-align:center}
  .nv-hero__link{align-self:center}
  .nv-hero__tools{align-items:center;max-width:340px;text-align:center}
}
@media (max-width:900px){
  .nv-hero{grid-template-columns:1fr;height:auto;min-height:0;padding:8px 0 16px;gap:0;align-items:start}
  .nv-hero__copy{max-width:none}
  .nv-hero__title{font-size:38px;line-height:1.18}
  .nv-hero__eyebrow{margin-bottom:12px}
  .nv-hero__actions{margin-top:20px}
  .nv-hero__picker{margin-top:20px}
  .nv-hero__visual{flex-direction:column;height:auto;min-height:0;padding:12px 0 0}
  .nv-hero__field{top:210px;height:380px;width:100%}
  .nv-hero__shadow{bottom:auto;top:414px;width:150px}
  .nv-hero__stage{width:160px;height:400px;margin:12px 0 0}
  .nv-hero__caption{padding:16px 0 0;gap:6px}
}
@media (max-width:520px){
  .nv-hero__chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .nv-hero__chip{width:100%;padding:0 10px}
}
@media (max-width:340px){.nv-hero__title{font-size:32px}.nv-hero__btn{width:100%}}
@media (prefers-reduced-motion:reduce){.nv-hero__copy,.nv-hero__visual{animation:none}.nv-hero__btn,.nv-hero__toggle,.nv-hero__chip{transition:none}}/* Keep longer filter names readable below the model. */
@media(min-width:861px){
.nv-hero__visual{flex-direction:column;height:auto}
.nv-hero__caption{position:static;width:100%;padding:10px 0 0;align-items:flex-start}
.nv-hero__info{flex:1;max-width:none;min-width:0;word-break:keep-all}
.nv-hero__tools{flex:1;max-width:260px;min-width:0;padding-left:16px;word-break:keep-all}
.nv-hero__link{word-break:keep-all}
}
@media(min-width:861px){.nv-hero{height:auto;min-height:760px;padding-top:24px;padding-bottom:32px}.nv-hero__status{min-height:20px}.nv-hero__caption{padding-bottom:12px}}
