/* WordPress shell, content templates and small-screen safeguards. */
body.reference-version{min-height:100dvh;display:flex;flex-direction:column;margin:0;overflow-x:clip}
#main{flex:1;min-width:0;width:100%}.footer{flex-shrink:0}.header{top:var(--admin-offset,0px)}
.dark-top>.r2-plan.hero-contours{top:0}.header-space{flex-shrink:0}
.header #navigation{white-space:nowrap}.header nav>a,.mega-toggle{font-size:inherit!important;font-family:inherit;font-weight:400}
.service-group-heading a{text-decoration:none}.card-detail-link{display:inline-flex;text-decoration:none;align-items:center;gap:12px}
.footer-nav{display:flex;flex-wrap:wrap;gap:18px;padding:0 0 28px;font-size:14px}.footer-nav a{text-decoration:none}
.inner-hero{background:#eceeeb;padding:40px 0 70px;position:relative;overflow:hidden}
.inner-hero>.wrap{position:relative}.inner-hero:before{content:'';position:absolute;width:45vw;height:100%;right:0;top:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 85px,#91a5af12 86px,#91a5af12 87px);pointer-events:none}
.inner-hero h1{font-family:Lora,serif;font-weight:400;max-width:1000px;font-size:clamp(32px,3.5vw,58px);line-height:1.15;margin:20px 0 24px;letter-spacing:-.035em}
.inner-hero p{max-width:850px;font-size:20px;line-height:1.7;color:#526977}.inner-hero .button{margin-top:24px}
.breadcrumbs.wrap{width:100%;display:flex;flex-wrap:wrap;gap:10px;font-size:14px;margin-bottom:32px;color:#627987}.breadcrumbs a{text-decoration:none}
.page-content{font-size:18px;line-height:1.75}.page-content h2{font-family:Lora,serif;font-size:clamp(28px,2.4vw,40px);font-weight:400;line-height:1.25;margin:0 0 28px}.page-content h3{font-size:24px;line-height:1.35}
.page-content p{max-width:920px;color:#526977}.page-content>img{max-width:420px;height:auto}
.page-content ul{padding-left:24px;margin:20px 0}.page-content li{padding:6px 0}.page-content strong{color:#101e28}
.service-detail{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:50px;padding:46px 0;border-bottom:1px solid #d1d9dc}
.service-detail:first-child{padding-top:0}.service-detail ul{margin:0;list-style:none;padding:0}.service-detail li{position:relative;padding:9px 0 9px 28px;border-bottom:1px solid #d1d9dc66}.service-detail li:before{content:'+';position:absolute;left:0;color:#7392a3}
.service-catalog>.reference-service-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.service-catalog .reference-service-card{height:auto;min-height:250px}
.about-editorial{display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.about-principles{background:#e9efef;padding:36px}.about-principles h3{margin-top:0}
.team-grid,.publication-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.team-grid img,.publication-grid img{width:100%;height:330px;object-fit:cover}.team-grid a,.publication-grid a{text-decoration:none}.team-grid h3{font-family:Lora,serif;font-size:26px;font-weight:400}.publication-grid h2{font-size:25px}
.benefits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;list-style:none;padding:0!important}.benefits-grid li{background:#eceeeb;padding:28px!important;border-left:2px solid #9bb3c0}
.vacancy-list>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;border-top:1px solid #d1d9dc;text-decoration:none;transition:color .3s,padding .3s}.vacancy-list>a:hover{color:#5d8499;padding-left:10px}.vacancy-list h3{font-size:24px;font-weight:500;margin:0}
.map-section{background:#f6f7f5}.map-section iframe{width:100%;height:430px;border:0;display:block;filter:saturate(.65)}.topic-filter a{border:1px solid #c4cfd5;border-radius:30px;padding:8px 18px;text-decoration:none;font-size:16px}
.consult-form textarea{font:inherit;color:inherit;background:transparent;border:1px solid #708089;border-radius:2px;padding:12px;width:100%;resize:vertical}.consult-form label{display:flex;flex-direction:column;gap:10px}.consult-form small{display:block;font-size:14px;line-height:1.6}.consult-form button:disabled{opacity:.6;cursor:wait}.ac-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
dialog{max-height:calc(100dvh - 32px);overflow:auto}dialog .consult-form{color:inherit}.contact-section{scroll-margin-top:var(--header-height,104px)}
.page-content .service-detail,.benefits-grid li,.team-grid article,.publication-grid article{transition:background-color .4s,box-shadow .4s}
@media(hover:hover){.service-detail:hover{background:#e7edef30}.benefits-grid li:hover{background:#e1e9e9}.team-grid img,.publication-grid img{transition:filter .5s}.team-grid article:hover img,.publication-grid article:hover img{filter:saturate(.8) brightness(1.04)}}
@media(max-width:1100px){.header nav{gap:12px}.inner-hero p{font-size:18px}.service-detail{gap:30px}.about-editorial{gap:30px}}
@media(max-width:800px){
 .header #navigation{top:calc(var(--admin-offset,0px) + 80px);max-height:calc(100dvh - var(--admin-offset,0px) - 80px);overflow-y:auto;white-space:normal;overscroll-behavior:contain}
 .nav-open{overflow:hidden!important}.mega-menu{max-height:none;overflow:visible}.mega-columns{display:grid;grid-template-columns:1fr}.mega-heading{font-size:23px!important}
 .inner-hero{padding:24px 0 48px}.inner-hero p{font-size:18px}.breadcrumbs{font-size:12px!important}.service-detail,.about-editorial{grid-template-columns:1fr;gap:14px}.service-detail{padding:32px 0}.service-detail h2{font-size:28px}
 .service-catalog>.reference-service-cards,.benefits-grid,.team-grid,.publication-grid{grid-template-columns:1fr}.page-content{font-size:17px}.about-principles{padding:24px}.map-section iframe{height:330px}.footer-nav{gap:14px;font-size:14px}.vacancy-list h3{font-size:20px}.consult-form textarea{font-size:16px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Inner-page editorial composition: one solid object, analytical contours and quiet material contrast. */
.inner-hero{padding:32px 0 58px;background:linear-gradient(118deg,#f0f1ee 0%,#ecefeb 55%,#e4ebeb 100%)}
.inner-hero:before{width:55%;opacity:.8;background:radial-gradient(ellipse at 70% 64%,#bcd5e359 0%,transparent 62%)}
.inner-hero:after{content:'';position:absolute;inset:auto 0 0 auto;width:38%;height:1px;background:linear-gradient(90deg,transparent,#8ba7b6aa)}
.inner-hero .breadcrumbs{margin-bottom:24px;position:relative;z-index:2}
.inner-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr);gap:44px;align-items:center;position:relative;z-index:1}
.inner-copy{padding:12px 0 28px}.inner-hero h1{font-size:clamp(32px,3.5vw,52px);max-width:820px;margin:20px 0 24px}.inner-hero p{max-width:780px;line-height:1.65}
.inner-hero .button{background:#101e28;color:#ededed;border-color:#101e28}.inner-hero .button:hover{background:#2c4757}
.inner-art{margin:0;position:relative;width:100%;max-width:480px;justify-self:end;isolation:isolate}
.inner-art:before{content:'';position:absolute;left:14%;right:0;bottom:3%;height:20%;background:radial-gradient(ellipse,#64798626,transparent 65%);filter:blur(16px);z-index:-1}
.inner-art img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 15px 20px #101e2810);transition:transform .8s cubic-bezier(.2,.65,.3,1),filter .8s}
.inner-guide{position:absolute;inset:0 0 0 auto;width:66%;pointer-events:none;opacity:.34;mask-image:linear-gradient(90deg,transparent,#000 30%);color:#55788c}
.inner-guide svg{width:100%;height:100%;overflow:visible;fill:none;stroke:currentColor;stroke-width:.8;vector-effect:non-scaling-stroke}
.inner-guide .guide-frame{stroke:#9c998e;opacity:.7}.inner-guide .guide-steps{stroke-width:1.15;opacity:.9}.inner-guide .guide-ledger{opacity:.3}
.page-content .service-detail,.page-content .service-detail:first-child{padding:32px;margin:0 0 14px;border:1px solid transparent;border-bottom-color:#d1d9dc;border-radius:3px;gap:46px;position:relative;transition:background .4s,border-color .4s,box-shadow .4s}
.page-content .service-detail h2{margin-bottom:12px}.page-content .service-detail ul{padding:0;margin:0}.page-content .service-detail li:last-child{border-bottom:0}
.page-content .service-detail:hover{background:#f0f5f5;border-color:#d8e4e8;box-shadow:0 14px 40px #101e2805}
.page-content .service-detail:before{content:'';position:absolute;left:0;top:32px;bottom:32px;width:2px;background:#7599ad;transform:scaleY(0);transform-origin:top;transition:transform .6s}
.page-content .service-detail:hover:before{transform:scaleY(1)}
@media(hover:hover){.inner-art:hover img{transform:translateY(-5px);filter:drop-shadow(0 20px 26px #101e281a)}}
@media(prefers-reduced-motion:no-preference){
 .inner-art{animation:inner-object-reveal 1.2s cubic-bezier(.18,.7,.25,1) both}
 .inner-guide path{stroke-dasharray:2200;stroke-dashoffset:2200;animation:inner-contour-draw 3.8s ease .35s both}.inner-guide .guide-steps{animation-delay:.8s}.inner-guide .guide-ledger{animation-delay:1.1s}
 @keyframes inner-object-reveal{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
 @keyframes inner-contour-draw{to{stroke-dashoffset:0}}
}
@media(max-width:1100px){.inner-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:24px}.inner-hero h1{font-size:40px}.inner-art{max-width:380px}.page-content .service-detail{gap:28px;padding:28px}}
@media(max-width:800px){
 .inner-hero{padding:24px 0 36px}.inner-layout{grid-template-columns:1fr;gap:12px}.inner-copy{padding-bottom:4px}.inner-hero h1{font-size:36px;line-height:1.18}.inner-art{width:min(70%,330px);justify-self:end;margin:0 0 -8px}.inner-guide{width:100%;opacity:.26;mask-image:linear-gradient(180deg,transparent,#000 60%)}
 .page-content .service-detail,.page-content .service-detail:first-child{padding:24px 20px;gap:10px}.page-content .service-detail h2{font-size:28px}.page-content .service-detail:before{top:24px;bottom:24px}.inner-hero p{font-size:18px}
}
@media(max-width:380px){.inner-hero h1{font-size:32px}.inner-art{width:78%}.page-content .service-detail,.page-content .service-detail:first-child{padding:22px 16px}}
