/* ===== Коллайдер добра — premium dark theme ===== */
:root{
  --bg:#07080c; --bg2:#0b0d14; --surface:rgba(255,255,255,.035);
  --surface2:rgba(255,255,255,.06); --border:rgba(255,255,255,.09);
  --text:#eef0f6; --muted:#9aa0b4; --dim:#6b7186;
  --gold:#f0c46a; --gold2:#e8a94e; --cyan:#6fe3e8; --violet:#9a8cff;
  --accent:var(--gold); --accent2:var(--cyan); --deep:#0a0a0f;
  --grad:linear-gradient(115deg,var(--gold),var(--cyan));
  --grad-v:linear-gradient(160deg,var(--violet),var(--cyan));
  --radius:18px; --maxw:1160px; --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg); color:var(--text);
  font-family:"Manrope",system-ui,sans-serif; font-size:17px; line-height:1.6;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
body::before{ /* фоновый шум/градиент */
  content:""; position:fixed; inset:0; z-index:-2;
  background:
    radial-gradient(900px 600px at 80% -10%, rgba(154,140,255,.10), transparent 60%),
    radial-gradient(800px 600px at 10% 5%, rgba(240,196,106,.08), transparent 55%),
    var(--bg);
}
h1,h2,h3,h4,.brand__txt{font-family:"Unbounded",sans-serif;font-weight:600;line-height:1.1;letter-spacing:-.01em}
a{color:inherit;text-decoration:none}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{display:inline-block;font-family:"Unbounded";font-size:.72rem;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold);padding:.35em .9em;border:1px solid var(--border);
  border-radius:100px;background:var(--surface);margin-bottom:1.1rem}

/* ===== buttons ===== */
.btn{display:inline-flex;align-items:center;gap:.5em;padding:.85em 1.5em;border-radius:100px;
  font-family:"Manrope";font-weight:600;font-size:.95rem;cursor:pointer;border:1px solid transparent;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s,border-color .25s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn--gold{background:var(--grad);color:#0a0a0f;box-shadow:0 10px 30px -10px rgba(240,196,106,.55)}
.btn--gold:hover{box-shadow:0 16px 40px -12px rgba(240,196,106,.7)}
.btn--outline{border-color:var(--border);color:var(--text);background:var(--surface)}
.btn--outline:hover{border-color:var(--gold);background:var(--surface2)}
.btn--ghost{border-color:var(--border);background:transparent;color:var(--text);padding:.6em 1.2em}
.btn--ghost:hover{border-color:var(--gold)}
.btn--text{color:var(--muted);padding:.85em .4em}
.btn--text:hover{color:var(--gold)}

/* ===== proto badge / cursor ===== */
.proto-badge{position:fixed;right:14px;bottom:14px;z-index:60;font-size:.72rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted);background:rgba(10,12,18,.7);backdrop-filter:blur(8px);
  border:1px solid var(--border);padding:.45em .9em;border-radius:100px}
.ver-switch{position:fixed;left:14px;bottom:14px;z-index:60;font-size:.78rem;font-weight:600;color:var(--text);
  background:rgba(10,12,18,.8);backdrop-filter:blur(8px);border:1px solid var(--border);padding:.5em 1em;border-radius:100px;transition:.25s}
.ver-switch:hover{border-color:var(--gold);transform:translateY(-2px)}
@media(max-width:560px){.ver-switch{font-size:.7rem;padding:.4em .8em}}
.cursor-glow{position:fixed;width:380px;height:380px;border-radius:50%;pointer-events:none;z-index:-1;
  background:radial-gradient(circle,rgba(111,227,232,.10),transparent 60%);transform:translate(-50%,-50%);
  transition:opacity .4s;opacity:0}
@media(hover:hover){.cursor-glow{opacity:1}}

/* ===== nav ===== */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  padding:1.1rem clamp(1rem,4vw,2.4rem);transition:padding .3s,background .3s,border-color .3s;
  border-bottom:1px solid transparent}
.nav.scrolled{background:rgba(8,9,14,.72);backdrop-filter:blur(14px);border-color:var(--border);padding-top:.7rem;padding-bottom:.7rem}
.brand{display:flex;align-items:center;gap:.6rem;font-family:"Unbounded";font-weight:600;font-size:1.05rem}
.brand__mark{width:34px;height:34px;display:grid;place-items:center}
.brand__txt span{color:var(--gold)}
.spiral{width:100%;height:100%;animation:spin 14s linear infinite;filter:drop-shadow(0 0 6px rgba(240,196,106,.4))}
@keyframes spin{to{transform:rotate(360deg)}}
.nav__links{display:flex;gap:1.7rem}
.nav__links a{color:var(--muted);font-size:.92rem;font-weight:500;position:relative;transition:color .2s}
.nav__links a:hover{color:var(--text)}
.nav__links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--grad);transition:width .25s var(--ease)}
.nav__links a:hover::after{width:100%}
.nav__actions{display:flex;align-items:center;gap:.8rem}
.nav__burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px}
.nav__burger span{width:24px;height:2px;background:var(--text);border-radius:2px;transition:.3s}

/* ===== hero ===== */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;
  text-align:center;padding:7rem 1.2rem 4rem;overflow:hidden}
.hero__canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.hero__glow{position:absolute;border-radius:50%;filter:blur(80px);z-index:0;opacity:.5}
.hero__glow--1{width:520px;height:520px;background:radial-gradient(circle,rgba(240,196,106,.35),transparent 65%);top:6%;left:8%}
.hero__glow--2{width:560px;height:560px;background:radial-gradient(circle,rgba(154,140,255,.30),transparent 65%);bottom:2%;right:6%}
.hero__inner{position:relative;z-index:2;max-width:880px}
.hero__tag{font-size:.85rem;color:var(--muted);letter-spacing:.04em;margin-bottom:1.4rem;
  border:1px solid var(--border);background:rgba(10,12,18,.5);backdrop-filter:blur(6px);
  display:inline-block;padding:.5em 1.1em;border-radius:100px}
.hero__title{font-size:clamp(2.4rem,6.2vw,4.6rem);font-weight:800;margin-bottom:1.3rem}
.hero__lead{font-size:clamp(1rem,1.7vw,1.22rem);color:var(--muted);max-width:640px;margin:0 auto 2.2rem}
.hero__cta{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;margin-bottom:3.4rem}
.hero__stats{display:flex;gap:clamp(1.5rem,5vw,4rem);justify-content:center;flex-wrap:wrap}
.stat b{display:block;font-family:"Unbounded";font-size:2.2rem;font-weight:600;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{font-size:.85rem;color:var(--dim)}
.hero__scroll{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);width:26px;height:42px;
  border:2px solid var(--border);border-radius:14px;z-index:2}
.hero__scroll span{position:absolute;top:8px;left:50%;width:4px;height:8px;background:var(--gold);border-radius:2px;
  transform:translateX(-50%);animation:scroll 1.6s infinite}
@keyframes scroll{0%{opacity:0;top:8px}40%{opacity:1}80%{opacity:0;top:22px}100%{opacity:0}}

/* ===== sections ===== */
.section{max-width:var(--maxw);margin:0 auto;padding:clamp(4.5rem,9vw,8rem) clamp(1.1rem,4vw,2rem)}
.section__head{max-width:720px;margin-bottom:3.2rem}
.section__head h2{font-size:clamp(1.8rem,3.7vw,2.9rem)}
.section__sub{color:var(--muted);margin-top:1rem;font-size:1.06rem}

/* cards */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.cards--3{grid-template-columns:repeat(3,1fr)}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);
  padding:1.8rem 1.5rem;transition:transform .35s var(--ease),border-color .35s,background .35s}
.card:hover{transform:translateY(-6px);border-color:rgba(240,196,106,.35);background:var(--surface2)}
.card__ic{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;font-size:1.3rem;
  background:var(--grad);color:#0a0a0f;margin-bottom:1.1rem}
.card h3{font-size:1.12rem;margin-bottom:.6rem}
.card p{color:var(--muted);font-size:.95rem}

/* directions */
.dir-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}
.dir{position:relative;padding:2rem;border-radius:var(--radius);border:1px solid var(--border);
  background:var(--img),var(--surface);overflow:hidden;transition:transform .4s var(--ease),border-color .4s;min-height:210px;
  display:flex;flex-direction:column}
.dir::after{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 100% 0,rgba(240,196,106,.10),transparent 60%);opacity:0;transition:opacity .4s}
.dir:hover{transform:translateY(-6px);border-color:rgba(111,227,232,.4)}
.dir:hover::after{opacity:1}
.dir__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:auto}
.dir__num{font-family:"Unbounded";color:var(--gold);font-size:.9rem;letter-spacing:.1em}
.dir__arrow{font-size:1.3rem;color:var(--muted);transition:transform .3s}
.dir:hover .dir__arrow{transform:translate(4px,-4px);color:var(--gold)}
.dir h3{font-size:1.3rem;margin:1.2rem 0 .5rem}
.dir p{color:var(--muted);font-size:.95rem;margin-bottom:1rem}
.dir__bar{height:5px;border-radius:5px;background:rgba(255,255,255,.08);overflow:hidden;margin-bottom:.6rem}
.dir__bar i{display:block;height:100%;background:var(--grad);border-radius:5px}
.dir__meta{font-size:.8rem;color:var(--dim)}

/* dobro / donate */
.dobro__wrap{display:grid;grid-template-columns:1.3fr .9fr;gap:2.5rem;align-items:center;
  background:linear-gradient(160deg,rgba(154,140,255,.08),rgba(240,196,106,.05));
  border:1px solid var(--border);border-radius:28px;padding:clamp(1.8rem,4vw,3.2rem)}
.dobro__left h2{font-size:clamp(1.7rem,3.2vw,2.4rem);margin-bottom:1rem}
.dobro__left>p{color:var(--muted);margin-bottom:1.6rem}
.amounts{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1.2rem}
.amount{padding:.7em 1.2em;border-radius:100px;border:1px solid var(--border);background:var(--surface);
  color:var(--text);font-family:"Manrope";font-weight:600;cursor:pointer;transition:.25s}
.amount:hover{border-color:var(--gold)}
.amount--on{background:var(--grad);color:#0a0a0f;border-color:transparent}
.switch{display:flex;align-items:center;gap:.7rem;color:var(--muted);font-size:.92rem;cursor:pointer;margin-bottom:1.5rem}
.switch input{display:none}
.switch__t{width:42px;height:24px;border-radius:100px;background:var(--surface2);border:1px solid var(--border);position:relative;transition:.3s}
.switch__t::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--muted);transition:.3s}
.switch input:checked+.switch__t{background:var(--grad)}
.switch input:checked+.switch__t::after{left:21px;background:#0a0a0f}
.dobro__btns{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:1rem}
.dobro__note{font-size:.82rem;color:var(--dim)}
.dobro__right{text-align:center}
.pulse{position:relative;width:200px;height:200px;margin:0 auto 1.2rem;display:grid;place-items:center}
.pulse__ring{position:absolute;inset:0;border:1px solid rgba(240,196,106,.4);border-radius:50%;animation:pulse 3s ease-out infinite}
.pulse__ring:nth-child(2){animation-delay:1s}
.pulse__ring:nth-child(3){animation-delay:2s}
@keyframes pulse{0%{transform:scale(.4);opacity:.9}100%{transform:scale(1.1);opacity:0}}
.pulse__core{width:84px;height:84px;border-radius:50%;background:var(--grad);display:grid;place-items:center;
  font-size:2rem;color:#0a0a0f;box-shadow:0 0 50px rgba(240,196,106,.5)}
.dobro__caption{color:var(--muted);font-size:.9rem;max-width:240px;margin:0 auto}

/* calc */
.calc__panel{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;
  background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:clamp(1.5rem,3vw,2.4rem)}
.calc__in label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.5rem;font-weight:600}
.calc__in textarea,.calc__field input{width:100%;background:var(--bg2);border:1px solid var(--border);border-radius:14px;
  color:var(--text);font-family:"Manrope";font-size:1rem;padding:.9em 1em;resize:vertical;transition:border-color .25s}
.calc__in textarea:focus,.calc__field input:focus{outline:none;border-color:var(--gold)}
.calc__row{display:flex;gap:1rem;align-items:flex-end;margin-top:1rem}
.calc__field{flex:1}.calc__field small{color:var(--dim);font-weight:400}
.calc__row .btn{white-space:nowrap}
.calc__note{font-size:.78rem;color:var(--dim);margin-top:.9rem}
.calc__out{background:linear-gradient(160deg,rgba(111,227,232,.07),rgba(154,140,255,.05));
  border:1px solid var(--border);border-radius:18px;display:grid;place-items:center;text-align:center;padding:1.6rem;min-height:280px}
.calc__placeholder p{color:var(--dim);font-size:.9rem;margin-top:.5rem}
.calc__big{font-family:"Unbounded";font-size:3rem;font-weight:600;line-height:1;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.calc__big span{font-size:1.6rem}
.calc__result{animation:fadeUp .5s var(--ease)}
.calc__result .calc__big{font-size:3.4rem;margin-bottom:.4rem}
.calc__rank{display:inline-block;font-family:"Unbounded";font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;
  padding:.4em 1em;border-radius:100px;background:var(--grad);color:#0a0a0f;margin-bottom:1rem}
.calc__txt{color:var(--text);font-size:.98rem;margin-bottom:1rem}
.calc__metrics{display:flex;gap:1.4rem;justify-content:center;border-top:1px solid var(--border);padding-top:1rem}
.calc__metrics div b{display:block;font-family:"Unbounded";font-size:1.3rem;color:var(--gold)}
.calc__metrics div span{font-size:.74rem;color:var(--dim)}

/* community */
.community__grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}
.community__grid h2{font-size:clamp(1.7rem,3.2vw,2.4rem);margin:.4rem 0 1rem}
.community__grid>div>p{color:var(--muted);margin-bottom:1.4rem}
.ticks{list-style:none;margin-bottom:1.8rem;display:grid;gap:.7rem}
.ticks li{padding-left:1.8rem;position:relative;color:var(--text)}
.ticks li::before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:700}
.board{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:1.5rem}
.board__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;
  font-size:.85rem;color:var(--muted)}
.board__head b{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);
  border:1px solid var(--border);padding:.2em .7em;border-radius:100px}
.board__list{list-style:none;display:grid;gap:.5rem}
.board__list li{display:flex;align-items:center;gap:1rem;padding:.7rem .9rem;border-radius:12px;background:var(--bg2)}
.board__you{background:var(--grad)!important}
.board__you *{color:#0a0a0f!important;font-weight:700}
.board__rk{font-family:"Unbounded";color:var(--gold);width:20px}
.board__nm{flex:1}
.board__sc{font-family:"Unbounded";font-weight:600}

/* partners */
.partners__logos{margin-top:3rem;text-align:center;color:var(--dim)}
.partners__logos span{font-size:.85rem;letter-spacing:.05em}
.logos{display:flex;gap:1.4rem;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:1rem;
  font-family:"Unbounded";font-size:1.1rem;color:var(--muted);opacity:.7}
.logos i{font-style:normal}

/* transparency */
.docs{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.doc{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.5rem;transition:.3s}
.doc:hover{border-color:var(--gold);transform:translateY(-4px)}
.doc b{display:block;font-family:"Unbounded";color:var(--gold);margin-bottom:.4rem}
.doc span{color:var(--muted);font-size:.9rem}

/* footer */
.footer{border-top:1px solid var(--border);background:var(--bg2);margin-top:3rem}
.footer__top{max-width:var(--maxw);margin:0 auto;padding:4rem clamp(1.1rem,4vw,2rem) 2.5rem;
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.brand--lg{font-size:1.3rem;margin-bottom:1rem}
.brand--lg .brand__mark{width:40px;height:40px}
.footer__brand p{color:var(--muted);font-size:.92rem}
.footer__col h4{font-family:"Unbounded";font-size:.85rem;margin-bottom:1rem;color:var(--text)}
.footer__col a{display:block;color:var(--muted);font-size:.92rem;margin-bottom:.6rem;transition:color .2s}
.footer__col a:hover{color:var(--gold)}
.footer__help{color:var(--muted);font-size:.9rem}
.footer__bottom{border-top:1px solid var(--border);max-width:var(--maxw);margin:0 auto;
  padding:1.4rem clamp(1.1rem,4vw,2rem);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;
  color:var(--dim);font-size:.82rem}

/* reveal */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.in{opacity:1;transform:none}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* ===== responsive ===== */
@media(max-width:900px){
  .cards,.cards--3,.docs{grid-template-columns:repeat(2,1fr)}
  .dir-grid{grid-template-columns:1fr}
  .dobro__wrap,.calc__panel,.community__grid{grid-template-columns:1fr}
  .dobro__right{display:none}
  .footer__top{grid-template-columns:1fr 1fr}
  .nav__links{position:fixed;top:0;right:0;height:100vh;width:min(78vw,320px);flex-direction:column;
    justify-content:center;gap:2rem;background:rgba(8,9,14,.97);backdrop-filter:blur(16px);
    border-left:1px solid var(--border);transform:translateX(100%);transition:transform .4s var(--ease);padding:2rem}
  .nav__links.open{transform:none}
  .nav__links a{font-size:1.2rem}
  .nav__burger{display:flex}
  .burger-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .burger-open span:nth-child(2){opacity:0}
  .burger-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}
@media(max-width:560px){
  .cards,.cards--3,.docs{grid-template-columns:1fr}
  .calc__row{flex-direction:column;align-items:stretch}
  .footer__top{grid-template-columns:1fr}
  .hero__cta{flex-direction:column}
  .hero__cta .btn{justify-content:center}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* real logo «Среда Возможностей» + QR + реквизиты */
.brand__logo{height:44px;width:auto;display:block}
.brand--lg .brand__logo{height:54px}
.hero__logo{width:clamp(120px,17vw,172px);height:auto;display:block;margin:0 auto 1.5rem;filter:drop-shadow(0 12px 40px rgba(240,196,106,.28))}
.qr{background:#fff;border-radius:16px;padding:14px;display:inline-block;box-shadow:0 16px 44px rgba(0,0,0,.5)}
.qr img{width:210px;max-width:100%;display:block}
.footer__req{max-width:var(--maxw);margin:1.6rem auto 0;padding:1.2rem 20px 0;border-top:1px solid var(--border);font-size:.8rem;color:var(--dim);line-height:1.7}
.footer__req b{color:var(--muted)}
.footer__req a{color:var(--accent);text-decoration:underline}
@media(max-width:560px){.brand__logo{height:38px}.hero__logo{width:120px}}

/* coverflow кейсы */
.cases .section__head{margin-left:auto;margin-right:auto;text-align:center}
.coverflow{position:relative;display:flex;align-items:center;justify-content:center;perspective:1600px;min-height:440px}
.cf-stage{position:relative;width:min(400px,78vw);height:400px;transform-style:preserve-3d}
.cf-card{position:absolute;inset:0;border-radius:18px;overflow:hidden;cursor:pointer;background:var(--surface2);border:1px solid var(--border);
  transition:transform .5s var(--ease),opacity .5s;box-shadow:0 30px 70px -30px rgba(0,0,0,.8);will-change:transform}
.cf-cover{height:62%;background-size:cover;background-position:center}
.cf-card--noimg .cf-cover{display:grid;place-items:center;background:var(--grad)}
.cf-card--noimg .cf-cover span{font-size:4rem}
.cf-meta{padding:1.1rem 1.2rem}
.cf-tag{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:700}
.cf-meta h3{font-size:1.12rem;margin:.35rem 0}
.cf-meta p{font-size:.84rem;color:var(--muted)}
.cf-more{display:inline-block;margin-top:.7rem;font-size:.82rem;font-weight:700;color:var(--gold);opacity:0;transition:opacity .3s}
.cf-card.is-active .cf-more{opacity:1}
.cf-card.is-active{box-shadow:0 44px 96px -30px rgba(0,0,0,.9)}
.cf-arrow{position:absolute;z-index:200;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;
  border:1px solid var(--border);background:var(--surface2);color:var(--text);font-size:1.7rem;line-height:1;cursor:pointer;transition:.25s;backdrop-filter:blur(6px)}
.cf-arrow:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-50%) scale(1.08)}
.cf-prev{left:0}.cf-next{right:0}
.cf-dots{display:flex;gap:.5rem;justify-content:center;margin-top:1.6rem}
.cf-dot{width:9px;height:9px;border-radius:50%;border:0;background:var(--border);cursor:pointer;transition:.25s;padding:0}
.cf-dot.is-on{background:var(--grad);width:26px;border-radius:6px}

/* модалка кейса (90% экрана) */
.modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center}
.modal.is-open{display:flex}
.modal__overlay{position:absolute;inset:0;background:rgba(0,0,0,.8);backdrop-filter:blur(7px)}
.modal__box{position:relative;width:90vw;max-width:1080px;height:90vh;background:var(--bg2);border:1px solid var(--border);border-radius:22px;
  overflow:auto;box-shadow:0 40px 120px rgba(0,0,0,.8);animation:mIn .35s var(--ease)}
@keyframes mIn{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}
.modal__close{position:absolute;top:16px;right:16px;z-index:5;width:42px;height:42px;border-radius:50%;border:1px solid var(--border);
  background:var(--surface2);color:var(--text);font-size:1.5rem;cursor:pointer;backdrop-filter:blur(6px)}
.modal__close:hover{border-color:var(--gold);color:var(--gold)}
.modal__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:1005;width:48px;height:48px;border-radius:50%;border:1px solid var(--border);
  background:rgba(0,0,0,.6);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;backdrop-filter:blur(6px)}
.modal__nav:hover{border-color:var(--gold);color:var(--gold)}
.modal__prev{left:calc(5vw - 24px)}.modal__next{right:calc(5vw - 24px)}
.modal__body{padding:clamp(1.5rem,4vw,3rem)}
.m-tag{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700}
.m-title{font-size:clamp(1.6rem,3.6vw,2.5rem);margin:.5rem 0}
.m-sub{color:var(--muted);margin-bottom:1.5rem}
.m-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.5rem 0;padding:1.3rem;background:var(--surface);border:1px solid var(--border);border-radius:16px;text-align:center}
.m-metrics b{display:block;font-family:"Unbounded",sans-serif;font-weight:600;font-size:1.7rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.m-metrics span{font-size:.78rem;color:var(--dim)}
.m-desc{color:var(--text);font-size:1.02rem;line-height:1.75;margin-bottom:1.5rem}
.m-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.m-gallery img{width:100%;height:290px;object-fit:cover;border-radius:14px;border:1px solid var(--border)}
.m-media{margin-top:1.5rem;font-size:.9rem;color:var(--muted);border-left:2px solid var(--gold);padding-left:1rem}
@media(max-width:700px){
  .cf-stage{width:80vw;height:380px}
  .m-metrics{grid-template-columns:repeat(2,1fr)}
  .m-gallery{grid-template-columns:1fr}.m-gallery img{height:230px}
  .modal__prev{left:6px}.modal__next{right:6px}
}

/* открытый сбор (адресный) */
.fund-card{display:grid;grid-template-columns:.82fr 1.18fr;background:var(--surface);border:1px solid var(--border);border-radius:22px;overflow:hidden}
.fund-photo{position:relative;min-height:360px;background:linear-gradient(150deg,rgba(240,196,106,.28),rgba(230,169,78,.12))}
.fund-badge{position:absolute;top:16px;left:16px;z-index:2;display:inline-flex;align-items:center;gap:.55em;background:rgba(20,14,8,.72);backdrop-filter:blur(6px);border:1px solid var(--border);color:#fff;font-size:.76rem;font-weight:700;letter-spacing:.04em;padding:.45em .95em;border-radius:100px}
.fund-badge::before{content:"";width:8px;height:8px;border-radius:50%;background:#3ddc84;box-shadow:0 0 0 0 rgba(61,220,132,.6);animation:pulseDot 1.8s infinite}
@keyframes pulseDot{0%{box-shadow:0 0 0 0 rgba(61,220,132,.6)}70%{box-shadow:0 0 0 9px rgba(61,220,132,0)}100%{box-shadow:0 0 0 0 rgba(61,220,132,0)}}
.fund-body{padding:clamp(1.5rem,3vw,2.4rem)}
.fund-body h3{font-size:1.4rem;margin-bottom:.6rem}
.fund-diag{color:var(--muted);margin-bottom:1.3rem}
.fund-progress{margin-bottom:1.3rem}
.fund-bar{height:12px;border-radius:12px;background:var(--bg2);border:1px solid var(--border);overflow:hidden;margin-bottom:.8rem}
.fund-bar i{display:block;height:100%;border-radius:12px;background:var(--grad)}
.fund-nums{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.fund-nums b{display:block;font-family:"Unbounded",sans-serif;font-size:1.05rem;color:var(--gold)}
.fund-nums span{font-size:.74rem;color:var(--dim)}
.fund-upd{font-size:.78rem;color:var(--dim);margin-bottom:1rem;display:flex;align-items:center;gap:.45em}
.fund-upd::before{content:"🔄";font-size:.95em}
.fund-quote{font-style:italic;font-size:1.05rem;color:var(--text);margin-bottom:1.3rem;line-height:1.45}
.fund-cta{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:.9rem}
.fund-note{font-size:.8rem;color:var(--dim)}
.fund-slides{position:absolute;inset:0}
.fund-slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 15%;opacity:0;transition:opacity .8s ease}
.fund-slides img.is-on{opacity:1}
.fund-dots{position:absolute;bottom:14px;left:0;right:0;z-index:2;display:flex;gap:.4rem;justify-content:center}
.fund-dot{width:8px;height:8px;border-radius:50%;border:0;background:rgba(255,255,255,.5);cursor:pointer;padding:0;transition:.25s}
.fund-dot.is-on{background:#fff;width:22px;border-radius:5px}
.fund-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.42);backdrop-filter:blur(4px);color:#fff;font-size:1.6rem;line-height:1;cursor:pointer;transition:.2s}
.fund-arrow:hover{background:rgba(0,0,0,.62)}
.fund-arrow--prev{left:12px}.fund-arrow--next{right:12px}
@media(max-width:760px){.fund-card{grid-template-columns:1fr}.fund-photo{min-height:300px}.fund-nums{grid-template-columns:1fr 1fr}}


.it{font-family:"Playfair Display",serif;font-style:italic;font-weight:600;text-transform:none;letter-spacing:0;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow--new{color:var(--bg);background:var(--grad);padding:.35em .9em;border-radius:100px;letter-spacing:.12em;display:inline-block}
/* Индекс вклада добра v2 */
.calc2{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:clamp(1.5rem,3vw,2.4rem)}
.calc2__form{display:grid;gap:1.1rem;align-content:start}
.c2f label{display:block;font-size:.82rem;color:var(--muted);margin-bottom:.5rem;font-weight:600}
.c2f input{width:100%;background:var(--deep);border:1px solid var(--border);border-radius:12px;color:var(--text);font-family:inherit;font-size:1rem;padding:.8em 1em;transition:border-color .25s}
.c2f input:focus{outline:none;border-color:var(--accent)}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{padding:.5em 1em;border-radius:100px;border:1px solid var(--border);background:var(--deep);color:var(--muted);font-family:inherit;font-size:.86rem;cursor:pointer;transition:.2s}
.chip:hover{border-color:var(--accent);color:var(--text)}
.chip.is-on{background:var(--grad);color:#0a0a0f;border-color:transparent;font-weight:600}
.seg{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;background:var(--deep);border:1px solid var(--border);border-radius:12px;padding:.3rem}
.seg__b{padding:.6em .3em;border:0;background:transparent;color:var(--muted);font-family:inherit;font-size:.82rem;border-radius:9px;cursor:pointer;transition:.2s}
.seg__b:hover{color:var(--text)}
.seg__b.is-on{background:var(--grad);color:#0a0a0f;font-weight:600}
.calc2__out{background:linear-gradient(160deg,rgba(240,196,106,.07),rgba(230,169,78,.05));border:1px solid var(--border);border-radius:18px;padding:1.6rem;display:flex;flex-direction:column;align-items:center;text-align:center}
.gauge{position:relative;width:210px;height:210px;margin:.3rem auto 1.2rem}
.gauge__svg{width:100%;height:100%;transform:rotate(-90deg)}
.gauge__bg{fill:none;stroke:var(--border);stroke-width:13}
.gauge__fg{fill:none;stroke:var(--accent);stroke-width:13;stroke-linecap:round;stroke-dasharray:578;stroke-dashoffset:578;transition:stroke-dashoffset 1.1s var(--ease)}
.gauge__mid{position:absolute;inset:0;display:grid;place-content:center}
.gauge__mid b{font-family:"Playfair Display",serif;font-style:italic;font-size:2.7rem;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.gauge__mid i{font-style:normal;color:var(--dim);font-size:.8rem}
.gauge__mid span{display:block;margin-top:.4rem;font-size:.78rem;color:var(--muted);max-width:150px;margin-inline:auto}
.calc2__result{width:100%}
.calc2__hint{color:var(--dim);font-size:.9rem}
.c2-tier{font-size:.95rem;color:var(--muted);margin-bottom:1rem}
.c2-tier b{color:var(--accent);font-weight:700}
.c2-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:1rem 0;margin-bottom:1rem}
.c2-metrics b{display:block;font-family:"Playfair Display",serif;font-style:italic;font-size:1.4rem;color:var(--accent)}
.c2-metrics span{font-size:.72rem;color:var(--dim)}
.c2-spheres{display:grid;gap:.5rem;margin-bottom:1rem;text-align:left}
.sph{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:.7rem;font-size:.82rem;color:var(--muted)}
.sph i{display:block;height:8px;border-radius:8px;background:var(--grad)}
.c2-narr{font-size:.92rem;color:var(--text);margin-bottom:1rem;text-align:left}
.c2-top{font-size:.9rem;color:var(--muted);margin-bottom:1.1rem}
.c2-top b{color:var(--accent)}
.c2-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:1rem}
.c2-cert{display:flex;gap:.6rem;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:1rem}
.c2-cert input{flex:1;min-width:150px;background:var(--deep);border:1px solid var(--border);border-radius:10px;color:var(--text);font-family:inherit;font-size:.92rem;padding:.65em .9em}
.c2-cert input:focus{outline:none;border-color:var(--accent)}
/* модалка сертификата */
.modal__box--cert{width:min(92vw,880px);height:auto;max-height:94vh;padding:1.4rem}
.cert-wrap{width:100%;border-radius:14px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.cert-wrap canvas{width:100%;height:auto;display:block}
.cert-actions{display:flex;gap:.8rem;justify-content:center;margin-top:1.2rem;flex-wrap:wrap}
@media(max-width:900px){.calc2{grid-template-columns:1fr}}
@media(max-width:560px){.c2-metrics{grid-template-columns:1fr 1fr}.sph{grid-template-columns:90px 1fr}}

