:root{
  --bg:#070912; --bg2:#0A0D18;
  --blue:#1E46E6; --blue-bright:#3A63FF;
  --ink:#EEF0F8; --muted:#A2AAC0;
  --line:rgba(238,240,248,.14);
  --max:1280px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:"Hanken Grotesk",system-ui,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
:focus-visible{outline:2px solid var(--blue-bright);outline-offset:3px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 40px}
.arch{font-family:"Archivo",system-ui,sans-serif}
.eyebrow{font-size:.7rem;letter-spacing:.26em;text-transform:uppercase;font-weight:700;color:var(--muted)}
section{position:relative}

/* ---------- header ---------- */
header{position:fixed;top:0;left:0;right:0;z-index:30;transition:background .4s,backdrop-filter .4s,border-color .4s;border-bottom:1px solid transparent}
header.solid{background:rgba(7,9,18,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:104px}
.brand{display:flex;align-items:center;gap:18px}
.brand img{width:60px;height:auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.45))}
.brand .nm{font-family:"Archivo",sans-serif;font-weight:800;letter-spacing:.10em;font-size:2.05rem;text-transform:uppercase;line-height:1;white-space:nowrap}
.nav-right{display:flex;align-items:center;gap:42px}
.nav-links{display:flex;gap:38px}
.nav-links a{font-family:"Archivo",sans-serif;font-size:.98rem;letter-spacing:.11em;text-transform:uppercase;font-weight:600;color:var(--ink);opacity:.85;transition:opacity .2s,color .2s}
.nav-links a:hover,.nav-links a[aria-current]{opacity:1;color:var(--blue-bright)}
.menu-btn{display:none;background:none;border:0;color:var(--ink);cursor:pointer;font-family:"Archivo",system-ui,sans-serif;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
/* sub-pages: header sits on a strip of the peacock texture, like the layouts */
.page-top{height:104px;background:linear-gradient(rgba(7,9,18,.35),rgba(7,9,18,.55)),url(../images/bg/1.jpg) center 30%/cover}

/* ---------- artwork cards (shared) ---------- */
.card{display:block}
.card .ph{position:relative;overflow:hidden;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.5);background:#0d1226}
.card .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.card:hover .ph img,.card:focus-visible .ph img{transform:scale(1.045)}
.card h3{font-family:"Archivo",system-ui,sans-serif;font-weight:700;font-size:1.12rem;letter-spacing:.02em;text-transform:uppercase;margin:18px 0 6px}
.card .dim{font-size:.95rem;color:var(--muted);letter-spacing:.01em}
.card .dim .sep{margin:0 .35em}
.card .dim b{color:#fff;font-weight:600}

/* ---------- footer strip (sub-pages) ---------- */
.site-foot{background:var(--bg);border-top:1px solid var(--line);padding:70px 0 44px}
.foot-end{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.foot-end img{width:190px;opacity:.95}
.foot-end .mail{font-size:.92rem;color:var(--muted)}
.foot-end .mail a:hover{color:var(--blue-bright)}

@media(max-width:1100px){.brand .nm{font-size:1.6rem}.nav-links{gap:26px}}
@media(max-width:900px){
  .nav{height:80px}.page-top{height:80px}
  .brand img{width:44px}
  .brand .nm{font-size:1.25rem}
  .nav-links{display:none}
  .nav-links.open{display:flex;position:absolute;top:80px;left:0;right:0;flex-direction:column;gap:0;background:rgba(7,9,18,.96);padding:6px 22px}
  .nav-links.open a{padding:15px 0;border-bottom:1px solid var(--line)}
  .menu-btn{display:block}
}
@media(max-width:640px){
  .wrap{padding:0 22px}
  .brand{gap:12px}.brand img{width:36px}.brand .nm{font-size:1.02rem;letter-spacing:.07em}
  .nav{gap:14px}
  .foot-end{flex-direction:column;align-items:center;text-align:center;gap:18px}
}
@media(max-width:380px){.brand .nm{font-size:.9rem;letter-spacing:.05em}}
@media(prefers-reduced-motion:reduce){.card .ph img{transition:none}.card:hover .ph img{transform:none}}
