:root {
  --museum-paper: #f4f0e9;
  --museum-ink: #191815;
  --museum-orange: #e66a17;
  --museum-teal: #4c9899;
  --museum-rule: rgba(45, 37, 28, .15);
  --museum-content-width: 1200px;
  --museum-content-gutters: clamp(80px, 10vw, 144px);
}

.museum-home-page {
  background: #f4f0e9;
  color: var(--museum-ink);
}
.museum-home-page[data-view="explore"] .museum-explore { display: block !important; }
.museum-home-page[data-view="explore"] .index-view { display: none !important; }
.museum-home-page[data-view="index"] .museum-explore { display: none !important; }
.museum-home-page[data-view="index"] .index-view { display: block !important; }

.museum-header {
  position: absolute;
  inset: clamp(24px, 4vh, 44px) auto auto 50%;
  z-index: 120;
  width: min(var(--museum-content-width), calc(100% - var(--museum-content-gutters)));
  min-height: 54px;
  padding: 0;
  grid-template-columns: minmax(190px, .8fr) minmax(560px, 2fr) auto;
  border: 0;
  background: transparent;
  color: var(--museum-ink);
  backdrop-filter: none;
  transform: translateX(-50%);
}
.museum-brand strong {
  display: block !important;
  color: var(--museum-ink);
  font-family: var(--shore-display);
  font-size: clamp(22px, 1.7vw, 28px);
  font-weight: 560;
  letter-spacing: -.035em;
  text-shadow: 0 1px 18px rgba(255,255,255,.28);
}
.museum-nav {
  display: flex !important;
  justify-content: center;
  gap: clamp(16px, 2.2vw, 36px);
}
.museum-nav a,
.museum-nav button {
  position: relative;
  padding: 8px 0;
  border: 0;
  background: transparent;
  color: rgba(25,24,21,.76);
  font-family: var(--shore-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0;
  text-decoration: none;
  text-transform: none;
  cursor: pointer;
  text-shadow: 0 1px 14px rgba(255,255,255,.26);
}
.museum-nav a:hover,
.museum-nav a:focus-visible,
.museum-nav button:hover,
.museum-nav button:focus-visible { color: var(--museum-ink); outline: none; }
.museum-nav .is-active { color: var(--museum-ink); text-decoration: underline; text-underline-offset: 5px; }
.museum-nav .is-active::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--museum-orange);
  transform: translateX(-50%);
}
.museum-mode-toggle {
  min-width: 92px;
  min-height: 42px;
  padding: 10px 18px;
  border: 1px solid rgba(255,255,255,.68);
  border-radius: 999px;
  background: rgba(255,255,255,.76);
  color: var(--museum-ink);
  font-size: 10px;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(54,39,24,.06);
  backdrop-filter: blur(12px);
  transition: transform 180ms ease, background 180ms ease;
}
.museum-mode-toggle:hover,
.museum-mode-toggle:focus-visible { transform: translateY(-2px); background: white; outline: 2px solid var(--museum-orange); outline-offset: 2px; }

.museum-explore { padding: 0 0 48px; }
.museum-arrival {
  position: relative;
  width: 100%;
  height: max(100svh, 62.55vw);
  min-height: 860px;
  max-height: 1180px;
  margin: 0;
  overflow: hidden;
  border-radius: 0;
  background: #e8ded0;
  box-shadow: none;
  isolation: isolate;
  transition: transform 780ms cubic-bezier(.16,1,.3,1), filter 520ms ease;
}
.museum-arrival__background {
  position: absolute;
  inset: 0;
  z-index: -3;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.museum-arrival__background img,
.museum-pavilion-layer img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
}
.museum-pavilion-layers { isolation: isolate; }
.museum-pavilion-layer {
  transform: none;
  opacity: 0;
  filter: none;
  transition:
    transform var(--motion-md) var(--ease-hover),
    opacity var(--motion-md) var(--ease-exit);
}
.museum-pavilion-layer[data-pavilion-owner="works"] { transform-origin: 23% 64%; }
.museum-pavilion-layer[data-pavilion-owner="experience"] { transform-origin: 36% 65%; }
.museum-pavilion-layer[data-pavilion-owner="thinking"] { transform-origin: 47% 66%; }
.museum-pavilion-layer[data-pavilion-owner="tools"] { transform-origin: 56% 67%; }
.museum-pavilion-layer[data-pavilion-owner="studio"] { transform-origin: 64% 68%; }
.museum-pavilion-layer[data-state="pressed"] { transform: scale(.985); transition-duration: var(--motion-xs); }
.museum-pavilion-layer[data-state="entering"][data-pavilion-part="body"] {
  opacity: 1;
  transform: scale(1.08);
  transition-duration: var(--motion-lg);
  transition-timing-function: var(--ease-enter);
}
.museum-pavilion-layer[data-state="entering"][data-pavilion-part="roof"] {
  opacity: 1;
  transform: translateY(-4px) scale(1.08);
  transition-delay: 180ms;
  transition-duration: var(--motion-lg);
  transition-timing-function: var(--ease-enter);
}
.museum-arrival::before { display: none; }
.museum-arrival::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background: linear-gradient(110deg, rgba(255,249,239,.2) 0 22%, transparent 48%), linear-gradient(180deg, rgba(255,250,242,.08), transparent 24%);
  pointer-events: none;
}
.museum-arrival__copy {
  position: absolute;
  top: clamp(112px, 14vh, 170px);
  left: 50%;
  z-index: 4;
  width: min(var(--museum-content-width), calc(100% - var(--museum-content-gutters)));
  padding: 0;
  border-radius: 0;
  background: transparent;
  backdrop-filter: none;
  -webkit-mask-image: none;
  mask-image: none;
  text-shadow: 0 1px 24px rgba(255,250,242,.2);
  transform: translateX(-50%);
}
.museum-arrival__copy-inner { width: min(460px, 100%); }
.museum-arrival__copy-inner > p:first-child {
  margin: 0 0 9px;
  color: var(--museum-orange);
  font-size: clamp(15px, 1.25vw, 21px);
}
.museum-arrival__copy h1 {
  margin: 0;
  font-family: var(--shore-display);
  font-size: clamp(70px, 7.4vw, 126px);
  font-weight: 520;
  line-height: .88;
  letter-spacing: -.055em;
}
.museum-arrival__lede {
  margin: 20px 0 0;
  font-size: clamp(15px, 1.35vw, 21px);
  line-height: 1.55;
  white-space: nowrap;
}
.museum-arrival__gesture {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin-top: 22px;
  color: var(--museum-orange);
  font-family: var(--shore-display);
  font-size: clamp(22px, 2.15vw, 34px);
  font-style: italic;
  line-height: 1;
  transform: rotate(-2deg);
}
.museum-arrival__gesture-arrow {
  width: clamp(58px, 6vw, 92px);
  height: auto;
  margin: 10px 0 0 8px;
  overflow: visible;
}
.museum-arrival__gesture-arrow path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.museum-pavilion-map { position: absolute; inset: 0; z-index: 6; pointer-events: none; }
.museum-pavilion-map svg { display: block; width: 100%; height: 100%; overflow: visible; shape-rendering: geometricPrecision; }
.museum-pavilion { --pavilion-accent: var(--museum-orange); }
.museum-pavilion__identity,
.museum-pavilion__exhibition,
.museum-pavilion__entrance {
  transform-box: fill-box;
  transform-origin: center;
}
.museum-pavilion__identity { pointer-events: none; }
/* The active unified scene already carries the approved wall-painted identity.
   Keep the SVG identity anatomy available for future clean-wall/4K sources, but
   never stack it over the baked scene labels. */
.museum-pavilion-map[data-identity-source="scene"] .museum-pavilion__identity { display: none; }
.museum-pavilion__identity text {
  fill: var(--museum-ink);
  stroke: var(--wall-mask);
  stroke-linecap: round;
  stroke-linejoin: round;
  paint-order: stroke fill;
  text-rendering: geometricPrecision;
}
.museum-pavilion__number { fill: var(--pavilion-accent) !important; stroke-width: 5px; font-family: var(--shore-display); font-size: 25px; font-weight: 500; }
.museum-pavilion__title { stroke-width: 4px; font-family: var(--shore-display); font-size: 14px; font-weight: 650; letter-spacing: -.02em; }
.museum-pavilion__description { fill: rgba(37,31,24,.72) !important; stroke-width: 3px; font-family: var(--shore-sans); font-size: 6.5px; font-weight: 550; }
.museum-pavilion__identity--small .museum-pavilion__number { font-size: 18px; }
.museum-pavilion__identity--small .museum-pavilion__title { font-size: 9px; }
.museum-pavilion__identity--small .museum-pavilion__description { font-size: 5px; }
.museum-pavilion__exhibition {
  opacity: .94;
  transition: opacity var(--motion-md) var(--ease-hover), transform var(--motion-md) var(--ease-hover);
}
.museum-pavilion__room-back {
  fill: #211a14;
  transition: fill 680ms var(--ease-hover);
}
.museum-pavilion__exhibit {
  opacity: .72;
  transition: opacity 680ms var(--ease-hover);
}
.museum-pavilion__room-ceiling {
  fill: rgba(242,223,194,.16);
  transition: fill 680ms var(--ease-hover);
}
.museum-pavilion__room-wall,
.museum-pavilion__room-floor { transition: fill 680ms var(--ease-hover); }
.museum-pavilion__room-wall--left { fill: rgba(36,28,21,.58); }
.museum-pavilion__room-wall--right { fill: rgba(102,65,35,.38); }
.museum-pavilion__room-floor { fill: rgba(47,34,24,.62); }
.museum-pavilion__sunbeam {
  opacity: 0;
  translate: 7px -7px;
  mix-blend-mode: screen;
  transition: opacity 720ms var(--ease-hover), translate 720ms var(--ease-hover);
  pointer-events: none;
}
.museum-pavilion-target { color: #fffaf1; pointer-events: auto; }
.museum-pavilion-target__hit {
  fill: rgba(255,245,222,0);
  stroke: rgba(231,122,45,0);
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
  pointer-events: all;
  transition: stroke var(--motion-sm) var(--ease-hover);
}
.museum-pavilion__entrance {
  opacity: 0;
  translate: 0 7px;
  pointer-events: none;
  transition: opacity var(--motion-sm) var(--ease-hover) 180ms, translate var(--motion-sm) var(--ease-hover) 180ms;
}
.museum-pavilion__entrance text {
  fill: currentColor;
  font-family: var(--shore-sans);
  font-size: 7.5px;
  font-weight: 700;
  letter-spacing: 1.2px;
}
.museum-pavilion__entrance--compact text { font-size: 6.5px; letter-spacing: .9px; }
.museum-pavilion__threshold {
  stroke: rgba(255,250,241,.76);
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}
.museum-pavilion__entrance-arrow {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.4;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
.museum-pavilion[data-state="hover"] .museum-pavilion__exhibition,
.museum-pavilion[data-state="focus"] .museum-pavilion__exhibition { opacity: 1; }
.museum-pavilion[data-state="hover"] .museum-pavilion__exhibit,
.museum-pavilion[data-state="focus"] .museum-pavilion__exhibit { opacity: .96; }
.museum-pavilion[data-state="hover"] .museum-pavilion__room-back,
.museum-pavilion[data-state="focus"] .museum-pavilion__room-back { fill: #4d3522; }
.museum-pavilion[data-state="hover"] .museum-pavilion__room-ceiling,
.museum-pavilion[data-state="focus"] .museum-pavilion__room-ceiling { fill: rgba(255,240,209,.46); }
.museum-pavilion[data-state="hover"] .museum-pavilion__room-wall--left,
.museum-pavilion[data-state="focus"] .museum-pavilion__room-wall--left { fill: rgba(74,50,31,.36); }
.museum-pavilion[data-state="hover"] .museum-pavilion__room-wall--right,
.museum-pavilion[data-state="focus"] .museum-pavilion__room-wall--right { fill: rgba(255,177,85,.38); }
.museum-pavilion[data-state="hover"] .museum-pavilion__room-floor,
.museum-pavilion[data-state="focus"] .museum-pavilion__room-floor { fill: rgba(185,107,48,.4); }
.museum-pavilion[data-state="hover"] .museum-pavilion__sunbeam,
.museum-pavilion[data-state="focus"] .museum-pavilion__sunbeam { opacity: .96; translate: 0 0; }
.museum-pavilion[data-state="hover"] .museum-pavilion__entrance,
.museum-pavilion[data-state="focus"] .museum-pavilion__entrance { opacity: 1; translate: 0 0; }
.museum-pavilion[data-state="focus"] .museum-pavilion-target__hit { stroke: #e77a2d; }
.museum-pavilion[data-state="pressed"] .museum-pavilion__sunbeam { opacity: 1; }
.museum-pavilion[data-state="entering"] .museum-pavilion__exhibition {
  opacity: 1;
  transform: translateY(-3px) scale(1.015);
  transition-duration: var(--motion-lg);
  transition-timing-function: var(--ease-enter);
}
.museum-pavilion[data-state="entering"] .museum-pavilion__entrance { opacity: 0; transition-delay: 0ms; }
.museum-pavilion-target:focus { outline: none; }
@media (hover: none), (pointer: coarse) {
  .museum-pavilion__entrance { opacity: 1; translate: 0 0; }
  .museum-pavilion__sunbeam { opacity: .62; translate: 0 0; }
}


.museum-arrival__footer {
  width: 100%;
  border-top: 1px solid rgba(83,63,40,.12);
  background: rgba(247,242,234,.985);
}
.museum-arrival__footer-inner {
  display: grid;
  grid-template-columns: 76px minmax(200px, 1.35fr) minmax(150px, 1fr) minmax(280px, 1.7fr);
  gap: clamp(18px, 2vw, 34px);
  align-items: center;
  width: min(var(--museum-content-width), calc(100% - var(--museum-content-gutters)));
  min-height: 150px;
  margin: 0 auto;
  padding: 24px 0;
}
.museum-arrival__portrait {
  position: relative;
  width: 68px;
  height: 68px;
  overflow: hidden;
  border-radius: 50%;
  background: #efe6d8;
}
.museum-arrival__portrait picture,
.museum-arrival__portrait img { position: absolute; max-width: none; height: auto; }
.museum-arrival__portrait picture { inset: 0; }
.museum-arrival__portrait img { top: -32px; left: -17px; width: 150px; }
.museum-arrival__identity strong {
  display: block;
  margin-bottom: 8px;
  font-family: var(--shore-display);
  font-size: 18px;
  font-weight: 520;
  letter-spacing: -.025em;
}
.museum-arrival__identity small {
  display: block;
  color: rgba(25,24,21,.68);
  font-size: 10px;
  line-height: 1.65;
}
.museum-arrival__identity small::after {
  content: "";
  display: block;
  width: 28px;
  height: 1px;
  margin-top: 9px;
  background: var(--museum-orange);
}
.museum-arrival__clarity {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  min-height: 66px;
  padding-left: clamp(22px, 2.4vw, 38px);
  border-left: 1px solid var(--museum-rule);
  color: rgba(25,24,21,.72);
  font-size: 10px;
  line-height: 1.45;
  text-decoration: none;
}
.museum-arrival__clarity span,
.museum-arrival__links span { color: var(--museum-orange); }
.museum-arrival__links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 3vw, 48px);
  align-items: center;
}
.museum-arrival__links a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  color: rgba(25,24,21,.74);
  font-size: 10px;
  text-decoration: none;
}
.museum-arrival__clarity:hover,
.museum-arrival__clarity:focus-visible,
.museum-arrival__links a:hover,
.museum-arrival__links a:focus-visible { color: var(--museum-orange); outline: none; }

.museum-placeholder-toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 220;
  max-width: 300px;
  padding: 13px 16px;
  border: 1px solid var(--museum-rule);
  border-radius: 8px;
  background: rgba(248,244,237,.96);
  color: var(--museum-ink);
  font-size: 11px;
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
  transition: opacity 180ms ease, transform 180ms ease;
}
.museum-placeholder-toast.is-visible { opacity: 1; transform: none; }

body.museum-entering .museum-arrival__background {
  opacity: .22;
  filter: blur(4px);
  transform: scale(1.01);
  transition: opacity var(--motion-lg) var(--ease-enter) 100ms, filter var(--motion-lg) var(--ease-enter) 100ms, transform var(--motion-lg) var(--ease-enter) 100ms;
}
body.museum-entering .museum-arrival__copy,
body.museum-entering .museum-header,
body.museum-entering .museum-arrival__footer { opacity: 0; transition: opacity var(--motion-md) var(--ease-exit) 180ms; }
body.museum-entering::after,
body.museum-leaving::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 500;
  background: #fbf9f5;
  opacity: 0;
  pointer-events: none;
}
body.museum-entering::after { animation: museumWhiteFadeIn var(--motion-xl) var(--ease-enter) forwards; }
body.museum-leaving::after { animation: museumWhiteFadeIn var(--motion-lg) var(--ease-exit) forwards; }
body.museum-arriving-works::before,
body.museum-arriving-shore::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 500;
  background: #fbf9f5;
  pointer-events: none;
  animation: museumWhiteFadeOut var(--motion-lg) var(--ease-enter) forwards;
}
body.museum-arriving-works .museum-pavilion-hero__copy > *,
body.museum-arriving-works .museum-gallery__head {
  opacity: 0;
  transform: translateY(12px);
  animation: museumTextReveal var(--motion-md) var(--ease-enter) forwards;
}
body.museum-arriving-works .museum-pavilion-hero__copy > *:nth-child(2) { animation-delay: 80ms; }
body.museum-arriving-works .museum-pavilion-hero__copy > *:nth-child(3) { animation-delay: 120ms; }
body.museum-arriving-works .museum-pavilion-hero__copy > *:nth-child(4) { animation-delay: 160ms; }
body.museum-arriving-works .museum-gallery__head { animation-delay: 220ms; }
body.museum-arriving-works .museum-pavilion-hero__art img {
  animation: museumImageReveal var(--motion-lg) var(--ease-enter) forwards;
}
body.museum-arriving-works .museum-gallery .works-card {
  opacity: 0;
  transform: translateY(12px);
  animation: museumTextReveal var(--motion-md) var(--ease-enter) forwards;
}
body.museum-arriving-works .museum-gallery .works-card:nth-child(1) { animation-delay: 300ms; }
body.museum-arriving-works .museum-gallery .works-card:nth-child(2) { animation-delay: 380ms; }
body.museum-arriving-works .museum-gallery .works-card:nth-child(3) { animation-delay: 460ms; }
body.museum-arriving-shore .museum-arrival__background { animation: museumEnvironmentReturn var(--motion-xl) var(--ease-enter) both; }
body.museum-arriving-shore .museum-header,
body.museum-arriving-shore .museum-arrival__copy,
body.museum-arriving-shore .museum-arrival__footer { animation: museumTextReveal var(--motion-md) var(--ease-enter) 180ms both; }
@keyframes museumWhiteFadeIn { 0%,42% { opacity: 0; } 100% { opacity: 1; } }
@keyframes museumWhiteFadeOut { 0%,18% { opacity: 1; } 100% { opacity: 0; visibility: hidden; } }
@keyframes museumTextReveal { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@keyframes museumImageReveal { from { filter: blur(4px); transform: scale(1.04); } to { filter: blur(0); transform: scale(1); } }
@keyframes museumEnvironmentReturn { from { opacity: .25; filter: blur(4px); transform: scale(1.04); } to { opacity: 1; filter: blur(0); transform: scale(1); } }

/* Works Pavilion */
.museum-pavilion-page { min-height: 100vh; background: #f4f0e9; color: var(--museum-ink); }
.museum-pavilion-page .museum-header { position: absolute; }
.museum-pavilion-main { padding: 16px 16px 0; }
.museum-pavilion-shell { width: min(1180px, 100%); margin: 0 auto; overflow: hidden; border-radius: 14px; background: #f6f2eb; box-shadow: 0 28px 80px rgba(74,52,31,.08); }
.museum-pavilion-hero { position: relative; min-height: 470px; overflow: hidden; }
.museum-pavilion-hero__art { position: absolute; inset: 0; overflow: hidden; }
.museum-pavilion-hero__art img { position: absolute; top: -2.14%; left: -103.34%; width: 205.35%; height: auto; max-width: none; }
.museum-pavilion-hero__copy {
  position: relative;
  z-index: 3;
  width: 54%;
  min-height: 470px;
  padding: 118px 42px 44px;
  background: linear-gradient(90deg, rgba(248,244,237,.98) 0 83%, rgba(248,244,237,.84) 92%, transparent);
}
.museum-return { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 36px; color: var(--museum-ink); font-size: 10px; text-decoration: none; }
.museum-return span { color: var(--museum-orange); font-size: 18px; }
.museum-pavilion-number { margin: 0 0 6px; color: var(--museum-teal); font-family: var(--shore-display); font-size: 42px; }
.museum-pavilion-hero h1 { margin: 0; font-family: var(--shore-display); font-size: clamp(56px, 7vw, 94px); font-weight: 520; line-height: .9; letter-spacing: -.055em; }
.museum-pavilion-hero p:last-child { max-width: 430px; margin-top: 22px; color: rgba(25,24,21,.72); font-size: 14px; line-height: 1.65; }
.museum-gallery { padding: 42px; }
.museum-gallery__head { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.museum-gallery__head h2 { margin: 0; font-family: var(--shore-display); font-size: 24px; font-weight: 520; }
.museum-gallery__head span { font-size: 9px; }
.museum-pavilion-page .works-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; padding: 0; }
.museum-pavilion-page .works-card { overflow: hidden; border: 1px solid var(--museum-rule); border-radius: 8px; background: rgba(255,255,255,.22); }
.museum-pavilion-page .works-card__media { aspect-ratio: 1.35; border: 0; border-bottom: 1px solid var(--museum-rule); }
.museum-pavilion-page .works-card__copy { grid-template-columns: 1fr; min-height: 155px; padding: 18px 14px 14px; }
.museum-pavilion-page .works-card__copy > span { display: none; }
.museum-pavilion-page .works-card__copy h2 { font-size: 21px; }
.museum-pavilion-page .works-card__copy p { font-size: 9px; }
.museum-pavilion-footer { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 30px; padding: 30px 42px 38px; background: rgba(233,224,211,.5); }
.museum-pavilion-footer blockquote { max-width: 420px; margin: 0; color: rgba(25,24,21,.74); font-family: var(--shore-display); font-size: 20px; line-height: 1.35; }
.museum-pavilion-footer blockquote::before { content: "“"; display: block; color: rgba(230,106,23,.28); font-size: 52px; line-height: .7; }
.museum-pavilion-footer__figure { position: relative; width: 190px; height: 116px; overflow: hidden; }
.museum-pavilion-footer__figure img { position: absolute; top: -381px; left: -244px; width: 390px; max-width: none; height: auto; mix-blend-mode: multiply; }

@media (max-width: 900px) {
  .museum-header { width: calc(100% - 48px); grid-template-columns: 1fr auto; }
  .museum-nav { display: none !important; }
  .museum-arrival__copy { width: calc(100% - 48px); }
  .museum-arrival__copy-inner { width: min(430px, 100%); }
  .museum-arrival__footer-inner { grid-template-columns: 68px minmax(190px, 1fr) minmax(300px, 1.4fr); width: calc(100% - 48px); }
  .museum-arrival__clarity { display: none; }
  .museum-pavilion-page .works-grid { grid-template-columns: 1fr; }
  .museum-pavilion-hero__copy { width: 68%; }
}

@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .museum-explore { display: none !important; }
  .museum-home-page[data-view="explore"] .index-view { display: block !important; }
  .museum-home-page .museum-header { position: absolute; top: 18px; width: calc(100% - 36px); }
  .museum-brand strong { font-size: 21px; }
  .museum-mode-toggle { min-width: 78px; min-height: 38px; }
  .museum-pavilion-main { padding: 0; }
  .museum-pavilion-shell { border-radius: 0; }
  .museum-pavilion-hero { min-height: 600px; }
  .museum-pavilion-hero__copy { width: 100%; min-height: 360px; padding: 88px 20px 24px; background: linear-gradient(180deg, rgba(248,244,237,.99) 0 74%, rgba(248,244,237,.78) 90%, transparent); }
  .museum-pavilion-hero__art img { top: 190px; left: -134%; width: 260%; }
  .museum-gallery { padding: 42px 18px; }
  .museum-gallery__head { align-items: flex-start; flex-direction: column; }
  .museum-pavilion-footer { grid-template-columns: 1fr; padding: 28px 18px; }
  .museum-pavilion-footer__figure { justify-self: end; }
}

@media (prefers-reduced-motion: reduce) {
  body.museum-entering::after,
  body.museum-leaving::after,
  body.museum-arriving-works::before,
  body.museum-arriving-shore::before,
  body.museum-arriving-works .museum-pavilion-hero__copy > *,
  body.museum-arriving-works .museum-gallery__head,
  body.museum-arriving-works .museum-pavilion-hero__art img,
  body.museum-arriving-works .museum-gallery .works-card,
  body.museum-arriving-shore .museum-arrival__background,
  body.museum-arriving-shore .museum-header,
  body.museum-arriving-shore .museum-arrival__copy,
  body.museum-arriving-shore .museum-arrival__footer { animation-duration: .001ms !important; animation-delay: 0ms !important; }
  body.museum-entering .museum-arrival__background,
  .museum-pavilion-layer,
  .museum-pavilion__exhibition,
  .museum-pavilion__exhibit,
  .museum-pavilion__room-back,
  .museum-pavilion__room-ceiling,
  .museum-pavilion__room-wall,
  .museum-pavilion__room-floor,
  .museum-pavilion__sunbeam,
  .museum-pavilion__entrance { transition-duration: .001ms !important; transition-delay: 0ms !important; }
  .museum-pavilion-layer[data-state] { transform: none !important; filter: none !important; opacity: 0 !important; }
}

@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .museum-explore { display: block !important; }
  .museum-home-page[data-view="explore"] .index-view { display: none !important; }
  .museum-arrival { height: 100svh; min-height: 720px; max-height: none; }
  .museum-arrival__copy { top: 108px; width: calc(100% - 36px); }
  .museum-arrival__copy-inner { width: min(310px, 100%); }
  .museum-arrival__copy-inner > p:first-child { font-size: 13px; }
  .museum-arrival__copy h1 { font-size: clamp(52px, 17vw, 72px); }
  .museum-arrival__lede { margin-top: 12px; font-size: 13px; }
  .museum-arrival__gesture { margin-top: 18px; font-size: 20px; }
  .museum-arrival__gesture-arrow { width: 54px; }
  .museum-arrival__footer-inner { grid-template-columns: 56px 1fr; gap: 14px 18px; width: calc(100% - 36px); min-height: 0; padding: 22px 0 26px; }
  .museum-arrival__portrait { width: 54px; height: 54px; }
  .museum-arrival__portrait img { top: -25px; left: -13px; width: 118px; }
  .museum-arrival__identity strong { font-size: 16px; }
  .museum-arrival__links { grid-column: 1 / -1; gap: 20px; padding-top: 18px; border-top: 1px solid var(--museum-rule); }
  .museum-arrival__links a { font-size: 9px; }
}

.museum-pavilion-hero::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  z-index: 2;
  height: 92px;
  background: rgba(244,240,233,.97);
  pointer-events: none;
}
.museum-pavilion-hero__copy {
  background: rgba(248,244,237,.965);
  backdrop-filter: blur(10px);
}
.museum-pavilion-page .works-card__copy { min-height: 205px; }
.museum-pavilion-page .works-card__tags { display: flex; flex-wrap: wrap; gap: 5px; margin: 12px 0 18px; }
.museum-pavilion-page .works-card__tags span { display: inline-flex; padding: 3px 7px; border: 1px solid rgba(52,43,33,.22); border-radius: 999px; color: var(--museum-ink); font-family: var(--shore-mono); font-size: 7px; }
.museum-pavilion-page .works-card__link { display: flex; align-items: center; justify-content: space-between; margin-top: auto; color: var(--museum-ink); font-size: 9px; }
.museum-pavilion-page .works-card__link b { color: var(--museum-orange); font-size: 16px; font-weight: 400; }

.museum-pavilion-hero::before { background: #f4f0e9; }

/* Quick Portfolio deliberately removes the spatial Hero. */
.museum-home-page[data-view="index"] .reference-hero { display: none; }
.museum-home-page[data-view="index"] .index-view { padding-top: 118px; }
.museum-home-page[data-view="index"] .reference-shell { width: min(1160px, calc(100% - 48px)); }

@media (max-width: 680px) {
  .museum-home-page[data-view="index"] .index-view { padding-top: 88px; }
  .museum-home-page[data-view="index"] .reference-shell { width: calc(100% - 28px); }
}

.museum-quick-only { display: none !important; }
.museum-home-page[data-view="index"] .museum-nav .museum-world-only { display: none !important; }
.museum-home-page[data-view="index"] .museum-nav .museum-quick-only { display: inline-flex !important; }
.museum-home-page[data-view="index"] .museum-nav { justify-content: flex-end; gap: 34px; }

.museum-pavilion-hero h1 { font-size: clamp(52px, 6vw, 82px); }

/* --------------------------------------------------------------------------
   Atmosphere-first Shore arrival
   The first screen is a place before it is a portfolio: sky, tide, character,
   and only then the paths into Catherine's work.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] {
  overflow-x: hidden;
  background: #b9dbe5;
  --shore-overview-control-width: 92px;
  --shore-header-control-gap: 36px;
}
.museum-home-page[data-view="explore"] .shore-header {
  color: #183538;
}
.museum-home-page[data-view="explore"] .museum-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  min-height: 72px;
  padding: 22px clamp(20px, 4vw, 64px);
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 24px;
  border: 0;
  transform: none;
}
.museum-home-page[data-view="explore"] .museum-brand {
  display: inline-flex;
  align-items: baseline;
  gap: 10px;
  color: #17383a;
}
.museum-home-page[data-view="explore"] .museum-brand::before {
  content: "○";
  color: #ef7e57;
  font-family: var(--shore-display);
  font-size: 23px;
  line-height: 1;
}
.museum-home-page[data-view="explore"] .museum-brand strong {
  color: inherit;
  font-family: var(--shore-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
  text-shadow: none;
}
.museum-home-page[data-view="explore"] .museum-nav {
  justify-content: flex-end;
  gap: 20px;
}
.museum-home-page[data-view="explore"] .museum-nav > :not(.museum-world-only) {
  display: none !important;
}
.museum-home-page[data-view="explore"] .museum-nav .museum-world-only {
  color: rgba(24,53,56,.74);
  font-family: var(--shore-mono);
  font-size: 9px;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.museum-home-page[data-view="explore"] .museum-nav .museum-world-only:hover,
.museum-home-page[data-view="explore"] .museum-nav .museum-world-only:focus-visible {
  color: #ef7e57;
}
.museum-home-page[data-view="explore"] .museum-mode-toggle {
  min-width: auto;
  min-height: 34px;
  padding: 7px 12px;
  border: 1px solid rgba(24,53,56,.28);
  border-radius: 999px;
  background: rgba(245,251,248,.38);
  color: #183538;
  font-family: var(--shore-mono);
  font-size: 9px;
  letter-spacing: 0;
  text-transform: uppercase;
  box-shadow: none;
  backdrop-filter: blur(8px);
}
.museum-home-page[data-view="explore"] .museum-mode-toggle:hover,
.museum-home-page[data-view="explore"] .museum-mode-toggle:focus-visible {
  background: rgba(255,255,255,.68);
  transform: none;
}
.museum-home-page[data-view="explore"] .museum-mode-toggle:hover {
  outline: none;
}
.museum-home-page[data-view="explore"] .museum-mode-toggle:focus-visible {
  outline: 2px solid rgba(239,126,87,.74);
  outline-offset: 3px;
}

.museum-home-page[data-view="explore"] .museum-explore {
  min-height: 100svh;
  padding: 0;
}
.museum-home-page[data-view="explore"] .shore-arrival {
  position: relative;
  min-height: 780px;
  height: 100svh;
  max-height: 1040px;
  overflow: hidden;
  isolation: isolate;
  background: #bddfe6;
  color: #183538;
}
.shore-arrival__sky,
.shore-arrival__horizon,
.shore-arrival__sand {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.shore-arrival__sky {
  z-index: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 76% 23%, rgba(255,255,249,.74) 0 3%, rgba(255,246,204,.35) 10%, transparent 26%),
    linear-gradient(180deg, #b7ddea 0%, #d8edf0 52%, #eff1dc 100%);
}
.shore-sun {
  position: absolute;
  top: 13%;
  right: 12%;
  width: clamp(84px, 12vw, 164px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: rgba(255,248,208,.88);
  box-shadow: 0 0 0 18px rgba(255,236,180,.11), 0 0 80px rgba(255,238,179,.56);
}
.shore-cloud {
  position: absolute;
  display: block;
  width: 190px;
  height: 34px;
  border-radius: 50%;
  background: rgba(255,255,252,.55);
  filter: blur(1px);
  opacity: .8;
  animation: shoreCloudDrift 38s ease-in-out infinite alternate;
}
.shore-cloud::before,
.shore-cloud::after {
  content: "";
  position: absolute;
  bottom: 4px;
  border-radius: 50%;
  background: inherit;
}
.shore-cloud::before { left: 24px; width: 70px; height: 46px; }
.shore-cloud::after { right: 28px; width: 82px; height: 54px; }
.shore-cloud--left { top: 21%; left: -4%; transform: scale(.72); }
.shore-cloud--middle { top: 35%; left: 42%; transform: scale(.58); animation-delay: -12s; }
.shore-cloud--right { top: 12%; right: 3%; transform: scale(.46); animation-delay: -24s; }
.shore-seagulls {
  position: absolute;
  top: 17%;
  right: 27%;
  width: clamp(190px, 28vw, 360px);
  height: auto;
  fill: none;
  stroke: rgba(45,83,88,.54);
  stroke-width: 2;
  stroke-linecap: round;
  animation: shoreBirdDrift 18s ease-in-out infinite alternate;
}
.shore-arrival__horizon { z-index: 1; top: 38%; bottom: 28%; }
.shore-horizon-haze {
  position: absolute;
  inset: 0 0 42%;
  background: linear-gradient(180deg, rgba(255,249,227,.26), rgba(255,255,255,0));
}
.shore-ocean {
  position: absolute;
  inset: 14% -4% 0;
  background:
    repeating-linear-gradient(174deg, transparent 0 22px, rgba(255,255,255,.32) 23px 25px, transparent 26px 52px),
    linear-gradient(180deg, rgba(92,167,184,.74) 0%, rgba(85,166,184,.88) 48%, #6daec1 100%);
  clip-path: polygon(0 16%, 18% 8%, 34% 16%, 50% 8%, 68% 15%, 84% 7%, 100% 14%, 100% 100%, 0 100%);
}
.shore-wave {
  position: absolute;
  left: -4%;
  right: -4%;
  height: 54px;
  border-top: 2px solid rgba(255,255,255,.5);
  border-radius: 50%;
  transform: rotate(-1deg);
  opacity: .72;
  animation: shoreWaveBreath 8s ease-in-out infinite alternate;
}
.shore-wave--one { bottom: 20%; }
.shore-wave--two { bottom: 38%; left: 24%; right: -14%; animation-delay: -2s; opacity: .48; }
.shore-wave--three { bottom: 56%; left: -16%; right: 36%; animation-delay: -4s; opacity: .34; }
.shore-boat {
  position: absolute;
  left: 19%;
  top: 30%;
  width: 54px;
  height: 42px;
  animation: shoreBoatFloat 8s ease-in-out infinite;
}
.shore-boat__hull {
  position: absolute;
  left: 0;
  bottom: 4px;
  width: 54px;
  height: 12px;
  border-radius: 0 0 28px 28px;
  background: #e28d63;
  transform: skewX(-15deg);
}
.shore-boat__mast { position: absolute; left: 25px; top: 0; width: 1px; height: 30px; background: #315c64; }
.shore-boat__sail {
  position: absolute;
  left: 27px;
  top: 2px;
  width: 0;
  height: 0;
  border-top: 18px solid transparent;
  border-bottom: 2px solid transparent;
  border-right: 20px solid rgba(255,250,229,.9);
}
.shore-lighthouse {
  position: absolute;
  right: 17%;
  top: 18%;
  width: 31px;
  height: 100px;
  opacity: .83;
}
.shore-lighthouse__tower {
  position: absolute;
  left: 8px;
  bottom: 12px;
  width: 16px;
  height: 66px;
  background: #f5efe0;
  clip-path: polygon(24% 0, 76% 0, 100% 100%, 0 100%);
}
.shore-lighthouse__base { position: absolute; left: 2px; bottom: 0; width: 26px; height: 13px; border-radius: 50% 50% 4px 4px; background: #e7895e; }
.shore-lighthouse__lamp { position: absolute; left: 7px; top: 0; width: 17px; height: 18px; border: 2px solid #315c64; border-radius: 50% 50% 3px 3px; background: #f8d476; box-shadow: 0 0 22px rgba(248,212,118,.7); }

.shore-arrival__sand {
  z-index: 3;
  top: 57%;
  background:
    radial-gradient(circle at 35% 30%, rgba(255,252,222,.6) 0 1%, transparent 1.6%),
    radial-gradient(circle at 70% 18%, rgba(210,177,118,.24) 0 1%, transparent 1.8%),
    linear-gradient(170deg, rgba(244,239,205,.98), #e9d5ac 74%, #dcc093 100%);
  clip-path: polygon(0 7%, 15% 3%, 30% 10%, 46% 3%, 62% 10%, 78% 5%, 100% 12%, 100% 100%, 0 100%);
}
.shore-dune { position: absolute; border-radius: 50%; filter: blur(1px); }
.shore-dune--back { left: -8%; right: 38%; top: 2%; height: 25%; background: rgba(250,242,202,.62); }
.shore-dune--front { left: 34%; right: -12%; top: 16%; height: 24%; background: rgba(215,188,137,.2); }
.shore-grass { position: absolute; width: 72px; height: 70px; }
.shore-grass::before,
.shore-grass::after { content: ""; position: absolute; bottom: 0; width: 2px; height: 70px; border-radius: 50%; background: #7ca17f; transform-origin: bottom; }
.shore-grass::before { left: 32px; transform: rotate(-22deg); }
.shore-grass::after { left: 43px; height: 55px; transform: rotate(18deg); }
.shore-grass--one { left: 3%; top: 16%; transform: scale(.85); }
.shore-grass--two { left: 72%; top: 10%; transform: scale(.58); }
.shore-grass--three { right: 4%; top: 18%; transform: scale(.72); }
.shore-shell,
.shore-bottle,
.shore-camera { position: absolute; display: block; transition: transform 220ms ease, filter 220ms ease; }
.shore-shell::after { content: ""; display: block; width: 19px; height: 12px; border-radius: 70% 30% 55% 45%; background: #f4a179; box-shadow: inset 5px 0 0 rgba(255,245,210,.55); transform: rotate(-18deg); }
.shore-shell--one { left: 54%; top: 33%; transform: scale(.7) rotate(-10deg); }
.shore-shell--two { left: 80%; top: 34%; transform: scale(.48) rotate(15deg); }
.shore-bottle { left: 86%; top: 26%; width: 12px; height: 28px; border-radius: 3px 3px 5px 5px; background: #82a9a0; transform: rotate(14deg); }
.shore-bottle::before { content: ""; position: absolute; left: 3px; top: -7px; width: 6px; height: 9px; border-radius: 2px 2px 0 0; background: #6f8f83; }
.shore-camera { left: 62%; top: 28%; width: 30px; height: 18px; border-radius: 5px; background: #314c50; transform: rotate(-7deg); }
.shore-camera::before { content: ""; position: absolute; left: 9px; top: 4px; width: 11px; height: 11px; border: 2px solid #efbd86; border-radius: 50%; }
.shore-camera::after { content: ""; position: absolute; left: 4px; top: -4px; width: 10px; height: 4px; border-radius: 2px 2px 0 0; background: #314c50; }

.shore-arrival__copy {
  position: absolute;
  top: clamp(110px, 17vh, 168px);
  left: clamp(20px, 7vw, 108px);
  z-index: 8;
  width: min(320px, calc(100% - 40px));
  text-shadow: 0 2px 24px rgba(239,248,239,.32);
}
.shore-arrival__eyebrow { margin: 0 0 10px; color: #e87955; font-family: var(--shore-mono); font-size: 10px; letter-spacing: .11em; text-transform: uppercase; }
.shore-arrival__copy h1 { margin: 0; color: #183538; font-family: var(--shore-display); font-size: clamp(58px, 8.2vw, 118px); font-weight: 500; letter-spacing: -.065em; line-height: .87; }
.shore-arrival__lede { margin: 18px 0 0; max-width: 230px; color: rgba(24,53,56,.76); font-size: 14px; line-height: 1.55; }
.shore-arrival__hint { display: flex; align-items: center; gap: 8px; margin: 22px 0 0; color: rgba(24,53,56,.5); font-family: var(--shore-mono); font-size: 9px; line-height: 1.4; }
.shore-arrival__hint-dot { width: 7px; height: 7px; border: 1px solid currentColor; border-radius: 50%; }

.shore-pavilions {
  position: absolute;
  left: 52%;
  bottom: 31%;
  z-index: 5;
  width: min(77vw, 1080px);
  height: 315px;
  transform: translateX(-43%);
}
.shore-pavilion {
  position: absolute;
  bottom: 0;
  width: 170px;
  height: 228px;
  color: #234045;
  transform-origin: 50% 100%;
  transition: transform 420ms cubic-bezier(.16,1,.3,1), filter 420ms ease;
}
.shore-pavilion--works { left: 0; width: 230px; height: 300px; z-index: 5; }
.shore-pavilion--experience { left: 23%; width: 188px; height: 258px; z-index: 4; }
.shore-pavilion--thinking { left: 44%; width: 164px; height: 228px; z-index: 3; }
.shore-pavilion--tools { left: 62%; width: 145px; height: 208px; z-index: 2; }
.shore-pavilion--studio { left: 79%; width: 132px; height: 189px; z-index: 1; }
.shore-pavilion__roof { position: absolute; top: 0; left: -12px; right: -12px; height: 20px; background: #f5e6c6; border-top: 4px solid rgba(32,72,76,.38); box-shadow: 0 6px 0 rgba(72,118,118,.16); transform: skewX(-6deg); }
.shore-pavilion__roof::after { content: ""; position: absolute; left: 12px; right: 7px; bottom: -7px; height: 7px; background: rgba(214,170,112,.58); transform: skewX(6deg); }
.shore-pavilion__wall { position: absolute; inset: 18px 0 auto; height: 135px; padding: 16px 17px; overflow: hidden; background: linear-gradient(165deg, #f5e9cf 0%, #ead9b5 100%); clip-path: polygon(4% 0, 100% 0, 96% 100%, 0 100%); box-shadow: inset 0 0 0 1px rgba(39,75,72,.16); }
.shore-pavilion__wall::after { content: ""; position: absolute; inset: 0; background: linear-gradient(115deg, transparent 40%, rgba(255,239,185,.88) 64%, transparent 84%); opacity: 0; transform: translateX(-18%); transition: opacity 520ms ease, transform 720ms ease; }
.shore-pavilion__number { position: relative; z-index: 1; display: block; color: var(--pavilion-accent); font-family: var(--shore-display); font-size: 28px; line-height: .9; }
.shore-pavilion__wall h2 { position: relative; z-index: 1; margin: 7px 0 4px; color: #263f40; font-family: var(--shore-display); font-size: clamp(15px, 1.45vw, 22px); font-weight: 600; letter-spacing: -.04em; text-transform: uppercase; }
.shore-pavilion__wall p { position: relative; z-index: 1; margin: 0; color: rgba(39,63,62,.7); font-size: 9px; line-height: 1.35; }
.shore-pavilion__opening { position: absolute; left: 27px; right: 27px; top: 108px; bottom: 0; overflow: hidden; background: #28515a; clip-path: polygon(8% 0, 92% 0, 100% 100%, 0 100%); box-shadow: inset 0 0 0 1px rgba(31,62,64,.26); transition: transform 420ms cubic-bezier(.16,1,.3,1), background 420ms ease; }
.shore-pavilion__opening::before { content: ""; position: absolute; inset: 0; background: linear-gradient(100deg, rgba(20,50,57,.8), transparent 54%, rgba(255,219,151,.08)); }
.shore-pavilion__opening img { display: block; width: 100%; height: 100%; object-fit: cover; opacity: .58; mix-blend-mode: screen; }
.shore-pavilion__shadow { position: absolute; inset: auto 0 0; height: 42%; background: linear-gradient(transparent, rgba(22,50,54,.48)); }
.shore-pavilion__inside-mark { position: absolute; left: 50%; bottom: 18%; z-index: 1; color: rgba(255,246,220,.72); font-family: var(--shore-mono); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; transform: translateX(-50%) rotate(-3deg); white-space: nowrap; }
.shore-pavilion__target { position: absolute; inset: 0; z-index: 3; color: inherit; text-decoration: none; }
.shore-pavilion__threshold { position: absolute; left: 50%; bottom: -9px; display: flex; align-items: center; gap: 8px; color: #fff9eb; font-family: var(--shore-mono); font-size: 8px; letter-spacing: .12em; text-transform: uppercase; opacity: 0; transform: translate(-50%, 8px); transition: opacity 240ms ease, transform 300ms ease; white-space: nowrap; }
.shore-pavilion__threshold::before { content: ""; position: absolute; left: 50%; top: -8px; width: 46px; height: 1px; background: rgba(255,249,235,.72); transform: translateX(-50%); }
.shore-pavilion__threshold span { color: #f5b278; font-size: 13px; }
.shore-pavilion[data-state="hover"],
.shore-pavilion[data-state="focus"] { transform: translateY(-8px); filter: saturate(1.08); }
.shore-pavilion[data-state="hover"] .shore-pavilion__wall::after,
.shore-pavilion[data-state="focus"] .shore-pavilion__wall::after { opacity: 1; transform: translateX(0); }
.shore-pavilion[data-state="hover"] .shore-pavilion__opening,
.shore-pavilion[data-state="focus"] .shore-pavilion__opening { transform: translateY(-3px); background: #315e64; }
.shore-pavilion[data-state="hover"] .shore-pavilion__threshold,
.shore-pavilion[data-state="focus"] .shore-pavilion__threshold { opacity: 1; transform: translate(-50%, 0); }
.shore-pavilion[data-state="pressed"] { transform: translateY(2px) scale(.99); }
.shore-pavilion[data-state="entering"] { transform: translateY(-14px) scale(1.06); filter: saturate(1.16); }
.shore-pavilion[data-state="entering"] .shore-pavilion__threshold { opacity: 0; }
.shore-pavilion:focus-within { outline: 2px solid rgba(239,126,87,.82); outline-offset: 8px; }

.shore-character {
  position: absolute;
  left: clamp(14px, 6vw, 96px);
  bottom: 7%;
  z-index: 7;
  width: clamp(240px, 26vw, 350px);
  height: clamp(320px, 41vw, 470px);
}
.shore-character__cats { position: absolute; right: -22px; bottom: 15px; width: 160px; height: 72px; }
.shore-cat { position: absolute; bottom: 0; width: 54px; height: 35px; border-radius: 52% 48% 36% 42%; background: #8b796b; box-shadow: inset -10px -5px 0 rgba(52,44,42,.14); }
.shore-cat::before { content: ""; position: absolute; left: 8px; top: -17px; width: 18px; height: 22px; border-radius: 55% 25% 0 0; background: inherit; clip-path: polygon(0 100%, 14% 0, 54% 38%, 100% 5%, 100% 100%); }
.shore-cat::after { content: ""; position: absolute; right: -27px; bottom: 17px; width: 34px; height: 11px; border-top: 3px solid currentColor; border-radius: 50%; transform: rotate(-24deg); }
.shore-cat--tabby { left: 0; color: #a4836a; background: #b2896e; transform: scale(.82); }
.shore-cat--gray { left: 68px; color: #7f8b88; background: #778d8d; transform: scale(.62); }
.shore-character__note { position: absolute; left: 22%; bottom: 8%; width: 160px; padding: 11px 13px 12px; border-top: 1px solid rgba(31,67,66,.28); border-bottom: 1px solid rgba(31,67,66,.18); background: rgba(245,238,211,.4); transform: rotate(-3deg); }
.shore-character__note-kicker { display: block; margin-bottom: 3px; color: #e87955; font-family: var(--shore-mono); font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }
.shore-character__note strong { display: block; color: #183538; font-family: var(--shore-display); font-size: 21px; font-weight: 500; letter-spacing: -.04em; }
.shore-character__note > span:last-child { display: block; margin-top: 4px; color: rgba(24,53,56,.64); font-size: 9px; line-height: 1.35; }

.shore-sign { position: absolute; right: clamp(20px, 5vw, 80px); bottom: 7%; z-index: 10; width: 190px; transform: rotate(3deg); transform-origin: 50% 100%; animation: shoreSignSway 7s ease-in-out infinite alternate; }
.shore-sign__post { position: absolute; left: 50%; bottom: 0; width: 7px; height: 110px; background: #8e6b4d; box-shadow: 4px 0 0 rgba(112,81,55,.12); transform: translateX(-50%); }
.shore-sign__board { position: relative; min-height: 140px; padding: 18px 18px 15px; border: 1px solid rgba(86,63,44,.34); background: #cfaa72; color: #3f3328; box-shadow: 4px 6px 0 rgba(109,80,56,.13); }
.shore-sign__board::before { content: ""; position: absolute; inset: 6px; border: 1px dashed rgba(255,243,202,.48); pointer-events: none; }
.shore-sign__eyebrow { position: relative; display: block; color: rgba(63,51,40,.7); font-family: var(--shore-mono); font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }
.shore-sign__board strong { position: relative; display: block; margin-top: 6px; font-family: var(--shore-display); font-size: 20px; font-weight: 500; letter-spacing: -.04em; line-height: 1; }
.shore-sign__links { position: relative; display: flex; flex-wrap: wrap; gap: 7px 12px; margin-top: 17px; }
.shore-sign__links a { color: #4d3928; font-family: var(--shore-mono); font-size: 9px; text-decoration: none; }
.shore-sign__links a::after { content: "↗"; margin-left: 4px; color: #e87955; }
.shore-sign__links a:hover,
.shore-sign__links a:focus-visible { color: #f8f3dc; outline: none; }
.shore-sign:focus-within { animation-play-state: paused; }
.shore-arrival__footer { position: absolute; left: clamp(20px, 4vw, 64px); right: clamp(20px, 4vw, 64px); bottom: 22px; z-index: 9; display: flex; justify-content: space-between; color: rgba(24,53,56,.52); font-family: var(--shore-mono); font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }

.museum-home-page[data-view="explore"] .museum-placeholder-toast { right: 26px; bottom: 28px; border: 1px solid rgba(34,71,72,.22); border-radius: 0; background: rgba(250,246,228,.96); color: #234045; box-shadow: 5px 7px 0 rgba(77,105,93,.12); }

@keyframes shoreCloudDrift { from { translate: -16px 0; } to { translate: 22px 4px; } }
@keyframes shoreBirdDrift { from { translate: -8px 0; } to { translate: 20px 8px; } }
@keyframes shoreWaveBreath { from { transform: translateX(-1%) rotate(-1deg); } to { transform: translateX(2%) rotate(1deg); } }
@keyframes shoreBoatFloat { 0%,100% { translate: 0 0; rotate: -2deg; } 50% { translate: 12px -4px; rotate: 2deg; } }
@keyframes shoreSignSway { from { rotate: 2.5deg; } to { rotate: 4.3deg; } }

@media (max-width: 900px) {
  .museum-home-page[data-view="explore"] .museum-header { grid-template-columns: 1fr auto; }
  .museum-home-page[data-view="explore"] .museum-nav { display: none !important; }
  .shore-arrival__copy { top: 110px; }
  .shore-pavilions { left: 56%; width: 760px; transform: translateX(-45%) scale(.82); transform-origin: 50% 100%; }
  .shore-character { left: 10px; width: 260px; height: 350px; bottom: 7%; }
  .shore-sign { right: 22px; bottom: 9%; transform: rotate(3deg) scale(.86); transform-origin: 100% 100%; }
}

@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .museum-header { min-height: 62px; padding: 17px 18px; }
  .museum-home-page[data-view="explore"] .museum-brand strong { font-size: 11px; }
  .museum-home-page[data-view="explore"] .museum-brand::before { font-size: 19px; }
  .museum-home-page[data-view="explore"] .shore-arrival { min-height: 720px; height: 100svh; }
  .shore-arrival__sky { background: linear-gradient(180deg, #b7ddea 0%, #ddf0ef 54%, #eff0d7 100%); }
  .shore-sun { top: 12%; right: -3%; width: 106px; }
  .shore-seagulls { top: 16%; right: 8%; width: 210px; }
  .shore-arrival__copy { top: 90px; left: 18px; width: 210px; }
  .shore-arrival__copy h1 { font-size: clamp(54px, 17vw, 74px); }
  .shore-arrival__lede { margin-top: 14px; font-size: 12px; }
  .shore-arrival__hint { margin-top: 15px; font-size: 8px; }
  .shore-arrival__horizon { top: 39%; bottom: 34%; }
  .shore-boat { left: 15%; top: 23%; }
  .shore-lighthouse { right: 12%; top: 22%; transform: scale(.78); }
  .shore-arrival__sand { top: 57%; clip-path: polygon(0 5%, 22% 3%, 41% 9%, 63% 3%, 100% 12%, 100% 100%, 0 100%); }
  .shore-pavilions { left: 51%; bottom: 29%; width: 690px; height: 254px; transform: translateX(-41%) scale(.62); }
  .shore-character { left: -10px; bottom: 8%; width: 210px; height: 344px; }
  .shore-character__note { left: 15%; bottom: 8%; width: 132px; padding: 8px 10px; }
  .shore-character__note strong { font-size: 16px; }
  .shore-character__note > span:last-child { font-size: 8px; }
  .shore-character__cats { right: -42px; bottom: 10px; transform: scale(.76); transform-origin: right bottom; }
  .shore-sign { right: 10px; bottom: 9%; width: 152px; transform: rotate(3deg) scale(.72); transform-origin: 100% 100%; }
  .shore-sign__board { min-height: 126px; padding: 14px 14px 12px; }
  .shore-sign__board strong { font-size: 17px; }
  .shore-sign__links { gap: 5px 9px; margin-top: 12px; }
  .shore-sign__links a { font-size: 8px; }
  .shore-arrival__footer { bottom: 14px; font-size: 7px; }
  .shore-arrival__footer span:last-child { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .shore-cloud,
  .shore-seagulls,
  .shore-wave,
  .shore-boat,
  .shore-sign { animation: none !important; }
  .shore-pavilion,
  .shore-pavilion__wall::after,
  .shore-pavilion__opening,
  .shore-pavilion__threshold { transition-duration: .001ms !important; }
}

.shore-character__figure {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  filter: saturate(.86) contrast(.97);
  mix-blend-mode: multiply;
}
.shore-character__figure img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  max-width: none;
  height: auto;
}

.shore-object { cursor: pointer; }
.shore-object::before {
  content: attr(aria-label);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 9px);
  width: max-content;
  max-width: 150px;
  padding: 6px 8px;
  border-bottom: 1px solid rgba(31,67,66,.3);
  background: rgba(247,240,210,.86);
  color: rgba(24,53,56,.78);
  font-family: var(--shore-mono);
  font-size: 8px;
  line-height: 1.3;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 4px);
  transition: opacity 180ms ease, transform 220ms ease;
  white-space: normal;
}
.shore-object:hover::before,
.shore-object:focus-visible::before { opacity: 1; transform: translate(-50%, 0); }
.shore-object:focus-visible { outline: 2px solid rgba(239,126,87,.88); outline-offset: 5px; }

.shore-character__figure { mix-blend-mode: normal; }

/* --------------------------------------------------------------------------
   A + C reference direction: watercolor wash + colored-pencil linework.
   The scene stays spatial, but the surfaces should feel made by hand rather
   than assembled from hard UI geometry.
---------------------------------------------------------------------------- */
:root {
  --shore-script: "Caveat", "Bradley Hand", "Segoe Print", cursive;
  --shore-water-ink: #2e648d;
  --shore-water-soft: #8ab6cc;
  --shore-coral-soft: #f28c70;
  --shore-paper-blue: #e6f0ec;
}
.museum-home-page[data-view="explore"] {
  background: #edf1e8;
}
.museum-home-page[data-view="explore"] .shore-arrival {
  min-height: 760px;
  height: 100svh;
  max-height: 1040px;
  background:
    linear-gradient(180deg, rgba(251,249,237,.08), rgba(238,239,224,.3)),
    url("home/shore-watercolor-texture.svg") repeat,
    #eaf1ea;
}
.museum-home-page[data-view="explore"] .shore-arrival::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 12;
  pointer-events: none;
  background: url("home/shore-watercolor-texture.svg") repeat;
  mix-blend-mode: multiply;
  opacity: .42;
}
.museum-home-page[data-view="explore"] .shore-arrival__sky {
  background:
    radial-gradient(ellipse at 19% 24%, rgba(255,255,249,.94) 0 7%, transparent 19%),
    radial-gradient(ellipse at 83% 18%, rgba(255,255,249,.9) 0 5%, transparent 17%),
    linear-gradient(180deg, #b7d8ea 0%, #cfe7ef 43%, #ecf1e9 100%);
}
.museum-home-page[data-view="explore"] .shore-arrival__sky::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("home/shore-watercolor-texture.svg") repeat;
  opacity: .68;
  mix-blend-mode: multiply;
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sun {
  top: 12%;
  right: 15%;
  width: clamp(72px, 9vw, 132px);
  background: rgba(255,247,213,.7);
  box-shadow: 0 0 0 22px rgba(255,238,186,.1), 0 0 70px rgba(255,238,179,.42);
  opacity: .82;
}
.museum-home-page[data-view="explore"] .shore-cloud {
  background: rgba(255,255,250,.8);
  filter: blur(1.2px) url(#shore-watercolor);
  opacity: .84;
}
.museum-home-page[data-view="explore"] .shore-cloud--left { top: 12%; left: 12%; transform: scale(.9); }
.museum-home-page[data-view="explore"] .shore-cloud--middle { top: 31%; left: 48%; transform: scale(.66); }
.museum-home-page[data-view="explore"] .shore-cloud--right { top: 8%; right: 3%; transform: scale(.72); }
.museum-home-page[data-view="explore"] .shore-seagulls {
  top: 16%;
  right: 34%;
  width: clamp(180px, 22vw, 310px);
  stroke: rgba(48,91,113,.6);
  stroke-width: 1.6;
}
.museum-home-page[data-view="explore"] .shore-arrival__horizon { top: 39%; bottom: 29%; }
.museum-home-page[data-view="explore"] .shore-horizon-haze {
  inset: 0 0 43%;
  background: linear-gradient(180deg, rgba(255,255,250,.38), rgba(255,255,255,0));
}
.museum-home-page[data-view="explore"] .shore-ocean {
  inset: 10% -4% 0;
  background:
    url("home/shore-watercolor-texture.svg") repeat,
    linear-gradient(180deg, rgba(77,157,193,.72), rgba(74,154,187,.92));
  clip-path: polygon(0 18%, 15% 10%, 31% 16%, 47% 8%, 63% 15%, 80% 7%, 100% 13%, 100% 100%, 0 100%);
  filter: saturate(.85);
  opacity: .92;
}
.museum-home-page[data-view="explore"] .shore-wave {
  height: 42px;
  border-top: 2px solid rgba(255,255,255,.68);
  border-radius: 55%;
  filter: blur(.2px);
  opacity: .58;
}
.museum-home-page[data-view="explore"] .shore-wave--one { bottom: 23%; }
.museum-home-page[data-view="explore"] .shore-wave--two { bottom: 42%; opacity: .4; }
.museum-home-page[data-view="explore"] .shore-wave--three { bottom: 61%; opacity: .28; }
.museum-home-page[data-view="explore"] .shore-boat { left: 69%; top: 35%; transform: scale(.74); opacity: .8; }
.museum-home-page[data-view="explore"] .shore-lighthouse { right: 6%; top: 22%; transform: scale(.74); opacity: .7; }
.museum-home-page[data-view="explore"] .shore-lighthouse__tower { background: #e9ebe1; }
.museum-home-page[data-view="explore"] .shore-lighthouse__base { background: #d5967d; }
.museum-home-page[data-view="explore"] .shore-arrival__sand {
  top: 59%;
  background:
    url("home/shore-watercolor-texture.svg") repeat,
    linear-gradient(168deg, rgba(251,244,216,.96), #f0dfb9 78%, #e3c899 100%);
  clip-path: polygon(0 5%, 14% 2%, 29% 7%, 44% 3%, 60% 8%, 78% 3%, 100% 10%, 100% 100%, 0 100%);
}
.museum-home-page[data-view="explore"] .shore-dune--back { background: rgba(255,251,220,.72); }
.museum-home-page[data-view="explore"] .shore-dune--front { background: rgba(215,190,143,.14); }
.museum-home-page[data-view="explore"] .shore-grass::before,
.museum-home-page[data-view="explore"] .shore-grass::after { background: #729e86; opacity: .76; }

.museum-home-page[data-view="explore"] .shore-arrival__copy {
  top: clamp(108px, 14vh, 150px);
  left: clamp(20px, 16vw, 240px);
  width: min(340px, calc(100% - 40px));
  color: var(--shore-water-ink);
  text-shadow: 0 1px 12px rgba(255,255,255,.2);
}
.museum-home-page[data-view="explore"] .shore-arrival__eyebrow {
  margin: 0 0 2px;
  color: var(--shore-water-ink);
  font-family: var(--shore-script);
  font-size: clamp(23px, 2.2vw, 34px);
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
  text-transform: none;
}
.museum-home-page[data-view="explore"] .shore-arrival__copy h1 {
  margin: 0;
  color: var(--shore-water-ink);
  font-family: var(--shore-script);
  font-size: clamp(90px, 10vw, 150px);
  font-weight: 600;
  letter-spacing: -.055em;
  line-height: .78;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-decoration-color: rgba(46,100,141,.68);
  text-underline-offset: 13px;
  transform: rotate(-3deg);
}
.museum-home-page[data-view="explore"] .shore-arrival__copy h1 span {
  color: var(--shore-coral-soft);
  text-decoration: none;
}
.museum-home-page[data-view="explore"] .shore-arrival__lede {
  margin: 20px 0 0;
  color: rgba(43,85,112,.82);
  font-family: var(--shore-script);
  font-size: clamp(17px, 1.45vw, 23px);
  line-height: 1.1;
}
.museum-home-page[data-view="explore"] .shore-arrival__cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 20px;
  padding: 10px 18px 11px;
  border: 0;
  border-radius: 999px;
  background: var(--shore-coral-soft);
  color: #fffaf0;
  font-family: var(--shore-script);
  font-size: 19px;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 7px 0 rgba(192,108,87,.14);
  transform: rotate(-2deg);
  transition: transform 180ms ease, background 180ms ease;
}
.museum-home-page[data-view="explore"] .shore-arrival__cta:hover,
.museum-home-page[data-view="explore"] .shore-arrival__cta:focus-visible {
  background: #ef7b61;
  outline: none;
  transform: rotate(-2deg) translateY(-2px);
}

/* The character becomes the emotional centre, facing the water rather than
   reading as a left-side profile card. */
.museum-home-page[data-view="explore"] .shore-character {
  left: 39%;
  bottom: 4%;
  width: clamp(250px, 23vw, 330px);
  height: clamp(405px, 47vw, 505px);
  z-index: 7;
}
.museum-home-page[data-view="explore"] .shore-character__figure { filter: saturate(.78) contrast(.93); }
.museum-home-page[data-view="explore"] .shore-character__cats {
  right: -116px;
  bottom: 5px;
  width: 170px;
}
.museum-home-page[data-view="explore"] .shore-cat--tabby { left: 4px; transform: scale(.9); }
.museum-home-page[data-view="explore"] .shore-cat--gray { left: 76px; transform: scale(.7); }
.museum-home-page[data-view="explore"] .shore-character__note {
  left: 8%;
  bottom: 3%;
  width: 168px;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(47,86,108,.74);
  transform: rotate(-4deg);
}
.museum-home-page[data-view="explore"] .shore-character__note-kicker {
  color: var(--shore-coral-soft);
  font-family: var(--shore-script);
  font-size: 15px;
  letter-spacing: 0;
  text-transform: none;
}
.museum-home-page[data-view="explore"] .shore-character__note strong {
  color: var(--shore-water-ink);
  font-family: var(--shore-script);
  font-size: 25px;
  font-weight: 600;
}
.museum-home-page[data-view="explore"] .shore-character__note > span:last-child {
  margin-top: 0;
  font-family: var(--shore-script);
  font-size: 14px;
}

/* Distant pavilions become quiet landmarks; the physical sign carries the
   discoverability of the first screen, matching the A+C reference. */
.museum-home-page[data-view="explore"] .shore-pavilions {
  left: 70%;
  bottom: 33%;
  width: 620px;
  height: 230px;
  transform: translateX(-24%) scale(.64);
  opacity: .22;
  filter: saturate(.6) blur(.2px);
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-pavilion__wall {
  background:
    url("home/shore-watercolor-texture.svg") repeat,
    linear-gradient(165deg, #e9e6cf, #c6d9d2);
  box-shadow: none;
}
.museum-home-page[data-view="explore"] .shore-pavilion__roof {
  background: #e2d4b5;
  border-top-color: rgba(49,91,103,.2);
  box-shadow: none;
}
.museum-home-page[data-view="explore"] .shore-pavilion__opening { background: #5d8998; box-shadow: none; }
.museum-home-page[data-view="explore"] .shore-pavilion__threshold { display: none; }

/* Reference-style wayfinding sign: one real post, five imperfect planks. */
.museum-home-page[data-view="explore"] .shore-sign {
  right: clamp(40px, 10vw, 160px);
  bottom: 9%;
  width: 230px;
  height: 380px;
  transform: rotate(1deg);
  animation: shoreSignSway 9s ease-in-out infinite alternate;
}
.museum-home-page[data-view="explore"] .shore-sign__post {
  left: 49%;
  width: 12px;
  height: 185px;
  background: #aa805c;
  box-shadow: 7px 0 0 rgba(109,80,56,.12);
}
.museum-home-page[data-view="explore"] .shore-sign__stack {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: grid;
  gap: 7px;
  transform: rotate(-2deg);
}
.museum-home-page[data-view="explore"] .shore-sign__plank {
  position: relative;
  display: grid;
  grid-template-columns: 30px 1fr 28px;
  align-items: center;
  min-height: 47px;
  padding: 7px 13px 8px 17px;
  border: 1px solid rgba(91,67,48,.34);
  color: #3e5360;
  background:
    url("home/shore-watercolor-texture.svg") repeat,
    linear-gradient(180deg, #e5c999, #d4ae79);
  clip-path: polygon(2% 5%, 98% 0, 100% 89%, 4% 100%, 0 18%);
  box-shadow: 3px 4px 0 rgba(100,75,52,.13);
  font-family: var(--shore-script);
  text-decoration: none;
  transition: transform 180ms ease, filter 180ms ease, background 180ms ease;
}
.museum-home-page[data-view="explore"] .shore-sign__plank:nth-child(1) { transform: rotate(1deg); }
.museum-home-page[data-view="explore"] .shore-sign__plank:nth-child(2) { transform: rotate(-1deg) translateX(6px); }
.museum-home-page[data-view="explore"] .shore-sign__plank:nth-child(3) { transform: rotate(1.5deg) translateX(-2px); }
.museum-home-page[data-view="explore"] .shore-sign__plank:nth-child(4) { transform: rotate(-1deg) translateX(8px); }
.museum-home-page[data-view="explore"] .shore-sign__plank:nth-child(5) { transform: rotate(.5deg) translateX(1px); }
.museum-home-page[data-view="explore"] .shore-sign__plank > span { font-family: var(--shore-mono); font-size: 11px; color: rgba(57,74,80,.72); }
.museum-home-page[data-view="explore"] .shore-sign__plank strong { font-size: 24px; font-weight: 600; line-height: 1; }
.museum-home-page[data-view="explore"] .shore-sign__plank em { color: var(--shore-water-ink); font-size: 20px; font-style: normal; text-align: right; }
.museum-home-page[data-view="explore"] .shore-sign__plank:hover,
.museum-home-page[data-view="explore"] .shore-sign__plank:focus-visible { filter: saturate(1.15); outline: none; transform: translateX(6px) rotate(-1deg); }
.museum-home-page[data-view="explore"] .shore-arrival__footer { color: rgba(47,86,108,.52); }
.museum-home-page[data-view="explore"] .shore-arrival__footer span:last-child { font-family: var(--shore-script); font-size: 16px; letter-spacing: 0; text-transform: none; }

@media (max-width: 900px) {
  .museum-home-page[data-view="explore"] .shore-arrival__copy { left: 9%; }
  .museum-home-page[data-view="explore"] .shore-character { left: 35%; width: 260px; height: 410px; }
  .museum-home-page[data-view="explore"] .shore-sign { right: 28px; transform: scale(.82) rotate(1deg); transform-origin: 100% 100%; }
  .museum-home-page[data-view="explore"] .shore-pavilions { left: 76%; transform: translateX(-28%) scale(.55); }
}
@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-arrival__copy { top: 84px; left: 18px; width: 250px; }
  .museum-home-page[data-view="explore"] .shore-arrival__eyebrow { font-size: 24px; }
  .museum-home-page[data-view="explore"] .shore-arrival__copy h1 { font-size: 84px; }
  .museum-home-page[data-view="explore"] .shore-arrival__lede { margin-top: 18px; font-size: 17px; }
  .museum-home-page[data-view="explore"] .shore-arrival__cta { font-size: 17px; }
  .museum-home-page[data-view="explore"] .shore-character { left: 23%; bottom: 5%; width: 205px; height: 325px; }
  .museum-home-page[data-view="explore"] .shore-character__cats { right: -80px; transform: scale(.72); transform-origin: left bottom; }
  .museum-home-page[data-view="explore"] .shore-character__note { display: none; }
  .museum-home-page[data-view="explore"] .shore-sign { right: -4px; bottom: 7%; transform: scale(.58) rotate(1deg); }
  .museum-home-page[data-view="explore"] .shore-pavilions { opacity: .14; }
}

.shore-filter-defs { position: absolute; width: 0; height: 0; overflow: hidden; }

/* Keep the grain in the world layers; do not wash the text and character with
   the same pigment. */
.museum-home-page[data-view="explore"] .shore-arrival::before { z-index: 2; }
.museum-home-page[data-view="explore"] .shore-pavilions { opacity: .09; filter: saturate(.45) blur(.5px); }
.museum-home-page[data-view="explore"] .shore-character__note { display: none; }

.shore-flower { position: absolute; width: 34px; height: 72px; }
.shore-flower::before { content: ""; position: absolute; left: 16px; bottom: 0; width: 2px; height: 52px; background: #7d9f84; transform: rotate(8deg); transform-origin: bottom; }
.shore-flower::after { content: "✿"; position: absolute; left: 5px; top: 5px; color: #e99476; font-size: 23px; font-family: Georgia, serif; }
.shore-flower--left { left: 16%; top: 20%; transform: rotate(-8deg) scale(.72); }
.shore-flower--right { right: 19%; top: 22%; transform: rotate(11deg) scale(.6); }
@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-sign { right: 18px; }
  .museum-home-page[data-view="explore"] .shore-pavilions { opacity: 0; }
  .shore-flower--left { left: 10%; top: 18%; }
  .shore-flower--right { right: 12%; top: 20%; }
}

@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-sign { left: 230px; right: auto; }
}

/* --------------------------------------------------------------------------
   Project Shore layered scene architecture
   01 Environment -> 02 Objects -> 03 Character -> 04 UI
   Each layer is independently positioned and interactive where appropriate.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .shore-arrival {
  min-height: 760px;
  height: 100svh;
  max-height: 1040px;
  background: #d8e9ec;
  overflow: hidden;
}
.museum-home-page[data-view="explore"] .shore-arrival::before,
.museum-home-page[data-view="explore"] .shore-arrival::after { display: none !important; }
.shore-layer { position: absolute; inset: 0; }
.shore-layer--environment { z-index: 0; pointer-events: none; }
.shore-layer--objects { z-index: 4; pointer-events: none; }
.shore-layer--character { z-index: 6; pointer-events: none; }
.shore-layer--ui { z-index: 8; pointer-events: none; }
.shore-painted-layer {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
}
.shore-painted-layer--sky { z-index: 0; }
.shore-painted-layer--sea { z-index: 1; }
.shore-painted-layer--shore { z-index: 2; }

/* Layer 04: top-level UI */
.museum-home-page[data-view="explore"] .museum-nav { display: none !important; }
.museum-home-page[data-view="explore"] .museum-brand::before { display: none; }
.museum-brand__world { display: none; }
.museum-brand__quick { display: inline; }
.museum-home-page[data-view="explore"] .museum-brand__world { display: inline; }
.museum-home-page[data-view="explore"] .museum-brand__quick { display: none; }
.museum-home-page[data-view="explore"] .museum-brand strong {
  color: #315f8a;
  font-family: var(--shore-script);
  font-size: clamp(28px, 2.5vw, 38px);
  font-weight: 600;
  letter-spacing: -.03em;
}
.museum-home-page[data-view="explore"] .museum-mode-toggle {
  width: var(--shore-overview-control-width);
  min-width: var(--shore-overview-control-width);
  border-color: rgba(49,95,138,.24);
  background: rgba(251,250,241,.32);
  color: #315f8a;
}
.shore-layer--ui a,
.shore-layer--ui button { pointer-events: auto; }
.shore-arrival__utility {
  position: absolute;
  top: 22px;
  right: calc(var(--shore-overview-control-width) + var(--shore-header-control-gap));
  display: flex;
  align-items: center;
  min-height: 34px;
  gap: 18px;
  color: #315f8a;
  font-family: var(--shore-script);
  font-size: 20px;
  line-height: 1;
}
.shore-arrival__utility a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 2px 4px;
  border-bottom: 1px solid transparent;
  color: inherit;
  text-decoration: none;
  transition: color 160ms ease, border-color 160ms ease, transform 160ms ease;
}
.shore-arrival__utility a:hover,
.shore-arrival__utility a:focus-visible {
  border-bottom-color: currentColor;
  color: #ef856a;
  transform: translateY(-1px);
}
.shore-arrival__utility a:hover { outline: none; }
.shore-arrival__utility a:focus-visible {
  outline: 2px solid rgba(49, 95, 138, .5);
  outline-offset: 3px;
}
.museum-home-page[data-view="explore"] .shore-arrival__copy {
  top: clamp(130px, 15vh, 174px);
  left: clamp(40px, 6vw, 100px);
  width: min(390px, calc(100% - 48px));
  color: #315f8a;
}
.museum-home-page[data-view="explore"] .shore-arrival__eyebrow {
  margin: 0 0 4px;
  font-family: var(--shore-script);
  font-size: clamp(28px, 2.4vw, 38px);
  font-weight: 600;
  color: #315f8a;
}
.museum-home-page[data-view="explore"] .shore-arrival__copy h1 {
  margin: 0;
  max-width: none;
  color: #274f7e;
  font-family: var(--shore-script);
  font-size: clamp(112px, 12vw, 174px);
  font-weight: 600;
  line-height: .76;
  letter-spacing: -.06em;
  text-decoration: none;
  transform: rotate(-2deg);
}
.museum-home-page[data-view="explore"] .shore-arrival__copy h1::after {
  content: "";
  display: block;
  width: 86%;
  height: 3px;
  margin: 16px 0 0 10px;
  border-radius: 50%;
  background: #3976ad;
  transform: rotate(-1deg);
}
.museum-home-page[data-view="explore"] .shore-arrival__copy h1 span { color: #274f7e; }
.museum-home-page[data-view="explore"] .shore-arrival__lede {
  margin-top: 22px;
  color: #315f8a;
  font-family: var(--shore-script);
  font-size: clamp(20px, 1.6vw, 26px);
  line-height: 1.18;
}
.shore-arrival__heart {
  display: block;
  margin-top: 11px;
  color: #3976ad;
  font-family: var(--shore-script);
  font-size: 30px;
  line-height: 1;
}
.museum-home-page[data-view="explore"] .shore-arrival__cta {
  margin-top: 16px;
  padding: 11px 20px 12px;
  background: #f28d72;
  color: #fffaf2;
  font-size: 20px;
  box-shadow: 0 7px 0 rgba(178,98,78,.13);
}
.museum-home-page[data-view="explore"] .shore-arrival__footer {
  left: clamp(32px, 4vw, 64px);
  right: clamp(32px, 4vw, 64px);
  bottom: 25px;
  align-items: end;
  color: #315f8a;
  font-family: var(--shore-script);
  font-size: 18px;
  letter-spacing: 0;
  line-height: 1.15;
  text-transform: none;
}
.museum-home-page[data-view="explore"] .shore-arrival__footer span:last-child { font-size: 17px; }

/* Layer 03: character and cats */
.museum-home-page[data-view="explore"] .shore-character {
  position: absolute;
  left: 37%;
  bottom: 4.2%;
  width: clamp(290px, 26vw, 390px);
  height: clamp(470px, 53vw, 610px);
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-character__figure {
  position: absolute;
  inset: 0;
  overflow: hidden;
  filter: saturate(.8) contrast(.96);
}
.museum-home-page[data-view="explore"] .shore-character__figure img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  max-width: none;
}
.museum-home-page[data-view="explore"] .shore-character__cats {
  position: absolute;
  right: -115px;
  bottom: 7px;
  width: 180px;
  height: 82px;
}
.museum-home-page[data-view="explore"] .shore-cat { box-shadow: inset -9px -5px 0 rgba(50,44,42,.12), 0 4px 0 rgba(106,88,70,.08); }
.museum-home-page[data-view="explore"] .shore-cat--tabby { transform: scale(1); background: #77766d; color: #77766d; }
.museum-home-page[data-view="explore"] .shore-cat--gray { left: 78px; transform: scale(.8); background: #c39172; color: #c39172; }

/* Layer 02: interactive discovery objects */
.shore-layer--objects a { pointer-events: auto; }
.shore-discovery-object {
  position: absolute;
  display: block;
  color: #315f8a;
  text-decoration: none;
  transform-origin: center bottom;
  transition: transform 180ms ease, filter 180ms ease;
}
.shore-discovery-object:hover,
.shore-discovery-object:focus-visible { transform: translateY(-5px) rotate(-2deg); filter: saturate(1.12); outline: none; }
.shore-discovery-object--bottle {
  left: 7%;
  bottom: 7%;
  width: 34px;
  height: 116px;
  border: 3px solid #638fa4;
  border-radius: 8px 8px 15px 15px;
  background: linear-gradient(90deg, rgba(223,241,235,.32), rgba(122,178,190,.48));
  transform: rotate(-11deg);
}
.shore-discovery-object--bottle::before { content: ""; position: absolute; left: 8px; top: -22px; width: 14px; height: 24px; border: 3px solid #638fa4; border-bottom: 0; border-radius: 3px 3px 0 0; }
.shore-discovery-object--bottle::after { content: ""; position: absolute; left: 4px; top: 15px; width: 20px; height: 62px; border-left: 2px solid rgba(255,255,255,.62); transform: rotate(2deg); }
.shore-discovery-object--shell {
  left: 21%;
  bottom: 5%;
  width: 76px;
  height: 55px;
  border: 3px solid #879ca7;
  border-radius: 75% 30% 60% 35%;
  background: repeating-linear-gradient(74deg, #f2e5c7 0 8px, #dcae8c 9px 11px);
  transform: rotate(-13deg);
}
.shore-discovery-object--shell::after { content: ""; position: absolute; left: 33px; top: -4px; width: 3px; height: 61px; background: rgba(91,120,134,.56); transform: rotate(-22deg); }
.shore-discovery-object--camera {
  left: 67%;
  bottom: 4.5%;
  width: 88px;
  height: 61px;
  border: 3px solid #34566d;
  border-radius: 8px;
  background: #5e8296;
  box-shadow: inset 0 0 0 8px rgba(238,224,196,.25);
  transform: rotate(-3deg);
}
.shore-discovery-object--camera::before { content: ""; position: absolute; left: 26px; top: 11px; width: 32px; height: 32px; border: 6px solid #263f52; border-radius: 50%; background: #98bdc5; }
.shore-discovery-object--camera::after { content: ""; position: absolute; left: 9px; top: -12px; width: 28px; height: 13px; border: 3px solid #34566d; border-bottom: 0; border-radius: 5px 5px 0 0; background: #7c9ca9; }
.shore-discovery-object--mug {
  right: 8%;
  bottom: 3.2%;
  width: 70px;
  height: 74px;
  border: 3px solid #426b88;
  border-radius: 7px 7px 15px 15px;
  background: #6f9fba;
  transform: rotate(4deg);
}
.shore-discovery-object--mug::before { content: ""; position: absolute; right: -24px; top: 13px; width: 27px; height: 35px; border: 5px solid #426b88; border-left: 0; border-radius: 0 18px 18px 0; }
.shore-discovery-object--mug::after { content: "⌒ᴗ⌒"; position: absolute; left: 10px; top: 28px; color: #fff8e8; font-size: 15px; letter-spacing: -2px; }
.shore-discovery-object--starfish {
  left: 57%;
  bottom: 2.5%;
  width: 58px;
  height: 58px;
  color: #e68d6f;
  font-size: 62px;
  line-height: .8;
  transform: rotate(16deg);
}
.shore-discovery-object--starfish::before { content: "★"; }

/* The physical sign is part of the object layer, not a UI panel. */
.museum-home-page[data-view="explore"] .shore-sign {
  position: absolute;
  top: 13%;
  right: clamp(30px, 5vw, 78px);
  bottom: auto;
  width: clamp(225px, 19vw, 292px);
  height: 570px;
  transform: rotate(.5deg);
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sign__post {
  left: 50%;
  bottom: 0;
  width: 15px;
  height: 345px;
  background: linear-gradient(90deg, #8e684b, #b08662 52%, #806047);
  box-shadow: 5px 0 0 rgba(83,58,41,.12);
}
.museum-home-page[data-view="explore"] .shore-sign__stack {
  top: 0;
  gap: 8px;
  pointer-events: auto;
}
.museum-home-page[data-view="explore"] .shore-sign__plank {
  grid-template-columns: 35px 1fr 32px;
  grid-template-rows: auto auto;
  min-height: 76px;
  padding: 9px 17px 9px 19px;
  border-color: rgba(72,65,57,.34);
  background:
    url("home/shore-watercolor-texture.svg") repeat,
    linear-gradient(180deg, rgba(246,240,221,.98), rgba(225,211,180,.96));
  color: #2e527b;
  box-shadow: 3px 5px 0 rgba(85,66,48,.13);
  clip-path: polygon(2% 7%, 91% 2%, 100% 50%, 91% 94%, 3% 100%, 0 20%);
}
.museum-home-page[data-view="explore"] .shore-sign__plank > span { grid-row: 1; font-size: 12px; }
.museum-home-page[data-view="explore"] .shore-sign__plank strong { grid-row: 1; font-size: clamp(23px, 2vw, 30px); text-transform: uppercase; }
.museum-home-page[data-view="explore"] .shore-sign__plank em { grid-row: 1 / 3; align-self: center; font-size: 23px; }
.museum-home-page[data-view="explore"] .shore-sign__plank small {
  grid-column: 2 / 4;
  grid-row: 2;
  color: rgba(46,82,123,.78);
  font-family: var(--shore-script);
  font-size: 15px;
  line-height: 1;
}

@media (max-width: 1050px) {
  .museum-home-page[data-view="explore"] .shore-arrival__copy { left: 5%; width: 330px; }
  .museum-home-page[data-view="explore"] .shore-character { left: 34%; width: 320px; height: 510px; }
  .museum-home-page[data-view="explore"] .shore-sign { right: 18px; transform: scale(.82) rotate(.5deg); transform-origin: 100% 0; }
  .shore-discovery-object--camera { left: 65%; }
}
@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-arrival { min-height: 760px; }
  .museum-home-page[data-view="explore"] .museum-brand strong { font-size: 27px; }
  .museum-home-page[data-view="explore"] .shore-arrival__utility {
    top: 17px;
    right: calc(var(--shore-overview-control-width) + var(--shore-header-control-gap));
    min-height: 34px;
    font-size: 16px;
  }
  .museum-home-page[data-view="explore"] .shore-arrival__copy { top: 88px; left: 19px; width: 260px; }
  .museum-home-page[data-view="explore"] .shore-arrival__eyebrow { font-size: 25px; }
  .museum-home-page[data-view="explore"] .shore-arrival__copy h1 { font-size: 90px; }
  .museum-home-page[data-view="explore"] .shore-arrival__copy h1::after { margin-top: 10px; }
  .museum-home-page[data-view="explore"] .shore-arrival__lede { margin-top: 16px; font-size: 18px; }
  .shore-arrival__heart { font-size: 24px; }
  .museum-home-page[data-view="explore"] .shore-arrival__cta { margin-top: 10px; font-size: 17px; }
  .museum-home-page[data-view="explore"] .shore-character { left: 23%; bottom: 4%; width: 222px; height: 360px; }
  .museum-home-page[data-view="explore"] .shore-character__cats { right: -80px; transform: scale(.72); transform-origin: left bottom; }
  .museum-home-page[data-view="explore"] .shore-sign { top: 45%; left: 282px; right: auto; width: 230px; transform: scale(.48) rotate(.5deg); transform-origin: 0 0; }
  .shore-discovery-object--bottle { left: 7%; bottom: 4%; transform: scale(.62) rotate(-11deg); }
  .shore-discovery-object--shell { left: 18%; bottom: 2.5%; transform: scale(.55) rotate(-13deg); }
  .shore-discovery-object--camera { left: 79%; bottom: 4%; transform: scale(.55) rotate(-3deg); }
  .shore-discovery-object--mug { display: none; }
  .shore-discovery-object--starfish { left: 63%; bottom: 1.5%; transform: scale(.55) rotate(16deg); }
  .museum-home-page[data-view="explore"] .shore-arrival__footer { left: 18px; right: 18px; bottom: 14px; font-size: 13px; }
  .museum-home-page[data-view="explore"] .shore-arrival__footer span:last-child { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .shore-discovery-object,
  .museum-home-page[data-view="explore"] .shore-sign { animation: none !important; transition-duration: .001ms !important; }
}

/* The environment layer is sourced from the environment-only Project Shore
   study, then kept separate from all objects, characters, and live UI. */
.shore-painted-layer--environment { object-position: center; filter: saturate(.96) contrast(.98); }

/* Character layer uses the composition study as an independent feathered
   overlay, matching the Project Shore sequence instead of redrawing the pose
   with unrelated artwork. */
.museum-home-page[data-view="explore"] .shore-character--reference-pose {
  left: 32.5%;
  bottom: 3.5%;
  width: clamp(315px, 29vw, 430px);
  height: auto;
  aspect-ratio: 278 / 319;
  overflow: visible;
  filter: none;
}
.museum-home-page[data-view="explore"] .shore-character--reference-pose img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: contain;
}
@media (max-width: 1050px) {
  .museum-home-page[data-view="explore"] .shore-character--reference-pose { left: 29%; width: 350px; height: auto; }
}
@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-character--reference-pose { left: 20%; bottom: 3%; width: 250px; height: auto; }
}

.museum-home-page[data-view="explore"] .shore-character--reference-pose img {
  mix-blend-mode: multiply;
  filter: saturate(.94) contrast(1.02);
}

/* --------------------------------------------------------------------------
   Project Shore reference correction — progressive painted layers
   01 environment raster -> 02 painted objects -> 03 painted character -> 04 UI
   All visible world objects now come from the same watercolor/pencil source.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .museum-brand {
  opacity: 0;
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-painted-layer--environment {
  object-position: center;
  filter: saturate(.98) contrast(1);
}

/* Layer 02: painted physical objects, with live semantics over the art. */
.museum-home-page[data-view="explore"] .shore-discovery-object {
  --shore-object-rotation: 0deg;
  width: auto;
  height: auto;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  transform: rotate(var(--shore-object-rotation));
  transform-origin: 50% 100%;
  filter: drop-shadow(0 4px 2px rgba(79, 67, 54, .08));
}
.museum-home-page[data-view="explore"] .shore-discovery-object::before,
.museum-home-page[data-view="explore"] .shore-discovery-object::after { content: none; }
.museum-home-page[data-view="explore"] .shore-discovery-object img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
}
.museum-home-page[data-view="explore"] a.shore-discovery-object:hover,
.museum-home-page[data-view="explore"] a.shore-discovery-object:focus-visible {
  transform: translateY(-4px) rotate(var(--shore-object-rotation));
  filter: saturate(1.06) drop-shadow(0 7px 3px rgba(79, 67, 54, .1));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--bottle {
  --shore-object-rotation: -9deg;
  left: 5.5%;
  bottom: 3.6%;
  width: clamp(30px, 2.7vw, 43px);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--shell {
  --shore-object-rotation: -7deg;
  left: 14.5%;
  bottom: 2.8%;
  width: clamp(58px, 5.2vw, 78px);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--conch {
  --shore-object-rotation: 5deg;
  left: 28%;
  bottom: 2.4%;
  width: clamp(35px, 3.2vw, 49px);
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--camera {
  --shore-object-rotation: -3deg;
  left: 68%;
  bottom: 3.4%;
  width: clamp(72px, 6.3vw, 96px);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--starfish {
  --shore-object-rotation: 12deg;
  left: 59%;
  bottom: 1.7%;
  width: clamp(35px, 3.4vw, 50px);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug {
  --shore-object-rotation: 3deg;
  right: 5.2%;
  bottom: 3%;
  width: clamp(56px, 4.9vw, 74px);
}

.museum-home-page[data-view="explore"] .shore-sign--painted {
  top: 12%;
  right: clamp(34px, 5.4vw, 84px);
  bottom: auto;
  width: clamp(154px, 12.6vw, 194px);
  height: auto;
  transform: rotate(.4deg);
  transform-origin: 50% 100%;
  animation: none;
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sign__art {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  filter: drop-shadow(4px 7px 3px rgba(75, 59, 43, .1));
  transition: filter 180ms ease, transform 180ms ease;
}
.museum-home-page[data-view="explore"] .shore-sign__hotspots {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sign__hotspot {
  position: absolute;
  left: 0;
  width: 100%;
  height: 12.5%;
  pointer-events: auto;
  text-decoration: none;
}
.museum-home-page[data-view="explore"] .shore-sign__hotspot--works { top: 1.5%; }
.museum-home-page[data-view="explore"] .shore-sign__hotspot--experience { top: 14.6%; }
.museum-home-page[data-view="explore"] .shore-sign__hotspot--tools { top: 27.9%; }
.museum-home-page[data-view="explore"] .shore-sign__hotspot--about { top: 41.1%; }
.museum-home-page[data-view="explore"] .shore-sign--painted:hover .shore-sign__art,
.museum-home-page[data-view="explore"] .shore-sign--painted:focus-within .shore-sign__art {
  transform: translateY(-2px);
  filter: saturate(1.05) drop-shadow(5px 10px 4px rgba(75, 59, 43, .13));
}
.museum-home-page[data-view="explore"] .shore-sign__hotspot:focus-visible {
  outline: none;
  box-shadow: inset 0 -2px 0 rgba(49, 95, 138, .62);
}

/* Layer 03: three independently draggable crops from one transparent source. */
.museum-home-page[data-view="explore"] .shore-character-group {
  left: 32.5%;
  bottom: 2.9%;
  width: clamp(300px, 25.5vw, 370px);
  height: auto;
  aspect-ratio: 834 / 957;
  overflow: visible;
  pointer-events: none;
  filter: none;
}
.museum-home-page[data-view="explore"] .shore-character-part {
  --shore-character-drag-x: 0px;
  --shore-character-drag-y: 0px;
  position: absolute;
  overflow: visible;
  cursor: grab;
  pointer-events: auto;
  touch-action: none;
  user-select: none;
  transform: translate3d(var(--shore-character-drag-x), var(--shore-character-drag-y), 0);
  transform-origin: 50% 100%;
  will-change: transform;
}
.museum-home-page[data-view="explore"] .shore-character-part--person {
  top: 5.747%;
  left: 9.952%;
  z-index: 1;
  width: 39.089%;
  height: 90.282%;
}
.museum-home-page[data-view="explore"] .shore-character-part--tabby {
  top: 66.458%;
  left: 48.921%;
  z-index: 2;
  width: 21.223%;
  height: 30.408%;
}
.museum-home-page[data-view="explore"] .shore-character-part--calico {
  top: 70.428%;
  left: 71.583%;
  z-index: 2;
  width: 18.825%;
  height: 25.496%;
}
/* Desktop/tablet refinement: retain the approved 70% / 72.25% sizes and use
   the user's captured arrangement as the responsive initial composition. */
@media (min-width: 681px) {
  .museum-home-page[data-view="explore"] .shore-character-part--person {
    top: 22.397%;
    left: 29.703%;
    width: 27.362%;
    height: 63.197%;
  }
  .museum-home-page[data-view="explore"] .shore-character-part--tabby {
    top: 55.774%;
    left: 73.055%;
    width: 15.334%;
    height: 21.970%;
  }
  .museum-home-page[data-view="explore"] .shore-character-part--calico {
    top: 51.655%;
    left: 104.509%;
    width: 13.601%;
    height: 18.421%;
  }
}

/* --------------------------------------------------------------------------
   Final annotated Shore corrections
   Composite the clean sign as independent painted planks, plant its post in
   the grass, and give the foreground keepsakes believable contact with sand.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .shore-sign--painted {
  top: auto;
  bottom: clamp(20px, 2.8vh, 34px);
  isolation: isolate;
  overflow: visible;
  transform: none;
  filter: none;
}
.museum-home-page[data-view="explore"] .shore-sign--painted::after {
  content: "";
  position: absolute;
  left: 38%;
  bottom: -1.5%;
  z-index: -1;
  width: 27%;
  height: 3.4%;
  border-radius: 50%;
  background: rgba(72, 66, 48, .16);
  filter: blur(4px);
  transform: rotate(-5deg);
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sign__complete {
  display: none;
}
.museum-home-page[data-view="explore"] .shore-sign__post-layers,
.museum-home-page[data-view="explore"] .shore-sign__post-complete,
.museum-home-page[data-view="explore"] .shore-sign__post-complete img,
.museum-home-page[data-view="explore"] .shore-sign__plank-layer,
.museum-home-page[data-view="explore"] .shore-sign__plank-layer img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.museum-home-page[data-view="explore"] .shore-sign__post-layers {
  z-index: 0;
  pointer-events: none;
  filter: drop-shadow(0 8px 5px rgba(71, 58, 44, .15));
}
.museum-home-page[data-view="explore"] .shore-sign__post-complete {
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sign__post-complete img,
.museum-home-page[data-view="explore"] .shore-sign__plank-layer img {
  max-width: none;
  object-fit: contain;
}
.museum-home-page[data-view="explore"] .shore-sign__post-complete img {
  transform: skewX(-2deg) scaleY(1.035);
  transform-origin: 50% 50%;
}
.museum-home-page[data-view="explore"] .shore-sign__entries {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: visible;
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entry {
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: auto;
  transform: none;
  transition: transform 180ms cubic-bezier(.22, 1, .36, 1), filter 180ms ease;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works {
  clip-path: polygon(3% 6.25%, 20% 6.35%, 30% 6.55%, 35% 6.8%, 40% 6.95%, 55% 7.1%, 60% 7.1%, 72% 7.2%, 92% 7.5%, 100% 8.2%, 96% 21.2%, 80% 21%, 60% 20.25%, 55% 20%, 40% 19.65%, 35% 19.55%, 30% 19.75%, 15% 19.4%, 4% 19.1%, 0 17%, 1% 7%);
  transform-origin: 50% 13%;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--experience {
  clip-path: polygon(6% 23.3%, 8% 22.45%, 10% 22.1%, 20% 22.1%, 35% 22.65%, 40% 22.9%, 55% 23.3%, 60% 23.4%, 80% 23.65%, 89% 24%, 94% 25.2%, 97.5% 29.8%, 94% 35%, 89% 36.9%, 80% 37.2%, 60% 36.45%, 55% 36.1%, 40% 35.65%, 35% 35.45%, 20% 35.15%, 10% 35%, 7% 34.4%, 6% 32%, 6% 26%);
  transform-origin: 50% 29.5%;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--tools {
  clip-path: polygon(7% 39.1%, 9% 38.1%, 12% 37.85%, 20% 38.05%, 35% 38.65%, 40% 38.9%, 54% 39.3%, 60% 39.4%, 80% 40%, 89% 40.2%, 94% 41.1%, 97% 45.5%, 94% 50.6%, 89% 52.95%, 80% 53%, 60% 52.1%, 54% 51.7%, 40% 51.2%, 35% 51.05%, 20% 50.75%, 10% 50.55%, 7% 49.8%, 6% 46%, 6% 41%);
  transform-origin: 50% 45.5%;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--about {
  clip-path: polygon(6% 54.2%, 8% 53.4%, 10% 53.2%, 20% 53.55%, 34% 54.15%, 37% 54.35%, 53% 54.9%, 60% 55%, 80% 55.75%, 89% 55.9%, 94% 57%, 97% 61.3%, 94% 66.3%, 89% 68.9%, 80% 69.05%, 60% 68.15%, 53% 67.45%, 37% 66.8%, 34% 66.65%, 20% 66.3%, 10% 66.1%, 7% 65.6%, 5.5% 62%, 5.5% 56%);
  transform-origin: 50% 61%;
}
.museum-home-page[data-view="explore"] .shore-sign__entry::before {
  content: none;
}
.museum-home-page[data-view="explore"] .shore-sign__plank-layer {
  pointer-events: none;
  filter: drop-shadow(0 5px 4px rgba(71, 58, 44, .12));
  transition: filter 180ms ease;
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible {
  z-index: 2;
  outline: none;
  box-shadow: none;
  filter: saturate(1.08) contrast(1.035);
  transform: translate(5px, -1px);
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover .shore-sign__plank-layer,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible .shore-sign__plank-layer {
  filter: brightness(1.035) drop-shadow(0 9px 6px rgba(71, 58, 44, .22));
}
.museum-home-page[data-view="explore"] .shore-sign__entry:active {
  transform: translate(3px, 0);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided,
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided .shore-sign__plank-layer,
.museum-home-page[data-view="explore"] .museum-arrival.is-choosing-path .shore-sign--painted,
.museum-home-page[data-view="explore"] .shore-sign--painted:has(.shore-sign__entry:hover) .shore-sign__complete,
.museum-home-page[data-view="explore"] .shore-sign--painted:focus-within .shore-sign__complete {
  transform: none;
  filter: none;
}

.museum-home-page[data-view="explore"] .shore-discovery-object--camera {
  bottom: 5.2%;
  transform: rotate(-7deg);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug {
  right: 15.5%;
  bottom: 4.4%;
  transform: rotate(6deg);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--starfish {
  bottom: 3.6%;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--camera::after,
.museum-home-page[data-view="explore"] .shore-discovery-object--mug::after {
  content: "";
  position: absolute;
  left: 8%;
  bottom: -5%;
  z-index: -1;
  width: 84%;
  height: 16%;
  border-radius: 50%;
  background: rgba(83, 68, 51, .2);
  filter: blur(3px);
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--camera::before,
.museum-home-page[data-view="explore"] .shore-discovery-object--mug::before {
  content: "";
  position: absolute;
  left: 13%;
  bottom: -2%;
  z-index: -1;
  width: 74%;
  height: 9%;
  border-top: 1px solid rgba(119, 91, 59, .28);
  border-radius: 50%;
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--camera:hover,
.museum-home-page[data-view="explore"] .shore-discovery-object--camera:focus-visible {
  transform: translateY(-4px) rotate(-5deg);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug:hover,
.museum-home-page[data-view="explore"] .shore-discovery-object--mug:focus-visible {
  transform: translateY(-4px) rotate(4deg);
}

@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-sign--painted {
    bottom: 42px;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--camera {
    bottom: 5%;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--starfish {
    bottom: 2.8%;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--mug {
    right: 11%;
    bottom: 3.4%;
  }
}

/* Final Overview lock. Legacy P1/P2 compatibility rules above remain for
   rollback, so accepted Quick-view behavior is fixed here at the cascade end. */
.museum-home-page[data-view="index"] .museum-header.content-header--detail {
  position: relative;
  inset: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: min(1120px, calc(100% - 48px));
  min-height: 88px;
  margin: 0 auto;
  padding: 0;
  border: 0;
  background: transparent;
  transform: none;
}
.museum-home-page[data-view="index"] .museum-header .museum-brand strong {
  color: #315f8a;
  font-family: var(--shore-script);
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0;
}
.museum-home-page[data-view="index"] .museum-header .museum-brand__quick {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.museum-home-page[data-view="index"] .museum-header .museum-brand__quick > span {
  color: var(--museum-orange);
  font-family: var(--shore-sans);
}
.museum-home-page[data-view="index"] .museum-header .museum-nav {
  gap: clamp(22px, 3vw, 40px);
}
.museum-home-page[data-view="index"] .museum-header .museum-nav a {
  color: #5f5a54;
  font-size: 11px;
}
.museum-home-page[data-view="index"] .index-view {
  padding-top: 0;
}
.museum-home-page[data-view="index"] .reference-hero {
  display: block;
  min-height: 390px;
  max-height: none;
  border-bottom: 1px solid rgba(76, 58, 36, .14);
  background: transparent;
}
.museum-home-page[data-view="index"] .reference-hero::before,
.museum-home-page[data-view="index"] .reference-hero::after {
  display: none;
}
.museum-home-page[data-view="index"] .reference-hero__copy {
  display: grid;
  grid-template-columns: minmax(410px, 1.2fr) minmax(230px, .65fr) minmax(280px, .8fr);
  column-gap: clamp(26px, 3vw, 46px);
  width: min(1120px, calc(100% - 48px));
  min-height: 390px;
  margin: 0 auto;
  padding: 36px 0 24px;
}
.museum-home-page[data-view="index"] .reference-identity {
  grid-column: 1;
  align-self: center;
}
.museum-home-page[data-view="index"] .reference-overview-meta {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  min-height: 210px;
  padding: 24px 0 20px 28px;
}
.museum-home-page[data-view="index"] .reference-overview-figure {
  position: relative;
  grid-column: 3;
  grid-row: 1;
  align-self: stretch;
  height: auto;
  min-height: 330px;
  overflow: hidden;
}
.museum-home-page[data-view="index"] .reference-overview-figure picture,
.museum-home-page[data-view="index"] .reference-overview-figure img {
  display: block;
  width: 100%;
  height: 100%;
}
.museum-home-page[data-view="index"] .reference-overview-figure picture {
  -webkit-mask-image:
    linear-gradient(to right, transparent 0, #000 12%, #000 96%, transparent 100%),
    linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image:
    linear-gradient(to right, transparent 0, #000 12%, #000 96%, transparent 100%),
    linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%);
  mask-composite: intersect;
}
.museum-home-page[data-view="index"] .reference-overview-figure img {
  object-fit: contain;
  object-position: right bottom;
  filter: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link {
  gap: 12px;
}
.museum-home-page[data-view="index"] .reference-project-card__link .reference-project-card__tags {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0;
  color: #25231f;
  font-size: inherit;
  transition: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link .reference-project-card__tags span {
  padding: 3px 7px;
  border: 1px solid rgba(65, 52, 37, .24);
  border-radius: 999px;
  color: #25231f;
  font-family: var(--shore-mono);
  font-size: 7px;
  transition: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link:hover .reference-project-card__tags,
.museum-home-page[data-view="index"] .reference-project-card__link:focus-visible .reference-project-card__tags,
.museum-home-page[data-view="index"] .reference-project-card__link:hover .reference-project-card__tags span,
.museum-home-page[data-view="index"] .reference-project-card__link:focus-visible .reference-project-card__tags span {
  transform: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link .reference-project-card__arrow {
  flex: 0 0 auto;
  color: var(--museum-orange);
  font-size: 18px;
}
.museum-home-page[data-view="index"] .reference-timeline article::before {
  top: -3px;
}
.museum-home-page[data-view="index"] .reference-footer {
  display: flex;
  justify-content: center;
  padding: 18px 0 30px;
  color: rgba(49, 95, 138, .58);
  font-family: var(--shore-script);
  font-size: 15px;
}
.museum-home-page[data-view="index"] .reference-footer > span > span {
  margin-right: 8px;
  color: #315f8a;
}

@media (max-width: 980px) {
  .museum-home-page[data-view="index"] .reference-hero__copy {
    grid-template-columns: minmax(330px, 1fr) minmax(210px, .65fr) minmax(210px, .72fr);
    column-gap: 22px;
  }
}

@media (max-width: 760px) {
  .museum-home-page[data-view="index"] .museum-header.content-header--detail {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
    width: calc(100% - 32px);
    min-height: 0;
    padding: 12px 0 10px;
  }
  .museum-home-page[data-view="index"] .museum-header .museum-nav {
    display: grid !important;
    grid-template-columns: repeat(4, auto);
    justify-content: space-between;
    gap: 8px;
    width: 100%;
  }
  .museum-home-page[data-view="index"] .museum-header .museum-nav a {
    font-size: 10px;
    white-space: nowrap;
  }
  .museum-home-page[data-view="index"] .reference-hero__copy {
    display: grid;
    grid-template-columns: 1fr;
    width: calc(100% - 36px);
    min-height: 0;
    padding: 42px 0 0;
  }
  .museum-home-page[data-view="index"] .reference-identity,
  .museum-home-page[data-view="index"] .reference-overview-meta,
  .museum-home-page[data-view="index"] .reference-overview-figure {
    grid-column: 1;
    grid-row: auto;
  }
  .museum-home-page[data-view="index"] .reference-overview-meta {
    min-height: 0;
    margin-top: 24px;
    padding: 18px 0 0;
  }
  .museum-home-page[data-view="index"] .reference-overview-meta p {
    display: block;
    margin: 0 0 8px;
  }
  .museum-home-page[data-view="index"] .reference-overview-figure {
    min-height: 280px;
    margin-top: 8px;
  }
  .museum-home-page[data-view="index"] .reference-overview-figure picture {
    -webkit-mask-image:
      linear-gradient(to right, transparent 0, #000 3%, #000 97%, transparent 100%),
      linear-gradient(to bottom, transparent 0, #000 6%, #000 94%, transparent 100%);
    mask-image:
      linear-gradient(to right, transparent 0, #000 3%, #000 97%, transparent 100%),
      linear-gradient(to bottom, transparent 0, #000 6%, #000 94%, transparent 100%);
  }
  .museum-home-page[data-view="index"] .reference-timeline article::before {
    top: 3px;
  }
}

/* Overview acceptance source rules. A final scoped cascade is loaded from
   overview-acceptance.css after this retained compatibility stylesheet. */
.museum-home-page[data-view="index"] {
  background:
    radial-gradient(circle at 13% 3%, rgba(255, 255, 255, .78), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(237, 107, 36, .025), transparent 22%),
    #fbf7f0;
}
.museum-home-page[data-view="index"] .reference-hero {
  border-bottom: 0;
}
.museum-home-page[data-view="index"] .reference-actions .reference-text-link,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: max-content;
  max-width: 100%;
  text-decoration: none;
  white-space: nowrap;
}
.museum-home-page[data-view="index"] .reference-actions .reference-text-link span,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link span {
  margin-left: 0;
}
.museum-home-page[data-view="index"] .reference-actions .reference-text-link::after,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link::after {
  position: absolute;
  right: 0;
  bottom: -4px;
  left: 0;
  height: 1px;
  background: currentColor;
  content: "";
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 160ms ease;
}
.museum-home-page[data-view="index"] .reference-actions .reference-text-link:hover,
.museum-home-page[data-view="index"] .reference-actions .reference-text-link:focus-visible,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link:hover,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link:focus-visible {
  text-decoration: none;
}
.museum-home-page[data-view="index"] .reference-actions .reference-text-link:hover::after,
.museum-home-page[data-view="index"] .reference-actions .reference-text-link:focus-visible::after,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link:hover::after,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link:focus-visible::after {
  transform: scaleX(1);
}
.museum-home-page[data-view="index"] .reference-project-card__copy {
  min-height: 116px;
  padding: 15px 16px 0;
}
.museum-home-page[data-view="index"] .reference-project-card__media {
  margin: 12px 10px;
}
.museum-home-page[data-view="index"] .reference-project-card__link {
  min-height: 32px;
  padding: 0 16px 12px;
}
.museum-home-page[data-view="index"] .reference-studio {
  position: relative;
  display: grid;
  grid-template-columns: 116px minmax(0, 1.35fr) minmax(300px, .9fr);
  gap: 30px;
  align-items: center;
  overflow: hidden;
  margin-top: 20px;
  padding: 26px 96px 26px 30px !important;
  border: 1px solid rgba(65, 52, 37, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .18);
}
.museum-home-page[data-view="index"] .reference-studio::after {
  position: absolute;
  right: 17px;
  bottom: 8px;
  width: 62px;
  aspect-ratio: 300 / 258;
  background: url("home/layers/shore-object-sailboat-v1.png") center / contain no-repeat;
  content: "";
  opacity: .52;
  pointer-events: none;
}
.museum-home-page[data-view="index"] .reference-studio__portrait {
  width: 108px;
  height: 108px;
  border: 0;
  border-radius: 50%;
  background-image: url("home/content/about-hero-watercolor-v3.png");
  background-position: 64% 42%;
  background-size: 355%;
  box-shadow: inset 0 0 0 1px rgba(65, 52, 37, .1);
}
.museum-home-page[data-view="index"] .reference-studio__copy {
  min-width: 0;
}
.museum-home-page[data-view="index"] .reference-studio__copy h2,
.museum-home-page[data-view="index"] .reference-contact h2 {
  margin: 0 0 16px;
  color: #211f1b;
  font-family: var(--shore-serif);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0;
}
.museum-home-page[data-view="index"] .reference-studio__copy > p {
  margin: 0 0 12px;
  color: #5f5a52;
  font-size: 13px;
  line-height: 1.7;
}
.museum-home-page[data-view="index"] .reference-studio__copy .reference-interests {
  margin-bottom: 0;
  color: #3f3a34;
}
.museum-home-page[data-view="index"] .reference-contact {
  align-self: stretch;
  min-width: 0;
  padding: 4px 0 4px 32px;
  border-left: 1px solid rgba(65, 52, 37, .16);
}
.museum-home-page[data-view="index"] .reference-contact-links {
  display: grid;
  gap: 0;
  margin: 0;
}
.museum-home-page[data-view="index"] .reference-contact-links a,
.museum-home-page[data-view="index"] .reference-contact-links a:last-child {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 38px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #403b35;
  font-family: var(--shore-sans);
  font-size: 13px;
  text-decoration: none;
}
.museum-home-page[data-view="index"] .reference-contact-links a:hover,
.museum-home-page[data-view="index"] .reference-contact-links a:focus-visible,
.museum-home-page[data-view="index"] .reference-contact-links a:last-child:hover,
.museum-home-page[data-view="index"] .reference-contact-links a:last-child:focus-visible {
  background: transparent;
  color: #315f8a;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.museum-home-page[data-view="index"] .reference-contact-links .material-symbols-rounded {
  color: #4ba7bd;
  font-family: "Material Symbols Rounded";
  font-size: 20px;
  font-weight: 300;
  line-height: 1;
}

@media (max-width: 760px) {
  .museum-home-page[data-view="index"] .museum-header .museum-nav {
    grid-template-columns: repeat(5, auto);
  }
  .museum-home-page[data-view="index"] .reference-project-card__copy {
    min-height: 0;
  }
  .museum-home-page[data-view="index"] .reference-timeline article::before {
    top: 6px;
  }
  .museum-home-page[data-view="index"] .reference-studio {
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 22px;
    padding: 24px 20px 72px !important;
  }
  .museum-home-page[data-view="index"] .reference-studio::after {
    right: 14px;
    bottom: 10px;
    width: 48px;
  }
  .museum-home-page[data-view="index"] .reference-studio__portrait {
    width: 82px;
    height: 82px;
  }
  .museum-home-page[data-view="index"] .reference-contact {
    grid-column: 1 / -1;
    padding: 22px 0 0;
    border-top: 1px solid rgba(65, 52, 37, .16);
    border-left: 0;
  }
}

/* Overview visual acceptance: keep these rules after every legacy Shore block. */
.museum-home-page[data-view="index"] {
  background:
    radial-gradient(circle at 13% 3%, rgba(255, 255, 255, .78), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(237, 107, 36, .025), transparent 22%),
    #fbf7f0;
}
.museum-home-page[data-view="index"] .reference-actions .reference-text-link,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: max-content;
  max-width: 100%;
  text-decoration: none;
  white-space: nowrap;
}
.museum-home-page[data-view="index"] .reference-actions .reference-text-link span,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link span {
  margin-left: 0;
}
.museum-home-page[data-view="index"] .reference-actions .reference-text-link:hover,
.museum-home-page[data-view="index"] .reference-actions .reference-text-link:focus-visible,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link:hover,
.museum-home-page[data-view="index"] .reference-section-head .reference-text-link:focus-visible {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}
.museum-home-page[data-view="index"] .reference-project-card__copy {
  min-height: 116px;
  padding: 15px 16px 0;
}
.museum-home-page[data-view="index"] .reference-project-card__media {
  margin: 12px 10px;
}
.museum-home-page[data-view="index"] .reference-project-card__link {
  min-height: 32px;
  padding: 0 16px 12px;
}
.museum-home-page[data-view="index"] .reference-studio {
  display: grid;
  grid-template-columns: 116px minmax(0, 1.35fr) minmax(300px, .9fr);
  gap: 30px;
  align-items: center;
  margin-top: 20px;
  padding: 26px 30px;
  border: 1px solid rgba(65, 52, 37, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .18);
}
.museum-home-page[data-view="index"] .reference-studio__portrait {
  width: 108px;
  height: 108px;
  border: 0;
  border-radius: 50%;
  background-image: url("home/content/about-hero-watercolor-v3.png");
  background-position: 64% 42%;
  background-size: 355%;
  box-shadow: inset 0 0 0 1px rgba(65, 52, 37, .1);
}
.museum-home-page[data-view="index"] .reference-studio__copy {
  min-width: 0;
}
.museum-home-page[data-view="index"] .reference-studio__copy h2,
.museum-home-page[data-view="index"] .reference-contact h2 {
  margin: 0 0 16px;
  color: #211f1b;
  font-family: var(--shore-serif);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0;
}
.museum-home-page[data-view="index"] .reference-studio__copy > p {
  margin: 0 0 12px;
  color: #5f5a52;
  font-size: 13px;
  line-height: 1.7;
}
.museum-home-page[data-view="index"] .reference-studio__copy .reference-interests {
  margin-bottom: 0;
  color: #3f3a34;
}
.museum-home-page[data-view="index"] .reference-contact {
  align-self: stretch;
  min-width: 0;
  padding: 4px 0 4px 32px;
  border-left: 1px solid rgba(65, 52, 37, .16);
}
.museum-home-page[data-view="index"] .reference-contact-links {
  display: grid;
  gap: 0;
  margin: 0;
}
.museum-home-page[data-view="index"] .reference-contact-links a,
.museum-home-page[data-view="index"] .reference-contact-links a:last-child {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 38px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #403b35;
  font-family: var(--shore-sans);
  font-size: 13px;
  text-decoration: none;
}
.museum-home-page[data-view="index"] .reference-contact-links a:hover,
.museum-home-page[data-view="index"] .reference-contact-links a:focus-visible {
  color: #315f8a;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.museum-home-page[data-view="index"] .reference-contact-links .material-symbols-rounded {
  color: #4ba7bd;
  font-family: "Material Symbols Rounded";
  font-size: 20px;
  font-weight: 300;
  line-height: 1;
}

@media (max-width: 760px) {
  .museum-home-page[data-view="index"] .reference-project-card__copy {
    min-height: 0;
  }
  .museum-home-page[data-view="index"] .reference-studio {
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 22px;
    padding: 24px 20px;
  }
  .museum-home-page[data-view="index"] .reference-studio__portrait {
    width: 82px;
    height: 82px;
  }
  .museum-home-page[data-view="index"] .reference-contact {
    grid-column: 1 / -1;
    padding: 22px 0 0;
    border-top: 1px solid rgba(65, 52, 37, .16);
    border-left: 0;
  }
}

/* Accepted detail-page topbar and watercolor treatment, scoped to Overview so
   the illustrated Shore scene keeps its independent header and artwork. */
.museum-home-page[data-view="index"] .museum-header.content-header--detail {
  position: relative;
  inset: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: min(1120px, calc(100% - 48px));
  min-height: 88px;
  margin: 0 auto;
  padding: 0;
  border: 0;
  background: transparent;
  transform: none;
}
.museum-home-page[data-view="index"] .museum-header .museum-brand strong {
  color: #315f8a;
  font-family: var(--shore-script);
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0;
}
.museum-home-page[data-view="index"] .museum-header .museum-brand__quick {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.museum-home-page[data-view="index"] .museum-header .museum-brand__quick > span {
  color: var(--museum-orange);
  font-family: var(--shore-sans);
}
.museum-home-page[data-view="index"] .museum-header .museum-nav {
  gap: clamp(22px, 3vw, 40px);
}
.museum-home-page[data-view="index"] .museum-header .museum-nav a {
  color: #5f5a54;
  font-size: 11px;
}
.museum-home-page[data-view="index"] .index-view {
  padding-top: 0;
}
.museum-home-page[data-view="index"] .reference-hero {
  display: block;
  min-height: 390px;
  max-height: none;
  border-bottom: 1px solid rgba(76, 58, 36, .14);
  background: transparent;
}
.museum-home-page[data-view="index"] .reference-hero::before,
.museum-home-page[data-view="index"] .reference-hero::after {
  display: none;
}
.museum-home-page[data-view="index"] .reference-hero__copy {
  display: grid;
  grid-template-columns: minmax(410px, 1.2fr) minmax(230px, .65fr) minmax(280px, .8fr);
  column-gap: clamp(26px, 3vw, 46px);
  width: min(1120px, calc(100% - 48px));
  min-height: 390px;
  margin: 0 auto;
  padding: 36px 0 24px;
}
.museum-home-page[data-view="index"] .reference-identity {
  grid-column: 1;
  align-self: center;
}
.museum-home-page[data-view="index"] .reference-overview-meta {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  min-height: 210px;
  padding: 24px 0 20px 28px;
}
.museum-home-page[data-view="index"] .reference-overview-figure {
  position: relative;
  grid-column: 3;
  grid-row: 1;
  align-self: stretch;
  height: auto;
  min-height: 330px;
  overflow: hidden;
}
.museum-home-page[data-view="index"] .reference-overview-figure picture,
.museum-home-page[data-view="index"] .reference-overview-figure img {
  display: block;
  width: 100%;
  height: 100%;
}
.museum-home-page[data-view="index"] .reference-overview-figure picture {
  -webkit-mask-image:
    linear-gradient(to right, transparent 0, #000 12%, #000 96%, transparent 100%),
    linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image:
    linear-gradient(to right, transparent 0, #000 12%, #000 96%, transparent 100%),
    linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%);
  mask-composite: intersect;
}
.museum-home-page[data-view="index"] .reference-overview-figure img {
  object-fit: contain;
  object-position: right bottom;
  filter: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link {
  gap: 12px;
}
.museum-home-page[data-view="index"] .reference-project-card__link .reference-project-card__tags {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0;
  color: #25231f;
  font-size: inherit;
  transition: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link .reference-project-card__tags span {
  padding: 3px 7px;
  border: 1px solid rgba(65, 52, 37, .24);
  border-radius: 999px;
  color: #25231f;
  font-family: var(--shore-mono);
  font-size: 7px;
  transition: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link:hover .reference-project-card__tags,
.museum-home-page[data-view="index"] .reference-project-card__link:focus-visible .reference-project-card__tags,
.museum-home-page[data-view="index"] .reference-project-card__link:hover .reference-project-card__tags span,
.museum-home-page[data-view="index"] .reference-project-card__link:focus-visible .reference-project-card__tags span {
  transform: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link .reference-project-card__arrow {
  flex: 0 0 auto;
  color: var(--museum-orange);
  font-size: 18px;
}
.museum-home-page[data-view="index"] .reference-timeline article::before {
  top: -3px;
}
.museum-home-page[data-view="index"] .reference-footer {
  display: flex;
  justify-content: center;
  padding: 18px 0 30px;
  color: rgba(49, 95, 138, .58);
  font-family: var(--shore-script);
  font-size: 15px;
}
.museum-home-page[data-view="index"] .reference-footer > span > span {
  margin-right: 8px;
  color: #315f8a;
}

@media (max-width: 980px) {
  .museum-home-page[data-view="index"] .reference-hero__copy {
    grid-template-columns: minmax(330px, 1fr) minmax(210px, .65fr) minmax(210px, .72fr);
    column-gap: 22px;
  }
}

@media (max-width: 760px) {
  .museum-home-page[data-view="index"] .museum-header.content-header--detail {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
    width: calc(100% - 32px);
    min-height: 0;
    padding: 12px 0 10px;
  }
  .museum-home-page[data-view="index"] .museum-header .museum-nav {
    display: grid !important;
    grid-template-columns: repeat(4, auto);
    justify-content: space-between;
    gap: 8px;
    width: 100%;
  }
  .museum-home-page[data-view="index"] .museum-header .museum-nav a {
    font-size: 10px;
    white-space: nowrap;
  }
  .museum-home-page[data-view="index"] .reference-hero__copy {
    display: grid;
    grid-template-columns: 1fr;
    width: calc(100% - 36px);
    min-height: 0;
    padding: 42px 0 0;
  }
  .museum-home-page[data-view="index"] .reference-identity,
  .museum-home-page[data-view="index"] .reference-overview-meta,
  .museum-home-page[data-view="index"] .reference-overview-figure {
    grid-column: 1;
    grid-row: auto;
  }
  .museum-home-page[data-view="index"] .reference-overview-meta {
    min-height: 0;
    margin-top: 24px;
    padding: 18px 0 0;
  }
  .museum-home-page[data-view="index"] .reference-overview-meta p {
    display: block;
    margin: 0 0 8px;
  }
  .museum-home-page[data-view="index"] .reference-overview-figure {
    min-height: 280px;
    margin-top: 8px;
  }
  .museum-home-page[data-view="index"] .reference-overview-figure picture {
    -webkit-mask-image:
      linear-gradient(to right, transparent 0, #000 3%, #000 97%, transparent 100%),
      linear-gradient(to bottom, transparent 0, #000 6%, #000 94%, transparent 100%);
    mask-image:
      linear-gradient(to right, transparent 0, #000 3%, #000 97%, transparent 100%),
      linear-gradient(to bottom, transparent 0, #000 6%, #000 94%, transparent 100%);
  }
  .museum-home-page[data-view="index"] .reference-timeline article::before {
    top: 3px;
  }
}

/* Final cascade lock for the annotated P2 Works List pass. */
.works-hub-page.museum-pavilion-page {
  background: #f7f3eb;
}
.works-hub-page .museum-pavilion-main {
  padding: 0;
  background: #f7f3eb;
}
.works-hub-page .museum-pavilion-shell {
  width: 100%;
  max-width: none;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: #f7f3eb;
  box-shadow: none;
}
.works-hub-page .museum-header {
  width: min(1120px, calc(100% - 64px));
}
.works-hub-page .museum-pavilion-hero {
  min-height: 440px;
  border-bottom: 0;
  background: #fbf7ef;
}
.works-hub-page .museum-pavilion-hero__art {
  inset: 0 0 0 auto;
  width: 54%;
}
.works-hub-page .museum-pavilion-hero__art img {
  object-position: 88% 60%;
}
.works-hub-page .museum-pavilion-hero__copy {
  width: min(620px, 53%);
  min-height: 440px;
  padding-left: max(48px, calc((100vw - 1120px) / 2));
  background: #fbf7ef;
}
.works-hub-page .museum-gallery {
  padding-top: 8px;
  background: #f7f3eb;
}

@media (max-width: 900px) {
  .works-hub-page .museum-header {
    width: calc(100% - 48px);
  }
  .works-hub-page .museum-pavilion-hero__copy {
    width: 58%;
    padding-left: 44px;
  }
  .works-hub-page .museum-pavilion-hero__art {
    width: 50%;
  }
}

@media (max-width: 760px) {
  .works-hub-page .museum-header {
    width: calc(100% - 36px);
  }
  .works-hub-page .museum-pavilion-hero {
    min-height: 500px;
  }
  .works-hub-page .museum-pavilion-hero__art {
    inset: auto 0 0;
    width: 100%;
    height: 58%;
  }
  .works-hub-page .museum-pavilion-hero__art img {
    object-position: 78% 58%;
  }
  .works-hub-page .museum-pavilion-hero__copy {
    width: 100%;
    min-height: 500px;
    padding-left: 20px;
    background: linear-gradient(180deg, #fbf7ef 0 45%, rgba(251, 247, 239, .82) 61%, transparent 78%);
  }
  .works-hub-page .museum-gallery {
    padding-top: 0;
  }
}

/* --------------------------------------------------------------------------
   P2 annotated Works List corrections
   Keep the Hero illustration local to the right, remove the outer-card
   treatment, and separate Hero/gallery with color rather than rules.
---------------------------------------------------------------------------- */
.works-hub-page.museum-pavilion-page {
  background: #f7f3eb;
}
.works-hub-page .museum-pavilion-main {
  padding: 0;
  background: #f7f3eb;
}
.works-hub-page .museum-pavilion-shell {
  width: 100%;
  max-width: none;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: #f7f3eb;
  box-shadow: none;
}
.works-hub-page .museum-header {
  width: min(1120px, calc(100% - 64px));
}
.works-hub-page .museum-pavilion-hero {
  min-height: 440px;
  border-bottom: 0;
  background: #fbf7ef;
}
.works-hub-page .museum-pavilion-hero__art {
  inset: 0 0 0 auto;
  width: 54%;
  overflow: hidden;
}
.works-hub-page .museum-pavilion-hero__art img {
  object-fit: cover;
  object-position: 88% 60%;
}
.works-hub-page .museum-pavilion-hero__copy {
  width: min(620px, 53%);
  min-height: 440px;
  padding-left: max(48px, calc((100vw - 1120px) / 2));
  background: #fbf7ef;
}
.works-hub-page .museum-gallery {
  padding-top: 8px;
  background: #f7f3eb;
}

@media (max-width: 900px) {
  .works-hub-page .museum-header {
    width: calc(100% - 48px);
  }
  .works-hub-page .museum-pavilion-hero__copy {
    width: 58%;
    padding-left: 44px;
  }
  .works-hub-page .museum-pavilion-hero__art {
    width: 50%;
  }
}

@media (max-width: 760px) {
  .works-hub-page .museum-header {
    width: calc(100% - 36px);
  }
  .works-hub-page .museum-pavilion-hero {
    min-height: 500px;
  }
  .works-hub-page .museum-pavilion-hero__art {
    inset: auto 0 0;
    width: 100%;
    height: 58%;
  }
  .works-hub-page .museum-pavilion-hero__art img {
    object-position: 78% 58%;
  }
  .works-hub-page .museum-pavilion-hero__copy {
    width: 100%;
    min-height: 500px;
    padding-left: 20px;
    background: linear-gradient(180deg, #fbf7ef 0 45%, rgba(251, 247, 239, .82) 61%, transparent 78%);
  }
  .works-hub-page .museum-gallery {
    padding-top: 0;
  }
}

/* --------------------------------------------------------------------------
   P1 Overview — compact editorial scan
---------------------------------------------------------------------------- */
.museum-home-page[data-view="index"] .museum-header {
  top: 22px;
  width: min(1160px, calc(100% - 48px));
  min-height: 42px;
  grid-template-columns: 1fr auto;
  align-items: center;
}
.museum-home-page[data-view="index"] .museum-brand strong {
  color: #294f77;
  font-family: var(--shore-script);
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 0;
}
.museum-home-page[data-view="index"] .museum-nav {
  gap: clamp(22px, 3vw, 42px);
}
.museum-home-page[data-view="index"] .museum-nav a {
  color: rgba(25, 24, 21, .82);
  font-size: 10px;
}
.museum-home-page[data-view="index"] .reference-hero {
  min-height: 360px;
  max-height: 380px;
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 82%, rgba(176, 213, 225, .3), transparent 27%),
    #f8f4ec;
}
.museum-home-page[data-view="index"] .reference-hero::after {
  display: none;
}
.museum-home-page[data-view="index"] .reference-hero__copy {
  display: grid;
  grid-template-columns: minmax(390px, 1.25fr) minmax(205px, .62fr) minmax(210px, .55fr);
  column-gap: clamp(24px, 4vw, 58px);
  width: min(1160px, calc(100% - 48px));
  min-height: 360px;
  padding: 82px 0 24px;
}
.museum-home-page[data-view="index"] .reference-identity {
  grid-column: 1;
  align-self: center;
}
.museum-home-page[data-view="index"] .reference-hello,
.museum-home-page[data-view="index"] .reference-identity h1,
.museum-home-page[data-view="index"] .reference-role,
.museum-home-page[data-view="index"] .reference-intro,
.museum-home-page[data-view="index"] .reference-actions {
  grid-column: auto;
}
.museum-home-page[data-view="index"] .reference-hello {
  margin-bottom: 7px;
  font-size: 19px;
}
.museum-home-page[data-view="index"] .reference-hero h1 {
  font-size: clamp(46px, 4.4vw, 64px);
  line-height: .94;
}
.museum-home-page[data-view="index"] .reference-role {
  margin: 8px 0 12px;
  font-size: 18px;
}
.museum-home-page[data-view="index"] .reference-intro {
  max-width: 440px;
  font-size: 12px;
  line-height: 1.62;
}
.museum-home-page[data-view="index"] .reference-actions {
  gap: 24px;
  margin-top: 16px;
}
.museum-home-page[data-view="index"] .reference-primary {
  min-height: 40px;
  padding-inline: 20px;
  font-size: 10px;
}
.museum-home-page[data-view="index"] .reference-overview-meta {
  grid-column: 2;
  grid-row: auto;
  align-self: center;
  min-height: 168px;
  padding: 12px 0 12px 26px;
  border-left: 1px solid rgba(76, 58, 36, .18);
}
.museum-home-page[data-view="index"] .reference-overview-meta p {
  margin: 0 0 11px;
  font-size: 9px;
  line-height: 1.5;
}
.museum-home-page[data-view="index"] .reference-overview-meta strong {
  font-family: var(--shore-sans);
  font-size: 16px;
  font-weight: 700;
}
.museum-home-page[data-view="index"] .reference-overview-note {
  margin-top: 22px !important;
  color: rgba(38, 34, 28, .68);
  font-family: var(--shore-script);
  font-size: 14px !important;
  transform: rotate(-2deg);
}
.museum-home-page[data-view="index"] .reference-overview-figure {
  position: relative;
  grid-column: 3;
  align-self: end;
  height: 238px;
  pointer-events: none;
}
.museum-home-page[data-view="index"] .reference-overview-figure picture,
.museum-home-page[data-view="index"] .reference-overview-figure img {
  display: block;
  width: 100%;
  height: 100%;
}
.museum-home-page[data-view="index"] .reference-overview-figure img {
  object-fit: contain;
  object-position: center bottom;
  filter: saturate(.86) contrast(.96);
}
.museum-home-page[data-view="index"] .reference-shell {
  width: min(1160px, calc(100% - 48px));
}
.museum-home-page[data-view="index"] .reference-home .index-section {
  padding: 38px 0;
}
.museum-home-page[data-view="index"] .reference-section-head {
  align-items: center;
  margin-bottom: 16px;
}
.museum-home-page[data-view="index"] .reference-section-head h2 {
  position: relative;
  font-size: 23px;
  letter-spacing: -.035em;
}
.museum-home-page[data-view="index"] .reference-section-head h2::after {
  width: 34px;
  margin-top: 7px;
}
.museum-home-page[data-view="index"] .reference-projects {
  gap: 16px;
}
.museum-home-page[data-view="index"] .reference-project-card {
  min-height: 0;
  border-color: rgba(83, 62, 37, .13);
  border-radius: 8px;
  box-shadow: 0 8px 22px rgba(78, 58, 34, .035);
}
.museum-home-page[data-view="index"] .reference-project-card__copy {
  min-height: 142px;
  padding: 15px 16px 10px;
}
.museum-home-page[data-view="index"] .reference-project-card .index-project__id {
  margin-bottom: 3px;
  color: var(--museum-orange);
  font-family: var(--shore-display);
  font-size: 20px;
}
.museum-home-page[data-view="index"] .reference-project-card h3 {
  max-width: 270px;
  margin-bottom: 7px;
  font-size: clamp(18px, 1.55vw, 23px);
  line-height: .98;
}
.museum-home-page[data-view="index"] .reference-project-card p {
  max-width: 300px;
  margin: 0;
  font-size: 9px;
  line-height: 1.48;
}
.museum-home-page[data-view="index"] .reference-project-card__tags {
  margin-top: 8px;
}
.museum-home-page[data-view="index"] .reference-project-card__media {
  height: 180px;
  margin: 0 10px;
  border-radius: 6px;
  background: #eaf2fb;
}
.museum-home-page[data-view="index"] .reference-project-card__media img {
  object-position: center;
}
.museum-home-page[data-view="index"] .reference-project-card__link {
  min-height: 42px;
  padding: 10px 16px;
  border-top: 0;
  font-size: 9px;
}
.museum-home-page[data-view="index"] .reference-timeline {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
  padding-top: 16px;
}
.museum-home-page[data-view="index"] .reference-timeline::before {
  top: 16px;
}
.museum-home-page[data-view="index"] .reference-timeline article {
  padding: 19px 12px 0 12px;
}
.museum-home-page[data-view="index"] .reference-timeline article::before {
  top: -4px;
  left: 10px;
  width: 6px;
  height: 6px;
}
.museum-home-page[data-view="index"] .reference-timeline time {
  font-size: 8px;
}
.museum-home-page[data-view="index"] .reference-timeline h3 {
  margin: 10px 0 6px;
  font-size: 10px;
}
.museum-home-page[data-view="index"] .reference-timeline p {
  max-width: 180px;
  font-family: var(--shore-sans);
  font-size: 8px;
  line-height: 1.5;
}
.museum-home-page[data-view="index"] .reference-studio {
  display: grid;
  grid-template-columns: 92px minmax(280px, 1.25fr) minmax(145px, .55fr) minmax(180px, .7fr);
  gap: 24px;
  align-items: center;
  margin: 20px 0 0;
  padding: 24px !important;
  border: 1px solid rgba(83, 62, 37, .12);
  border-radius: 9px;
  background: rgba(255, 255, 255, .18);
}
.museum-home-page[data-view="index"] .reference-studio__portrait {
  width: 88px;
  height: 88px;
  border-radius: 50%;
}
.museum-home-page[data-view="index"] .reference-studio__portrait img {
  top: -179px !important;
  left: -106px !important;
  width: 260px !important;
}
.museum-home-page[data-view="index"] .reference-studio h2 {
  margin: 0 0 7px;
  color: #171611;
  font-family: var(--shore-display);
  font-size: 17px;
  font-weight: 540;
}
.museum-home-page[data-view="index"] .reference-studio__copy > p,
.museum-home-page[data-view="index"] .reference-contact-intro p {
  max-width: 420px;
  margin: 0 0 7px;
  color: rgba(24, 23, 19, .7);
  font-size: 9px;
  line-height: 1.55;
}
.museum-home-page[data-view="index"] .reference-studio__copy .reference-interests {
  color: rgba(24, 23, 19, .78);
}
.museum-home-page[data-view="index"] .reference-interests span {
  color: var(--museum-orange);
}
.museum-home-page[data-view="index"] .reference-contact-intro {
  align-self: start;
  padding-top: 4px;
}
.museum-home-page[data-view="index"] .reference-contact-links a {
  min-height: 30px;
  padding: 6px 0;
  font-size: 9px;
}
.museum-home-page[data-view="index"] .reference-contact-links a:last-child {
  margin-top: 4px;
  padding: 8px 12px;
  border-radius: 999px;
  background: var(--museum-orange);
  color: white;
}
.museum-home-page[data-view="index"] .reference-footer {
  padding: 16px 0 24px;
}

@media (max-width: 980px) {
  .museum-home-page[data-view="index"] .reference-hero {
    min-height: 390px;
    max-height: none;
  }
  .museum-home-page[data-view="index"] .reference-hero__copy {
    grid-template-columns: minmax(360px, 1.2fr) minmax(190px, .65fr) 170px;
    min-height: 390px;
    column-gap: 22px;
  }
  .museum-home-page[data-view="index"] .reference-overview-figure {
    height: 190px;
  }
  .museum-home-page[data-view="index"] .reference-studio {
    grid-template-columns: 88px minmax(260px, 1.3fr) minmax(170px, .7fr);
  }
  .museum-home-page[data-view="index"] .reference-contact-intro {
    display: none;
  }
}

@media (max-width: 760px) {
  .museum-home-page[data-view="index"] .museum-header {
    top: 14px;
    width: calc(100% - 36px);
  }
  .museum-home-page[data-view="index"] .museum-nav {
    display: none !important;
  }
  .museum-home-page[data-view="index"] .reference-hero {
    min-height: 535px;
  }
  .museum-home-page[data-view="index"] .reference-hero__copy {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 130px;
    grid-template-rows: auto auto;
    width: calc(100% - 36px);
    min-height: 535px;
    padding: 72px 0 20px;
  }
  .museum-home-page[data-view="index"] .reference-identity {
    grid-column: 1 / -1;
  }
  .museum-home-page[data-view="index"] .reference-hero h1 {
    font-size: clamp(43px, 13vw, 58px);
  }
  .museum-home-page[data-view="index"] .reference-intro {
    max-width: 420px;
  }
  .museum-home-page[data-view="index"] .reference-overview-meta {
    grid-column: 1;
    align-self: end;
    min-height: 0;
    margin-top: 18px;
    padding: 14px 12px 0 0;
    border-top: 1px solid rgba(76, 58, 36, .16);
    border-left: 0;
  }
  .museum-home-page[data-view="index"] .reference-overview-note {
    display: none;
  }
  .museum-home-page[data-view="index"] .reference-overview-figure {
    grid-column: 2;
    height: 150px;
  }
  .museum-home-page[data-view="index"] .reference-shell {
    width: calc(100% - 32px);
  }
  .museum-home-page[data-view="index"] .reference-home .index-section {
    padding: 32px 0;
  }
  .museum-home-page[data-view="index"] .reference-section-head {
    gap: 14px;
  }
  .museum-home-page[data-view="index"] .reference-section-head h2 {
    font-size: 22px;
  }
  .museum-home-page[data-view="index"] .reference-projects {
    grid-template-columns: 1fr;
  }
  .museum-home-page[data-view="index"] .reference-project-card__copy {
    min-height: 0;
  }
  .museum-home-page[data-view="index"] .reference-project-card__media {
    height: min(58vw, 260px);
  }
  .museum-home-page[data-view="index"] .reference-timeline {
    grid-template-columns: 1fr;
    gap: 0;
    padding-top: 0;
  }
  .museum-home-page[data-view="index"] .reference-timeline::before {
    top: 0;
    bottom: 0;
    left: 3px;
    width: 1px;
    height: auto;
  }
  .museum-home-page[data-view="index"] .reference-timeline article {
    padding: 0 0 26px 24px;
  }
  .museum-home-page[data-view="index"] .reference-timeline article::before {
    top: 3px;
    left: 0;
  }
  .museum-home-page[data-view="index"] .reference-studio {
    grid-template-columns: 72px 1fr;
    gap: 18px;
    padding: 20px !important;
  }
  .museum-home-page[data-view="index"] .reference-studio__portrait {
    width: 72px;
    height: 72px;
    align-self: start;
  }
  .museum-home-page[data-view="index"] .reference-studio__portrait img {
    top: -147px !important;
    left: -87px !important;
    width: 214px !important;
  }
  .museum-home-page[data-view="index"] .reference-contact-intro {
    display: block;
    grid-column: 1 / -1;
    padding-top: 8px;
    border-top: 1px solid rgba(76, 58, 36, .13);
  }
  .museum-home-page[data-view="index"] .reference-contact-links {
    grid-column: 1 / -1;
  }
  .museum-home-page[data-view="index"] .reference-footer {
    gap: 7px;
  }
}

@media (max-width: 430px) {
  .museum-home-page[data-view="index"] .reference-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }
  .museum-home-page[data-view="index"] .reference-hero {
    min-height: 575px;
  }
  .museum-home-page[data-view="index"] .reference-hero__copy {
    min-height: 575px;
  }
  .museum-home-page[data-view="index"] .reference-section-head {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* --------------------------------------------------------------------------
   P2 Works List — alternating editorial case-study rows
---------------------------------------------------------------------------- */
.works-hub-page.museum-pavilion-page {
  background-color: #f7f3eb;
  background-image:
    repeating-linear-gradient(0deg, rgba(67, 52, 34, .016) 0 1px, transparent 1px 7px),
    url("home/shore-watercolor-texture.svg");
}
.works-hub-page .museum-pavilion-main {
  padding: 16px 16px 0;
}
.works-hub-page .museum-pavilion-shell {
  width: min(1180px, 100%);
  border: 1px solid rgba(76, 58, 36, .12);
  border-radius: 12px;
  background: rgba(248, 244, 236, .97);
  box-shadow: 0 20px 58px rgba(74, 52, 31, .065);
}
.works-hub-page .museum-header {
  top: 26px;
  width: min(1088px, calc(100% - 80px));
  min-height: 40px;
  grid-template-columns: 1fr auto;
  align-items: center;
}
.works-hub-page .museum-brand strong {
  color: #294f77;
  font-family: var(--shore-script);
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 0;
}
.works-hub-page .museum-nav {
  justify-content: flex-end;
  gap: clamp(22px, 3vw, 40px);
}
.works-hub-page .museum-nav a {
  color: rgba(25, 24, 21, .82);
  font-size: 10px;
}
.works-hub-page .museum-pavilion-hero {
  min-height: 430px;
  border-bottom: 1px solid rgba(76, 58, 36, .12);
  background: #f8f4ec;
}
.works-hub-page .museum-pavilion-hero::before {
  display: none;
}
.works-hub-page .museum-pavilion-hero__art {
  inset: 0;
}
.works-hub-page .museum-pavilion-hero__art img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center 61%;
  filter: saturate(.9) contrast(.97) brightness(1.015);
}
.works-hub-page .museum-pavilion-hero__copy {
  display: flex;
  width: min(570px, 54%);
  min-height: 430px;
  flex-direction: column;
  justify-content: center;
  padding: 92px 0 44px 66px;
  background: transparent;
  backdrop-filter: none;
}
.works-hub-page .museum-pavilion-number {
  margin: 0 0 7px;
  color: var(--museum-orange);
  font-family: var(--shore-script);
  font-size: 19px;
  line-height: 1;
}
.works-hub-page .museum-pavilion-hero h1 {
  font-size: clamp(54px, 6vw, 78px);
  line-height: .92;
}
.works-hub-page .museum-pavilion-hero p:last-child {
  max-width: 480px;
  margin: 22px 0 0;
  font-size: 12px;
  line-height: 1.65;
}
.works-hub-page .museum-gallery {
  padding: 20px 66px 0;
}
.works-hub-page .works-grid {
  display: block;
  padding: 0;
}
.works-hub-page .works-card {
  --works-copy-content-width: 420px;
  --works-copy-index-width: 44px;
  --works-copy-gap: 14px;
  display: grid;
  grid-template-columns: calc(var(--works-copy-index-width) + var(--works-copy-gap) + var(--works-copy-content-width)) minmax(0, 1fr);
  gap: clamp(38px, 6vw, 78px);
  align-items: center;
  min-height: 350px;
  padding: 30px 0;
  overflow: visible;
  border: 0;
  border-bottom: 1px solid rgba(76, 58, 36, .14);
  border-radius: 0;
  background: transparent;
  color: var(--museum-ink);
  text-decoration: none;
  transition: border-color 220ms ease;
}
@media (hover: hover) and (pointer: fine) {
  .works-hub-page .works-card {
    position: relative;
  }
  .works-hub-page .works-card::before {
    position: absolute;
    z-index: 0;
    inset: 0 -40px;
    border-radius: 32px;
    background: rgba(255, 255, 255, .62);
    box-shadow: 0 14px 34px rgba(64, 48, 34, .035);
    content: "";
    opacity: 0;
    pointer-events: none;
    transition: opacity 220ms ease;
  }
  .works-hub-page .works-card > * {
    position: relative;
    z-index: 1;
  }
  .works-hub-page .works-card:hover {
    border-bottom-color: transparent;
  }
  .works-hub-page .works-card:hover::before {
    opacity: 1;
  }
}
.works-hub-page .works-card:nth-child(odd) .works-card__copy {
  order: 1;
}
.works-hub-page .works-card:nth-child(odd) .works-card__media {
  order: 2;
}
.works-hub-page .works-card:nth-child(even) {
  grid-template-columns: minmax(0, 1fr) calc(var(--works-copy-index-width) + var(--works-copy-gap) + var(--works-copy-content-width));
}
.works-hub-page .works-card:nth-child(even) .works-card__media {
  order: 1;
}
.works-hub-page .works-card:nth-child(even) .works-card__copy {
  order: 2;
}
.works-hub-page .works-card__media {
  aspect-ratio: 1.82;
  overflow: hidden;
  border: 0;
  border-radius: 8px;
  background: #eaf2fb;
  box-shadow: 0 10px 28px rgba(64, 83, 103, .07);
}
.works-hub-page .works-card__media::after {
  display: none;
}
.works-hub-page .works-card__media picture,
.works-hub-page .works-card__media img {
  display: block;
  width: 100%;
  height: 100%;
}
.works-hub-page .works-card__media img {
  object-fit: cover;
  object-position: center;
  transition: transform 360ms cubic-bezier(.22, 1, .36, 1), filter 220ms ease;
}
.works-hub-page .works-card:hover .works-card__media img,
.works-hub-page .works-card:focus-visible .works-card__media img {
  transform: scale(1.012);
  filter: saturate(1.03);
}
.works-hub-page .works-card__copy {
  display: grid;
  grid-template-columns: var(--works-copy-index-width) minmax(0, var(--works-copy-content-width));
  gap: var(--works-copy-gap);
  min-height: 0;
  padding: 0;
}
.works-hub-page .works-card__copy > div {
  width: 100%;
  max-width: var(--works-copy-content-width);
}
.works-hub-page .works-card__copy > span {
  display: block;
  color: var(--museum-orange);
  font-family: var(--shore-display);
  font-size: 26px;
  line-height: 1;
}
.works-hub-page .works-card__copy h2 {
  max-width: var(--works-copy-content-width);
  margin: 0 0 24px;
  color: var(--museum-ink);
  font-family: var(--shore-display);
  font-size: clamp(25px, 2.7vw, 32px);
  font-weight: 520;
  line-height: .98;
  letter-spacing: -.035em;
}
.works-hub-page .works-card__copy p {
  max-width: var(--works-copy-content-width);
  margin: 0;
  color: rgba(25, 24, 21, .66);
  font-size: 12px;
  line-height: 1.58;
}
.works-hub-page .works-card__tags {
  gap: 6px;
  margin: 0 0 16px;
}
.works-hub-page .works-card__tags span {
  padding: 3px 8px;
  border-color: rgba(52, 43, 33, .2);
  background: rgba(255, 255, 255, .18);
  color: rgba(25, 24, 21, .78);
  font-size: 7px;
}
.works-hub-page .works-card__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  max-width: 330px;
  margin: 0 0 17px;
}
.works-hub-page .works-card__meta div {
  min-width: 0;
}
.works-hub-page .works-card__meta dt {
  margin-bottom: 3px;
  color: rgba(25, 24, 21, .48);
  font-family: var(--shore-mono);
  font-size: 7px;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.works-hub-page .works-card__meta dd {
  margin: 0;
  color: rgba(25, 24, 21, .78);
  font-size: 8px;
  line-height: 1.4;
}
.works-hub-page .works-card__link {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 12px;
  color: var(--museum-orange);
  font-size: 11px;
}
.works-hub-page .works-card__link b {
  color: inherit;
  font-size: 15px;
  font-weight: 400;
  transition: transform 180ms ease;
}
.works-hub-page .works-card:hover .works-card__link b,
.works-hub-page .works-card:focus-visible .works-card__link b {
  transform: translateX(4px);
}
.works-hub-page .works-card:focus-visible {
  background-color: rgba(238, 231, 220, .52);
  box-shadow: inset 0 0 0 1px rgba(76, 58, 36, .08), 0 14px 34px rgba(64, 48, 34, .05);
  outline: 2px solid var(--museum-orange);
  outline-offset: 6px;
}
.works-hub-page .museum-pavilion-footer {
  display: grid;
  grid-template-columns: 180px minmax(250px, 1fr) auto;
  gap: 30px;
  align-items: center;
  min-height: 150px;
  padding: 24px 66px;
  background: rgba(235, 226, 213, .42);
}
.works-hub-page .museum-pavilion-footer__objects {
  position: relative;
  width: 170px;
  height: 90px;
}
.works-hub-page .museum-pavilion-footer__objects picture,
.works-hub-page .museum-pavilion-footer__objects img {
  position: absolute;
  display: block;
}
.works-hub-page .museum-pavilion-footer__objects picture:first-child {
  left: 0;
  bottom: 0;
  width: 112px;
  transform: rotate(-5deg);
}
.works-hub-page .museum-pavilion-footer__objects picture:last-child {
  right: 0;
  bottom: 2px;
  width: 72px;
  transform: rotate(5deg);
}
.works-hub-page .museum-pavilion-footer__objects img {
  position: static;
  width: 100%;
  height: auto;
}
.works-hub-page .museum-pavilion-footer > p {
  margin: 0;
  color: rgba(25, 24, 21, .72);
  font-family: var(--shore-script);
  font-size: 20px;
  line-height: 1.15;
  transform: rotate(-2deg);
}
.works-hub-page .museum-pavilion-footer__cta {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  gap: 16px;
  padding: 9px 18px;
  border-radius: 999px;
  background: var(--museum-orange);
  color: white;
  font-size: 10px;
  font-weight: 600;
  text-decoration: none;
}
.works-hub-page .museum-pavilion-footer__cta:hover,
.works-hub-page .museum-pavilion-footer__cta:focus-visible {
  box-shadow: 0 9px 22px rgba(174, 78, 13, .18);
  outline: 2px solid var(--museum-orange);
  outline-offset: 3px;
}
.works-hub-page .museum-pavilion-footer__nav {
  grid-column: 2 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 22px;
  margin-top: -12px;
}
.works-hub-page .museum-pavilion-footer__nav a {
  color: rgba(25, 24, 21, .62);
  font-size: 8px;
  text-underline-offset: 4px;
}

@media (max-width: 900px) {
  .works-hub-page .museum-header {
    width: calc(100% - 72px);
  }
  .works-hub-page .museum-pavilion-hero__copy {
    width: 60%;
    padding-left: 44px;
  }
  .works-hub-page .museum-gallery {
    padding-inline: 44px;
  }
  .works-hub-page .works-card,
  .works-hub-page .works-card:nth-child(even) {
    grid-template-columns: minmax(230px, .78fr) minmax(360px, 1.22fr);
    gap: 34px;
  }
  .works-hub-page .museum-pavilion-footer {
    padding-inline: 44px;
  }
}

@media (max-width: 760px) {
  .works-hub-page .museum-pavilion-main {
    padding: 0;
  }
  .works-hub-page .museum-pavilion-shell {
    border: 0;
    border-radius: 0;
  }
  .works-hub-page .museum-header {
    top: 14px;
    width: calc(100% - 36px);
  }
  .works-hub-page .museum-nav {
    display: none !important;
  }
  .works-hub-page .museum-pavilion-hero {
    min-height: 500px;
  }
  .works-hub-page .museum-pavilion-hero__art img {
    object-position: 70% center;
  }
  .works-hub-page .museum-pavilion-hero__copy {
    justify-content: flex-start;
    width: 100%;
    min-height: 500px;
    padding: 82px 20px 230px;
    background: linear-gradient(180deg, rgba(248, 244, 236, .96) 0 46%, rgba(248, 244, 236, .5) 64%, transparent 78%);
  }
  .works-hub-page .museum-pavilion-hero h1 {
    font-size: clamp(50px, 15vw, 68px);
  }
  .works-hub-page .museum-pavilion-hero p:last-child {
    max-width: 390px;
    font-size: 11px;
  }
  .works-hub-page .museum-gallery {
    padding: 0 18px;
  }
  .works-hub-page .works-card,
  .works-hub-page .works-card:nth-child(even) {
    display: flex;
    min-height: 0;
    flex-direction: column;
    gap: 22px;
    align-items: stretch;
    padding: 34px 0;
  }
  .works-hub-page .works-card:nth-child(odd) .works-card__media,
  .works-hub-page .works-card:nth-child(even) .works-card__media {
    order: 1;
  }
  .works-hub-page .works-card:nth-child(odd) .works-card__copy,
  .works-hub-page .works-card:nth-child(even) .works-card__copy {
    order: 2;
  }
  .works-hub-page .works-card__media {
    aspect-ratio: 1.55;
  }
  .works-hub-page .works-card__copy {
    grid-template-columns: 36px minmax(0, 1fr);
  }
  .works-hub-page .works-card__copy > span {
    font-size: 22px;
  }
  .works-hub-page .works-card__copy h2 {
    font-size: 28px;
  }
  .works-hub-page .museum-pavilion-footer {
    grid-template-columns: 120px 1fr;
    gap: 20px;
    padding: 28px 20px;
  }
  .works-hub-page .museum-pavilion-footer__objects {
    width: 120px;
    height: 70px;
  }
  .works-hub-page .museum-pavilion-footer__objects picture:first-child {
    width: 82px;
  }
  .works-hub-page .museum-pavilion-footer__objects picture:last-child {
    width: 54px;
  }
  .works-hub-page .museum-pavilion-footer > p {
    font-size: 18px;
  }
  .works-hub-page .museum-pavilion-footer__cta {
    grid-column: 2;
    justify-self: start;
  }
  .works-hub-page .museum-pavilion-footer__nav {
    grid-column: 1 / -1;
    justify-content: flex-start;
    margin-top: 4px;
  }
}

@media (max-width: 430px) {
  .works-hub-page .museum-pavilion-hero {
    min-height: 530px;
  }
  .works-hub-page .museum-pavilion-hero__copy {
    min-height: 530px;
    padding-bottom: 250px;
  }
  .works-hub-page .works-card__meta {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .works-hub-page .museum-pavilion-footer {
    grid-template-columns: 92px 1fr;
  }
  .works-hub-page .museum-pavilion-footer__objects {
    width: 92px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .works-hub-page .works-card,
  .works-hub-page .works-card::before,
  .works-hub-page .works-card__media img,
  .works-hub-page .works-card__link b {
    transition: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .museum-home-page[data-view="explore"] .shore-sign__entry,
  .museum-home-page[data-view="explore"] .shore-sign__plank-layer {
    transition-duration: .01ms !important;
  }
}
.shore-motion-disabled .shore-sign__entry,
.shore-motion-disabled .shore-sign__plank-layer {
  transition-duration: .01ms !important;
}
.museum-home-page[data-view="explore"] .shore-character-part.is-dragging {
  z-index: 3;
  cursor: grabbing;
}
.museum-home-page[data-view="explore"] .shore-character-part:focus-visible {
  outline: none;
}
.museum-home-page[data-view="explore"] .shore-character-part:focus-visible .shore-character-sprite {
  filter: drop-shadow(0 0 4px rgba(49, 95, 138, .52));
}
.museum-home-page[data-view="explore"] .shore-character-sprite {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
  pointer-events: none;
  transform-origin: 50% 82%;
  user-select: none;
  -webkit-user-drag: none;
}
.museum-home-page[data-view="explore"] .shore-character-part .shore-character__picture {
  position: absolute;
  inset: 0;
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
}
.museum-home-page[data-view="explore"] .shore-character-part img {
  position: absolute;
  display: block;
  width: auto;
  max-width: none;
  object-fit: contain;
  mix-blend-mode: normal;
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
  filter: saturate(.97) contrast(1.01) drop-shadow(0 5px 2px rgba(75, 64, 54, .08));
}
.museum-home-page[data-view="explore"] .shore-character-part--person img {
  top: -6.366%;
  left: -25.46%;
  height: 110.764%;
}
.museum-home-page[data-view="explore"] .shore-character-part--tabby img {
  top: -218.557%;
  left: -230.508%;
  height: 328.866%;
}
.museum-home-page[data-view="explore"] .shore-character-part--calico img {
  top: -276.23%;
  left: -380.255%;
  height: 392.213%;
}

/* Layer 04: match the quieter reference hierarchy rather than poster-scale UI. */
.museum-home-page[data-view="explore"] .shore-arrival__copy {
  top: clamp(112px, 13.5vh, 148px);
  left: clamp(42px, 5.8vw, 92px);
  width: min(330px, calc(100% - 48px));
}
.museum-home-page[data-view="explore"] .shore-arrival__eyebrow {
  font-size: clamp(23px, 2vw, 31px);
}
.museum-home-page[data-view="explore"] .shore-arrival__copy h1 {
  font-size: clamp(78px, 8.2vw, 118px);
  line-height: .8;
}
.museum-home-page[data-view="explore"] .shore-arrival__copy h1::after {
  height: 2px;
  margin-top: 12px;
}
.museum-home-page[data-view="explore"] .shore-arrival__role {
  margin: 18px 0 0;
  color: #274f7e;
  font-size: clamp(13px, 1vw, 15px);
  font-weight: 700;
  letter-spacing: .025em;
}
.museum-home-page[data-view="explore"] .shore-arrival__lede {
  margin-top: 10px;
  font-size: clamp(17px, 1.35vw, 21px);
}
.museum-home-page[data-view="explore"] .shore-arrival__heart {
  margin-top: 8px;
  font-size: 25px;
}
.museum-home-page[data-view="explore"] .shore-arrival__cta {
  margin-top: 12px;
  padding: 9px 17px 10px;
  font-size: clamp(16px, 1.2vw, 18px);
  box-shadow: 0 5px 0 rgba(178, 98, 78, .12);
}
.museum-home-page[data-view="explore"] .shore-arrival__footer {
  bottom: 20px;
  font-size: 15px;
}
.museum-home-page[data-view="explore"] .shore-arrival__footer span:first-child { opacity: 0; }

@media (max-width: 1050px) {
  .museum-home-page[data-view="explore"] .shore-character-group {
    left: 29%;
    width: clamp(270px, 30vw, 330px);
    height: auto;
  }
  .museum-home-page[data-view="explore"] .shore-sign--painted {
    right: 24px;
    width: 158px;
    transform: rotate(.4deg);
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--camera { left: 66%; }
}
@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-arrival__copy {
    top: 84px;
    left: 19px;
    width: 245px;
  }
  .museum-home-page[data-view="explore"] .shore-arrival__copy h1 { font-size: 76px; }
  .museum-home-page[data-view="explore"] .shore-arrival__eyebrow { font-size: 22px; }
  .museum-home-page[data-view="explore"] .shore-arrival__lede { font-size: 17px; }
  .museum-home-page[data-view="explore"] .shore-character-group {
    left: 17%;
    bottom: 4%;
    width: 242px;
    height: auto;
  }
  .museum-home-page[data-view="explore"] .shore-sign--painted {
    top: 40%;
    left: auto;
    right: -4px;
    width: 132px;
    transform: rotate(.4deg);
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--bottle { left: 5%; width: 28px; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--shell { left: 18%; width: 54px; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--conch { display: none; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--camera { left: 73%; width: 64px; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--mug { display: none; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--starfish { left: 60%; width: 34px; }
  .museum-home-page[data-view="explore"] .shore-arrival__footer { font-size: 13px; }
}

/* Ground the physical wayfinding object in the foreground sand and keep the
   scroll cue in the same centered position as the approved final study. */
.museum-home-page[data-view="explore"] .shore-sign--painted {
  top: auto;
  bottom: clamp(64px, 8vh, 90px);
}
.museum-home-page[data-view="explore"] .shore-arrival__footer {
  justify-content: center;
  text-align: center;
}
.museum-home-page[data-view="explore"] .shore-arrival__footer span:last-child { margin-inline: auto; }
@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-sign--painted {
    top: auto;
    right: -4px;
    bottom: 86px;
  }
}
.museum-home-page[data-view="explore"] .shore-painted-layer-picture {
  position: absolute;
  inset: 0;
  display: block;
}
.museum-home-page[data-view="explore"] .shore-discovery-object picture,
.museum-home-page[data-view="explore"] .shore-sign__picture,
.museum-home-page[data-view="explore"] .shore-character__picture {
  display: block;
  width: 100%;
  height: 100%;
}

/* --------------------------------------------------------------------------
   Painted sign entries
   The post and four planks are independent painted layers. Hover/focus moves
   only the active plank; the post and neighboring destinations remain fixed.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .shore-sign--painted {
  isolation: isolate;
  aspect-ratio: 312 / 684;
  height: auto;
  overflow: visible;
  transform: none;
  transform-origin: 50% 70%;
  transition: transform 520ms cubic-bezier(.22, 1, .36, 1), filter 520ms ease;
}
.museum-home-page[data-view="explore"] .shore-sign__post {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  clip-path: inset(0 0 29% 0);
  transform: none;
  pointer-events: none;
  filter: none;
}
.museum-home-page[data-view="explore"] .shore-sign__post-base {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  clip-path: inset(69% 45% 9% 29%);
  -webkit-mask-image: linear-gradient(to bottom, #000 0, #000 82%, transparent 91%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0, #000 82%, transparent 91%, transparent 100%);
  transform: none;
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sign__post img,
.museum-home-page[data-view="explore"] .shore-sign__post-base img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: contain;
  object-position: center;
  transform: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entries {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: visible;
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entry {
  position: absolute;
  z-index: 1;
  display: block;
  height: auto;
  overflow: visible;
  cursor: pointer;
  pointer-events: auto;
  text-decoration: none;
  transform: translateX(0);
  transform-origin: 46% 50%;
  transition: transform 180ms cubic-bezier(.22, 1, .36, 1);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works {
  top: 3.95%;
  left: 1.60%;
  width: 99.04%;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--experience {
  top: 20.76%;
  left: 1.28%;
  width: 97.12%;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--tools {
  top: 35.96%;
  left: 1.28%;
  width: 95.19%;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--about {
  top: 52.05%;
  left: .64%;
  width: 95.83%;
}
.museum-home-page[data-view="explore"] .shore-sign__plank-art {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}
.museum-home-page[data-view="explore"] .shore-sign__plank-art img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  object-fit: contain;
  object-position: center;
  transform: none;
  filter: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible {
  z-index: 2;
  outline: none;
  transform: translateX(8px);
}
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible {
  outline: 2px solid rgba(49, 95, 138, .72);
  outline-offset: 3px;
}
.museum-home-page[data-view="explore"] .shore-sign__entry:active {
  transform: translateX(5px);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided {
  z-index: 2;
  transform: translateX(10px);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided .shore-sign__plank-art img {
  filter: contrast(1.08) brightness(1.04) drop-shadow(0 6px 5px rgba(78, 57, 38, .2));
}
.museum-home-page[data-view="explore"] .shore-sign__prompt {
  position: absolute;
  top: -38px;
  left: 50%;
  z-index: 4;
  width: max-content;
  margin: 0;
  padding: 5px 10px 6px;
  border-radius: 999px;
  background: rgba(250, 246, 236, .9);
  box-shadow: 0 4px 14px rgba(49, 57, 64, .12);
  color: #274f7e;
  font-family: var(--shore-script);
  font-size: 20px;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 8px) rotate(-2deg);
  transition: opacity 180ms ease, transform 320ms cubic-bezier(.22, 1, .36, 1);
}
.museum-home-page[data-view="explore"] .shore-sign__prompt.is-visible {
  opacity: 1;
  transform: translate(-50%, 0) rotate(-2deg);
}
.museum-home-page[data-view="explore"] .shore-sign__prompt.is-tools-soon {
  top: 45.4%;
  left: -8px;
  transform: translate(-100%, calc(-50% + 8px)) rotate(-2deg);
}
.museum-home-page[data-view="explore"] .shore-sign__prompt.is-tools-soon.is-visible {
  transform: translate(-100%, -50%) rotate(-2deg);
}
.museum-home-page[data-view="explore"] .museum-arrival.is-choosing-path .shore-sign--painted {
  transform: translateX(-18px) scale(1.055);
  filter: drop-shadow(0 12px 14px rgba(64, 75, 82, .14));
}

/* --------------------------------------------------------------------------
   Stable Shore scene scale
   The environment remains full bleed, while every painted foreground element
   derives its size from one shared 1200px scene unit. This prevents Catherine,
   the sign, sailboat, and beach objects from scaling at different vw rates as
   the browser is resized. Only the intentional mobile composition changes at
   the 680px breakpoint.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .shore-content-frame {
  position: relative;
  container-type: inline-size;
  width: min(1200px, calc(100% - 48px));
  height: 100%;
  margin: 0 auto;
  pointer-events: none;
  --shore-scene-unit: clamp(.72px, .083333cqw, 1px);
}
.museum-home-page[data-view="explore"] .shore-layer--objects .shore-content-frame > a,
.museum-home-page[data-view="explore"] .shore-layer--objects .shore-content-frame > aside,
.museum-home-page[data-view="explore"] .shore-layer--ui .shore-content-frame > * { pointer-events: auto; }
.museum-home-page[data-view="explore"] .museum-header {
  left: 50%;
  right: auto;
  width: min(1200px, calc(100% - 48px));
  padding: 22px 0;
  transform: translateX(-50%);
}
.museum-home-page[data-view="explore"] .shore-arrival__copy {
  left: clamp(20px, 3vw, 52px);
}

/* One scene unit controls every painted foreground asset. */
.museum-home-page[data-view="explore"] .shore-character-group {
  left: 32.5%;
  width: calc(370 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-sign--painted {
  right: 0;
  width: calc(150 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--bottle {
  left: 5.5%;
  width: calc(43 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--shell {
  left: 14.5%;
  width: calc(78 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--conch {
  left: 28%;
  width: calc(49 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--camera {
  left: 68%;
  width: calc(96 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--starfish {
  left: 59%;
  width: calc(50 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug {
  right: 5.2%;
  width: calc(74 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-sailboat {
  position: absolute;
  top: 63.5%;
  left: 62.25%;
  z-index: 3;
  display: block;
  width: calc(140 * var(--shore-scene-unit));
  pointer-events: none;
  transform: translate(-50%, -50%);
  filter: saturate(.98) contrast(1.02) drop-shadow(0 3px 2px rgba(53, 87, 106, .11));
}
.museum-home-page[data-view="explore"] .shore-sailboat picture,
.museum-home-page[data-view="explore"] .shore-sailboat img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
}

@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-content-frame { width: calc(100% - 36px); }
  .museum-home-page[data-view="explore"] .museum-header { width: calc(100% - 36px); padding: 17px 0; }
  .museum-home-page[data-view="explore"] .shore-character-group {
    left: 17%;
    bottom: 4%;
    width: 242px;
  }
  .museum-home-page[data-view="explore"] .shore-sign--painted {
    top: auto;
    right: -4px;
    bottom: 86px;
    width: 132px;
  }
  .museum-home-page[data-view="explore"] .museum-arrival.is-choosing-path .shore-sign--painted {
    transform: translateX(-8px) scale(1.04);
  }
  .museum-home-page[data-view="explore"] .shore-sailboat {
    top: 63%;
    left: 62%;
    width: 86px;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--bottle { left: 5%; width: 28px; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--shell { left: 18%; width: 54px; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--conch { display: none; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--camera { left: 73%; width: 64px; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--mug { display: none; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--starfish { left: 60%; width: 34px; }
}

@media (prefers-reduced-motion: reduce) {
  .museum-home-page[data-view="explore"] .shore-sign--painted,
  .museum-home-page[data-view="explore"] .shore-sign__entry,
  .museum-home-page[data-view="explore"] .shore-sign__prompt {
    transition-duration: .001ms !important;
  }
}

/* --------------------------------------------------------------------------
   P1 arrival hierarchy
   Keep the Shore spatial, but make its navigation legible before adding more
   motion: a tighter intro, a grouped character scene, and explicit sign affordance.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .shore-arrival__copy {
  width: min(310px, calc(100% - 48px));
}
.museum-home-page[data-view="explore"] .shore-arrival__copy h1::after {
  width: 68%;
  margin-top: 10px;
}
.museum-home-page[data-view="explore"] .shore-arrival__role {
  margin-top: 15px;
}
.museum-home-page[data-view="explore"] .shore-arrival__lede {
  margin-top: 8px;
}
.museum-home-page[data-view="explore"] .shore-arrival__cta {
  margin-top: 14px;
}

/* Tall desktop viewports must remain inside the painted world. The previous
   1040px ceiling exposed the page background beneath the shoreline. */
.museum-home-page[data-view="explore"] .shore-arrival {
  height: 100svh;
  min-height: 780px;
  max-height: none;
}

@media (min-width: 681px) {
  .museum-home-page[data-view="explore"] .shore-character-group {
    left: 35.5%;
  }
  .museum-home-page[data-view="explore"] .shore-character-part--person {
    top: 20.5%;
    left: 23%;
  }
  .museum-home-page[data-view="explore"] .shore-character-part--tabby {
    top: 60%;
    left: 58%;
  }
  .museum-home-page[data-view="explore"] .shore-character-part--calico {
    top: 56.5%;
    left: 80.5%;
  }
  .museum-home-page[data-view="explore"] .shore-sign--painted {
    right: 2.5%;
    width: calc(158 * var(--shore-scene-unit));
  }
}

.museum-home-page[data-view="explore"] .shore-sign__entry::before {
  content: "";
  position: absolute;
  inset: -6px -10px;
  border-radius: 12px;
}
.museum-home-page[data-view="explore"] .shore-sign__plank-art img {
  transition: filter 180ms ease;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works {
  z-index: 2;
  transform: translateX(4px);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works .shore-sign__plank-art img {
  filter: contrast(1.055) brightness(1.02) drop-shadow(0 4px 3px rgba(78, 57, 38, .13));
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible {
  transform: translate(9px, -2px);
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover .shore-sign__plank-art img,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible .shore-sign__plank-art img {
  filter: contrast(1.12) brightness(1.045) drop-shadow(0 7px 5px rgba(78, 57, 38, .22));
}
.museum-home-page[data-view="explore"] .shore-sign__entry:active {
  transform: translate(7px, 0);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided {
  transform: translate(11px, -2px);
}

@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-arrival__copy {
    width: 238px;
  }
  .museum-home-page[data-view="explore"] .shore-arrival__copy h1::after {
    width: 62%;
    margin-top: 8px;
  }
  .museum-home-page[data-view="explore"] .shore-arrival__role {
    margin-top: 12px;
    font-size: 12px;
  }
  .museum-home-page[data-view="explore"] .shore-arrival__lede {
    margin-top: 7px;
    font-size: 16px;
  }
  .museum-home-page[data-view="explore"] .shore-arrival__cta {
    margin-top: 12px;
  }
}

/* --------------------------------------------------------------------------
   P2 shared system and Overview transition
---------------------------------------------------------------------------- */
.museum-home-page[data-view="index"] {
  background-color: #f7f3eb;
  background-image:
    repeating-linear-gradient(0deg, rgba(67, 52, 34, .018) 0 1px, transparent 1px 7px),
    url("home/shore-watercolor-texture.svg");
}
.museum-home-page[data-view="index"] .index-view {
  padding-top: 0;
}
.museum-home-page[data-view="index"] .reference-hero {
  display: block;
  min-height: 360px;
  border-bottom: 1px solid rgba(76, 58, 36, .14);
  background:
    radial-gradient(circle at 84% 34%, rgba(185, 219, 229, .32), transparent 30%),
    linear-gradient(108deg, rgba(251, 248, 242, .98), rgba(247, 243, 235, .94));
}
.museum-home-page[data-view="index"] .reference-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("home/shore-watercolor-texture.svg");
  opacity: .24;
  pointer-events: none;
}
.museum-home-page[data-view="index"] .reference-hero::after {
  height: 48px;
}
.museum-home-page[data-view="index"] .reference-hero__visual,
.museum-home-page[data-view="index"] .reference-hero__character {
  display: none;
}
.museum-home-page[data-view="index"] .reference-hero__copy {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(250px, .65fr);
  column-gap: clamp(40px, 8vw, 110px);
  width: min(1160px, calc(100% - 48px));
  margin: 0 auto;
  padding: 104px 0 32px;
}
.museum-home-page[data-view="index"] .reference-hello,
.museum-home-page[data-view="index"] .reference-hero h1,
.museum-home-page[data-view="index"] .reference-role,
.museum-home-page[data-view="index"] .reference-intro,
.museum-home-page[data-view="index"] .reference-actions {
  grid-column: 1;
}
.museum-home-page[data-view="index"] .reference-hello {
  margin-bottom: 3px;
  color: var(--museum-orange);
  font-family: var(--shore-script);
  font-size: 21px;
  line-height: 1;
}
.museum-home-page[data-view="index"] .reference-hero h1 {
  font-size: clamp(42px, 4.4vw, 62px);
}
.museum-home-page[data-view="index"] .reference-role {
  margin: 4px 0 12px;
  color: #274f7e;
  font-size: clamp(16px, 1.4vw, 20px);
  font-weight: 650;
}
.museum-home-page[data-view="index"] .reference-intro {
  max-width: 570px;
  font-size: clamp(13px, 1vw, 15px);
}
.museum-home-page[data-view="index"] .reference-actions {
  margin-top: 16px;
}
.museum-home-page[data-view="index"] .reference-primary,
.museum-home-page[data-view="index"] .reference-outline-link {
  border-radius: 999px;
  background: var(--museum-orange);
}
.museum-home-page[data-view="index"] .reference-overview-meta {
  grid-column: 2;
  grid-row: 1 / span 5;
  align-self: center;
  padding: 22px 0 22px 28px;
  border-left: 1px solid rgba(76, 58, 36, .16);
  color: rgba(25, 24, 21, .72);
}
.museum-home-page[data-view="index"] .reference-overview-meta p {
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.45;
}
.museum-home-page[data-view="index"] .reference-overview-meta strong {
  color: var(--museum-orange);
  font-family: var(--shore-display);
  font-size: 20px;
  font-weight: 540;
}
.museum-home-page[data-view="index"] .reference-cat-mark {
  display: inline-block;
  margin-top: 10px;
  color: var(--museum-orange);
  font-family: var(--shore-script);
  font-size: 21px;
  transform: rotate(-3deg);
}
.museum-home-page[data-view="index"] .reference-label {
  font-family: var(--shore-script);
  font-size: 15px;
  font-weight: 650;
  letter-spacing: .01em;
  text-transform: none;
}
.museum-home-page[data-view="index"] .reference-section-head h2::after,
.museum-home-page[data-view="index"] .reference-thinking h2::after {
  content: "";
  display: block;
  width: 58px;
  height: 2px;
  margin-top: 9px;
  border-radius: 50%;
  background: var(--museum-orange);
  opacity: .72;
  transform: rotate(-2deg);
}
.museum-home-page[data-view="index"] .museum-mode-toggle {
  display: none;
}
.museum-home-page[data-view="index"] .museum-nav a:hover,
.museum-home-page[data-view="index"] .museum-nav a:focus-visible,
.museum-home-page[data-view="index"] .museum-nav button:hover,
.museum-home-page[data-view="index"] .museum-nav button:focus-visible {
  color: var(--museum-orange);
}

.museum-home-page.museum-mode-transition {
  overflow: hidden;
}
.museum-home-page.museum-mode-transition::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 480;
  background-color: #f7f3eb;
  background-image:
    linear-gradient(180deg, rgba(185, 219, 229, .22), rgba(247, 243, 235, .96)),
    url("home/shore-watercolor-texture.svg");
  pointer-events: none;
  animation: museumModeVeil 620ms cubic-bezier(.22, 1, .36, 1) both;
}
.museum-home-page.museum-mode-to-shore::before {
  background-color: #b9dbe5;
  background-image:
    linear-gradient(180deg, rgba(185, 219, 229, .96), rgba(247, 243, 235, .28)),
    url("home/shore-watercolor-texture.svg");
}
@keyframes museumModeVeil {
  0% { opacity: 0; transform: translateY(12%); }
  38%, 56% { opacity: 1; transform: translateY(0); }
  100% { opacity: 0; transform: translateY(-2%); }
}

@media (max-width: 680px) {
  .museum-home-page[data-view="index"] .reference-hero {
    min-height: 420px;
  }
  .museum-home-page[data-view="index"] .reference-hero__copy {
    display: block;
    width: calc(100% - 36px);
    padding: 92px 0 30px;
  }
  .museum-home-page[data-view="index"] .reference-hero h1 {
    font-size: 46px;
  }
  .museum-home-page[data-view="index"] .reference-overview-meta {
    margin-top: 16px;
    padding: 14px 0 0;
    border-top: 1px solid rgba(76, 58, 36, .16);
    border-left: 0;
  }
  .museum-home-page[data-view="index"] .reference-overview-meta p {
    display: inline;
    margin-right: 10px;
  }
  .museum-home-page[data-view="index"] .reference-cat-mark {
    margin: 0 0 0 8px;
  }
  .museum-home-page[data-view="index"] .reference-actions {
    align-items: center;
    flex-direction: row;
    gap: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .museum-home-page.museum-mode-transition::before {
    animation-duration: .001ms !important;
  }
}

/* --------------------------------------------------------------------------
   P3 scene finish
   Blend the cutouts into the sand, reduce foreground clutter, and keep the
   navigation/character layers clearer than the painted distant landmarks.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .shore-painted-layer--environment {
  filter: saturate(.91) contrast(.945) brightness(1.025);
}
.museum-home-page[data-view="explore"] .shore-sailboat {
  opacity: .9;
  filter: saturate(.93) contrast(1.01) drop-shadow(0 3px 2px rgba(53, 87, 106, .1));
}
.museum-home-page[data-view="explore"] .shore-character-part {
  transition: transform 220ms cubic-bezier(.22, 1, .36, 1);
}
.museum-home-page[data-view="explore"] .shore-character-part.is-dragging {
  transition: none;
}
.museum-home-page[data-view="explore"] .shore-character-sprite {
  transition: filter 180ms ease, transform 180ms cubic-bezier(.22, 1, .36, 1);
}
.museum-home-page[data-view="explore"] .shore-character-part img {
  filter: saturate(.94) contrast(.985) drop-shadow(0 7px 3px rgba(75, 64, 54, .14));
}
.museum-home-page[data-view="explore"] .shore-character-part--person img {
  filter: saturate(.94) contrast(.985) drop-shadow(0 9px 4px rgba(75, 64, 54, .14));
}
.museum-home-page[data-view="explore"] .shore-character-part.is-dragging .shore-character-sprite {
  filter: drop-shadow(0 8px 5px rgba(65, 76, 76, .15));
  transform: translateY(-4px);
}
.museum-home-page[data-view="explore"] .shore-character-part.is-settling .shore-character-sprite {
  animation: shoreCharacterSettle 360ms cubic-bezier(.2, .8, .2, 1) both;
}
@keyframes shoreCharacterSettle {
  0% { transform: translateY(-3px); }
  58% { transform: translateY(1px); }
  100% { transform: translateY(0); }
}
.museum-home-page[data-view="explore"] .shore-discovery-object--conch {
  display: none;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--shell,
.museum-home-page[data-view="explore"] .shore-discovery-object--starfish {
  opacity: .76;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--shell:hover,
.museum-home-page[data-view="explore"] .shore-discovery-object--shell:focus-visible,
.museum-home-page[data-view="explore"] .shore-discovery-object--starfish:hover,
.museum-home-page[data-view="explore"] .shore-discovery-object--starfish:focus-visible {
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .museum-home-page[data-view="explore"] .shore-character-part,
  .museum-home-page[data-view="explore"] .shore-character-sprite {
    transition-duration: .001ms !important;
  }
  .museum-home-page[data-view="explore"] .shore-character-part.is-settling .shore-character-sprite {
    animation: none !important;
  }
}

/* --------------------------------------------------------------------------
   P4 quiet motion and discoveries
   Animate only independent painted layers; the baked cloud/wave/plant artwork
   remains still so the scene never moves as one synthetic sheet.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .shore-sailboat {
  animation: shoreSailboatDrift 9s ease-in-out infinite alternate;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--bottle picture {
  animation: shoreObjectSway 7.6s ease-in-out 1.2s infinite alternate;
  transform-origin: 50% 100%;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug picture {
  animation: shoreObjectSway 8.8s ease-in-out 3.8s infinite alternate-reverse;
  transform-origin: 50% 100%;
}
.museum-home-page[data-view="explore"] .shore-character-part--person.is-near-sign.is-noticing:not(.is-dragging):not(.is-settling) .shore-character-sprite {
  animation: shorePersonNotice 520ms cubic-bezier(.22, 1, .36, 1) both;
}
.museum-home-page[data-view="explore"] .shore-character-part--tabby.is-near-person.is-noticing:not(.is-dragging):not(.is-settling) .shore-character-sprite,
.museum-home-page[data-view="explore"] .shore-character-part--calico.is-near-person.is-noticing:not(.is-dragging):not(.is-settling) .shore-character-sprite {
  animation: shoreCatNotice 480ms cubic-bezier(.22, 1, .36, 1) both;
}
.museum-home-page[data-view="explore"] .shore-character-part--calico.is-near-person.is-noticing:not(.is-dragging):not(.is-settling) .shore-character-sprite {
  animation-delay: 90ms;
}
@keyframes shoreSailboatDrift {
  0% { transform: translate(-50%, -50%) translateY(0) rotate(-.25deg); }
  100% { transform: translate(-50%, -50%) translateY(-4px) rotate(.35deg); }
}
@keyframes shoreObjectSway {
  0% { transform: rotate(-.7deg); }
  100% { transform: rotate(.8deg); }
}
@keyframes shorePersonNotice {
  0% { transform: translateX(0) rotate(0); }
  55% { transform: translateX(2px) rotate(.35deg); }
  100% { transform: translateX(0) rotate(0); }
}
@keyframes shoreCatNotice {
  0% { transform: translateY(0); }
  52% { transform: translateY(-3px) rotate(-.5deg); }
  100% { transform: translateY(0); }
}

.shore-easter-popover {
  position: fixed;
  z-index: 520;
  width: min(280px, calc(100vw - 32px));
  padding: 15px 17px 14px;
  border: 1px solid rgba(74, 59, 42, .2);
  border-radius: 8px;
  background-color: #f8f3e9;
  background-image: url("home/shore-watercolor-texture.svg");
  background-size: 336px auto;
  color: #273f59;
  box-shadow: 0 13px 34px rgba(36, 50, 58, .2);
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 160ms ease, transform 160ms ease;
}
.shore-easter-popover[hidden] {
  display: none;
}
.shore-easter-popover.is-open {
  opacity: 1;
  transform: translateY(0);
}
.shore-easter-popover__eyebrow {
  margin: 0 0 5px;
  color: var(--museum-orange);
  font-family: var(--shore-script);
  font-size: 14px;
}
.shore-easter-popover h2 {
  margin: 0;
  font-family: var(--shore-display);
  font-size: 19px;
  font-weight: 520;
  line-height: 1.05;
}
.shore-easter-popover > p:not(.shore-easter-popover__eyebrow, .shore-easter-popover__status) {
  margin: 9px 0 12px;
  color: rgba(39, 63, 89, .78);
  font-size: 11px;
  line-height: 1.55;
}
.shore-easter-popover__status {
  display: inline-flex;
  align-items: center;
  min-height: 23px;
  margin: 0;
  padding: 0 8px;
  border: 1px solid rgba(237, 107, 36, .38);
  border-radius: 999px;
  color: var(--museum-orange);
  font: 600 9px/1 var(--shore-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.shore-easter-popover__status[hidden] {
  display: none;
}
.shore-easter-popover__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 12px;
  border: 0;
  border-radius: 999px;
  background: var(--museum-orange);
  color: #fffaf2;
  font: 650 10px/1 var(--shore-sans);
  cursor: pointer;
  text-decoration: none;
  transition: background-color 160ms ease;
}
.shore-easter-popover__action[hidden] {
  display: none;
}
.shore-easter-popover__action:hover {
  background: #c95812;
  outline: none;
}
.shore-easter-popover__action:focus-visible {
  background: #c95812;
  outline: 2px solid rgba(49, 95, 138, .5);
  outline-offset: 3px;
}

@media (max-width: 680px) {
  .shore-easter-popover {
    width: min(280px, calc(100vw - 28px));
    padding: 15px 16px 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .museum-home-page[data-view="explore"] .shore-sailboat,
  .museum-home-page[data-view="explore"] .shore-discovery-object picture,
  .museum-home-page[data-view="explore"] .shore-character-sprite {
    animation: none !important;
  }
}
.shore-motion-disabled .shore-sailboat,
.shore-motion-disabled .shore-discovery-object picture,
.shore-motion-disabled .shore-character-sprite {
  animation: none !important;
}
.shore-motion-disabled .shore-easter-popover {
  transition-duration: .01ms !important;
}
@media (prefers-reduced-motion: reduce) {
  .shore-easter-popover {
    transition-duration: .01ms !important;
  }
}

/* --------------------------------------------------------------------------
   P4 visual correction
   Use one clean redrawn sign, make ambient motion perceptible, and stage the
   foreground discoveries at different depths instead of one flat baseline.
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .shore-sign--painted {
  aspect-ratio: 835 / 1884;
  width: calc(164 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-sign__complete {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
  filter: drop-shadow(0 8px 5px rgba(71, 58, 44, .15));
  transition: filter 180ms ease, transform 180ms ease;
}
.museum-home-page[data-view="explore"] .shore-sign__complete img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.museum-home-page[data-view="explore"] .shore-sign__entries {
  z-index: 1;
}
.museum-home-page[data-view="explore"] .shore-sign__entry {
  left: 4%;
  width: 92%;
  height: 15%;
  transform: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works { top: 5.8%; }
.museum-home-page[data-view="explore"] .shore-sign__entry--experience { top: 21.8%; }
.museum-home-page[data-view="explore"] .shore-sign__entry--tools { top: 37.8%; }
.museum-home-page[data-view="explore"] .shore-sign__entry--about { top: 53.2%; }
.museum-home-page[data-view="explore"] .shore-sign__entry::before {
  inset: 0;
  border-radius: 10px 20px 20px 10px;
  background: transparent;
  box-shadow: none;
  transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works::before {
  background: rgba(255, 251, 238, .07);
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible,
.museum-home-page[data-view="explore"] .shore-sign__entry:active,
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided {
  transform: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover::before,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible::before,
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided::before {
  background: rgba(255, 252, 240, .2);
  box-shadow: inset 0 0 0 2px rgba(49, 95, 138, .2), 0 6px 12px rgba(72, 58, 43, .12);
  transform: translate(3px, -1px);
}
.museum-home-page[data-view="explore"] .shore-sign--painted:has(.shore-sign__entry:hover) .shore-sign__complete,
.museum-home-page[data-view="explore"] .shore-sign--painted:focus-within .shore-sign__complete {
  filter: saturate(1.035) drop-shadow(0 10px 7px rgba(71, 58, 44, .18));
}

.museum-home-page[data-view="explore"] .shore-discovery-object--bottle {
  bottom: 7.2%;
  z-index: 1;
  width: calc(37 * var(--shore-scene-unit));
  opacity: .82;
  filter: saturate(.92) drop-shadow(0 3px 2px rgba(79, 67, 54, .07));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--camera {
  bottom: 4.2%;
  z-index: 4;
  width: calc(90 * var(--shore-scene-unit));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--shell {
  bottom: 1.2%;
  z-index: 6;
  width: calc(82 * var(--shore-scene-unit));
  opacity: .9;
  filter: drop-shadow(0 7px 4px rgba(79, 67, 54, .13));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--starfish {
  bottom: .4%;
  z-index: 7;
  width: calc(54 * var(--shore-scene-unit));
  opacity: .92;
  filter: drop-shadow(0 8px 5px rgba(79, 67, 54, .15));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug {
  bottom: 1.1%;
  z-index: 8;
  width: calc(78 * var(--shore-scene-unit));
  filter: drop-shadow(0 9px 5px rgba(79, 67, 54, .16));
}

.museum-home-page[data-view="explore"] .shore-sailboat {
  animation-name: shoreSailboatDriftVisible;
  animation-duration: 7.2s;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--bottle img {
  animation: shoreObjectSwayVisible 6.4s ease-in-out .6s infinite alternate;
  transform-origin: 50% 100%;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug img {
  animation: shoreObjectSwayVisible 7.3s ease-in-out 2.4s infinite alternate-reverse;
  transform-origin: 50% 100%;
}
.museum-home-page[data-view="explore"] .shore-character-part--person.is-near-sign.is-noticing:not(.is-dragging):not(.is-settling) .shore-character-sprite {
  animation-name: shorePersonNoticeVisible;
  animation-duration: 620ms;
}
@keyframes shoreSailboatDriftVisible {
  0% { transform: translate(-50%, -50%) translate(-2px, 2px) rotate(-.65deg); }
  100% { transform: translate(-50%, -50%) translate(3px, -6px) rotate(.75deg); }
}
@keyframes shoreObjectSwayVisible {
  0% { transform: translateY(1px) rotate(-1.8deg); }
  100% { transform: translateY(-2px) rotate(2deg); }
}
@keyframes shorePersonNoticeVisible {
  0% { transform: translateX(0) rotate(0); }
  48% { transform: translate(7px, -2px) rotate(1.05deg); }
  100% { transform: translateX(0) rotate(0); }
}

@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-sign--painted {
    width: 138px;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--bottle { bottom: 7%; width: 25px; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--shell { bottom: 1%; width: 56px; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--camera { bottom: 4%; width: 62px; }
  .museum-home-page[data-view="explore"] .shore-discovery-object--starfish { bottom: .5%; width: 36px; }
}

@media (prefers-reduced-motion: reduce) {
  .museum-home-page[data-view="explore"] .shore-discovery-object img {
    animation: none !important;
  }
}
.shore-motion-disabled .shore-discovery-object img {
  animation: none !important;
}

/* --------------------------------------------------------------------------
   Annotated scene corrections
---------------------------------------------------------------------------- */
.museum-home-page[data-view="explore"] .shore-sign__entry::before {
  content: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible,
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided {
  outline: none;
  box-shadow: none;
}
.museum-home-page[data-view="explore"] .shore-sign--painted:has(.shore-sign__entry:hover) .shore-sign__complete,
.museum-home-page[data-view="explore"] .shore-sign--painted:focus-within .shore-sign__complete {
  transform: translateY(-2px);
  filter: saturate(1.07) contrast(1.025) drop-shadow(0 11px 7px rgba(71, 58, 44, .2));
}

.museum-home-page[data-view="explore"] .shore-arrival__role {
  color: #315f8a;
  font-family: var(--shore-script);
  font-size: clamp(18px, 1.55vw, 22px);
  font-weight: 600;
  letter-spacing: .005em;
  line-height: 1.12;
}

.museum-home-page[data-view="explore"] .shore-discovery-object--bottle {
  --shore-object-rotation: -18deg;
  left: 8.2%;
  bottom: 13.8%;
  z-index: 2;
  width: calc(40 * var(--shore-scene-unit));
  opacity: .88;
  filter: saturate(.96) drop-shadow(0 4px 3px rgba(79, 67, 54, .1));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug {
  right: 13%;
  bottom: 2.6%;
  z-index: 8;
  width: calc(86 * var(--shore-scene-unit));
  opacity: 1;
  filter: saturate(1.04) contrast(1.025) drop-shadow(0 10px 6px rgba(67, 72, 69, .2));
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug:hover,
.museum-home-page[data-view="explore"] .shore-discovery-object--mug:focus-visible {
  filter: saturate(1.12) contrast(1.04) drop-shadow(0 12px 8px rgba(67, 72, 69, .24));
}

.museum-home-page[data-view="explore"] .shore-sailboat {
  pointer-events: auto;
  cursor: pointer;
  text-decoration: none;
}
.museum-home-page[data-view="explore"] .shore-sailboat:hover,
.museum-home-page[data-view="explore"] .shore-sailboat:focus-visible {
  outline: none;
  filter: saturate(1.08) contrast(1.04) drop-shadow(0 5px 4px rgba(53, 87, 106, .16));
}
@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-arrival__role {
    font-size: 17px;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--bottle {
    left: 7%;
    bottom: 13%;
    width: 27px;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--mug {
    display: block;
    right: 8%;
    bottom: 1.5%;
    width: 58px;
  }
}

/* Final cascade lock for the annotated P2 Works List pass. */
.works-hub-page.museum-pavilion-page {
  background: #f7f3eb;
}
.works-hub-page .museum-pavilion-main {
  padding: 0;
  background: #f7f3eb;
}
.works-hub-page .museum-pavilion-shell {
  width: 100%;
  max-width: none;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: #f7f3eb;
  box-shadow: none;
}
.works-hub-page .museum-header {
  width: min(1120px, calc(100% - 64px));
}
.works-hub-page .museum-pavilion-hero {
  min-height: 440px;
  border-bottom: 0;
  background: #fbf7ef;
}
.works-hub-page .museum-pavilion-hero__art {
  inset: 0 0 0 auto;
  width: 54%;
}
.works-hub-page .museum-pavilion-hero__art img {
  object-position: 88% 60%;
}
.works-hub-page .museum-pavilion-hero__copy {
  width: min(620px, 53%);
  min-height: 440px;
  padding-left: max(48px, calc((100vw - 1120px) / 2));
  background: #fbf7ef;
}
.works-hub-page .museum-gallery {
  padding-top: 8px;
  background: #f7f3eb;
}

@media (max-width: 900px) {
  .works-hub-page .museum-header {
    width: calc(100% - 48px);
  }
  .works-hub-page .museum-pavilion-hero__copy {
    width: 58%;
    padding-left: 44px;
  }
  .works-hub-page .museum-pavilion-hero__art {
    width: 50%;
  }
}

@media (max-width: 760px) {
  .works-hub-page .museum-header {
    width: calc(100% - 36px);
  }
  .works-hub-page .museum-pavilion-hero {
    min-height: 500px;
  }
  .works-hub-page .museum-pavilion-hero__art {
    inset: auto 0 0;
    width: 100%;
    height: 58%;
  }
  .works-hub-page .museum-pavilion-hero__art img {
    object-position: 78% 58%;
  }
  .works-hub-page .museum-pavilion-hero__copy {
    width: 100%;
    min-height: 500px;
    padding-left: 20px;
    background: linear-gradient(180deg, #fbf7ef 0 45%, rgba(251, 247, 239, .82) 61%, transparent 78%);
  }
  .works-hub-page .museum-gallery {
    padding-top: 0;
  }
}

/* Cascade lock for the latest annotated scene pass. Keep this final so legacy
   Shore compatibility rules cannot restore whole-sign motion or flat props. */
.museum-home-page[data-view="explore"] .shore-sign--painted {
  top: auto;
  bottom: clamp(20px, 2.8vh, 34px);
  transform: none;
  filter: none;
  transition:
    transform 320ms cubic-bezier(.22, 1, .36, 1),
    filter 180ms ease;
}
.museum-home-page[data-view="explore"] .shore-sign__complete {
  display: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entries {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entry {
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: auto;
  transform: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works {
  clip-path: polygon(3% 6.25%, 20% 6.35%, 30% 6.55%, 35% 6.8%, 40% 6.95%, 55% 7.1%, 60% 7.1%, 72% 7.2%, 92% 7.5%, 100% 8.2%, 96% 21.2%, 80% 21%, 60% 20.25%, 55% 20%, 40% 19.65%, 35% 19.55%, 30% 19.75%, 15% 19.4%, 4% 19.1%, 0 17%, 1% 7%);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--experience {
  clip-path: polygon(6% 23.3%, 8% 22.45%, 10% 22.1%, 20% 22.1%, 35% 22.65%, 40% 22.9%, 55% 23.3%, 60% 23.4%, 80% 23.65%, 89% 24%, 94% 25.2%, 97.5% 29.8%, 94% 35%, 89% 36.9%, 80% 37.2%, 60% 36.45%, 55% 36.1%, 40% 35.65%, 35% 35.45%, 20% 35.15%, 10% 35%, 7% 34.4%, 6% 32%, 6% 26%);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--tools {
  clip-path: polygon(7% 39.1%, 9% 38.1%, 12% 37.85%, 20% 38.05%, 35% 38.65%, 40% 38.9%, 54% 39.3%, 60% 39.4%, 80% 40%, 89% 40.2%, 94% 41.1%, 97% 45.5%, 94% 50.6%, 89% 52.95%, 80% 53%, 60% 52.1%, 54% 51.7%, 40% 51.2%, 35% 51.05%, 20% 50.75%, 10% 50.55%, 7% 49.8%, 6% 46%, 6% 41%);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--about {
  clip-path: polygon(6% 54.2%, 8% 53.4%, 10% 53.2%, 20% 53.55%, 34% 54.15%, 37% 54.35%, 53% 54.9%, 60% 55%, 80% 55.75%, 89% 55.9%, 94% 57%, 97% 61.3%, 94% 66.3%, 89% 68.9%, 80% 69.05%, 60% 68.15%, 53% 67.45%, 37% 66.8%, 34% 66.65%, 20% 66.3%, 10% 66.1%, 7% 65.6%, 5.5% 62%, 5.5% 56%);
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible {
  z-index: 2;
  outline: none;
  box-shadow: none;
  filter: saturate(1.08) contrast(1.035);
  transform: scale(1.055);
}
.museum-home-page[data-view="explore"] .shore-sign__entry:active {
  transform: scale(1.035);
}
.museum-home-page[data-view="explore"] .shore-sign__entry:hover .shore-sign__plank-layer,
.museum-home-page[data-view="explore"] .shore-sign__entry:focus-visible .shore-sign__plank-layer {
  filter: brightness(1.035) saturate(1.04);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided,
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided .shore-sign__plank-layer {
  transform: none;
  filter: none;
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided:hover,
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided:focus-visible {
  filter: saturate(1.08) contrast(1.035);
  transform: scale(1.055);
}
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided:hover .shore-sign__plank-layer,
.museum-home-page[data-view="explore"] .shore-sign__entry--works.is-guided:focus-visible .shore-sign__plank-layer {
  filter: brightness(1.035) saturate(1.04);
}
@keyframes shoreSignChoosePulse {
  from { transform: scale(1); }
  to { transform: scale(1.1); }
}
@keyframes shoreSignChooseRelease {
  from {
    transform: scale(1.1);
    filter: drop-shadow(0 12px 14px rgba(64, 75, 82, .14));
  }
  to {
    transform: scale(1);
    filter: none;
  }
}
.museum-home-page[data-view="explore"] .museum-arrival.is-choosing-path .shore-sign--painted {
  transform: scale(1.1);
  filter: drop-shadow(0 12px 14px rgba(64, 75, 82, .14));
  animation: shoreSignChoosePulse 320ms cubic-bezier(.22, 1, .36, 1) both;
}
.museum-home-page[data-view="explore"] .museum-arrival.is-releasing-path .shore-sign--painted {
  animation: shoreSignChooseRelease 480ms cubic-bezier(.22, .78, .26, 1) both;
}
@media (prefers-reduced-motion: reduce) {
  .museum-home-page[data-view="explore"] .shore-sign--painted,
  .museum-home-page[data-view="explore"] .shore-sign__prompt {
    animation: none !important;
    transition-duration: .01ms !important;
  }
}
.shore-motion-disabled .shore-sign--painted,
.shore-motion-disabled .shore-sign__prompt {
  animation: none !important;
  transition-duration: .01ms !important;
}

/* Keep the transparent scene header from blocking the Resume link beneath it. */
.museum-home-page[data-view="explore"] .museum-header {
  pointer-events: none;
}
.museum-home-page[data-view="explore"] .museum-header .museum-brand,
.museum-home-page[data-view="explore"] .museum-header .museum-nav,
.museum-home-page[data-view="explore"] .museum-header .museum-mode-toggle {
  pointer-events: auto;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--camera {
  bottom: 5.2%;
  transform: rotate(-7deg);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug {
  right: 15.5%;
  bottom: 4.4%;
  transform: rotate(6deg);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--starfish {
  bottom: 3.6%;
}
.museum-home-page[data-view="explore"] .shore-discovery-object--camera:hover,
.museum-home-page[data-view="explore"] .shore-discovery-object--camera:focus-visible {
  transform: translateY(-4px) rotate(-5deg);
}
.museum-home-page[data-view="explore"] .shore-discovery-object--mug:hover,
.museum-home-page[data-view="explore"] .shore-discovery-object--mug:focus-visible {
  transform: translateY(-4px) rotate(4deg);
}

@media (max-width: 680px) {
  .museum-home-page[data-view="explore"] .shore-sign--painted {
    bottom: 42px;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--camera {
    bottom: 5%;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--starfish {
    bottom: 2.8%;
  }
  .museum-home-page[data-view="explore"] .shore-discovery-object--mug {
    right: 11%;
    bottom: 3.4%;
  }
}

/* Overview must remain after the final Shore lock so legacy Quick-view rules
   cannot override the accepted detail topbar, Hero, or timeline geometry. */
.museum-home-page[data-view="index"] .museum-header.content-header--detail {
  position: relative;
  inset: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: min(1120px, calc(100% - 48px));
  min-height: 88px;
  margin: 0 auto;
  padding: 0;
  background: transparent;
  transform: none;
}
.museum-home-page[data-view="index"] .museum-header .museum-brand strong {
  color: #315f8a;
  font-family: var(--shore-script);
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0;
}
.museum-home-page[data-view="index"] .museum-header .museum-brand__quick {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.museum-home-page[data-view="index"] .museum-header .museum-brand__quick > span {
  color: var(--museum-orange);
  font-family: var(--shore-sans);
}
.museum-home-page[data-view="index"] .museum-header .museum-nav {
  gap: clamp(22px, 3vw, 40px);
}
.museum-home-page[data-view="index"] .index-view {
  padding-top: 0;
}
.museum-home-page[data-view="index"] .reference-hero {
  display: block;
  min-height: 390px;
  max-height: none;
  background: transparent;
}
.museum-home-page[data-view="index"] .reference-hero::before,
.museum-home-page[data-view="index"] .reference-hero::after {
  display: none;
}
.museum-home-page[data-view="index"] .reference-hero__copy {
  display: grid;
  grid-template-columns: minmax(410px, 1.2fr) minmax(230px, .65fr) minmax(280px, .8fr);
  column-gap: clamp(26px, 3vw, 46px);
  width: min(1120px, calc(100% - 48px));
  min-height: 390px;
  margin: 0 auto;
  padding: 36px 0 24px;
}
.museum-home-page[data-view="index"] .reference-identity {
  grid-column: 1;
  align-self: center;
}
.museum-home-page[data-view="index"] .reference-overview-meta {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  min-height: 210px;
  padding: 24px 0 20px 28px;
}
.museum-home-page[data-view="index"] .reference-overview-figure {
  grid-column: 3;
  grid-row: 1;
  align-self: stretch;
  height: auto;
  min-height: 330px;
  overflow: hidden;
}
.museum-home-page[data-view="index"] .reference-overview-figure picture,
.museum-home-page[data-view="index"] .reference-overview-figure img {
  width: 100%;
  height: 100%;
}
.museum-home-page[data-view="index"] .reference-overview-figure picture {
  -webkit-mask-image:
    linear-gradient(to right, transparent 0, #000 12%, #000 96%, transparent 100%),
    linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image:
    linear-gradient(to right, transparent 0, #000 12%, #000 96%, transparent 100%),
    linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%);
  mask-composite: intersect;
}
.museum-home-page[data-view="index"] .reference-overview-figure img {
  object-fit: contain;
  object-position: right bottom;
  filter: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link {
  gap: 12px;
}
.museum-home-page[data-view="index"] .reference-project-card__link .reference-project-card__tags {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0;
  color: #25231f;
  font-size: inherit;
  transition: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link .reference-project-card__tags span {
  padding: 3px 7px;
  border: 1px solid rgba(65, 52, 37, .24);
  border-radius: 999px;
  color: #25231f;
  font-family: var(--shore-mono);
  font-size: 7px;
  transition: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link:hover .reference-project-card__tags,
.museum-home-page[data-view="index"] .reference-project-card__link:focus-visible .reference-project-card__tags,
.museum-home-page[data-view="index"] .reference-project-card__link:hover .reference-project-card__tags span,
.museum-home-page[data-view="index"] .reference-project-card__link:focus-visible .reference-project-card__tags span {
  transform: none;
}
.museum-home-page[data-view="index"] .reference-project-card__link .reference-project-card__arrow {
  flex: 0 0 auto;
  color: var(--museum-orange);
  font-size: 18px;
}
.museum-home-page[data-view="index"] .reference-timeline article::before {
  top: -3px;
}
.museum-home-page[data-view="index"] .reference-footer {
  justify-content: center;
  padding: 18px 0 30px;
  color: rgba(49, 95, 138, .58);
  font-family: var(--shore-script);
  font-size: 15px;
}

@media (max-width: 980px) {
  .museum-home-page[data-view="index"] .reference-hero__copy {
    grid-template-columns: minmax(330px, 1fr) minmax(210px, .65fr) minmax(210px, .72fr);
    column-gap: 22px;
  }
}

@media (max-width: 760px) {
  .museum-home-page[data-view="index"] .museum-header.content-header--detail {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
    width: calc(100% - 32px);
    min-height: 0;
    padding: 12px 0 10px;
  }
  .museum-home-page[data-view="index"] .museum-header .museum-nav {
    display: grid !important;
    grid-template-columns: repeat(4, auto);
    justify-content: space-between;
    gap: 8px;
    width: 100%;
  }
  .museum-home-page[data-view="index"] .museum-header .museum-nav a {
    font-size: 10px;
    white-space: nowrap;
  }
  .museum-home-page[data-view="index"] .reference-hero__copy {
    display: grid;
    grid-template-columns: 1fr;
    width: calc(100% - 36px);
    min-height: 0;
    padding: 42px 0 0;
  }
  .museum-home-page[data-view="index"] .reference-identity,
  .museum-home-page[data-view="index"] .reference-overview-meta,
  .museum-home-page[data-view="index"] .reference-overview-figure {
    grid-column: 1;
    grid-row: auto;
  }
  .museum-home-page[data-view="index"] .reference-overview-meta {
    min-height: 0;
    margin-top: 24px;
    padding: 18px 0 0;
  }
  .museum-home-page[data-view="index"] .reference-overview-meta p {
    display: block;
    margin: 0 0 8px;
  }
  .museum-home-page[data-view="index"] .reference-overview-figure {
    min-height: 280px;
    margin-top: 8px;
  }
  .museum-home-page[data-view="index"] .reference-overview-figure picture {
    -webkit-mask-image:
      linear-gradient(to right, transparent 0, #000 3%, #000 97%, transparent 100%),
      linear-gradient(to bottom, transparent 0, #000 6%, #000 94%, transparent 100%);
    mask-image:
      linear-gradient(to right, transparent 0, #000 3%, #000 97%, transparent 100%),
      linear-gradient(to bottom, transparent 0, #000 6%, #000 94%, transparent 100%);
  }
  .museum-home-page[data-view="index"] .reference-timeline article::before {
    top: 3px;
  }
}
