/* Continuous top edge; the compact navigation is attached to the viewport. */
:root{--header:76px}
html{scroll-padding-top:96px}
[data-concept=cinema] .header{padding-top:0;height:88px}
.header>.wordmark{margin-top:22px}
.header-panel{min-height:64px;border-top:0;border-radius:0 0 28px 28px}
.header:before{inset:0;border-radius:0 0 28px 28px;background:#f6f2e9;border-top:0}
[data-concept=cinema] .header.is-scrolled{height:76px;padding:6px 5%;align-items:center}
.header.is-scrolled .header-panel{min-height:60px}
.header.is-scrolled>.wordmark{margin-top:0}
/* Photographic material details, never technical diagrams. */
.material-drawing{width:min(300px,90%);height:auto;aspect-ratio:4/3;margin-top:25px;border:1px solid #b6a38785;border-radius:36px 10px 36px 10px;overflow:hidden;background:#dad3c4;box-shadow:0 14px 28px #5c51321a}
.material-drawing img{object-fit:cover}
.material-note{font:8px var(--sans)!important;letter-spacing:.06em;line-height:1.4!important;min-height:0!important;margin-top:10px;color:#8b806b!important}
/* A raised photographic mount surrounds the complete, uncropped image. */
.gallery-track{padding-top:24px;padding-bottom:32px}
.gallery-open{position:relative;padding:15px;background:linear-gradient(140deg,#fffdf8,#e9e1d1);border:1px solid #b7a48799;border-radius:38px 13px 38px 13px;box-shadow:0 8px 20px #55472b13;transition:box-shadow .25s,border-color .25s}
.gallery-open:after{content:'';position:absolute;inset:6px;border:1px solid #c0af914f;border-radius:32px 8px 32px 8px;pointer-events:none}
.gallery-slide.active .gallery-open{border-color:#a5906e;box-shadow:0 17px 32px #63543629,0 2px 5px #63543612}
[data-concept] .gallery-slide img{object-fit:contain;background:transparent;border-radius:2px}
.gallery-dots button{border-radius:9px 3px 9px 3px}
.team{background:#e5e1d6;padding:40px 5% 65px}
.team-heading{text-align:center;margin-bottom:43px}
.team-heading h2{font-size:clamp(46px,4.5vw,70px)}
.team-heading>p{font-size:9px;color:#817c6d;letter-spacing:.04em;margin-top:13px}
.team-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px;max-width:1440px;margin:auto}
.team-card{text-align:center;min-width:0}
.team-portrait{position:relative;display:block;width:100%;aspect-ratio:3/4;overflow:hidden;padding:0;border:1px solid #a38d6a8f;border-radius:50% 50% 10px 10px / 35% 35% 10px 10px;background:#cdc6b7;isolation:isolate;box-shadow:0 10px 24px #5b4e3520;cursor:pointer}
.team-portrait>img{height:100%;width:100%;object-fit:cover;object-position:50% 40%;filter:saturate(.95);transition:transform .5s,filter .4s}
.team-portrait:after{content:'';position:absolute;inset:7px;border:1px solid #fff8;border-radius:inherit;pointer-events:none;z-index:3}
.team-slogan{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:20px 22px 42px;background:linear-gradient(0deg,#21291fe8 0%,#272d23ba 35%,#282b1f00 80%);color:#fff7e9;font:italic clamp(22px,2.1vw,32px)/1.12 var(--serif);opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}
.team-card.is-open .team-slogan{opacity:1;transform:none}
.team-card.is-open .team-portrait>img{transform:scale(1.025);filter:saturate(1)}
.team-plus{position:absolute;right:15px;bottom:14px;width:25px;height:25px;border:1px solid #f9f4e5a1;border-radius:50%;display:grid;place-items:center;font-size:18px;line-height:1;color:#fff7e9;background:#494b3960;transition:transform .25s;z-index:4}
.team-card.is-open .team-plus{transform:rotate(45deg)}
.team-card h3{font-size:30px;line-height:1.15;margin-top:19px;letter-spacing:-.025em}
.team-role{font-size:10px;color:#7c796b;margin-top:7px}
@media(max-width:1100px){[data-concept=cinema] .header{padding-top:0}[data-concept=cinema] .header.is-scrolled{padding:6px 5%}.team-grid{gap:15px}.team-card h3{font-size:26px}.team-slogan{font-size:clamp(18px,2.1vw,23px);padding:15px 14px 41px}.material-drawing{height:auto;width:250px}}
@media(max-width:760px){
 :root{--header:70px}html{scroll-padding-top:88px}
 [data-concept=cinema] .header{height:78px;padding:0 20px}.header>.wordmark{margin-top:20px}
 .header-panel{min-height:60px;border-radius:0 0 23px 23px}
 .header:before{inset:0;border-radius:0 0 22px 22px}
 [data-concept=cinema] .header.is-scrolled{height:70px;padding:4px 24px}.header.is-scrolled .header-panel{min-height:60px}
 .header.is-scrolled nav{top:70px}
 .material-drawing{height:98px;width:150px;aspect-ratio:auto;margin:8px auto 0;border-radius:20px 7px 20px 7px}
 .material-note{font-size:6px!important;margin:5px auto 0!important}
 .aging-layout{grid-template-rows:minmax(0,1fr) 186px}
 .gallery-open{padding:13px;border-radius:32px 12px 32px 12px}.gallery-open:after{inset:5px;border-radius:27px 8px 27px 8px}
 .gallery-track{padding-top:17px;padding-bottom:27px}
 .team{padding:24px 0 40px}.team-heading{margin-bottom:29px;padding:0 24px}.team-heading h2{font-size:45px}
 .team-grid{display:flex;gap:19px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:10vw;padding:0 10vw 21px;scrollbar-width:thin;scrollbar-color:#a79576 transparent;overscroll-behavior-x:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}
 .team-card{flex:0 0 64vw;max-width:280px;scroll-snap-align:center}.team-card h3{font-size:31px}.team-slogan{font-size:30px;padding:25px 24px 49px}.team-role{font-size:11px}
}

@media(max-width:760px){
 .footer-middle{grid-column:1/-1;min-width:0;width:100%}
 .footer-socials{min-width:0;width:100%;max-width:100%;overflow:visible}
 .footer-socials .miro-socials{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;overflow:visible;width:100%;padding:3px 0}
 .footer-socials .miro-socials>a{flex:0 1 min(100%,280px);width:min(100%,280px);min-width:0;min-height:40px;padding:9px 11px;font-size:10px}
}
@media(max-width:760px) and (max-height:680px){.aging-layout{grid-template-rows:minmax(0,1fr) 152px}.material-drawing{height:75px;width:120px}.material-note{font-size:6px!important}}
@media(prefers-reduced-motion:reduce){.team-portrait>img,.team-slogan,.team-plus,.gallery-open{transition:none}}
/* Longer owner-written mottos remain legible inside the portrait on phones. */
.team-card[data-member=andrii] .team-slogan{font-size:clamp(17px,1.65vw,25px);line-height:1.18;padding:20px 16px 42px;background:linear-gradient(0deg,#21291ff5 0%,#272d23dc 60%,#282b1f30 100%)}
.team-card[data-member=oleksandr] .team-slogan{font-size:clamp(20px,1.9vw,29px)}
@media(max-width:760px){.team-card[data-member=andrii] .team-slogan{font-size:25px;padding:24px 20px 46px}.team-card[data-member=oleksandr] .team-slogan{font-size:28px}}
