*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fafaf8;color:#161616;font-family:Futura,"Century Gothic","Trebuchet MS",Arial,sans-serif;font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}a:hover,.text-button:hover{opacity:.56}.site-header{max-width:1250px;margin:auto;padding:32px 48px;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:24px;letter-spacing:-1.5px;font-weight:600}.site-header nav{display:flex;gap:28px;align-items:center}.text-button{border:0;background:none;padding:0;color:inherit}.lang-switch{font-size:12px;white-space:nowrap}.home,.simple-page,.piece-page,.secret-page{max-width:1250px;margin:0 auto;padding:65px 48px 90px}.intro-line{font-size:12px;color:#777;margin-bottom:40px}.work-item{border-top:1px solid #dededb}.work-item:last-child{border-bottom:1px solid #dededb}.work-trigger{border:0;background:transparent;width:100%;padding:23px 0;display:grid;grid-template-columns:85px minmax(0,1fr) 180px 24px;align-items:center;text-align:left;gap:14px;color:inherit}.work-year{font-size:13px;color:#888}.work-title{font-size:clamp(23px,3.8vw,48px);line-height:1.2;letter-spacing:-1.8px}.work-type{color:#777;font-size:12px}.work-plus{font-size:24px;font-weight:200;transition:transform .3s}.work-item.is-open .work-plus{transform:rotate(45deg)}.work-preview{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s ease;overflow:hidden}.work-item.is-open .work-preview{grid-template-rows:1fr}.work-preview>div{min-height:0}.preview-media{overflow:hidden}.preview-media video{width:100%;max-height:430px;object-fit:cover;display:block;background:#e8e8e6}.preview-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:22px 0 32px}.preview-description{max-width:480px;color:#666}.preview-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.preview-actions audio{width:220px;height:38px}.enter-link{white-space:nowrap;border-bottom:1px solid;padding-bottom:3px}.home-footer{display:flex;justify-content:flex-end;margin-top:52px}.secret-link{color:#78a9db;font-size:11px;letter-spacing:.08em;transition:letter-spacing .3s}.secret-link:hover{letter-spacing:.17em;opacity:1}.eyebrow{font-size:12px;color:#777;margin:0 0 16px}.piece-page{max-width:850px;padding-top:50px}.piece-page h1,.simple-page h1,.secret-page h1{font-size:clamp(36px,6vw,76px);line-height:1.1;letter-spacing:-3px;font-weight:500;margin:0 0 35px}.room-art{width:100%;background:#eaeae7}.room-art img{width:100%;height:auto;max-height:600px;object-fit:contain;display:block}.room-player{margin:30px 0 75px}.custom-player{display:flex;align-items:center;gap:22px;padding:22px 24px;background:#f0f0ed;border-radius:12px}.play-toggle{width:54px;height:54px;flex:none;border:1px solid #161616;border-radius:50%;background:#161616;color:white;font-size:20px}.player-main{flex:1;min-width:0}.player-title{font-size:17px;margin-bottom:12px}.seek{width:100%;accent-color:#222;cursor:pointer}.time{display:flex;justify-content:space-between;color:#777;font-size:11px}.piece-copy{max-width:680px}.piece-copy h2,.simple-page h2{font-size:19px;font-weight:500;margin:48px 0 12px}.piece-copy p,.simple-page p{color:#555}.piece-copy figure{margin:24px 0}.piece-copy figure img{max-width:100%;display:block}.piece-copy figcaption{font-size:12px;color:#777;margin-top:8px}.stream-links{display:flex;gap:14px 24px;flex-wrap:wrap}.stream-links a{border-bottom:1px solid #bbb}.stream-links .placeholder-link{color:#999}.back-home{margin-top:80px;font-size:12px}.simple-page{max-width:780px}.secret-page{max-width:750px;min-height:65vh;text-align:center;padding-top:110px}.secret-symbol{font-size:48px;color:#90bce9}.secret-page h1{margin-top:20px}.secret-page>p:not(.eyebrow){color:#777;max-width:430px;margin:0 auto 70px}.contact-overlay{position:fixed;inset:0;background:rgba(246,246,243,.97);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:20}.contact-overlay.is-visible{opacity:1;visibility:visible}.overlay-close{position:absolute;top:26px;right:42px;border:0;background:none;font-size:35px}.contact-card{display:flex;flex-direction:column;gap:12px;text-align:center;font-size:clamp(18px,3vw,32px)}@media(max-width:650px){.site-header{padding:22px 20px}.site-header nav{gap:15px}.wordmark{font-size:21px}.home,.simple-page,.piece-page,.secret-page{padding:45px 20px 70px}.work-trigger{grid-template-columns:46px minmax(0,1fr) 22px;gap:8px}.work-title{font-size:26px;letter-spacing:-.8px}.work-type{display:none}.preview-bottom{display:block}.preview-actions{margin-top:18px;align-items:flex-start}.preview-actions audio{max-width:100%}.preview-media video{max-height:280px}.custom-player{padding:15px;gap:12px}.play-toggle{width:44px;height:44px}.piece-page h1{letter-spacing:-1.5px}.overlay-close{right:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
/* version 4: slim archive, artwork thumbnails, cleaner rooms */
.wordmark{font-size:20px;font-weight:400;letter-spacing:-.75px;line-height:1.2}
.intro-line{margin-bottom:34px;color:#555}
.work-trigger{grid-template-columns:70px minmax(0,1fr) 94px 20px;padding:16px 0;gap:18px;min-height:102px}
.work-title{font-size:clamp(21px,3.2vw,39px);letter-spacing:-1.1px}
.work-thumbnail{width:94px;height:70px;overflow:hidden;background:#efefed;border-radius:2px;justify-self:end}
.work-thumbnail img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease,filter .4s ease}
.work-trigger:hover .work-thumbnail img{transform:scale(1.06)}
.work-item.is-open .work-thumbnail img{filter:saturate(1.2)}
.preview-media{max-width:830px;margin:0 auto;width:100%}
.preview-media video{max-height:480px;object-fit:contain;background:#ececea}
.preview-bottom{justify-content:flex-end;padding:14px 0 26px}
.preview-actions{justify-content:flex-end}
.home-footer{justify-content:flex-end;padding-right:clamp(14px,8vw,115px);margin-top:65px;transform:translateY(12px)}
.secret-link{font-size:10px;color:#76a7da;letter-spacing:.11em;transform:rotate(-5deg);display:inline-block}
.room-player{margin:20px 0 68px}
.custom-player{background:transparent;border:1px solid #e4e4e0;border-radius:3px;padding:14px 18px;gap:16px}
.play-toggle{height:42px;width:42px;font-size:17px}
.player-title{font-size:14px;margin-bottom:6px}
.room-art{background:transparent}
.room-art img{max-height:570px}
.piece-copy .stream-links{margin:35px 0 20px}
@media(max-width:650px){
 .wordmark{font-size:19px}
 .work-trigger{grid-template-columns:43px minmax(0,1fr) 65px 16px;gap:8px;min-height:84px;padding:12px 0}
 .work-title{font-size:clamp(19px,5.3vw,27px);letter-spacing:-.5px}
 .work-thumbnail{width:65px;height:55px}
 .work-plus{font-size:20px}
 .preview-media video{max-height:300px}
 .home-footer{padding-right:12%;margin-top:42px}
}

/* v5 — larger but light wordmark, balanced header controls */
.wordmark{font-size:27px;font-weight:400;letter-spacing:-1px}
.lang-switch{font-size:inherit}
/* art is part of the full-height archive row, not a small stamp */
.work-trigger{grid-template-columns:70px minmax(0,1fr) clamp(150px,22vw,270px) 20px;min-height:154px;padding:9px 0;gap:18px}
.work-thumbnail{width:100%;height:134px;align-self:stretch;max-height:134px;border-radius:1px}
.work-thumbnail img{object-fit:cover;object-position:center;width:100%;height:100%}
/* secret project sits beyond the right edge of the work rows */
.home-footer{padding-right:0;transform:translateX(clamp(0px,3.8vw,48px)) translateY(12px)}
@media(max-width:650px){
 .wordmark{font-size:24px}
 .site-header nav{gap:13px}
 .work-trigger{grid-template-columns:42px minmax(0,1fr) clamp(80px,26vw,128px) 16px;min-height:110px;gap:7px;padding:8px 0}
 .work-thumbnail{height:94px;max-height:94px}
 .work-title{font-size:clamp(18px,5vw,26px)}
 .home-footer{transform:translateX(8px) translateY(12px)}
}

/* v6: a cover transforms into a film, with no playback chrome */
.wordmark{font-size:clamp(38px,4.5vw,60px);font-weight:500;letter-spacing:-2.6px;line-height:1}
.work-trigger{grid-template-rows:auto;transition:grid-template-rows .55s ease;align-items:center}
.work-thumbnail{position:relative;overflow:hidden;transition:height .7s cubic-bezier(.2,.8,.2,1),max-height .7s cubic-bezier(.2,.8,.2,1),filter .5s ease;will-change:height}
.thumbnail-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .7s ease .12s;pointer-events:none}
.work-thumbnail img{transition:opacity .6s ease,transform .65s ease;object-fit:cover}
.work-item.is-open .work-trigger{grid-template-columns:70px minmax(0,1fr) 20px;grid-template-rows:auto auto;row-gap:18px}
.work-item.is-open .work-year{grid-column:1;grid-row:1}
.work-item.is-open .work-title{grid-column:2;grid-row:1}
.work-item.is-open .work-plus{grid-column:3;grid-row:1}
.work-item.is-open .work-thumbnail{grid-column:2;grid-row:2;width:100%;height:clamp(230px,38vw,490px);max-height:490px;justify-self:stretch}
.work-item.is-open .work-thumbnail img{opacity:0}
.work-item.is-open .thumbnail-video{opacity:1}
.work-preview{visibility:hidden;opacity:0;transition:grid-template-rows .45s ease,opacity .3s ease,visibility .45s}
.work-item.is-open .work-preview{visibility:visible;opacity:1}
.preview-bottom{padding-top:10px}
@media(max-width:650px){
 .wordmark{font-size:36px;letter-spacing:-1.8px}
 .work-item.is-open .work-trigger{grid-template-columns:42px minmax(0,1fr) 16px;row-gap:12px}
 .work-item.is-open .work-thumbnail{height:clamp(190px,58vw,340px)}
}
@media(prefers-reduced-motion:reduce){.thumbnail-video,.work-thumbnail{transition:none!important}}

/* v7 — full-width artwork behind each work row */
.work-trigger{position:relative;isolation:isolate;min-height:170px;padding:22px 24px;grid-template-columns:70px minmax(0,1fr) 20px;gap:18px;overflow:hidden}
.work-thumbnail{position:absolute;inset:0;width:100%;height:100%;max-height:none;z-index:-2;justify-self:stretch;border-radius:0;transition:height .75s cubic-bezier(.2,.8,.2,1)}
.work-thumbnail img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.78);opacity:.76}
.work-trigger::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(250,250,248,.94) 0%,rgba(250,250,248,.82) 45%,rgba(250,250,248,.35) 100%);z-index:-1;pointer-events:none;transition:opacity .65s ease}
.work-trigger:hover .work-thumbnail img{transform:scale(1.025)}
.work-item.is-open .work-trigger{min-height:clamp(360px,52vw,620px);grid-template-columns:70px minmax(0,1fr) 20px;grid-template-rows:auto 1fr;align-items:start;row-gap:0}
.work-item.is-open .work-thumbnail{inset:0;grid-column:auto;grid-row:auto;width:100%;height:100%;max-height:none}
.work-item.is-open .work-trigger::before{opacity:.36}
.work-item.is-open .work-thumbnail img{opacity:0}
.work-item.is-open .work-title,.work-item.is-open .work-year,.work-item.is-open .work-plus{position:relative;z-index:1}
@media(max-width:650px){
 .work-trigger{min-height:125px;padding:14px 12px;grid-template-columns:42px minmax(0,1fr) 16px;gap:8px}
 .work-item.is-open .work-trigger{min-height:clamp(290px,85vw,470px);grid-template-columns:42px minmax(0,1fr) 16px}
 .work-item.is-open .work-thumbnail{height:100%;max-height:none}
 .work-trigger::before{background:linear-gradient(90deg,rgba(250,250,248,.96),rgba(250,250,248,.55))}
}

/* v8 — full-color artwork, no fading overlay */
.work-trigger::before,
.work-item.is-open .work-trigger::before{opacity:0!important;background:none!important}
.work-thumbnail img,
.work-trigger:hover .work-thumbnail img{filter:none;opacity:1}
.work-item.is-open .work-thumbnail img{opacity:0}
/* Keep titles legible without washing out the artwork. */
.work-year,.work-title,.work-plus{position:relative;z-index:2;text-shadow:0 1px 12px rgba(255,255,255,.8),0 0 3px rgba(255,255,255,.8)}

/* v9 — white lettering on full-color homepage artwork */
.work-trigger .work-year,
.work-trigger .work-title,
.work-trigger .work-plus {
  color: #fff;
  text-shadow: none;
}


/* v11: about page photo column + editorial text */
.about-layout{max-width:1250px;margin:0 auto;padding:40px 48px 100px;display:grid;grid-template-columns:minmax(190px,290px) minmax(0,1fr);gap:clamp(32px,5vw,85px);align-items:start}
.about-gallery{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.about-gallery img{display:block;width:100%;height:auto;object-fit:cover}
.about-gallery img:nth-child(2){width:78%;align-self:flex-end}
.about-gallery img:nth-child(3){width:90%}
.about-gallery img:nth-child(4){width:100%}
.about-gallery img:nth-child(5){width:88%;align-self:flex-end}
.about-gallery img:nth-child(6){width:100%}
.about-writing{padding-top:12px;max-width:700px}
.about-writing h1{font-size:clamp(38px,5.2vw,70px);font-weight:500;letter-spacing:-2.8px;line-height:1.08;margin:0 0 36px;text-transform:lowercase}
.about-bio{max-width:620px}
.about-bio p{font-size:clamp(14px,1.25vw,17px);line-height:1.75;margin:0 0 26px;color:#333}
.inline-about-link{display:inline-block;border-bottom:1px solid currentColor;font-weight:500;line-height:1.3}
.about-credits{margin-top:55px}
.about-credits h2{font-size:18px;font-weight:500;margin:0 0 20px}
.about-credits>a{display:block;width:fit-content;padding:7px 0;font-size:15px;border-bottom:1px solid transparent}
.about-credits>a:hover{border-bottom-color:currentColor;opacity:1}
.about-back{display:inline-block;margin-top:64px;border:1px solid #161616;padding:12px 18px;font-size:13px;transition:background .2s,color .2s}
.about-back:hover{background:#161616;color:#fff;opacity:1}
@media(max-width:650px){.about-layout{padding:30px 20px 70px;grid-template-columns:1fr;gap:35px}.about-writing{grid-row:1}.about-gallery{grid-row:2;display:grid;grid-template-columns:1fr 1fr;gap:12px}.about-gallery img,.about-gallery img:nth-child(n){width:100%;align-self:stretch}.about-writing h1{letter-spacing:-1.7px;margin-bottom:25px}.about-credits{margin-top:40px}.about-back{margin-top:45px}}

/* v12 — clean, larger photographic column */
@media (min-width: 651px) {
  .about-layout { grid-template-columns: minmax(280px, 410px) minmax(0, 1fr); gap: clamp(36px, 5vw, 76px); }
  .about-gallery { gap: 24px; align-items:stretch; }
  .about-gallery img,
  .about-gallery img:nth-child(n) { width:100%; align-self:stretch; height:auto; object-fit:cover; border:0; border-radius:0; box-shadow:none; }
}
@media (max-width: 650px) {
  .about-gallery { gap:14px; }
  .about-gallery img:nth-child(n) { width:100%; height:auto; object-fit:cover; }
}

/* v15: clean about page, no photographs; ready for layout mockup */
.about-layout{display:block;max-width:920px;margin:0 auto;padding:54px 24px 110px;min-height:0}
.about-writing{max-width:740px;margin:0 auto;padding:0}
@media(max-width:650px){.about-layout{display:block;padding:30px 20px 70px}.about-writing{max-width:100%}}

/* v16 — aligned photo mosaic based on the supplied mockup */
.about-layout.about-mosaic{max-width:1480px;padding:20px 32px 76px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1.03fr) minmax(0,1fr);grid-template-areas:"left writing right" "bottom bottom bottom";column-gap:16px;row-gap:16px;align-items:stretch}
.about-mosaic .mosaic-left{grid-area:left;display:grid;grid-template-rows:1fr 1fr;gap:12px;min-height:0}
.about-mosaic .mosaic-right{grid-area:right;min-height:0}
.about-mosaic .about-writing{grid-area:writing;min-width:0;max-width:none;padding:10px 4px 8px;margin:0;align-self:start}
.about-mosaic .about-writing h1{font-size:clamp(31px,3.2vw,49px);letter-spacing:-1.9px;margin-bottom:21px}
.about-mosaic .about-bio p{font-size:clamp(12px,1.05vw,14px);line-height:1.62;margin-bottom:16px}
.about-mosaic .about-credits{margin-top:28px}
.about-mosaic .about-credits h2{font-size:15px;margin-bottom:10px}
.about-mosaic .about-credits>a{font-size:12px;padding:4px 0}
.about-mosaic .about-back{margin-top:25px;padding:10px 14px;font-size:12px}
.about-mosaic .mosaic-bottom{grid-area:bottom;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;height:clamp(220px,26vw,390px)}
.about-mosaic .about-photo{position:relative;display:block;overflow:hidden;min-width:0;min-height:0;background:#e8e8e5;isolation:isolate}
.about-mosaic .about-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.about-mosaic .about-photo:hover{opacity:1}
.about-mosaic .about-photo:hover img{transform:scale(1.025)}
.about-mosaic .photo-credit{position:absolute;bottom:12px;left:13px;color:white;font-size:clamp(10px,.85vw,13px);font-weight:400;line-height:1.25;text-shadow:none;background:none;z-index:1}
.about-mosaic .mosaic-left .about-photo{height:100%}
.about-mosaic .mosaic-right .about-photo{height:100%;min-height:100%}
@media(min-width:901px){.about-mosaic .mosaic-left,.about-mosaic .mosaic-right{height:clamp(470px,45vw,680px)}.about-mosaic .mosaic-left .photo-1 img{object-position:center}.about-mosaic .mosaic-right .photo-2 img{object-position:center}}
@media(min-width:901px) and (max-width:1150px){.about-layout.about-mosaic{grid-template-columns:1fr 1.2fr 1fr;padding:18px 20px 60px;gap:12px}.about-mosaic .about-writing h1{font-size:32px}.about-mosaic .about-bio p{font-size:12px;margin-bottom:12px}.about-mosaic .about-credits{margin-top:18px}.about-mosaic .about-back{margin-top:15px}}
@media(max-width:900px){.about-layout.about-mosaic{padding:22px 20px 70px;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"writing writing" "left right" "bottom bottom";gap:12px}.about-mosaic .about-writing{max-width:680px;padding:0 0 20px}.about-mosaic .about-writing h1{font-size:clamp(35px,7vw,54px)}.about-mosaic .about-bio p{font-size:14px}.about-mosaic .mosaic-left,.about-mosaic .mosaic-right{height:460px}.about-mosaic .mosaic-bottom{gap:12px;height:240px}}
@media(max-width:540px){.about-layout.about-mosaic{padding:25px 16px 60px;gap:8px}.about-mosaic .mosaic-left{gap:8px}.about-mosaic .mosaic-left,.about-mosaic .mosaic-right{height:340px}.about-mosaic .mosaic-bottom{gap:8px;height:155px}.about-mosaic .photo-credit{left:6px;bottom:6px;font-size:9px}.about-mosaic .about-writing{padding-bottom:20px}}

/* v17 — larger photos, more breathing room around the biography */
@media (min-width: 1151px) {
  .about-layout.about-mosaic {
    max-width: 1800px;
    padding: 24px 24px 90px;
    grid-template-columns: minmax(0,1.24fr) minmax(330px,.94fr) minmax(0,1.24fr);
    column-gap: clamp(34px, 4.3vw, 82px);
    row-gap: 22px;
  }
  .about-mosaic .mosaic-left,
  .about-mosaic .mosaic-right { height: clamp(590px, 54vw, 830px); }
  .about-mosaic .mosaic-left { gap: 18px; }
  .about-mosaic .mosaic-bottom { height: clamp(300px, 31vw, 480px); gap: 22px; }
  .about-mosaic .about-writing { padding: 18px 0 8px; }
}
@media (min-width: 901px) and (max-width: 1150px) {
  .about-layout.about-mosaic { column-gap: 24px; row-gap: 16px; padding-left: 16px; padding-right: 16px; }
  .about-mosaic .mosaic-bottom { height: clamp(260px, 29vw, 360px); }
}
.about-mosaic .photo-credit { font-size: 10px; left: 10px; bottom: 9px; text-shadow: none; }
@media (max-width: 540px) { .about-mosaic .photo-credit { font-size: 8px; left: 6px; bottom: 6px; } }

/* v18 — more prominent production credits and unobtrusive photo instruction */
.about-mosaic .about-credits>a { font-size:clamp(15px,1.25vw,18px); padding:7px 0; line-height:1.4; }
.about-mosaic .about-credits h2 { font-size:clamp(16px,1.3vw,19px); }
.about-mosaic .photo-4-wrap { position:relative; min-width:0; min-height:0; }
.about-mosaic .photo-4-wrap .about-photo { width:100%; height:100%; }
.about-mosaic .photographer-hint { position:absolute; bottom:calc(100% + 5px); left:0; font-size:11px; line-height:1.25; color:#555; white-space:nowrap; }
@media(max-width:900px) { .about-mosaic .photographer-hint { font-size:9px; white-space:normal; max-width:100%; } }
@media(max-width:540px) { .about-mosaic .about-credits>a { font-size:16px; } .about-mosaic .photographer-hint { font-size:8px; } }

/* v19 — centered, slightly smaller production credits */
.about-mosaic .about-credits { text-align:center; }
.about-mosaic .about-credits > a {
  font-size:clamp(13px,1.05vw,15px);
  padding:6px 0;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
@media(max-width:540px) {
  .about-mosaic .about-credits > a { font-size:14px; }
}

/* Visible centered instruction immediately above about4.jpg */
.about-mosaic .photo-4-wrap { position:relative; }
.about-mosaic .photographer-hint {
  position:absolute;
  bottom:calc(100% + 9px);
  left:50%;
  transform:translateX(-50%);
  width:max-content;
  max-width:100%;
  color:#000;
  font-size:11px;
  line-height:1.3;
  font-weight:400;
  text-align:center;
  white-space:normal;
  z-index:5;
  pointer-events:none;
}
@media(max-width:900px) {
  .about-mosaic .photographer-hint { font-size:9px; }
}
@media(max-width:540px) {
  .about-mosaic .photographer-hint { font-size:8px; }
}

/* v20 — lower production credits, centered archive button */
.about-mosaic .about-credits { margin-top: 68px; }
.about-mosaic .about-back {
  display: table;
  width: fit-content;
  margin: 34px auto 0;
  text-align: center;
}
@media (max-width: 900px) {
  .about-mosaic .about-credits { margin-top: 52px; }
}


/* v21 — eight projects, with tags and an image-only expansion */
.work-trigger { grid-template-columns:70px minmax(0,1fr) 20px; }
.work-title { align-self:end; }
.work-tags { grid-column:2;grid-row:2;position:relative;z-index:2;color:#fff;font-size:12px;line-height:1.35;font-weight:400;align-self:start; }
.work-year { grid-column:1;grid-row:1; }
.work-title { grid-column:2;grid-row:1; }
.work-plus { grid-column:3;grid-row:1; }
.work-item.is-open .work-tags { grid-column:2;grid-row:1;align-self:end;transform:translateY(24px); }
.work-item.image-only.is-open .work-thumbnail img { opacity:1!important; }
.work-item.image-only .thumbnail-video { display:none; }
@media(max-width:650px){
 .work-trigger { grid-template-columns:42px minmax(0,1fr) 16px; }
 .work-tags { font-size:10px; }
 .work-item.is-open .work-tags { transform:translateY(20px); }
}

/* v22 — tighter homepage rhythm and larger role label */
.home { padding-top: 28px; }
.intro-line { font-size:clamp(18px,2.2vw,27px); line-height:1.25; margin-bottom:24px; color:#161616; }
.work-trigger { row-gap:3px; }
.work-title { align-self:end; }
.work-tags { align-self:start; margin-top:-2px; }
.work-item.is-open .work-tags { transform:translateY(18px); }
@media(max-width:650px) {
 .home { padding-top:16px; }
 .intro-line { font-size:20px; margin-bottom:18px; }
 .work-item.is-open .work-tags { transform:translateY(16px); }
}
/* On iPhone, show the photographer instruction above the entire photo row,
   not squeezed into the middle image. */
@media(max-width:540px) {
 .about-mosaic .mosaic-bottom { position:relative; margin-top:28px; }
 .about-mosaic .photographer-hint {
   position:absolute; bottom:auto; top:-30px; left:50%;
   transform:translateX(-50%); width:max-content; max-width:90vw;
   white-space:normal; font-size:10px; line-height:1.3; color:#000;
   text-align:center;
 }
}

/* v23 — centered name and stable bilingual credits position */
.about-mosaic .about-writing h1 { text-align:center; }
/* Reserve an identical biography area in both languages on larger screens,
   so switching languages does not push the credit links around. */
@media (min-width:901px) {
  .about-mosaic .about-bio { min-height: 445px; }
  .about-mosaic .about-credits { margin-top: 28px; }
}
@media (min-width:1151px) {
  .about-mosaic .about-bio { min-height: 410px; }
}
/* On narrow screens the longer translation may need extra height; avoid overlap. */
@media (max-width:900px) {
  .about-mosaic .about-bio { min-height: 0; }
}
/* v24 — static navigation, fixed alignment across languages */
html { scrollbar-gutter: stable; }
.site-header nav { display:grid; grid-template-columns: minmax(64px,auto) minmax(64px,auto) 55px; align-items:center; column-gap:20px; }
.site-header nav .nav-page-link { display:block; text-align:left; }
.site-header nav .lang-switch { text-align:right; }
/* The JS measures both biographies and sets the same min-height in both languages. */
.about-mosaic .about-bio { box-sizing:border-box; }
@media(max-width:650px){
 .site-header nav { grid-template-columns: minmax(49px,auto) minmax(53px,auto) 49px; column-gap:12px; }
}

/* v26 — room navigation, matching the about page */
.piece-page .back-home {text-align:center;margin:80px auto 0}
.piece-page .back-home .about-back {display:inline-block;margin:0;border:1px solid #161616;padding:10px 14px;font-size:12px;text-decoration:none}
/* i’m listening: subtle pond-inspired light gradients, confined to this room */
body.listening-room {background:radial-gradient(ellipse 85% 28% at 72% 33%,rgba(163,185,168,.23),transparent 75%),radial-gradient(ellipse 80% 35% at 10% 75%,rgba(176,191,196,.21),transparent 76%),linear-gradient(170deg,#f6f5f0 0%,#e8eae5 45%,#f8f7f2 100%);background-attachment:fixed}
.listening-page {max-width:none;padding:25px 0 95px;overflow:hidden}
.listening-heading {max-width:1120px;margin:0 auto;padding:0 48px}
.listening-heading h1 {margin-bottom:28px}
.listening-film {width:100%;position:relative;background:#151a1a;overflow:hidden}
.listening-film video {display:block;width:100%;height:min(75vh,790px);min-height:340px;object-fit:cover}
#listening-sound-toggle {position:absolute;right:clamp(16px,4vw,64px);bottom:24px;border:1px solid rgba(255,255,255,.85);background:rgba(0,0,0,.32);color:#fff;padding:9px 16px;font-size:12px;letter-spacing:.03em;backdrop-filter:blur(5px)}
.listening-content {max-width:850px;margin:0 auto;padding:0 48px}
.listening-watch-link {font-size:12px;color:#555;text-align:right;margin:12px 0 55px}
.listening-watch-link a {text-decoration:underline;text-underline-offset:3px}
.listening-copy {max-width:720px;margin:0 auto}
.listening-copy p {font-size:clamp(14px,1.35vw,16px);line-height:1.85;margin:0 0 21px;color:#353c3a}
.listening-copy h2 {margin:60px 0 18px}
.listening-pond {margin:45px 0 35px!important}
.listening-pond img {width:100%;height:auto;max-height:680px;object-fit:cover}
.cemetery-video {position:relative;width:100%;aspect-ratio:16/9;margin:24px 0 50px;background:#161616}
.cemetery-video iframe {width:100%;height:100%;border:0;display:block}
.listening-credits p {margin-bottom:5px}
@media(max-width:650px){.listening-page {padding:18px 0 65px}.listening-heading {padding:0 20px}.listening-heading h1 {margin-bottom:22px}.listening-film video {height:56vh;min-height:260px}.listening-content {padding:0 20px}.listening-watch-link {margin-bottom:35px}.listening-copy h2 {margin-top:44px}.listening-pond {margin:30px 0!important}}

/* v27 — YouTube opening film instead of local video */
.listening-film iframe#listening-hero-youtube {display:block;width:100%;height:min(75vh,790px);min-height:340px;border:0;}
@media(max-width:650px){.listening-film iframe#listening-hero-youtube{height:56vh;min-height:260px}}

/* v28 — cinematic, edge-to-edge room video and quiet controls */
body.listening-room {
 background: radial-gradient(ellipse 90% 55% at 75% 12%,rgba(139,170,153,.43),transparent 78%),
 radial-gradient(ellipse 75% 42% at 14% 51%,rgba(164,183,196,.42),transparent 80%),
 radial-gradient(ellipse 85% 55% at 78% 89%,rgba(176,172,143,.32),transparent 76%),
 linear-gradient(165deg,#edf1e9 0%,#dce5e1 38%,#eef0e9 70%,#e6e9dc 100%);
 background-attachment:fixed;
}
.listening-film {height:min(76vh,800px);min-height:350px;overflow:hidden;position:relative;background:#151a1a;}
.listening-film iframe#listening-hero-youtube {position:absolute;top:50%;left:50%;width:max(100%,177.78vh);height:max(100%,56.25vw);min-height:0;transform:translate(-50%,-50%);pointer-events:none;}
#listening-sound-toggle {top:22px;right:clamp(18px,3.5vw,54px);bottom:auto;border:0;background:transparent;backdrop-filter:none;padding:5px 0;color:white;font-size:13px;text-shadow:0 1px 8px rgba(0,0,0,.75);z-index:3;cursor:pointer;}
.listening-performance-caption {margin-top:58px!important;margin-bottom:16px!important;font-size:clamp(14px,1.35vw,16px)!important;line-height:1.85!important;font-weight:400!important;}
@media(max-width:650px){.listening-film{height:56vh;min-height:260px}.listening-film iframe#listening-hero-youtube{width:max(100%,99.56vh);height:max(100%,56.25vw)}#listening-sound-toggle{top:14px;right:18px}}

/* v29 — minimal playback toggle; sound remains in the upper right. */
#listening-play-toggle {position:absolute;bottom:20px;left:clamp(18px,3.5vw,54px);z-index:3;border:0;background:transparent;color:#fff;font:inherit;font-size:13px;text-shadow:0 1px 8px rgba(0,0,0,.75);cursor:pointer;padding:5px 0;}
@media(max-width:650px){#listening-play-toggle{bottom:14px;left:18px}}

/* v30 — phone-friendly hero: preserve the composition instead of extreme portrait cropping */
@media (max-width:650px) {
  .listening-film {
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:16 / 9;
    overflow:hidden;
  }
  .listening-film iframe#listening-hero-youtube {
    top:0;
    left:0;
    transform:none;
    width:100%;
    height:100%;
    min-height:0;
  }
  #listening-sound-toggle {top:10px;right:12px;}
  #listening-play-toggle {bottom:10px;left:12px;}
}

/* v31 — soar of the simurgh room */
body.simurgh-room {
 background:radial-gradient(ellipse 85% 50% at 82% 12%,rgba(214,174,218,.48),transparent 78%),radial-gradient(ellipse 85% 45% at 10% 52%,rgba(241,181,208,.42),transparent 78%),radial-gradient(ellipse 85% 50% at 74% 88%,rgba(195,179,222,.38),transparent 78%),linear-gradient(165deg,#f7eff8 0%,#f0e0f0 38%,#f8e9ed 75%,#f0e6f7 100%);background-attachment:fixed;
}
.simurgh-page {max-width:none;padding:25px 0 95px;overflow:hidden}
.simurgh-heading {max-width:1120px;margin:auto;padding:0 48px}
.simurgh-heading h1 {margin-bottom:28px}
.simurgh-film {width:100%;min-height:380px;height:min(76vh,800px);background:#1d1420;position:relative;overflow:hidden;display:grid;place-items:center}
.simurgh-film iframe {display:block;width:100%;height:100%;border:0;position:absolute;inset:0}
.simurgh-content {max-width:850px;margin:auto;padding:0 48px}
.simurgh-copy {max-width:720px;margin:60px auto 0}
.simurgh-copy p,.simurgh-copy blockquote {font-size:clamp(14px,1.35vw,16px);line-height:1.85;color:#3e3541;margin:0 0 24px}
.simurgh-copy blockquote {border:0;padding:0;margin:0 0 24px;font-style:normal}
.simurgh-copy h2 {margin:60px 0 18px}
.simurgh-copy a:not(.enter-link) {text-decoration:underline;text-underline-offset:3px}
.simurgh-credits p {margin-bottom:7px}
.simurgh-page .back-home {text-align:center;margin:80px auto 0}
.simurgh-translation[data-room-lang=sr] {display:none}
html[lang=sr] .simurgh-translation[data-room-lang=en] {display:none}
html[lang=sr] .simurgh-translation[data-room-lang=sr] {display:block}
@media(max-width:650px){.simurgh-page{padding:18px 0 65px}.simurgh-heading{padding:0 20px}.simurgh-heading h1{margin-bottom:22px}.simurgh-film{height:70vh;min-height:420px}.simurgh-content{padding:0 20px}.simurgh-copy{margin-top:36px}.simurgh-copy h2{margin-top:44px}}

/* v33 — Simurgh cinematic player controls */
#simurgh-sound-toggle, #simurgh-play-toggle {
  position:absolute; z-index:5; border:0; background:transparent; color:#fff;
  font:inherit; font-size:13px; padding:5px 0; cursor:pointer;
  text-shadow:0 1px 8px rgba(0,0,0,.8);
}
#simurgh-sound-toggle {top:22px;right:clamp(18px,3.5vw,54px)}
#simurgh-play-toggle {bottom:20px;left:clamp(18px,3.5vw,54px)}
@media(max-width:650px){#simurgh-sound-toggle{top:14px;right:18px}#simurgh-play-toggle{bottom:14px;left:18px}}

/* v34 — crop pillarboxing in the Simurgh YouTube film; keep YouTube chrome unclickable. */
.simurgh-film iframe#simurgh-hero-youtube {
  inset:auto;
  top:50%;left:50%;
  width: max(100%, 177.7778vh);
  height: max(100%, 56.25vw);
  transform:translate(-50%,-50%) scale(1.14);
  pointer-events:none;
}
@media(max-width:650px){
  .simurgh-film{height:auto;min-height:0;aspect-ratio:16/9;}
  .simurgh-film iframe#simurgh-hero-youtube{
    width:100%;height:100%;transform:translate(-50%,-50%) scale(1.14);
  }
}

/* v35 — doux: warm analogue-grey / faded brown 1990s palette */
body.doux-room {
 background:radial-gradient(ellipse 82% 48% at 80% 11%,rgba(167,148,144,.34),transparent 80%),radial-gradient(ellipse 78% 47% at 12% 53%,rgba(157,157,151,.33),transparent 79%),radial-gradient(ellipse 85% 56% at 76% 89%,rgba(164,140,119,.31),transparent 77%),linear-gradient(160deg,#e7e3df 0%,#d4d0ca 38%,#e9e2dc 75%,#d7cfc6 100%);
 background-attachment:fixed;
}
.doux-page{max-width:none;padding:25px 0 95px;overflow:hidden}
.doux-heading{max-width:1120px;margin:auto;padding:0 48px}
.doux-heading h1{margin-bottom:28px}
.doux-film{width:100%;height:min(76vh,800px);min-height:380px;background:#272422;position:relative;overflow:hidden}
.doux-film iframe#doux-hero-youtube{position:absolute;top:50%;left:50%;width:max(100%,177.7778vh);height:max(100%,56.25vw);transform:translate(-50%,-50%);border:0;pointer-events:none}
#doux-sound-toggle,#doux-play-toggle{position:absolute;z-index:5;border:0;background:transparent;color:white;font:inherit;font-size:13px;padding:5px 0;cursor:pointer;text-shadow:0 1px 8px rgba(0,0,0,.8)}
#doux-sound-toggle{top:22px;right:clamp(18px,3.5vw,54px)}
#doux-play-toggle{bottom:20px;left:clamp(18px,3.5vw,54px)}
.doux-content{max-width:850px;margin:auto;padding:0 48px}
.doux-copy{max-width:720px;margin:60px auto 0}
.doux-copy p{font-size:clamp(14px,1.35vw,16px);line-height:1.85;color:#403b37;margin:0 0 24px}
.doux-copy h2{margin:60px 0 18px}
.doux-copy a{text-decoration:underline;text-underline-offset:3px}
.doux-credits p{margin-bottom:7px}
.doux-demo{margin:22px 0 48px}
.doux-demo audio{width:100%;display:block}
.doux-rehearsal{position:relative;aspect-ratio:16/9;width:100%;background:#292523;margin:26px 0 45px}
.doux-rehearsal iframe{width:100%;height:100%;border:0;display:block}
.doux-page .back-home{text-align:center;margin:80px auto 0}
.doux-translation[data-room-lang=sr]{display:none}
html[lang=sr] .doux-translation[data-room-lang=en]{display:none}
html[lang=sr] .doux-translation[data-room-lang=sr]{display:block}
@media(max-width:650px){
 .doux-page{padding:18px 0 65px}
 .doux-heading{padding:0 20px}
 .doux-heading h1{margin-bottom:22px}
 .doux-film{height:auto;min-height:0;aspect-ratio:16/9}
 .doux-film iframe#doux-hero-youtube{width:100%;height:100%;transform:translate(-50%,-50%); }
 #doux-sound-toggle{top:10px;right:12px}
 #doux-play-toggle{bottom:10px;left:12px}
 .doux-content{padding:0 20px}
 .doux-copy{margin-top:36px}
 .doux-copy h2{margin-top:44px}
}
/* v35 — improve simurgh framing and control placement on iPhone */
@media(max-width:650px){
 .simurgh-film{aspect-ratio:16/9;height:auto;min-height:0}
 .simurgh-film iframe#simurgh-hero-youtube{width:100%;height:100%;transform:translate(-50%,-50%) scale(1.08)}
 #simurgh-sound-toggle{top:10px;right:12px}
 #simurgh-play-toggle{bottom:10px;left:12px}
}

/* v36 — doux opening statement and cassette-like demo player */
.doux-opening{max-width:910px;margin:34px auto 42px;padding:0 42px;text-align:center}
.doux-opening p{font-size:clamp(19px,2.2vw,29px);font-weight:400;line-height:1.55;letter-spacing:-.018em;color:#3e3535;margin:0 auto;max-width:850px}
.doux-demo-label{text-align:center;margin:34px 0 15px!important;font-style:italic;letter-spacing:.015em}
.doux-demo{max-width:560px;margin:0 auto 56px!important;padding:16px 20px 12px;border:1px solid rgba(90,75,67,.18);border-radius:18px;background:linear-gradient(145deg,rgba(250,247,241,.72),rgba(174,156,144,.23));box-shadow:0 7px 25px rgba(60,48,42,.08),inset 0 1px 0 rgba(255,255,255,.7)}
.doux-demo audio{width:100%;height:44px;display:block}
@media(max-width:650px){.doux-opening{padding:0 22px;margin:24px auto 30px}.doux-opening p{font-size:clamp(18px,4.5vw,22px);line-height:1.55}.doux-demo{padding:10px 12px 8px;border-radius:14px}.doux-demo-label{margin-top:32px!important}}

/* v37 — blue room, dark room, and shared custom audio players */
body.happened-room{background:radial-gradient(ellipse 85% 50% at 12% 17%,rgba(154,188,217,.56),transparent 75%),radial-gradient(ellipse 70% 50% at 90% 72%,rgba(106,145,182,.38),transparent 78%),linear-gradient(160deg,#e7eff4 0%,#c9dbe9 38%,#b5c9dc 72%,#e3e9ee 100%);background-attachment:fixed}
.happened-page{max-width:900px;margin:0 auto;padding:35px 35px 100px}
.happened-page h1{margin:0 0 30px}
.happened-opening{max-width:770px;margin:40px auto 46px;text-align:center;font-size:clamp(20px,2.5vw,31px);line-height:1.55;letter-spacing:-.02em;color:#253d55}
.happened-art{max-width:680px;margin:0 auto;text-align:center}
.happened-art img{display:block;width:100%;height:auto;object-fit:contain}
.happened-art figcaption{font-size:12px;opacity:.75;margin:13px 0 22px}
.happened-art a,.happened-copy a{text-decoration:underline;text-underline-offset:3px}
.happened-main-player{max-width:610px;margin:0 auto 76px}
.happened-copy{max-width:690px;margin:auto}
.happened-copy p{line-height:1.85;margin:0 0 30px}
.happened-copy h2{margin:65px 0 22px}
.happened-credits p{margin-bottom:9px}
.happened-page .back-home{text-align:center;margin:80px 0 0}
.happened-lang[data-room-lang=sr]{display:none}
html[lang=sr] .happened-lang[data-room-lang=en]{display:none}
html[lang=sr] .happened-lang[data-room-lang=sr]{display:block}
.demo-label{text-align:center;font-style:italic;margin:45px 0 15px!important}
.tape-player{display:flex;align-items:center;gap:18px;padding:17px 21px;border:1px solid rgba(45,53,63,.18);border-radius:14px;background:rgba(255,255,255,.36);box-shadow:0 8px 30px rgba(31,37,43,.07);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);max-width:610px;margin:15px auto 50px}
.tape-player .play-toggle{flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;font-size:17px;cursor:pointer;padding:0}
.tape-player .player-main{flex:1;min-width:0}
.tape-player .player-title{font-size:13px;margin-bottom:7px;letter-spacing:.015em}
.tape-player .seek{width:100%;display:block;accent-color:#5a6675;cursor:pointer;height:5px;margin:0}
.tape-player .time{display:flex;justify-content:space-between;font-size:11px;opacity:.6;margin-top:6px;font-variant-numeric:tabular-nums}
.doux-demo{background:none;border:0;box-shadow:none;padding:0;max-width:610px}
.doux-demo .tape-player{background:rgba(248,242,236,.46);border:1px solid rgba(90,75,67,.2);margin:0 auto}
body.uncoup-room{color:#e5e2e1;background:radial-gradient(ellipse 80% 55% at 15% 25%,#37363b 0%,transparent 80%),radial-gradient(ellipse 70% 50% at 85% 80%,#29252b 0%,transparent 80%),linear-gradient(155deg,#151518,#09090b 65%,#222126);background-attachment:fixed;min-height:100vh}
.uncoup-page{max-width:900px;padding:40px 30px 100px;margin:auto;text-align:center}
.uncoup-page h1{font-size:clamp(24px,4vw,48px);font-weight:400;line-height:1.2;max-width:780px;margin:25px auto 55px}
.uncoup-art{max-width:570px;margin:auto}
.uncoup-art img{display:block;width:100%;height:auto;object-fit:contain}
.uncoup-soon{font-size:14px;letter-spacing:.12em;margin:55px 0 70px}
.uncoup-page .back-home{margin:0}
@media(max-width:650px){.happened-page,.uncoup-page{padding:22px 20px 65px}.happened-opening{margin:30px auto 32px}.happened-main-player{margin-bottom:52px}.tape-player{padding:13px 15px;gap:12px}.tape-player .play-toggle{flex-basis:42px;width:42px;height:42px}.uncoup-page h1{margin-bottom:35px}}

/* v38: slowly changing gradients on homepage; static fallback for reduced motion */
body.home-gradient { position:relative; isolation:isolate; background:#fafaf8; }
body.home-gradient::before,body.home-gradient::after {content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;}
body.home-gradient::before {background:linear-gradient(125deg,#e5eaf0 0%,#e3d4e8 42%,#e9d7d4 76%,#f0ece5 100%);animation:homepage-drift-one 35s ease-in-out infinite alternate;}
body.home-gradient::after {background:linear-gradient(145deg,#e1e8e0 0%,#d5dfed 35%,#e6d3e6 68%,#ded7cb 100%);animation:homepage-drift-two 42s ease-in-out infinite alternate;opacity:0;}
@keyframes homepage-drift-one {from{opacity:.52}to{opacity:.9}}
@keyframes homepage-drift-two {from{opacity:0}to{opacity:.72}}
@media(prefers-reduced-motion:reduce){body.home-gradient::before,body.home-gradient::after{animation:none}body.home-gradient::after{opacity:0}}
/* Happened intro: typographically gentle second line and familiar question mark */
.happened-opening{max-width:810px}
.happened-question{display:block;margin-top:13px;font-family:Arial,Helvetica,sans-serif;font-size:.91em;letter-spacing:-.015em;font-weight:400}
/* v38 audio player polish — consistent across doux and happened */
.tape-player{border-radius:22px;padding:18px 22px;gap:18px;border:1px solid rgba(80,80,85,.14);background:linear-gradient(145deg,rgba(255,255,255,.63),rgba(255,255,255,.22));box-shadow:0 12px 40px rgba(30,38,55,.075),inset 0 1px 0 rgba(255,255,255,.7)}
.tape-player .play-toggle{flex:0 0 52px;width:52px;height:52px;border:0;border-radius:50%;background:#343d48;color:#f8f8f7;font-size:16px;transition:transform .18s ease,background .18s ease;box-shadow:0 3px 12px rgba(0,0,0,.12)}
.tape-player .play-toggle:hover{transform:scale(1.06);background:#4b5664}
.tape-player .play-toggle:focus-visible,.tape-player .seek:focus-visible{outline:2px solid #526c87;outline-offset:4px}
.tape-player .player-title{font-size:13px;font-weight:500;letter-spacing:.02em;margin-bottom:10px}
.tape-player .seek{appearance:none;-webkit-appearance:none;height:4px;border-radius:99px;background:linear-gradient(to right,#6b7f93 0%,#6b7f93 var(--progress,0%),rgba(66,78,92,.17) var(--progress,0%),rgba(66,78,92,.17) 100%)}
.tape-player .seek::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#465667;box-shadow:0 1px 4px rgba(0,0,0,.2)}
.tape-player .seek::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:50%;background:#465667}
.tape-player .time{margin-top:9px;opacity:.65}
.doux-demo .tape-player .play-toggle{background:#514943}
@media(max-width:650px){.tape-player{padding:14px 15px;border-radius:18px}.tape-player .play-toggle{width:46px;height:46px;flex-basis:46px}.happened-question{margin-top:9px}}

/* v39: homepage starts white, then gently moves through color a little faster */
body.home-gradient::before{animation:homepage-drift-one-v39 27s ease-in-out infinite alternate;opacity:0}
body.home-gradient::after{animation:homepage-drift-two-v39 32s ease-in-out infinite alternate;opacity:0}
@keyframes homepage-drift-one-v39{0%{opacity:0}30%{opacity:.42}100%{opacity:.92}}
@keyframes homepage-drift-two-v39{0%{opacity:0}45%{opacity:.10}100%{opacity:.68}}
@media(prefers-reduced-motion:reduce){body.home-gradient::before,body.home-gradient::after{animation:none;opacity:0}}
/* v39: keep the opening's typeface, but make only the question mark more conventional */
.happened-question{font-family:inherit;font-size:inherit;letter-spacing:inherit}
.happened-question .ordinary-question-mark{font-family:Arial,Helvetica,sans-serif;font-size:.95em;letter-spacing:-.045em}
/* v39: solid, non-glass audio players */
.tape-player,.doux-demo .tape-player{background:#e5e5e3;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border:1px solid rgba(45,53,63,.13)}
.doux-demo .tape-player{background:#e1d9d1}
.happened-live{margin:40px 0 52px}
.happened-live p{text-align:center;margin-bottom:20px}
.happened-live-video{width:100%;aspect-ratio:16/9;background:#182333}
.happened-live-video iframe{width:100%;height:100%;display:block;border:0}

/* v40: coming-soon rooms */
body.placeholder-room{min-height:100vh;background-attachment:fixed}
body.placeholder-belgrade{background:radial-gradient(ellipse at 72% 20%,rgba(228,177,136,.45),transparent 63%),radial-gradient(ellipse at 20% 83%,rgba(117,146,159,.42),transparent 65%),linear-gradient(145deg,#e3ded6,#b8b8b3 55%,#d4b6a1)}
body.placeholder-night{background:radial-gradient(ellipse at 80% 18%,rgba(146,136,169,.42),transparent 61%),radial-gradient(ellipse at 17% 84%,rgba(81,96,130,.3),transparent 65%),linear-gradient(155deg,#d7d4de,#a6a9bd 54%,#ded8dc)}
body.placeholder-bila{background:radial-gradient(ellipse at 76% 20%,rgba(203,126,125,.38),transparent 62%),radial-gradient(ellipse at 18% 85%,rgba(176,148,111,.35),transparent 62%),linear-gradient(145deg,#e8d7d0,#c5b4a9 58%,#ddd0c2)}
.placeholder-page{max-width:980px;min-height:calc(100vh - 100px);margin:auto;padding:52px 24px 85px;text-align:center;display:flex;flex-direction:column;align-items:center}
.placeholder-page h1{font-size:clamp(28px,5vw,62px);line-height:1.12;font-weight:400;margin:18px auto 40px;text-transform:lowercase}
.placeholder-art{margin:0 auto;max-width:min(530px,100%);width:100%}
.placeholder-art img{display:block;max-width:100%;max-height:57vh;width:auto;height:auto;object-fit:contain;margin:auto;box-shadow:0 15px 40px rgba(0,0,0,.09)}
.placeholder-soon{font-size:clamp(16px,2.3vw,23px);letter-spacing:.03em;margin:37px auto 0}
.placeholder-page .back-home{margin:auto auto 0;padding-top:70px}
@media(max-width:600px){.placeholder-page{padding:38px 20px 65px}.placeholder-page h1{margin:22px auto 30px}.placeholder-art img{max-height:48vh}.placeholder-page .back-home{padding-top:55px}}

/* v41: restore plain white homepage; remove gradient animation */
body.home-gradient{background:#fff!important;isolation:auto}
body.home-gradient::before,body.home-gradient::after{content:none!important;display:none!important;animation:none!important}
/* v41: the night dances artwork blends into pure black */
body.placeholder-night{background:#000!important;color:#f5f5f5;background-image:none!important}
body.placeholder-night .placeholder-art{background:#000}
body.placeholder-night .placeholder-art img{box-shadow:none!important;background:#000}
body.placeholder-night .site-header,body.placeholder-night .placeholder-page{color:#f5f5f5}

/* v42: enforce a static white homepage, including on iOS Safari */
html:has(body.home-gradient){background:#fff}
body.home-gradient,body.home-gradient main{background-color:#fff!important}
body.home-gradient::before,body.home-gradient::after{display:none!important;content:none!important}
/* v42: seamless black field around the Night Dances artwork */
html:has(body.placeholder-night),body.placeholder-night,body.placeholder-night .placeholder-page,body.placeholder-night .placeholder-art{background:#000!important}
body.placeholder-night .placeholder-art img{box-shadow:none!important;border:0!important;display:block;mix-blend-mode:normal}
/* keep the cover visible and centered on phones */
body.placeholder-belgrade .placeholder-art img{display:block;width:100%;height:auto;max-height:65vh;object-fit:contain}
@media(max-width:600px){body.placeholder-belgrade .placeholder-art img{max-height:52vh}}

.happened-video-fallback{text-align:center;font-size:13px;margin:12px 0 0!important}
.happened-video-fallback a{text-decoration:underline;text-underline-offset:3px}

/* v43 — larger Night Dances artwork, preserving seamless black background */
body.placeholder-night .placeholder-page{max-width:1600px;padding-left:12px;padding-right:12px}
body.placeholder-night .placeholder-art{max-width:min(1200px,98vw);width:100%;background:#000}
body.placeholder-night .placeholder-art img{width:100%;max-width:100%;max-height:none;height:auto;object-fit:contain;box-shadow:none;background:#000}
@media(max-width:600px){body.placeholder-night .placeholder-page{padding-left:5px;padding-right:5px}body.placeholder-night .placeholder-art{max-width:100%}body.placeholder-night .placeholder-art img{max-height:none}}
