.r89-shop-header:has(.r100-hero) { position: static; }
.r100-hero { position: relative; }
.r100-hero-stage { display: grid; overflow: hidden; aspect-ratio: 3/2; }
.r90-media.r100-hero .r100-hero-stage img {
  grid-area: 1/1; width: 100%; height: 100%; object-fit: cover; min-height: 0;
  opacity: 0; transition: opacity .65s ease;
}
.r90-media.r100-hero .r100-hero-stage img.is-current { opacity: 1; }
@media (prefers-reduced-motion: no-preference) {
  .r90-media.r100-hero .r100-hero-stage img { animation: r100-hero-drift 8.4s ease-in-out infinite alternate paused; }
  .r90-media.r100-hero.is-playing .r100-hero-stage img { animation-play-state: running; }
  @keyframes r100-hero-drift { to { transform: scale(1.055); } }
}
.r100-hero-controls {
  position: absolute; right: 12px; bottom: 38px; display: flex; gap: 4px;
  padding: 4px; border-radius: 24px; background: #fff; color: #061f60;
}
.r100-hero-controls[hidden] { display: none; }
.r100-hero-controls button {
  display: grid; place-items: center; padding: 0 12px; min-width: 44px; min-height: 44px;
  border: 0; border-radius: 22px; color: inherit; background: transparent; cursor: pointer;
  font: inherit; font-size: .86rem;
}
.r100-hero-controls button:hover { background: #f1efea; }
.r100-hero-controls button:focus-visible { outline: 2px solid #956c32; outline-offset: -2px; }
.r100-priority {
  width: min(1360px, calc(100% - 2 * clamp(20px, 4vw, 74px))); margin: clamp(18px, 4vw, 48px) auto;
}
.r100-priority h2 { font-size: clamp(28px, 4vw, 46px); line-height: 1.1; margin: 0 0 18px; }
.r100-priority ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.r100-priority a {
  display: grid; gap: 5px; height: 100%; padding: 18px 20px; border: 1px solid #d6dbe5;
  border-radius: 16px; background: #fff; color: #061f60; text-decoration: none;
}
.r100-priority a:hover { border-color: #956c32; }
.r100-priority a strong { font-size: 1.1rem; }
.r100-priority a span { color: #4b5870; font-size: .9rem; }
.r100-priority a b { font-size: .87rem; font-weight: 600; margin-top: 4px; }
.r100-print .uni-card.r100-text-card { min-height: 0; }
.r100-print .uni-card.r100-text-card .r100-print-ref {
  display: block; padding: 10px 16px 0; color: #5a5260; font-size: .77rem; letter-spacing: .015em;
}
@media(max-width: 720px) { .r100-priority ul { grid-template-columns: 1fr; } }
@media(prefers-reduced-motion: reduce) { .r100-hero-stage img { transition: none !important; } }
.r100-print-featured ul { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.r100-print-featured a { padding: 0; overflow: hidden; align-content: start; }
.r100-print-featured img { width: 100%; aspect-ratio: 3/2; object-fit: cover; }
.r100-print-featured .r100-feature-copy { display: grid; gap: 5px; padding: 14px 16px 17px; }
.r100-print-featured small { color: #4b5870; font-size: .76rem; }
@media(max-width: 900px) { .r100-print-featured ul { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 430px) { .r100-print-featured ul { gap: 10px; } .r100-print-featured .r100-feature-copy { padding: 10px; } }
