*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#050505;color:#f1efe7;font-family:Inter,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid rgba(255,255,255,.1);background:linear-gradient(to bottom,rgba(0,0,0,.72),transparent);transition:.3s}.site-header.scrolled{height:72px;background:rgba(5,5,5,.94);backdrop-filter:blur(12px)}.brand{display:block;width:118px;height:68px;overflow:hidden}.brand img{object-fit:contain}.nav{display:flex;align-items:center;gap:28px;font-size:13px}.nav a{opacity:.86}.nav a:hover{opacity:1}.nav-cta{padding:11px 17px;border:1px solid rgba(255,255,255,.5)}.menu-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:12px}.menu-toggle span{display:block;height:1px;background:white;margin:7px 0}.hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:flex-end;padding:0 4vw 7vh;overflow:hidden}.hero-media{position:absolute;inset:0;background:url("../images/portfolio-01.jpg") 65% 32%/cover no-repeat;transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.48) 42%,rgba(0,0,0,.17) 72%,rgba(0,0,0,.28) 100%),linear-gradient(to top,rgba(0,0,0,.7),transparent 55%)}.hero-copy{position:relative;z-index:2;max-width:900px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.22em;margin:0 0 25px}.hero h1,.section h2,.feature-copy h2,.music-heading h2,.about-copy h2,.contact-section h2{font-family:Oswald,Impact,sans-serif;text-transform:uppercase}.hero h1{font-size:clamp(58px,9vw,140px);line-height:.78;letter-spacing:-.045em;margin:0;font-weight:600}.hero h1 span{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.8)}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:38px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:16px 23px;font-size:12px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;transition:.2s}.btn-light{background:#f1efe7;color:#111}.btn-light:hover{background:white;transform:translateY(-2px)}.btn-dark{background:#111;color:white}.text-link{font-size:12px;letter-spacing:.08em;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:6px}.hero-tagline{position:absolute;z-index:2;right:4vw;bottom:7vh;max-width:190px;text-align:right;font-size:12px;line-height:1.5;opacity:.82}.scroll-cue{position:absolute;right:4vw;top:50%;z-index:2;font-size:9px;letter-spacing:.2em;writing-mode:vertical-rl;opacity:.7}.section{padding:110px 4vw}.section-label{font-size:10px;letter-spacing:.22em;opacity:.52;margin-bottom:70px}.intro{display:grid;grid-template-columns:1fr 3fr}.intro-copy p{font-family:Oswald,Impact,sans-serif;text-transform:uppercase;font-size:clamp(30px,4.6vw,68px);line-height:1.04;letter-spacing:-.025em;max-width:1150px;margin:0}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#191919}.gallery-card{height:72vh;min-height:520px;position:relative;overflow:hidden}.gallery-card-large{height:90vh}.gallery-card-wide{grid-column:1/-1;height:84vh}.gallery-card img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.gallery-card:hover img{transform:scale(1.025)}.gallery-caption{position:absolute;left:0;right:0;bottom:0;padding:22px 25px;display:flex;justify-content:space-between;background:linear-gradient(transparent,rgba(0,0,0,.78));font-size:11px;letter-spacing:.14em;text-transform:uppercase}.services{background:#f0ede4;color:#101010}.services-list{border-top:1px solid #bebbb4}.service-row{display:grid;grid-template-columns:70px 1.2fr 1fr 40px;gap:25px;align-items:center;padding:38px 0;border-bottom:1px solid #bebbb4}.service-number{font-size:10px;opacity:.5}.service-row h2{font-size:clamp(32px,4.2vw,56px);letter-spacing:-.025em;margin:0}.service-row p{font-size:14px;line-height:1.75;color:#555;max-width:520px}.service-arrow{font-size:26px;text-align:right}.feature{display:grid;grid-template-columns:1.2fr .8fr;background:#f0ede4;color:#111}.feature-image{min-height:780px}.feature-image img{object-position:center 20%}.feature-copy{display:flex;flex-direction:column;justify-content:center;padding:8vw}.eyebrow.dark{color:#777}.feature-copy h2{font-size:clamp(46px,5.4vw,80px);letter-spacing:-.03em;line-height:.92;margin:0 0 28px}.feature-copy>p:not(.eyebrow){line-height:1.8;color:#555;margin:0 0 35px}.feature-copy .btn{align-self:flex-start}.music-heading{display:grid;grid-template-columns:2fr 1fr;gap:40px;align-items:end;margin-bottom:65px}.music-heading h2{font-size:clamp(48px,6vw,90px);line-height:.9;letter-spacing:-.03em;margin:0}.music-heading p{color:#aaa;line-height:1.7}.artist-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.artist-placeholder{height:560px;background:#0d0d0d;border:1px solid #202020;display:grid;place-items:center;overflow:hidden;position:relative}.artist-placeholder:after{content:"";position:absolute;width:70%;height:70%;border:1px solid #242424;transform:rotate(8deg)}.artist-placeholder span{font-family:Oswald,Impact,sans-serif;font-size:clamp(70px,10vw,150px);letter-spacing:-.05em;color:#191919}.artist-meta{display:flex;justify-content:space-between;align-items:baseline;padding-top:17px}.artist-meta h3{font-family:Oswald,Impact,sans-serif;font-size:30px;margin:0}.artist-meta p{font-size:10px;letter-spacing:.1em;color:#888}.about-section{position:relative;min-height:760px;padding:120px 4vw;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden}.about-logo{position:absolute;left:-7vw;bottom:-8vw;width:58vw;height:58vw;opacity:.11;filter:grayscale(100%)}.about-logo img{object-fit:contain}.about-copy{grid-column:2;position:relative;z-index:1}.about-copy h2{font-size:clamp(44px,5.8vw,84px);letter-spacing:-.03em;line-height:.94;margin:0 0 35px}.about-copy>p:last-child{font-size:16px;color:#aaa;line-height:1.8;max-width:660px}.contact-section{padding:130px 4vw;background:#0a0a0a;border-top:1px solid #272727}.contact-section h2{font-size:clamp(66px,11vw,170px);line-height:.78;letter-spacing:-.045em;margin:0 0 45px}.contact-section h2 span{color:transparent;-webkit-text-stroke:1.5px #eee}.contact-note{color:#aaa}.contact-button{margin-top:22px}.setup-note{font-size:10px;color:#555;margin-top:20px}footer{padding:28px 4vw;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #202020}.footer-brand{height:55px;width:100px}.footer-meta{display:flex;gap:35px;font-size:10px;letter-spacing:.12em;color:#777}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:800px){.site-header{height:72px}.brand{width:90px;height:55px}.nav{position:fixed;inset:72px 0 auto 0;background:#050505;padding:30px 5vw 40px;display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid #222}.nav.open{display:flex}.menu-toggle{display:block}.hero{min-height:650px;padding:0 5vw 7vh}.hero-media{background-position:60% 28%}.hero h1{font-size:clamp(54px,17vw,100px);line-height:.82}.hero-tagline,.scroll-cue{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.intro{grid-template-columns:1fr}.section{padding:80px 5vw}.section-label{margin-bottom:45px}.gallery{grid-template-columns:1fr}.gallery-card,.gallery-card-large,.gallery-card-wide{grid-column:auto;height:72vh;min-height:480px}.service-row{grid-template-columns:42px 1fr 25px}.service-row p{grid-column:2/-1;margin-top:-10px}.feature{grid-template-columns:1fr}.feature-image{min-height:620px}.feature-copy{padding:80px 5vw}.music-heading{grid-template-columns:1fr}.artist-grid{grid-template-columns:1fr}.artist-placeholder{height:440px}.about-section{grid-template-columns:1fr;padding:100px 5vw}.about-copy{grid-column:1}.about-logo{width:110vw;height:110vw;left:-28vw;bottom:-12vw}.contact-section{padding:100px 5vw}footer{align-items:flex-start;gap:30px}.footer-meta{flex-direction:column;gap:10px;text-align:right}}

.artist-image{height:560px;overflow:hidden;background:#0d0d0d;border:1px solid #202020}
.artist-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease,filter .4s ease;filter:saturate(.9)}
.artist-card:hover .artist-image img{transform:scale(1.025);filter:saturate(1.05)}
.artist-card:first-child .artist-image img{object-position:center 18%}
.artist-card:nth-child(2) .artist-image img{object-position:center 8%}
@media(max-width:800px){.artist-image{height:500px}}


.contact-heading{display:grid;grid-template-columns:1.7fr .7fr;gap:7vw;align-items:end;margin-bottom:75px}
.contact-side{padding-bottom:12px}
.contact-side p{color:#aaa;line-height:1.75;margin:0 0 24px;max-width:440px}
.social-link{display:inline-block;font-size:13px;letter-spacing:.08em;border-bottom:1px solid #555;padding-bottom:5px}
.booking-form{border-top:1px solid #292929;padding-top:45px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:42px;row-gap:35px}
.booking-form label{display:flex;flex-direction:column;gap:12px}
.booking-form label>span{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#8f8f8f}
.booking-form input,.booking-form select,.booking-form textarea{width:100%;border:0;border-bottom:1px solid #393939;background:transparent;color:#f1efe7;font:inherit;font-size:15px;padding:11px 0 14px;outline:none;border-radius:0}
.booking-form select{appearance:auto}
.booking-form option{background:#111;color:#f1efe7}
.booking-form textarea{resize:vertical;min-height:150px;line-height:1.6}
.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-bottom-color:#f1efe7}
.booking-form input::placeholder,.booking-form textarea::placeholder{color:#555}
.form-full{grid-column:1/-1}
.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:42px}
.form-bottom p{font-size:12px;color:#777}
.form-bottom p a{color:#ccc;border-bottom:1px solid #555}
.footer-meta a:hover{color:#ddd}
@media(max-width:800px){
  .contact-heading{grid-template-columns:1fr;gap:25px;margin-bottom:55px}
  .form-grid{grid-template-columns:1fr;row-gap:28px}
  .form-full{grid-column:auto}
  .form-bottom{align-items:flex-start;flex-direction:column}
}


/* v5 crop adjustments */
.hero-media{background-position:center 22%}
.gallery-card-large img{object-position:center 16%}
.gallery-card:nth-child(2) img{object-position:center 22%}
.gallery-card:nth-child(3) img{object-position:center 16%}
.gallery-card:nth-child(4) img{object-position:center 18%}
.gallery-card:nth-child(5) img{object-position:center 20%}
.gallery-card-wide img{object-position:center 34%}
.feature-image img{object-position:center 20%}

/* Portfolio and services pages */
:focus-visible{outline:2px solid currentColor;outline-offset:5px}section[id]{scroll-margin-top:90px}.nav a[aria-current=page]{opacity:1;border-bottom:1px solid #f1efe7;padding-bottom:6px}.page-intro{padding:175px 6vw 75px;border-bottom:1px solid #292929}.page-intro h1{font:600 clamp(58px,9vw,130px)/.94 Oswald,Impact,sans-serif;letter-spacing:-.04em;margin:0 0 35px}.page-intro h1 span{color:transparent;-webkit-text-stroke:1px #f1efe7}.page-description{max-width:650px;color:#bcbab4;line-height:1.8;font-size:16px;margin:0 0 30px}.portfolio-section{padding:40px 4vw 90px}.portfolio-toolbar{display:flex;gap:24px;align-items:center;justify-content:space-between;margin-bottom:38px}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters[hidden]{display:none}.filters button{border:1px solid #555;background:transparent;color:#f1efe7;font:500 12px Inter,Arial,sans-serif;padding:12px 16px;cursor:pointer}.filters button[aria-pressed=true]{background:#f1efe7;color:#111;border-color:#f1efe7}#photo-count{color:#aaa;font-size:12px;white-space:nowrap}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 22px;align-items:start}.portfolio-item{margin:0;min-width:0}.portfolio-item[hidden]{display:none}.photo-link{display:block;background:#171717;cursor:zoom-in}.portfolio-item img{width:100%;height:auto;object-fit:contain}.portfolio-item figcaption{font-size:11px;line-height:1.6;color:#bcbab4;padding-top:12px}.page-cta{padding:90px 6vw;background:#151515;border-top:1px solid #333}.page-cta h2,.process-section h2,.faq-section h2{font:600 clamp(38px,5vw,74px)/1.04 Oswald,Impact,sans-serif;margin:0 0 25px;letter-spacing:-.02em}.page-cta p:not(.eyebrow){color:#bbb;margin-bottom:30px;line-height:1.7}.lightbox{position:fixed;inset:0;max-width:96vw;max-height:96svh;width:1100px;border:1px solid #444;padding:55px 20px 20px;background:#080808;color:#eee}.lightbox::backdrop{background:rgba(0,0,0,.92)}.lightbox img{width:100%;height:76svh;object-fit:contain}.lightbox p{text-align:center;font-size:12px}.lightbox-close{position:absolute;top:12px;right:18px;background:none;color:#eee;border:1px solid #777;padding:8px 16px;cursor:pointer}.gallery-more{padding:42px 4vw 70px}.services-more{background:#f0ede4;padding:0 4vw 70px}.service-details{background:#f0ede4;color:#111;padding:50px 6vw}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding:45px 0;border-bottom:1px solid #bab7b0}.service-detail:last-child{border-bottom:0}.service-detail>img{max-height:580px;width:100%;height:auto;object-fit:contain}.service-detail h2{font:600 clamp(36px,4vw,62px)/1 Oswald,Impact,sans-serif;text-transform:uppercase;margin:0 0 25px}.service-detail h3{font-size:18px;font-weight:500;line-height:1.6}.service-detail p:not(.eyebrow){line-height:1.8;color:#555;margin-bottom:30px}.service-detail .text-link{border-color:#555}.process-section,.faq-section{padding:90px 6vw}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px;padding-left:20px}.process-grid li{padding-left:8px}.process-grid h3{font-size:19px;font-weight:500}.process-grid p{font-size:14px;line-height:1.8;color:#bbb}.faq-section{border-top:1px solid #333;max-width:1100px}.faq-section details{border-bottom:1px solid #444;padding:24px 0}.faq-section summary{cursor:pointer;font-size:17px;line-height:1.5}.faq-section details p{color:#bbb;line-height:1.8;max-width:750px}.faq-section details a{text-decoration:underline}.reveal{opacity:1;transform:none}.footer-meta{flex-wrap:wrap}.menu-toggle{cursor:pointer}
@media(max-width:1000px){.nav{gap:18px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-meta{gap:20px}}@media(max-width:600px){.page-intro{padding:135px 5vw 45px}.page-intro h1{font-size:clamp(48px,12vw,72px)}.portfolio-toolbar{display:block}.portfolio-grid{grid-template-columns:1fr;gap:30px}.portfolio-section{padding:30px 5vw 60px}.filters{gap:8px}.filters button{font-size:11px;padding:12px}.service-detail{grid-template-columns:1fr;gap:30px}.service-details{padding:20px 5vw}.process-grid{grid-template-columns:1fr;gap:15px}.page-cta,.process-section,.faq-section{padding:65px 5vw}.lightbox{padding-left:8px;padding-right:8px}.lightbox img{height:70svh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
