:root{--display:"Archivo Black","Arial Black","Helvetica Neue",Helvetica,Arial,sans-serif;--sans:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--serif:"Newsreader",Georgia,"Times New Roman",serif;--ink:#191713;--paper:#f2eee6;--cream:#fffaf0;--red:#d3442e;--pink:#f3a1b7;--plum:#b51662;--acid:#d9ee62;--line:rgba(25,23,19,.2)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}em{font-weight:400}::selection{background:var(--pink);color:var(--ink)}
.site-header{background-image:linear-gradient(180deg,rgba(20,8,14,.5),rgba(20,8,14,0));height:82px;padding:0 clamp(22px,4vw,64px);display:flex;align-items:center;justify-content:space-between;position:fixed;top:0;z-index:5;width:100%;color:var(--cream);transition:background-color .25s ease,backdrop-filter .25s ease}.site-header.is-scrolled{background-image:none;background-color:rgba(181,22,98,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.wordmark{font-family:var(--sans);font-weight:600;letter-spacing:-.01em;font-size:22px}.site-header nav{display:flex;gap:26px;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.11em}.nav-toggle{display:none;width:44px;height:44px;padding:0;border:0;background:none;color:inherit;cursor:pointer;position:relative;z-index:2;align-items:center;justify-content:center}.nav-toggle span,.nav-toggle span:before,.nav-toggle span:after{display:block;width:24px;height:2px;background:currentColor;transition:transform .25s ease,background-color .25s ease}.nav-toggle span:before,.nav-toggle span:after{content:"";position:absolute;left:10px}.nav-toggle span:before{top:15px}.nav-toggle span:after{top:29px}.nav-open .nav-toggle span{background:transparent}.nav-open .nav-toggle span:before{transform:translateY(7px) rotate(45deg)}.nav-open .nav-toggle span:after{transform:translateY(-7px) rotate(-45deg)}.wordmark{position:relative;z-index:2}.nav-contact{border:1px solid currentColor;border-radius:999px;padding:10px 16px}.site-header nav a:hover{opacity:.62}
.hero{min-height:100vh;background:var(--plum);color:var(--cream);display:grid;grid-template-columns:48% 52%;position:relative;overflow:hidden}.hero-copy{padding:160px 5vw 70px 7vw;z-index:2}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:700}.hero h1{font:400 clamp(78px,10vw,160px)/.77 var(--display);letter-spacing:-.05em;margin:46px 0}.hero-intro{max-width:510px;font:400 clamp(19px,2vw,27px)/1.35 var(--serif)}.text-link{display:inline-flex;gap:16px;margin-top:32px;padding-bottom:7px;border-bottom:1px solid currentColor;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.hero-image{margin:0;position:relative}.hero-image img{object-position:center 23%}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(75,24,52,.28),transparent 40%)}.hero-image figcaption{position:absolute;right:18px;bottom:20px;font-size:10px;letter-spacing:.08em;writing-mode:vertical-rl;z-index:2}.hero-credential{position:absolute;right:calc(52% - 55px);bottom:50px;width:110px;height:110px;border-radius:50%;background:var(--acid);color:var(--ink);display:grid;place-content:center;text-align:center;text-transform:uppercase;font-weight:700;font-size:11px;line-height:1.5;transform:rotate(-8deg);z-index:3}
.section{padding:120px clamp(24px,7vw,112px)}.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr;gap:0;margin-top:0}.intro{padding-top:90px;padding-bottom:90px}.intro h2{font-size:clamp(40px,5vw,78px)}.bio{max-width:1180px;padding-top:34px;columns:2;column-gap:clamp(32px,5vw,80px)}.intro h2,.reviews h2,.credits h2,.contact h2{font:400 clamp(58px,8vw,122px)/.88 var(--display);letter-spacing:-.045em;text-transform:uppercase;margin:0}.bio p{font:400 17px/1.7 var(--serif)}.bio .lead{font-size:clamp(23px,2.3vw,34px);line-height:1.35;margin-top:0}
.gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr;height:760px;background:var(--ink);gap:2px}.gallery figure{margin:0;position:relative;overflow:hidden}.gallery img{transition:transform .7s ease;filter:saturate(.82)}.gallery figure:hover img{transform:scale(1.025);filter:saturate(1)}
.reviews{background:var(--red);color:var(--cream)}.reviews h2{margin:45px 0 80px}.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.25)}blockquote{margin:0;background:var(--red);padding:40px 38px;min-height:290px;display:flex;flex-direction:column;justify-content:space-between}blockquote p{font:400 clamp(23px,2vw,31px)/1.25 var(--serif);margin:0}blockquote footer{text-transform:uppercase;letter-spacing:.1em;font-size:10px;line-height:1.5}
.melody{background:var(--acid);padding:96px clamp(24px,7vw,112px);display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;overflow:hidden}.melody-copy h2{font:400 clamp(60px,8.4vw,126px)/.78 var(--display);letter-spacing:-.09em;text-transform:uppercase;margin:12px 0 40px}.melody-copy>p:not(.section-number):not(.scribble){font:21px/1.5 var(--serif);max-width:530px}.scribble{font:italic 29px var(--serif);transform:rotate(-3deg);margin:55px 0 0;color:var(--red)}
.mafs{min-height:760px;background:#140e11;color:var(--cream);display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.mafs-visual{display:flex;gap:2.5vw;align-items:center;justify-content:center;padding:70px;background:radial-gradient(circle at 35% 45%,#5d243c,transparent 43%),#1d1318}.sound{width:2.2vw;min-width:17px;border-radius:999px;background:linear-gradient(var(--pink),var(--red));box-shadow:0 0 40px rgba(243,161,183,.24)}.sound-one,.sound-five{height:18%}.sound-two,.sound-four{height:43%}.sound-three{height:75%}.mafs-copy{padding:110px 7vw;display:flex;flex-direction:column;justify-content:center}.mafs h2{font:400 clamp(32px,3.8vw,58px)/.95 var(--display);letter-spacing:-.03em;text-transform:uppercase;margin:18px 0 34px}
.reviews h2 em,.mafs h2 em{font-style:normal}.mafs-copy>p:last-of-type{font:19px/1.55 var(--serif);max-width:520px;color:#d8cbd0}
.credits{background:var(--paper)}.credits h2{margin:50px 0 80px}.credit-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:5vw;border-top:1px solid var(--line);padding-top:34px}.credit-columns h3{text-transform:uppercase;letter-spacing:.15em;font-size:11px}.credit-columns p{font:20px/1.55 var(--serif)}
.contact{background:var(--pink);padding:110px 7vw}.contact h2{margin:48px 0 90px;max-width:1000px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(25,23,19,.3);padding-top:32px;gap:6vw}.contact address{font-style:normal;display:flex;flex-direction:column;gap:8px;font:18px/1.4 var(--serif)}.contact address strong{text-transform:uppercase;letter-spacing:.14em;font:700 11px var(--sans);margin-bottom:13px}.contact address a{text-decoration:underline;text-underline-offset:4px;margin-top:8px}.site-footer{background:var(--ink);color:var(--cream);padding:30px 4vw;display:flex;justify-content:space-between;align-items:center;font-size:11px;text-transform:uppercase;letter-spacing:.13em}.site-footer>a:first-child{font-family:var(--sans);font-weight:600;font-size:20px;letter-spacing:-.01em;text-transform:none}
@media(max-width:900px){.nav-toggle{display:flex}.site-header nav{position:fixed;inset:0;z-index:1;flex-direction:column;justify-content:center;align-items:flex-start;gap:0;padding:0 clamp(22px,7vw,48px);background:var(--plum);color:var(--cream);font-size:inherit;letter-spacing:normal;text-transform:none;transform:translateY(-100%);visibility:hidden;transition:transform .35s ease,visibility .35s ease}.nav-open .site-header nav{transform:none;visibility:visible}.site-header nav a{font:400 clamp(30px,7.5vw,44px)/1.15 var(--display);text-transform:uppercase;letter-spacing:-.02em;padding:13px 0}.nav-open .nav-contact{border:0;border-radius:0;padding:13px 0}.nav-open{overflow:hidden}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:135px 24px 60px}.hero h1{font-size:clamp(46px,13vw,86px);margin:35px 0}.hero-image{height:68vh}.hero-credential{right:22px;bottom:calc(68vh - 45px)}.intro-grid,.melody,.mafs{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr;height:auto}.gallery figure{height:430px}.gallery .gallery-tall{grid-column:1/-1;height:580px}.quote-grid,.credit-columns{grid-template-columns:1fr}.quote-grid{gap:1px}.melody-copy h2{font-size:clamp(56px,14vw,96px)}.mafs-visual{height:470px}.mafs-copy{padding:90px 7vw}.contact-grid{grid-template-columns:1fr;gap:45px}}
@media(max-width:560px){.section,.melody,.contact{padding:80px 22px}.site-header{height:70px;padding:0 20px}.wordmark{font-size:21px}.hero-copy{padding-top:115px}.hero-intro{font-size:19px}.gallery{display:block}.gallery figure,.gallery .gallery-tall{height:480px;border-bottom:2px solid var(--ink)}.reviews h2,.credits h2,.contact h2{font-size:58px}.reviews h2,.credits h2{margin-bottom:55px}blockquote{min-height:245px;padding:32px 24px}.melody{padding-bottom:30px}.mafs-visual{height:370px;padding:40px}.sound{width:22px}.mafs-copy{padding:78px 22px}.mafs h2{font-size:34px}.contact-grid{margin-top:0}.site-footer{align-items:flex-start;gap:20px;flex-direction:column}.site-footer span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery img{transition:none}}
.hero h1{font-size:clamp(52px,5.2vw,92px);font-weight:400;line-height:.9}
.bio p{font-size:18px;line-height:1.75;margin:0 0 1.3em;break-inside:avoid}
.photo-break{display:grid;background:var(--ink);gap:2px;overflow:hidden}.photo-break img{min-height:0}.photo-break-pair{grid-template-columns:repeat(3,1fr);height:650px}.photo-break-wide{grid-template-columns:repeat(3,1fr);height:650px}.photo-break-wide img{object-position:center 30%}
.quote-grid blockquote{background:#ffc6d8;color:var(--ink)}
.mafs-visual{position:relative}.mafs-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(72%,560px);height:auto;object-fit:contain;z-index:2;filter:drop-shadow(0 8px 24px rgba(0,0,0,.4))}
@media(max-width:900px){.photo-break-pair,.photo-break-wide{height:440px}}
@media(max-width:560px){.photo-break-pair,.photo-break-wide{grid-template-columns:1fr;height:auto}.photo-break img{height:420px}}
.reviews h2{font-size:clamp(42px,5vw,76px);line-height:.9;margin:25px 0 45px}
@media(max-width:560px){.reviews h2{font-size:44px}}

@media(max-width:820px){.bio{columns:1}}
/* Critical acclaim — editorial mosaic */
.reviews{padding-top:88px;padding-bottom:88px}
.reviews h2{margin:18px 0 clamp(24px,2.6vw,38px)}
.review-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(10px,1.1vw,16px)}
.review{margin:0;display:flex;flex-direction:column;justify-content:space-between;min-height:0;background:var(--cream);color:var(--ink);border-radius:3px;padding:clamp(20px,1.9vw,30px);box-shadow:0 12px 28px rgba(60,10,20,.18)}
.review p{font-family:var(--serif);font-size:clamp(18px,1.5vw,25px);line-height:1.22;margin:0 0 auto}
.review footer{display:flex;flex-direction:column;gap:5px;border-top:1px solid rgba(25,23,19,.15);padding-top:12px;margin-top:22px}
.review .pub{font-family:var(--sans);font-weight:700;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--plum)}
.review cite{font-family:var(--serif);font-style:italic;font-size:14px;line-height:1.25;text-transform:none;letter-spacing:normal;color:rgba(25,23,19,.62)}
.review{grid-column:span 4}
.review:nth-child(1){min-height:172px}
.review:nth-child(2){background:#ffc6d8}
.review:nth-child(4),.review:nth-child(5){grid-column:span 6}
.review:nth-child(4){background:var(--plum);color:var(--cream)}
.review:nth-child(4) footer{border-top-color:rgba(255,255,255,.28)}
.review:nth-child(4) .pub{color:var(--pink)}
.review:nth-child(4) cite{color:rgba(255,250,240,.72)}
@media(max-width:1024px){.review-grid{grid-template-columns:repeat(6,1fr)}.review:nth-child(n){grid-column:span 3}}
@media(max-width:700px){.review:nth-child(n){grid-column:span 6}}

/* Photo pair captions */
.photo-break figure{position:relative;margin:0;min-height:0;overflow:hidden}
.photo-break figure img{width:100%;height:100%}
.photo-break figcaption,.gallery figcaption{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"role note" "cite note";align-items:end;column-gap:clamp(12px,1.5vw,26px);row-gap:5px;padding:70px clamp(20px,2.2vw,32px) clamp(20px,2vw,28px);color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.photo-break figcaption .role,.gallery figcaption .role{grid-area:role;font-family:var(--display);font-size:clamp(19px,1.7vw,27px);line-height:1;text-transform:uppercase;letter-spacing:-.01em}
.photo-break figcaption cite,.gallery figcaption cite{grid-area:cite;font-family:var(--sans);font-style:italic;font-size:clamp(14px,1.05vw,16px);color:rgba(255,255,255,.82)}

.gallery figcaption .note,.photo-break figcaption .note{grid-area:note;align-self:end;text-align:right;font-family:var(--sans);font-size:9.5px;font-weight:700;letter-spacing:.14em;line-height:1.5;text-transform:uppercase;color:rgba(255,255,255,.72)}
.gallery-tall img{object-position:38% center}
/* Melody Moss series */
.book-row{list-style:none;margin:0;padding:0;align-self:center;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,22px)}
.book-row a{display:flex;flex-direction:column;gap:14px}
.book-row img{width:100%;height:auto;aspect-ratio:.68;border-radius:2px;box-shadow:0 16px 34px rgba(0,0,0,.3);transition:transform .28s ease}
.book-row li:nth-child(1) img{transform:rotate(-3deg)}
.book-row li:nth-child(2) img{transform:rotate(1.5deg)}
.book-row li:nth-child(3) img{transform:rotate(-1.5deg)}
.book-row a:hover img{transform:translateY(-9px) rotate(0deg)}
.book-title{font-family:var(--sans);font-weight:700;font-size:10.5px;letter-spacing:.1em;line-height:1.5;text-transform:uppercase;color:var(--ink)}
@media(max-width:560px){.book-row{grid-template-columns:1fr;gap:18px}.book-row a{flex-direction:row;align-items:center;gap:18px}.book-row img{width:92px;flex:0 0 92px;transform:none!important}.book-row a:hover img{transform:translateY(-4px)!important}}

/* MAFS soundbars — ambient backdrop rather than a graphic element */
.sound{opacity:.22;box-shadow:0 0 70px rgba(243,161,183,.12)}
.sound-one,.sound-five{height:30%}
.sound-two,.sound-four{height:58%}
.sound-three{height:88%}

@media(max-width:560px){.photo-break figure{height:420px}}

.gallery figcaption .note span,.photo-break figcaption .note span{display:block;margin-top:4px}

.contact address a+a{margin-top:2px}
.intro h2{color:var(--plum)}

@media(max-width:760px){.photo-break-pair,.photo-break-wide{grid-template-columns:1fr;height:auto}.photo-break-pair figure,.photo-break-wide figure{height:420px}}

.footer-links{display:flex;align-items:center;gap:clamp(18px,2.5vw,34px)}
@media(max-width:560px){.footer-links{gap:20px}}
