:root{--soft:#ccc;--line:rgba(255,255,255,.22);--font:"Switzer","Helvetica Neue",Arial,sans-serif;--px:40px;--ease:cubic-bezier(.25,1,.5,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{background:#000}
body{background:#000;color:#fff;font-family:var(--font);font-weight:500;font-size:15px;line-height:18px;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{display:block;width:100%;height:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
button{font:inherit;letter-spacing:inherit;cursor:pointer;border:0;color:inherit;background:none}
ul{list-style:none}
/* buttons with text roll */
.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;background:#fff;color:#000;font-size:14px;line-height:15.4px;font-weight:500;border:1px solid #fff;cursor:pointer}
.btn--line{background:transparent;color:#fff}
.r{display:flex;flex-direction:column;gap:10px;height:15.4px;overflow:hidden}
.r>span{display:block;white-space:nowrap;transition:transform .9s var(--ease)}
.btn:hover .r>span{transform:translateY(-25.4px)}
/* header */
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s}
.site-header.solid,.site-header.open{background:#000}
.bar{height:63px;padding:0 var(--px);display:flex;align-items:center;justify-content:space-between}
.logo{font-style:italic;font-size:23px;line-height:27.6px;letter-spacing:-.04em;font-weight:500}
.nav{display:flex;align-items:center}
.nav a.link{position:relative;padding:5px 10px;font-size:15px;line-height:18px}
.nav a.link::after{content:"";position:absolute;left:10px;right:10px;bottom:1px;height:1px;background:#fff;transform:scaleX(0);transform-origin:left;opacity:0;transition:transform .5s var(--ease),opacity .5s var(--ease)}
.nav a.link:hover::after{transform:scaleX(1);opacity:1}
.nav .btn{margin-left:30px}
.burger{display:none;width:30px;height:30px;position:relative}
.burger i{position:absolute;left:2px;right:2px;height:2px;background:#fff;transition:transform .35s var(--ease),opacity .2s}
.burger i:nth-child(1){top:7px}.burger i:nth-child(2){top:14px}.burger i:nth-child(3){top:21px}
.open .burger i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.open .burger i:nth-child(2){opacity:0}
.open .burger i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mpanel{display:none;padding:4px 20px 20px}
.mpanel a.ml{display:block;padding:7px 0;font-size:15px;line-height:18px}
.mpanel .btn{display:flex;width:100%;margin-top:12px}
/* hero (sticky - projects slide over it) */
.hero{position:sticky;top:0;z-index:0;height:100vh;min-height:560px;background:#000;overflow:hidden}
.hero .slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease}
.hero .slide.is-on{opacity:1}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.44) 32%,rgba(0,0,0,.1) 72%,rgba(0,0,0,0) 100%)}
.hero .bottom{position:absolute;left:var(--px);right:var(--px);bottom:40px;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.hero .eyebrow{font-size:14px;line-height:15.4px;color:rgba(255,255,255,.86);margin-bottom:10px}
.hero h1,.h1{font-weight:500;font-size:clamp(32px,4.2vw,50px);line-height:1.1;letter-spacing:-.01em;text-transform:uppercase;max-width:550px}
.hero h1{margin-bottom:18px}
.thumbs{display:flex;align-items:center;gap:5px}
.thumbs button{width:42px;height:30px;padding:0;opacity:.65;transition:all .25s;overflow:hidden}
.thumbs button.is-on{width:49px;height:35px;opacity:1}
/* stacked project cards */
#projekty{position:relative;z-index:1}
.project{position:sticky;top:0;height:100vh;min-height:560px;overflow:hidden;background:#000}
.card-over{position:relative;overflow:hidden;background:#000;display:block}
.card-over>img,.project>img{position:absolute;inset:0}
.project::after,.card-over::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.28);pointer-events:none}
.card-over>img{transition:transform 1.2s var(--ease)}
a.card-over:hover>img{transform:scale(1.04)}
.copy{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 var(--px)}
.inner{width:100%;max-width:550px}
.project h2,.card-over h2{font-weight:500;font-size:30px;line-height:33px;letter-spacing:-.01em;margin-bottom:10px;text-transform:uppercase}
.project p,.card-over p{font-weight:400;font-size:16px;line-height:24px;letter-spacing:-.02em;margin-bottom:20px}
.row{display:flex;justify-content:center;gap:10px}
.rest{position:relative;z-index:2;background:#000}
/* generic */
.page-top{padding:190px var(--px) 0}
.eyebrow2{font-size:14px;line-height:15.4px;margin-bottom:10px}
.sec-title{font-weight:500;font-size:30px;line-height:33px;letter-spacing:-.01em;text-transform:uppercase}
.center{text-align:center}
.main-end{padding-bottom:75px}
/* home about */
.about{padding:75px var(--px) 45px}
.about .container{max-width:1249px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;column-gap:157px;row-gap:71px;align-items:center}
.about .label{font-size:14px;line-height:15.4px;margin-bottom:10px}
.about h3{font-weight:500;font-size:30px;line-height:33px;letter-spacing:-.01em;margin-bottom:10px;text-transform:uppercase}
.about p.t{font-weight:400;font-size:16px;line-height:24px;letter-spacing:-.02em;color:var(--soft);margin-bottom:24px}
.about .media{overflow:hidden}
.about .portrait{aspect-ratio:546/637}.about .video{aspect-ratio:546/337}
/* marquee */
.services{padding:75px 0;overflow:hidden}
.services .sec-title{text-align:center;margin-bottom:45px;padding:0 var(--px)}
.marquee{display:flex;width:max-content;animation:slide 36s linear infinite}
.marquee:hover{animation-play-state:paused}
.marquee .set{display:flex;gap:15px;padding-right:15px}
.svc{position:relative;width:360px;height:500px;flex:0 0 360px;overflow:hidden}
.svc::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,0) 45%)}
.svc span{position:absolute;left:12px;right:12px;bottom:26px;z-index:2;text-align:center;font-size:20px;line-height:24px;letter-spacing:-.01em}
@keyframes slide{to{transform:translateX(-50%)}}
/* reviews */
.reviews{padding:75px var(--px)}
.reviews .sec-title{margin-bottom:45px}
.slider{position:relative}
.rev{display:none;grid-template-columns:538px 1fr;column-gap:113px;align-items:center;min-height:540px}
.rev.is-on{display:grid;animation:fade .5s ease}
@keyframes fade{from{opacity:0}to{opacity:1}}
.rev .pic{width:538px;height:540px;overflow:hidden}
.rev .txt{max-width:600px}
.stars{display:flex;gap:5px;margin-bottom:14px}
.stars svg{width:20px;height:19px;fill:#fff}
.rev q{display:block;quotes:none;font-weight:500;font-size:20px;line-height:24px;letter-spacing:-.01em;margin-bottom:24px}
.rev .who{font-size:18px;line-height:23.4px;letter-spacing:-.02em}
.arrows{position:absolute;right:15px;bottom:0;display:flex;gap:10px}
.arrows button,.car-arrows button{width:30px;height:30px;background:#fff;display:grid;place-items:center}
.arrows svg,.car-arrows svg{width:14px;height:14px;stroke:#000;fill:none;stroke-width:2}
.feed{display:none;flex-direction:column;gap:24px;padding:24px}
.feed .rv{display:flex;flex-direction:column;gap:20px}
.feed .rv q{quotes:none;font-size:18px;line-height:27px;font-weight:500;letter-spacing:-.01em}
.feed .rv .who{font-size:18px;line-height:23px}
/* CTA card */
.cta{padding:50px var(--px)}
.cta .card{position:relative;height:721px;max-height:90vh;min-height:440px;overflow:hidden}
.cta .card::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.12)}
.cta .copy .small{font-size:14px;line-height:15.4px;margin-bottom:10px}
.cta h2{font-weight:500;font-size:clamp(28px,3.1vw,45px);line-height:1.1;letter-spacing:-.01em;text-transform:uppercase;max-width:662px;margin-bottom:18px}
/* about page */
.a-head{padding:150px var(--px) 0}
.a-img{margin:45px var(--px) 0;height:721px;overflow:hidden}
.a-stats{display:grid;grid-template-columns:1fr 643px;margin:85px var(--px) 0;align-items:start}
.stats{display:flex;gap:10px}
.stat{width:208px}
.stat b{display:block;font-weight:500;font-size:28px;line-height:30.8px;text-transform:uppercase;margin-bottom:10px}
.stat span,.a-stats p{font-weight:400;font-size:16px;line-height:24px;letter-spacing:-.02em;color:var(--soft);display:block}
.story{padding:75px var(--px);margin-top:20px}
.story .card{position:sticky;top:75px;height:810px;display:flex;gap:80px;align-items:center;background:#000;z-index:1}
.story .left{width:525px;padding:0 39px;flex:0 0 525px}
.story .left .e{font-size:14px;line-height:15.4px;margin-bottom:10px}
.story .left h3{font-weight:500;font-size:20px;line-height:24px;margin-bottom:10px}
.story .left p{font-weight:400;font-size:16px;line-height:24px;letter-spacing:-.02em;color:var(--soft)}
.story .imgs{position:relative;width:740px;height:810px;flex:0 0 740px;overflow:hidden}
.story .imgs img{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}
.story .imgs img.is-on{opacity:1}
.story .trig{height:300px;margin-top:10px}
.values,.team{padding:75px var(--px)}
.values .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:45px}
.vcard{position:relative;height:605px;overflow:hidden}
.vcard::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,0) 55%)}
.vcard img{position:absolute;inset:0;transition:transform 1.2s var(--ease)}
.vcard:hover img{transform:scale(1.04)}
.vcard .tx{position:absolute;left:15px;right:15px;bottom:15px;z-index:2}
.vcard h4{font-weight:500;font-size:20px;line-height:24px;margin-bottom:10px}
.vcard p{font-size:15px;line-height:18px;color:var(--soft)}
.team .grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:45px}
.member .ph{height:816px;overflow:hidden}
.member .ph img{transition:transform 1.2s var(--ease)}
.member:hover .ph img{transform:scale(1.03)}
.member .role{font-size:14px;line-height:15.4px;color:var(--soft);margin-top:15px}
.member .nm{font-size:20px;line-height:24px;margin-top:5px}
/* properties */
.feat{position:relative;margin:45px var(--px) 0;height:721px}
.plist{max-width:1120px;margin:75px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 20px}
.plist .card-over{height:350px}
.plist .copy{padding:0 25px}
.plist h2{font-size:20px;line-height:24px}
.plist p{margin-bottom:0}
/* detail */
.d-wrap{max-width:800px;margin:0 auto;padding:150px 0 0}
.back{display:inline-flex;align-items:center;gap:8px;font-weight:400;font-size:16px;line-height:24px;color:var(--soft);transition:color .3s}
.back:hover{color:#fff}
.back svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6}
.d-wrap h1{font-weight:500;font-size:50px;line-height:55px;letter-spacing:-.01em;text-transform:uppercase;margin-top:15px}
.d-sub{font-weight:400;font-size:16px;line-height:24px;color:var(--soft);max-width:600px;margin-top:15px}
.car{position:relative;margin-top:30px;height:450px;overflow:hidden}
.car .track{display:flex;gap:10px;height:100%;transition:transform .7s var(--ease)}
.car .track>div{flex:0 0 100%;height:100%}
.car-arrows{position:absolute;right:15px;bottom:15px;display:flex;gap:10px;z-index:2}
.info{display:flex;justify-content:flex-end;margin-top:30px}
.info div{width:189px}
.info small{display:block;font-weight:400;font-size:16px;line-height:24px;color:var(--soft)}
.info span{display:block;font-size:15px;line-height:18px;margin-top:0}
.d-wrap h3{font-weight:500;font-size:30px;line-height:33px;margin-top:30px}
.d-wrap .pp{font-weight:400;font-size:16px;line-height:24px;color:var(--soft);margin-top:15px;letter-spacing:-.02em}
.d-wrap .h3p{margin-top:15px}
.d-img{height:400px;margin-top:30px;overflow:hidden}
.feats{margin-top:30px}
.feats li{font-weight:400;font-size:16px;line-height:24px;color:var(--soft);padding-left:18px;position:relative}
.feats li::before{content:"";position:absolute;left:3px;top:11px;width:3px;height:3px;border-radius:50%;background:var(--soft)}
.d-cta{margin-top:150px;padding-bottom:100px}
.d-cta h2{font-weight:500;font-size:45px;line-height:49.5px;text-transform:uppercase;letter-spacing:-.01em;max-width:650px}
.d-cta p{font-weight:400;font-size:16px;line-height:24px;color:var(--soft);margin:15px 0}
/* contact */
.c-grid{display:grid;grid-template-columns:1fr 643px;margin:45px var(--px) 0;align-items:start}
.c-info .it{height:170px}.c-info .it:last-child{height:auto}
.c-info b{display:block;font-weight:500;font-size:15px;line-height:18px;margin-bottom:5px}
.c-info a,.c-info span{color:var(--soft);display:block;font-size:15px;line-height:18px;max-width:450px;transition:color .3s}
.c-info a:hover{color:#fff}
.frm{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px}
.frm label{display:block}
.frm label.full{grid-column:1/3}
.frm label p{font-size:15px;line-height:18px;margin-bottom:10px;text-transform:uppercase}
.frm input,.frm textarea{width:100%;background:#1c1c1c;border:0;border-radius:4px;color:#fff;font:500 14px/17px var(--font);letter-spacing:normal;padding:15px 10px;outline:none;resize:none}
.frm textarea{height:100px}
.frm input::placeholder,.frm textarea::placeholder{color:#777}
.frm .send{grid-column:1/3;display:flex;justify-content:center;align-items:center;height:42px;background:#fff;color:#000;font-size:15px;transition:background .3s}
.frm .send:hover{background:#f0f0f0}
.frm .st{grid-column:1/3;font-size:13px;color:var(--soft);min-height:16px}
/* 404 */
.nf{min-height:calc(100vh - 360px);padding:190px var(--px) 80px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.nf h1{font-weight:500;font-size:clamp(28px,3.1vw,45px);line-height:1.1;text-transform:uppercase;margin:10px 0 20px;max-width:700px}
/* footer */
footer{position:relative;z-index:2;background:#000;border-top:1px solid var(--line);padding-top:75px}
footer .top{padding:0 var(--px) 75px;display:grid;grid-template-columns:1fr 140px 140px 316px;column-gap:28px}
footer .brand .logo{display:block;margin-bottom:18px;font-style:normal;font-size:23px}
footer .brand p.d{color:var(--soft);max-width:350px;margin-bottom:20px;font-size:15px;line-height:18px}
footer h5{font-weight:500;font-size:15px;line-height:18px;margin-bottom:10px}
footer li a,footer .col p,footer .col p a{color:var(--soft);font-size:15px;line-height:18px;display:block;margin-bottom:10px;transition:color .3s}
footer li a:hover,footer .col p a:hover{color:#fff}
.col .block+.block{margin-top:16px}
form.lead{display:flex;width:344px;max-width:100%;height:40px;background:rgba(187,187,187,.15)}
form.lead input{flex:1;min-width:0;padding:0 12px;background:transparent;border:0;color:#fff;font:400 14px var(--font);letter-spacing:normal;outline:none}
form.lead input::placeholder{color:#999}
form.lead button{width:140px;background:#fff;color:#222;font-size:14px;font-weight:600;letter-spacing:normal;transition:background .3s}
form.lead button:hover{background:#f0f0f0}
.lead-status{min-height:18px;margin-top:8px;font-size:13px;color:var(--soft)}
.bottom-bar{border-top:1px solid var(--line);padding:25px var(--px);display:flex;justify-content:space-between;gap:12px;color:var(--soft)}
.bottom-bar a{transition:color .3s}.bottom-bar a:hover{color:#fff}
/* tablet */
@media(max-width:1100px){
 .about .container{column-gap:56px}
 .rev{grid-template-columns:1fr 1fr;column-gap:40px}
 .rev .pic{width:100%;height:auto;aspect-ratio:538/540}
 footer .top{grid-template-columns:1fr 1fr;row-gap:36px}
 .story .card{gap:30px}.story .left{width:300px;flex-basis:300px;padding:0 10px}.story .imgs{flex:1;width:auto}
 .c-grid,.a-stats{grid-template-columns:1fr 1fr;column-gap:40px}
 .stat{width:auto;flex:1}
}
/* mobile */
@media(max-width:809px){
 :root{--px:20px}
 .nav{display:none}.burger{display:block}
 .open .mpanel{display:block}
 .bar{height:64px}
 .hero{height:100vh;height:100svh}
 .hero .thumbs{display:none}
 .hero .bottom{bottom:80px;flex-direction:column;align-items:flex-start}
 .hero h1,.h1{font-size:30px;line-height:33px}
 .project h2,.card-over h2{font-size:24px;line-height:28px}
 .about{padding:60px 15px 40px}
 .about .container{grid-template-columns:1fr;row-gap:32px}
 .about .order-2{order:2}
 .services{padding:60px 0}
 .svc{width:260px;height:380px;flex-basis:260px}
 .reviews{padding:60px 15px}
 .reviews .slider{display:none}.feed{display:flex}
 .cta{padding:50px 15px}.cta .card{height:560px}
 footer .top{grid-template-columns:1fr}
 .bottom-bar{flex-direction:column}
 .a-head{padding-top:110px}.a-img{height:300px;margin-top:30px}
 .a-stats{grid-template-columns:1fr;margin-top:40px;row-gap:30px}
 .stats{flex-wrap:wrap}.stat{flex:0 0 calc(50% - 5px)}
 .story{padding:40px 20px 20px}
 .story .card{position:static;flex-direction:column;height:auto;gap:24px;align-items:stretch}
 .story .left{width:auto;flex:none;padding:0}
 .story .imgs{width:auto;height:auto;flex:none;display:flex;flex-direction:column;gap:12px;overflow:visible}
 .story .imgs img{position:static;opacity:1;height:420px}
 .story .trig{display:none}
 .values,.team{padding:50px 20px}
 .values .grid,.team .grid{grid-template-columns:1fr;margin-top:30px}
 .vcard{height:480px}.member .ph{height:520px}
 .page-top{padding-top:120px}
 .feat{margin:30px 20px 0;height:520px}
 .plist{grid-template-columns:1fr;padding:0 20px;margin-top:40px}
 .d-wrap{padding:110px 20px 0}
 .d-wrap h1{font-size:30px;line-height:33px}
 .car{height:240px}
 .info{justify-content:flex-start}.info div{width:100%}
 .d-img{height:230px}
 .d-cta{margin-top:70px}.d-cta h2{font-size:28px;line-height:31px}
 .c-grid{grid-template-columns:1fr;row-gap:30px}
 .c-info .it{height:auto;margin-bottom:24px}
 .frm{grid-template-columns:1fr}.frm label.full,.frm .send,.frm .st{grid-column:1}
 .nf{padding-top:130px}
}
@media(prefers-reduced-motion:reduce){.marquee{animation:none}.hero .slide{transition:none}}

/* ===== Доповнення для SEO-версії (сторінки, служби, відгуки) ===== */
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:auto}
.skip:focus{left:10px;top:10px;z-index:99;background:#fff;color:#000;padding:8px 12px}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.site-header a:focus-visible,.btn:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:1px solid #fff;outline-offset:3px}
.pa{position:absolute;inset:0;display:block;z-index:0}
.pa img{position:absolute;inset:0;width:100%;height:100%}
.project h3,.card-over h3,.feat h2{font-weight:500;font-size:30px;line-height:33px;letter-spacing:-.01em;margin-bottom:10px;text-transform:uppercase}
.feat{overflow:hidden;background:#000}
.feat .pa{position:absolute;inset:0}
.row.start{justify-content:flex-start}
.stack{position:relative}
.fh{font-weight:500;font-size:23px;line-height:27.6px;letter-spacing:-.04em;margin-bottom:18px;text-transform:uppercase}
.fh5{font-weight:500;font-size:15px;line-height:18px;margin-bottom:10px}
footer address,.c-info,address.col{font-style:normal}
footer .col ul li{list-style:none}
footer .block p{margin:0}
.status{min-height:18px;margin-top:8px;font-size:13px;color:var(--soft)}
.frm label span{display:block;font-size:15px;line-height:18px;margin-bottom:10px;text-transform:uppercase}
.frm .status{grid-column:1/3}
.page-top h1{font-weight:500;font-size:50px;line-height:55px;letter-spacing:-.01em;max-width:700px}
.a-head h1{font-weight:500;font-size:clamp(32px,4.2vw,50px);line-height:1.1;text-transform:uppercase;max-width:700px}
.stat{display:flex;flex-direction:column-reverse}
.stat dt{font-weight:400;font-size:16px;line-height:24px;color:var(--soft);letter-spacing:-.02em}
.stat dd{font-weight:500;font-size:28px;line-height:30.8px;text-transform:uppercase;margin-bottom:10px}
.vcard h3{font-weight:500;font-size:20px;line-height:24px;margin-bottom:10px}
.member .nm{font-size:20px;line-height:24px;margin-top:5px}
.story .imgs .fr{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}
.story .imgs .fr.is-on{opacity:1}
.story .imgs .fr img{position:absolute;inset:0;width:100%;height:100%;opacity:1}
.services .sec-title.center{text-align:center}
.svc-row{display:flex;gap:15px;overflow-x:auto;scroll-snap-type:x proximity;padding:0 var(--px) 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.svc-row::-webkit-scrollbar{display:none}
.svc-row.drag{cursor:grabbing;scroll-snap-type:none}
.svc-row{cursor:grab}
.svc{list-style:none;scroll-snap-align:start;flex:0 0 360px;transition:flex-basis .6s var(--ease),width .6s var(--ease)}
.svc img{transition:filter .6s ease}
.svc.is-open{flex-basis:720px;width:720px}
.svc.is-open img{filter:brightness(.4)}
.svc-toggle{position:absolute;top:14px;right:14px;z-index:3;width:40px;height:40px;border-radius:50%;background:#fff;color:#000;display:grid;place-items:center}
.svc-toggle svg{width:14px;height:14px;stroke:#000;fill:none;stroke-width:1.6}
.svc-desc{position:absolute;top:0;right:0;bottom:0;width:50%;z-index:2;display:flex;align-items:center;padding:24px;font-weight:400;font-size:17px;line-height:25px;letter-spacing:-.02em;opacity:0;pointer-events:none;transition:opacity .5s ease .1s}
.svc.is-open .svc-desc{opacity:1}
.svc-name{z-index:2}
/* відгуки: десктоп — слайдер, мобільний — стрічка */
.reviews .rev{display:flex;flex-direction:column;gap:20px;min-height:0;margin:0 0 40px}
.reviews .slider-mode .rev{display:none}
.reviews .slider-mode .rev.is-on{display:grid;grid-template-columns:538px 1fr;column-gap:113px;align-items:center;min-height:540px;margin:0}
.rev .txt{max-width:600px}
.rev .q{display:block;font-weight:500;font-size:20px;line-height:24px;letter-spacing:-.01em;margin-bottom:24px}
.rev .who{font-size:18px;line-height:23.4px;letter-spacing:-.02em}
.rev figcaption.who{display:block}
.reviews .arrows{position:absolute;right:15px;bottom:0;display:flex;gap:10px}
.reviews .slider{position:relative}
.reviews .slider:not(.slider-mode) .arrows{display:none}
/* Сторінка проєкту */
.crumbs{margin-bottom:20px}
.crumbs a{color:var(--soft);font-size:16px;line-height:24px;transition:color .3s}
.crumbs a:hover{color:#fff}
.d-wrap h2.h3{font-weight:500;font-size:30px;line-height:33px;margin-top:30px}
.d-wrap .pp{font-weight:400;font-size:16px;line-height:24px;color:var(--soft);margin-top:15px;letter-spacing:-.02em}
.d-wrap .feats{margin-top:15px}
.car .track{display:flex;gap:0;height:100%;transition:transform .7s var(--ease)}
.car .track>figure{flex:0 0 100%;width:100%;height:100%;margin:0;position:relative}
.car .track>figure img{position:absolute;inset:0;width:100%;height:100%}
.car-arrows button{width:30px;height:30px;background:#fff;display:grid;place-items:center}
.car-arrows svg{width:14px;height:14px;stroke:#000;fill:none;stroke-width:2}
.plist li{list-style:none}
.plist .card-over{display:block;height:350px}
.plist .card-over img{position:absolute;inset:0;width:100%;height:100%}
.c-grid .c-info .it h2{font-weight:500}
.c-info .it:last-child{height:auto}
footer .top{padding-bottom:75px}
.nf{min-height:calc(100vh - 360px)}
@media(max-width:1100px){
  .reviews .slider-mode .rev.is-on{grid-template-columns:1fr 1fr;column-gap:40px}
  .reviews .rev .pic{width:100%;height:auto;aspect-ratio:538/540}
}
@media(max-width:809px){
  .project h3,.card-over h3,.feat h2{font-size:24px;line-height:28px}
  .svc{flex-basis:260px;width:260px;height:380px}
  .svc.is-open{flex-basis:300px;width:300px}
  .svc-desc{width:auto;left:0;padding:20px;font-size:15px;line-height:22px;background:rgba(0,0,0,.55)}
  .svc-toggle{top:12px;right:12px}
  .reviews .rev{display:flex;flex-direction:column;gap:20px;margin-bottom:40px}
  .reviews .rev .pic{width:100%;height:auto;aspect-ratio:538/540}
  .reviews .arrows{display:none}
  .story .imgs{display:flex;flex-direction:column;gap:12px;height:auto;width:auto;flex:none;overflow:visible}
  .story .imgs .fr{position:static;opacity:1;height:420px}
  .story .imgs .fr img{position:static;height:420px}
  .stat{flex:0 0 calc(50% - 5px)}
  .page-top h1,.a-head h1{font-size:30px;line-height:33px}
  .frm label span{font-size:14px}
  .car{height:240px}
  .d-wrap h2.h3{font-size:24px;line-height:28px}
  .info{display:none}
}
