/* Village identity: a broad illustrated masthead and a compact working surface. */
.community-strip{background:#edf3ec;border-block:1px solid #d5e2d8;padding:7px 0 4px}
.community-links{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(136px,1fr);gap:9px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scroll-padding-inline:3px;scrollbar-width:thin;scrollbar-color:#a6bdae #edf3ef;padding:3px 3px 6px}
.community-link{--community-accent:#6443bc;--community-hover:#f4f0fb;position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;min-width:0;min-height:86px;padding:9px 10px;gap:3px;border:1px solid #d5dfd4;border-radius:12px;background:#f8faf5;scroll-snap-align:start;transition:background-color .15s,border-color .15s;color:#184c40}
.community-link--telegram{--community-accent:#08739e;--community-hover:#edf7fc}
.community-platform{display:flex;align-items:center;gap:6px;font-size:.75rem;line-height:1.2;font-weight:700;color:var(--community-accent);letter-spacing:.015em;margin-bottom:3px}
.community-platform img{display:block;width:20px;height:20px;object-fit:contain;flex-shrink:0}
.community-link--max .community-platform img{border-radius:6px}
.community-link--telegram .community-platform img{background:#fff;border-radius:50%}
.community-name{font-size:.875rem;line-height:1.25;font-weight:750;letter-spacing:-.02em;overflow-wrap:anywhere}
.community-caption{font-size:.75rem;line-height:1.25;color:#596e61;margin-top:auto}
.community-link:hover{background:var(--community-hover);border-color:var(--community-accent)}
.community-link:focus-visible,.community-links:focus-visible{outline:3px solid #0b3c36;outline-offset:0}
@media(max-width:600px){.community-links{grid-auto-columns:156px;gap:8px}.community-strip{padding-top:6px}}
@media(prefers-reduced-motion:reduce){.community-link{transition:none}}
.wrap{width:min(1320px,calc(100% - 48px))}
.site-header{position:relative;isolation:isolate;min-height:306px;padding:20px 0 0;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background:#e9ecdb}
.village-panorama{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;z-index:-2}
.site-header:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#f7f9ee65,transparent 54%,#0c302b75)}
.nav{width:min(1440px,calc(100% - 40px));margin:0 auto;padding:14px 22px 14px 16px;gap:24px;border-radius:20px;background-color:#f8faf3;background-image:repeating-linear-gradient(0deg,#194e3f05 0,#194e3f05 1px,transparent 1px,transparent 3px),repeating-linear-gradient(90deg,#194e3f05 0,#194e3f05 1px,transparent 1px,transparent 4px),linear-gradient(135deg,#fffffff0,#f1f5e9eb);border:1px solid #ffffffb0;box-shadow:0 6px 24px #123f3c0a,inset 0 1px 0 #fff;backdrop-filter:blur(12px)}
.brand{gap:11px;min-width:0;align-items:center;color:#063f35}
.brand .brandmark{display:block;flex:0 0 74px;width:74px;height:74px;object-fit:contain;background:none;border-radius:0;box-shadow:none}
.brand .brand-name{font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:2.1rem;line-height:.98;letter-spacing:-.07em;text-transform:uppercase;display:block}
.brand .brand-name>span{display:block;font-size:inherit}
.brand .brand-location{font-size:.75rem!important;line-height:1.25;margin-top:7px;letter-spacing:0;color:#526e62;white-space:normal!important}
.navlinks{gap:6px;flex-wrap:wrap;justify-content:flex-end}
.navlinks a{font-size:.875rem;padding:12px;color:#184f40}
.navlinks .top-call{background:#f7ebe5;color:#a73c2f!important;border:1px solid #efd3c8;font-size:.875rem!important;padding:12px 16px!important;white-space:nowrap}
.place-line{margin:0 auto;padding:14px 0 16px;color:#fff;font-size:.875rem;line-height:1.4;gap:12px;text-shadow:0 1px 8px #0b302b80}
.place-line .panorama-caption{font-size:.75rem;font-weight:500;color:#fff}
.hero{display:block;margin:0;padding:0}
.hero-main{min-height:0;border:0;border-radius:0;padding:0;box-shadow:none;background:#103f38;overflow:hidden}
.hero-main:before{display:none}
.hero-main:after{inset:0 0 0 auto;width:48%;border:0;border-radius:0;background-size:370px;opacity:.13;mask-image:linear-gradient(90deg,transparent,#000)}
.hero-content{position:relative;z-index:1;display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:44px;padding:29px 0 32px}
.hero h1{font-size:clamp(2.1rem,3.8vw,3.5rem);line-height:1.06;letter-spacing:-.055em;margin:11px 0 13px}
.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.12em;color:#dce9b6}
.hero-copy p{font-size:1rem;line-height:1.55;color:#d3e1d7;max-width:420px;margin:0}
.hero-search{min-width:0}
.hero-search .search{max-width:none;width:100%;height:66px;padding:7px;border-radius:12px;gap:8px;box-shadow:0 8px 24px #052a2440}
.hero-search .search input{font-size:1rem;min-width:0}
.hero-search .search button{font-size:.9375rem;padding:14px 23px;background:#daef96;min-height:48px;flex-shrink:0}
.hero-search .search button:hover{background:#c5e66f}
.hero-search .examples{font-size:.8125rem!important;margin:10px 0 0!important;color:#c1d4c8!important}
.hero-search .quick-sections{display:flex;gap:8px 18px;flex-wrap:wrap;margin-top:19px}
.hero-search .quick-sections a{font-size:.875rem;line-height:1.45;border:0;border-radius:0;padding:4px 0;color:#e0eadf;text-decoration:underline;text-decoration-color:#68867b;text-underline-offset:5px}
.hero-search .quick-sections a:hover{color:#dcef96;background:none;text-decoration-color:currentColor}
.emergency{min-height:0;display:grid;grid-template-columns:minmax(230px,1fr) auto minmax(280px,.85fr);align-items:center;gap:26px;padding:17px 24px;margin-top:16px;border-radius:14px;border:1px solid #e9cfc5;background:#fbf2ed;color:#853e30;box-shadow:none}
.emergency:after{display:none}
.emergency .emergency-copy{min-width:0}
.emergency h2{display:flex;align-items:center;gap:8px;max-width:none;font-size:1rem;line-height:1.4;letter-spacing:-.025em;margin:0 0 5px}
.emergency h2 .icon{width:20px;height:20px}
.emergency h2>span{font-size:.75rem;letter-spacing:0;font-weight:700;color:#995642}
.emergency p{margin:0;font-size:.8125rem;line-height:1.5;color:#82574c}
.emergency .call112{grid-column:auto;grid-row:auto;align-self:center;border:0;padding:0;margin:0;display:flex;gap:10px;color:#b43e2e}
.emergency .call112 strong{font-size:2.7rem;line-height:1;letter-spacing:-.06em}
.emergency .round-arrow{display:grid;width:29px;height:29px;font-size:18px;background:#b94735}
.emergency-grid{grid-column:auto;gap:8px;margin:0}
.emergency-grid a{font-size:.8125rem;line-height:1.35;padding:7px 8px;border-radius:8px;background:#fff9f5;min-height:52px}
.emergency-grid b{font-size:1rem}
.section{padding-top:48px}
#contacts{padding-top:48px}
.local{max-width:1050px;margin-inline:auto;padding:26px 28px;border-radius:18px;grid-template-columns:.8fr 1.2fr;gap:24px;background:#e4eee4}
.local .section-kicker{font-size:.75rem;margin-bottom:9px;letter-spacing:.1em}
.local h2{font-size:1.9rem;line-height:1.15;letter-spacing:-.045em;margin:0 0 8px}
.local p{font-size:.875rem;line-height:1.5;margin:0;max-width:260px}
.local .links{margin-top:17px;gap:8px}
.local .button{font-size:.875rem;padding:10px 15px;min-height:42px}
.local-details{grid-template-columns:1fr 1fr;gap:9px;align-content:center;min-width:0}
.local .detail{display:block;padding:10px 13px;font-size:.875rem;border-radius:9px;min-width:0;background:#ffffffcf}
.local .detail>span{font-size:.75rem;display:block}
.local .detail b{display:block;text-align:left;margin-top:3px;overflow-wrap:anywhere}
.local .detail-address{grid-column:1/-1;position:relative}
.detail-address>a{display:inline-block;font-size:.8125rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;margin-top:3px;color:#32644c}
.local a:focus-visible,.emergency a:focus-visible{outline-offset:3px}
@media(min-width:1600px){.site-header{min-height:345px}.village-panorama{object-position:center 58%}}
@media(max-width:1050px){.wrap{width:calc(100% - 36px)}.site-header{min-height:280px}.nav{width:calc(100% - 36px);padding:12px 16px;gap:16px}.brand .brand-name{font-size:1.875rem}.brand .brandmark{width:68px;height:68px;flex-basis:68px}.navlinks a:not(.top-call){display:block}.navlinks a{padding:10px;font-size:.875rem}.hero-content{gap:28px;grid-template-columns:.85fr 1.15fr;padding:26px 8px 28px}.hero h1{font-size:2.65rem}.emergency{gap:18px;padding:16px 18px;grid-template-columns:minmax(0,1fr) auto 290px}.local{max-width:920px;grid-template-columns:.85fr 1.15fr}}
@media(max-width:760px){.site-header{min-height:282px;padding-top:12px}.nav{gap:12px;padding:12px 14px;align-items:flex-start}.brand .brand-name{font-size:1.625rem}.brand .brandmark{width:61px;height:61px;flex-basis:61px}.brand .brand-location{font-size:.75rem!important}.navlinks{gap:4px}.navlinks a:not(.top-call){display:none}.navlinks .top-call{padding:11px 12px!important}.hero-content{grid-template-columns:1fr;gap:20px;padding:25px 8px}.hero h1{font-size:2.45rem;margin:9px 0 10px}.hero h1 br{display:none}.hero-copy p{max-width:none}.hero-search .quick-sections{margin-top:14px;gap:8px 16px}.emergency{grid-template-columns:1fr auto;gap:14px 18px}.emergency .call112{grid-column:2;grid-row:1}.emergency-grid{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.emergency-grid a{display:flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 5px}.emergency-grid b{display:inline}.local{grid-template-columns:1fr;max-width:620px;padding:23px;gap:20px}.local-intro{position:relative}.local p{max-width:none}.local .links{margin-top:13px}.place-line .panorama-caption{max-width:145px;text-align:right;font-size:.75rem}.place-line{font-size:.8125rem}.section{padding-top:40px}}
@media(max-width:520px){.wrap{width:calc(100% - 28px)}.site-header{min-height:257px}.nav{width:calc(100% - 24px);padding:11px 10px;border-radius:14px;gap:8px}.brand{gap:5px}.brand .brandmark{width:48px;height:54px;flex-basis:48px}.brand .brand-name{font-size:1.45rem;letter-spacing:-.065em}.brand .brand-location{display:none}.navlinks .top-call{font-size:.875rem!important;padding:9px 10px!important;border-radius:9px!important}.place-line{padding:12px 0;font-size:.75rem;align-items:flex-end;gap:12px}.place-line>span:first-child{max-width:175px;align-items:center;gap:7px}.tatar-flag{flex-shrink:0;width:22px;height:15px}.place-line .panorama-caption{font-size:.75rem;max-width:125px}.village-panorama{object-position:52% center}.hero-content{padding:24px 5px 26px;gap:19px}.hero h1{font-size:2.4rem;max-width:350px;line-height:1.07}.hero-copy .eyebrow{font-size:.75rem}.hero-copy p{font-size:1rem;line-height:1.5}.hero-search .search{height:60px;padding:5px;gap:3px}.hero-search .search>span{display:none}.hero-search .search input{padding-left:9px;font-size:1rem}.hero-search .search button{font-size:.875rem;padding:11px 13px;min-height:46px}.hero-search .quick-sections{gap:7px 14px}.hero-search .quick-sections a{font-size:.875rem}.emergency{padding:14px;gap:12px;grid-template-columns:minmax(0,1fr) auto;border-radius:12px}.emergency h2{font-size:.875rem;gap:5px;flex-wrap:wrap}.emergency h2 .icon{display:none}.emergency p{font-size:.75rem}.emergency .call112 strong{font-size:2.3rem}.emergency .round-arrow{display:none}.emergency-grid{gap:6px}.emergency-grid a{display:block;font-size:.75rem;padding:7px 3px;min-height:46px}.emergency-grid b{display:block;font-size:1rem}.local{padding:21px 18px}.local h2{font-size:1.85rem}.local-details{grid-template-columns:1fr}.local .detail-address{grid-column:auto}.section{padding-top:36px}}
@media(max-width:360px){.brand .brand-name{font-size:1.25rem}.brand .brandmark{width:40px;flex-basis:40px}.navlinks .top-call{font-size:.8125rem!important;padding:9px 8px!important}.emergency h2>span{display:none}}

/* Compact introduction to the practical help cards. */
#situations .guide-intro{min-height:0;align-self:start;padding:22px 24px;border-radius:20px}
#situations .guide-intro h2{font-size:1.75rem;line-height:1.2;letter-spacing:-.035em;margin:0 0 10px}
#situations .guide-intro p{font-size:1rem;line-height:1.5;margin:0}
@media(max-width:600px){#situations .guide-intro{padding:18px 20px;border-radius:16px}#situations .guide-intro h2{font-size:1.375rem;line-height:1.25;margin-bottom:8px}}

.navlinks .login-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border:1px solid #b6cda3;border-radius:11px;background:#d9ed94;color:#153e3b;font:inherit;font-size:.9375rem;font-weight:800;white-space:nowrap;cursor:pointer}
.navlinks .login-button:hover{background:#cbe77c}
.place-line .village-road-sign{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;color:#171b19;border:2px solid #171b19;outline:3px solid #fff;border-radius:3px;padding:4px 13px;font-family:Arial,sans-serif;font-size:1.125rem;font-weight:700;line-height:1.2;letter-spacing:.08em;box-shadow:0 3px 10px #0003;white-space:nowrap}
.login-dialog{width:min(420px,calc(100% - 32px));padding:26px;border:1px solid #d0dfd3;border-radius:20px;background:#fff;color:#153e3b;box-shadow:0 24px 80px #092d3440}
.login-dialog::backdrop{background:#123b3470;backdrop-filter:blur(3px)}
.login-dialog h2{font-size:1.5rem;line-height:1.2;margin:0 0 14px}
.login-dialog p{font-size:1rem;line-height:1.55;margin:0 0 20px;color:#536e69}
.login-dialog form{margin:0}
.login-dialog button{min-height:44px;padding:10px 20px;border:0;border-radius:10px;background:#d9ed94;color:#153e3b;font:inherit;font-weight:700;cursor:pointer}
@media(max-width:520px){.navlinks .login-button{padding:9px 15px;font-size:.875rem}.place-line .village-road-sign{font-size:1rem;padding:4px 10px}}

/* Keep the sign's ground contact visible in the masthead crop. */
.village-panorama{object-position:center bottom}
@media(min-width:1051px){.site-header{min-height:clamp(360px,33.8vw,490px)}}
@media(max-width:520px){.village-panorama{object-position:52% bottom}}

/* Left-hand section drawer, using the site's forest green and ornament. */
.menu-toggle,.section-menu-head button{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;padding:10px;border:1px solid #bfd0c2;border-radius:11px;background:#edf3e9;color:#064e42;cursor:pointer}
.menu-toggle svg,.section-menu-head svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.menu-toggle:hover{background:#d9ed94}
.section-menu{position:fixed;inset:0 auto 0 0;margin:0;width:min(350px,40vw);max-width:40vw;height:100%;height:100dvh;max-height:none;padding:28px 20px;border:0;border-right:1px solid #87a98b55;border-radius:0 22px 22px 0;color:#f5faed;background:linear-gradient(110deg,#034b43f5,#034b43df),url('./assets/tatar-ornament.png') center/380px;box-shadow:12px 0 50px #002f3550;overflow-y:auto;overscroll-behavior:contain}
.section-menu[open]{animation:menu-slide-in .24s ease-out}
.section-menu::backdrop{background:#082e3866;backdrop-filter:blur(3px)}
.section-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:26px}
.section-menu-head h2{margin:0;color:#d9ed94;font-size:1.25rem;line-height:1.3}
.section-menu-head button{color:#e9f4df;background:#ffffff0d;border-color:#ffffff30}
.section-menu-links{display:flex;flex-direction:column;gap:8px}
.section-menu-links a{display:block;padding:15px 16px;border:1px solid #ffffff20;border-radius:12px;background:#ffffff08;color:#f5faed;font-size:1rem;font-weight:650;line-height:1.4}
.section-menu-links a:hover,.section-menu-links a:focus-visible{background:#d9ed94;color:#064e42}
.menu-toggle:focus-visible,.section-menu button:focus-visible{outline:3px solid #a4c958;outline-offset:3px}
@keyframes menu-slide-in{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@media(max-width:520px){.section-menu{padding:22px 18px}}
@media(prefers-reduced-motion:reduce){.section-menu[open]{animation:none}}

/* A separate sticky row keeps navigation clear of the page controls. */
html{scroll-padding-top:68px}
.menu-bar{position:sticky;top:0;z-index:50;padding:5px 0;background:#edf3ec;border-bottom:1px solid #d5e2d8;box-shadow:0 2px 8px #153e3b08}
.menu-bar .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;min-height:44px;padding:8px 12px;border-color:transparent;background:transparent;font:inherit;font-size:.875rem;font-weight:650;color:#365e51}
.menu-bar .menu-toggle svg{width:21px;height:21px}
.menu-bar .menu-toggle:hover{background:#dce8d7}

/* Slightly larger emblem; keep the wordmark typography unchanged. */
.brand .brandmark{width:86px;height:86px;flex-basis:86px}
@media(max-width:1050px){.brand .brandmark{width:78px;height:78px;flex-basis:78px}}
@media(max-width:760px){.brand .brandmark{width:70px;height:70px;flex-basis:70px}}
@media(max-width:520px){.brand .brandmark{width:56px;height:62px;flex-basis:56px}}
@media(max-width:360px){.brand .brandmark{width:48px;height:56px;flex-basis:48px}}
/* Narrow drawers wrap their labels without exceeding 40% of the viewport. */
.section-menu{box-sizing:border-box}
.section-menu-head h2,.section-menu-links a{overflow-wrap:anywhere;min-width:0}
@media(max-width:760px){.section-menu{padding:16px 10px}.section-menu-head{flex-direction:column-reverse;align-items:flex-start;gap:10px;margin-bottom:18px}.section-menu-head button{align-self:flex-end}.section-menu-head h2{font-size:1rem}.section-menu-links{gap:6px}.section-menu-links a{padding:11px 8px;font-size:.875rem;line-height:1.4}}

/* Frosted glass drawer: diffuse the page beneath a pale translucent surface. */
.section-menu{
  color:#153e3b;
  background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(232,241,234,.64));
  -webkit-backdrop-filter:blur(32px) saturate(115%);
  backdrop-filter:blur(32px) saturate(115%);
  border:1px solid rgba(255,255,255,.8);border-left:0;
  box-shadow:14px 0 46px #173e3526,inset -1px 0 0 #ffffffb3,inset 0 1px 0 #fff;
}
.section-menu::before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:repeating-linear-gradient(0deg,#ffffff08 0,#ffffff08 1px,transparent 1px,transparent 3px);opacity:.5}
.section-menu-head,.section-menu-links,.section-menu .member-menu{position:relative;z-index:1}
.section-menu::backdrop{background:#082e3824;-webkit-backdrop-filter:none;backdrop-filter:none}
.section-menu-head h2{color:#153e3b}
.section-menu-links a{color:#153e3b;background:#ffffff30;border-color:#ffffff8c;box-shadow:inset 0 1px 0 #ffffff80;transition:background .18s,border-color .18s}
.section-menu-links a:hover,.section-menu-links a:focus-visible{background:#ffffffa6;border-color:#fff;color:#064e42}
.section-menu-head button{color:#153e3b;background:#ffffff66;border-color:#ffffffb3;box-shadow:inset 0 1px 0 #fff}
.section-menu .member-menu{color:#153e3b;border-color:#365e5126}
.section-menu .member-menu button{color:#153e3b;background:#ffffff55;border-color:#ffffffa6}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.section-menu{background:#edf3ef}}
@media(prefers-reduced-motion:reduce){.section-menu-links a{transition:none}}
