/* Масштаб макета: 1rem = 100px при ширине 1680px, как в nko/brace. */
html{font-size:calc(100vw / 16.8)}

@media(min-width:1680px){html{font-size:100px}
}

@media(max-width:800px){html{font-size:calc(100vw / 4.2)}
}

:root{--green:#0e5640;--heading:#044e38;--text:#3c3c3c;--gray:#f1f3f4;--gutter:0.6rem}
*{box-sizing:border-box}
body{margin:0;background:var(--gray);color:var(--text);font-family:Geologica,Arial,sans-serif;font-size:0.18rem;font-weight:300}
button,input,textarea{font:inherit}
a{color:inherit;text-decoration:none}
a:hover{color:var(--green)}
button,a{outline-offset:0.05rem}
button{cursor:pointer}
img{display:block;max-width:100%}
h1,h2,h3,h4,p{margin:0}
h1,h2{color:var(--heading);font-weight:600}
h1,h2{font-size:0.4rem;line-height:1.25}
h3{font-weight:400}
ul{margin:0;padding:0;list-style:none}
[hidden]{display:none!important}
.site-shell{max-width:16.8rem;margin:0 auto}
.section-pad{padding:0.6rem var(--gutter)}
.site-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:0.23rem var(--gutter) 0.3rem;gap:0.4rem;z-index:10}
.brand{display:flex;align-items:center;gap:0.21rem;flex-shrink:0}
.brand-mark{width:1.16rem;height:1.16rem}
.brand-name{width:2.485rem;height:0.46rem}
.primary-nav{display:flex;align-items:center;gap:0.32rem}
.primary-nav #primary-menu>ul{display:flex;align-items:center;gap:0.32rem}
.primary-nav a{font-size:0.18rem;white-space:nowrap}
.primary-nav a[aria-current]{color:var(--green)}
.primary-nav li{position:relative}
.search-toggle{padding:0.08rem 0 0.08rem 0.08rem;border:0;background:none;color:inherit;line-height:1}
.search-toggle img{width:0.2rem;height:0.2rem}
.submenu{display:none;position:absolute;right:0;top:100%;padding-top:0.22rem;min-width:3rem}
.submenu>ul{background:#fff;color:var(--text);border-radius:0.12rem;padding:0.18rem;box-shadow:0 0.08rem 0.24rem #0002}
.submenu li>a{display:block;padding:0.1rem 0.14rem;font-size:0.16rem;white-space:normal}
.has-submenu:hover>.submenu,.has-submenu:focus-within>.submenu{display:block}
.submenu .submenu{left:100%;right:auto;top:0;padding-top:0}
.header-search{position:absolute;right:0.6rem;top:1.2rem;display:flex;background:white;padding:0.16rem;border-radius:0.12rem;box-shadow:0 0.08rem 0.24rem #0002;width:5rem}
.header-search input{min-width:0;flex:1;border:0.01rem solid #ccc;padding:0.14rem;color:var(--text)}
.header-search button,.button{border:0;border-radius:0.08rem;background:var(--green);color:#fff;padding:0.17rem 0.32rem;display:inline-block}
.button:hover{background:#073e2c;color:white}
.hero{height:9.2rem;color:#fff;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative}
.hero .site-header{padding-top:0.4rem;padding-bottom:0}
.hero a:hover{color:#fff9}
.hero .primary-nav a[aria-current]{color:white}
.hero-content{padding:0.76rem var(--gutter) 0.6rem;max-width:11.4rem}
.hero h1{color:white;font-size:0.62rem;line-height:0.58rem;font-weight:300;letter-spacing:-0.007rem}
.hero-copy{font-size:0.22rem;line-height:0.3rem;margin-top:0.3rem}
.hero-author{display:flex;align-items:center;gap:0.22rem;margin-top:0.5rem}
.hero-author img{width:0.87rem;height:0.87rem;border-radius:50%;object-fit:cover}
.hero-author p{font-size:0.16rem;line-height:1.25;font-weight:400;max-width:3.15rem}
.home-news{position:relative;background:white;border-radius:0.32rem 0.32rem 0 0;margin-top:-0.73rem;padding-top:0.85rem;padding-bottom:0.3rem}
.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:0.48rem;gap:0.24rem}
.all-link{display:flex;gap:0.12rem;align-items:center;font-size:0.18rem}
.all-link img{width:0.18rem;height:0.15rem}
.home-news-grid{display:grid;grid-template-columns:1.105fr 1fr;gap:1.04rem}
.news-image{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:0.12rem}
.lead-news h3{font-size:0.26rem;line-height:1.28;font-weight:500;margin:0.28rem 0 0.25rem}
.news-briefs article+article{border-top:0.01rem solid #ccc;margin-top:0.4rem;padding-top:0.4rem}
.news-briefs h3{font-size:0.24rem;line-height:0.3rem;margin-bottom:0.24rem}
time{font-size:0.16rem;color:var(--green);font-weight:300}
.home-events{background:white;padding-top:0.6rem;padding-bottom:0.85rem}
.home-events .section-heading{border-top:0.01rem solid #ccc;padding-top:0.55rem}
.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.62rem}
.event-card h3{font-size:0.24rem;line-height:0.3rem;margin:0.28rem 0 0.22rem}
.useful{padding-top:0.6rem;padding-bottom:0.6rem}
.useful h2{margin-bottom:0.48rem}
.useful-grid,.link-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.48rem 0.61rem}
.useful-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:2.08rem;background:white;padding:0.28rem 0.2rem;border-radius:0.2rem;overflow:hidden;font-size:0.24rem;line-height:0.3rem;font-weight:400}
.useful-card:is(:hover,:focus-visible){background:var(--green);color:white}
.card-arrow{width:0.32rem;height:0.32rem;margin-top:0.26rem;z-index:1}
.useful-card:is(:hover,:focus-visible) .card-arrow{filter:brightness(0) invert(1)}
.card-decoration{position:absolute;right:0;bottom:0;width:1.32rem;height:1.33rem;pointer-events:none}
.useful-card:is(:hover,:focus-visible) .card-decoration{filter:brightness(0) invert(1)}
.content-panel{background:white;border-radius:0.32rem;margin-bottom:0.3rem;min-height:4.8rem}
.content-panel h1{margin-bottom:0.45rem}
.breadcrumbs{display:flex;gap:0.16rem;align-items:center;font-size:0.16rem;color:var(--green);margin-bottom:0.26rem}
.page-heading{margin-bottom:0.45rem}
.page-heading h1{margin-bottom:0}
.content-narrow{max-width:10.2rem}
.rich-text{font-size:0.2rem;line-height:0.28rem;font-weight:400;overflow-wrap:anywhere}
.rich-text p{margin-bottom:0.24rem}
.rich-text h2{font-size:0.28rem;line-height:0.36rem;margin:0.38rem 0 0.24rem;color:var(--text);font-weight:500}
.rich-text h3{font-size:0.24rem;margin:0.3rem 0 0.2rem;font-weight:500}
.rich-text h4{font-size:0.22rem;margin:0.24rem 0 0.16rem;font-weight:500}
.rich-text a{color:var(--green);text-decoration:underline;text-underline-offset:0.04rem}
.rich-text ul,.rich-text ol{padding-left:0.28rem;margin:0.24rem 0;list-style:initial}
.rich-text ol{list-style:decimal}
.rich-text li{margin-bottom:0.14rem}
.rich-text img{height:auto;border-radius:0.2rem;margin:0.35rem 0}
.rich-text table{border-collapse:collapse;width:100%;margin:0.35rem 0;font-size:0.18rem}
.rich-text th,.rich-text td{text-align:left;border-bottom:0.01rem solid #ccc;padding:0.2rem 0.24rem 0.2rem 0;vertical-align:top}
.rich-text blockquote{margin:0.3rem 0;padding:0.2rem 0.4rem;border-left:0.04rem solid var(--green);max-width:8.2rem;background:var(--gray)}
.rich-text iframe{max-width:100%;aspect-ratio:16/9;height:auto;border:0}
.link-grid{margin:0.35rem 0 0.5rem}
.link-grid .useful-card{background:#f5f5f5}
.link-grid .useful-card:hover{background:var(--green)}
.member-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0.65rem 0.4rem;margin-top:0.5rem}
.member-photo{width:100%;aspect-ratio:280/337;object-fit:cover;border-radius:0.2rem;object-position:center 20%}
.member-card h2,.member-card h3{font-size:0.22rem;line-height:0.28rem;color:var(--text);font-weight:500;margin:0.2rem 0 0.14rem}
.member-card p{font-size:0.16rem;line-height:0.21rem}
.member-card a:hover h2,.member-card a:hover h3{color:var(--green)}
.news-row{display:grid;grid-template-columns:1.2rem minmax(0,1fr) 4rem;gap:0.5rem;align-items:start;padding:0.4rem 0;border-bottom:0.01rem solid #ccc}
.news-row:first-child{padding-top:0}
.news-row-date{font-size:0.16rem;color:var(--green);line-height:0.24rem}
.news-row h2,.news-row h3{font-size:0.24rem;line-height:0.3rem;font-weight:400;color:var(--text);margin-bottom:0.25rem}
.news-row-body p,.news-row-body .rich-text{font-size:0.18rem;line-height:0.26rem;font-weight:300}
.news-row-image{width:4rem;aspect-ratio:1.5;object-fit:cover;border-radius:0.12rem}
.pagination{display:flex;gap:0.12rem;justify-content:center;align-items:center;margin:0.6rem 0 0;font-size:0.18rem}
.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:0.44rem;min-height:0.44rem;padding:0.08rem 0.14rem}
.pagination .active,.pagination [aria-current],.pagination .current{background:var(--green);color:#fff;border-radius:0.08rem}
.article-columns{display:grid;grid-template-columns:minmax(0,10.2rem) minmax(2.5rem,1fr);gap:1rem}
.article-main h1{line-height:1.25}
.article-main>.news-image,.article-image{width:100%;border-radius:0.2rem;margin:0.32rem 0;aspect-ratio:1.5;object-fit:cover}
.article-sidebar{padding-top:0.7rem}
.article-sidebar h2{font-size:0.26rem;margin-bottom:0.3rem}
.article-sidebar article,.article-sidebar li{border-bottom:0.01rem solid #ccc;padding:0.24rem 0}
.article-sidebar h3{font-size:0.2rem;line-height:0.27rem;margin-bottom:0.15rem}
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.16rem;margin-top:0.4rem}
.gallery img{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:0.12rem;cursor:zoom-in}
.document-list a{color:var(--green)}
.document-list li,.document-item{margin-bottom:0.3rem}
.staff-list article{margin:0.3rem 0}
.staff-list h2,.staff-list h3{font-size:0.22rem;color:var(--text);margin-bottom:0.12rem}
.subnav{display:flex;gap:0.3rem;flex-wrap:wrap;margin:0 0 0.5rem}
.subnav a{padding-bottom:0.2rem;border-bottom:0.03rem solid transparent}
.subnav a:hover,.subnav a[aria-current]{border-color:var(--green)}
.contacts-panel{display:grid;grid-template-columns:minmax(0,6.13rem) minmax(0,6.15rem);gap:0.6rem;justify-content:space-between;padding-top:0.7rem}
.contacts-copy h3{font-size:0.2rem;margin:0.4rem 0 0.28rem}
.contact-form{display:flex;flex-direction:column;gap:0.15rem}
.contact-form input:not([type=checkbox]),.contact-form textarea{width:100%;border:0.01rem solid #ccc;background:#fff;border-radius:0.08rem;padding:0.18rem 0.2rem;font-size:0.18rem;color:var(--text)}
.contact-form textarea{height:1.86rem;resize:vertical}
.contact-form .button{align-self:flex-start;min-width:1.8rem}
.consent{display:flex;align-items:flex-start;gap:0.12rem;font-size:0.14rem;line-height:0.21rem}
.consent input{accent-color:var(--green);width:0.18rem;height:0.18rem;flex-shrink:0}
.consent a{text-decoration:underline;color:var(--green)}
.captcha-row{display:flex;align-items:center;gap:0.12rem;flex-wrap:wrap}
.captcha-row button{font-size:0.13rem;border:0;background:transparent;color:var(--green);padding:0}
.captcha-row label{flex:1;min-width:1.4rem}
.captcha-row input{font-size:0.14rem!important;padding:0.12rem!important}
.form-page{max-width:6.15rem}
.form-error{padding:0.15rem;color:#8f2929;background:#fff0f0;border-radius:0.08rem}
.form-success p{margin:0.25rem 0;line-height:0.28rem}
.site-footer{padding:0.4rem var(--gutter);border-radius:0.32rem 0.32rem 0 0}
.home-page .site-footer{background:white}
.footer-top{display:flex;gap:1rem;align-items:flex-start}
.footer-contacts{width:3.7rem;flex-shrink:0}
.site-footer .brand-mark{width:1rem;height:1rem}
.footer-address{display:flex;flex-direction:column;gap:0.2rem;margin:0.5rem 0}
.footer-address .phone{font-size:0.26rem;font-weight:700}
.social-links{display:flex;gap:0.12rem;min-height:0.23rem}
.social-links a{display:block;height:0.23rem;background-image:url('../../images/1-2-imgSocial.svg');background-repeat:no-repeat;background-size:1.02rem 0.23rem}
.footer-navigation{display:grid;grid-template-columns:1.7fr 1fr .7fr;gap:0.5rem;flex:1}
.footer-column:first-child{grid-column:3;grid-row:1}
.footer-column:nth-child(2){grid-column:1;grid-row:1 / span 2}
.footer-column:nth-child(3){grid-column:2;grid-row:1 / span 2}
.footer-column:nth-child(4){grid-column:3;grid-row:2}
.footer-heading{display:block;font-size:0.2rem;color:var(--green);text-transform:uppercase;font-weight:500;margin-bottom:0.28rem}
.footer-column ul{display:flex;flex-direction:column;gap:0.2rem}
.footer-column:nth-child(2) ul{display:grid;grid-auto-flow:column;grid-template-rows:repeat(5,auto);column-gap:0.3rem}
.footer-column li a{font-size:0.16rem;line-height:0.23rem}
.copyright{margin-top:0.8rem;font-size:0.18rem}
.cookie-notice{position:fixed;bottom:0.18rem;left:50%;transform:translateX(-50%);z-index:50;display:flex;align-items:center;gap:0.24rem;padding:0.16rem 0.24rem;border-radius:0.12rem;background:#fff;box-shadow:0 0.03rem 0.25rem #0003;font-size:0.14rem;max-width:calc(100% - 0.4rem);width:max-content}
.cookie-notice a{text-decoration:underline;color:var(--green)}
.cookie-notice button{background:var(--green);color:white;border:0;border-radius:0.08rem;padding:0.12rem 0.22rem}
.visually-hidden,.honeypot{position:absolute;width:0.01rem;height:0.01rem;padding:0;margin:-0.01rem;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:0.15rem;top:-1rem;z-index:100;background:white;padding:0.15rem}
.skip-link:focus{top:0.15rem}
.image-dialog::backdrop{background:#000b}
.search-results article{padding:0.25rem 0;border-bottom:0.01rem solid #ccc}
.search-results h2{font-size:0.25rem;margin-bottom:0.15rem}
.search-results p{line-height:0.27rem}
.search-form{display:flex;gap:0.15rem;margin-bottom:0.35rem}
.search-form input{padding:0.15rem;border:0.01rem solid #ccc;border-radius:0.08rem;flex:1;min-width:0}
.empty-state{padding:0.35rem 0;color:#666}

.page-heading .rich-text{margin-top:0.4rem}
.page-heading>p{font-size:0.22rem;line-height:0.3rem;margin:0.3rem 0}
.page-heading>time{display:block;margin-top:0.24rem}
.document-item{display:flex;align-items:flex-start;gap:0.24rem}
.document-item img{width:0.49rem;height:0.55rem;object-fit:contain}
.document-item a{color:var(--green);font-size:0.2rem;line-height:0.28rem}
.document-item small{display:block;margin-top:0.1rem;font-size:0.16rem}
.staff-list{max-width:10.2rem}
.staff-list article{padding:0.25rem 0;border-bottom:0.01rem solid #ddd}
.staff-list p{font-size:0.2rem;line-height:0.28rem}
.rich-text+ .member-grid{margin-top:0.6rem}

.search-form>label{position:absolute;width:0.01rem;height:0.01rem;overflow:hidden;clip:rect(0,0,0,0)}
.search-results .news-row{display:block}
.search-results .news-row-body{max-width:10.2rem}


/* Поля поиска: раздельные элементы и спокойный видимый фокус. */
.header-search{gap:0.12rem}
.header-search input{border-radius:0.08rem}
.header-search button{flex-shrink:0}
.header-search input:focus,.search-form input:focus,.contact-form input:not([type=checkbox]):focus,.contact-form textarea:focus{outline:none;box-shadow:none;border-color:#7c9b90}
.search-toggle:focus-visible,.header-search button:focus-visible,.search-form button:focus-visible{outline:0.02rem solid #0e564080;outline-offset:0.03rem}
.hero .search-toggle:focus-visible{outline-color:#ffffff99}
.search-results .news-row{display:block}
.search-result-type{display:block;font-size:0.14rem;color:var(--green);margin-bottom:0.1rem}


.cookie-notice button{flex-shrink:0}

/* Фон первого экрана занимает окно, контент сохраняет ширину макета. */
.home-page .site-shell{max-width:none}

.home-page main>section:not(.hero),.home-page .site-footer,.hero .site-header{max-width:16.8rem;margin-left:auto;margin-right:auto}

.hero-content{margin-left:max(0rem,calc((100% - 16.8rem)/2))}


.menu-toggle{display:none}

.hero .primary-nav #primary-menu .submenu a{color:var(--text)}

.primary-nav #primary-menu .submenu a:is(:hover,:focus-visible),.hero .primary-nav #primary-menu .submenu a:is(:hover,:focus-visible),.hero .primary-nav #primary-menu .submenu a[aria-current]{color:var(--green);background:#f1f3f4;border-radius:.06rem}
.primary-nav #primary-menu .submenu a:focus-visible{outline:none}

.image-dialog{background:transparent;padding:.44rem 0 0;border:0;border-radius:0;max-width:94vw;max-height:96vh;overflow:visible}
.image-dialog img{display:block;width:auto;height:auto;max-width:94vw;max-height:calc(96vh - .44rem);object-fit:contain;border-radius:0}
.image-dialog button{position:absolute;right:0;top:0;margin:0;padding:0;width:.4rem;height:.4rem;min-width:.32rem;min-height:.32rem;background:transparent;border:0;color:white;font-family:Arial,sans-serif;font-size:.36rem;line-height:1;cursor:pointer}
