
/* NeverMuseum · editorial collection & storybook design language */
:root{
 --museum-ink:#244438;--museum-gold:#b38a59;--museum-sage:#9cbaa5;
 --museum-paper:#fffaf1;--museum-parchment:#f3ebdd;--museum-rose:#cb8f9d;
 color:var(--museum-ink);background:#f4eee2;font-family:Georgia,'Iowan Old Style','Baskerville',serif
}
body{background:linear-gradient(180deg,#f8f1e6,#f2ebde 28%,#f7f2e9 90%)}
header{position:relative;z-index:5;padding:18px max(4vw,20px);background:#fffaf2ed;
 box-shadow:0 3px 24px #21413010;backdrop-filter:blur(15px);border-color:#e3ddcf}
.brand{font:normal 1.2rem Georgia,serif;color:#234434;letter-spacing:-.03em}
.brand span{color:var(--museum-gold)}
nav{align-items:center}
nav a{text-decoration:none!important;display:inline-flex;align-items:center;font:700 .79rem system-ui,sans-serif;
 padding:11px 16px;background:#e8eee6;border-radius:12px;border:1px solid #aac1ac}
nav a:hover{background:#d8e8d7}
header button{font:700 .78rem system-ui,sans-serif;letter-spacing:.01em;padding:12px 16px;border-radius:12px}
button.primary{background:#284d3e;color:#fffaf0;border-color:#284d3e;box-shadow:0 3px 0 #1e3d32}
button.primary:hover{background:#335b49}
.hero{position:relative;overflow:hidden;padding:clamp(70px,9vw,132px) max(6vw,22px) clamp(75px,10vw,140px);
 text-align:left;background:radial-gradient(ellipse at 70% 100%,#dfebdd 0%,transparent 48%),
 linear-gradient(115deg,#f7ecdf 0%,#fbf5eb 64%,#dfe9d9 100%);
 border-bottom:1px solid #e0dacd}
.hero::after{content:"";position:absolute;right:-160px;bottom:-250px;width:600px;height:600px;
 border:1px solid #b9c6b533;border-radius:50%;box-shadow:0 0 0 52px #b9c6b514,0 0 0 105px #b9c6b511;pointer-events:none}
.hero .eyebrow{font:800 .7rem system-ui,sans-serif;letter-spacing:.23em;color:#9f7860}
.hero h1{margin:24px 0 20px;width:min(780px,68vw);max-width:none;font-weight:normal;font-size:clamp(3.5rem,6vw,7.15rem);
 letter-spacing:-.068em;line-height:1.03;text-wrap:balance}
.hero h1 em{color:#b5798c}
.hero p{margin:18px 0 29px;font:400 clamp(.97rem,1.42vw,1.22rem)/1.72 system-ui,sans-serif;
 color:#566f61;width:min(600px,50vw)}
.hero button{border-radius:11px;font:700 .88rem system-ui,sans-serif;padding:15px 19px}
.hero .ornament{color:#ba976e;font-size:1.35rem;margin-bottom:14px}
.hero-visual{position:absolute;right:6.5%;top:50%;transform:translateY(-47%);
 width:min(30vw,410px);height:min(35vw,440px);pointer-events:none}
.portal-arch{position:absolute;inset:0 8% 0;border:7px solid #b99160;
 background:linear-gradient(135deg,#a7c9bc,#c7d6c0 70%,#e7d8b8);border-radius:48% 48% 11px 11px / 22% 22% 11px 11px;
 box-shadow:0 0 0 9px #fef9ee,0 0 0 12px #2c4d3e,25px 26px 55px #253e3436}
.portal-arch::before{content:"";position:absolute;inset:7%;border:2px solid #fef9e3aa;
 border-radius:48% 48% 5px 5px / 22% 22% 5px 5px;pointer-events:none}
.portal-arch::after{content:"";position:absolute;left:17%;right:17%;bottom:0;height:33%;
 background:repeating-linear-gradient(180deg,transparent 0 18%,#355a4855 18.5% 20%),
 linear-gradient(130deg,#e6c5a2,#f2dbb6);clip-path:polygon(0 100%,100% 100%,76% 0,24% 0)}
.portal-star{position:absolute;font-size:2.5rem;color:#f8edc8;text-shadow:0 0 14px #fff7d3}
.portal-star.one{top:26%;left:18%}.portal-star.two{top:42%;right:18%;font-size:1.5rem}
.portal-plinth{position:absolute;bottom:20%;left:36%;width:28%;height:28%;border:2px solid #314d3e;
 background:linear-gradient(135deg,#e7c6ac,#d8b98f);border-radius:10% 10% 4px 4px}
.portal-plinth::after{content:"✿";position:absolute;left:50%;top:-74%;transform:translateX(-50%);
 font-size:5rem;color:#ad7488;text-shadow:2px 3px #fff4d8}
.portal-label{position:absolute;left:17%;right:17%;bottom:-25px;text-align:center;padding:11px 8px;
 background:#fff9ee;border:2px solid #2d5142;box-shadow:0 5px 0 #2d5142;
 font:700 .69rem system-ui,sans-serif;letter-spacing:.17em;color:#365e4a;text-transform:uppercase}
.experience-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1250px;
 margin:-38px auto 35px;padding:0 20px;position:relative;z-index:3}
.experience-tile{background:#fffbf2;box-shadow:0 12px 32px #1f3c3012;border:1px solid #dce0d4;
 border-radius:13px;padding:18px 20px;min-width:0}
.experience-tile strong{display:block;font:normal 1.29rem Georgia,serif;letter-spacing:-.035em;margin:7px 0}
.experience-tile p{font:400 .77rem/1.62 system-ui,sans-serif;color:#667869;margin:0}
.experience-tile .num{font:800 .62rem system-ui,sans-serif;letter-spacing:.17em;color:#9e7b61}
.experience-tile a{color:#2c6346;text-decoration:underline;text-underline-offset:3px}
main{padding-top:30px}
.section-head{align-items:start;margin:30px 0 26px;gap:24px}
.section-head h2{font-size:clamp(2rem,3vw,3rem);letter-spacing:-.052em;line-height:1.14}
.section-head .sub{font:400 .86rem/1.6 system-ui,sans-serif;color:#6c786f}
.filters{align-items:center;max-width:720px}
.filters button{font:700 .74rem system-ui,sans-serif;border-radius:10px;padding:10px 13px;
 background:#fffbf4;border:1px solid #c4d2c3}
.filters button[aria-pressed=true]{background:#2d5844;color:#fffaf0}
.wing-choice{padding-left:0;gap:7px;font-size:.72rem}
.wing-choice select{font-size:.8rem;max-width:205px}
.search-field{display:flex;align-items:center;gap:8px;background:#fffaf2;padding:6px 10px;
 border:1px solid #bdcfc0;border-radius:10px;margin-top:8px;font:700 .75rem system-ui,sans-serif}
.search-field input{background:transparent;min-width:185px;max-width:220px;padding:6px 3px;border:0;box-shadow:none;font-size:.8rem}
.search-field input:focus{outline:none}
.search-field:focus-within{outline:2px solid #b7778c;outline-offset:2px}
.gallery{gap:22px}
.exhibit{position:relative;background:#fffcf7;border:1px solid #ddd8ca;border-radius:15px;
 padding:12px;box-shadow:0 7px 0 #e5ddd0,0 13px 30px #40523c0d;
 overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.exhibit:hover{transform:translateY(-3px);box-shadow:0 10px 0 #d8ddcf,0 19px 38px #40523c14}
.stage{height:219px;border:0;border-radius:10px;background:radial-gradient(circle at 50% 83%,#d0d7be,#e8e8d8 57%,#f7eee3 100%)}
.exhibit:nth-child(4n+1) .stage{background:radial-gradient(circle at 55% 82%,#bfd8d2,#e5f0e6 63%,#f8f2e5)}
.exhibit:nth-child(4n+2) .stage{background:radial-gradient(circle at 55% 82%,#ebd7b8,#f4e5cc 63%,#f8f2e5)}
.exhibit:nth-child(4n+3) .stage{background:radial-gradient(circle at 55% 82%,#e7cfda,#f3e6e5 63%,#f8f2e5)}
.stage::after{content:"";position:absolute;bottom:0;left:30%;right:30%;height:11px;
 background:#d9b48c;transform:perspective(70px) rotateX(40deg);border:1px solid #9d845f66}
.object{font-size:5.6rem}
.exhibit .plaque{padding:19px 13px 11px}
.accession{color:#957b60;font-size:.59rem}
.roomchip{border-left:3px solid #9abbaa;padding-left:8px;margin:10px 0!important;
 text-transform:uppercase;letter-spacing:.08em;font-size:.62rem}
.plaque h3{font-size:1.6rem;line-height:1.13;letter-spacing:-.036em;margin:13px 0}
.plaque .date{font:italic .82rem Georgia,serif;color:#9b7482}
.plaque p{font:400 .81rem/1.65 system-ui,sans-serif;color:#607369;margin-bottom:7px}
.exhibit button{font:700 .76rem system-ui,sans-serif;background:transparent;
 border-color:#a8bfae;border-radius:9px;margin:5px 13px 14px}
.exhibit button:hover{background:#e6efe4}
#empty{background:#fffbf2;border:1px dashed #9eb8a7;border-radius:14px;
 font:400 .9rem/1.7 system-ui,sans-serif;color:#607369}
.actions{margin-top:30px}
.actions button{font:700 .78rem system-ui,sans-serif;border-radius:9px}
dialog{border-radius:18px;border:1px solid #476b54;box-shadow:0 9px 0 #2d5140,0 25px 90px #1c362b4a;
 background:#fffcf4}
dialog h2{letter-spacing:-.052em}
.detail-art{border-radius:12px;background:radial-gradient(circle at 50% 80%,#dfe9da,#e9e9dc)}
form{font-family:system-ui,sans-serif}
footer{font:400 .77rem/1.7 system-ui,sans-serif;letter-spacing:.03em}
@media(max-width:1090px){
 .hero h1{width:min(750px,70vw);font-size:clamp(3rem,6vw,5.5rem)}
 .hero-visual{width:29vw;height:34vw;right:3%}
 .section-head{flex-direction:column}
}
@media(max-width:760px){
 .hero{padding:70px 22px 86px;text-align:center}
 .hero h1{width:auto;font-size:clamp(3.35rem,10vw,5rem);margin:20px auto}
 .hero p{width:auto;margin:19px auto 26px}
 .hero-visual{display:none}
 .hero .ornament{margin:0}
 .experience-strip{grid-template-columns:1fr;margin:-30px auto 20px;gap:10px}
 .experience-tile{padding:14px 17px}
 .experience-tile strong{display:inline;margin-right:8px;font-size:1.16rem}
 .experience-tile p{display:inline;font-size:.73rem}
 header nav{gap:8px}
 header{padding:15px 17px}
 main{padding:15px 16px 60px}
 .filters{width:100%;gap:6px}
 .filters button{font-size:.72rem}
 .search-field{width:100%}.search-field input{flex:1;max-width:none}
}
@media(prefers-reduced-motion:reduce){
 *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
 .exhibit:hover{transform:none}
}


.stage{isolation:isolate}
.exhibit .stage .card-favourite{
 position:absolute;right:12px;top:12px;z-index:3;
 padding:8px 11px;margin:0;background:#fffaf0e8;
 border:1px solid #c3cfc1;border-radius:99px;
 font:700 .7rem system-ui,sans-serif;box-shadow:0 3px 10px #2c493323;
 backdrop-filter:blur(6px);color:#375a49}
.exhibit .stage .card-favourite[aria-pressed="true"]{
 background:#f7e7ec;color:#955467;border-color:#c58d9b}
.exhibit .stage .card-favourite:hover{background:#e8f0e5}

.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.hero-tour-link{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border:1px solid #789684;border-radius:99px;text-decoration:none;color:#244438;background:#fffaf1;font:700 .8rem system-ui,sans-serif}.hero-tour-link:hover{background:#e5ede1}.hero-tour-link:focus-visible{outline:3px solid #866337;outline-offset:4px}
