/* ARMA «Связь». Shared tokens and production public surfaces. */
:root{
 --green:#596443;--green-dark:#343e30;--olive:#596443;--deep:#343e30;
 --ink:#2a3526;--muted:#61695c;--line:#dfe4da;--cream:#f2f5ef;--wash:#f2f5ef;--paper:#fff;
 --arma-paper:#fff;--arma-surface:#fff;--arma-ink:#2a3526;--arma-muted:#61695c;
 --arma-accent:#596443;--arma-accent-strong:#343e30;--arma-line:#dfe4da;--arma-wash:#f2f5ef;--arma-focus:#596443;
 --arma-radius-control:12px;--arma-radius-card:20px;--arma-radius-badge:24px;
 --arma-font:"Avenir Next","Trebuchet MS",Arial,sans-serif;
 --arma-leading-heading:1.15;--arma-leading-body:1.65;
}
[hidden]{display:none!important}
body.connection-site{margin:0;background:#fff;color:var(--ink);font-family:var(--arma-font);font-weight:400;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.connection-site :is(button,input,select,textarea){font-family:inherit}
body.connection-site :is(h1,h2,h3){font-family:var(--arma-font);font-weight:700;letter-spacing:-.035em;text-wrap:balance;line-height:1.16}
body.connection-site h1{font-size:clamp(36px,4.4vw,62px)}
body.connection-site h2{font-size:32px}
body.connection-site h3{font-size:23px}
body.connection-site p{line-height:1.75}
body.connection-site .wrap{width:calc(100% - 104px);max-width:1336px;margin-inline:auto}
body.connection-site :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--green);outline-offset:4px}
body.connection-site .button{min-height:50px;padding:13px 23px;border-radius:28px;border:1px solid var(--green);background:var(--green);color:#fff;font-size:14px;font-weight:600;line-height:1.5;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:background .15s,border-color .15s}
body.connection-site .button:hover{background:var(--green-dark);border-color:var(--green-dark)}
body.connection-site :is(.button-outline,.button[data-variant="secondary"]){background:transparent;border-color:#a9b29e;color:var(--green-dark)}
body.connection-site .button-outline:hover{background:#edf2e6;border-color:var(--green)}
body.connection-site .text-link{min-height:44px;display:inline-flex;align-items:center;font-size:14px;font-weight:500;line-height:1.5;text-decoration:none;border:0;padding:6px 0;gap:8px}
body.connection-site .text-link:hover{text-decoration:underline;text-underline-offset:5px}
body.connection-site .eyebrow{font-size:12px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--green);gap:9px;margin-bottom:18px}
body.connection-site :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){background:#fff;color:var(--ink);border:1px solid #a9b39e;border-radius:12px;min-height:48px;line-height:1.5}
body.connection-site input[type="checkbox"]{accent-color:var(--green)}
body.connection-site .site-header{position:relative;top:auto;background:#fff;border:0;box-shadow:none;z-index:20}
body.connection-site .header-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:26px;min-height:112px}
body.connection-site .logo{display:inline-flex;align-items:center;width:146px;flex:none}
body.connection-site .logo-image{width:100%;height:auto;max-height:none;object-fit:contain}
body.connection-site .desktop-nav{gap:3px;font-size:14px}
body.connection-site .desktop-nav a{padding:9px 12px;border-radius:22px;white-space:nowrap}
body.connection-site .desktop-nav a:hover{background:var(--cream);color:var(--green-dark)}
body.connection-site .desktop-nav a[aria-current]{background:var(--cream);font-weight:600;text-decoration:none}
body.connection-site .header-actions{gap:18px;font-size:13px}
body.connection-site .request-toggle{background:transparent;color:var(--ink);border:0;min-height:44px;padding:6px;gap:8px}
body.connection-site .cart-count{border-radius:50%;background:var(--cream);color:var(--ink);font-size:11px;min-width:22px;height:22px;line-height:22px;padding:0 5px;text-align:center}
body.connection-site .account-link{gap:8px;min-height:44px;align-items:center}
body.connection-site .menu-toggle{border:0;border-radius:12px;min-width:44px;min-height:44px;background:transparent;color:var(--ink)}
body.connection-site #mobile-nav{padding:18px 24px 25px;background:#f5f7f1;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
body.connection-site #mobile-nav a{border:0;border-radius:12px;padding:12px 16px;min-height:44px}
body.connection-site #mobile-nav a:hover{background:#e5edd9}
body.connection-site .page-intro{padding-top:40px;padding-bottom:30px}
body.connection-site .page-intro h1{margin-bottom:18px;max-width:980px}
body.connection-site .intro-copy{font-size:16px;max-width:720px;color:var(--muted)}
body.connection-site .crumbs{font-size:12px;color:var(--muted);margin-bottom:24px;gap:10px}
body.connection-site .section{padding-block:45px}
body.connection-site .section-heading{gap:24px;margin-bottom:28px;align-items:center}
body.connection-site .section-heading p{font-size:14px;color:var(--muted)}
body.connection-site .section-heading h2{font-size:30px;line-height:1.25}
body.connection-site .connection-hero{position:relative;text-align:center}
body.connection-site .connection-hero h1{font-weight:700;margin:0}
.connection-hero-copy h1 span{color:var(--green)}
.connection-hero .hero-description{color:var(--muted);padding:0;font-weight:400}
.connection-hero-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.connection-kicker{color:var(--green);font-size:12px;margin:0 0 23px}
.connection-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-block:12px 48px}
.connection-paths>a{position:relative;display:block;padding:25px;border:1px solid #e0e7d8;background:#f3f6ee;border-radius:20px;transition:background .15s,border-color .15s}
.connection-paths>a:hover{background:#ebf1e4;border-color:#99aa87}
.connection-paths>a>.arma-icon{width:26px;height:26px;color:var(--green)}
body.connection-site .connection-paths h2{font-size:21px;margin:16px 0 7px;line-height:1.3}
.connection-paths p{font-size:13px;color:var(--muted);margin:0}
.connection-path-arrow{position:absolute;right:25px;top:23px;font-size:22px;color:var(--green)}
.connection-stories{padding-bottom:25px}
.connection-mosaic{display:grid;grid-template-columns:1.35fr 1fr .8fr;gap:20px}
.connection-mosaic article{position:relative;overflow:hidden;border-radius:20px;background:#e7efdc;min-height:360px}
.connection-mosaic article>img{display:block;width:100%;height:100%;object-fit:cover;object-position:35% center}
.connection-mosaic article:not(.mosaic-material)::after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(25,40,21,.85));pointer-events:none}
.connection-mosaic article>div{position:absolute;bottom:24px;left:25px;right:24px;color:#fff;z-index:1}
.connection-mosaic article>div>span{font-size:12px;color:#e2e9d9}
body.connection-site .connection-mosaic h3{font-size:25px;margin:10px 0 16px;line-height:1.2;color:inherit}
.connection-mosaic a{display:inline-flex;min-height:44px;align-items:center;font-size:13px;color:inherit}
.connection-mosaic a:hover{text-decoration:underline;text-underline-offset:5px}
.connection-mosaic .mosaic-material>img{height:220px;object-fit:contain;padding:15px;mix-blend-mode:multiply}
.connection-mosaic .mosaic-material>div{color:var(--green-dark)}
.connection-mosaic .mosaic-material>div>span{color:var(--green)}
body.connection-site .category-grid{gap:22px}
body.connection-site .category-card{border:1px solid var(--line);background:var(--cream);border-radius:20px;overflow:hidden;padding:22px}
body.connection-site .category-card:hover{background:#eaf0e3}
body.connection-site .category-image{height:230px;padding:15px;position:relative}
body.connection-site .category-image img{height:100%;width:100%;object-fit:contain}
body.connection-site .category-copy h3{font-size:25px;margin-top:10px}
body.connection-site .category-copy p{font-size:13px;color:var(--muted)}
body.connection-site .category-top{font-size:11px;color:var(--green)}
body.connection-site .catalog-intro{border:0;gap:24px;padding:0 0 24px;font-size:14px}
body.connection-site .mission{margin-block:35px;background:var(--cream);padding:44px;border-radius:24px;border:1px solid var(--line);gap:40px}
body.connection-site .mission h2{font-size:43px;font-weight:700;line-height:1.2}
body.connection-site .mission em{font-style:normal;color:var(--green)}
body.connection-site .mission-side{font-size:16px;color:var(--muted)}
body.connection-site .mission-bottom{font-size:14px;gap:22px}
body.connection-site .mission-bottom p{color:var(--muted)}
body.connection-site .workshop-gallery{gap:22px}
body.connection-site .workshop-photo{border-radius:20px;overflow:hidden}
body.connection-site .workshop-gallery figcaption{font-size:13px;color:var(--muted);padding-top:14px}
body.connection-site .steps{border:0;gap:20px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
body.connection-site .step{padding:27px;background:var(--cream);border:1px solid var(--line);border-radius:20px}
body.connection-site .step h3{font-size:22px;margin-top:20px}
body.connection-site .step p{font-size:14px;color:var(--muted)}
body.connection-site .step-num{font-size:14px;color:var(--green);font-weight:600}
body.connection-site .article-grid{gap:22px;align-items:stretch}
body.connection-site .article-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;padding-bottom:24px}
body.connection-site .article-card>h3,body.connection-site .article-meta{padding-inline:23px}
body.connection-site .article-meta{font-size:12px;line-height:1.5;margin-block:18px 10px}
body.connection-site .article-meta>span:last-child{flex-shrink:0}
body.connection-site .article-card h3{width:100%;max-width:none;margin:0;font-size:21px;font-weight:600;line-height:1.4;letter-spacing:-.02em;text-wrap:pretty;word-break:normal;overflow-wrap:break-word;hyphens:none}
body.connection-site .article-image{flex-shrink:0;border-radius:0;overflow:hidden}
body.connection-site .article-image img{width:100%;object-fit:cover}
body.connection-site .article-number{border-radius:20px;background:#fff;color:var(--green);font-size:12px}
@media(min-width:601px) and (max-width:1050px){body.connection-site .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
body.connection-site .faq{gap:50px}
body.connection-site .faq h2{font-size:36px}
body.connection-site .faq-list details{padding:20px 24px;border:1px solid var(--line);border-radius:18px;margin-bottom:12px;background:#fff}
body.connection-site .faq-list summary{font-size:16px;min-height:32px;line-height:1.5}
body.connection-site .faq-list details p{font-size:14px;color:var(--muted)}
body.connection-site .cta{background:var(--cream);color:var(--ink);border:1px solid var(--line);border-radius:24px;padding:40px;margin-block:45px 65px;gap:35px}
body.connection-site .cta h2{font-size:38px}
body.connection-site .cta p{font-size:15px;color:var(--muted)}
body.connection-site .footer{background:#fff;color:var(--ink);border-top:1px solid var(--line);padding-block:45px 24px}
body.connection-site .footer .logo{width:146px}
body.connection-site .footer .logo-image{background:transparent;padding:0}
body.connection-site .footer-main{grid-template-columns:1fr 1fr 1fr 1.15fr;gap:30px;margin-bottom:28px}
body.connection-site .footer-main p{font-size:12px;color:var(--muted)}
body.connection-site .footer-main a:not(.logo){font-size:13px;color:var(--ink);min-height:30px}
body.connection-site .footer-label{font-size:12px;color:var(--green);text-transform:none;letter-spacing:0;font-weight:600}
body.connection-site .footer-bottom{border-color:var(--line);font-size:12px;color:var(--muted);gap:20px;flex-wrap:wrap}
body.connection-site .filter-pills,body.connection-site .arma-tabs{gap:10px;border:0;padding:0;flex-wrap:wrap}
body.connection-site .filter-pill,body.connection-site .arma-tabs>a{border:1px solid var(--line);border-radius:24px;padding:10px 18px;min-height:44px;font-size:13px;background:#fff;color:var(--ink);text-decoration:none}
body.connection-site :is(.filter-pill.active,.arma-tabs>a[aria-current]){background:var(--green);color:#fff;border-color:var(--green)}
body.connection-site .filter-pill:hover{border-color:var(--green)}
body.connection-site .shop-catalog-controls{border:0;padding:23px;background:var(--cream);border-radius:20px;margin:23px 0 10px;gap:18px;grid-template-columns:minmax(0,2fr) minmax(130px,1fr) minmax(170px,1.2fr) auto}
body.connection-site .shop-catalog-controls label{font-size:12px}
body.connection-site .shop-catalog-count{padding-block:20px;font-size:13px}
body.connection-site .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
body.connection-site .store-product-card{padding:0;border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden}
body.connection-site .product-image{display:block;position:relative;aspect-ratio:1.25;height:auto;padding:25px;background:var(--cream);border:0;overflow:hidden}
body.connection-site .product-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .18s}
body.connection-site .product-image:hover img{transform:scale(1.035)}
body.connection-site .product-card .arma-card-body{padding:20px 23px 23px}
body.connection-site .product-card h3{font-size:21px;margin:12px 0 10px;font-weight:600;line-height:1.4}
body.connection-site .product-meta{font-size:12px;color:var(--muted);gap:12px}
body.connection-site .store-availability{font-size:12px;color:var(--muted);margin:0 0 16px}
body.connection-site .product-bottom{border-top:1px solid var(--line);padding-top:16px;gap:16px}
body.connection-site .product-bottom strong{font-size:18px;font-weight:600}
body.connection-site .product-bottom a{font-size:13px;color:var(--green);min-height:44px;display:inline-flex;align-items:center}
body.connection-site .product-detail{gap:55px;padding-block:15px 40px}
body.connection-site .detail-photo{background:var(--cream);border:1px solid var(--line);border-radius:24px;overflow:hidden;padding:28px}
body.connection-site .detail-photo img{object-fit:contain}
body.connection-site .detail-photo>span{font-size:12px;border-radius:20px;background:#fff;color:var(--green)}
body.connection-site .detail-copy h1{font-size:40px;line-height:1.15}
body.connection-site .product-color{font-size:16px;color:var(--green)}
body.connection-site .detail-description{font-size:15px;color:var(--muted)}
body.connection-site .detail-copy form{background:var(--cream);padding:23px;border:1px solid var(--line);border-radius:20px}
body.connection-site .detail-copy [data-store-add]{width:100%;margin-top:10px}
body.connection-site .specs{font-size:14px;line-height:1.6}
body.connection-site .shop-service-note{background:var(--cream);border:1px solid var(--line);border-radius:20px;margin-top:40px;padding:30px}
body.connection-site .shop-service-note h2{font-size:26px}
body.connection-site .shop-cart-page{gap:30px;padding-bottom:65px}
body.connection-site .shop-cart-summary{position:static;background:#f4f7ef;border:1px solid var(--line);border-radius:20px;padding:28px}
body.connection-site .shop-cart-main{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px}
body.connection-site .cart-row{border-radius:14px;gap:18px;padding-block:22px}
body.connection-site .cart-row :is(img,.cart-unavailable-mark){border-radius:12px;background:var(--cream)}
body.connection-site .quantity-control{border:1px solid #a9b39e;border-radius:12px;overflow:hidden}
body.connection-site .quantity-control input{border-radius:0}
body.connection-site .quantity-control button{border-radius:0}
body.connection-site .cart-dialog{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 20px 70px #25302325}
body.connection-site .cart-dialog::backdrop{background:#25302380}
body.connection-site .cart-header{gap:20px;padding-bottom:20px;border-bottom:1px solid var(--line)}
body.connection-site .cart-header h2{font-size:28px}
body.connection-site .close-button{width:44px;height:44px;border:0;border-radius:50%;background:var(--cream);color:var(--ink)}
body.connection-site .cart-footer{background:#fff;border:0;padding-top:20px}
body.connection-site .cart-footer p{font-size:13px;color:var(--muted)}
body.connection-site .toast{border-radius:18px;background:var(--green-dark);color:#fff}
body.connection-site :is(.request-form,.request-layout>div,.info-grid>div,.about-feature,.login-panel,.portal-panel,.portal-empty,.portal-callout,.grant-preview,.directory-search-panel,.directory-card,.organization-hero,.organization-sidebar,.community-card,.community-post,.community-empty,.community-sidebar,.community-search,.av-sidebar-note,.av-post,.av-search,.legal-document-card){border-radius:20px;border-color:var(--line);background:#fff}
body.connection-site .request-form{padding:30px;background:var(--cream)}
body.connection-site .request-form h2{font-size:27px}
body.connection-site .request-layout>div{padding:28px;border:1px solid var(--line)}
body.connection-site .about-feature{border:1px solid var(--line);overflow:hidden;gap:40px}
body.connection-site .about-feature>div{padding:30px}
body.connection-site .about-feature>img{border-radius:20px}
body.connection-site .info-grid>div{padding:28px;background:var(--cream);border:1px solid var(--line)}
body.connection-site .info-grid h2{font-size:30px}
body.connection-site .reading{font-size:16px;line-height:1.8}
body.connection-site .reading h1{font-size:clamp(34px,4vw,52px)}
body.connection-site .reading h2{font-size:27px}
body.connection-site .reading-intro{font-size:18px;color:var(--muted)}
body.connection-site .portal-badge,body.connection-site .publication-need-status,body.connection-site .directory-card-type{border-radius:20px}
body.connection-site .portal-panel,body.connection-site .portal-callout,body.connection-site .portal-empty{background:var(--cream);border:1px solid var(--line)}
body.connection-site :is(.community-avatar,.directory-card-avatar,.organization-avatar,.publication-author-initials){border-radius:50%}
body.connection-site :is(.community-avatar img,.directory-card-avatar img,.organization-avatar img){border-radius:50%}
body.connection-site .organization-hero{border:1px solid var(--line);overflow:hidden}
body.connection-site .organization-sidebar{background:var(--cream)!important;border:1px solid var(--line)!important}
body.connection-site .organization-cover{background:var(--cream)}
body.connection-site .organization-tabs{border:0;gap:8px;flex-wrap:wrap;margin-block:25px}
body.connection-site .organization-tabs a,body.connection-site .organization-tabs a:first-child{padding:11px 18px;border:1px solid var(--line);border-radius:24px}
body.connection-site .organization-tabs a[aria-current]{background:var(--green);color:#fff;border-color:var(--green);text-decoration:none}
body.connection-site :is(.directory-search-panel,.community-feed .community-search){background:var(--cream);border:1px solid var(--line)}
body.connection-site :is(.directory-card,.community-feed .community-card,.community-post){border:1px solid var(--line);overflow:hidden;background:#fff}
body.connection-site .directory-card h2{font-size:25px}
body.connection-site :is(.av-button,.community-profile-actions .button,.portal-actions .button){border-radius:25px}
body.connection-site .av-nav{gap:8px;border:0}
body.connection-site .av-nav a{padding:10px 16px;border:1px solid var(--line);border-radius:24px}
body.connection-site .av-nav a[aria-current]{color:#fff;background:var(--green);border-color:var(--green);text-decoration:none}
body.connection-site .av-kind-nav a{border-radius:12px}
body.connection-site .av-post{border:1px solid var(--line)}
body.connection-site .av-post-copy h2{font-size:25px}
body.connection-site :is(.grant-dossier,.grant-card,.grant-participation,.grant-landing-panel,.fundraising-card,.fundraising-panel){border-radius:20px;border-color:var(--line);background:#fff}
body.connection-site .empty-state{border:1px dashed #a9b39e;border-radius:20px;background:var(--cream);padding:38px}
@media(max-width:1150px){
 body.connection-site .wrap{width:calc(100% - 64px)}
 body.connection-site .desktop-nav{font-size:12px;gap:0}
 body.connection-site .desktop-nav a{padding-inline:9px}
 body.connection-site .header-actions{gap:10px}
 body.connection-site .header-actions .account-link span{display:none}
 body.connection-site .header-inner{gap:15px}
 body.connection-site .product-detail{gap:30px}
 body.connection-site .product-card h3{font-size:19px}
 body.connection-site .shop-catalog-controls{grid-template-columns:minmax(0,1.7fr) minmax(110px,1fr) minmax(150px,1fr) auto;gap:12px;padding:20px}
}
@media(max-width:850px){
 body.connection-site .wrap{width:calc(100% - 48px)}
 body.connection-site .header-inner{min-height:88px;padding-block:18px}
 body.connection-site .desktop-nav{display:none}
 body.connection-site .menu-toggle{display:inline-flex}
 body.connection-site .logo{width:130px}
 body.connection-site .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 body.connection-site .shop-catalog-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.connection-site .shop-search{grid-column:1/-1}
 body.connection-site .shop-catalog-controls>.button{align-self:end}
 body.connection-site .mission h2{font-size:35px}
 .connection-mosaic{grid-template-columns:1.2fr 1fr}
 .connection-mosaic .mosaic-material{display:none}
 .connection-paths{gap:14px}
 .connection-paths>a{padding:22px 18px}
 body.connection-site .connection-paths h2{font-size:18px}
 .connection-paths p{font-size:12px}
 body.connection-site .footer-main{grid-template-columns:1fr 1fr}
 body.connection-site .about-feature{grid-template-columns:1fr}
 body.connection-site .shop-cart-page{grid-template-columns:1fr}
 body.connection-site .shop-cart-summary{position:static}
 body.connection-site .steps{gap:14px}
 body.connection-site .step{padding:20px}
 body.connection-site .step h3{font-size:19px}
}
@media(max-width:600px){
 body.connection-site{font-size:15px}
 body.connection-site .wrap{width:calc(100% - 40px)}
 body.connection-site .header-inner{min-height:78px;padding-block:17px;gap:10px}
 body.connection-site .logo{width:119px}
 body.connection-site .header-actions{gap:5px}
 body.connection-site .header-actions .desktop-only{display:none}
 body.connection-site .page-intro{padding-block:26px}
 body.connection-site .page-intro h1{font-size:35px;margin-bottom:16px}
 body.connection-site .intro-copy{font-size:14px}
 body.connection-site .crumbs{font-size:12px;margin-bottom:18px}
 body.connection-site .section{padding-block:30px}
 body.connection-site .section-heading h2{font-size:27px}
 body.connection-site .section-heading{gap:16px;flex-wrap:wrap}
 body.connection-site .eyebrow{font-size:11px}
 .connection-paths{grid-template-columns:1fr;gap:13px;margin-block:15px 35px}
 .connection-paths>a{padding:22px 24px}
 body.connection-site .connection-paths h2{font-size:22px}
 .connection-paths p{font-size:13px}
 .connection-mosaic{grid-template-columns:1fr;gap:20px}
 .connection-mosaic article{min-height:365px}
 .connection-mosaic .mosaic-material{display:block}
 body.connection-site .connection-mosaic h3{font-size:29px}
 body.connection-site .category-grid,body.connection-site .article-grid{grid-template-columns:1fr;gap:20px}
 body.connection-site .category-image{height:210px}
 body.connection-site .category-copy h3{font-size:26px}
 body.connection-site .mission{padding:26px;gap:20px;margin-block:20px;border-radius:20px}
 body.connection-site .mission h2{font-size:32px}
 body.connection-site .mission-side{display:none}
 body.connection-site .mission-bottom{gap:16px;flex-direction:column;align-items:flex-start}
 body.connection-site .workshop-gallery{gap:22px}
 body.connection-site .steps{grid-template-columns:1fr;gap:16px}
 body.connection-site .step{padding:25px}
 body.connection-site .step h3{font-size:23px}
 body.connection-site .faq{gap:24px}
 body.connection-site .faq h2{font-size:30px}
 body.connection-site .faq-list details{padding:18px}
 body.connection-site .faq-list summary{font-size:14px}
 body.connection-site .cta{padding:27px;gap:24px;margin-block:25px 40px;flex-direction:column;align-items:flex-start}
 body.connection-site .cta h2{font-size:30px}
 body.connection-site .footer-main{grid-template-columns:1fr;gap:25px}
 body.connection-site .footer{padding-block:32px 20px}
 body.connection-site .footer-main>div{gap:8px}
 body.connection-site .footer-main a:not(.logo){min-height:36px;font-size:14px}
 body.connection-site .footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}
 body.connection-site :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){font-size:16px}
 body.connection-site .filter-pill,body.connection-site .arma-tabs>a{font-size:12px;padding:10px 14px}
 body.connection-site .shop-catalog-controls{padding:18px;gap:14px;grid-template-columns:minmax(0,1fr)}
 body.connection-site .shop-search{grid-column:auto}
 body.connection-site .shop-catalog-controls .store-price-filter{grid-column:auto}
 body.connection-site .shop-catalog-controls>.button{width:100%}
 body.connection-site .shop-catalog-count{font-size:12px;align-items:flex-start;gap:15px;flex-wrap:wrap}
 body.connection-site .product-grid{gap:18px 13px}
 body.connection-site .product-image{aspect-ratio:.95;padding:12px}
 body.connection-site .product-card .arma-card-body{padding:14px 13px 16px}
 body.connection-site .product-card h3{font-size:16px;line-height:1.35;letter-spacing:-.02em}
 body.connection-site .product-meta{flex-wrap:wrap;gap:4px;font-size:11px}
 body.connection-site .store-availability{font-size:11px;line-height:1.6}
 body.connection-site .product-bottom{padding-top:12px;gap:8px;flex-wrap:wrap}
 body.connection-site .product-bottom strong{font-size:16px}
 body.connection-site .product-bottom a{font-size:12px}
 body.connection-site .product-detail{padding-top:10px;gap:25px}
 body.connection-site .detail-copy h1{font-size:33px}
 body.connection-site .detail-photo{padding:20px}
 body.connection-site .detail-copy form{padding:19px}
 body.connection-site .shop-service-note{padding:25px;gap:20px;flex-direction:column;align-items:flex-start}
 body.connection-site .shop-service-note h2{font-size:26px}
 body.connection-site .shop-cart-main,body.connection-site .shop-cart-summary{padding:20px}
 body.connection-site .shop-cart-page .cart-row{gap:12px}
 body.connection-site .cart-dialog{padding:20px;border-radius:20px;width:calc(100% - 24px)}
 body.connection-site .cart-header h2{font-size:26px}
 body.connection-site .request-form,body.connection-site .request-layout>div{padding:22px}
 body.connection-site .info-grid>div{padding:25px}
 body.connection-site .info-grid h2{font-size:28px}
 body.connection-site .about-feature>div{padding:22px}
 body.connection-site .organization-tabs a{font-size:12px;padding:10px 14px}
}
@media(prefers-reduced-motion:reduce){
 body.connection-site *,body.connection-site *::before,body.connection-site *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* Выбранная «Связь»: крупные фотографии и линии общего дела. */
.connection-hero{min-height:560px;padding:106px 0 94px;isolation:isolate}
.connection-hero-copy{position:relative;z-index:2;max-width:790px;margin-inline:auto}
.connection-hero h1{font-size:64px;line-height:1.09;letter-spacing:-2.6px}
.connection-hero .intro-label{margin:0 0 23px;font-size:12px}
.connection-hero .hero-description{max-width:615px;margin:25px auto 30px;font-size:16px;line-height:1.75}
.connection-hero .hero-actions{gap:14px}
.connection-trails{position:absolute;inset:0;width:100%;height:100%;color:var(--olive);opacity:.45;z-index:0;pointer-events:none}
.connection-trails path,.connection-trails circle{vector-effect:non-scaling-stroke}
.people-cloud{display:block;position:absolute;inset:0;z-index:1;pointer-events:none}
.hero-community-photo{position:absolute;width:236px;height:auto;margin:0;padding:8px;background:#fff;border:1px solid #d8e0cf;border-radius:25px;box-shadow:0 16px 32px #343e3010;text-align:left}
.people-cloud .hero-community-photo.one{left:7px;top:80px;width:236px;height:auto;transform:rotate(-5deg)}
.people-cloud .hero-community-photo.two{right:7px;top:146px;width:236px;height:auto;transform:rotate(5deg)}
.hero-community-photo>img{display:block;width:100%;height:262px;border-radius:18px;object-fit:cover;object-position:40% center}
.hero-community-photo.two>img{height:216px;object-position:48% center}
.hero-community-photo figcaption{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.5;color:var(--deep);padding:12px 8px 6px;white-space:nowrap}
.caption-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--olive)}
.hero-orbit{position:absolute;border:1px solid #a9b898;border-radius:50%;z-index:-1}
.orbit-one{left:2px;top:28px;width:280px;height:280px;border-style:dashed}
.orbit-two{right:-8px;top:157px;width:280px;height:280px}
.hero-sticker{position:absolute;left:110px;top:405px;display:inline-flex;align-items:center;gap:9px;background:#e9efdf;color:var(--deep);border:1px solid #d7e2c7;border-radius:25px;padding:13px 18px;font-size:12px;font-weight:600;transform:rotate(4deg);white-space:nowrap}
.hero-connection-node{position:absolute;right:217px;top:119px;display:grid;place-items:center;width:52px;height:52px;color:var(--olive);background:#f1f5ea;border:1px solid #dce6cf;border-radius:17px;transform:rotate(-8deg)}
.hero-connection-node svg{width:24px;height:24px}

@media(min-width:1051px) and (max-width:1300px){
 .connection-hero{padding-top:95px;min-height:525px}
 .connection-hero-copy{max-width:660px}
 .connection-hero h1{font-size:55px;letter-spacing:-2px}
 .connection-hero .hero-description{font-size:14px;max-width:490px}
 .people-cloud .hero-community-photo.one,.people-cloud .hero-community-photo.two{width:195px}
 .hero-community-photo>img{height:229px}
 .hero-community-photo.two>img{height:183px}
 .hero-community-photo figcaption{font-size:10px;padding-inline:4px;gap:6px}
 .people-cloud .hero-community-photo.one{left:0;top:90px}
 .people-cloud .hero-community-photo.two{right:0;top:150px}
 .orbit-one{width:226px;height:226px;left:0;top:55px}
 .orbit-two{width:226px;height:226px;right:0;top:178px}
 .hero-sticker{left:63px;top:382px;font-size:11px;padding:11px 15px}
 .hero-connection-node{right:168px;top:120px;width:45px;height:45px}
}
@media(max-width:1050px){
 .connection-hero{padding:30px 0 42px;min-height:0}
 .people-cloud{position:relative;inset:auto;height:285px;width:540px;max-width:100%;margin:0 auto 30px}
 .people-cloud .hero-community-photo.one{width:218px;left:18px;top:12px;transform:rotate(-5deg)}
 .people-cloud .hero-community-photo.two{width:218px;right:20px;top:45px;transform:rotate(5deg)}
 .hero-community-photo>img{height:218px}
 .hero-community-photo.two>img{height:183px}
 .hero-community-photo figcaption{font-size:11px;padding:10px 5px 5px}
 .orbit-one{width:245px;height:245px;left:7px;top:0}
 .orbit-two{width:245px;height:245px;right:7px;top:24px}
 .hero-sticker{left:174px;top:235px;font-size:11px;padding:11px 15px;z-index:2}
 .hero-connection-node{right:13px;top:6px;width:45px;height:45px}
 .connection-hero-copy{max-width:690px}
 .connection-hero h1{font-size:54px;letter-spacing:-2px}
 .connection-hero .intro-label{margin:0 0 19px;font-size:12px}
 .connection-hero .hero-description{max-width:530px;font-size:15px;margin:22px auto 27px}
 .connection-trails{inset:8px 0 auto;height:310px;opacity:.4}
}
@media(max-width:600px){
 .connection-hero{padding:19px 0 29px}
 .people-cloud{height:210px;width:350px;margin:0 auto 27px}
 .people-cloud .hero-community-photo.one{left:4px;top:8px;width:50%;padding:6px;border-radius:19px}
 .people-cloud .hero-community-photo.two{right:4px;top:33px;width:45%;padding:6px;border-radius:19px}
 .hero-community-photo>img{height:160px;border-radius:13px}
 .hero-community-photo.two>img{height:128px}
 .hero-community-photo figcaption{font-size:9px;padding:8px 3px 3px;gap:5px}
 .caption-dot{width:5px;height:5px}
 .orbit-one{width:185px;height:185px;left:0;top:0}
 .orbit-two{width:172px;height:172px;right:0;top:25px}
 .hero-sticker{left:110px;top:171px;font-size:10px;padding:9px 12px;gap:6px}
 .hero-sticker svg{width:16px;height:16px}
 .hero-connection-node{right:0;top:6px;width:37px;height:37px;border-radius:12px}
 .hero-connection-node svg{width:19px;height:19px}
 .connection-hero h1{font-size:36px;line-height:1.13;letter-spacing:-1.3px}
 .connection-hero .intro-label{font-size:10px;margin:0 0 17px}
 .connection-hero .hero-description{font-size:14px;line-height:1.7;margin:19px auto 23px}
 .connection-hero .hero-description br{display:none}
 .connection-hero .hero-actions{flex-direction:column;gap:12px}
 .connection-hero .hero-actions>.button{width:100%;font-size:13px}
 .connection-trails{height:238px;inset:8px 0 auto}
}
/* Scroll rails stay inside their own block and appear only during interaction. */
:is(body.connection-site,body.connection-workspace) *{
 scrollbar-width:thin;
 scrollbar-color:transparent transparent;
}
:is(body.connection-site,body.connection-workspace) :is(:hover,:focus-within){
 scrollbar-color:color-mix(in srgb,#596443 42%,transparent) transparent;
}
:is(body.connection-site,body.connection-workspace) *::-webkit-scrollbar{width:6px;height:6px}
:is(body.connection-site,body.connection-workspace) *::-webkit-scrollbar-track,
:is(body.connection-site,body.connection-workspace) *::-webkit-scrollbar-corner{background:transparent}
:is(body.connection-site,body.connection-workspace) *::-webkit-scrollbar-thumb{background:transparent;border-radius:10px}
:is(body.connection-site,body.connection-workspace) :is(:hover,:focus-within)::-webkit-scrollbar-thumb{background:#5964436b}
:is(body.connection-site,body.connection-workspace) *::-webkit-scrollbar-button{display:none}
html:has(>body.connection-site),html:has(>body.connection-workspace){scrollbar-width:thin;scrollbar-color:#5964436b transparent}
@media(forced-colors:active){
 :is(body.connection-site,body.connection-workspace) *{scrollbar-color:auto}
}

/* Shared centered illustration frame; reset legacy category art direction. */
body.connection-site .category-card{display:flex;flex-direction:column;min-height:0}
body.connection-site .category-card .category-top{padding:0;margin:0}
body.connection-site .category-card .category-image{position:relative;inset:auto;width:100%;height:280px;padding:8px 0;opacity:1;display:flex;align-items:center;justify-content:center}
body.connection-site .category-card .category-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
body.connection-site .category-card:hover .category-image img{transform:scale(1.03)}
body.connection-site .category-card .category-copy{padding:0;margin:12px 0 0;max-width:100%;background:none}
@media(max-width:1050px){body.connection-site .category-card .category-image{height:240px}}
@media(max-width:600px){body.connection-site .category-card .category-image{height:270px}}

/* The navigation ring grows symmetrically from the bottom midpoint. */
@property --arma-nav-ring{syntax:'<angle>';inherits:false;initial-value:0deg}
body.connection-site .desktop-nav a::after{content:'';position:absolute;inset:0;width:auto;height:auto;border-radius:inherit;padding:1px;pointer-events:none;transform:none;--arma-nav-ring:0deg;background:conic-gradient(from 180deg,var(--green) 0deg var(--arma-nav-ring),transparent var(--arma-nav-ring) calc(360deg - var(--arma-nav-ring)),var(--green) calc(360deg - var(--arma-nav-ring)) 360deg);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;transition:--arma-nav-ring .45s ease}
body.connection-site .desktop-nav a:hover::after,body.connection-site .desktop-nav a:focus-visible::after,body.connection-site .desktop-nav a[aria-current]::after{--arma-nav-ring:180deg;transform:none}
body.connection-site select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23596443' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:44px;min-height:44px}
@media(prefers-reduced-motion:reduce){body.connection-site .desktop-nav a::after{transition:none}}
@media(forced-colors:active){body.connection-site select{appearance:auto;background-image:none}body.connection-site .desktop-nav a:hover,body.connection-site .desktop-nav a[aria-current]{outline:1px solid Highlight}}

body.connection-site .legal-related-documents{margin-block:24px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--cream)}
body.connection-site .legal-related-documents h3{margin:0 0 12px;font-size:20px}
body.connection-site .legal-related-documents ul{display:grid;gap:8px;list-style:none;padding:0;margin:0}
body.connection-site .legal-related-documents a{display:inline-flex;align-items:center;min-height:44px;line-height:1.5;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}

/* Explicit contrast on the dark support surface; generic button/eyebrow rules must not override it. */
body.connection-site .portal-promo{background:var(--green-dark);color:#fff;border-radius:24px}
body.connection-site .portal-promo :is(h2,p,.grant-amount strong,.grant-amount span){color:#fff}
body.connection-site .portal-promo .eyebrow{color:#e7efdc}
body.connection-site .portal-promo .button{background:#fff;color:var(--green-dark);border-color:#fff}
body.connection-site .portal-promo .button:hover{background:#e7efdc;color:var(--green-dark);border-color:#e7efdc}
body.connection-site .portal-promo .grant-amount a{color:#fff;text-decoration-thickness:1px}
body.connection-site .portal-promo .grant-amount a:hover{color:#e7efdc;text-decoration-thickness:2px}
body.connection-site .portal-promo :is(a,button):focus-visible{outline-color:#e7efdc}
/* Distinguishable control outlines on white and pale olive surfaces. */
body.connection-site :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.button-outline,.button[data-variant="secondary"]){border-color:#7b886e}
body.connection-site :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
body.connection-site .category-garment .category-image{height:320px;margin-block:-20px}
body.connection-site .category-garment .category-image img{mix-blend-mode:normal}
@media(max-width:1050px){body.connection-site .category-garment .category-image{height:280px}}
@media(max-width:600px){body.connection-site .category-garment .category-image{height:310px}}
body.connection-site .workshop-gallery figcaption>span{color:var(--green)}

/* Sidebar typography follows its narrow content column, not page heading sizes. */
body.connection-site .av-profile-sidebar{padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--cream)}
body.connection-site .av-profile-sidebar h2{font-size:20px;line-height:1.35;letter-spacing:-.02em;margin:0 0 14px;overflow-wrap:normal;word-break:normal;text-wrap:pretty}
body.connection-site .av-profile-sidebar p{font-size:14px;line-height:1.65;margin:0 0 14px;color:var(--muted)}
body.connection-site .av-profile-sidebar>section+section{margin-top:24px;padding-top:24px}
body.connection-site .av-profile-sidebar .av-kicker{font-size:11px;line-height:1.5;margin-bottom:14px;color:var(--green)}
body.connection-site .av-profile-score{gap:14px;margin-block:16px}
body.connection-site .av-profile-score strong{font-size:44px;font-weight:600;line-height:1.1;flex:none}
body.connection-site .av-profile-score span{font-size:13px;line-height:1.5;max-width:130px}
body.connection-site .av-profile-sidebar .av-button{font-size:13px;line-height:1.45;white-space:normal;min-height:48px;padding:12px 14px;text-align:center;margin-top:4px;overflow-wrap:normal;word-break:normal}
body.connection-site .av-profile-sidebar .av-text-link{font-size:14px;line-height:1.5;min-height:44px}
body.connection-site .av-profile-sidebar .av-profile-contact-link{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-size:14px;text-decoration:none}
body.connection-site .av-profile-sidebar .av-profile-contact-link:hover{border-color:var(--green);background:#e7efdc}
body.connection-site .av-profile-contact-link>span:first-child{min-width:0;overflow-wrap:anywhere}
body.connection-site .av-profile-contact-link>span:last-child{flex:none}
@media(min-width:900px){body.connection-site .av-profile-body{grid-template-columns:minmax(0,1fr) 300px;gap:40px}}
@media(max-width:820px) and (min-width:561px){body.connection-site .av-profile-sidebar>section+section{margin:0;padding:0}}

/* Render material cutouts at a consistent centered scale without color blending. */
body.connection-site .store-product-card .product-image img{object-fit:contain;object-position:center;mix-blend-mode:normal;opacity:1}
body.connection-site .store-product-card[data-product="maski-wht"] .product-image{background:#dfe7d7}
body.connection-site .store-product-card{display:flex;flex-direction:column}
body.connection-site .store-product-card .product-image{flex:none}
body.connection-site .store-product-card .arma-card-body{display:flex;flex-direction:column;flex:1}
body.connection-site .store-product-card .product-bottom{margin-top:auto}
