/* Refinement of the approved full-image design. */
.hero-shade{background:linear-gradient(90deg,#0810158c,#08101512 85%),linear-gradient(0deg,#10120fe8 0%,#10120f22 65%,#10120f33)}
.hero h1{text-shadow:0 3px 40px #050b1045}
.hero-bottom p{color:#edf0ea;text-shadow:0 1px 12px #0008}
.hero-foot{align-items:center}
.hero-foot a>span{animation:scroll-cue 2.4s ease-in-out infinite}
.scene-clip{border-color:#ffffff77;box-shadow:0 12px 45px #0003}
.scene-clip:focus-visible{outline-offset:6px}
.showcase-info p{max-width:570px;line-height:1.75;color:#e0e4da}
.round-link{gap:22px}
.round-link>span{transition:background .25s,color .25s,transform .3s}
.round-link:hover>span{transform:rotate(45deg)}
.gallery{gap:18px}
.photo{isolation:isolate}
.photo .photo-label{padding-top:45px;background:linear-gradient(transparent,#050a06d9);font-weight:600;line-height:1.5}
.photo img{filter:saturate(.88);transition:transform .75s cubic-bezier(.2,.65,.2,1),filter .5s}
.photo:hover img{filter:saturate(1);transform:scale(1.045)}
.photo:focus-visible{outline-offset:3px;z-index:1}
.filters button{transition:color .2s,background .2s,border-color .2s}
.filters button:not(.active):hover{background:#f7d32215;color:var(--white);border-color:#f7d32277}
.service-row{grid-template-columns:35px 145px minmax(0,1fr) 260px 45px;gap:24px;padding:25px 0;transition:background .3s}
.service-row:hover{padding:25px 0;background:transparent}
.service-photo{position:relative;width:145px;height:100px;overflow:hidden;background:#22271d}
.service-photo>img{width:100%;height:100%;object-fit:cover;filter:saturate(.55);transition:transform .6s,filter .4s}
.service-row:hover .service-photo>img,.service-row:focus-visible .service-photo>img{filter:saturate(1);transform:scale(1.07)}
.service-row h3{font-size:clamp(24px,2.2vw,33px);letter-spacing:-1px;line-height:1.17}
.service-row p{font-size:15px;line-height:1.7}
.service-row .arrow{width:44px;height:44px}
.service-row .number{color:#888f7f;font-size:12px;font-variant-numeric:tabular-nums}
.detail-grid article>div{padding-top:23px}
.detail-grid h3{margin-top:14px;line-height:1.25}
.detail-grid p{max-width:350px}
.contact .contact-bottom{align-items:flex-start}
.contact-actions .button{min-height:62px}
.requisites dd{letter-spacing:.025em}
.contact h2{position:relative;font-size:clamp(56px,14vw,190px);line-height:1.03;margin:30px 0 40px}
.contact h2 .contact-title-line{display:block;color:var(--black);white-space:nowrap}
.contact h2 .contact-arrow{color:var(--black);right:0;top:0;font-size:1em;line-height:1}
@keyframes scroll-cue{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media(min-width:701px) and (max-width:1100px){.service-row{grid-template-columns:30px 120px minmax(0,1fr) 40px;gap:20px}.service-photo{width:120px;height:88px}.service-row p{grid-column:3;grid-row:2}.service-row h3{grid-column:3;grid-row:1;font-size:25px}.service-row .number{grid-row:1/3}.service-photo{grid-row:1/3}.service-row .arrow{grid-column:4;grid-row:1/3}.service-row p{font-size:14px}.service-row{row-gap:8px}}
@media(max-width:700px){.hero-shade{background:linear-gradient(90deg,#08101566,#08101512),linear-gradient(0deg,#10120ff0 0%,#10120f44 58%,#10120f33)}.hero h1{line-height:1.04}.gallery{gap:10px}.photo .photo-label{padding:35px 10px 11px;font-size:11px;line-height:1.35}.showcase-info p{line-height:1.7;max-width:310px}.service-row{position:relative;grid-template-columns:66px minmax(0,1fr) 30px;gap:9px 15px;padding:23px 0}.service-row:hover{padding:23px 0}.service-row .number{display:none}.service-photo{width:66px;height:90px;grid-column:1;grid-row:1/3;align-self:start}.service-row h3{grid-column:2;grid-row:1;font-size:21px;letter-spacing:-.7px;overflow-wrap:normal;word-break:normal;hyphens:auto}.service-row p{grid-column:2;grid-row:2;font-size:13px;line-height:1.65}.service-row .arrow{grid-column:3;grid-row:1/3;width:30px;height:30px;font-size:17px}.contact .contact-bottom{align-items:stretch}.contact-actions .button{min-height:57px}}
@media(max-width:350px){.service-row{grid-template-columns:55px minmax(0,1fr) 26px;gap:9px 10px}.service-photo{width:55px;height:78px}.service-row h3{font-size:18px}.service-row p{font-size:12px}.service-row .arrow{width:26px;height:26px}}
@media(max-width:700px){.contact h2{font-size:clamp(48px,14vw,90px);margin:28px 0 32px}.contact .contact-bottom{padding-top:25px}}
@media(prefers-reduced-motion:reduce){.hero-foot a>span{animation:none}.service-photo>img,.photo img,.round-link>span{transition:none}.service-row:hover .service-photo>img,.round-link:hover>span,.photo:hover img{transform:none}}
