:root{--bg:#070808;--panel:#0d0e0e;--panel2:#111212;--text:#f2f0eb;--muted:#a8a39b;--gold:#b88745;--line:#292722}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Raleway","Century Gothic","Trebuchet MS",Arial,sans-serif;font-weight:300}
a{color:inherit;text-decoration:none}
.hero{position:relative;height:100vh;height:100svh;min-height:650px;overflow:hidden;background:#050606}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% center;filter:saturate(.78) contrast(1.05) brightness(.82)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,4,4,.96) 0%,rgba(3,4,4,.82) 30%,rgba(3,4,4,.32) 56%,rgba(3,4,4,.08) 78%),linear-gradient(0deg,rgba(3,4,4,.58),transparent 40%)}
.nav{position:fixed;z-index:100;top:0;left:0;width:100%;padding:30px 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.04);background:rgba(5,6,6,.94)}
.wordmark{font-size:clamp(24px,2.1vw,34px);font-weight:200;letter-spacing:-.045em;white-space:nowrap}.wordmark span{color:var(--gold)}.wordmark b{font-weight:200;color:#e7e5df}
.nav-links{display:flex;gap:36px;text-transform:uppercase;letter-spacing:.24em;font-size:10px}.nav-links a{color:#d7d3ca;transition:color .25s}.nav-links a:hover{color:var(--gold)}
.hero-copy{position:absolute;z-index:2;left:4vw;bottom:max(9svh,calc(env(safe-area-inset-bottom,0px) + 54px));width:min(590px,45vw)}
.kicker,.section-heading span,.who-label,.contact-label{color:var(--gold);text-transform:uppercase;letter-spacing:.24em;font-size:10px;font-weight:500}
.hero h1{margin:24px 0 26px;font-weight:200;font-size:clamp(54px,6.2vw,100px);line-height:.92;letter-spacing:-.055em}.hero h1 span{display:block}
.intro{margin:0;max-width:520px;color:#c7c2b8;font-size:clamp(15px,1.3vw,20px);line-height:1.65;font-weight:300}
.cta{display:inline-flex;gap:44px;align-items:center;margin-top:34px;border:1px solid var(--gold);padding:16px 22px;color:#d8b071;text-transform:uppercase;letter-spacing:.18em;font-size:10px;font-weight:500}.cta span{font-size:17px;line-height:1}
.work{padding:84px 4vw 96px;background:linear-gradient(180deg,#0a0b0b,#070808);min-height:100vh}
.section-heading{display:flex;align-items:center;gap:24px;margin-bottom:34px}.section-heading div{height:1px;background:var(--line);flex:1}
.work-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.work article{position:relative;min-width:0;background:#0b0c0c;overflow:hidden;border-bottom:1px solid #1b1a18}
.work article:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.06) 55%);pointer-events:none}
.work img{display:block;width:100%;aspect-ratio:3/5;object-fit:cover;filter:saturate(.72) brightness(.82) contrast(1.05);transition:transform .7s ease,filter .7s ease}
.work article:hover img{transform:scale(1.025);filter:saturate(.9) brightness(.9)}
.work h2{position:absolute;z-index:2;left:18px;right:18px;bottom:19px;margin:0;color:#e4e0d7;text-transform:uppercase;letter-spacing:.16em;font-size:10px;line-height:1.45;font-weight:400}
.who{display:grid;grid-template-columns:.7fr 2.1fr 1.35fr;gap:5vw;padding:10vw 4vw;background:#0b0c0c;border-top:1px solid #151515;border-bottom:1px solid #151515;align-items:start}
.who-copy h2{font-size:clamp(34px,4.4vw,70px);font-weight:200;line-height:1.06;letter-spacing:-.04em;margin:0 0 42px;max-width:900px}
.who-copy p{font-size:clamp(16px,1.4vw,21px);line-height:1.75;color:#bbb6ad;margin:0 0 25px;max-width:810px}.who-copy strong{font-weight:400;color:#eee9df}
.who-image{margin:0;align-self:stretch;min-height:520px;overflow:hidden}.who-image img{width:100%;height:100%;min-height:520px;object-fit:cover;filter:saturate(.62) brightness(.76)}
.contact{padding:9vw 4vw;background:#070808;display:grid;grid-template-columns:1fr 1.45fr;gap:10vw;min-height:calc(100vh - 68px);align-items:center}
.contact-copy h2{font-size:clamp(38px,5vw,74px);font-weight:200;line-height:1.04;letter-spacing:-.045em;margin:24px 0 52px;max-width:620px}
.instagram{display:inline-block;color:#c8c3b9;border-bottom:1px solid #6c624f;padding-bottom:6px;font-size:15px}
form{display:flex;flex-direction:column;gap:26px;align-self:center}.row{display:grid;grid-template-columns:1fr 1fr;gap:26px}
label{font-size:9px;text-transform:uppercase;letter-spacing:.2em;color:#9d978d;font-weight:500}
input,textarea{display:block;width:100%;margin-top:10px;padding:15px 14px;border:1px solid #302e2a;background:#0b0c0c;color:#eee;font:inherit;font-size:15px;font-weight:300;outline:none;border-radius:0;resize:vertical}input:focus,textarea:focus{border-color:#80643e}
button{background:transparent;color:#d8b071;border:1px solid var(--gold);padding:18px 22px;text-transform:uppercase;letter-spacing:.18em;font-size:10px;font-weight:500;display:flex;justify-content:space-between;cursor:pointer}.hp{position:absolute;left:-9999px}.status{min-height:20px;margin:0;color:#9f998f;font-size:13px}
footer{border-top:1px solid #151515;padding:27px 4vw 30px;display:flex;justify-content:space-between;color:#77736c;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:1050px){.work-grid{grid-template-columns:repeat(3,1fr)}.work img{aspect-ratio:4/5}.who{grid-template-columns:.5fr 2fr}.who-image{grid-column:2}.hero-copy{width:min(620px,60vw)}}
@media(max-width:720px){.hero{min-height:660px}.hero-image{object-position:66% center}.hero-shade{background:linear-gradient(0deg,rgba(3,4,4,.93) 0%,rgba(3,4,4,.55) 48%,rgba(3,4,4,.18) 78%),linear-gradient(90deg,rgba(3,4,4,.48),transparent 70%)}.nav{padding:22px max(20px,env(safe-area-inset-right)) 22px max(20px,env(safe-area-inset-left))}.wordmark{font-size:26px}.nav-links{gap:18px;font-size:8px}.nav-links a:first-child{display:none}.hero-copy{left:max(22px,env(safe-area-inset-left));right:max(22px,env(safe-area-inset-right));width:auto;bottom:max(9svh,calc(env(safe-area-inset-bottom) + 48px))}.hero h1{font-size:clamp(52px,15vw,82px);margin-top:18px}.intro{font-size:15px;max-width:90%}.work{padding:65px 18px}.work-grid{grid-template-columns:repeat(2,1fr);gap:8px}.work img{aspect-ratio:3/4}.work h2{left:12px;bottom:14px;font-size:9px}.who{padding:82px 22px;grid-template-columns:1fr;gap:36px}.who-copy h2{margin-bottom:32px}.who-image{grid-column:auto;min-height:430px}.who-image img{min-height:430px}.contact{padding:82px 22px;grid-template-columns:1fr;gap:65px;min-height:calc(100svh - 72px);align-items:center}.contact-copy h2{margin-bottom:36px}.row{grid-template-columns:1fr}footer{padding:24px 22px;gap:20px;flex-direction:column}.kicker{font-size:9px}}

/* Portrait/mobile refinement — agreed 27 Aug 2026 */
.wordmark{font-family:"Century Gothic","Avenir Next",Avenir,Futura,sans-serif;letter-spacing:-.055em}
.wordmark span,.wordmark b{font-family:inherit}
.work article.mono img{filter:grayscale(1) saturate(0) brightness(.78) contrast(1.08)}
.work article.edge-colour img{filter:saturate(.92) brightness(.84) contrast(1.05)}
.work article.motorsport img{object-position:center center}
@media(max-width:720px){
  .work{padding:64px 0 72px;min-height:100svh}
  .section-heading{padding:0 22px;margin-bottom:28px}
  .work-grid{display:flex;overflow-x:auto;gap:10px;padding:0 22px 12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .work-grid::-webkit-scrollbar{display:none}
  .work article{flex:0 0 min(70vw,300px);scroll-snap-align:start}
  .work img{aspect-ratio:3/4;min-height:0}
  .work article.live img{object-position:center 55%}
  .work article.motorsport img{object-position:48% center}
  .work h2{font-size:10px;left:15px;right:15px;bottom:16px}
}

/* Portrait/mobile v3 — preserve the hero photograph as LANDSCAPE and correct gallery crops */
@media (max-width:720px){
  /* Do not turn Ade's landscape hero photograph into a portrait crop. */
  .hero{
    height:auto;
    min-height:0;
    overflow:visible;
    padding-top:72px;
    background:#050606;
  }
  .hero-image{
    position:relative;
    inset:auto;
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:3/2;
    object-fit:cover;
    object-position:center center;
    filter:saturate(.78) contrast(1.05) brightness(.82);
  }
  .hero-shade{
    top:72px;
    bottom:auto;
    height:calc((100vw) * 2 / 3);
    background:linear-gradient(0deg,rgba(3,4,4,.42) 0%,rgba(3,4,4,.05) 55%,rgba(3,4,4,.08) 100%);
    pointer-events:none;
  }
  .nav{
    position:fixed;
    background:#050606;
  }
  .hero-copy{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    width:auto;
    padding:34px 22px 62px;
    background:#050606;
  }
  .hero h1{
    font-size:clamp(50px,15vw,76px);
    line-height:.94;
    margin:16px 0 24px;
  }
  .intro{max-width:100%;}
  .cta{margin-top:28px;}

  /* Keep the photographs readable: one generous portrait card at a time, swipe horizontally. */
  .work article{flex-basis:min(76vw,320px)}
  .work img{aspect-ratio:3/4}
  .work article.live img{object-position:left center}
  .work article.motorsport img{object-position:center center}
}

/* Rounded single-storey 'a' for adeholbrook only. */
.wordmark{font-family:"Century Gothic","Avenir Next",Avenir,Futura,sans-serif;font-weight:200;letter-spacing:-.055em}
.wordmark span,.wordmark b{font-family:inherit;font-weight:200}


/* Fixed navigation and clean section landing */
#work,#who{scroll-margin-top:88px}
#contact{scroll-margin-top:0}
@media(max-width:720px){
  #work,#who{scroll-margin-top:72px}
  #contact{scroll-margin-top:0}
}
