*{box-sizing:border-box}body{margin:0;background:#f7f4ee;color:#1e1c19;font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit}.site-header{background:#fbfaf7;border-bottom:1px solid #ddd6ca;position:sticky;top:0;z-index:10}.nav{max-width:1180px;margin:auto;padding:16px 24px;display:flex;align-items:center;gap:22px}.brand img{width:120px;height:auto;display:block}.navlinks{display:flex;gap:18px;margin-left:auto;align-items:center;flex-wrap:nowrap;white-space:nowrap}.navlinks a{text-decoration:none;font-size:12px;letter-spacing:.07em;text-transform:uppercase}.btn{display:inline-block;padding:11px 18px;border:1px solid #222;text-decoration:none;background:#222;color:#fff}.btn.light{background:transparent;color:#222}.hero{max-width:1180px;margin:0 auto;padding:90px 24px 70px;display:grid;grid-template-columns:1.15fr .85fr;gap:50px}.eyebrow{letter-spacing:.18em;text-transform:uppercase;font-size:12px}.hero h1{font-family:Georgia,serif;font-size:58px;line-height:1.05;font-weight:400;margin:14px 0}.hero p{font-size:19px;max-width:650px}.hero-panel{border:1px solid #d8d0c4;background:#fbfaf7;padding:34px}.section{max-width:1180px;margin:auto;padding:55px 24px}.section h2{font-family:Georgia,serif;font-size:36px;font-weight:400}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fbfaf7;border:1px solid #ddd6ca;padding:26px}.card h3{font-family:Georgia,serif;font-size:25px;font-weight:400;margin-top:0}.muted{color:#6e685f}.art-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.art{background:#fff;border:1px solid #ded8cf}.art img{width:100%;aspect-ratio:1/1;object-fit:cover}.art .pad{padding:16px}.footer{border-top:1px solid #ddd6ca;padding:35px 24px;margin-top:50px;background:#f1ede5}.footer-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:20px}.form-wrap{max-width:820px;margin:60px auto;padding:0 24px}.form{background:#fbfaf7;border:1px solid #ddd6ca;padding:30px}.field{margin-bottom:18px}.field label{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px}.field input,.field textarea,.field select{width:100%;padding:12px;border:1px solid #cfc7ba;background:#fff;font:inherit}.field textarea{min-height:130px}.notice{padding:15px 18px;border:1px solid #d5ccbe;background:#f1ece3;margin:20px 0}.success{border-color:#9bb59e;background:#edf5ee}.error{border-color:#c99b9b;background:#faeeee}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;border-bottom:1px solid #ddd6ca;text-align:left}.admin{max-width:1200px;margin:40px auto;padding:0 24px}.badge{display:inline-block;padding:4px 8px;border:1px solid #cfc7ba;font-size:12px}.search{display:flex;gap:10px;margin:25px 0}.search input{flex:1;padding:12px;border:1px solid #cfc7ba}@media(max-width:1120px) and (min-width:801px){.nav{gap:16px;padding-left:18px;padding-right:18px}.brand img{width:105px}.navlinks{gap:13px}.navlinks a{font-size:11px;letter-spacing:.05em}.ce-back{padding-left:10px}}@media(max-width:800px){.hero{grid-template-columns:1fr;padding-top:55px}.hero h1{font-size:43px}.grid,.art-grid{grid-template-columns:1fr 1fr}.nav{align-items:flex-start;flex-direction:column}.navlinks{margin-left:0}.footer-inner{flex-direction:column}}@media(max-width:520px){.grid,.art-grid{grid-template-columns:1fr}.hero h1{font-size:38px}}

/* Responsive Museum navigation — final */
.menu-toggle{display:none!important;margin-left:auto;width:44px;height:40px;padding:8px;border:1px solid #d5cec3;background:#fbfaf7;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:4px}
.menu-toggle span{display:block;width:22px;height:2px;background:#222}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ce-back{border-left:1px solid #d5cec3;padding-left:14px}

/* Desktop/tablet: one clean navigation row; hamburger is hidden. */
@media(min-width:701px){
  .nav{max-width:1240px;gap:16px;padding-left:20px;padding-right:20px;flex-direction:row;align-items:center}
  .brand{flex:0 0 auto}
  .brand img{width:105px}
  .menu-toggle{display:none!important}
  .navlinks{display:flex!important;position:static;margin-left:auto;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:nowrap;white-space:nowrap;min-width:0}
  .navlinks a{font-size:11px;letter-spacing:.055em;white-space:nowrap}
  .navlinks .ce-back{padding-left:12px;flex:0 0 auto}
}

/* Mobile only: hamburger replaces the navigation links. */
@media(max-width:700px){
  .nav{position:relative;display:flex;flex-direction:row;align-items:center;gap:16px;padding:14px 20px}
  .brand img{width:120px}
  .menu-toggle{display:flex!important}
  .navlinks{display:none!important;position:absolute;left:0;right:0;top:100%;margin:0;padding:16px 20px 20px;background:#fbfaf7;border-top:1px solid #ddd6ca;border-bottom:1px solid #ddd6ca;box-shadow:0 8px 20px rgba(0,0,0,.06);flex-direction:column;align-items:stretch;gap:0;z-index:20}
  .navlinks.open{display:flex!important}
  .navlinks a{padding:12px 4px;border-bottom:1px solid #eee9e1}
  .navlinks a:last-child{border-bottom:0}
  .navlinks .ce-back{border-left:0;padding-left:4px;margin-top:6px;padding-top:14px;border-top:1px solid #d5cec3}
}

@media(max-width:800px){
  .hero{grid-template-columns:1fr;padding-top:55px}
  .hero h1{font-size:43px}
  .grid,.art-grid{grid-template-columns:1fr 1fr}
  .footer-inner{flex-direction:column}
}
@media(max-width:520px){.grid,.art-grid{grid-template-columns:1fr}.hero h1{font-size:38px}}

/* Final museum completion: biographies and image source handling */
.image-source{margin-top:9px;font-size:11px;line-height:1.4}.image-source a{text-decoration:underline}.artist-bio{max-width:860px;background:#fbfaf7;border:1px solid #ddd6ca;padding:28px 30px;margin:28px 0 48px}.artist-bio p{font-size:18px}.artist-meta{color:#6e685f;letter-spacing:.03em}.art-detail-image{width:100%;max-height:700px;object-fit:contain;background:#eee;display:block}.failed-image{background:#eee}
.exh-picker{border:1px solid #ddd6ca;background:#fbfaf7;padding:24px}.exh-picker-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.exh-art-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:12px 0;border-top:1px solid #e4ded4}.exh-art-check{display:flex;align-items:flex-start;gap:12px;cursor:pointer;flex:1}.exh-art-check input{margin-top:5px}.order-field{display:flex;align-items:center;gap:8px;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.order-field input{width:72px;padding:8px;border:1px solid #cfc7ba;background:#fff}.exh-card{padding:0;overflow:hidden}.exh-card .pad{padding:22px}.exh-cover{width:100%;aspect-ratio:16/9;object-fit:cover;background:#eee}.exh-card h3{margin:8px 0}.exh-card p{margin:7px 0 16px}@media(max-width:700px){.exh-picker-head{display:block}.exh-picker-head .search{margin-top:15px!important;min-width:0!important}.exh-art-row{align-items:flex-start}.order-field{flex-direction:column;align-items:flex-end}}

/* Digital Museum Walk Through */
.walkthrough{background:#171512;color:#f5f0e8}.walk-hero{background:radial-gradient(circle at 50% 0%,#3a342b 0,#171512 55%);border-bottom:1px solid #4a4339}.walk-hero .section{padding-top:78px;padding-bottom:58px}.walk-hero h1{font-family:Georgia,serif;font-size:64px;font-weight:400;line-height:1.05;margin:12px 0}.walk-lead{font-size:21px;max-width:760px;color:#ddd5c9}.walk-note{font-size:13px;max-width:760px;color:#aaa196;margin-top:20px}.walk-controls{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.walk-controls .btn{border-color:#cfc2aa}.walk-controls .btn.light{color:#f5f0e8;background:transparent}.walk-controls .btn.active{background:#f5f0e8;color:#171512}.walk-stage{position:relative;background:#0e0d0b}.walk-room{display:none;min-height:760px;position:relative;overflow:hidden;padding:70px 5vw 0;background:linear-gradient(#312b24 0,#25211c 55%,#161310 56%,#100f0d 100%)}.walk-room.active{display:block}.room-copy{position:relative;z-index:2;max-width:700px;margin:0 auto 55px;text-align:center}.room-copy .eyebrow{color:#c9b99b}.room-copy h2{font-family:Georgia,serif;font-size:42px;font-weight:400;margin:8px 0}.room-copy p{color:#c5bdb2;margin:0 auto;max-width:620px}.gallery-wall{position:relative;z-index:2;max-width:1120px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;align-items:end}.wall-work{border:0;background:transparent;color:#f5f0e8;padding:0;cursor:pointer;text-align:left}.wall-work .frame{display:block;background:#080807;padding:13px 13px 42px;box-shadow:0 18px 35px rgba(0,0,0,.45);transform:translateY(0);transition:transform .25s ease,box-shadow .25s ease}.wall-work:hover .frame,.wall-work:focus-visible .frame{transform:translateY(-8px);box-shadow:0 26px 45px rgba(0,0,0,.58)}.wall-work img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#24211d}.wall-label{display:block;padding:10px 4px 0}.wall-label strong{display:block;font-family:Georgia,serif;font-size:16px;font-weight:400}.wall-label small{display:block;color:#aaa196;margin-top:2px}.room-floor{position:absolute;left:0;right:0;bottom:0;height:210px;background:linear-gradient(175deg,#211c17,#0b0a08);transform:skewY(-4deg);transform-origin:bottom left}.walk-end{background:#171512;color:#f5f0e8}.walk-end h2{font-family:Georgia,serif;font-size:42px;font-weight:400}.work-modal{position:fixed;inset:0;display:none;z-index:100;background:rgba(0,0,0,.78);padding:5vh 4vw;align-items:center;justify-content:center}.work-modal.open{display:flex}.modal-backdrop{position:absolute;inset:0}.modal-card{position:relative;z-index:1;max-width:980px;width:100%;max-height:90vh;overflow:auto;background:#f7f4ee;color:#1e1c19;display:grid;grid-template-columns:1.25fr .75fr;box-shadow:0 30px 80px rgba(0,0,0,.6)}.modal-card>img{width:100%;height:100%;max-height:80vh;object-fit:contain;background:#111}.modal-copy{padding:42px}.modal-copy h2{font-family:Georgia,serif;font-size:38px;font-weight:400;line-height:1.1}.modal-close{position:absolute;right:12px;top:8px;width:38px;height:38px;border:1px solid #bbb2a5;background:#f7f4ee;color:#222;font-size:27px;line-height:1;cursor:pointer}@media(max-width:900px){.gallery-wall{grid-template-columns:repeat(2,1fr);max-width:760px}.walk-room{min-height:920px}.modal-card{grid-template-columns:1fr}.modal-card>img{max-height:55vh}}@media(max-width:520px){.walk-hero h1{font-size:46px}.walk-room{padding-left:20px;padding-right:20px}.gallery-wall{grid-template-columns:1fr 1fr;gap:18px}.wall-work .frame{padding:8px 8px 28px}.room-copy h2{font-size:34px}.room-floor{height:150px}.walk-room{min-height:760px}.modal-copy{padding:28px}.modal-copy h2{font-size:30px}}
/* Walk Through: show only images that successfully load. */
.wall-work{display:none}.wall-work.image-ready{display:block}.wall-work img{display:block}.wall-work .frame{min-height:320px}.walk-room[hidden],.room-nav[hidden]{display:none!important}
@media(max-width:900px){.wall-work .frame{min-height:260px}}
.admin-artist-portrait{display:block;width:180px;height:180px;object-fit:cover;margin-bottom:20px}
