@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@400;500;600;700&family=UnifrakturCook:wght@700&display=swap');
:root{--bg:#0d0c0c;--paper:#e9e2d8;--muted:#aaa097;--red:#87363b;--line:#382d2c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--paper);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.shell{width:min(1200px,calc(100% - 48px));margin:auto}header{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{font-family:'UnifrakturCook',serif;font-size:31px}.logo span{color:#ad5559}nav{display:flex;gap:25px}nav a,.eyebrow{font-size:9px;letter-spacing:.19em;text-transform:uppercase;color:#c9c0b5}nav a:hover,nav a.active{color:#d27a7b}.hero{padding:100px 0 88px;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.eyebrow{color:#c17778}.eyebrow:before{content:'✦';margin-right:10px;color:#87363b}h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:400}h1{font-size:clamp(65px,8vw,116px);line-height:.83;letter-spacing:-.045em;margin:25px 0}h1 em{color:#b9686b;font-style:normal}h2{font-size:clamp(45px,6vw,75px);line-height:.92;margin:15px 0 22px}h3{font-size:31px;margin:0 0 10px}p{color:var(--muted);font-size:13px;line-height:1.9}.lead{font-size:15px;max-width:490px}.btn{display:inline-block;margin-top:20px;padding:15px 22px;border:1px solid #895052;color:var(--paper);font-size:9px;letter-spacing:.18em;text-transform:uppercase}.btn:hover{background:#702d31}.heroimage{height:520px;background:linear-gradient(0deg,rgba(0,0,0,.45),transparent),url('https://images.unsplash.com/photo-1501386761578-eac5c94b800a?auto=format&fit=crop&w=1400&q=85') center/cover;filter:saturate(.55)}.heroimage.photo{background-image:url('https://images.unsplash.com/photo-1501612780327-45045538702b?auto=format&fit=crop&w=1400&q=85')}.heroimage.video{background-image:url('https://images.unsplash.com/photo-1492684223066-81342ee5ff30?auto=format&fit=crop&w=1400&q=85')}.heroimage.credits{background-image:url('https://images.unsplash.com/photo-1459749411175-04bf5292ceea?auto=format&fit=crop&w=1400&q=85')}.rule{border-block:1px solid var(--line);padding:22px 0;color:#bdb3a8;font-family:'Cormorant Garamond',serif;font-size:20px;letter-spacing:.06em;text-align:center}.rule span{color:#a64c4d;padding:0 14px}.section{padding:82px 0}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.sectionhead p{max-width:390px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.tile{position:relative;min-height:340px;background:#211d1b;overflow:hidden}.tile img{width:100%;height:100%;min-height:340px;object-fit:cover;filter:grayscale(.35) brightness(.78);transition:.5s}.tile:hover img{transform:scale(1.035);filter:grayscale(0) brightness(.9)}.caption{position:absolute;left:22px;bottom:18px}.caption small{color:#d28b86;font-size:9px;letter-spacing:.2em;text-transform:uppercase}.caption h3{margin:7px 0 0;text-shadow:0 2px 12px #000}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.card{background:var(--bg);padding:28px;min-height:190px}.num{color:#c17778;font-size:10px;letter-spacing:.2em}.callout{background:#201819;border-block:1px solid #493033;padding:70px 0;text-align:center}.callout h2{max-width:780px;margin:15px auto}.callout p{max-width:610px;margin:auto}.taglist{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.tag{border:1px solid var(--line);padding:9px 12px;color:#d3cbc1;font-size:11px;background:#121010}.creditslist{border-top:1px solid var(--line)}.creditrow{display:grid;grid-template-columns:1.1fr .9fr 1.4fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);align-items:center}.creditrow strong{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:400}.creditrow span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#c17778}.creditrow p{margin:0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0}.metric{padding:25px;border:1px solid var(--line);background:#121010}.metric strong{font-family:'Cormorant Garamond',serif;font-size:45px;color:#c17b76;display:block}.metric span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:50px}.note{border-left:2px solid var(--red);padding-left:18px}footer{border-top:1px solid var(--line);padding:28px 0;display:flex;justify-content:space-between;color:#887f76;font-size:9px;letter-spacing:.14em;text-transform:uppercase}@media(max-width:780px){.shell{width:calc(100% - 36px)}header{height:auto;min-height:75px;align-items:flex-start;padding:18px 0;gap:17px;flex-direction:column}.logo{font-size:28px}nav{flex-wrap:wrap;gap:14px}.hero{grid-template-columns:1fr;padding:65px 0;gap:30px}.heroimage{height:360px}.grid,.cards,.two-col{grid-template-columns:1fr}.section{padding:62px 0}.sectionhead{display:block}.creditrow{grid-template-columns:1fr;gap:5px}.metrics{grid-template-columns:1fr}footer{gap:12px;flex-direction:column}}
/* Video portfolio: posters remain visible until a video source is added. */
.video-tile video{display:block;width:100%;height:100%;min-height:340px;object-fit:cover;filter:grayscale(.35) brightness(.78);transition:filter .5s}
.video-tile:hover video{filter:grayscale(0) brightness(.9)}

/* Credits typography and compact merchandising page */
.credits-main{padding-top:72px}
.credits-main h2{font-size:clamp(48px,6vw,76px);letter-spacing:.015em}
.credits-main .tag{font-size:14px;padding:12px 16px;line-height:1.4}
.credits-main .taglist{gap:11px;margin-top:24px}
.publication-credit{font-size:17px;margin-top:18px}
.publication-credit strong{color:var(--paper)}
.publication-credit span{color:#d27a7b;font-weight:600}
.content-summary{max-width:780px}
.merch-intro{padding-bottom:40px}
.merch-intro h1{font-size:clamp(66px,9vw,120px)}
.merch-intro .lead{max-width:760px}
.merch-skills{padding-top:32px}
.merch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:30px}
.merch-item{border:1px solid var(--line);background:#121010;padding:30px}
.merch-item span{color:#c17778;font-size:10px;letter-spacing:.18em}
.merch-item h3{margin-top:16px}
.merch-footnote{margin-top:24px;font-size:14px}
@media(max-width:780px){.credits-main{padding-top:50px}.merch-grid{grid-template-columns:1fr}.merch-intro{padding-bottom:20px}}

/* Touring experience: clear, readable two-column credits */
.creditslist .tour-credit-row{grid-template-columns:minmax(180px,1fr) minmax(190px,1fr);gap:24px;padding:24px 0}
.creditslist .tour-credit-row strong{font-size:clamp(26px,3vw,34px);line-height:1.15}
.creditslist .tour-credit-row span{font-size:clamp(13px,1.5vw,16px);letter-spacing:.035em;line-height:1.5;text-transform:none;color:#d7b2b2}
@media(max-width:640px){.creditslist .tour-credit-row{grid-template-columns:1fr;gap:7px;padding:20px 0}}

/* Festival names match the client credits sizing. */
.credits-main .taglist .tag{font-size:14px}

/* Small right-aligned social link in the site navigation */
nav .instagram-link{margin-left:auto;color:#e9e2d8;white-space:nowrap;font-size:9px;letter-spacing:.14em}
nav .instagram-link:hover{color:#d27a7b}
@media(max-width:780px){nav .instagram-link{margin-left:0}}

/* Unified Clients & Publicity layout */
.credits-section{padding:64px 0;border-bottom:1px solid var(--line)}
.credits-section:first-child{padding-top:68px}
.credits-section:last-child{border-bottom:0;padding-bottom:90px}
.credits-section h2{font-size:clamp(42px,5.4vw,66px);line-height:1.08;letter-spacing:.012em;margin:0 0 26px}
.credits-section .taglist{display:flex;flex-wrap:wrap;gap:11px;margin-top:0}
.credits-section .tag{font-size:14px;line-height:1.4;padding:12px 16px}
.credits-section .publication-credit{margin:30px 0 0;font-size:17px;line-height:1.5}
.credits-section .creditslist{margin-top:0}
.credits-section .tour-credit-row{grid-template-columns:minmax(180px,1fr) minmax(190px,1fr);gap:24px;padding:22px 0}
.credits-section .tour-credit-row strong{font-size:clamp(26px,3vw,32px)}
.credits-section .tour-credit-row span{font-size:15px;line-height:1.5}
@media(max-width:640px){.credits-section{padding:42px 0}.credits-section:first-child{padding-top:42px}.credits-section h2{margin-bottom:22px}.credits-section .tour-credit-row{grid-template-columns:1fr;gap:6px}}

/* Understated Instagram icon in the navigation */
nav .instagram-link{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:30px;color:inherit;opacity:.78;transition:opacity .2s ease,color .2s ease,transform .2s ease}
nav .instagram-link:hover,nav .instagram-link:focus-visible{opacity:1;color:#e9e2d8;transform:translateY(-1px)}
nav .instagram-link svg{display:block;width:19px;height:19px;flex:none}

/* V13: Instagram icon aligned after Contact */
nav{align-items:center}
nav .instagram-link{margin-left:-12px;min-width:20px;min-height:20px;line-height:1;opacity:.82}
nav .instagram-link svg{width:16px;height:16px}
@media(max-width:780px){nav .instagram-link{margin-left:-5px}}

/* THRASHBEAR editorial photo portfolio */
.heroimage.photo{background-image:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.20)),url("assets/photos/photo-01.webp");background-position:center 35%;background-size:cover}
.photo-gallery-section{padding-top:40px}
.editorial-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(14px,2.4vw,34px);align-items:center}
.editorial-frame{grid-column:span 4;margin:0;overflow:hidden;background:#151313}
.editorial-frame img{display:block;width:100%;height:auto;object-fit:contain;transition:transform .6s ease}
.editorial-frame:hover img{transform:scale(1.015)}
.editorial-frame.feature{grid-column:span 8}
.editorial-frame.wide{grid-column:span 7}
.editorial-frame.portrait{grid-column:span 4}
.editorial-frame:nth-child(4n+2){margin-top:clamp(0px,5vw,75px)}
.editorial-frame:nth-child(5n+3){margin-bottom:clamp(0px,4vw,60px)}
.editorial-frame:nth-child(7n+5){grid-column:span 5}
@media(max-width:800px){.editorial-gallery{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.editorial-frame,.editorial-frame.portrait{grid-column:span 3}.editorial-frame.feature,.editorial-frame.wide,.editorial-frame:nth-child(7n+5){grid-column:span 6}.editorial-frame:nth-child(n){margin:0}}
@media(max-width:480px){.editorial-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.editorial-frame,.editorial-frame.portrait{grid-column:span 1}.editorial-frame.feature,.editorial-frame.wide,.editorial-frame:nth-child(7n+5){grid-column:span 2}}

/* V15: compact editorial grid, modest crops, no artificial stagger gaps */
.heroimage.photo{background-image:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.14)),url("assets/photos/492A5730.webp");background-position:center center}
.photo-gallery-section{padding-top:24px}
.editorial-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:stretch;grid-auto-flow:dense}
.editorial-frame,.editorial-frame.feature,.editorial-frame.wide,.editorial-frame.portrait,.editorial-frame:nth-child(7n+5){grid-column:auto;margin:0;aspect-ratio:4/5}
.editorial-frame:nth-child(4n+2),.editorial-frame:nth-child(5n+3){margin:0}
.editorial-frame img{width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:800px){.editorial-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.editorial-frame,.editorial-frame.feature,.editorial-frame.wide,.editorial-frame.portrait,.editorial-frame:nth-child(7n+5){grid-column:auto;aspect-ratio:4/5}}
@media(max-width:480px){.editorial-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.editorial-frame,.editorial-frame.feature,.editorial-frame.wide,.editorial-frame.portrait,.editorial-frame:nth-child(7n+5){grid-column:auto;aspect-ratio:4/5}}

/* V16: full uncropped hero, with original color restored and gently enhanced */
.heroimage.photo {
  background-image: url("assets/photos/492A5730-cover.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #0d0c0c;
  filter: none;
  height: auto;
  aspect-ratio: 1622 / 1909;
  max-height: 650px;
}

/* One continuous, tightly spaced horizontal video strip */
.video-loop-row {
  display: flex;
  gap: 8px;
  width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  padding-bottom: 8px;
}
.video-loop {
  flex: 0 0 calc((100% - 40px) / 6);
  min-width: 0;
  aspect-ratio: 4 / 5;
  display: block;
  object-fit: cover;
  background: #101010;
}
@media (max-width: 900px) {
  .video-loop { flex-basis: 30%; }
}
@media (max-width: 600px) {
  .video-loop { flex-basis: 48%; }
}

/* Featured video: rightmost clip promoted to video-page cover */
.hero-video-wrap { width:100%; height:520px; overflow:hidden; background:#0d0c0c; }
.hero-video { display:block; width:100%; height:100%; object-fit:cover; }
@media (max-width:780px) { .hero-video-wrap {height:360px;} }
.video-loop {flex-basis:calc((100% - 32px)/5)}
@media (max-width:900px) {.video-loop {flex-basis:30%}}
@media (max-width:600px) {.video-loop {flex-basis:48%}}
