/* Quiet orbit. Each link stays in place; only the artwork drifts within its space. */
.hero.hero-orbit{display:block;position:relative;isolation:isolate;padding:48px 40px 24px;background:#0b1812;overflow:clip}
.orbit-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.95fr) minmax(0,1fr);grid-template-rows:repeat(3,auto);gap:32px 48px;align-items:center;max-width:1440px;margin-inline:auto;position:relative}
.orbit-stage::before{content:"";position:absolute;z-index:-1;inset:5% 6%;border:1px solid #dfedbd0c;border-radius:50%;pointer-events:none}
.hero-orbit .orbit-copy{grid-column:2;grid-row:1/4;text-align:center;position:relative;z-index:2;min-width:0;padding:24px 0}
.hero-orbit .eyebrow{justify-content:center;font-size:.6875rem;letter-spacing:.12em;color:#c8d7be}
.hero-orbit h1{font-size:clamp(3.6rem,5.2vw,5.5rem);line-height:1.08;font-weight:400;letter-spacing:-.055em;margin:24px auto;max-width:none}
.hero-orbit h1 em{color:var(--lime);display:block;margin-top:4px}
.hero-orbit .hero-copy>p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:35ch;margin-inline:auto}
.hero-orbit .hero-actions{justify-content:center;gap:16px 24px;margin-top:30px}
.hero-orbit .hero-actions .text-button{font-size:.875rem;min-height:48px;display:inline-flex;align-items:center;gap:12px}
.hero-orbit .hero-note{display:block;font-size:.75rem;line-height:1.8;color:#a4b49f;margin:24px auto 0;max-width:none}
.orbit-link{display:block;width:min(100%,220px);min-width:0;position:relative;padding:8px 2px 0;outline-offset:8px;border-radius:7px}
.orbit-link:focus-visible{outline:2px solid var(--lime)}
.orbit-art{display:block;position:relative;aspect-ratio:4/3;border-radius:9px;overflow:hidden;background:#e5e8e0;box-shadow:0 16px 40px #0003;transform:rotate(var(--tilt,0deg));animation:orbit-breathe 9s ease-in-out infinite alternate;animation-delay:var(--delay,0s)}
.orbit-art>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}
.orbit-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 2px 4px;color:#d8e3d1;font-size:.8125rem;line-height:1.5}
.orbit-label>span{color:#a4b797;transition:transform 180ms ease;flex-shrink:0}
.orbit-link:hover .orbit-label,.orbit-link:focus-visible .orbit-label{color:var(--lime)}
.orbit-link:hover .orbit-art,.orbit-link:focus-visible .orbit-art{animation-play-state:paused}
.orbit-link:hover .orbit-label>span{transform:translate(2px,-2px)}
.orbit-profile{grid-area:1/1;--tilt:-4deg;--delay:-3s;margin-left:20%;margin-right:-6%}
.orbit-web{justify-self:end;grid-area:1/3;--tilt:4deg;--delay:-6s;margin-right:20%;margin-left:0}
.orbit-letter{grid-area:2/1;--tilt:2deg;--delay:-1s;margin-right:16%;margin-left:0}
.orbit-pitch{justify-self:end;grid-area:2/3;--tilt:-3deg;--delay:-5s;margin-left:16%}
.orbit-campaign{grid-area:3/1;--tilt:-3deg;--delay:-7s;margin-left:24%;margin-right:-10%}
.orbit-social{justify-self:end;grid-area:3/3;--tilt:3deg;--delay:-2s;margin-right:24%;margin-left:-10%}
.hero-orbit .hero-media{position:absolute;inset:0;z-index:0;margin:0;mask-image:none;pointer-events:none}
.hero-orbit .hero-media video,.hero-orbit .hero-media .hero-poster img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
.hero-orbit .hero-media:has(video.is-playing) .hero-poster{visibility:hidden}
.orbit-film{background:#293d2f}
.orbit-film-tag{position:absolute;bottom:8px;left:8px;z-index:1;font-size:.5rem;letter-spacing:.06em;line-height:1.5;padding:4px 6px;background:#0b1812cf;color:#e5edda;border-radius:3px}
.hero-orbit .orbit-footnote{display:flex;justify-content:space-between;gap:20px;max-width:1440px;margin:40px auto 0;padding-top:20px;border-top:1px solid #dfedbd18;color:#99ac96;font-size:.6875rem;line-height:1.7;letter-spacing:.02em}
@keyframes orbit-breathe{from{transform:translateY(0) rotate(var(--tilt,0deg))}to{transform:translateY(-6px) rotate(var(--tilt,0deg))}}
/* At tablet widths the gallery lives below the copy, rather than squeezing it. */
@media(max-width:1199px){
 .hero.hero-orbit{padding:52px 40px 28px}.orbit-stage{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 32px;max-width:900px}
 .orbit-stage::before{display:none}.hero-orbit .orbit-copy{grid-column:1/-1;grid-row:1;padding:0 0 30px;max-width:620px;justify-self:center}
 .hero-orbit h1{font-size:clamp(3.5rem,7.4vw,5.5rem)}.hero-orbit .hero-copy>p{max-width:42ch}
 .orbit-link{width:auto;justify-self:stretch;margin:0!important;grid-area:auto}.orbit-profile{grid-area:2/1}.orbit-web{grid-area:2/2}.orbit-letter{grid-area:2/3}.orbit-pitch{grid-area:3/1}.orbit-campaign{grid-area:3/2}.orbit-social{grid-area:3/3}
 .hero-orbit .orbit-footnote{max-width:900px}.hero-orbit .hero-media video,.hero-orbit .hero-media .hero-poster img{object-position:center;transform:none}
}
@media(max-width:759px){
 .hero.hero-orbit{padding:38px 24px 26px}.orbit-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 22px}
 .hero-orbit .orbit-copy{padding:0 0 12px;max-width:520px}.hero-orbit .eyebrow{font-size:.625rem;letter-spacing:.09em}
 .hero-orbit h1{font-size:clamp(2.8rem,9.2vw,4.7rem);letter-spacing:-.05em;margin-block:22px}.hero-orbit .hero-copy>p{font-size:.9375rem;line-height:1.75;max-width:35ch}
 .hero-orbit .hero-actions{margin-top:24px;gap:10px 20px}.hero-orbit .hero-note{margin-top:18px;font-size:.6875rem}
 .orbit-profile{grid-area:2/1}.orbit-web{grid-area:2/2}.orbit-letter{grid-area:3/1}.orbit-pitch{grid-area:3/2}.orbit-campaign{grid-area:4/1}.orbit-social{grid-area:4/2}
 .orbit-link:nth-of-type(even){top:18px}.orbit-label{font-size:.75rem;gap:6px;padding-top:12px}.orbit-art{border-radius:7px;animation-duration:11s;box-shadow:0 10px 25px #0002}
 .hero-orbit .hero-media video,.hero-orbit .hero-media .hero-poster img{object-position:center;transform:none}
 .orbit-film-tag{font-size:.4375rem;left:5px;bottom:5px;padding:3px 4px}
 .hero-orbit .orbit-footnote{margin-top:48px;display:block;text-align:center;font-size:.625rem;padding-top:18px}.orbit-footnote>span{display:block}.orbit-footnote>span+span{margin-top:5px}
}
@media(max-width:359px){.hero.hero-orbit{padding-inline:20px}.orbit-stage{column-gap:18px}.hero-orbit .hero-actions{flex-direction:column;gap:4px}.hero-orbit .hero-copy>p{font-size:.9375rem}.orbit-label{font-size:.6875rem}.orbit-film-tag{display:none}}
@media(prefers-reduced-motion:reduce){.orbit-art{animation:none}.orbit-label>span{transition:none}.orbit-link:hover .orbit-label>span{transform:none}}
html.motion-reduced .orbit-art{animation:none}
