/* Boathouse Hero Atlas · Public pages only · 2026-10-26
   Each department feels different; content remains HTML, image art remains decorative. */
:root{--bh-gold:#e8b56e;--bh-dusk:#0d222b}
.page-hero,.article-top,.crew-hero,.warren-episode-hero{isolation:isolate}
.page-hero{border-bottom:3px solid #aa7542}
.page-hero:before{content:"";position:absolute;z-index:1;pointer-events:none;inset:15px;border:1px solid #f0c78d30;border-top-color:#f0c78d4a;border-bottom-color:transparent}
.page-hero .page-hero-inner{z-index:3}
.page-hero .eyebrow,.crew-hero .eyebrow,.article-top .eyebrow{color:#ecca91;text-shadow:0 1px 10px #061318}
.page-hero h1 em{color:#f1c98d}
.page-hero .small-note{display:inline-block;border-top:1px solid #dab17f8c;padding-top:13px;color:#f0d7ae;max-width:630px}
.page-hero--expedition .page-hero-media,.page-hero--library .page-hero-media,.page-hero--observatory .page-hero-media,.page-hero--signals .page-hero-media{background-repeat:no-repeat;background-size:auto 114%;background-position:89% 50%}
.page-hero--expedition .page-hero-media{background-image:url("/assets/hero-expedition.svg"),radial-gradient(ellipse at 82% 54%,#516152,#0c222b 68%)}
.page-hero--library .page-hero-media{background-image:url("/assets/hero-archives.svg"),radial-gradient(ellipse at 75% 50%,#5a5641,#0c222b 73%)}
.page-hero--observatory .page-hero-media{background-image:url("/assets/hero-observatory.svg"),radial-gradient(ellipse at 80% 45%,#2f5560,#0c222b 70%)}
.page-hero--signals .page-hero-media{background-image:url("/assets/hero-signal-room.svg"),radial-gradient(ellipse at 80% 50%,#4e5446,#0c222b 73%)}
.page-hero--expedition .scene-drawing,.page-hero--library .scene-drawing,.page-hero--observatory .scene-drawing,.page-hero--signals .scene-drawing{display:none}
.page-hero--expedition:after,.page-hero--library:after,.page-hero--observatory:after,.page-hero--signals:after{background:linear-gradient(90deg,#0b1c25fb 0%,#0b1c25eb 32%,#0b1c257d 56%,#0b1c250b 100%)}
.page-hero--workshop:after,.page-hero--casefile:after{background:linear-gradient(90deg,#07161bf5,#07161bd1 42%,#07161b26 100%)}
.page-hero--human:after{background:linear-gradient(90deg,#07161bf6,#07161bda 44%,#07161b22 100%)}
.article-top{position:relative;overflow:hidden;border-bottom:4px solid #c29561;background:radial-gradient(circle at 84% 39%,#3c554f 0%,transparent 44%),linear-gradient(130deg,#11242c,#1e3539)}
.article-top:before{content:"";pointer-events:none;position:absolute;inset:0;background-image:linear-gradient(#f1d9ac0b 1px,transparent 1px),linear-gradient(90deg,#f1d9ac0b 1px,transparent 1px);background-size:39px 39px;mask-image:linear-gradient(90deg,transparent 35%,#000 100%)}
.article-top:after{content:"";position:absolute;right:-60px;top:100px;width:380px;height:380px;opacity:.3;border:3px double #e6bb80;border-radius:50%;box-shadow:0 0 0 25px #dfbf7a0f,0 0 0 65px #dfbf7a0b;pointer-events:none}
.article-top>.shell{position:relative;z-index:2}
.article-top h1{position:relative;max-width:900px;text-wrap:balance}
.article-top .article-dek{max-width:710px}
.article-top .article-meta{border-top:1px solid #ddae754f;display:inline-block;padding-top:13px}
.bh-case-stamp{display:inline-block;margin:0 0 17px;padding:6px 10px;border:1px solid #e6b56e88;color:#efc892;font:800 .63rem/1.5 var(--sans,sans-serif);letter-spacing:.18em;text-transform:uppercase;background:#081d24ad}
body[data-bh-theme="measurement"] .article-top{background:radial-gradient(circle at 82% 38%,#4c5142,transparent 40%),linear-gradient(125deg,#11242c,#28342e)}
body[data-bh-theme="field-note"] .article-top{background:radial-gradient(circle at 83% 30%,#3b6268,transparent 46%),linear-gradient(125deg,#11242c,#1d333b)}
body[data-bh-theme="archive"] .article-top{background:radial-gradient(circle at 80% 40%,#6b5440,transparent 46%),linear-gradient(125deg,#11242c,#293833)}
.crew-hero{border-bottom:4px solid var(--crew-accent,#e8b56e);background:radial-gradient(circle at 85% 36%,color-mix(in srgb,var(--crew-accent,#e8b56e) 30%,transparent),transparent 44%),linear-gradient(132deg,#0d1e28,#223c3e)}
.crew-hero:before{content:"";position:absolute;right:5%;top:10%;width:430px;height:430px;border:1px solid color-mix(in srgb,var(--crew-accent,#e8b56e) 44%,transparent);border-radius:50%;opacity:.44;box-shadow:0 0 0 37px #ffffff07,0 0 0 75px #e8b56e08;pointer-events:none}
.crew-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(90deg,transparent,transparent 54px,#c7cfba0b 55px,#c7cfba0b 56px);mask-image:linear-gradient(90deg,transparent 48%,#000)}
.crew-hero>.shell{z-index:2}
.crew-hero .crew-seal{filter:drop-shadow(0 15px 32px #0007)}
.bh-crew-signature{margin:19px 0 0;display:inline-flex;gap:10px;align-items:center;border-left:3px solid var(--crew-accent,#e8b56e);padding:8px 0 8px 15px;color:#e6d6b8;font:700 .69rem/1.5 var(--sans,sans-serif);letter-spacing:.14em;text-transform:uppercase}
.warren-episode-hero{position:relative;overflow:hidden;border-bottom:4px solid #d2a36d;background:radial-gradient(circle at 82% 25%,#5a513c 0%,transparent 42%),linear-gradient(130deg,#122830,#273632)}
.warren-episode-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 36px,#f2dbb00b 37px 38px),radial-gradient(circle at 84% 52%,transparent 0 130px,#e8b56e16 131px 133px,transparent 134px);opacity:.8}
.warren-episode-hero .shell{position:relative}
.warren-episode-hero h1{text-wrap:balance}
.warren-episode-emoji{width:180px;height:180px;flex:0 0 180px;display:grid;place-items:center;border:2px solid #e8b56e8c;border-radius:50%;background:#121e20ac;font-size:5.6rem;box-shadow:0 0 0 14px #e8b56e0f,0 18px 35px #0005}
.rabbit-case-hero .rabbit-case-scene{position:relative}
.rabbit-page .crew-hero{min-height:570px;overflow:visible;border-bottom:0;background:radial-gradient(ellipse at 81% 46%,#74603d66,transparent 42%),linear-gradient(125deg,#091a24 0%,#233b3d 52%,#0c1c25 100%)}
.rabbit-page .crew-hero{background-image:url("/assets/hero-rabbit-warren.svg"),radial-gradient(ellipse at 81% 46%,#74603d66,transparent 42%),linear-gradient(125deg,#091a24 0%,#233b3d 52%,#0c1c25 100%);background-position:right center,center,center;background-repeat:no-repeat;background-size:auto 104%,cover,cover}
.rabbit-page .crew-hero:before{width:470px;height:470px;right:5%;top:10%;opacity:.66;border-style:dashed;border-color:#edc180a3;box-shadow:0 0 0 21px #b58c510d,0 0 0 60px #e8b56e08}
.rabbit-page .crew-hero:after{background:radial-gradient(circle at 70% 50%,#e9aa591c 0%,transparent 34%),repeating-linear-gradient(0deg,transparent 0 48px,#f1c47f0c 49px 50px);mask-image:linear-gradient(90deg,transparent 35%,#000)}
.rabbit-page .crew-hero>.shell{grid-template-columns:minmax(0,1fr) minmax(280px,350px);gap:40px;align-items:center;padding-bottom:82px}
.rabbit-page .crew-hero h1{max-width:780px;text-wrap:balance;line-height:1.06}
.rabbit-page .crew-hero .crew-role{color:#f3ca88}
.rabbit-page .crew-seal--rabbit{height:335px;width:335px}
.rabbit-page .rabbit-hero-emblem{filter:drop-shadow(0 20px 29px #0009) drop-shadow(0 0 25px #e9b56e49)}
.rabbit-page .rabbit-jump{margin-top:27px}
.rabbit-page .rabbit-hero-ticket{display:flex;flex-wrap:wrap;gap:9px 16px;align-items:center;margin-top:26px;max-width:580px;padding:12px 17px;border:1px solid #e8b56e88;background:#0b1f28d9;color:#f1dfc0;box-shadow:0 10px 32px #0003}
.rabbit-page .rabbit-hero-ticket strong{color:#ffda95;font:800 .68rem/1.5 var(--sans,sans-serif);letter-spacing:.13em}
.rabbit-page .rabbit-hero-ticket span{font:.77rem/1.5 var(--sans,sans-serif);letter-spacing:.05em}
.rabbit-page .rabbit-mug-hint{box-shadow:0 8px 20px #0009}
.home-hero{border-bottom:4px solid #a98255}
.hq-hero,.wonder-hero{border-bottom:4px solid #ba9160}
@media(max-width:1180px){.page-hero--expedition .page-hero-media,.page-hero--library .page-hero-media,.page-hero--observatory .page-hero-media,.page-hero--signals .page-hero-media{background-size:auto 103%;background-position:72% 50%}}
@media(max-width:760px){.rabbit-page .crew-hero{background-size:auto 72%,cover,cover;background-position:69% 75%,center,center}.page-hero:before{inset:10px}.page-hero--expedition .page-hero-media,.page-hero--library .page-hero-media,.page-hero--observatory .page-hero-media,.page-hero--signals .page-hero-media{background-position:62% center;background-size:auto 95%}.page-hero--expedition:after,.page-hero--library:after,.page-hero--observatory:after,.page-hero--signals:after{background:linear-gradient(90deg,#0b1c25f9,#0b1c25e3 48%,#0b1c25a3)}.article-top:after{width:220px;height:220px;right:-110px;opacity:.17}.article-top h1{text-wrap:wrap}.crew-hero:before{width:215px;height:215px;right:-90px;top:160px}.warren-episode-emoji{width:96px;height:96px;flex-basis:96px;font-size:3.4rem}.rabbit-page .crew-hero{min-height:0}.rabbit-page .crew-hero>.shell{display:grid;grid-template-columns:1fr;padding-top:125px;padding-bottom:50px;gap:24px}.rabbit-page .crew-hero h1{max-width:95%}.rabbit-page .crew-seal--rabbit{height:178px;width:178px;justify-self:start;margin:6px 0 0}.rabbit-page .rabbit-hero-ticket{padding:11px 13px}.rabbit-page .crew-hero:before{right:-130px;top:210px;width:340px;height:340px;opacity:.4}}
@media(max-width:480px){.warren-episode-head{align-items:flex-start}.warren-episode-emoji{font-size:2.6rem;width:73px;height:73px;flex-basis:73px}.rabbit-page .crew-hero .lead{max-width:92%}.rabbit-page .rabbit-hero-ticket strong,.rabbit-page .rabbit-hero-ticket span{font-size:.67rem}}
@media(prefers-reduced-motion:reduce){.rabbit-page .rabbit-hero-emblem{transition:none}}
@media print{.page-hero:before,.article-top:before,.article-top:after,.crew-hero:before,.crew-hero:after,.warren-episode-hero:before,.bh-hero-stamp{display:none!important}.bh-case-stamp,.bh-crew-signature,.rabbit-page .rabbit-hero-ticket{background:transparent!important;color:#14232b!important;border-color:#888!important}.page-hero--expedition .page-hero-media,.page-hero--library .page-hero-media,.page-hero--observatory .page-hero-media,.page-hero--signals .page-hero-media{background-image:none!important}}


/* RABBIT HERO REPAIR / 2026-10-26
   Constrain the coffee badge to a square so a tall intrinsic image cannot turn
   into a slanted dark slab; keep the hidden memo accessible and in flow. */
.rabbit-page #main-content > .crew-hero{
  background-image:linear-gradient(90deg,#091a24ed 0%,#091a24a8 45%,#091a2428 100%),url("/assets/hero-rabbit-warren.svg"),radial-gradient(ellipse at 81% 46%,#74603d66,transparent 42%),linear-gradient(125deg,#091a24,#233b3d 52%,#0c1c25);
  background-size:cover,auto 88%,cover,cover;
  background-position:center,93% center,center,center;
  background-repeat:no-repeat;
}
.rabbit-page #main-content > .crew-hero > .shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(245px,320px);
  gap:clamp(25px,4.2vw,72px);
  align-items:center;
  padding-bottom:80px;
}
.rabbit-page #main-content > .crew-hero > .shell > div:first-child{min-width:0;max-width:790px}
.rabbit-page #main-content > .crew-hero h1{
  font-size:clamp(3.35rem,5.8vw,5.8rem);
  line-height:1.055;
  max-width:780px;
  letter-spacing:-.025em;
  text-wrap:balance;
}
.rabbit-page #main-content > .crew-hero .crew-seal--rabbit{
  position:relative;
  display:block;
  width:min(100%,320px);
  height:auto;
  aspect-ratio:1/1;
  min-width:0;
  padding:0;
  margin:0;
  transform:none;
  border:0;
  border-radius:50%;
  background:transparent;
  box-shadow:none;
  opacity:1;
  pointer-events:auto;
  justify-self:center;
  align-self:center;
  filter:none;
}
.rabbit-page .rabbit-mug-secret,
.rabbit-page .rabbit-mug-secret > summary{
  display:block;
  box-sizing:border-box;
  width:100%;
  height:auto;
  aspect-ratio:1/1;
  min-width:0;
  max-width:100%;
}
.rabbit-page .rabbit-mug-secret > summary{position:relative;cursor:pointer}
.rabbit-page .rabbit-mug-secret img.rabbit-hero-emblem{
  display:block;
  box-sizing:border-box;
  width:100%!important;
  height:100%!important;
  max-width:100%;
  aspect-ratio:1/1;
  object-fit:contain;
  object-position:center;
  border-radius:50%;
  transform:none;
  background:#091923;
  filter:drop-shadow(0 15px 27px #0008) drop-shadow(0 0 13px #e6b97534);
}
.rabbit-page .rabbit-mug-secret > summary:hover img.rabbit-hero-emblem,
.rabbit-page .rabbit-mug-secret > summary:focus-visible img.rabbit-hero-emblem{
  transform:scale(1.025);
}
.rabbit-page .rabbit-mug-hint{
  bottom:5px;
  left:50%;
  right:auto;
  transform:translateX(-50%);
  max-width:95%;
  white-space:nowrap;
  z-index:2;
}
.rabbit-page #main-content > .crew-hero .rabbit-hero-ticket{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:5px;
  align-items:start;
  width:min(100%,600px);
  max-width:100%;
  box-sizing:border-box;
  margin:21px 0 0;
  padding:13px 18px;
  border:1px solid #e8b56e79;
  border-left:4px solid #e8b56e;
  background:#071d27e6;
  box-shadow:0 12px 24px #0003;
  color:#f3e6cf;
}
.rabbit-page .rabbit-hero-ticket strong{
  display:block;
  color:#f9cf8d;
  font:800 .7rem/1.55 var(--sans,sans-serif);
  letter-spacing:.12em;
}
.rabbit-page .rabbit-hero-ticket span{
  display:block;
  color:#f1e5d1;
  font:.9rem/1.45 var(--sans,sans-serif);
  letter-spacing:normal;
}
@media(max-width:1000px) and (min-width:761px){
  .rabbit-page #main-content > .crew-hero > .shell{
    grid-template-columns:minmax(0,1fr) minmax(210px,260px);
    gap:22px;
  }
  .rabbit-page #main-content > .crew-hero h1{font-size:clamp(3.1rem,5.5vw,4.8rem)}
}
@media(max-width:760px){
  .rabbit-page #main-content > .crew-hero{
    background-size:cover,auto 58%,cover,cover;
    background-position:center,95% bottom,center,center;
  }
  .rabbit-page #main-content > .crew-hero > .shell{
    grid-template-columns:minmax(0,1fr);
    gap:20px;
    padding-top:123px;
    padding-bottom:48px;
  }
  .rabbit-page #main-content > .crew-hero h1{
    font-size:clamp(2.9rem,9.5vw,4.2rem);
    max-width:100%;
    text-wrap:wrap;
  }
  .rabbit-page #main-content > .crew-hero .crew-seal--rabbit{
    position:relative;
    top:auto;
    right:auto;
    opacity:1;
    width:min(62vw,220px);
    height:auto;
    margin:0 auto 0 0;
    justify-self:start;
  }
  .rabbit-page .rabbit-mug-hint{font-size:.6rem;bottom:0}
  .rabbit-page .rabbit-mug-note{
    left:0;
    right:auto;
    top:calc(100% + 15px);
    max-width:min(320px,85vw);
    box-sizing:border-box;
  }
}
@media(max-width:480px){
  .rabbit-page #main-content > .crew-hero .rabbit-hero-ticket{padding:11px 13px}
  .rabbit-page #main-content > .crew-hero .rabbit-hero-ticket span{font-size:.82rem}
}
@media print{
  .rabbit-page #main-content > .crew-hero{background-image:none!important}
  .rabbit-page #main-content > .crew-hero .rabbit-hero-ticket{background:transparent!important;box-shadow:none!important}
  .rabbit-page #main-content > .crew-hero .crew-seal--rabbit{display:none!important}
}
