/* Black Rabbit accent layer: thin red glowing lines, the eye, the logo. Loads after the page styles. */
:root{
  --glow:rgba(255,59,63,.55); --glow2:rgba(255,59,63,.18);
  --hair:linear-gradient(90deg,transparent,var(--red2) 18%,var(--red2) 82%,transparent);
  --gold:#e8c36b; --gold2:#bd9442;
}

/* section rules: fading red hairlines */
section,footer{border-top:0;position:relative}
section:before,footer:before{content:"";position:absolute;top:0;left:8%;right:8%;height:1px;background:var(--hair);
  box-shadow:0 0 10px var(--glow),0 0 2px var(--red2);opacity:.75;pointer-events:none}

/* kicker dash */
.kick{display:inline-flex;align-items:center;gap:10px}
.kick:before{content:"";width:22px;height:1px;background:var(--red2);box-shadow:0 0 8px var(--glow),0 0 2px var(--red2)}

/* cards: hairline top edge, lights on hover */
.card,.letter,.s{position:relative}
.card:after,.letter:after,.s:after{content:"";position:absolute;left:14px;right:14px;top:0;height:1px;background:var(--hair);
  opacity:.35;box-shadow:0 0 8px var(--glow2);transition:opacity .3s,box-shadow .3s;pointer-events:none}
.card:hover:after,.letter:hover:after,.s:hover:after{opacity:1;box-shadow:0 0 12px var(--glow)}
.letter .L{text-shadow:0 0 14px var(--glow2);transition:text-shadow .3s}
.letter:hover .L{text-shadow:0 0 20px var(--glow)}

/* big numbers and the red words */
.stat b{position:relative;display:inline-block}
.stat b:after{content:"";position:absolute;left:15%;right:15%;bottom:-7px;height:1px;background:var(--hair);box-shadow:0 0 8px var(--glow)}
.price b{text-shadow:0 0 24px var(--glow2)}
.hero h1 em,.trip .big em{text-shadow:0 0 22px var(--glow2)}

/* buttons and dates */
.btn:not(.ghost){transition:background .2s,transform .2s,box-shadow .3s}
.btn:not(.ghost):hover{box-shadow:0 0 18px var(--glow)}
.date:hover{box-shadow:inset 0 -1px 0 var(--red2),0 0 10px var(--glow2)}
.date.on{box-shadow:0 0 16px var(--glow)}

/* instructor: thin corner brackets */
.frame{position:relative;display:block}
.frame:before,.frame:after{content:"";position:absolute;width:34px;height:34px;border:1px solid var(--red2);box-shadow:0 0 10px var(--glow);pointer-events:none}
.frame:before{left:-7px;top:-7px;border-right:0;border-bottom:0}
.frame:after{right:-7px;bottom:-7px;border-left:0;border-top:0}

/* map: home breathes, chosen tiles glow, the route draws itself */
.tiles{position:relative}
.tile.home{animation:homeBreath 3.2s ease-in-out infinite}
.tile.on{box-shadow:0 0 10px var(--glow)}
.tiles svg.route{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.tiles svg.route line{stroke:var(--red2);stroke-width:1;filter:drop-shadow(0 0 3px var(--red2));stroke-dasharray:6 4;animation:dash 1.2s linear infinite}
@keyframes homeBreath{0%,100%{box-shadow:0 0 6px var(--glow2)}50%{box-shadow:0 0 18px var(--glow)}}
@keyframes dash{to{stroke-dashoffset:-10}}

/* nav mark: the rabbit inside his red ring (img/mark.webp). Red glow around the ring, brighter white outline, the eye pulses. */
.brand i{position:relative;filter:brightness(1.28) contrast(1.18);animation:ringGlow 3s ease-in-out infinite}
.brand i:after{content:"";position:absolute;left:56.5%;top:44.5%;width:26%;height:26%;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle,rgba(255,86,90,.95),rgba(255,59,63,.45) 45%,transparent 70%);filter:blur(1.5px);mix-blend-mode:screen;animation:eyePulse 3s ease-in-out infinite}
@keyframes ringGlow{
  0%,100%{box-shadow:0 0 8px 1px rgba(255,59,63,.7),0 0 22px 4px rgba(255,59,63,.3)}
  50%{box-shadow:0 0 14px 3px rgba(255,59,63,.95),0 0 40px 10px rgba(255,59,63,.45)}}
@keyframes eyePulse{0%,100%{opacity:.45}50%{opacity:1}}

/* hero: the rabbit's spiral eye glows faintly, pinned to the artwork by accents.js */
.hero .eye{display:none}
.hero .swirl{position:absolute;left:var(--x,62%);top:var(--y,50%);width:var(--s,120px);height:var(--s,120px);transform:translate(-50%,-50%);
  border-radius:50%;pointer-events:none;mix-blend-mode:screen;filter:blur(6px);
  background:radial-gradient(circle,rgba(255,59,63,.55) 0%,rgba(255,59,63,.2) 38%,transparent 70%);animation:swirl 4s ease-in-out infinite}
@keyframes swirl{0%,100%{opacity:.25}50%{opacity:.7}}

/* footer wordmark */
footer img{filter:drop-shadow(0 0 10px var(--glow2));animation:markBreath 4s ease-in-out infinite}
@keyframes markBreath{0%,100%{filter:drop-shadow(0 0 8px var(--glow))}50%{filter:drop-shadow(0 0 22px rgba(255,59,63,.85))}}

/* Soul Tides nod: one gold accent, their color */
.chip.gold{border-color:var(--gold2);color:var(--gold);text-decoration:none}
.chip.gold:hover{box-shadow:0 0 10px rgba(232,195,107,.35)}
footer a{color:var(--mute)}

@media(prefers-reduced-motion:reduce){
  .brand i,.brand i:after,.hero .swirl,.tile.home,.tiles svg.route line,footer img{animation:none}
}
