/* seanfader.com prototype — one template, six media profiles */
:root{
  --ink:#111; --muted:#757575; --hairline:#e4e4e4; --bg:#fff; --accent:#111;
  --sans:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
p a,li a,figcaption a{border-bottom:1px solid #bbb}
p a:hover,li a:hover{border-color:var(--ink)}

/* header */
.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.95);backdrop-filter:blur(6px);
  display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;
  padding:1.1rem 4vw;border-bottom:1px solid var(--hairline)}
.wordmark{font-weight:700;letter-spacing:.22em;font-size:.95rem}
.site-nav{display:flex;gap:1.6rem;flex-wrap:wrap}
.site-nav a{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-bottom:2px}
.site-nav a:hover,.site-nav a.active{color:var(--ink);border-bottom:1px solid var(--ink)}

main{min-height:70vh}

/* footer */
.site-footer{border-top:1px solid var(--hairline);margin-top:6rem;padding:2rem 4vw;color:var(--muted);font-size:.82rem}
.site-footer a{border-bottom:1px solid #ccc}

/* home */
.now-strip{padding:2.2rem 4vw 0}
.now-strip .kicker{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.now-strip h2{font-size:clamp(1.15rem,2.6vw,1.6rem);font-weight:600;margin:.4rem 0 .2rem;max-width:34em}
.now-strip .venue{color:var(--muted);font-size:.95rem}
.now-hero{margin:1.6rem 0 0}
.now-hero img{width:100%;max-height:72vh;object-fit:cover}
.index{padding:0 4vw}
.index h2{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);
  margin:4rem 0 1.2rem;padding-top:1.6rem;border-top:1px solid var(--hairline)}
.work-row{display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:2rem;align-items:center;
  padding:1.4rem 0;border-bottom:1px solid var(--hairline)}
.work-row:last-child{border-bottom:none}
.work-row img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#f3f3f3}
.work-row .t{display:block;font-size:clamp(1.1rem,2.4vw,1.5rem);font-weight:600;line-height:1.25}
.work-row .m{display:block;color:var(--muted);font-size:.92rem;margin-top:.35rem}
.work-row:hover .t{text-decoration:underline;text-underline-offset:4px}

/* project pages */
.project{padding:3.2rem 4vw 0;max-width:1200px;margin:0 auto}
.project-head h1{font-size:clamp(1.7rem,4.5vw,2.7rem);font-weight:650;line-height:1.12;letter-spacing:-.01em;max-width:24em}
.medialine{color:var(--muted);margin-top:.7rem;font-size:.98rem}
.anchor-nav{position:sticky;top:3.45rem;z-index:9;background:rgba(255,255,255,.95);backdrop-filter:blur(6px);
  margin-top:1.4rem;padding:.8rem 0;border-bottom:1px solid var(--hairline);
  font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.anchor-nav a{color:var(--muted);border-bottom:1px solid transparent;padding-bottom:2px}
.anchor-nav a:hover{color:var(--ink);border-color:var(--ink)}
.anchor-nav .sep{color:#cfcfcf;margin:0 .8rem}
.sequence,.install-views,.press-links{scroll-margin-top:8.2rem}
.index{scroll-margin-top:5.5rem}
@media (max-width:720px){.anchor-nav{top:3.2rem}}
.statement{max-width:44em;margin:2.4rem 0 0;font-size:1.06rem;line-height:1.7}
.statement p{margin-bottom:1.1em}
.statement .attn{color:var(--muted);font-style:italic}
.pullquote{max-width:40em;margin:2.6rem 0;padding-left:1.4rem;border-left:2px solid var(--ink);
  font-size:1.15rem;line-height:1.6;font-style:italic}
.pullquote cite{display:block;font-style:normal;color:var(--muted);font-size:.9rem;margin-top:.6rem}
.build-note{max-width:44em;margin:1.6rem 0 0;padding:.65rem .9rem;background:#f6f6f6;color:var(--muted);
  font-size:.82rem;border-radius:3px}

.sequence{margin-top:3.5rem}
figure{margin:0 auto 4.2rem;max-width:1000px}
figure img{margin:0 auto;max-height:86vh;width:auto;max-width:100%}
figcaption{font-size:.82rem;color:var(--muted);margin-top:.7rem;text-align:center;line-height:1.5}
.chapter{max-width:44em;margin:0 auto 4.2rem;font-size:1.02rem;line-height:1.7}
.chapter h3{font-size:1.02rem;font-weight:650;margin-bottom:.7em}
.chapter p{margin-bottom:1em}

/* video */
.video-wrap{position:relative;padding-top:56.25%;background:#000}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%}

/* audio pairs */
.with-audio{max-width:760px}
.with-audio figcaption{text-align:left;display:flex;flex-direction:column;gap:.45rem;
  border:1px solid var(--hairline);border-top:none;padding:.9rem 1rem;margin-top:0}
.cap-title{font-size:.95rem;color:var(--ink);font-weight:600}
.audio-slot{display:flex;align-items:center;gap:.6rem;font-size:.85rem;color:var(--ink)}
.play-glyph{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;
  border:1px solid var(--ink);border-radius:50%;font-size:.6rem;flex:none}
.pending{color:var(--muted);font-style:italic}

/* bands */
.install-views,.press-links{border-top:1px solid var(--hairline);margin-top:4.5rem;padding-top:2.2rem}
.install-views h2,.press-links h2{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--muted);margin-bottom:2.2rem}
.press-links ul{list-style:none;max-width:44em}
.press-links li{margin-bottom:1rem;font-size:.98rem}
.press-links li span{color:var(--muted);display:block;font-size:.85rem}

.button{display:inline-block;border:1px solid var(--ink);padding:.7em 1.2em;font-size:.85rem;
  letter-spacing:.08em;text-transform:uppercase;margin:1.2rem 1rem 0 0}
.button:hover{background:var(--ink);color:#fff}
.button-row{margin:1rem 0 0}

.pagination{display:flex;justify-content:space-between;border-top:1px solid var(--hairline);
  margin-top:4.5rem;padding:1.6rem 0 0;font-size:.92rem}
.pagination a:hover{text-decoration:underline;text-underline-offset:4px}

/* simple pages */
.simple{padding:3.2rem 4vw;max-width:1200px;margin:0 auto}
.simple h1{font-size:clamp(1.6rem,4vw,2.3rem);font-weight:650;margin-bottom:1.6rem}
.about-grid{display:grid;grid-template-columns:minmax(0,380px) 1fr;gap:3rem;align-items:start}
.about-grid .bio{max-width:44em;font-size:1.02rem;line-height:1.7}
.about-grid .bio p{margin-bottom:1em}
.press-list{list-style:none;max-width:52em}
.press-list li{border-bottom:1px solid var(--hairline);padding:1.6rem 0}
.press-list h3{font-size:1.05rem;font-weight:650;margin-bottom:.5rem}
.press-list blockquote{color:#333;font-size:.95rem;line-height:1.6;margin:.4rem 0 .7rem;max-width:46em}
.press-list .src{font-size:.85rem}
.contact-block{font-size:1.05rem;line-height:1.8;max-width:44em}
.contact-block h2{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:2rem 0 .5rem}

/* project cards (Projects index) */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}
.card{border:1px solid var(--hairline);padding:1.6rem}
.card h2{font-size:1.25rem;font-weight:650;margin-bottom:.6rem}
.card p{font-size:.95rem;color:#333;margin-bottom:1rem;line-height:1.6}

@media (max-width:720px){
  .work-row{grid-template-columns:1fr;gap:.9rem}
  .about-grid{grid-template-columns:1fr}
  .site-header{padding:1rem 5vw}
  .site-nav{gap:1rem}
  figure{margin-bottom:3rem}
}
