:root{
  --ink:#363b3e;--ink-2:#50575b;--red:#e74c3c;--red-d:#c0392b;--grey:#9ba0a3;
  --line:#e3e5e7;--paper:#fff;--paper-2:#f4f4f4;--body:#50575b;
  --f:"Proxima Nova","Helvetica Neue",Helvetica,Arial,sans-serif;
  --fs:"Helvetica Neue",Helvetica,Arial,sans-serif;--wrap:1120px}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--fs);color:var(--body);background:var(--paper);font-size:16px;line-height:1.7}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
a{color:var(--red)}
.skip{position:absolute;left:-9999px}.skip:focus{left:8px;top:8px;background:var(--ink);color:#fff;padding:8px 14px;z-index:100}
h1,h2,h3{font-family:var(--f);color:var(--ink);line-height:1.2;font-weight:600}
/* header */
.hdr{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}
.hdr-in{display:flex;align-items:center;gap:24px;min-height:76px}
.brand{margin-right:auto;display:flex;align-items:center;text-decoration:none}
.brand img{width:44px;height:44px}
.nav{display:flex;gap:4px}
.nav a{color:var(--ink);text-decoration:none;padding:9px 15px;border-radius:3px;font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em}
.nav a:hover,.nav a[aria-current=page]{color:var(--red)}
.burger{display:none;background:none;border:0;flex-direction:column;gap:5px;cursor:pointer;padding:11px;margin-left:auto;min-width:44px;min-height:44px}
.burger span{width:24px;height:2px;background:var(--ink);display:block}
/* hero */
.hero{background:var(--paper-2);padding:0}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:520px;align-items:center}
.hero-txt{padding:60px 24px 60px 0}
.hero-txt .kicker{text-transform:uppercase;letter-spacing:.22em;font-size:.8rem;color:var(--red);font-weight:700;margin:0 0 14px}
.hero-txt h1{font-size:3rem;margin:0 0 16px;letter-spacing:.01em}
.hero-txt p{font-size:1.15rem;margin:0 0 26px;max-width:44ch}
.hero-img{height:100%;min-height:520px;background:var(--ink) center/cover no-repeat}
.btn{display:inline-block;background:var(--ink);color:#fff;text-decoration:none;padding:13px 30px;border-radius:3px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:.82rem;border:0;cursor:pointer}
.btn:hover{background:var(--red)}
.btn.red{background:var(--red)}.btn.red:hover{background:var(--red-d)}
.btn.ghost{background:transparent;border:1px solid var(--ink);color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:#fff}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap}
/* sections */
section{padding:64px 0}
.sec-alt{background:var(--paper-2)}
.sec h2{font-size:1.9rem;margin:0 0 20px}
.sec .kicker{text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;color:var(--red);font-weight:700;margin:0 0 10px}
.lead{max-width:70ch;color:var(--body);font-size:1.05rem}
.two-col{display:grid;grid-template-columns:1fr 1.3fr;gap:48px;align-items:start}
.two-col img{border-radius:4px}
/* credits list */
.credits{margin-top:24px}
.credit-group{margin-bottom:28px}
.credit-group h3{font-size:1.15rem;color:var(--ink);border-bottom:2px solid var(--red);padding-bottom:8px;margin:0 0 14px;text-transform:uppercase;letter-spacing:.05em}
.credit-row{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.96rem}
.credit-row .role{color:var(--ink);font-weight:600}
.credit-row .prod{color:var(--body)}
.credit-row .yr{color:var(--grey);font-size:.88rem;text-align:right}
/* gallery — professional */
.gallery-note{max-width:70ch;margin:0 0 28px;color:var(--body)}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.gallery-grid figure{margin:0}
.gallery-grid img{width:100%;border-radius:4px;border:1px solid var(--line)}
.gallery-grid figcaption{font-size:.85rem;color:var(--grey);margin-top:6px}
/* creative portfolio */
.port-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;margin-top:30px}
.port-card{border:1px solid var(--line);border-radius:6px;padding:26px 22px;background:#fff}
.port-card h3{font-size:1.1rem;margin:0 0 8px;color:var(--ink)}
.port-card p{margin:0;color:var(--body);font-size:.93rem}
/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:24px}
.contact-block h3{font-size:1rem;text-transform:uppercase;letter-spacing:.08em;color:var(--red);margin:0 0 8px}
.contact-block p{margin:2px 0}
.crumbs{font-size:.82rem;color:var(--grey);padding:16px 0;text-transform:uppercase;letter-spacing:.08em}
.crumbs a{color:var(--red);text-decoration:none}
.prose{max-width:760px}.prose p{margin:0 0 1em}
/* footer */
.ftr{background:var(--ink);color:#c3c7c9;padding:44px 0 24px;font-size:.9rem}
.ftr-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:34px;margin-bottom:22px}
.ftr h4{color:#fff;font-family:var(--f);margin:0 0 12px;text-transform:uppercase;letter-spacing:.06em;font-size:.9rem}
.ftr a{color:#c3c7c9;text-decoration:none}.ftr a:hover{color:#fff}
.ftr ul{list-style:none;margin:0;padding:0}.ftr li{padding:3px 0}
.ftr-bot{border-top:1px solid #4a5054;padding-top:16px;font-size:.82rem;text-align:center}
@media(max-width:820px){
  .nav{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;display:none;padding:10px;border-bottom:1px solid var(--line)}
  .nav.open{display:flex}.burger{display:flex}
  .hero-grid,.two-col,.contact-grid,.ftr-grid{grid-template-columns:1fr}
  .hero-txt{padding:44px 0}.hero-img{min-height:340px}
  .hero-txt h1{font-size:2.2rem}.credit-row{grid-template-columns:1fr;gap:2px}
  .credit-row .yr{text-align:left}
}

/* --- original-matching homepage: minimal intro band + full-bleed hero --- */
.intro-band{background:#fff;text-align:center;padding:44px 0 40px}
.intro-mark{margin:0 auto 18px;width:150px;height:auto}
.intro-links{font-family:var(--f);letter-spacing:.14em;font-size:1.05rem;margin:0;text-transform:uppercase}
.intro-links a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:2px}
.intro-links a:hover{color:var(--red);border-color:var(--red)}
.intro-links span{color:var(--red);margin:0 6px;border:0}
/* full-bleed hero photo with overlaid serif caps (matches original) */
.bleed-hero{position:relative;width:100%;min-height:620px;background:#eee center/cover no-repeat;padding:0;display:flex;align-items:center}
.bleed-inner{max-width:var(--wrap);margin:0 auto;padding:0 24px;width:100%}
.bleed-hero .bleed-statement{font-family:Georgia,"Times New Roman",serif;font-weight:700;text-transform:uppercase;
  font-size:2.6rem;line-height:1.24;color:#111;letter-spacing:.01em;margin:0;max-width:16ch;
  text-shadow:0 1px 12px rgba(255,255,255,.55)}
@media(max-width:900px){.bleed-hero{min-height:440px}.bleed-hero .bleed-statement{font-size:1.8rem}}
@media(max-width:560px){.bleed-hero{min-height:360px}.bleed-hero .bleed-statement{font-size:1.4rem;text-shadow:0 1px 16px rgba(255,255,255,.8)}}

.intro-h1{font-family:var(--f);font-size:1.5rem;font-weight:600;color:var(--ink);margin:0 0 14px;letter-spacing:.04em}
@media(max-width:560px){.intro-h1{font-size:1.2rem}}
