/* Owen Hemsath visual — cinematic personal brand. TT5 + this file. */
:root{
  --oh-bg:#0b0b0d;
  --oh-fg:#f6f1e8;
  --oh-muted:#b9b2a4;
  --oh-gold:#e0b04a;
  --oh-line:rgba(246,241,232,.14);
  --oh-card:#141418;
}
html,body,.wp-site-blocks{
  background:var(--oh-bg)!important;
  color:var(--oh-fg)!important;
}
.wp-block-site-title a,
.wp-block-navigation a,
.wp-block-site-tagline{
  color:var(--oh-fg)!important;
}
header.wp-block-template-part,
.wp-block-template-part header{
  background:var(--oh-bg)!important;
  border-bottom:1px solid var(--oh-line);
}
/* Kill TT5 dummy footer chrome if leftover */
footer a[href="#"],
footer .wp-block-paragraph a[href="https://wordpress.org"],
footer p.has-small-font-size{
  display:none!important;
}
/* Widen the thin TT5 column */
.home .wp-block-post-title,
.page-id-3348 .wp-block-post-title{display:none!important;}
body .entry-content,
body .wp-block-post-content,
.is-layout-constrained > .oh-page,
.oh-page{
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.oh-page{
  font-family:Manrope,system-ui,sans-serif;
  color:var(--oh-fg);
  background:var(--oh-bg);
}
.oh-page a{color:var(--oh-gold);text-decoration:none;}
.oh-page a:hover{text-decoration:underline;}
.oh-hero{
  position:relative;
  min-height:86vh;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:#000;
}
.oh-hero img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 18%;
  filter:saturate(1.05) contrast(1.05);
}
.oh-hero:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(11,11,13,.15) 0%,rgba(11,11,13,.2) 40%,rgba(11,11,13,.88) 100%);
}
.oh-hero-copy{
  position:relative;
  z-index:2;
  padding:min(8vw,7rem) min(6vw,5rem) min(6vw,4.5rem);
  max-width:58rem;
}
.oh-kicker{
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:.78rem;
  font-weight:700;
  color:var(--oh-gold);
  margin:0 0 .8rem;
}
.oh-hero h1,.oh-page h1.oh-title{
  font-size:clamp(2rem,5.2vw,4.4rem);
  line-height:1.05;
  font-weight:500;
  letter-spacing:-.03em;
  margin:0 0 1.1rem;
  color:#fff;
}
.oh-lead{font-size:clamp(1.05rem,1.6vw,1.35rem);color:#efe8da;max-width:40rem;margin:0 0 1.6rem;}
.oh-cta{display:flex;flex-wrap:wrap;gap:.7rem;}
.oh-btn{
  display:inline-block;
  padding:.85rem 1.35rem;
  border:1px solid var(--oh-fg);
  color:var(--oh-fg)!important;
  text-decoration:none!important;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:.78rem;
  font-weight:700;
}
.oh-btn.solid{background:var(--oh-gold);border-color:var(--oh-gold);color:#111!important;}
.oh-band{padding:min(8vw,5.5rem) min(5vw,4rem);}
.oh-band.alt{background:#101014;}
.oh-band h2{
  font-size:clamp(1.8rem,3.4vw,3rem);
  margin:0 0 .6rem;
  letter-spacing:-.02em;
}
.oh-band .oh-intro{max-width:40rem;color:var(--oh-muted);font-size:1.12rem;margin:0 0 1.8rem;}
.oh-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
}
@media(max-width:1100px){.oh-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.oh-grid{grid-template-columns:1fr;}}
.oh-card{
  display:block;
  background:var(--oh-card);
  color:var(--oh-fg)!important;
  text-decoration:none!important;
  border:1px solid var(--oh-line);
  overflow:hidden;
}
.oh-card img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  display:block;
}
.oh-card span{
  display:block;
  padding:.75rem .85rem 1rem;
  font-size:.92rem;
  line-height:1.3;
}
.oh-quote{
  font-size:clamp(1.3rem,2.4vw,2rem);
  line-height:1.35;
  max-width:42rem;
  margin:0 0 1.2rem;
  color:#fff;
}
.oh-bio{
  border:1px solid var(--oh-line);
  padding:1.4rem 1.5rem;
  max-width:46rem;
  color:var(--oh-muted);
}
.oh-social{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;margin-top:1.4rem;}
.oh-embed{position:relative;aspect-ratio:16/9;max-width:56rem;}
.oh-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.oh-row-label{letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;color:var(--oh-gold);margin:2rem 0 .8rem;}
.oh-gal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;}
@media(max-width:800px){.oh-gal{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.oh-gal{grid-template-columns:1fr;}}
.oh-gal figure{margin:0;}
.oh-gal img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;}
.oh-gal figcaption{font-size:.8rem;color:var(--oh-muted);padding:.45rem 0 .2rem;}
.oh-contact ul{list-style:none;padding:0;margin:0 0 1.5rem;}
.oh-contact li{margin:.45rem 0;font-size:1.15rem;}
footer.wp-block-template-part,
.oh-foot{
  background:#070708!important;
  color:var(--oh-fg)!important;
  border-top:1px solid var(--oh-line);
}
.oh-foot a{color:var(--oh-gold);}
