/* REDAN editorial layer. No global selectors; hero and original bundle are immutable. */
.rd-service-card{position:relative;overflow:hidden;box-shadow:0 5px 24px #22222505;transition:transform 240ms,border-color 240ms,box-shadow 240ms}
.rd-card-media{display:block;position:relative;overflow:hidden;aspect-ratio:1.65;margin:-24px -24px 24px;background:#d6d4d0}
.rd-card-media:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#111317a6);pointer-events:none}
.rd-card-media img{width:100%;height:100%;object-fit:cover;transition:transform 280ms ease}
.rd-card-index{position:absolute;z-index:1;bottom:18px;left:24px;color:#fff;font-size:11px;letter-spacing:.13em;font-weight:600}
.rd-card-kicker{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#913b3e;margin-bottom:10px;font-weight:600}
.rd-service-card:focus-visible{outline:2px solid #8a252d;outline-offset:4px}
@media(hover:hover){.rd-service-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px #29202512;border-color:#a3484b66}.rd-service-card:hover img{transform:scale(1.035)}}
.rd-figure{position:relative;overflow:hidden;border-radius:4px;background:#25262b;margin:0}
.rd-figure img{display:block;width:100%;height:100%;object-fit:cover}
.rd-figure figcaption{position:absolute;bottom:0;left:0;right:0;padding:35px 22px 15px;background:linear-gradient(transparent,#0a0c0edf);color:#e1e1e2;font-size:10px;line-height:1.5;letter-spacing:.04em}
.rd-panorama{height:310px;margin:30px 0 40px}
.rd-panorama img{object-position:center 58%}
.rd-approach{background:linear-gradient(180deg,#fff,#f0efec)}
.rd-approach .card-redan{background:#ffffffd9;border-left:2px solid #84252d;box-shadow:0 8px 24px #24222605}
.rd-process ol{position:relative;counter-reset:step}
.rd-process ol:before{content:"";position:absolute;top:39px;left:30px;right:30px;height:1px;background:linear-gradient(90deg,#79232b,#79232b22);pointer-events:none}
.rd-process li{counter-increment:step;position:relative;border:0;border-radius:0;background:transparent;padding-top:0}
.rd-process li>.icon-badge{display:none}
.rd-process li:before{content:"0" counter(step);display:flex;align-items:center;justify-content:center;width:78px;height:78px;background:#f5f4f1;border:1px solid #d4c8c7;color:#862932;font-size:26px;font-weight:500;margin:0 0 25px;position:relative}
.rd-cta{position:relative;isolation:isolate;background:#1b1e24;overflow:hidden}
.rd-cta:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#15181eef,#15181ea6),url('../images/editorial/atmosphere.webp') center/cover;pointer-events:none}
.rd-cta:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 87% 100%,#8d263743,transparent 60%);pointer-events:none}
.rd-cta .container-redan{position:relative}
.rd-cta a{box-shadow:0 9px 28px #92273436;transition:background 220ms,box-shadow 220ms}
.rd-about .rd-brand-panel{width:320px;min-height:290px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:23px;color:#d8d7d6;background:linear-gradient(#161a20aa,#161a20d9),url('../images/editorial/atmosphere.webp') center/cover;border:1px solid #ffffff1a;box-shadow:inset 0 -2px #8e3338}
.rd-brand-panel img{width:120px;height:120px;filter:drop-shadow(0 8px 24px #0006)}
.rd-brand-panel span{text-align:center;font-size:11px;line-height:1.8;letter-spacing:.1em;text-transform:uppercase}
.rd-faq{background:#eeede9}
.rd-faq .container-redan{display:grid;grid-template-columns:1fr 1.65fr;column-gap:60px}
.rd-faq .eyebrow-label{grid-column:1}.rd-faq h2{grid-column:1}.rd-faq .divide-y{grid-column:2;grid-row:1/span 3;max-width:none}
.rd-faq details{padding:22px 0;transition:background 220ms}
.rd-faq details[open]{border-bottom:1px solid #8b303a}
.rd-faq summary:focus-visible{outline:2px solid #8b303a;outline-offset:6px}
.rd-form-section{position:relative;background:radial-gradient(ellipse at 80% 80%,#8e263414,transparent 55%),#f2f1ee}
.rd-form-panel{box-shadow:0 22px 65px #25202a0d;border-top:2px solid #81262f;background:#fff}
.rd-equipment{display:block;width:250px;height:250px;object-fit:contain;margin:24px auto 0;filter:drop-shadow(0 18px 14px #171b2321);pointer-events:none}
.rd-service-visual{height:410px;margin-bottom:60px}
.rd-service-body aside>.card-redan{box-shadow:0 10px 30px #1f202508;border-top:2px solid #89313a}
.rd-service-body .space-y-10>div+div{padding-top:28px;border-top:1px solid #ddd7d4}
.rd-service-body aside li{line-height:1.65}
.rd-service-body aside li span.rounded-full{background:#772932}
.rd-company-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:start}
.rd-company-grid .rd-figure{height:620px}.rd-company-grid img{object-position:65% center}
.rd-company-details dl{border-radius:4px;border-top:2px solid #842b34;box-shadow:0 16px 35px #1d232509;background:#f5f4f1}
.rd-company-details dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.rd-contact-card,.rd-requisites,.rd-contact-form{box-shadow:0 12px 35px #24212809;border-color:#dcd5d2;background:linear-gradient(135deg,#fff,#fcfbf9)}
.rd-requisites{border-top:2px solid #842b34}.rd-contact-form{background:radial-gradient(ellipse at 100% 100%,#8b26340b,transparent 55%),#fff}
.rd-legal>div{border-left:2px solid #d8c9c6;padding-left:24px}.rd-legal>div+div{padding-top:8px}.rd-legal{background:linear-gradient(100deg,#8b263405,transparent)}
.rd-error-rule{height:80px;display:grid;place-items:center;background:radial-gradient(ellipse at center,#8c29320d,transparent 70%)}
.rd-error-rule span{width:100px;height:2px;background:linear-gradient(90deg,transparent,#8a2931,transparent)}
@media(max-width:1023px){.rd-company-grid{gap:30px}.rd-company-grid .rd-figure{height:500px}.rd-about .rd-brand-panel{width:100%;min-height:240px}.rd-service-visual{height:330px}.rd-faq .container-redan{column-gap:30px}}
@media(max-width:639px){.rd-card-media{aspect-ratio:1.7}.rd-panorama{height:240px}.rd-process ol:before{top:0;bottom:0;left:42px;right:auto;width:1px;height:auto}.rd-process li{padding-left:92px;min-height:135px}.rd-process li:before{position:absolute;left:8px;width:68px;height:68px;font-size:23px}.rd-faq .container-redan,.rd-company-grid{display:block}.rd-faq details{padding:20px 0}.rd-company-grid .rd-figure{height:250px;margin-bottom:35px}.rd-service-visual{height:255px;margin-bottom:35px}.rd-equipment{width:190px;height:190px}.rd-contact-card>div.flex{flex-wrap:wrap}.rd-contact-card a[href^="mailto"]{font-size:16px;overflow-wrap:anywhere}.rd-contact-card>div.flex>div{min-width:0}.rd-legal>div{padding-left:16px}}
@media(prefers-reduced-motion:reduce){.rd-service-card,.rd-card-media img,.rd-cta a,.rd-faq details{transition:none}.rd-service-card:hover,.rd-service-card:hover img{transform:none}}

.rd-image-note{margin:20px 0 0;font-size:11px;color:#77716d;letter-spacing:.02em}
[data-rd-service=fizicheskaya-ohrana] .rd-service-visual img{object-position:center top}

/* Header revision: independent of hero styles. */
[data-site-header] .rd-header-row{height:104px}
.rd-header-brand{gap:14px}
.rd-header-logo{width:76px;height:76px;object-fit:contain}
.rd-header-wordmark{display:flex;flex-direction:column;gap:5px;line-height:1.2}
.rd-header-name{font-size:23px;letter-spacing:.025em}
.rd-header-caption{font-size:12px}
.rd-map-caption{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:0 0 24px;font-size:15px;line-height:1.8}
.rd-map-caption span{color:#6c6967;font-size:13px}
.rd-yandex-map{display:block;width:100%;height:460px;border:1px solid #ded8d4;border-radius:12px;background:#eeede9}
.rd-map-section{background:#fff}
.rd-requisites-compact{box-shadow:none}
.rd-company-details .rd-figure{height:440px}
#obraschenie{scroll-margin-top:124px}
@media(min-width:1024px) and (max-width:1199px){.rd-header-cta{display:none}.rd-header-name{font-size:21px}}
@media(max-width:1023px){[data-site-header] .rd-header-row{height:84px}.rd-header-logo{width:60px;height:60px}.rd-header-brand{gap:10px}.rd-header-name{font-size:19px}.rd-header-caption{font-size:10px}[data-mobile-menu]>div{top:84px;max-height:calc(100dvh - 84px)}#obraschenie{scroll-margin-top:104px}}
@media(max-width:639px){.rd-map-caption{display:block}.rd-map-caption>a{display:inline-block;margin-top:12px}.rd-yandex-map{height:360px}.rd-company-details .rd-figure{height:250px}}

[data-site-header]{height:auto}
#map-heading{scroll-margin-top:130px}

/* Legal pages and independent analytics choice. */
.rd-policy{max-width:880px}.rd-policy h1{font-size:clamp(28px,4vw,42px);line-height:1.16;font-weight:700;margin:14px 0 20px;overflow-wrap:anywhere}.rd-policy-date{color:#736b66;margin-bottom:32px}.rd-policy .rd-legal h2{font-size:23px;line-height:1.3;font-weight:700;margin:32px 0 14px}.rd-policy .rd-legal p{font-size:16px;line-height:1.8;margin:14px 0}.rd-policy a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.rd-policy [id]{scroll-margin-top:130px}
.rd-cookie[hidden],[data-analytics-settings][hidden]{display:none}
.rd-cookie{position:fixed;z-index:100;bottom:16px;left:16px;right:16px;max-width:740px;margin:auto;background:#fffaf4;color:#292522;border:1px solid #d9c9bc;border-radius:12px;padding:14px 16px;box-shadow:0 6px 28px #0002;display:flex;gap:18px;align-items:center}
.rd-cookie p{font-size:13px;line-height:1.5;margin:0}.rd-cookie a{text-decoration:underline;text-underline-offset:2px}
.rd-cookie-actions{display:flex;flex-direction:row-reverse;gap:8px;flex-shrink:0;align-items:center}
.rd-cookie button{border:1px solid #cbbab0;border-radius:7px;padding:9px 12px;font-size:12px;line-height:1.4;font-weight:600;color:#6d2528;white-space:nowrap}
.rd-cookie [data-analytics-accept]{background:#8d282b;border-color:#8d282b;color:white;min-width:48px}
.rd-cookie button:focus-visible{outline:3px solid #c29a63;outline-offset:3px}
@media(max-width:600px){.rd-cookie{bottom:10px;left:10px;right:10px;padding:12px 14px;display:block}.rd-cookie-actions{margin-top:10px;justify-content:flex-start}.rd-cookie p{font-size:12px}}

/* Mobile call action; lifted above the cookie notice when it is open. */
.rd-mobile-call{display:none}
@media(max-width:767px){
 .rd-mobile-call{position:fixed;z-index:90;right:max(16px,env(safe-area-inset-right));bottom:max(calc(16px + env(safe-area-inset-bottom)),var(--rd-call-bottom,16px));display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#8d282b;color:#fff;border:1px solid #ffffff40;box-shadow:0 4px 18px #35101340;-webkit-tap-highlight-color:transparent}
 .rd-mobile-call:active{background:#702023}.rd-mobile-call:focus-visible{outline:3px solid #c29a63;outline-offset:4px}
 footer{padding-bottom:calc(80px + env(safe-area-inset-bottom))}
}
