/* ── Reset & Base ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-tap-highlight-color:transparent;scroll-padding-top:96px}
body{font-family:var(--ff-body);font-size:16px;line-height:1.6;color:var(--c-text);background:#f7f7f5;min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
ul,ol{list-style:none}
input,textarea,select,button{font-family:inherit;font-size:inherit}
h1,h2,h3,h4{font-family:var(--ff-heading);font-weight:var(--fw-bold);line-height:1.2;color:var(--c-brand)}
p{margin-bottom:1rem}
p:last-child{margin-bottom:0}
.page-content{flex:1;display:flex;flex-direction:column;min-height:0}
.page-content>section:last-child{flex:1 1 auto;min-height:0}

/* ── Layout & Tokens ── */
:root{
    --side-pad:clamp(20px,4vw,60px);
    --max-content:1400px;
    /* Шрифты */
    --ff-heading:'Jost',sans-serif;
    --ff-body:'Inter',sans-serif;
    /* Type-scale (фикс) */
    --fs-xs:.8rem;
    --fs-sm:.9rem;
    --fs-base:1rem;
    --fs-md:1.1rem;
    --fs-lg:1.25rem;
    --fs-xl:1.5rem;
    --fs-2xl:1.85rem;
    --fs-3xl:2.4rem;
    /* Type-scale (responsive — для заголовков) */
    --fs-h1:clamp(1.85rem,2.5vw,2.8rem);
    --fs-h2:clamp(1.5rem,2vw,2.4rem);
    --fs-h3:clamp(1.1rem,1.4vw,1.5rem);
    --fs-body-lg:clamp(.95rem,1.05vw,1.2rem);
    /* Веса */
    --fw-regular:400;
    --fw-semibold:600;
    --fw-bold:700;
    /* Цвета — текст */
    --c-text:#1a1a1a;
    --c-muted:#666;
    --c-faint:#666;
    /* Цвета — фоны */
    --c-bg:#f7f7f5;
    --c-card:rgba(255,255,255,.5);
    --c-card-hover:#f0f7f2;
    /* Цвета — бренд */
    --c-brand:#1a5c2e;
    --c-brand-light:#2d8a4e;
    --c-cream:#f3ecd9;
    --c-danger:#c44;
    /* Кнопки */
    --btn-radius:999px;
}
.content-width{margin:0 auto;padding-left:var(--side-pad);padding-right:var(--side-pad);max-width:var(--max-content)}

/* ── Header ── */
.header{position:fixed;top:0;left:0;right:0;z-index:100;background:#fff;border-bottom:1px solid rgba(0,0,0,.06)}
.header__inner{display:flex;align-items:center;gap:clamp(16px,2vw,32px);height:clamp(60px,4.2vw,84px);padding-left:var(--side-pad);padding-right:var(--side-pad);margin:0 auto;max-width:var(--max-content);position:relative}
.header__right{display:flex;align-items:center;gap:20px;flex-shrink:0}
.header__icon{width:clamp(32px,1.8vw,40px);height:clamp(32px,1.8vw,40px);display:flex;align-items:center;justify-content:center;color:var(--c-text);margin-top:-2px}
.header__icon--profile{display:none;border:1.5px solid #ccc;border-radius:50%}
.header__icon svg{width:clamp(20px,1.1vw,24px);height:clamp(20px,1.1vw,24px)}
.header__logo{flex-shrink:0;display:flex;align-items:center}
.header__logo img{height:clamp(56px,4vw,80px);width:auto;object-fit:contain}
.header__user-info{display:flex;flex-direction:column;align-items:flex-end;text-decoration:none;color:var(--c-text)}
.header__user-name{font-family:var(--ff-heading);font-weight:var(--fw-semibold);font-size:var(--fs-sm)}
.header__user-phone{font-size:var(--fs-xs);color:var(--c-text)}
.nav{display:flex;align-items:center;justify-content:center;flex:1;gap:clamp(12px,1.4vw,28px)}
.nav a{padding:6px 2px;font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.3px;color:var(--c-text);transition:all .2s;white-space:nowrap;box-shadow:inset 0 -2px 0 transparent}
.nav a:hover,.nav a.active{color:var(--c-brand);box-shadow:inset 0 -2px 0 #1a5c2e}
.nav__search-link,.nav__admin-link{display:none}

/* Burger (mobile) */
.burger{display:none;background:none;border:none;cursor:pointer;padding:8px}
.burger span{display:block;width:24px;height:2px;background:#1a1a1a;margin:5px 0;transition:all .3s}

/* ── Hero ── */
.hero{position:relative;width:100%;overflow:hidden;height:clamp(620px,78vh,960px);background:#1a1a1a}
.hero__bg{width:100%;height:100%;object-fit:cover;object-position:center 52%;display:block}
.hero__slides{position:absolute;inset:0;z-index:0}
.hero__slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;display:block;opacity:0;transition:opacity 1.2s ease-in-out}
.hero__slide.is-active{opacity:1}
.hero__dots{position:absolute;left:50%;bottom:clamp(10px,1vw,18px);transform:translateX(-50%);display:flex;gap:clamp(8px,0.7vw,14px);z-index:5}
.hero__dot{width:clamp(10px,0.8vw,14px);height:clamp(10px,0.8vw,14px);border-radius:50%;border:1px solid rgba(255,255,255,.85);background:rgba(255,255,255,.25);cursor:pointer;padding:0;transition:background .25s,transform .25s;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.hero__dot:hover{background:rgba(255,255,255,.6)}
.hero__dot.is-active{background:#fff;transform:scale(1.25)}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.20) 50%,rgba(0,0,0,.40) 100%);z-index:1}
.hero__center{position:absolute;top:15%;left:50%;transform:translateX(-50%);display:flex;align-items:stretch;z-index:2;width:88.5%}
.hero__logo{width:22%;flex-shrink:0;position:relative;filter:drop-shadow(0 .8% 3.3% rgba(0,0,0,.25))}
.hero__logo img{width:100%;height:auto;display:block}
.hero__bubble{flex:1;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:clamp(16px,1.4vw,24px);padding:clamp(14px,1.1vw,22px) clamp(18px,1.3vw,26px);color:#fff;font-size:var(--fs-sm);line-height:1.55;display:flex;flex-direction:column;justify-content:flex-start;margin-top:clamp(20px,1.8vw,36px)}
.hero__bubble:first-child{margin-right:-1vw;padding-right:clamp(20px,1.8vw,32px)}
.hero__bubble:last-child{margin-left:-1vw;padding-left:clamp(20px,1.8vw,32px)}
.hero__bubble strong{font-size:var(--fs-md);margin-bottom:6px}
.hero__bubble:first-child strong{display:block}
.hero__bubble:last-child strong{display:inline}
.hero__houses{position:absolute;inset:0;z-index:3;pointer-events:none}
.hero__houses img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 40%}

/* ── About Hero (two bubbles, top-left) ── */
.hero--about{height:clamp(620px,78vh,960px)}
.hero--about .hero__bg{width:100%;height:100%;object-fit:cover;object-position:center 67%}
.about-hero__center{position:absolute;top:clamp(100px,6.5vw,130px);left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:flex-start;gap:clamp(10px,0.83vw,20px);z-index:2;width:100%;max-width:var(--max-content);padding-left:var(--side-pad);padding-right:var(--side-pad)}
.about-hero__bubble{background:rgba(0,0,0,.32);-webkit-backdrop-filter:blur(20px) saturate(1.2);backdrop-filter:blur(20px) saturate(1.2);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:clamp(20px,1.4vw,28px);color:#fff;font-size:var(--fs-sm);line-height:1.6;box-shadow:0 6px 20px rgba(0,0,0,.18);width:min(560px,100%);transition:background .2s}
.about-hero__bubble:hover{background:var(--c-card-hover)}
.about-hero__bubble h1{color:#fff;font-size:var(--fs-h3);margin-bottom:10px;text-shadow:0 1px 6px rgba(0,0,0,.45)}
.about-hero__bubble p{margin-bottom:0;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.45)}
.about-hero__bubble:hover h1,.about-hero__bubble:hover p{color:#000;text-shadow:none}
.about-hero__bubble strong{font-size:var(--fs-h3);font-family:var(--ff-heading);font-weight:var(--fw-bold)}

/* ── Legal basis (About page) ── */
.legal-basis{max-width:780px;margin:0 auto;text-align:center}
.legal-basis__title{font-family:var(--ff-heading);font-size:var(--fs-h2);font-weight:var(--fw-bold);color:var(--c-text);margin-bottom:18px}
.legal-basis__text{font-size:var(--fs-base);color:var(--c-muted);line-height:1.7;margin:0}
@media(max-width:768px){
  .legal-basis{text-align:left}
  .legal-basis__title{text-align:center;font-size:var(--fs-xl);margin-bottom:14px}
  .legal-basis__text{font-size:var(--fs-sm);line-height:1.55}
}

/* ── Advantages Section (About page) ── */
.advantages-section{position:relative;z-index:4;overflow:hidden;padding:0;min-height:clamp(90px,6.5vw,130px);margin-top:-2vw;background:var(--c-bg)}
.advantages-section--glass{margin-top:calc(-1 * clamp(90px,6.5vw,130px) + 20px);background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(20px) saturate(1.1);backdrop-filter:blur(20px) saturate(1.1);box-shadow:0 -2px 20px rgba(0,0,0,.06)}
.advantages-section--glass .advantages-section__bg{opacity:.8}
.advantages-section__bg{position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:var(--max-content);background:url('/static/img/leaves-advantages.png?v=24') right top 7px/40% auto no-repeat}
.advantages-section__inner{padding:clamp(14px,1vw,20px) var(--side-pad);margin:0 auto;position:relative;z-index:1;display:flex;align-items:center;gap:60px;min-height:clamp(90px,6.5vw,130px);max-width:var(--max-content)}
.advantages-section__title{font-family:var(--ff-heading);font-size:var(--fs-h2);font-weight:var(--fw-bold);line-height:1.15;flex-shrink:0;color:var(--c-brand)}
.title-break{display:none}
.advantages-cards{display:flex;flex-direction:column;gap:14px;max-width:1100px;margin:0 auto 40px}
.advantages-card{position:relative;border-radius:18px;overflow:hidden}
.advantages-card__img{width:100%;display:block}
.advantages-card__text{position:absolute;top:50%;left:0;transform:translateY(-50%);padding:0 28px;font-size:var(--fs-body-lg);line-height:1.5;color:var(--c-muted);width:60%}

/* ── Success Layout ── */
.success-layout{display:flex;align-items:center;gap:32px;position:relative}
.success-photo{flex:1}
.success-photo__img{width:100%;border-radius:30px;box-shadow:0 4px 16px rgba(0,0,0,.08)}

/* ── Success Pills ── */
.success-pills{display:flex;flex-direction:column;gap:14px;width:45%;flex-shrink:0;position:relative;z-index:2}
.success-pill{background:#fff;border:1px solid #e0e0d8;border-radius:16px;padding:clamp(14px,1.2vw,22px) clamp(24px,2vw,36px);font-size:var(--fs-body-lg);line-height:1.55;color:var(--c-muted);box-shadow:0 2px 8px rgba(0,0,0,.04)}

/* ── Requisites ── */
.requisites{text-align:center}
.requisites__row{padding:16px 0;border-bottom:1px solid #e0e0d8;font-size:var(--fs-base)}
.requisites__row:last-child{border-bottom:none}
.requisites__row:last-child{border-bottom:none}

/* ── Hero overlay (logo + actions) ── */
.hero-overlay-content{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:clamp(90px,10vh,140px) var(--side-pad) clamp(110px,12vh,180px);z-index:3;pointer-events:none}
.hero-overlay-content>*{pointer-events:auto}
.hero-logo{width:clamp(220px,20vw,360px);height:auto;margin-bottom:clamp(14px,1.5vw,22px);filter:drop-shadow(0 6px 20px rgba(0,0,0,.20))}
.hero-subline{font-family:var(--ff-body);color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.85),0 1px 3px rgba(0,0,0,.75),0 0 18px rgba(0,0,0,.45);margin-bottom:clamp(28px,2.8vw,44px);max-width:840px;line-height:1.4;text-align:center}
.hero-subline__main{display:block;font-size:clamp(1.2rem,1.55vw,1.7rem);font-weight:600;letter-spacing:.005em;margin-bottom:clamp(6px,.55vw,10px)}
.hero-subline__loc{display:block;font-size:clamp(.85rem,.95vw,1.05rem);font-weight:500;letter-spacing:.04em}
.hero-actions{display:flex;gap:clamp(12px,1.4vw,20px);flex-wrap:wrap;justify-content:center;width:100%;max-width:880px}
.hero-actions .btn{flex:1 1 220px;max-width:280px;font-size:var(--fs-md);padding:14px 24px}

/* ── About summary (визитка ТСН на главной) ── */
.about-summary{padding:clamp(50px,5vw,90px) 0;background:#fff}
.about-summary__inner{padding-left:var(--side-pad);padding-right:var(--side-pad);margin:0 auto;max-width:var(--max-content);text-align:center}
.about-summary h2{font-family:var(--ff-heading);font-size:var(--fs-h1);font-weight:var(--fw-bold);color:var(--c-text);margin-bottom:16px}
.about-summary p{max-width:680px;margin:0 auto 36px;font-size:var(--fs-body-lg);color:var(--c-muted);line-height:1.6}
.about-summary__features{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:920px;margin:0 auto 40px;text-align:center}
.about-summary__feature{display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 8px}
.about-summary__feature svg{width:48px;height:48px;color:var(--c-brand);stroke:currentColor;flex-shrink:0}
.about-summary__feature h3{font-family:var(--ff-heading);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--c-text);margin:0}
.about-summary__feature p{font-size:var(--fs-sm);color:var(--c-muted);margin:0;line-height:1.5}
@media(max-width:640px){.about-summary__features{grid-template-columns:1fr;gap:24px;max-width:380px}}

/* ── News tiles (на главной) ── */
.news-tiles{padding:clamp(40px,4vw,80px) 0 clamp(40px,4vw,80px);background:var(--c-bg)}
.news-tiles__inner{padding-left:var(--side-pad);padding-right:var(--side-pad);margin:0 auto;max-width:var(--max-content)}
.news-grid-tiles{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:auto auto;gap:20px}
.news-grid-tiles--list{grid-template-columns:1fr 1fr;grid-template-rows:none;gap:24px}
.news-tile{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.5);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .25s,transform .25s,background .2s;display:flex;flex-direction:column;position:relative;box-shadow:0 4px 14px rgba(0,0,0,.07)}
.news-tile:hover{box-shadow:0 8px 24px rgba(0,0,0,.12);transform:translateY(-2px);background:var(--c-card-hover)}
.news-tile--big{grid-row:1 / span 2;grid-column:1}
.news-tile__media{width:100%;aspect-ratio:16/9;background-color:#e0e0d8;background-size:cover;background-position:center;display:block;position:relative}
.news-tile--big .news-tile__media{aspect-ratio:16/10;flex:1;min-height:260px}
.news-tile__media--video::after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 4px 12px rgba(0,0,0,.2)}
.news-tile__media--video::before{content:'';position:absolute;left:calc(50% + 4px);top:50%;transform:translate(-50%,-50%);border-style:solid;border-color:transparent transparent transparent var(--c-brand);border-width:11px 0 11px 18px;z-index:1}
.news-tile__body{padding:16px 20px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
.news-tile__date{font-size:var(--fs-xs);color:var(--c-faint);text-transform:uppercase;letter-spacing:.5px}
.news-tile__title{font-family:var(--ff-heading);font-weight:var(--fw-bold);font-size:var(--fs-md);line-height:1.3;color:var(--c-text)}
.news-tile--big .news-tile__title{font-size:var(--fs-xl)}
.news-tile__text{font-size:var(--fs-sm);color:var(--c-muted);line-height:1.55;margin:0}
.card{border:1px solid #e0e0d8;border-radius:20px;padding:24px 28px;margin-bottom:16px;position:relative;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.card:last-child{margin-bottom:0}
.card__title{font-family:var(--ff-heading);font-size:var(--fs-body-lg);font-weight:var(--fw-bold);color:var(--c-text);margin-bottom:6px}
.card__date{font-size:var(--fs-sm);color:var(--c-faint);margin-bottom:12px}
.card__text{color:var(--c-muted);font-size:var(--fs-sm);line-height:1.65;margin-bottom:16px}
.card__btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;border:1.5px solid var(--c-brand);border-radius:var(--btn-radius);background:#fff;color:var(--c-brand);font-family:var(--ff-heading);font-weight:var(--fw-semibold);font-size:var(--fs-sm);transition:background .2s,color .2s;text-decoration:none}
.card__btn:hover{background:var(--c-brand);color:#fff}
.card__arrow{position:absolute;right:24px;top:24px;width:24px;height:24px;color:var(--c-text);transition:transform .3s}

/* ── FAQ ── */
.faq-heading{background:#f7f7f5;padding:28px 0}
.faq-heading__inner{padding-left:var(--side-pad);padding-right:var(--side-pad);margin:0 auto;max-width:var(--max-content)}
.faq-heading h2{font-family:var(--ff-heading);font-size:var(--fs-h2);font-weight:var(--fw-bold);text-align:center;color:var(--c-text)}
.faq-wrap{position:relative;min-height:clamp(280px,22vw,500px);background:#f7f7f5}
.faq-wrap::before{content:'';position:absolute;inset:0;background:url('/static/img/faq-leaves.png') center top/65% auto no-repeat;opacity:.8;pointer-events:none}
.faq{position:relative;padding:clamp(28px,2vw,48px) 0 clamp(48px,3.5vw,72px);min-height:clamp(220px,16vw,400px)}
.faq__inner{padding-left:var(--side-pad);padding-right:var(--side-pad);margin:0 auto;position:relative;z-index:1;max-width:var(--max-content)}
.faq__item{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);margin-bottom:10px;border-radius:20px;border:1px solid rgba(255,255,255,.4);box-shadow:0 4px 14px rgba(0,0,0,.08);position:relative;transition:background .2s}
.faq__item:hover{background:var(--c-card-hover)}
.faq__item summary{padding:clamp(14px,1vw,20px) clamp(20px,1.3vw,28px);font-family:var(--ff-heading);font-size:var(--fs-md);font-weight:var(--fw-bold);line-height:1.35;color:var(--c-text);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary svg{width:clamp(18px,1.1vw,24px);height:clamp(18px,1.1vw,24px);flex-shrink:0;margin-left:16px;color:var(--c-text);transition:transform .3s}
.faq__item[open] summary svg{transform:rotate(180deg)}
.faq__answer{padding:0 clamp(20px,1.3vw,28px);color:var(--c-muted);line-height:1.65;font-size:var(--fs-sm);overflow:hidden;max-height:0;transition:max-height .4s ease,padding .4s ease}

/* ── Footer ── */
.footer{background:#fff;padding:10px 0 8px;border-top:1px solid #e0e0d8;position:relative;z-index:2}
.footer__inner{padding-left:var(--side-pad);padding-right:var(--side-pad);margin:0 auto;max-width:var(--max-content)}
.footer__top{display:flex;flex-direction:column;align-items:flex-start}
.footer__logo img{height:clamp(44px,2.8vw,64px);width:auto}
.footer__divider{width:100%;height:1px;background:rgba(0,0,0,.08);margin:5px 0}
.footer__info{text-align:left;font-size:var(--fs-sm);color:var(--c-text);line-height:1.65}

/* ── Scroll Reveal ── */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ── Scroll to Top ── */
.scroll-top{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);width:64px;height:64px;border-radius:50%;background:#fff;color:var(--c-brand);border:1.5px solid var(--c-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(0,0,0,.12);opacity:0;visibility:hidden;transition:background .2s,color .2s,opacity .3s,visibility .3s;z-index:99}
.scroll-top svg{width:28px;height:28px}
.scroll-top.visible{opacity:1;visibility:visible}
.scroll-top:hover{background:var(--c-brand);color:#fff}

/* ── Flash Messages ── */
.flash-container{position:fixed;top:clamp(120px,7.5vw,150px);left:50%;transform:translateX(-50%);z-index:101;display:flex;flex-direction:column;gap:8px;pointer-events:none;width:auto;max-width:min(560px,calc(100% - 32px))}
.flash{padding:14px 44px 14px 24px;border-radius:12px;font-size:var(--fs-sm);font-weight:500;box-shadow:0 8px 24px rgba(0,0,0,.12);pointer-events:auto;text-align:center;animation:flashIn .3s ease;position:relative;display:flex;align-items:center;justify-content:center;gap:12px}
.flash__close{position:absolute;top:50%;right:12px;transform:translateY(-50%);width:26px;height:26px;border:none;background:transparent;cursor:pointer;font-size:var(--fs-xl);line-height:1;color:inherit;opacity:.6;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:opacity .15s,background .15s;padding:0}
.flash__close:hover{opacity:1;background:rgba(0,0,0,.08)}
@keyframes flashIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@keyframes flashOut{to{opacity:0;transform:translateY(-10px)}}
.flash--success{background:#E8F0DE;color:var(--c-brand)}
.flash--danger{background:#fde8e8;color:#c82333}
.flash--info{background:#e8f0fd;color:#1a5276}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:#fff;border:1.5px solid var(--c-brand);border-radius:var(--btn-radius);font-family:var(--ff-heading);font-weight:var(--fw-semibold);font-size:var(--fs-sm);line-height:1;color:var(--c-brand);cursor:pointer;transition:background .2s,color .2s,border-color .2s;text-decoration:none;white-space:nowrap}
.btn:hover{background:var(--c-brand);color:#fff}
.btn--primary,.btn--outline{}
.btn--danger{border-color:var(--c-danger);color:var(--c-danger)}
.btn--danger:hover{background:var(--c-danger);color:#fff}
.btn--sm{padding:8px 16px;font-size:var(--fs-xs)}
.btn--lg{padding:16px 32px;font-size:var(--fs-md)}
.btn--block{width:100%}

/* ── Tags & utility links ── */
.tag{display:inline-block;padding:2px 10px;border-radius:12px;background:rgba(45,138,78,.12);color:var(--c-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:1.5}
.link-logout{color:#c44;font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-decoration:none;white-space:nowrap}
.link-logout:hover{text-decoration:underline}

/* ── Avatar ── */
.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--c-brand);color:#fff;font-family:var(--ff-heading);font-weight:var(--fw-bold);flex-shrink:0;line-height:1}
.avatar--sm{width:44px;height:44px;font-size:var(--fs-sm)}
.avatar--md{width:56px;height:56px;font-size:var(--fs-md)}
.avatar--lg{width:72px;height:72px;font-size:var(--fs-xl)}

/* ── Forms ── */
.form-group{margin-bottom:20px}
.form-group label{display:block;margin-bottom:6px;font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--c-text)}
.input,.form-control{width:100%;padding:12px 16px;border:1px solid rgba(0,0,0,.12);border-radius:12px;font-family:inherit;font-size:var(--fs-base);background:#fff;color:var(--c-text);transition:border-color .2s,box-shadow .2s}
.input:focus,.form-control:focus{outline:none;border-color:var(--c-brand);box-shadow:0 0 0 3px rgba(26,92,46,0.12)}
.input::placeholder,.form-control::placeholder{color:var(--c-faint)}
.input:disabled,.form-control:disabled{background:#f5f5f3;color:var(--c-faint);border-color:rgba(0,0,0,.08);cursor:not-allowed}
textarea.input,textarea.form-control{min-height:120px;resize:vertical;font-family:inherit}
textarea.form-control{min-height:100px;resize:vertical}
.form-row{display:flex;gap:16px;flex-wrap:wrap;align-items:end}
.form-row .form-group{flex:1;min-width:150px}

/* ── Tables ── */
.table-wrap{overflow-x:auto;background:#fff;border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,0.06)}
table{width:100%;border-collapse:collapse}
th,td{padding:12px 16px;text-align:left;border-bottom:1px solid #e0e0d8}
th{font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--c-faint);text-transform:uppercase;letter-spacing:.5px;background:#f7f7f5}
td{font-size:var(--fs-sm)}
tr:last-child td{border-bottom:none}

/* ── Badges ── */
.badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:var(--fs-xs);font-weight:var(--fw-semibold)}
.badge--success{background:#E8F0DE;color:var(--c-brand)}
.badge--warning{background:#fff3cd;color:#856404}
.badge--danger{background:#fde8e8;color:#c82333}

/* ── Login Page ── */
.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#2bb050 0%,#1a5c2e 100%);padding:40px 20px;position:relative;overflow:hidden}
.login-wrap::before{content:'';position:absolute;bottom:-6%;left:0;width:100%;height:110%;background:url('/static/img/login-leaves.png') center bottom/cover no-repeat;pointer-events:none;opacity:.8}
.login-branch-left,.login-branch-right{position:absolute;bottom:-11.25vw;width:15vw;pointer-events:none;z-index:2;opacity:.8}
.login-branch-left{right:calc(50% + 11vw)}
.login-branch-right{left:calc(50% + 11vw)}
.login-card{background:#fff;border-radius:28px;padding:48px 50px;width:100%;max-width:630px;box-shadow:0 8px 32px rgba(0,0,0,.2);position:relative;z-index:1}
.login-card h2{text-align:left;margin-bottom:32px;font-size:var(--fs-xl);color:var(--c-text)}
.login-card .form-control{border:1px solid #e0e0d8;border-radius:12px;padding:14px 24px;background:#f7f7f5}
.login-card .form-control:focus{border-color:var(--c-brand-light);box-shadow:none}
.login-card .btn{margin-top:16px}
.login-close{position:absolute;top:16px;right:20px;font-size:var(--fs-xl);color:var(--c-text);cursor:pointer;background:none;border:none;line-height:1}

/* ── Cabinet Dashboard ── */
.cabinet-dash{padding:40px 0;position:relative;overflow:hidden;min-height:80vh}
.cabinet-greeting{margin-bottom:8px}
.cabinet-greeting h1{font-size:var(--fs-2xl)}
.cabinet-greeting p{color:var(--c-faint);font-size:var(--fs-sm)}
.cabinet-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px;position:relative;z-index:1}
.cabinet-card{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.5);border-radius:14px;padding:28px;padding-bottom:56px;box-shadow:0 4px 14px rgba(0,0,0,.07);transition:background .2s;align-self:start}
.cabinet-card:hover{background:var(--c-card-hover)}
.cabinet-card h3{font-size:var(--fs-lg);margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid rgba(0,0,0,.08);color:var(--c-text);margin-left:-28px;margin-right:-28px;padding-left:28px;padding-right:28px}
.cabinet-card__more{display:block;text-align:right;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-text);position:absolute;bottom:18px;right:24px;text-decoration:none;transition:color .2s}
.cabinet-card__more:hover{color:var(--c-brand)}

/* Admin dashboard grid */
.admin-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:28px;margin-top:0}
.admin-card{position:relative;padding:32px 36px 90px;grid-column:span 2}
.admin-card--wide{grid-column:span 3}
.admin-card h3{font-size:var(--fs-md);margin-bottom:0;padding-bottom:14px;margin-left:-36px;margin-right:-36px;padding-left:36px;padding-right:36px}
.admin-card__big{font-family:var(--ff-heading);font-size:var(--fs-3xl);font-weight:var(--fw-bold);color:var(--c-brand);line-height:1;margin-top:14px}
.admin-card__big--danger{color:#c44}
.admin-card__sub{color:var(--c-faint);font-size:var(--fs-sm);margin-top:6px}
.admin-card__stats{display:flex;gap:28px;flex-wrap:wrap;margin-top:6px}
.admin-card__stats > div > .admin-card__big{margin-top:8px;font-size:var(--fs-2xl)}
.admin-card__bar{position:absolute;bottom:22px;left:36px;right:36px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.admin-card__more{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-text);text-decoration:none;transition:color .2s}
.admin-card__more:hover{color:var(--c-brand)}
.invoice-item{background:rgba(255,255,255,.3);border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:14px 24px;margin-bottom:10px}
.invoice-item__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}
.invoice-item__type{font-weight:var(--fw-bold);font-size:var(--fs-base)}
.invoice-item__amount{font-family:var(--ff-heading);font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--c-text)}
.invoice-item__desc{font-size:var(--fs-sm);color:var(--c-text);margin-bottom:8px;line-height:1.5}
.invoice-item .btn{padding:8px 18px;font-size:var(--fs-sm)}
.payment-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.08);font-size:var(--fs-sm);margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
.payment-row:last-child{border-bottom:none}
.payment-row__desc{color:var(--c-text)}
.payment-row__amount{font-weight:var(--fw-semibold)}
.payment-row__link{display:none}
.notification-item{padding:12px 0;border-bottom:1px solid rgba(0,0,0,.1);font-size:var(--fs-sm);margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
.notification-item:last-child{border-bottom:1px solid rgba(0,0,0,.1)}
.notification-item__title{font-weight:var(--fw-semibold);color:var(--c-text);margin-bottom:2px;font-size:var(--fs-base)}
.notification-item__date{font-size:var(--fs-xs);color:var(--c-faint)}
.cabinet-actions{display:flex;gap:16px;margin-top:24px;position:relative;z-index:1}
.cabinet-actions .btn{flex:1;padding:16px 24px;border-radius:30px;font-size:var(--fs-sm)}

/* ── Payment Modal ── */
.pay-modal-overlay{position:fixed;inset:0;background:transparent;z-index:200}
.pay-modal{background:#fff;border-radius:24px;padding:36px 32px;width:500px;box-shadow:0 8px 32px rgba(0,0,0,.15);position:absolute}
.pay-modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:2px solid rgba(0,0,0,.1);margin-left:-32px;margin-right:-32px;padding-left:32px;padding-right:32px}
.pay-modal__header h3{margin-bottom:0}
.pay-modal__close{background:none;border:none;font-size:var(--fs-xl);cursor:pointer;color:var(--c-text);line-height:1}
.pay-modal__close:hover{color:#000}
.pay-modal__sum{font-size:var(--fs-sm);margin-bottom:20px}
.pay-modal__option{display:block;padding:10px 0;font-size:var(--fs-sm);cursor:pointer;border-bottom:1px solid rgba(0,0,0,.08)}
.pay-modal__option:last-of-type{border-bottom:none}
.pay-modal__option input[type="radio"]{margin-right:10px;accent-color:var(--c-brand-light)}

/* ── Cabinet Sidebar ── */
.cabinet{display:flex;min-height:80vh;padding-top:clamp(160px,11.46vw,260px)}
.sidebar{width:clamp(200px,13.54vw,310px);background:#1a5c2e;color:#fff;padding:32px 0;flex-shrink:0}
.sidebar__user{padding:0 24px 24px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:16px}
.sidebar__avatar{width:56px;height:56px;border-radius:50%;background:#2d8a4e;display:flex;align-items:center;justify-content:center;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:#fff;margin-bottom:12px}
.sidebar__name{font-weight:var(--fw-semibold);font-size:var(--fs-base)}
.sidebar__apartment{font-size:var(--fs-sm);opacity:.7}
.sidebar__nav a{display:flex;align-items:center;gap:12px;padding:12px 24px;color:rgba(255,255,255,.75);font-size:var(--fs-sm);transition:all .2s}
.sidebar__nav a:hover{color:#fff;background:rgba(255,255,255,.08)}
.sidebar__nav a.active{color:#fff;background:rgba(255,255,255,.12);border-left:3px solid #C5D9B0}
.sidebar__nav a .nav-icon{width:20px;text-align:center}
.cabinet__main{flex:1;padding:32px 40px;background:#f7f7f5;overflow-y:auto}
.cabinet__header{margin-bottom:32px}
.cabinet__header h1{font-size:var(--fs-2xl)}

/* ── Stats ── */
.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:32px}
.stat-card{background:#fff;border-radius:14px;padding:20px;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.stat-card__value{font-size:var(--fs-2xl);font-weight:var(--fw-bold);color:var(--c-brand);font-family:var(--ff-heading)}
.stat-card__label{font-size:var(--fs-sm);color:var(--c-faint);margin-top:4px}

/* ── Profile ── */
.profile-card{background:#fff;border-radius:14px;padding:32px;box-shadow:0 2px 12px rgba(0,0,0,.06);max-width:600px}
.profile-card__avatar{width:80px;height:80px;border-radius:50%;background:#2d8a4e;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);font-weight:var(--fw-bold);color:#fff;margin-bottom:24px}

/* ── Admin ── */
.admin-section{background:#fff;border-radius:14px;padding:24px;box-shadow:0 2px 12px rgba(0,0,0,.06);margin-bottom:24px}
.admin-section h3{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e0e0d8}

/* ── News Page ── */
.news-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:70px;align-items:start;position:relative;z-index:1}
.news-section-title{font-family:var(--ff-heading);font-size:var(--fs-h1);color:var(--c-text);margin-bottom:40px;padding-bottom:40px;border-bottom:3px solid #fff}
.news-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;align-items:start}
.news-grid .news-main-card{margin-bottom:0}
.news-main-card{border:1px solid rgba(255,255,255,.5);border-radius:14px;padding:20px 24px;margin-bottom:16px;background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);transition:box-shadow .3s,background .2s;box-shadow:0 4px 14px rgba(0,0,0,.07);overflow-wrap:break-word;word-wrap:break-word}
.news-main-card:hover{background:#f0f7f2;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.news-main-card__date{font-size:var(--fs-sm);color:var(--c-faint);margin-bottom:8px}
.news-main-card__title{font-family:var(--ff-heading);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--c-text);margin-bottom:10px;line-height:1.35}
.news-main-card__text{color:var(--c-muted);font-size:var(--fs-sm);margin-bottom:4px;line-height:1.6}
.news-sidebar-item{border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:14px 18px;margin-bottom:10px;background:#fff;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);transition:box-shadow .3s;box-shadow:0 2px 8px rgba(0,0,0,.04);overflow-wrap:break-word;word-wrap:break-word}
.news-sidebar-item:hover{box-shadow:0 3px 12px rgba(0,0,0,.06)}
.news-sidebar-item__date{font-size:var(--fs-xs);color:var(--c-faint);margin-bottom:6px}
.news-sidebar-item__title{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-text);line-height:1.35}
.news-sidebar-scroll,.news-main-scroll{max-height:calc(100vh - 220px);overflow-y:auto;padding-right:8px;scrollbar-width:thin;scrollbar-color:rgba(26,92,46,.3) transparent}
.news-sidebar-scroll::-webkit-scrollbar,.news-main-scroll::-webkit-scrollbar{width:6px}
.news-sidebar-scroll::-webkit-scrollbar-track,.news-main-scroll::-webkit-scrollbar-track{background:transparent}
.news-sidebar-scroll::-webkit-scrollbar-thumb,.news-main-scroll::-webkit-scrollbar-thumb{background:rgba(26,92,46,.3);border-radius:3px}
.news-sidebar-scroll::-webkit-scrollbar-thumb:hover,.news-main-scroll::-webkit-scrollbar-thumb:hover{background:rgba(26,92,46,.5)}

.news-pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:40px;flex-wrap:wrap}
.news-pagination__btn,.news-pagination__page{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;height:44px;padding:0 18px;border-radius:var(--btn-radius);font-family:var(--ff-heading);font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--c-brand);background:#fff;border:1.5px solid var(--c-brand);transition:background .2s,color .2s;text-decoration:none}
.news-pagination__arrow{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.news-pagination__arrow svg{display:block;width:16px;height:16px}
.news-pagination__btn:hover,.news-pagination__page:hover{background:var(--c-brand);color:#fff}
.news-pagination__page--current{background:var(--c-brand);color:#fff}
.news-pagination__page--current:hover{background:var(--c-brand);color:#fff}
.news-pagination__btn--disabled{opacity:.4;cursor:not-allowed;pointer-events:none;border-color:rgba(0,0,0,.15);color:var(--c-faint)}
.news-pagination__btn--disabled:hover{background:#fff;color:var(--c-faint)}
.news-pagination__dots{color:var(--c-faint);padding:0 4px}

/* ── News Detail ── */
.news-detail-header{text-align:center;font-size:var(--fs-base);color:var(--c-text);border-bottom:1px solid #e0e0d8;padding-bottom:12px;font-family:var(--ff-heading);font-weight:var(--fw-semibold)}
.news-detail__img{max-width:800px;max-height:450px;width:auto;height:auto;object-fit:cover;border-radius:14px;margin:0 auto 24px;display:block}
.news-detail__date{color:var(--c-faint);font-size:var(--fs-sm);margin-top:24px}
.news-detail__content{line-height:1.7;color:var(--c-text);margin-top:20px;font-size:var(--fs-base)}
.news-detail__content p{margin-bottom:1rem}
.news-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--c-text);font-weight:var(--fw-semibold);font-size:var(--fs-lg);text-decoration:none;flex-shrink:0;margin-bottom:13px}
.news-back:hover{color:var(--c-brand)}
.news-back-spacer{width:18px;flex-shrink:0;margin-bottom:13px}
.news-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:0 0 28px}
.news-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;cursor:pointer;transition:transform .3s;display:block}
.news-gallery img:hover{transform:scale(1.02)}
.news-gallery__video{position:relative;width:100%;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#000;border:0;padding:0;cursor:pointer;display:block}
.news-gallery__video img{width:100%;height:100%;object-fit:cover;aspect-ratio:auto;border-radius:0;transition:transform .3s}
.news-gallery__video:hover img{transform:scale(1.04)}
.news-gallery__play{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.news-gallery__play::before{content:'';width:64px;height:64px;border-radius:50%;background:rgba(0,0,0,.6);box-shadow:0 4px 18px rgba(0,0,0,.4)}
.news-gallery__play::after{content:'';position:absolute;width:0;height:0;border-left:20px solid #fff;border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:5px}

/* ── Lightbox ── */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:10000;display:none;align-items:center;justify-content:center;animation:lb-fade .2s ease-out}
.lightbox--open{display:flex}
@keyframes lb-fade{from{opacity:0}to{opacity:1}}
.lightbox__stage{position:relative;width:92vw;height:88vh;display:flex;align-items:center;justify-content:center}
.lightbox__img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.lightbox__video{width:min(92vw,calc(88vh * 16 / 9));aspect-ratio:16/9;border:0;border-radius:8px;background:#000;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.lightbox__close,.lightbox__nav{position:absolute;z-index:2;background:rgba(255,255,255,.12);border:0;color:#fff;cursor:pointer;border-radius:50%;display:grid;place-items:center;transition:background .2s,transform .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.lightbox__close:hover,.lightbox__nav:hover{background:rgba(255,255,255,.25)}
.lightbox__close{top:24px;right:24px;width:48px;height:48px;font-size:24px;line-height:1;font-family:var(--ff-body)}
.lightbox__nav{top:50%;transform:translateY(-50%);width:56px;height:56px;font-size:28px}
.lightbox__nav:hover{transform:translateY(-50%) scale(1.08)}
.lightbox__nav--prev{left:24px}
.lightbox__nav--next{right:24px}
.lightbox__nav[disabled]{opacity:.25;cursor:default}
.lightbox__nav[disabled]:hover{background:rgba(255,255,255,.12);transform:translateY(-50%)}
.lightbox__counter{position:absolute;top:32px;left:50%;transform:translateX(-50%);color:#fff;font-family:var(--ff-heading);font-size:var(--fs-sm);letter-spacing:.5px;background:rgba(0,0,0,.4);padding:6px 14px;border-radius:20px;backdrop-filter:blur(4px)}
@media (max-width:700px){
  .lightbox__nav{width:44px;height:44px;font-size:22px}
  .lightbox__nav--prev{left:8px}
  .lightbox__nav--next{right:8px}
  .lightbox__close{top:14px;right:14px;width:40px;height:40px;font-size:20px}
  .lightbox__counter{top:18px;font-size:var(--fs-sm)}
}
.news-detail__vk-link{display:inline-flex;align-items:center;gap:8px;margin-top:28px;padding:12px 24px;background:#fff;color:var(--c-brand);border:1.5px solid var(--c-brand);border-radius:var(--btn-radius);font-family:var(--ff-heading);font-weight:var(--fw-semibold);font-size:var(--fs-sm);text-decoration:none;transition:background .2s,color .2s}
.news-detail__vk-link:hover{background:var(--c-brand);color:#fff}

/* ── Documents Grid ── */
.docs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;position:relative;z-index:1}
.docs-grid .doc-card{width:100%}
.docs-grid .doc-card:last-child:nth-child(3n+1){grid-column:2}
.doc-card{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.5);border-radius:14px;padding:clamp(20px,1.4vw,28px) clamp(16px,1.1vw,22px);display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;transition:box-shadow .3s,transform .3s,background .2s;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.doc-card:hover{background:#f0f7f2;box-shadow:0 4px 14px rgba(0,0,0,.08);transform:translateY(-2px)}
.doc-card__icon{width:clamp(60px,5vw,88px);height:clamp(60px,5vw,88px);display:flex;align-items:center;justify-content:center}
.doc-card__icon svg,.doc-card__icon img{width:clamp(54px,4.5vw,80px);height:clamp(54px,4.5vw,80px);object-fit:contain}
.doc-card__title{font-family:var(--ff-heading);font-weight:var(--fw-semibold);font-size:var(--fs-sm);padding-top:10px;border-top:1px solid rgba(0,0,0,.1);width:100%;color:var(--c-text)}
.doc-card__list{width:100%;margin-top:12px;border-top:1px solid rgba(0,0,0,.08);padding-top:12px}
.doc-card__file{display:block;padding:10px 8px;font-size:var(--fs-base);color:var(--c-brand-light);border-bottom:1px solid rgba(0,0,0,.06)}
.doc-card__file:last-child{border-bottom:none}
.doc-card__file:hover{color:var(--c-brand);background:rgba(232,240,222,.5);border-radius:8px}

/* ── About Page ── */
.about-hero{padding:60px 0 40px}
.about-hero h1{font-size:var(--fs-h1);margin-bottom:16px}
.about-text{max-width:700px;color:var(--c-muted);font-size:var(--fs-sm);line-height:1.7}
.about-section{padding:36px 0;position:relative;overflow:hidden}
.about-section h2{font-size:var(--fs-lg);margin-bottom:20px}
.about-two-col{display:flex;gap:40px;align-items:flex-start;position:relative;z-index:1}
.about-photo-side{flex:1;min-width:300px;position:relative;border-radius:14px;overflow:visible}
.about-photo-side img{width:100%;height:320px;object-fit:cover;border-radius:14px}
.about-photos{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}
.about-photo-wrap{border-radius:14px;overflow:hidden;height:280px}
.about-photo-wrap img{width:100%;height:100%;object-fit:cover}
.advantages-list{position:relative;z-index:1}
.advantage-item{display:flex;align-items:flex-start;gap:16px;padding:16px 0;border-bottom:1px solid #e0e0d8}
.advantage-item:last-child{border-bottom:none}
.advantage-bullet{width:8px;height:8px;background:#2d8a4e;border-radius:50%;flex-shrink:0;margin-top:8px}
.advantage-text{color:var(--c-muted);font-size:var(--fs-sm);line-height:1.6}
.org-details{background:#fff;border-radius:14px;padding:32px;max-width:500px;margin-top:24px}
.org-details table{width:100%}
.org-details td{padding:8px 0;border-bottom:1px solid #e0e0d8;font-size:var(--fs-sm)}
.org-details td:first-child{font-weight:var(--fw-semibold);color:var(--c-faint);width:40%;text-transform:uppercase;font-size:var(--fs-xs);letter-spacing:.5px}

/* ── Contacts Page ── */
.contacts-section{text-align:center;padding-top:clamp(80px,6vw,120px);padding-bottom:clamp(40px,3vw,80px);position:relative;overflow:hidden}
.contact-block{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.5);border-radius:12px;padding:clamp(10px,0.7vw,16px) clamp(18px,1.4vw,32px);margin-bottom:12px;position:relative;z-index:1;box-shadow:0 4px 14px rgba(0,0,0,.07);transition:background .2s}
.contact-block:hover{background:var(--c-card-hover)}
.contact-block__label{font-size:var(--fs-xs);color:var(--c-brand);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--fw-semibold);margin-bottom:6px}
.contact-block__value{font-family:var(--ff-heading);font-size:var(--fs-body-lg);font-weight:var(--fw-regular);color:var(--c-text)}
.contact-block__sub{font-size:var(--fs-body-lg);color:var(--c-text);margin-top:4px}
.contact-block__cta{margin-top:10px}
.contact-block__vk{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--c-text);font-family:var(--ff-heading);font-weight:var(--fw-semibold);font-size:var(--fs-md);transition:color .2s}
.contact-block__vk:hover{color:var(--c-brand)}
.contact-block__vk svg{flex-shrink:0}

/* ── Contact card (split-card layout) ── */
.contact-card{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.5);border-radius:18px;padding:clamp(28px,2.6vw,48px);box-shadow:0 4px 14px rgba(0,0,0,.07);position:relative;z-index:1;text-align:left;transition:background .2s}
.contact-card:hover{background:var(--c-card-hover)}
.contact-card__head{text-align:center;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid rgba(0,0,0,.08)}
.contact-card__title{font-family:var(--ff-heading);font-size:var(--fs-2xl);font-weight:var(--fw-bold);color:var(--c-text);margin:0 0 6px}
.contact-card__sub{font-size:var(--fs-sm);color:var(--c-text);margin:0}
.contact-card__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,3vw,56px)}
.contact-card__col{display:flex;flex-direction:column;gap:22px}
.contact-card__section-title{font-family:var(--ff-heading);font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.6px;color:var(--c-brand);margin:0;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.08)}
.contact-card__item{display:flex;flex-direction:column;gap:4px}
.contact-card__item-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.5px;color:var(--c-brand);font-weight:var(--fw-semibold)}
.contact-card__item-value{font-family:var(--ff-heading);font-size:var(--fs-base);color:var(--c-text);line-height:1.5}
.contact-card__item-sub{font-size:var(--fs-sm);color:var(--c-text);font-family:var(--ff-heading);margin-top:2px}
.contact-card__cta{margin-top:10px}
.contact-card__vk-link{display:inline-flex;align-items:center;gap:12px;color:var(--c-text);text-decoration:none;font-family:var(--ff-heading);font-weight:var(--fw-semibold)}
.contact-card__vk-link:hover{color:var(--c-brand)}
@media(max-width:768px){
    .contact-card__grid{grid-template-columns:1fr;gap:32px}
}
@media(max-width:480px){
    .contact-card{padding:24px 20px}
    .contact-card__head{margin-bottom:24px;padding-bottom:16px}
    .contact-card__title{font-size:var(--fs-xl)}
    .contact-card__grid{gap:24px}
    .contact-card__col{gap:18px}
}

.contacts-map{margin:clamp(32px,3vw,60px) 0 0;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.3);position:relative;z-index:1;transform:rotate(-1deg);box-shadow:0 3px 14px rgba(0,0,0,.06)}
.contacts-map iframe{width:100%;height:clamp(240px,18vw,380px);border:none}

/* ── Section pill title (inline glass plate over leaves) ── */
.section-pill-title{display:inline-flex;align-items:center;gap:10px;font-family:var(--ff-heading);font-size:var(--fs-h3);font-weight:var(--fw-bold);color:var(--c-text);padding:10px 22px;background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(0,0,0,.06);border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.07);position:relative;z-index:1;margin:0 0 16px;transition:background .2s}
.section-pill-title:hover{background:var(--c-card-hover)}
.section-pill-title--mt{margin-top:40px}

/* ── Search Page ── */
.search-form{display:flex;gap:8px;max-width:680px;margin-bottom:32px;padding:8px;background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.5);border-radius:14px;box-shadow:0 4px 14px rgba(0,0,0,.07)}
.search-result{display:flex;gap:16px;padding:16px 20px;margin-bottom:10px;background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.5);border-radius:12px;text-decoration:none;color:inherit;box-shadow:0 4px 14px rgba(0,0,0,.07);transition:box-shadow .2s,background .2s}
.search-result:hover{background:var(--c-card-hover);box-shadow:0 6px 18px rgba(0,0,0,.1)}
.search-result--doc{align-items:center;gap:14px;padding:14px 20px;margin-bottom:8px}
.search-empty{padding:40px;background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.5);border-radius:14px;text-align:center;box-shadow:0 4px 14px rgba(0,0,0,.07)}
.search-hint{display:inline-block;padding:20px 24px;background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.5);border-radius:12px;color:#444;font-size:var(--fs-sm);box-shadow:0 4px 14px rgba(0,0,0,.07)}

/* ── Leaf Decorations ── */
.leaf-left,.leaf-right{position:absolute;pointer-events:none;z-index:0}
.leaf-left{left:-1.5vw;bottom:0;width:16.67vw;height:36.46vw;background:url('/static/img/leaves-cluster-left.png') left bottom/contain no-repeat;opacity:.8}
.leaf-right{right:-1.5vw;bottom:0;width:16.67vw;height:36.46vw;background:url('/static/img/leaves-cluster-right.png') right bottom/contain no-repeat;opacity:.8}
.leaf-full-left{position:absolute;pointer-events:none;z-index:0;left:-1vw;bottom:0;width:18.23vw;height:36.46vw;background:url('/static/img/leaves-full-left.png') left bottom/contain no-repeat;opacity:.8}
.leaf-full-right{position:absolute;pointer-events:none;z-index:0;right:-1vw;bottom:0;width:18.23vw;height:36.46vw;background:url('/static/img/leaves-full-right.png') right bottom/contain no-repeat;opacity:.8}
.leaf-top-left{position:absolute;pointer-events:none;z-index:0;left:-1vw;top:-2.08vw;width:16.67vw;height:31.25vw;background:url('/static/img/leaves-cluster-left.png') left top/contain no-repeat;opacity:.8;transform:rotate(180deg)}
.leaf-top-center{position:absolute;pointer-events:none;z-index:0;left:50%;top:-2.08vw;transform:translateX(-50%) rotate(180deg);width:13.02vw;height:26.04vw;background:url('/static/img/leaves-cluster-left.png') center top/contain no-repeat;opacity:.7}
.leaf-top-right{position:absolute;pointer-events:none;z-index:0;right:-1vw;top:-2.08vw;width:16.67vw;height:31.25vw;background:url('/static/img/leaves-cluster-right.png') right top/contain no-repeat;opacity:.8;transform:rotate(180deg)}
.leaf-bg-bottom,.leaf-bg-top{opacity:.8}

/* ── Glass fallback (старые iOS/Android, где нет backdrop-filter) ── */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .faq__item,.cabinet-card,.news-main-card,.doc-card,.contact-block{background:#fff}
}

/* ── Responsive ── */

/* Tablet & mobile (≤1100px) */
@media(max-width:1100px){
    .nav a{font-size:var(--fs-sm);padding:14px 4px}
    .header__logo img{height:48px}
    .hero__center{top:16%}
    .hero__logo{width:34%}
    .hero__bubble{font-size:var(--fs-sm);padding:1.5vw 2vw;border-radius:2.5vw}
    .hero__bubble strong{font-size:var(--fs-md)}
    .hero__bubble:first-child{margin-right:-1.5vw;padding-right:2.2vw}
    .hero__bubble:last-child{margin-left:-1.5vw;padding-left:2.2vw}
    .about-hero__center{top:120px}
    .about-hero__bubble{padding:22px;font-size:var(--fs-base);width:min(560px,100%)}
    .about-hero__bubble h1,.about-hero__bubble strong{font-size:var(--fs-lg)}
    .title-break{display:inline}
    .advantages-section__title{font-size:var(--fs-2xl)}
    .advantages-card{padding:28px 24px}
    .success-layout{flex-direction:column;gap:24px}
    .success-pills{width:100%}
    .success-pill{padding:14px 24px;font-size:var(--fs-base)}
    .success-photo{width:100%}
    .success-photo__img{max-height:320px;object-fit:cover}
    .faq-heading h2{font-size:var(--fs-2xl)}
    .news-grid-tiles{grid-template-columns:1fr 1fr;gap:14px}
    .news-tile--big{grid-row:auto;grid-column:1 / -1}
    .news-tile--big .news-tile__media{min-height:200px}
    .hero-logo{width:clamp(220px,32vw,360px)}
    .hero-actions{max-width:680px}
    .faq__item summary{padding:20px 24px;font-size:var(--fs-md)}
    .faq__answer{padding:0 24px;font-size:var(--fs-sm)}
    .card{padding:22px 26px;border-radius:20px}
    .nav{display:none}
    .nav.open{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.08);z-index:99;height:auto;padding:4px 0}
    .nav.open a{padding:10px 24px;border-bottom:none;font-size:var(--fs-md);box-shadow:none;text-align:center}
    .burger{display:block}
    .header__inner{justify-content:space-between}
    .header__logo{position:absolute;left:50%;transform:translateX(-50%);margin:0}
    .header__icon--profile{display:flex}
    .news-layout{grid-template-columns:1fr;gap:32px}
    .news-grid{grid-template-columns:1fr;gap:16px}
    .cabinet-grid{grid-template-columns:1fr}
    .cabinet-card{padding:24px;padding-bottom:56px}
    .cabinet-card h3{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}
    .admin-grid{grid-template-columns:1fr 1fr;gap:20px}
    .admin-card,.admin-card--wide{grid-column:auto;padding:28px 28px 86px}
    .admin-card h3{margin-left:-28px;margin-right:-28px;padding-left:28px;padding-right:28px}
    .admin-card__bar{left:28px;right:28px}
    .payment-row{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}
    .notification-item{margin-left:-24px!important;margin-right:-24px!important;padding-left:24px!important;padding-right:24px!important}
    .cabinet-card--history{padding-bottom:56px}
    .cabinet{padding-top:100px}
    .cabinet-hero{padding-top:100px!important}
    .about-two-col{flex-direction:column}
    .about-photo-side{min-width:100%}
    .header__right .header__icon{display:none}
    .header__user-info{display:none}
    .header__admin-btn{display:none}
    .nav.open .nav__search-link{display:block}
    .nav.open .nav__admin-link{display:block;color:var(--c-brand);font-weight:var(--fw-bold)}
    .hero__houses{display:none}
    .hero,.hero--about{height:auto;min-height:500px}
    .hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
    .hero--about .hero__bg{object-position:center 95%!important}
    .hero__overlay{z-index:1}
    .hero__center{position:relative;z-index:2;flex-direction:column;align-items:center;top:auto;left:auto;transform:none;padding:100px var(--side-pad) 32px;width:100%;max-width:100%}
    .hero__logo{width:45vw;max-width:240px;align-self:center;order:-1;margin-bottom:16px}
    .hero__bubble{margin-top:12px;margin-right:0!important;margin-left:0!important;padding:16px!important;border-radius:20px;font-size:var(--fs-sm);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px)}
    .hero__bubble strong{font-size:var(--fs-md)}
    .about-hero__center{top:140px}
    .about-hero__bubble{width:100%;padding:24px;font-size:var(--fs-base)}
    .about-hero__bubble h1,.about-hero__bubble strong{font-size:var(--fs-xl)}
    .advantages-section__title{font-size:var(--fs-2xl)}
    .advantages-card{padding:32px 24px;background:#fff;border:1px solid #e0e0d8}
    .advantages-card__img{display:none}
    .advantages-card__text{position:static;transform:none;width:100%;padding:0}
    .scroll-top{width:60px;height:60px;bottom:20px}
    .scroll-top svg{width:28px;height:28px}
    .requisites__row{font-size:var(--fs-base);padding:20px 0}
    .login-branch-left,.login-branch-right{display:none}
    .login-card{max-width:90%;padding:40px 36px}
    .leaf-bg-bottom{height:140vw!important;bottom:-4vw!important}
    .leaf-bg-top{height:140vw!important;top:20vw!important;background-position:center top!important}
    .faq-wrap::before{background-position:center 110%!important;background-size:180% auto!important}
    section.section,section.cabinet-hero{padding-top:80px!important}
    .leaf-bg-bottom{background-size:130% auto!important}
    .cabinet-summary__label{display:block;margin-bottom:4px}
    .cabinet-summary__note{margin-left:0!important;display:inline}
    .invoice-item{flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:12px}
    .inv-row{flex-direction:column!important;align-items:stretch!important;gap:8px!important}
    .inv-row > div{flex-shrink:0;min-width:0!important}
    .invoice-item > div{width:100%;flex-shrink:0}
    .invoice-item > div:last-child{display:flex;justify-content:space-between;align-items:center;text-align:left!important}
    .invoice-item > div:last-child .btn{margin-top:0!important}
    .invoice-item__amount{font-size:var(--fs-xl)}
    .invoice-item__type{font-size:var(--fs-md)}
}

/* Mobile */
@media(max-width:768px){
    .advantages-section__bg{background-size:67% auto;background-position:200% 10%}
    .advantages-section__title{font-size:clamp(1.2rem,5.4vw,2.05rem);line-height:1.2}
    .header__icon{width:36px;height:36px}
    .header__icon svg{width:20px;height:20px}
    .header__logo img{height:42px}
    .about-hero__center{position:relative;top:auto;left:auto;transform:none;padding:80px var(--side-pad) 32px;width:100%;max-width:100%}
    .news-grid-tiles{grid-template-columns:1fr;gap:14px}
    .news-tile--big{grid-row:auto;grid-column:auto}
    .news-tile--big .news-tile__media{min-height:0}
    .hero-actions{flex-direction:column;gap:10px;max-width:340px}
    .hero-actions .btn{flex:none;max-width:none;width:100%}
    .hero,.hero--about{height:100vh;height:100svh;min-height:620px}
    .hero-overlay-content{padding-top:clamp(80px,12vw,110px);padding-bottom:clamp(110px,18vw,160px)}
    .hero-logo{width:clamp(180px,28vw,260px);margin-bottom:clamp(10px,1.2vw,18px)}
    .hero-subline{margin-bottom:clamp(20px,2.4vw,32px)}
    .hero-subline__main{font-size:clamp(1.05rem,4.5vw,1.4rem)}
    .hero-subline__loc{font-size:clamp(.78rem,3vw,.95rem)}
    .card{padding:18px 20px;border-radius:16px}
    .card__title{font-size:var(--fs-md)}
    .faq-heading h2{font-size:var(--fs-2xl);letter-spacing:1px}
    .faq__item summary{padding:16px 20px;font-size:var(--fs-base)}
    .faq__answer{padding:0 20px;font-size:var(--fs-sm)}
    .faq__item{border-radius:16px}
    .docs-grid{grid-template-columns:1fr;gap:14px}
    .docs-grid .doc-card:last-child:nth-child(3n+1){grid-column:auto}
    .doc-card{padding:20px 16px}
    .doc-card__icon{width:96px;height:96px}
    .doc-card__icon svg,.doc-card__icon img{width:80px;height:80px;object-fit:contain}
    .doc-card__title{font-size:var(--fs-sm)}
    .contact-block{padding:20px 18px}
    .contact-block__value{font-size:var(--fs-md)}
    .contact-block__sub{font-size:var(--fs-sm)}
    .contacts-map iframe{height:240px}
    .success-pill{padding:10px 18px;font-size:var(--fs-sm);border-radius:18px}
    .requisites__row{font-size:var(--fs-sm);padding:12px 0}
    .news-section-title{font-size:var(--fs-xl);margin-bottom:24px;padding-bottom:24px}
    .news-layout>div{min-width:0}
    .news-main-scroll,.news-sidebar-scroll{max-height:none;overflow-y:visible;padding-right:0}
    .news-main-card{padding:16px 18px;border-radius:14px}
    .news-main-card__title{font-size:var(--fs-md)}
    .news-main-card__text{font-size:var(--fs-sm)}
    .news-sidebar-item{padding:14px 16px;border-radius:14px}
    .news-sidebar-item__title{font-size:var(--fs-sm)}
    .news-pagination{gap:4px;margin-top:24px}
    .news-pagination__btn{padding:0;min-width:36px;width:36px;height:36px}
    .news-pagination__label{display:none}
    .news-pagination__page{min-width:36px;height:36px;font-size:var(--fs-sm);padding:0 10px}
    .news-detail__content{font-size:var(--fs-sm)}
    .news-detail__img{width:100%;max-width:100%;max-height:none;height:auto;border-radius:14px}
    .news-detail-header{font-size:var(--fs-xs);letter-spacing:1px;padding:0 44px 10px}
    .news-back{width:36px;height:36px;background:#fff;border:1px solid #e0e0d8;border-radius:50%;flex-shrink:0;font-size:var(--fs-md);box-shadow:0 1px 4px rgba(0,0,0,.06);top:30%!important}
    .news-back-spacer{width:36px}
    .news-gallery{grid-template-columns:repeat(3,1fr);gap:6px}
    .news-gallery img,.news-gallery__video{aspect-ratio:1/1;border-radius:8px}
    .news-gallery__play::before{width:42px;height:42px}
    .news-gallery__play::after{border-left-width:14px;border-top-width:9px;border-bottom-width:9px;margin-left:3px}
    .news-gallery>*:first-child:last-child{grid-column:1/-1;aspect-ratio:4/3}
    .scroll-top{width:48px;height:48px;bottom:16px}
    .scroll-top svg{width:22px;height:22px}
    .cabinet{flex-direction:column}
    .sidebar{width:100%;padding:0;position:fixed;top:0;left:-100%;height:100vh;z-index:150;transition:left .3s;overflow-y:auto}
    .sidebar.open{left:0}
    .cabinet__main{padding:20px 16px}
    .cabinet-actions{flex-direction:column}
    .advantages-card{padding:18px 16px;border-radius:16px}
    .advantages-card::after{display:none}
    .login-wrap::after{display:none}
    .login-branch-left,.login-branch-right{display:none}
    .login-card{padding:28px 22px;border-radius:18px;max-width:100%}
    .cabinet-hero{padding-top:80px!important;padding-bottom:24px!important}
    .cabinet-card{padding:18px 20px 56px!important}
    .payment-row{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}
    .notification-item{margin-left:-20px!important;margin-right:-20px!important;padding-left:20px!important;padding-right:20px!important}
    .admin-grid{grid-template-columns:1fr;gap:16px}
    .cabinet-card a[style*="position:absolute"]{bottom:16px!important;right:20px!important;font-size:var(--fs-sm)!important}
    .cabinet-card h3{font-size:var(--fs-base);margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}
}

@media(max-width:480px){
    .docs-grid{grid-template-columns:1fr}
    .doc-card__icon{width:88px;height:88px}
    .doc-card__icon svg,.doc-card__icon img{width:72px;height:72px;object-fit:contain}
    .contact-block{padding:18px 16px}
    .contact-block__value{font-size:var(--fs-sm)}
    .contacts-map iframe{height:220px}
    .news-layout{grid-template-columns:1fr;gap:24px}
    .about-hero__bubble{padding:18px;font-size:var(--fs-sm)}
    .about-hero__bubble h1,.about-hero__bubble strong{font-size:var(--fs-md)}
    .faq-heading h2{font-size:var(--fs-xl)}
    .header__logo img{height:42px}
}

/* ── Governance (About page) ── */
.governance-intro{max-width:880px;margin:0 auto;text-align:center}
.governance-intro__text{font-size:var(--fs-base);color:var(--c-muted);line-height:1.7;margin:0}

.governance-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1100px;margin:40px auto 0}
.gov-card{background:#fff;border:1px solid #e0e0d8;border-radius:18px;padding:clamp(22px,1.8vw,32px);box-shadow:0 2px 8px rgba(0,0,0,.04);display:flex;flex-direction:column;gap:14px;position:relative}
.gov-card__head{display:flex;align-items:flex-start;gap:16px}
.gov-card__num{flex-shrink:0;width:42px;height:42px;border-radius:50%;background:var(--c-brand);color:#fff;font-family:var(--ff-heading);font-weight:var(--fw-bold);font-size:var(--fs-lg);display:flex;align-items:center;justify-content:center;line-height:1}
.gov-card__titles{display:flex;flex-direction:column;gap:4px}
.gov-card__title{font-family:var(--ff-heading);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--c-text);line-height:1.2;margin:0}
.gov-card__subtitle{font-size:var(--fs-xs);color:var(--c-brand);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.6px}
.gov-card__desc{font-size:var(--fs-base);color:var(--c-muted);line-height:1.6;margin:0}
.gov-card__list-title{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-text);text-transform:uppercase;letter-spacing:.3px;margin:6px 0 0}
.gov-card__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.gov-card__list li{position:relative;padding-left:22px;font-size:var(--fs-base);color:var(--c-muted);line-height:1.55}
.gov-card__list li::before{content:"";position:absolute;left:0;top:9px;width:10px;height:10px;border:2px solid var(--c-brand);border-top:none;border-right:none;transform:rotate(-45deg)}
.gov-card__note{background:#f7f7f5;border-left:3px solid var(--c-brand);padding:12px 14px;font-size:var(--fs-sm);color:var(--c-muted);line-height:1.55;border-radius:0 8px 8px 0;margin:0}

.board-section{max-width:1100px;margin:60px auto 0}
.board-section__title{font-family:var(--ff-heading);font-size:var(--fs-h2);font-weight:var(--fw-bold);color:var(--c-text);text-align:center;margin:0 0 28px}
.board-card{background:#fff;border:1px solid #e0e0d8;border-radius:18px;padding:clamp(24px,2vw,36px);box-shadow:0 2px 8px rgba(0,0,0,.04)}
.board-card__label{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-brand);text-transform:uppercase;letter-spacing:.4px;margin:0 0 18px}
.board-list{list-style:none;padding:0;margin:0 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:14px 32px}
.board-list li{padding:8px 0;border-bottom:1px solid #efefe9;font-size:var(--fs-base);color:var(--c-text)}
.board-list li:nth-last-child(-n+2){border-bottom:none}
.board-reviser{padding-top:20px;border-top:1px solid #e0e0d8;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.board-reviser__label{font-family:var(--ff-heading);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--c-brand);text-transform:uppercase;letter-spacing:.4px}
.board-reviser__name{font-size:var(--fs-base);color:var(--c-text)}

@media (max-width:900px){
    .governance-grid{grid-template-columns:1fr;gap:16px}
    .board-list{grid-template-columns:1fr;gap:0}
    .board-list li{border-bottom:1px solid #efefe9!important}
    .board-list li:last-child{border-bottom:none!important}
    .gov-card__num{width:36px;height:36px;font-size:var(--fs-base)}
    .gov-card__title{font-size:var(--fs-lg)}
}
@media (max-width:480px){
    .gov-card{padding:20px}
    .gov-card__head{gap:12px}
    .gov-card__list li{padding-left:20px;font-size:var(--fs-sm)}
    .gov-card__desc{font-size:var(--fs-sm)}
    .board-section{margin-top:40px}
    .board-section__title{margin-bottom:20px}
    .board-card{padding:24px 20px}
    .governance-intro__text{font-size:var(--fs-sm)}
}
