/* Global Home / Work navigation and the two top-level pages. */
.global-nav{display:flex;gap:4px;align-items:center}
.global-nav .glass-nav__item{min-width:72px;text-align:center}
.gopro-rivet-nav{display:none}
@media(max-width:899px){
  body[data-case="gopro"] .global-nav{display:none}
  .gopro-rivet-nav{display:block;position:relative;margin-left:auto}
  .gopro-rivet-nav summary{display:grid;place-items:center;width:48px;height:48px;list-style:none;cursor:pointer;border:1px solid rgba(154,173,183,.1);border-radius:50%;background:radial-gradient(circle at 34% 24%,rgba(130,146,154,.21),transparent 46%),linear-gradient(145deg,#20282d,#11181c 58%,#080d10);box-shadow:inset 1px 1px 1px rgba(191,207,215,.14),inset -2px -3px 6px rgba(0,0,0,.7),0 3px 8px rgba(0,0,0,.4)}
  .gopro-rivet-nav summary::-webkit-details-marker{display:none}
  .gopro-rivet-nav summary span{display:grid;place-items:center;width:25px;height:25px;border:1px solid rgba(154,173,183,.08);border-radius:50%;background:radial-gradient(circle at 50% 70%,#1b252a,#0a1013 72%);box-shadow:inset 0 2px 5px rgba(0,0,0,.9),inset 0 -1px 1px rgba(188,203,211,.11),0 1px 0 rgba(188,203,211,.1)}
  .gopro-rivet-nav summary span::after{content:"";width:14px;height:3px;border-radius:1px;background:linear-gradient(to bottom,#020405 0 55%,#5a6a72 100%);box-shadow:inset 0 1px 1px #000,0 1px 0 rgba(191,207,215,.18);transform:rotate(-35deg)}
  .gopro-rivet-nav summary:focus-visible,.gopro-rivet-nav a:focus-visible{outline:2px solid var(--filament);outline-offset:3px}
  .gopro-rivet-nav nav{position:absolute;right:0;top:58px;display:grid;min-width:148px;padding:8px;border:1px solid var(--glass-edge);background:#0b151b;box-shadow:0 18px 36px rgba(0,0,0,.55)}
  .gopro-rivet-nav:not([open]) nav{display:none}
  .gopro-rivet-nav nav a{padding:10px 12px;font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.1em}
  .gopro-rivet-nav nav a[aria-current]{color:var(--filament)}
}
.case-context{display:none;color:var(--stone-400)}
.case-context span{color:var(--filament)}
@media(min-width:900px){.case-context{display:flex;gap:12px;align-items:center}}
@media(max-width:899px){
  .site-header{padding:16px var(--margin)}
  .site-header .wordmark--signature{width:72px;height:46px}
  .global-nav{margin-left:auto;padding:4px}
  .global-nav .glass-nav__item{min-width:64px;padding:10px 12px}
}

.site-main{min-height:100svh;background:var(--basalt)}
.landing-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:160px var(--margin) 120px;overflow:hidden;background:radial-gradient(circle at 83% 28%,rgba(240,178,90,.12),transparent 31%),linear-gradient(135deg,#161417 0%,var(--basalt) 63%)}
.landing-hero__content{position:relative;z-index:2;max-width:1180px}
.landing-hero__content>.lbl{margin:0 0 28px}
.landing-title{max-width:1150px;margin:0;font-family:var(--display-sans);font-size:clamp(46px,6.2vw,108px);font-weight:900;line-height:.98;letter-spacing:-.025em;text-transform:uppercase}
.landing-title em{font-style:normal;color:var(--filament)}
.landing-lede{max-width:700px;margin:32px 0 0;color:var(--bone-400);font-family:var(--serif);font-size:clamp(22px,2.2vw,34px);line-height:1.25;font-weight:350}
.site-cta{display:inline-flex;gap:24px;align-items:center;margin-top:48px;padding:16px 20px;border:1px solid var(--filament);color:var(--bone);background:rgba(240,178,90,.07);transition:background var(--d-hover) var(--settle)}
.site-cta:hover{background:rgba(240,178,90,.16)}
.site-cta span{font-size:19px;line-height:1;color:var(--filament)}
.landing-hero__line{position:absolute;right:18%;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent,var(--filament),transparent);opacity:.45;transform:rotate(12deg);pointer-events:none}
.landing-note{display:grid;grid-template-columns:minmax(100px,210px) minmax(0,700px);gap:24px 48px;align-items:start;padding:clamp(80px,10vw,150px) var(--margin);border-top:1px solid var(--stone-700)}
.landing-note>.lbl{margin:0}
.landing-note>p:not(.lbl){margin:0;font-family:var(--serif);font-size:clamp(25px,3vw,48px);font-weight:350;line-height:1.13}
.text-link{display:inline-flex;grid-column:2;gap:18px;align-items:center;width:max-content;padding-bottom:8px;border-bottom:1px solid var(--filament);color:var(--bone)}
.text-link span{color:var(--filament);font-size:17px}

.work-page{padding:0 var(--margin) 140px;background:radial-gradient(circle at 70% 0,rgba(240,178,90,.1),transparent 33%),var(--basalt)}
.work-intro{padding:clamp(160px,22svh,240px) 0 80px;max-width:1150px}
.work-intro>.lbl{margin:0 0 28px}
.work-intro .landing-title{font-size:clamp(52px,6vw,96px)}
.work-list{display:grid;gap:22px;max-width:var(--max);margin:0 auto}
.work-card{border:1px solid var(--stone-700);background:var(--stone-900)}
.work-card__link{display:grid;grid-template-columns:minmax(240px,40%) minmax(0,1fr);min-height:350px;transition:background var(--d-hover) var(--settle)}
.work-card__link:hover{background:rgba(240,178,90,.045)}
.work-card__media{display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;background:#151515}
.work-card__media img{width:100%;height:100%;max-height:430px;object-fit:contain}
.work-card__media--pax{background:radial-gradient(circle at 50% 60%,#3d3935,#111113 75%)}
.work-card__media--pax img{max-width:310px;max-height:310px;padding:20px}
.work-card__media--gopro{background:radial-gradient(circle at 50% 65%,rgba(37,184,242,.2),#05070A 70%)}
.work-card__media--gopro img{max-width:340px;max-height:290px;padding:20px}
.work-card__media--amazon{flex-direction:column;align-items:flex-start;gap:0;padding:36px;background:radial-gradient(circle at 80% 40%,rgba(232,170,108,.15),#111318 70%)}
.work-card__media--amazon span{font-family:var(--display-sans);font-size:clamp(34px,4.3vw,70px);line-height:1.02;letter-spacing:-.025em;color:var(--bone)}
.work-card__media--amazon span:last-child{color:var(--filament)}
.work-card__copy{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(28px,5vw,76px)}
.work-card__copy>.lbl{margin:0 0 18px}
.work-card__copy h2{margin:0;font-family:var(--serif);font-size:clamp(46px,5vw,76px);font-weight:350;line-height:1;letter-spacing:-.025em}
.work-card__copy>p:not(.lbl){max-width:45ch;margin:22px 0 0;color:var(--bone-400);font-size:clamp(17px,1.3vw,21px);line-height:1.4}
.work-card__arrow{position:absolute;right:36px;top:30px;color:var(--filament);font-size:28px;line-height:1;transition:transform var(--d-hover) var(--settle)}
.work-card__link:hover .work-card__arrow{transform:translate(4px,-4px)}
@media(max-width:699px){
  .landing-hero{padding:150px var(--margin) 90px}
  .landing-title{font-size:clamp(39px,9.4vw,64px);line-height:.99}
  .landing-lede{font-size:clamp(21px,5.5vw,28px)}
  .landing-hero__line{right:8%;opacity:.25}
  .landing-note{grid-template-columns:1fr;gap:24px}
  .text-link{grid-column:1}
  .work-page{padding-bottom:80px}
  .work-intro{padding:140px 0 64px}
  .work-intro .landing-title{font-size:clamp(42px,9.2vw,65px)}
  .work-card__link{grid-template-columns:1fr;min-height:0}
  .work-card__media{min-height:250px}
  .work-card__copy{min-height:260px;padding:28px}
  .work-card__arrow{right:26px;top:22px}
  .work-card__media--amazon span{font-size:clamp(43px,11vw,72px)}
}
@media(prefers-reduced-motion:reduce){.site-cta,.work-card__link,.work-card__arrow{transition:none}}

/* Home intro: authored Squarespace timing, with readable HTML before JavaScript. */
.intro-hero{isolation:isolate;min-height:100svh;justify-content:center;text-align:center;background:#090b0e;padding:120px var(--margin) 100px}
.intro-hero__poster,.intro-hero__video,.intro-hero__shade{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.intro-hero__poster{background:#0b0f14 url('../assets/home-hero-poster.webp') center/cover no-repeat}
.intro-hero__video{object-fit:cover;opacity:0;transition:opacity .7s ease}
.intro-hero__video.is-playing{opacity:1}
.intro-hero__shade{background:linear-gradient(180deg,rgba(2,5,8,.48),rgba(2,5,8,.22) 44%,rgba(2,5,8,.72)),radial-gradient(circle at center,transparent 8%,rgba(1,3,6,.38) 100%)}
.intro-hero__content{position:relative;z-index:2;width:min(1100px,100%);margin:auto}
.intro-hero__display{max-width:var(--intro-measure);margin:0 auto;color:#f8f7f3;font-family:var(--intro-font);font-size:var(--fs-intro);font-weight:900;line-height:1.08;letter-spacing:-.02em;text-transform:uppercase;text-shadow:0 3px 32px rgba(0,0,0,.55)}
.intro-ready .intro-hero__display{opacity:0;transition:opacity .7s ease}
.intro-ready .intro-hero__display.is-visible{opacity:1}
.intro-hero__cursor{display:inline-block;margin-left:.04em;font-weight:300;animation:intro-blink .8s steps(1) infinite}
@keyframes intro-blink{50%{opacity:0}}
.intro-vac-word{display:inline-block;white-space:nowrap}
.intro-vac-letter{display:inline-block;will-change:transform,opacity}
.intro-hero__actions{display:flex;justify-content:center;gap:10px;min-height:54px;margin-top:38px}
.intro-control{border:1px solid rgba(255,255,255,.55);border-radius:0;padding:13px 18px;color:#fff;background:rgba(5,8,11,.45);font:inherit;cursor:pointer;text-transform:uppercase;letter-spacing:.1em}
.intro-control:hover,.intro-control:focus-visible{border-color:var(--filament);background:rgba(5,8,11,.75)}
.intro-control[hidden]{display:none}
.intro-hero__scroll{position:absolute;z-index:2;bottom:40px;left:50%;display:inline-flex;align-items:center;gap:var(--s2);min-height:var(--s7);transform:translateX(-50%);color:var(--bone);white-space:nowrap;text-transform:uppercase;letter-spacing:.14em;text-decoration:none}
.intro-hero__scroll:hover,.intro-hero__scroll:focus-visible{color:var(--filament)}
.intro-hero__scroll-text,.intro-hero__scroll-arrow{display:inline-block;transform-origin:center bottom;animation:intro-blob-arrive var(--d-reveal) var(--settle) both}
.intro-hero__scroll-arrow{animation-name:intro-arrow-arrive;animation-delay:var(--stagger)}
@keyframes intro-blob-arrive{0%{opacity:0;transform:translateY(var(--s3)) scale(.78,1.2)}45%{opacity:1;transform:translateY(0) scale(1.13,.78)}75%{transform:scale(.95,1.08)}100%{opacity:1;transform:scale(1)}}
@keyframes intro-arrow-arrive{0%{opacity:0;transform:translateY(calc(-1 * var(--s3))) scale(.7,1.2)}55%{opacity:1;transform:translateY(var(--s1)) scale(1.1,.85)}100%{opacity:1;transform:translateY(0) scale(1)}}
.home-work{padding:clamp(92px,12vw,170px) var(--margin) 130px;background:radial-gradient(circle at 83% 7%,rgba(240,178,90,.1),transparent 32%),var(--basalt);scroll-margin-top:60px}
.home-work__intro{max-width:var(--max);margin:0 auto 68px}
.home-work__intro>.lbl{margin:0 0 28px}
.home-work__intro h2{max-width:1000px;margin:0;font-family:var(--display-sans);font-size:clamp(50px,8vw,118px);font-weight:900;line-height:.95;letter-spacing:-.035em;text-transform:uppercase}
.home-work__intro h2 em{font-style:normal;color:var(--filament)}
.home-work__intro>p:last-child{max-width:54ch;color:var(--bone-400);font-family:var(--serif);font-size:clamp(22px,2.3vw,34px);line-height:1.25}
.home-work__directory{display:flex;margin:64px auto 0;width:max-content}
.work-card__copy h3{margin:0;font-family:var(--serif);font-size:clamp(46px,5vw,76px);font-weight:350;line-height:1;letter-spacing:-.025em}
.work-card__media{position:relative;min-height:350px}
.work-card__media>.react-bits-root{position:absolute;inset:0}
.work-card__media.is-react-ready>img{visibility:hidden}
.work-card__media .tilted-card-figure{height:100%!important;width:100%!important}
.work-card__media .tilted-card-inner{width:min(80%,340px)!important;height:min(80%,310px)!important}
.work-card__media .tilted-card-img{width:100%!important;height:100%!important;object-fit:contain;border-radius:0}
.work-card__media--pax .tilted-card-inner{width:min(76%,310px)!important;height:min(76%,310px)!important}
.work-card.card-await{opacity:0;transform:translateY(42px)}
.work-card.card-shown{opacity:1;transform:none;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}
.work-card.card-shown:nth-child(2){transition-delay:140ms}
@media(max-width:699px){
  .intro-hero{padding:130px 22px 110px}
  .intro-hero__display{max-width:calc(100vw - var(--s7));font-size:var(--fs-intro)}
  .intro-hero__scroll{bottom:26px}
  .home-work{padding:85px var(--margin) 90px}
  .home-work__intro{margin-bottom:45px}
  .home-work__intro h2{font-size:clamp(48px,12vw,72px)}
  .work-card__media{min-height:250px}
  .home-work__directory{margin-top:45px}
}
@media(prefers-reduced-motion:reduce){
  .intro-hero__video{display:none}
  .intro-ready .intro-hero__display{opacity:1;transition:none}
  .intro-hero__cursor{animation:none}
  .intro-hero__scroll-text,.intro-hero__scroll-arrow{animation:none}
  .work-card.card-await,.work-card.card-shown{opacity:1;transform:none;transition:none}
  .work-card__link,.work-card__arrow{transition:none}
}
