/* Raven's K9 to 5 | Seasonal accents V67
   Only the automatically added seasonal banner and very subtle trim colors.
   No changes to the approved hero, photography, booking links, or layout. */
body[data-rk-season] {
  --rk-season-ink: #f8eadb;
  --rk-season-light: #f2c96e;
  --rk-season-line: rgba(231, 181, 96, .46);
  --rk-season-glow: rgba(168, 91, 155, .22);
}
body[data-rk-season="spring"] { --rk-season-light: #e8bee5; --rk-season-line: rgba(213, 154, 205, .53); --rk-season-glow: rgba(131, 99, 139, .25); }
body[data-rk-season="summer"] { --rk-season-light: #f6d77b; --rk-season-line: rgba(238, 199, 91, .47); --rk-season-glow: rgba(148, 89, 95, .28); }
body[data-rk-season="autumn"] { --rk-season-light: #f1b57d; --rk-season-line: rgba(222, 134, 69, .5); --rk-season-glow: rgba(161, 93, 53, .27); }
body[data-rk-season="winter"] { --rk-season-light: #d7d2fb; --rk-season-line: rgba(170, 179, 243, .42); --rk-season-glow: rgba(98, 108, 178, .3); }
body[data-rk-season="halloween"] { --rk-season-light: #ffb268; --rk-season-line: rgba(241, 118, 43, .53); --rk-season-glow: rgba(155, 57, 140, .32); }
body[data-rk-season="thanksgiving"] { --rk-season-light: #f2ba71; --rk-season-line: rgba(211, 144, 66, .55); --rk-season-glow: rgba(125, 70, 42, .3); }
body[data-rk-season="christmas"] { --rk-season-light: #f8d79f; --rk-season-line: rgba(171, 105, 130, .58); --rk-season-glow: rgba(94, 118, 96, .3); }
body[data-rk-season="newyear"] { --rk-season-light: #f3e2b3; --rk-season-line: rgba(216, 189, 112, .52); --rk-season-glow: rgba(127, 104, 179, .3); }
body[data-rk-season="valentine"] { --rk-season-light: #ffcbdf; --rk-season-line: rgba(225, 122, 178, .48); --rk-season-glow: rgba(173, 68, 130, .34); }
body[data-rk-season="easter"] { --rk-season-light: #efd5fa; --rk-season-line: rgba(187, 161, 217, .52); --rk-season-glow: rgba(121, 140, 113, .22); }
body[data-rk-season="fourth"] { --rk-season-light: #e1e8ff; --rk-season-line: rgba(168, 159, 227, .57); --rk-season-glow: rgba(99, 91, 155, .32); }

.rk-seasonal-banner {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  width: 100%;
  padding: 7px 18px;
  margin: 0;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 20% -85%, var(--rk-season-glow), transparent 56%),
    radial-gradient(ellipse at 80% 170%, var(--rk-season-glow), transparent 55%),
    linear-gradient(92deg, #130d17 0%, #1c1421 54%, #100d14 100%);
  border-block: 1px solid var(--rk-season-line);
  color: var(--rk-season-ink);
  font-family: Arial, Helvetica, sans-serif;
  isolation: isolate;
}
.rk-seasonal-banner::before,
.rk-seasonal-banner::after {
  content: '✦';
  position: absolute;
  top: 50%;
  font-size: .6rem;
  transform: translateY(-50%);
  color: var(--rk-season-light);
  opacity: .62;
  pointer-events: none;
}
.rk-seasonal-banner::before { left: 11px; }
.rk-seasonal-banner::after { right: 11px; }
.rk-seasonal-banner-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  max-width: 1150px;
  min-width: 0;
  margin-inline: auto;
}
.rk-seasonal-emblem { flex: 0 0 auto; font-size: 1.45rem; line-height: 1; filter: drop-shadow(0 1px 5px var(--rk-season-glow)); }
.rk-seasonal-message {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  gap: 4px 13px;
  min-width: 0;
  text-align: center;
  line-height: 1.35;
}
.rk-seasonal-message strong {
  color: var(--rk-season-light);
  font-size: .81rem;
  font-weight: 800;
  letter-spacing: .07em;
}
.rk-seasonal-message span { color: #e4d5e1; font-size: .76rem; font-weight: 500; letter-spacing: .008em; }
.rk-seasonal-glyphs { display: flex; align-items: center; gap: 7px; flex: 0 0 auto; }
.rk-seasonal-glyphs i { font-size: 1.06rem; font-style: normal; filter: drop-shadow(0 1px 3px var(--rk-season-glow)); }
.rk-seasonal-glyphs i:last-child { font-size: .82rem; opacity: .8; }
body[data-rk-season] .page-topbar { border-bottom-color: var(--rk-season-line); }
@media (max-width: 680px) {
  .rk-seasonal-banner { padding: 8px 14px; }
  .rk-seasonal-banner-inner { gap: 9px; }
  .rk-seasonal-message { flex-direction: column; align-items: center; gap: 2px; }
  .rk-seasonal-message strong { font-size: .74rem; }
  .rk-seasonal-message span { font-size: .68rem; max-width: 300px; }
  .rk-seasonal-emblem { font-size: 1.12rem; }
  .rk-seasonal-glyphs { display: none; }
}
@media (max-width: 340px) {
  .rk-seasonal-emblem { display: none; }
  .rk-seasonal-message span { font-size: .64rem; }
}
@media (prefers-reduced-motion: no-preference) {
  .rk-seasonal-banner::before { animation: rkSeasonTwinkle 5.5s ease-in-out infinite; }
  .rk-seasonal-banner::after { animation: rkSeasonTwinkle 5.5s ease-in-out 2.75s infinite; }
  @keyframes rkSeasonTwinkle { 0%, 100% { opacity: .3; } 50% { opacity: .88; } }
}
/* An understated holiday mark in interior page headings, never over photography. */
body[data-rk-season] .page-hero::after {
  content: var(--rk-season-mark, '✦');
  position: absolute;
  right: clamp(8px, 3vw, 50px);
  top: 48%;
  transform: translateY(-50%) rotate(-10deg);
  font-size: clamp(70px, 9vw, 142px);
  line-height: 1;
  opacity: .095;
  filter: drop-shadow(0 0 10px var(--rk-season-glow));
  pointer-events: none;
}
body[data-rk-season="spring"]       { --rk-season-mark: '🌸'; }
body[data-rk-season="summer"]       { --rk-season-mark: '☀'; }
body[data-rk-season="autumn"]       { --rk-season-mark: '🍁'; }
body[data-rk-season="winter"]       { --rk-season-mark: '❄'; }
body[data-rk-season="halloween"]    { --rk-season-mark: '🎃'; }
body[data-rk-season="thanksgiving"] { --rk-season-mark: '🍂'; }
body[data-rk-season="christmas"]    { --rk-season-mark: '❄'; }
body[data-rk-season="newyear"]      { --rk-season-mark: '✦'; }
body[data-rk-season="valentine"]    { --rk-season-mark: '♥'; }
body[data-rk-season="easter"]       { --rk-season-mark: '🌷'; }
body[data-rk-season="fourth"]       { --rk-season-mark: '✦'; }
@media (max-width: 640px) {
  body[data-rk-season] .page-hero::after { font-size: 62px; right: 8px; opacity: .055; }
}

/* On the home page the existing 13 firefly nodes turn into light seasonal
   flakes, leaves or petals. Summer and July retain the original fireflies. No added particle layer or JS loop. */
body[data-rk-particles="snow"] .fireflies-v15 span,
body[data-rk-particles="leaves"] .fireflies-v15 span,
body[data-rk-particles="petals"] .fireflies-v15 span,
body[data-rk-particles="stars"] .fireflies-v15 span {
  background:none; box-shadow:none; width:auto; height:auto; border-radius:0;
  font-size:clamp(7px,1.25vw,18px); line-height:1; opacity:.58;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));
  animation:rkSeasonDrift var(--dur) linear infinite;
  animation-delay:var(--delay);
}
body[data-rk-particles="snow"] .fireflies-v15 span::before { content:''; display:block; width:6px; height:6px; border-radius:50%; background:#f5ecff; box-shadow:0 0 5px #fff8; }
body[data-rk-particles="leaves"] .fireflies-v15 span::before { content:''; display:block; width:9px; height:13px; border-radius:1px 80% 1px 80%; background:linear-gradient(40deg,#92451e,#e79a42); transform:rotate(25deg); }
body[data-rk-particles="petals"] .fireflies-v15 span::before { content:''; display:block; width:8px; height:11px; border-radius:80% 20% 65% 35%; background:#ffc3e4; transform:rotate(25deg); }
body[data-rk-particles="stars"] .fireflies-v15 span::before { content:''; display:block; width:9px; height:12px; background:#fff1a1; clip-path:polygon(50% 0,65% 38%,100% 50%,65% 62%,50% 100%,35% 62%,0 50%,35% 38%); }
/* Rose petals for Louisville Derby week; the same existing particle nodes. */
body[data-rk-season="derby"] .fireflies-v15 span::before { background:#ba294d; border-radius:75% 30% 70% 35%; }
body[data-rk-season="derby"] .fireflies-v15 span:nth-child(3n)::before { background:#e75068; }
body[data-rk-particles="snow"] .fireflies-v15 span:nth-child(3n)::before { width:3px; height:3px; }
body[data-rk-particles="leaves"] .fireflies-v15 span:nth-child(3n)::before { background:linear-gradient(40deg,#8f321c,#d46d28); }
@keyframes rkSeasonDrift {
  0%   { transform:translate3d(0,-20px,0) rotate(-14deg);opacity:0; }
  17%  { opacity:.68; }
  68%  { opacity:.6; }
  100% { transform:translate3d(var(--dx),95px,0) rotate(48deg);opacity:0; }
}
@media (max-width: 640px) {
  body[data-rk-particles="snow"] .fireflies-v15 span,
  body[data-rk-particles="leaves"] .fireflies-v15 span,
  body[data-rk-particles="petals"] .fireflies-v15 span,
  body[data-rk-particles="stars"] .fireflies-v15 span { font-size:clamp(7px,2vw,12px); }
  .fireflies-v15 span:nth-child(n+10) { display:none; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-rk-particles] .fireflies-v15 span { animation:none!important; opacity:.28; }
}

/* V69 | Independence Day fireworks, activated only by CONFIG.fourth.fireworks.
   Separate from the existing fireflies; never receives clicks or changes layout. */
.hero-image-v14 .rk-fw-burst { position:absolute;width:4px;height:4px;pointer-events:none;z-index:6; }
.hero-image-v14 .rk-fw-burst span { position:absolute;left:0;top:0;width:4px;height:4px;border-radius:50%;animation:rkFwFly 1.3s ease-out forwards; }
@keyframes rkFwFly { 0% { transform:translate(0,0) scale(1);opacity:1; } 100% { transform:translate(var(--fx),var(--fy)) scale(.3);opacity:0; } }
@media(prefers-reduced-motion:reduce) { .hero-image-v14 .rk-fw-burst { display:none!important; } }



/* V69 | Original hero stays untouched; decorative transparent PNGs only.
   Under clickable image-map (z-index 20), no pointer events or layout shifts. */
.hero-image-v14 .rk-seasonal-decor{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:5;user-select:none;}
.hero-image-v14 .rk-decor-item{display:block;position:absolute;left:var(--decor-x);top:var(--decor-y);width:var(--decor-w);max-width:none;height:auto;object-fit:contain;opacity:var(--decor-a);transform:translate(-50%,-50%) rotate(var(--decor-r));pointer-events:none;filter:drop-shadow(0 2px 5px rgba(8,4,10,.36));}

@media(prefers-reduced-motion:reduce){.hero-image-v14 .rk-decor-item{animation:none!important}}


/* Keep foreground artwork above, never over, the five original trust badges. */
.hero-image-v14 .rk-seasonal-decor{clip-path:inset(0 0 11% 0);}
/* V88: recognizable lobed maple leaves, reusing the existing particle nodes. */
body[data-rk-particles="leaves"] .fireflies-v15 span{top:-32px;filter:drop-shadow(0 1px 1px #210d0870);opacity:.85;animation:rkLeafFall var(--dur) linear infinite;animation-delay:var(--delay)}
body[data-rk-particles="leaves"] .fireflies-v15 span::before{width:24px;height:28px;border-radius:0;--leaf:#ed7b22;background:linear-gradient(90deg,transparent 46%,#80350b 48%,#f6c05e 52%,transparent 54%),linear-gradient(35deg,transparent 47%,#a5471680 49%,transparent 53%),var(--leaf);clip-path:polygon(50% 0,59% 24%,73% 14%,72% 36%,94% 28%,85% 50%,100% 54%,71% 69%,59% 71%,55% 86%,56% 100%,47% 100%,48% 84%,41% 71%,29% 69%,0 54%,15% 50%,6% 28%,28% 36%,27% 14%,41% 24%);animation:rkLeafFlutter 3.7s ease-in-out infinite;animation-delay:var(--delay);transform-origin:50% 65%;box-shadow:none}
body[data-rk-particles="leaves"] .fireflies-v15 span:nth-child(3n)::before{--leaf:#c94c27;background:linear-gradient(90deg,transparent 46%,#7b280e 48%,#efab55 52%,transparent 54%),var(--leaf);animation-duration:4.5s}
body[data-rk-particles="leaves"] .fireflies-v15 span:nth-child(3n+2)::before{--leaf:#e8b53b;animation-duration:3.1s;width:21px;height:26px}
@keyframes rkLeafFall{0%{transform:translate3d(0,-10px,0);opacity:0}8%{opacity:.88}88%{opacity:.8}100%{transform:translate3d(var(--dx),57cqw,0);opacity:0}}
@keyframes rkLeafFlutter{0%,100%{transform:translateX(-9px) rotate(-28deg) rotateY(-22deg)}50%{transform:translateX(12px) rotate(38deg) rotateY(32deg)}}
@media(max-width:640px){body[data-rk-particles="leaves"] .fireflies-v15 span::before{width:17px;height:21px}body[data-rk-particles="leaves"] .fireflies-v15 span:nth-child(3n+2)::before{width:16px;height:20px}}
@media(prefers-reduced-motion:reduce){body[data-rk-particles="leaves"] .fireflies-v15 span{top:var(--y);animation:none!important;opacity:.5}body[data-rk-particles="leaves"] .fireflies-v15 span::before{animation:none!important;transform:rotate(20deg)}}
