.hero-photo{display:none}@media (min-width:768px){.hero-figure{aspect-ratio:1280/2629;width:100%;margin-inline:auto;position:relative}.hero-photo{z-index:1;width:100%;height:100%;display:block;position:relative}.hero-photo img{object-fit:contain;object-position:bottom center;width:100%;height:100%}}.sec-photo{margin:0;position:relative}.sec-photo img{object-fit:cover;border-radius:var(--r-card);width:100%;height:100%;display:block}.sec-photo-portrait{aspect-ratio:3/4;max-width:420px;margin-top:clamp(28px,3.4vw,44px)}@media (min-width:1024px){.page-hero:has(.sec-photo-portrait) .page-hero-col{max-width:760px}.page-hero:has(.sec-photo-portrait){max-width:var(--maxw);grid-template-columns:minmax(0,1fr) minmax(0,.4fr);align-items:center;gap:clamp(36px,4vw,72px);display:grid}.sec-photo-portrait{max-width:none;margin-top:0}}.sec-photo-tall{aspect-ratio:1739/1678;max-width:380px;margin-top:clamp(28px,3vw,44px)}.sec-photo-tall img{object-fit:contain;border-radius:0}@media (min-width:768px){.sec-photo-tall img{filter:url(#tc-duotone)}}@media (prefers-reduced-motion:reduce){.sec-photo-tall img{filter:none}}@media (min-width:1024px){.steps-with-photo{grid-template-columns:minmax(0,1fr) minmax(0,.34fr);align-items:start;gap:clamp(32px,4vw,72px);display:grid}.sec-photo-tall{max-width:none;top:calc(var(--header-h) + 32px);position:sticky}}.contact-hero-figure{width:100%;margin:0;position:relative}.contact-hero-photo{z-index:1;aspect-ratio:4/3;width:100%;display:block;position:relative}.contact-hero-photo img{object-fit:cover;border-radius:0;width:100%;height:100%;display:block}.contact-hero-copy{padding-top:clamp(22px,3.4vw,34px);display:block}.contact-hero-copy .eyebrow,.contact-h1{margin-bottom:clamp(10px,1.2vw,16px)}.contact-lead{margin-bottom:0}.contact-sub{margin-top:clamp(18px,2.2vw,28px)}@media (min-width:768px){.contact-hero-photo{aspect-ratio:8/3;max-height:clamp(300px,52vh,560px);overflow:hidden}.contact-hero-copy{z-index:3;pointer-events:none;align-items:center;padding-top:0;display:flex;position:absolute;inset:0}.contact-hero-copy .wrap{width:100%}.contact-hero-copy .eyebrow,.contact-lead{color:var(--ink)}.contact-hero-copy .eyebrow,.contact-hero-copy .contact-lead{max-width:min(46%,34ch)}.contact-h1{max-width:min(46%,16ch)}}.hero-geo{display:none}@media (min-width:768px){.hero-geo{z-index:0;pointer-events:none;width:154.7%;height:100%;color:var(--brand);display:block;position:absolute;inset:0 auto 0 -54.7%;overflow:visible}.hero-geo .geo-line{stroke:var(--trace-line);stroke-width:5px;fill:none}.hero-geo .geo-ring{stroke:var(--trace-dot);stroke-width:5px}.hero-geo .geo-spoke{stroke:var(--hair-soft);stroke-width:4px;fill:none}.hero-geo .geo-node,.hero-geo .trace-mark{fill:var(--trace-dot)}.hero-geo .trace-mark path{stroke:var(--trace-dot)}}.sec-trace{pointer-events:none;z-index:0;position:absolute;overflow:visible}.sec-trace .geo-line{stroke:var(--trace-line)}.sec-trace .trace-mark{fill:var(--trace-dot)}.sec-trace .trace-mark path{stroke:var(--trace-dot)}.sec-photo picture{z-index:1;height:100%;display:block;position:relative}.sec-trace-about{display:none}@media (min-width:1024px){.sec-trace-about{width:240%;height:42%;display:block;top:18%;left:-140%}}.sec-trace-contact{width:100%;height:100%;inset:0}.contact-hero-figure .band-trace-host{display:none}@media (min-width:768px){.contact-hero-figure .band-trace-host{z-index:2;display:block}}@media (prefers-reduced-motion:no-preference){.hero-disc-spin{transform-box:fill-box;transform-origin:50%;animation:50s linear infinite hero-disc-spin}}@keyframes hero-disc-spin{to{transform:rotate(360deg)}}.hero-geo.is-paused .hero-disc-spin{animation-play-state:paused}.hero-geo.is-still .hero-disc-spin{animation:none}.hero-geo{transition:transform .4s cubic-bezier(.16,.84,.28,1)}@media (prefers-reduced-motion:reduce){.hero-geo{transition:none}}.step-mark{--mark-w:22px;top:calc(var(--num-top) + var(--num-size) + 14px);left:calc(var(--rail-axis) - var(--mark-w) / 2);width:var(--mark-w);height:auto;color:var(--bright);opacity:0;transition:opacity .5s var(--ease);pointer-events:none;position:absolute}.step-mark-line{stroke:currentColor;stroke-dasharray:100;stroke-dashoffset:100px;transition:stroke-dashoffset .7s var(--ease) .1s}.step.lit .step-mark{opacity:1}.step.lit .step-mark-line{stroke-dashoffset:0}@media (prefers-reduced-motion:reduce){.step-mark{opacity:1;transition:none}.step-mark-line{stroke-dashoffset:0;transition:none}}.band-trace-host{z-index:0;pointer-events:none;position:absolute;inset:0}
