@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root{--paper:#f0ede6;--ink:#0a0a0a;--muted:#77736d;--orange:#ff5b2e;--line:rgba(10,10,10,.18);--line-light:rgba(240,237,230,.24);--sans:'Space Grotesk','Helvetica Neue',Arial,sans-serif;--mono:'DM Mono',ui-monospace,SFMono-Regular,Menlo,monospace;--pad:clamp(1rem,4vw,4.4rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.topbar{height:62px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:.58rem;letter-spacing:.11em;text-transform:uppercase;position:relative;z-index:5}.topbar-mark{font-weight:500}.topbar nav{display:flex;align-items:center;gap:clamp(1rem,2.7vw,3rem)}.topbar nav a{transition:color .2s}.topbar nav a:hover{color:var(--orange)}.topbar-book{border-bottom:1px solid var(--ink);padding-bottom:.25rem}.topbar-book span{color:var(--orange);font-size:.9rem;margin-left:.35rem}
.cover{min-height:calc(100svh - 62px);padding:clamp(2rem,4vw,4rem) var(--pad) 1.3rem;display:flex;flex-direction:column;justify-content:space-between;position:relative}.cover-meta,.cover-caption,.shot-side-note,.profile-label,.connect-head,.book-line,footer{font-family:var(--mono);font-size:.57rem;letter-spacing:.12em;text-transform:uppercase}.cover-meta{display:flex;justify-content:space-between;color:var(--muted)}.cover-logo-wrap{display:flex;justify-content:center;align-items:center;flex:1;min-height:0;padding:clamp(1rem,4vh,3rem) 0}.cover-logo{width:min(96vw,1080px);height:min(64vh,760px);object-fit:contain;transform:scale(1.35);mix-blend-mode:multiply;filter:contrast(1.04)}.cover-caption{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding-top:1rem}.cover-caption span:last-child{text-transform:none;letter-spacing:.03em;color:var(--muted)}
.main-shot{padding:0 var(--pad) clamp(5rem,11vw,11rem);background:var(--paper)}.shot-frame{margin:0 auto;max-width:840px;aspect-ratio:1161 / 1354;position:relative;background:#171717}.shot-frame img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.92);transition:filter .5s}.shot-frame:hover img{filter:saturate(1.06)}.shot-frame figcaption{position:absolute;bottom:0;left:0;right:0;padding:1rem 1.2rem;display:flex;justify-content:space-between;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.8));font-family:var(--mono);font-size:.58rem;letter-spacing:.13em}.shot-frame figcaption span:last-child{color:var(--orange)}.shot-side-note{max-width:840px;margin:1rem auto 0;display:flex;justify-content:space-between;color:var(--muted)}
.profile{border-top:1px solid var(--line);padding:clamp(4rem,9vw,9rem) var(--pad) clamp(5rem,10vw,10rem);display:grid;grid-template-columns:1fr 2fr;gap:clamp(2rem,10vw,11rem)}.profile-label{color:var(--orange)}.profile-copy{max-width:720px}.profile h1{margin:0 0 2.6rem;font-size:clamp(3.3rem,8vw,8.5rem);line-height:.83;letter-spacing:-.09em;font-weight:600}.profile h1 em,.connect h2 em{font-style:italic;font-weight:400;letter-spacing:-.09em}.profile-copy p{max-width:570px;margin:0 0 1.1rem;font-size:clamp(1rem,1.55vw,1.25rem);line-height:1.36}.profile-copy .profile-small{font-family:var(--mono);font-size:.68rem;letter-spacing:.04em;color:var(--muted);text-transform:uppercase;margin-top:2.2rem}
.connect{background:var(--ink);color:var(--paper);padding:2rem var(--pad) 1.5rem;min-height:72vh;display:flex;flex-direction:column}.connect-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line-light);padding-bottom:1rem;color:#aaa59f}.connect-head img{width:92px;height:48px;object-fit:cover;mix-blend-mode:screen}.connect-body{flex:1;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4rem;padding:4rem 7%}.connect h2{margin:0;font-size:clamp(3.6rem,8vw,8rem);line-height:.82;letter-spacing:-.09em;font-weight:600}.links{border-top:1px solid var(--line-light)}.links a{display:grid;grid-template-columns:100px 1fr;gap:1rem;padding:1.15rem 0;border-bottom:1px solid var(--line-light);font-family:var(--mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;transition:padding .25s,color .25s}.links a:hover{padding-left:.65rem;color:var(--orange)}.links a span{color:#aaa59f}.links a strong{font-family:var(--sans);font-size:1.1rem;letter-spacing:-.02em;font-weight:500}.book-line{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line-light);padding-top:1rem;color:#aaa59f}.book-line a{color:var(--orange)}.book-line a span{font-size:.95rem;margin-left:.35rem}footer{background:var(--ink);color:#aaa59f;border-top:1px solid var(--line-light);padding:1.4rem var(--pad);display:flex;justify-content:space-between}
@media(max-width:760px){.topbar{height:56px}.topbar nav a:not(.topbar-book){display:none}.cover{min-height:calc(100svh - 56px);padding-top:1.5rem}.cover-meta{font-size:.52rem;gap:.8rem}.cover-meta span:nth-child(2){display:none}.cover-logo{width:100vw;height:57vh;transform:scale(1.42)}.cover-caption{font-size:.52rem;align-items:end}.cover-caption span:last-child{max-width:9rem;text-align:right}.main-shot{padding-left:0;padding-right:0;padding-bottom:5rem}.shot-frame{max-width:none}.shot-frame img{height:100%;min-height:0}.shot-frame figcaption{padding-left:1rem;padding-right:1rem}.shot-side-note{padding:0 1rem;font-size:.52rem}.profile{grid-template-columns:1fr;gap:2.5rem;padding-top:4.5rem;padding-bottom:5rem}.profile h1{font-size:clamp(3.5rem,15vw,6rem);margin-bottom:2rem}.profile-copy p{font-size:1rem}.connect{min-height:auto;padding-top:1.5rem}.connect-head img{width:80px;height:42px}.connect-body{grid-template-columns:1fr;gap:3.5rem;padding:5rem 0 6rem}.connect h2{font-size:clamp(3.7rem,16vw,6.5rem)}.links a{grid-template-columns:86px 1fr}.book-line{display:grid;gap:.8rem;font-size:.53rem}.book-line a{font-size:.58rem}footer{font-size:.52rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.shot-frame img{transition:none}}

/* Composite Harvey hero: the logo and supplied main shot are one visual object. */
.composite-hero{min-height:calc(100svh - 62px);background:#080808;color:var(--paper);overflow:hidden}.composite-hero .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(.84) contrast(1.08)}.composite-hero .hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.08) 42%,rgba(0,0,0,.78) 100%)}.composite-hero .cover-meta,.composite-hero .cover-caption{position:relative;z-index:2;color:rgba(240,237,230,.78);border-color:rgba(240,237,230,.32)}.hero-logo-wrap{position:relative;z-index:2;display:grid;place-items:center;flex:1;min-height:0}.hero-logo{width:min(82vw,900px);height:min(61vh,700px);object-fit:contain;mix-blend-mode:normal;filter:brightness(1.15) contrast(1.04);transform:scale(1.08)}.composite-hero .cover-caption span:last-child{color:rgba(240,237,230,.82)}
@media(max-width:760px){.composite-hero{min-height:calc(100svh - 56px)}.composite-hero .cover-meta{color:rgba(240,237,230,.86)}.hero-logo{width:100vw;height:62vh;transform:scale(1.1)}.composite-hero .cover-caption{color:rgba(240,237,230,.86)}}

/* Profile pairing: one supporting live image beside the artist words, plus a clear press-kit action. */
.profile-content{min-width:0}.profile-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(240px,.95fr);gap:clamp(2rem,5vw,5rem);align-items:start}.profile-image{margin:0;position:relative;background:#151515;overflow:hidden}.profile-image img{width:100%;aspect-ratio:1 / 1.08;object-fit:cover;object-position:center;filter:saturate(.9);transition:transform .5s,filter .5s}.profile-image:hover img{transform:scale(1.03);filter:saturate(1)}.profile-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:.8rem 1rem;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.85));font-family:var(--mono);font-size:.54rem;letter-spacing:.12em}.presskit-link{margin-top:clamp(2rem,5vw,4rem);display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.2rem 0;font-size:clamp(1.25rem,2.4vw,2.1rem);letter-spacing:-.04em;transition:color .25s,padding .25s}.presskit-link:hover{color:var(--orange);padding-left:.6rem;padding-right:.6rem}.presskit-link strong{font-size:1.5em;font-weight:400;color:var(--orange)}
@media(max-width:760px){.profile-layout{grid-template-columns:1fr;gap:2.8rem}.profile-image{max-width:100%}.profile-image img{aspect-ratio:1.45 / 1;object-position:center}.presskit-link{font-size:1.15rem}}

@media(min-width:761px){.profile-image{grid-column:1;grid-row:1}.profile-copy{grid-column:2;grid-row:1}}

/* Temporary booking CTA: the destination can be swapped when the final booking link arrives. */
.hero-logo-wrap{gap:clamp(.8rem,2vw,1.4rem);align-content:center}.hero-booking-button{display:inline-flex;align-items:center;gap:1.4rem;padding:.95rem 1.35rem;background:var(--orange);color:#080808;font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;box-shadow:0 10px 30px rgba(0,0,0,.24);transition:transform .25s,background .25s,color .25s}.hero-booking-button span{font-size:1.45rem;line-height:.6}.hero-booking-button:hover{transform:translateY(-3px);background:#f4ede2;color:#080808}.hero-logo{height:min(55vh,640px)}
@media(max-width:760px){.hero-logo{height:54vh}.hero-booking-button{font-size:.58rem;padding:.85rem 1.1rem}}

/* Booking CTA emphasis: larger, stronger, and white-label for the hero. */
.hero-booking-button{min-width:250px;justify-content:center;padding:1.3rem 2.2rem;color:#fff;font-size:.78rem;font-weight:700;letter-spacing:.14em}.hero-booking-button:hover{color:#fff;background:#ff754f}
@media(max-width:760px){.hero-booking-button{min-width:220px;padding:1.1rem 1.5rem;font-size:.68rem}}

/* Reframe the supplied crowd shot toward Harvey on the right side of the original photo. */
.profile-image img{aspect-ratio:1.25 / 1;object-position:82% center}
@media(max-width:760px){.profile-image img{aspect-ratio:1.3 / 1;object-position:82% center}}

.presskit-link strong{font-family:var(--mono);font-variant-emoji:text}

/* Desktop profile balance: center the image, copy, and press-kit row instead of anchoring them to the right edge. */
@media(min-width:761px){.profile{grid-template-columns:1fr;padding-left:clamp(4rem,8vw,9rem);padding-right:clamp(4rem,8vw,9rem);position:relative}.profile-label{position:absolute;left:clamp(1.2rem,3vw,3rem);top:8rem}.profile-content{width:min(100%,1180px);margin:0 auto}}
