:root{--bg:#050505;--ink:#111;--paper:#fff;--muted:#aaa;--line:#2a2a2a;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.6}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;margin:.2em 0}.site-header{position:sticky;top:0;z-index:20;background:rgba(5,5,5,.96);display:flex;align-items:center;justify-content:space-between;padding:10px 5vw;border-bottom:1px solid #222}.brand img{width:220px;height:90px;object-fit:contain;object-position:left center}.site-header nav{display:flex;gap:28px}.site-header a{color:#fff;text-decoration:none;letter-spacing:.12em;font-size:.8rem;text-transform:uppercase}.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:1.5rem}.hero{min-height:72vh;background:radial-gradient(circle at 70% 35%,#333 0,#111 28%,#050505 65%);color:#fff;display:flex;align-items:center}.hero-inner{width:min(var(--max),90vw);margin:auto;padding:7rem 0}.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:.75rem;color:#8e8e8e}.hero h1{font-size:clamp(3rem,7vw,6.8rem);max-width:900px;line-height:1.02}.lead{font-size:1.15rem;max-width:720px;color:#ccc}.btn{display:inline-block;background:#fff;color:#050505;border:1px solid #fff;padding:.9rem 1.4rem;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;margin-top:1rem;cursor:pointer}.section{padding:6rem 5vw}.section>*{max-width:var(--max);margin-left:auto;margin-right:auto}.section-head{margin-bottom:2rem}.section h2{font-size:clamp(2.5rem,5vw,4.5rem)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.placeholder{aspect-ratio:4/3;margin:0;background:linear-gradient(145deg,#e8e8e8,#cfcfcf);display:grid;place-items:end start;padding:20px;position:relative;overflow:hidden}.placeholder:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.55))}.placeholder span{position:relative;color:#fff;font-family:Georgia,serif;font-size:1.5rem}.dark{background:#050505;color:#fff}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#2a2a2a}.cards article{background:#090909;padding:2rem}.cards h3{font-size:2rem}.cards p{color:#bbb}.about{display:grid;grid-template-columns:2fr 1fr;gap:5rem;align-items:center}.monogram img{width:100%;max-width:280px;display:block;margin:auto}.contact{background:#f4f4f2}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.4rem}.contact-form label{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:.4rem;padding:.9rem;border:1px solid #bbb;background:#fff;font:inherit}.contact-form .full{grid-column:1/-1}.contact-form button{justify-self:start}.hp{position:absolute!important;left:-9999px!important}.contact-form label span{text-transform:none;letter-spacing:0;color:#777}footer{background:#050505;color:#888;text-align:center;padding:3rem 1rem}footer img{width:260px;height:150px;object-fit:contain}footer a{color:#ddd}.status{min-height:60vh;display:grid;place-items:center;text-align:center;padding:3rem}.status h1{font-size:3rem}@media(max-width:760px){.site-header{align-items:center}.brand img{width:175px;height:80px}.nav-toggle{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:92px;background:#050505;padding:1rem 5vw;flex-direction:column}.site-header nav.open{display:flex}.portfolio-grid,.cards,.about,.contact-form{grid-template-columns:1fr}.contact-form .full{grid-column:auto}.hero{min-height:64vh}.section{padding:4rem 6vw}}
.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.services-grid article{min-height:190px}@media(max-width:800px){.services-grid{grid-template-columns:1fr}}

/* Portfolio launch imagery */
.portfolio-item{aspect-ratio:4/3;margin:0;position:relative;overflow:hidden;background:#111}
.portfolio-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.portfolio-item:hover img{transform:scale(1.015)}
.portfolio-item:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 52%,rgba(0,0,0,.68))}
.portfolio-item figcaption{position:absolute;z-index:2;left:20px;bottom:17px;color:#fff;font-family:Georgia,'Times New Roman',serif;font-size:1.5rem}
.coming-soon{place-items:center;text-align:center;background:linear-gradient(145deg,#191919,#070707);border:1px solid #242424}
.coming-soon:before{background:radial-gradient(circle at center,rgba(255,255,255,.055),transparent 58%)}
.coming-soon div{position:relative;z-index:2;color:#fff}
.coming-soon strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:1.45rem;font-weight:400;letter-spacing:.12em}
.coming-soon small{display:block;color:#9a9a9a;margin-top:.55rem;letter-spacing:.08em;font-size:.7rem;text-transform:uppercase}
.coming-soon span{position:absolute;z-index:2;left:20px;bottom:17px}

/* Fine art / landscape print gallery */
.fine-art{background:#f6f5f2}
.fine-art-feature figure,.fine-art-grid figure{margin:0;background:#090909;position:relative;overflow:hidden}
.fine-art-feature img{width:100%;display:block;aspect-ratio:3.55/1;object-fit:cover}
.fine-art-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.fine-art-grid img{width:100%;height:430px;display:block;object-fit:cover}
.fine-art figure:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 60%,rgba(0,0,0,.72));pointer-events:none}
.fine-art figcaption{position:absolute;z-index:2;left:24px;bottom:20px;color:#fff}
.fine-art figcaption span{display:block;font-family:Georgia,'Times New Roman',serif;font-size:1.65rem}
.fine-art figcaption small{display:block;margin-top:.2rem;text-transform:uppercase;letter-spacing:.14em;color:#d4d4d4;font-size:.68rem}
.print-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #ccc}
.print-cta p{margin:0;max-width:650px}
.btn-dark{background:#050505;color:#fff;border-color:#050505;margin-top:0}
@media(max-width:760px){
  .fine-art-grid{grid-template-columns:1fr}
  .fine-art-grid img{height:auto;aspect-ratio:4/3}
  .fine-art-feature img{aspect-ratio:2/1}
  .print-cta{align-items:flex-start;flex-direction:column}
}

/* Final portfolio framing corrections */
.portfolio-item:nth-child(1),
.portfolio-item:nth-child(5){
  background:#0b0b0b;
}
.portfolio-item:nth-child(1) img,
.portfolio-item:nth-child(5) img{
  object-fit:contain;
  object-position:center center;
}
.portfolio-item:nth-child(1):after,
.portfolio-item:nth-child(5):after{
  background:linear-gradient(transparent 68%,rgba(0,0,0,.72));
}

/* Portrait-led hero */
.hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#050505;
}
.hero:before{
  content:"";
  position:absolute;
  z-index:-2;
  top:0;
  right:0;
  bottom:0;
  width:64%;
  background:url("assets/img/hero-nicole-bw.jpg") center 27%/cover no-repeat;
}
.hero:after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:linear-gradient(90deg,#050505 0%,#050505 34%,rgba(5,5,5,.92) 45%,rgba(5,5,5,.45) 66%,rgba(5,5,5,.08) 100%);
}
.hero-inner{position:relative;z-index:1}
.hero h1{max-width:720px;font-size:clamp(3rem,6vw,5.8rem)}
.hero .lead{max-width:620px}

@media(max-width:760px){
  .hero:before{
    width:100%;
    opacity:.5;
    background-position:60% 22%;
  }
  .hero:after{
    background:linear-gradient(90deg,rgba(5,5,5,.96) 0%,rgba(5,5,5,.86) 60%,rgba(5,5,5,.56) 100%);
  }
  .hero h1{font-size:clamp(2.8rem,13vw,4.4rem)}
}
