.rf-gun-product {
  display: none;
  overflow: clip;
  color: #202020;
  background: #fff;
}

.rf-gun-product:target,
body:has(#rf-gun-product-intro:target) .rf-gun-product,
body:has(#rf-gun-product-features:target) .rf-gun-product,
body:has(#rf-gun-product-platforms:target) .rf-gun-product,
body:has(#rf-gun-product-scenes:target) .rf-gun-product {
  display: block !important;
}

body:has(#rinfire-gun-product:target) :is(.rf-download-page, .rf-assistant-page, .rf-support-page, .rf-gun-support-page, .rf-gun-manual-page, .rf-tutorial-page, .rf-gun-faq-page, .rf-after-sales-page, .rf-controller-support-page),
body:has(#rf-gun-product-intro:target) :is(.rf-download-page, .rf-assistant-page, .rf-support-page, .rf-gun-support-page, .rf-gun-manual-page, .rf-tutorial-page, .rf-gun-faq-page, .rf-after-sales-page, .rf-controller-support-page),
body:has(#rf-gun-product-features:target) :is(.rf-download-page, .rf-assistant-page, .rf-support-page, .rf-gun-support-page, .rf-gun-manual-page, .rf-tutorial-page, .rf-gun-faq-page, .rf-after-sales-page, .rf-controller-support-page),
body:has(#rf-gun-product-platforms:target) :is(.rf-download-page, .rf-assistant-page, .rf-support-page, .rf-gun-support-page, .rf-gun-manual-page, .rf-tutorial-page, .rf-gun-faq-page, .rf-after-sales-page, .rf-controller-support-page),
body:has(#rf-gun-product-scenes:target) :is(.rf-download-page, .rf-assistant-page, .rf-support-page, .rf-gun-support-page, .rf-gun-manual-page, .rf-tutorial-page, .rf-gun-faq-page, .rf-after-sales-page, .rf-controller-support-page) {
  display: none !important;
}

.rf-gun-product-container {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
}

.rf-gun-product-hero {
  position: relative;
  min-height: min(820px, calc(100vh - var(--rf-header-height, 72px)));
  overflow: hidden;
  color: #fff;
  background: #080808;
}

.rf-gun-product-hero > img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  object-position: center 54%;
}

.rf-gun-product-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, .12), transparent 38%, rgba(0, 0, 0, .24));
}

.rf-gun-product-hero-copy {
  position: relative;
  z-index: 1;
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
  padding-top: clamp(58px, 7vw, 98px);
  text-align: center;
}

.rf-gun-product-hero-copy > p,
.rf-gun-product-eyebrow {
  margin: 0 0 14px;
  color: #ff8200;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.rf-gun-product-hero h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(36px, 4.5vw, 64px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: .01em;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .38);
}

.rf-gun-product-hero-copy > a {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  margin: 30px auto 0;
  border: 1px solid rgba(255, 255, 255, .58);
  border-radius: 50%;
}

.rf-gun-product-hero-copy > a span {
  width: 10px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: translateY(-2px) rotate(45deg);
}

.rf-gun-product-jump {
  position: sticky;
  top: var(--rf-header-height, 72px);
  z-index: 20;
  border-bottom: 1px solid #e5e5e5;
  background: rgba(255, 255, 255, .96);
  backdrop-filter: blur(12px);
}

.rf-gun-product-jump .rf-gun-product-container {
  display: flex;
  justify-content: center;
  gap: 44px;
  overflow-x: auto;
  scrollbar-width: none;
}

.rf-gun-product-jump a {
  flex: none;
  padding: 20px 0 17px;
  border-bottom: 3px solid transparent;
  color: #404040;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

.rf-gun-product-jump a:hover,
.rf-gun-product-jump a:focus-visible {
  color: #ff7200;
  border-bottom-color: #ff8200;
}

.rf-gun-product-intro {
  padding: 104px 0 0;
  scroll-margin-top: 138px;
  background: #161616;
}

.rf-gun-product-intro-copy {
  max-width: 850px;
  padding-bottom: 64px;
  color: #fff;
  text-align: center;
}

.rf-gun-product-intro h2,
.rf-gun-product-section-heading h2,
.rf-gun-product-editorial h2,
.rf-gun-product-cta h2 {
  margin: 0;
  font-size: clamp(36px, 4.8vw, 60px);
  line-height: 1.12;
  letter-spacing: -.04em;
}

.rf-gun-product-intro-copy > p:last-child,
.rf-gun-product-section-heading > p:last-child,
.rf-gun-product-editorial-copy > p:last-child,
.rf-gun-product-cta > .rf-gun-product-container > p {
  margin: 26px auto 0;
  color: rgba(255, 255, 255, .7);
  font-size: 18px;
  line-height: 1.9;
}

.rf-gun-product-video-wrap {
  width: min(1920px, 100%);
  margin-inline: auto;
  background: #000;
}

.rf-gun-product-video-wrap video {
  width: 100%;
  display: block;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: #000;
}

.rf-gun-product-feature-stage {
  position: relative;
  min-height: 760px;
  display: flex;
  align-items: center;
  padding: 110px 0;
  scroll-margin-top: 138px;
  color: #fff;
  background: #111;
}

.rf-gun-product-feature-bg,
.rf-gun-product-feature-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.rf-gun-product-feature-bg { object-fit: cover; }
.rf-gun-product-feature-overlay { background: rgba(0, 0, 0, .58); }
.rf-gun-product-feature-stage .rf-gun-product-container { position: relative; z-index: 1; }
.rf-gun-product-section-heading { max-width: 800px; margin-bottom: 58px; }
.rf-gun-product-section-heading-light { color: #fff; }

.rf-gun-product-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.rf-gun-product-feature-grid article {
  min-height: 230px;
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 18px;
  background: rgba(14, 14, 14, .58);
  backdrop-filter: blur(8px);
}

.rf-gun-product-feature-grid img {
  width: 150px;
  height: auto;
  aspect-ratio: 176 / 75;
  object-fit: contain;
  object-position: left center;
  filter: brightness(0) invert(1);
}

.rf-gun-product-feature-grid h3 { margin: 20px 0 10px; font-size: 20px; }
.rf-gun-product-feature-grid p { margin: 0; color: rgba(255, 255, 255, .68); line-height: 1.7; }

.rf-gun-product-platforms {
  padding: 112px 0;
  scroll-margin-top: 138px;
  background: #f3f3f3;
}

.rf-gun-product-platforms .rf-gun-product-section-heading { margin-inline: auto; text-align: center; }
.rf-gun-product-platforms .rf-gun-product-section-heading > p:last-child { color: #666; }
.rf-gun-product-platform-media {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  background: #171717;
}

.rf-gun-product-platform-media > img {
  width: 100%;
  height: 650px;
  display: block;
  object-fit: cover;
  opacity: .58;
}

.rf-gun-product-platform-list {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
  gap: 20px;
  padding: 55px;
}

.rf-gun-product-platform-list div {
  min-height: 210px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 18px;
  background: rgba(0, 0, 0, .58);
}

.rf-gun-product-platform-list img { width: min(180px, 100%); height: 90px; object-fit: contain; filter: grayscale(1) brightness(0) invert(1); }
.rf-gun-product-platform-list strong { margin-top: 12px; color: #fff; font-size: 19px; }
.rf-gun-product-compatibility-note { margin: 22px auto 0; color: #666; font-size: 13px; line-height: 1.7; text-align: center; }

.rf-gun-product-editorial {
  min-height: 680px;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  background: #fff;
}

.rf-gun-product-editorial-reverse { grid-template-columns: .85fr 1.15fr; background: #e7e7e7; }
.rf-gun-product-editorial-reverse .rf-gun-product-editorial-media { order: 2; }
.rf-gun-product-editorial-media { min-height: 600px; overflow: hidden; }
.rf-gun-product-editorial-media img { width: 100%; height: 100%; display: block; object-fit: cover; }
.rf-gun-product-editorial-copy { max-width: 620px; align-self: center; padding: 80px clamp(42px, 7vw, 110px); }
.rf-gun-product-editorial-copy > p:last-child { color: #626262; }

.rf-gun-product-scenes {
  padding: 112px 0;
  scroll-margin-top: 138px;
  background: #171717;
  color: #fff;
}

.rf-gun-product-scene-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.rf-gun-product-scene-card { position: relative; min-height: 420px; overflow: hidden; border-radius: 20px; background: #222; }
.rf-gun-product-scene-card img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; transition: transform .5s ease; }
.rf-gun-product-scene-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(0, 0, 0, .82)); }
.rf-gun-product-scene-card > div { position: absolute; z-index: 1; left: 34px; right: 34px; bottom: 30px; }
.rf-gun-product-scene-card h3 { margin: 0 0 8px; font-size: 28px; }
.rf-gun-product-scene-card p { margin: 0; color: rgba(255, 255, 255, .76); line-height: 1.7; }
.rf-gun-product-scene-card:hover img { transform: scale(1.025); }

.rf-gun-product-cta {
  padding: 120px 0;
  color: #fff;
  text-align: center;
  background: radial-gradient(circle at 50% 0, #3b2b1b, transparent 45%), #111;
}

.rf-gun-product-cta > .rf-gun-product-container > p { max-width: 680px; }
.rf-gun-product-cta > .rf-gun-product-container > div { display: flex; justify-content: center; gap: 16px; margin-top: 34px; }
.rf-gun-product-button {
  min-width: 150px;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 26px;
  border: 1px solid #ff8200;
  border-radius: 999px;
  color: #171717 !important;
  font-weight: 700;
  text-decoration: none !important;
  background: #ff8200;
}
.rf-gun-product-button-secondary { color: #fff !important; background: transparent; }
.rf-gun-product-button:hover,
.rf-gun-product-button:focus-visible { color: #171717 !important; background: #ff9b33; }

@media (max-width: 900px) {
  .rf-gun-product-hero { min-height: 650px; }
  .rf-gun-product-feature-grid { grid-template-columns: repeat(2, 1fr); }
  .rf-gun-product-platform-media > img { height: 540px; }
  .rf-gun-product-platform-list { padding: 30px; }
  .rf-gun-product-editorial,
  .rf-gun-product-editorial-reverse { min-height: 0; grid-template-columns: 1fr; }
  .rf-gun-product-editorial-reverse .rf-gun-product-editorial-media { order: 0; }
  .rf-gun-product-editorial-media { min-height: 520px; }
  .rf-gun-product-editorial-copy { max-width: 760px; padding: 72px 32px; }
}

@media (max-width: 640px) {
  .rf-gun-product-container,
  .rf-gun-product-hero-copy { width: min(100% - 32px, 1180px); }
  .rf-gun-product-hero { min-height: 560px; }
  .rf-gun-product-hero > img { object-position: 55% center; }
  .rf-gun-product-hero-copy { padding-top: 58px; }
  .rf-gun-product-hero-copy > p { font-size: 11px; }
  .rf-gun-product-hero h1 { font-size: 32px; }
  .rf-gun-product-jump { top: var(--rf-header-height-mobile, 60px); }
  .rf-gun-product-jump .rf-gun-product-container { justify-content: flex-start; gap: 28px; }
  .rf-gun-product-intro { padding-top: 72px; }
  .rf-gun-product-intro-copy { padding-bottom: 42px; }
  .rf-gun-product-intro-copy > p:last-child,
  .rf-gun-product-section-heading > p:last-child,
  .rf-gun-product-editorial-copy > p:last-child { font-size: 16px; }
  .rf-gun-product-feature-stage,
  .rf-gun-product-platforms,
  .rf-gun-product-scenes,
  .rf-gun-product-cta { padding: 76px 0; }
  .rf-gun-product-feature-grid { grid-template-columns: 1fr; }
  .rf-gun-product-feature-grid article { min-height: 0; }
  .rf-gun-product-feature-grid img { width: 132px; }
  .rf-gun-product-platform-media > img { height: 600px; }
  .rf-gun-product-platform-list { grid-template-columns: 1fr; gap: 12px; padding: 20px; }
  .rf-gun-product-platform-list div { min-height: 155px; }
  .rf-gun-product-platform-list img { height: 62px; }
  .rf-gun-product-editorial-media { min-height: 360px; }
  .rf-gun-product-editorial-copy { padding: 60px 24px; }
  .rf-gun-product-scene-grid { grid-template-columns: 1fr; }
  .rf-gun-product-scene-card { min-height: 360px; }
  .rf-gun-product-scene-card > div { left: 24px; right: 24px; bottom: 24px; }
  .rf-gun-product-cta > .rf-gun-product-container > div { flex-direction: column; }
  .rf-gun-product-button { width: 100%; }
}
