.q052-page{padding-top:clamp(140px,12vw,184px);padding-bottom:88px}
.q052-page .q052-hero,.q052-page .q052-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,4.4vw,64px);align-items:start}
.q052-page .q052-narrow-heading{grid-template-columns:minmax(0,35fr) minmax(0,65fr)}
.q052-page .q052-approach-grid{grid-template-columns:minmax(0,55fr) minmax(0,45fr)}
.q052-page h1{font-size:clamp(34px,3.3vw,60px);line-height:1.12;margin:0 0 30px;overflow-wrap:break-word}
.q052-page h2{font-size:clamp(28px,2.65vw,42px);line-height:1.2;margin:0 0 32px}
.q052-page h3{font-size:clamp(22px,1.8vw,26px);line-height:1.3;margin:0;color:#fff}
.q052-page .q052-copy,.q052-page .image-text__description-text{min-width:0}
.q052-page .image-text__description-text{font-size:clamp(18px,1.4vw,20px);line-height:1.6;max-width:70ch}
.q052-page p{margin:0 0 22px}.q052-page p:last-child{margin-bottom:0}
.q052-page .button{max-width:100%;white-space:normal;text-align:center;line-height:1.35;margin-top:24px}
.q052-page a:not(.button){text-decoration:underline;text-underline-offset:4px}
.q052-page :is(a,button,summary):focus-visible{outline:2px solid #fff;outline-offset:5px}
.q052-breadcrumb{font-size:15px;line-height:1.7;color:#aaa;margin-bottom:26px}
.q052-figure{margin:0;min-width:0}.q052-image{display:block;width:100%;height:auto;object-fit:contain}
.q052-figure figcaption{font-size:15px;line-height:1.6;color:#aaa;margin:14px 0 0}
.q052-figure>a{display:inline-block;line-height:1.6;margin-top:12px}
.q052-stalinki .q052-hero>.q052-figure{justify-self:end;width:min(100%,54.4vh,496px)}
.q052-stalinki .q052-hero .q052-image{width:auto;max-width:100%;height:auto;max-height:min(68vh,620px);margin-left:auto}
.q052-stalinki .q052-examples .q052-figure{width:min(100%,520px)}
.q052-stalinki .q052-examples .q052-image{width:auto;max-width:100%;height:auto;max-height:650px}
.q052-nav-wrap{margin-top:64px}
.q052-nav-desktop,.q052-nav-mobile{border-top:1px solid #444;border-bottom:1px solid #444;padding:24px 0}
.q052-page .q052-nav-title{font-size:15px;line-height:1.5;color:#aaa;margin-bottom:16px}
.q052-nav-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 28px;font-size:16px;line-height:1.5}
.q052-nav-mobile{display:none}
.q052-section{margin-top:clamp(80px,7vw,104px);padding-top:0;padding-bottom:0;scroll-margin-top:140px}
.q052-drawing{max-width:960px;margin-top:40px}
.q052-scope-list ul{list-style:none;padding:0;margin:28px 0 32px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}
.q052-scope-list li{border-top:1px solid #444;padding-top:20px;margin:0}
.q052-page .q052-scope-list{max-width:none}
.q052-technical{border-top:1px solid #444;padding-top:24px;margin-top:32px}
.q052-room{display:grid;grid-template-columns:minmax(0,28fr) minmax(0,72fr);gap:40px;border-top:1px solid #444;padding:30px 0}
.q052-room:last-child{padding-bottom:0}
.q052-steps{list-style:none;padding:0;margin:0;display:grid;gap:36px 40px}
.q052-steps-four{grid-template-columns:repeat(2,minmax(0,1fr))}
.q052-steps-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.q052-steps li{border-top:1px solid #444;padding-top:24px}
.q052-steps strong{display:block;font-size:24px;line-height:1.35;color:#fff;margin-bottom:16px;font-weight:400}
.q052-process-cost-copy{margin-top:36px}
.q052-faq details{border-top:1px solid #444;padding:0}.q052-faq details:last-child{border-bottom:1px solid #444}
.q052-faq summary{list-style:none;position:relative;cursor:pointer;font-size:20px;line-height:1.5;min-height:44px;padding:22px 48px 22px 0;color:#fff}
.q052-faq summary::-webkit-details-marker{display:none}
.q052-faq summary::after{content:'+';position:absolute;right:0;top:22px;width:24px;text-align:center}
.q052-faq details[open] summary::after{content:'−'}
.q052-faq details[open]>.q052-copy{padding:0 0 24px}
.q052-enquiry-group{border-top:1px solid #444;padding-top:32px}
.q052-enquiry-group .q052-copy{max-width:60ch}
@media(max-width:1099px){.q052-steps-three{grid-template-columns:1fr}}
@media(max-width:959px){
 .q052-page{padding-top:132px;padding-bottom:64px}
 .q052-page .q052-hero,.q052-page .q052-split,.q052-room{grid-template-columns:1fr;gap:28px}
 .q052-page h2{margin-bottom:28px}
 .q052-stalinki .q052-hero>.q052-figure,.q052-stalinki .q052-examples .q052-figure{justify-self:start;width:100%}
 .q052-stalinki .q052-hero .q052-image,.q052-stalinki .q052-examples .q052-image{max-height:none;width:100%;margin:0}
 .q052-nav-wrap{margin-top:48px}.q052-section{margin-top:64px;scroll-margin-top:120px}
 .q052-nav-desktop{display:none}.q052-nav-mobile{display:block;padding:0}
 .q052-nav-mobile>summary{cursor:pointer;font-size:16px;padding:20px 0;min-height:44px}
 .q052-nav-mobile .q052-nav-links{grid-template-columns:1fr;gap:0;padding:0 0 12px}
 .q052-nav-links a{display:flex;align-items:center;min-height:44px;padding:10px 0}
 .q052-room{gap:16px;padding:28px 0}.q052-steps-four{grid-template-columns:1fr}
}
@media(max-width:599px){
 .q052-page{padding-top:120px;padding-bottom:56px}
 .q052-page h1{font-size:33px;line-height:1.12;margin-bottom:28px}
 .q052-page h2{font-size:28px;line-height:1.2;margin-bottom:26px}
 .q052-page h3,.q052-steps strong{font-size:22px}
 .q052-page .image-text__description-text{font-size:17px;line-height:1.6}
 .q052-page .button{width:100%;padding:16px 18px}
 .q052-section{margin-top:56px;scroll-margin-top:108px}
 .q052-scope-list ul{grid-template-columns:1fr;gap:24px}
 .q052-faq summary{font-size:18px;padding-top:20px;padding-bottom:20px}
 .q052-faq summary::after{top:20px}.q052-drawing{margin-top:32px}
}
/* Hero revision: native Firsov image-led screen for Victory; complete portrait for stalinki. */
.q052-page.q052-victory{padding-top:0}
.q052-cinematic{position:relative;isolation:isolate;background:#181818}
.q052-page .q052-cinematic .q052-hero{display:flex;align-items:center;min-height:min(980px,100svh);padding:240px 0 160px;box-sizing:border-box}
.q052-cinematic .q052-hero>.q052-copy{position:relative;z-index:2;width:100%;max-width:1140px;text-align:center}
.q052-cinematic .q052-hero h1{font-size:clamp(36px,3.6vw,64px);max-width:1000px;margin:0 auto 28px}
.q052-cinematic .q052-hero .image-text__description-text{max-width:58ch;margin:0 auto;color:#fff}
.q052-cinematic .q052-breadcrumb{position:absolute;inset:142px 0 auto;z-index:3;margin:0 auto;color:#ddd}
.q052-cinematic .q052-hero>.q052-figure{position:absolute;inset:0;z-index:0;width:100%;height:100%}
.q052-cinematic .q052-image{width:100%;height:100%;object-fit:cover;object-position:50% 58%}
.q052-cinematic .q052-figure::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(24,24,24,.55),rgba(24,24,24,.58) 45%,rgba(24,24,24,.7) 75%,#181818 100%)}
.q052-cinematic .q052-figure figcaption{position:absolute;z-index:1;bottom:24px;left:32px;right:32px;max-width:1000px;margin:0 auto;text-align:center;color:#ccc}
.q052-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;margin-top:28px}
.q052-hero-actions .button{margin-top:0}
.q052-cinematic .q052-hero-actions{justify-content:center}
.q052-hero-case-link{font-size:17px;line-height:1.5;color:#fff}
.q052-page.q052-stalinki .q052-hero{grid-template-columns:minmax(0,58fr) minmax(0,42fr);gap:56px}
.q052-stalinki .q052-hero>.q052-figure{justify-self:start}
.q052-stalinki .q052-hero .q052-copy.image-text__description-text{max-width:42ch}
@media(max-width:959px){
 .q052-page.q052-stalinki .q052-hero{grid-template-columns:1fr;gap:32px}
 .q052-cinematic .q052-breadcrumb{top:112px}
 .q052-page .q052-cinematic .q052-hero{padding-top:190px;padding-bottom:150px;min-height:800px}
 .q052-cinematic .q052-hero h1{font-size:clamp(33px,5vw,48px)}
}
@media(max-width:599px){
 .q052-page .q052-cinematic .q052-hero{padding-top:180px;padding-bottom:160px;min-height:800px}
 .q052-cinematic .q052-breadcrumb{top:104px;font-size:14px}
 .q052-cinematic .q052-hero h1{font-size:33px}
 .q052-cinematic .q052-figure figcaption{left:20px;right:20px;font-size:14px;bottom:20px}
 .q052-hero-actions{gap:20px;margin-top:24px}
 .q052-hero-case-link{display:block;width:100%;text-align:center}
}
/* Shared image-led hero and concise section summaries, approved revision 4. */
.q052-page{padding-top:0}
.q052-page .q052-cinematic .q052-hero>.q052-figure{width:100%;max-width:none;height:100%;justify-self:stretch}
.q052-page .q052-cinematic .q052-image{width:100%;height:100%;max-width:none;max-height:none;margin:0;object-fit:cover}
.q052-stalinki .q052-cinematic .q052-image{object-position:50% 50%}
.q052-service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:32px 0}
.q052-stalinki .q052-scope .q052-service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.q052-service-card{position:relative;min-width:0;background:#20201e;border-top:1px solid #655d50;padding:28px 30px 30px}
.q052-page .q052-service-card h3{font-size:25px;line-height:1.25;margin:18px 0 14px}
.q052-page .q052-service-card p{font-size:17px;line-height:1.6;color:#bdbbb5;margin:0;max-width:36ch}
.q052-card-number{display:block;font-size:14px;color:#baa68b;letter-spacing:.08em}
.q052-approach .q052-service-cards{display:block;margin:30px 0}
.q052-approach .q052-service-card{display:grid;grid-template-columns:30px minmax(0,1fr);gap:6px 16px;background:transparent;border-top:1px solid #3b3b38;padding:22px 0}
.q052-approach .q052-card-number{grid-row:1/3;padding-top:5px}
.q052-page .q052-approach .q052-service-card h3{font-size:23px;margin:0}
.q052-page .q052-approach .q052-service-card p{max-width:none}
.q052-page .q052-small-note{font-size:17px;line-height:1.6;color:#aaa;margin-top:24px}
.q052-more{border-top:1px solid #444;margin-top:28px;padding:0;max-width:960px}
.q052-more>summary{cursor:pointer;font-size:17px;line-height:1.5;padding:20px 36px 20px 0;min-height:44px;color:#ddd}
.q052-more[open]>summary{margin-bottom:16px}
.q052-more>.q052-copy,.q052-more>.q052-figure{padding-bottom:24px}
.q052-more ul{padding-left:24px;margin:24px 0}
.q052-more li{margin-bottom:12px}
.q052-source-image{margin-top:36px}
.q052-room .q052-more{margin-top:16px}
.q052-hero-wrap+.q052-section{margin-top:96px}
@media(max-width:1099px){.q052-service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){
 .q052-service-cards,.q052-stalinki .q052-scope .q052-service-cards{grid-template-columns:1fr;gap:18px;margin:26px 0}
 .q052-service-card{padding:24px}
 .q052-page .q052-service-card h3{font-size:23px}
 .q052-hero-wrap+.q052-section{margin-top:56px}
}
/* Revision 5: image-led stages and the site's existing trust blocks. */
.q052-victory .q052-cinematic .q052-figure::after{background:linear-gradient(180deg,rgba(24,24,24,.62),rgba(24,24,24,.7) 45%,rgba(24,24,24,.8) 75%,#181818 100%)}
.q052-photo-slider{min-width:0}
.q052-slider-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#777 #242424;position:relative;gap:0}
.q052-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;padding:0 2px 18px;box-sizing:border-box}
.q052-slide .q052-image{width:100%;height:460px;object-fit:contain;background:#20201e}
.q052-slide-copy{padding:20px 24px 20px 0;min-width:0}
.q052-slide-number{display:block;font-size:15px;letter-spacing:.12em;color:#baa68b;margin-bottom:26px}
.q052-slide strong{display:block;font-weight:400;font-size:30px;line-height:1.25;color:#fff;margin-bottom:22px}
.q052-slide .image-text__description-text{max-width:48ch}
.q052-slider-controls{display:none;align-items:center;justify-content:flex-end;gap:24px;margin-top:24px}
[data-q052-ready="true"] .q052-slider-controls{display:flex}
.q052-slider-controls button{width:52px;height:52px;border:1px solid #777;background:transparent;color:#fff;font-size:24px;cursor:pointer}
.q052-slider-controls button:disabled{opacity:.3;cursor:default}
.q052-slider-count{font-size:16px;color:#bbb;min-width:44px;text-align:center}
.q052-room-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.q052-room-card{min-width:0}
.q052-room-card .q052-image{width:100%;height:380px;object-fit:contain;background:#20201e}
.q052-room-card .q052-figure{margin-bottom:28px}
.q052-page .q052-room-card h3{font-size:25px;margin:0 0 20px}
.q052-room-card .image-text__description-text{font-size:18px}
.q052-room-card .q052-more{margin-top:22px}
.q052-scope-visual{display:grid;grid-template-columns:minmax(0,45fr) minmax(0,55fr);gap:48px;align-items:start;margin-top:36px}
.q052-scope-visual>.q052-figure{max-width:460px}
.q052-scope-visual .q052-service-cards{margin:0}
.q052-cost-summary{border-top:1px solid #555;margin-top:44px;padding-top:32px;max-width:800px}
.q052-page .q052-cost-summary h3{margin-bottom:20px}
.q052-trust-team,.q052-trust-press,.q052-studio-numbers{margin-top:104px;margin-bottom:0;padding-top:0;padding-bottom:0}
.q052-page .q052-trust-team .team-gallery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}
.q052-trust-team .team__item{min-width:0}
.q052-trust-team .team__photo{display:block;width:100%;height:auto;max-height:none}
.q052-page .q052-trust-team .team__name{margin-top:18px;margin-bottom:6px;font-size:23px;color:#fff}
.q052-page .q052-trust-team .team__position{font-size:16px;line-height:1.5;color:#aaa;margin:0}
.q052-trust-press .press-media__cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.q052-trust-press .press-media__intro{font-size:18px;line-height:1.6;max-width:60ch}
.q052-trust-press .press-media__card{min-width:0;text-decoration:none!important}
.q052-trust-press .press-media__card-image img{display:block;width:100%;height:320px;object-fit:contain;background:#20201e}
.q052-trust-press .press-media__card-body h3{font-size:23px;margin:16px 0}
.q052-numbers-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.q052-numbers-grid>div{border-top:1px solid #555;padding-top:28px}
.q052-page .q052-stat-number{font-size:clamp(64px,7vw,108px);line-height:1;letter-spacing:-.04em;margin-bottom:24px;color:#fff}
.q052-numbers-grid>div>p:last-child{font-size:19px;line-height:1.6;color:#aaa}
@media(max-width:959px){
 .q052-slide,.q052-scope-visual{grid-template-columns:1fr;gap:28px}
 .q052-slide .q052-image{height:360px}.q052-slide-copy{padding:0 0 16px}
 .q052-slide strong{font-size:27px}
 .q052-room-cards{grid-template-columns:1fr;gap:56px}
 .q052-room-card .q052-image{height:auto;max-height:500px}
 .q052-room-card .q052-figure{max-width:600px}
 .q052-trust-team,.q052-trust-press,.q052-studio-numbers{margin-top:64px}
 .q052-page .q052-trust-team .team-gallery__grid,.q052-trust-press .press-media__cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .q052-numbers-grid{gap:24px}
}
@media(max-width:599px){
 .q052-slide .q052-image{height:280px}.q052-slider-controls{justify-content:space-between}
 .q052-slide strong{font-size:24px}.q052-slide-number{margin-bottom:18px}
 .q052-trust-team,.q052-trust-press,.q052-studio-numbers{margin-top:56px}
 .q052-page .q052-trust-team .team-gallery__grid{grid-template-columns:1fr}
 .q052-trust-press .press-media__cards{gap:18px}
 .q052-trust-press .press-media__card-image img{height:220px}
 .q052-trust-press .press-media__card-body h3{font-size:19px}
 .q052-numbers-grid{grid-template-columns:1fr;gap:32px}
 .q052-page .q052-stat-number{font-size:76px;margin-bottom:18px}
 .q052-numbers-grid>div>p:last-child{font-size:18px}
}

/* Q052 mobile press: one complete card per row, cover above its text. */
@media(max-width:768px){
 .q052-page .q052-trust-press.press-media--compact .press-media__cards{grid-template-columns:minmax(0,1fr);gap:24px}
 .q052-page .q052-trust-press.press-media--compact .press-media__card{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%;min-width:0;box-sizing:border-box}
 .q052-page .q052-trust-press.press-media--compact .press-media__card .press-media__card-image{width:100%;height:280px;min-height:0!important;aspect-ratio:auto!important;padding:16px!important;box-sizing:border-box}
 .q052-page .q052-trust-press.press-media--compact .press-media__card .press-media__card-image img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important}
 .q052-page .q052-trust-press.press-media--compact .press-media__card .press-media__card-body{width:100%;min-width:0;min-height:0!important;box-sizing:border-box;padding:20px!important}
 .q052-page .q052-trust-press.press-media--compact .press-media__card-label{font-size:10px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;letter-spacing:.08em}
 .q052-page .q052-trust-press.press-media--compact .press-media__card h3{font-size:22px!important;line-height:1.3!important;white-space:normal;overflow-wrap:anywhere;margin:12px 0 18px}
 .q052-page .q052-trust-press.press-media--compact .press-media__card-footer{min-width:0;display:flex;flex-wrap:wrap;gap:12px;white-space:normal}
}
