@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&family=Unbounded:wght@400;500;600;700&display=swap');

:root{
  --graphite:#0E0F11;
  --graphite-2:#15171A;
  --graphite-3:#1C1F23;
  --silver:#BDBFC5;
  --silver-bright:#E8E9EC;
  --teal:#00BFAE;
  --coral:#FF7A66;
  --lavender:#A78BFA;
  --lavender-bright:#C4ADFF;
  --lavender-dim:#7E63CC;
  --text:#C9CBD0;
  --muted:#71757E;
  --line:rgba(189,191,197,.1);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Manrope',sans-serif;
  background:var(--graphite);color:var(--text);line-height:1.55;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img,svg{max-width:100%;display:block}
a{color:inherit}
button{font-family:inherit}

.display{font-family:'Michroma',sans-serif;letter-spacing:.02em}
.container{max-width:1400px;margin:0 auto;padding:0 56px}

/* === REVEAL === */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease, transform .9s ease}
.reveal.is-in, .reveal.active{opacity:1;transform:translateY(0)}
.reveal[data-delay="1"]{transition-delay:.08s}
.reveal[data-delay="2"]{transition-delay:.16s}
.reveal[data-delay="3"]{transition-delay:.24s}
.reveal[data-delay="4"]{transition-delay:.32s}
.reveal[data-delay="5"]{transition-delay:.40s}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
  .reveal{opacity:1;transform:none}
  .starfield::before{animation:none !important}
  .hero-bird svg{animation:none !important}
}

/* === STARFIELD + GRAIN === */
.starfield{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.starfield::before{
  content:"";position:absolute;inset:-50%;
  background-image:
    radial-gradient(1px 1px at 10% 20%, rgba(255,255,255,.85), transparent),
    radial-gradient(1px 1px at 30% 70%, rgba(255,255,255,.55), transparent),
    radial-gradient(1px 1px at 55% 35%, rgba(255,255,255,.75), transparent),
    radial-gradient(1px 1px at 70% 80%, rgba(255,255,255,.45), transparent),
    radial-gradient(1.5px 1.5px at 85% 15%, rgba(255,255,255,.95), transparent),
    radial-gradient(1px 1px at 90% 60%, rgba(255,255,255,.55), transparent),
    radial-gradient(1px 1px at 45% 90%, rgba(167,139,250,.7), transparent),
    radial-gradient(1px 1px at 20% 50%, rgba(255,255,255,.45), transparent),
    radial-gradient(1.5px 1.5px at 62% 12%, rgba(167,139,250,.7), transparent),
    radial-gradient(1px 1px at 5% 85%, rgba(255,255,255,.55), transparent);
  background-size:600px 600px;background-repeat:repeat;opacity:.55;
  animation:starDrift 60s linear infinite;
}
@keyframes starDrift{
  0%{transform:translate3d(0,0,0)}
  100%{transform:translate3d(-600px,-600px,0)}
}
.grain{position:absolute;inset:0;pointer-events:none;opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.geo-lines{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.geo-lines svg{position:absolute;width:100%;height:100%}

/* === NAV === */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:rgba(14,15,17,.82);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--line);padding:20px 0;
  transition:padding .3s, background .3s;
}
.nav.is-scrolled{padding:12px 0;background:rgba(8,9,10,.94)}
.nav .container{display:flex;justify-content:space-between;align-items:center;gap:24px}
.logo-link{
  font-family:'Michroma',sans-serif;font-size:18px;color:var(--silver-bright);
  letter-spacing:.12em;display:inline-flex;align-items:center;gap:14px;text-decoration:none;
}
.logo-link .logo-mark{width:48px;height:32px;flex-shrink:0}
.nav-menu{display:flex;gap:36px;list-style:none}
.nav-menu a{color:var(--muted);text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;transition:color .25s;position:relative}
.nav-menu a::after{
  content:"";position:absolute;left:0;right:0;bottom:-7px;height:1.5px;
  background:var(--lavender);transform:scaleX(0);transform-origin:left;transition:transform .3s;
}
.nav-menu a:hover{color:var(--silver-bright)}
.nav-menu a:hover::after{transform:scaleX(1)}
.nav-cta{
  font-family:'Manrope';border:1px solid var(--lavender);color:var(--silver-bright);
  padding:11px 22px;font-size:11px;font-weight:700;letter-spacing:.14em;
  text-decoration:none;text-transform:uppercase;transition:all .3s;
}
.nav-cta:hover{background:var(--lavender);color:var(--graphite)}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--silver-bright);padding:8px}
.nav-toggle svg{width:24px;height:24px}

/* === HERO (extra lavender) === */
.hero{
  min-height:100vh;padding:160px 0 90px;position:relative;overflow:hidden;
  background:
    radial-gradient(ellipse 70% 60% at 70% 35%, rgba(167,139,250,.30) 0%, transparent 60%),
    radial-gradient(ellipse 60% 50% at 25% 75%, rgba(167,139,250,.16) 0%, transparent 55%),
    radial-gradient(ellipse 50% 40% at 50% 50%, rgba(0,191,174,.07) 0%, transparent 55%),
    var(--graphite);
}
.hero .container{position:relative;z-index:3}
.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:14px;font-family:'Michroma';font-size:10px;
  letter-spacing:.32em;color:var(--lavender);text-transform:uppercase;margin-bottom:36px;
}
.hero-eyebrow::before{content:"";width:36px;height:1px;background:var(--lavender)}
.hero h1{
  font-family:'Michroma',sans-serif;font-size:clamp(38px,5.5vw,82px);line-height:1.08;
  letter-spacing:.01em;color:var(--silver-bright);margin-bottom:32px;font-weight:400;
}
.hero h1 .grad{
  background:linear-gradient(120deg,var(--silver-bright) 0%, var(--lavender-bright) 45%, var(--lavender) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  animation:lavGradient 8s ease-in-out infinite alternate;
  background-size:200% 200%;
}
@keyframes lavGradient{
  0%{background-position:0% 50%}
  100%{background-position:100% 50%}
}
.hero-sub{font-size:17px;color:var(--text);max-width:520px;margin-bottom:44px;line-height:1.7;font-weight:400}
.hero-cta{display:flex;gap:16px;align-items:center;flex-wrap:wrap}

.btn{
  display:inline-flex;align-items:center;gap:12px;padding:18px 32px;
  font-family:'Manrope';font-size:12px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;text-decoration:none;cursor:pointer;
  transition:all .3s;border:none;position:relative;overflow:hidden;
}
.btn-primary{background:linear-gradient(120deg,var(--lavender) 0%,var(--lavender-dim) 100%);color:var(--graphite)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 44px -14px rgba(167,139,250,.55)}
.btn-teal{background:linear-gradient(120deg,var(--teal),#00A89A);color:var(--graphite)}
.btn-teal:hover{transform:translateY(-2px);box-shadow:0 18px 44px -14px rgba(0,191,174,.55)}
.btn-ghost{background:transparent;color:var(--silver-bright);border:1px solid rgba(189,191,197,.25)}
.btn-ghost:hover{border-color:var(--lavender);background:rgba(167,139,250,.06)}
.btn .arr{transition:transform .3s}
.btn:hover .arr{transform:translateX(5px)}

.hero-bird{position:relative;display:flex;align-items:center;justify-content:center}
.hero-bird-glow{
  position:absolute;width:440px;height:440px;
  background:radial-gradient(circle,rgba(167,139,250,.28) 0%,transparent 60%);
  animation:glowPulse 6s ease-in-out infinite alternate;
}
@keyframes glowPulse{
  0%{transform:scale(1);opacity:.85}
  100%{transform:scale(1.15);opacity:1}
}
.hero-bird svg,
.hero-bird img{
  width:100%;max-width:440px;height:auto;position:relative;z-index:2;
  filter:drop-shadow(0 24px 50px rgba(0,0,0,.6));
  animation:birdFloat 7s ease-in-out infinite;
  transform-origin:50% 60%;
}
@keyframes birdFloat{
  0%,100%{transform:translateY(0) rotate(-1deg)}
  50%{transform:translateY(-14px) rotate(2deg)}
}

.accent-bars{position:absolute;bottom:60px;right:56px;display:flex;flex-direction:column;gap:7px;z-index:4}
.accent-bars span{display:block;height:4px}
.accent-bars span:nth-child(1){background:var(--lavender);width:60px}
.accent-bars span:nth-child(2){background:var(--teal);width:44px}
.accent-bars span:nth-child(3){background:var(--coral);width:30px}

/* === SECTIONS === */
section{padding:120px 0;position:relative}
.section-label{display:inline-flex;align-items:center;gap:14px;font-family:'Michroma';font-size:10px;letter-spacing:.32em;color:var(--lavender);text-transform:uppercase;margin-bottom:24px}
.section-label::before{content:"";width:28px;height:1px;background:var(--lavender)}
.section-label.coral{color:var(--coral)}
.section-label.coral::before{background:var(--coral)}
.section-label.teal{color:var(--teal)}
.section-label.teal::before{background:var(--teal)}

.section-title{
  font-family:'Michroma',sans-serif;font-weight:400;
  font-size:clamp(28px,4vw,54px);color:var(--silver-bright);
  letter-spacing:.01em;line-height:1.18;margin-bottom:24px;max-width:1000px;
}
.section-title .teal{color:var(--teal)}
.section-title .coral{color:var(--coral)}
.section-title .lav{color:var(--lavender)}
.section-title .grad{background:linear-gradient(120deg,var(--silver-bright),var(--lavender-bright),var(--lavender));-webkit-background-clip:text;background-clip:text;color:transparent}
.section-sub{font-size:16px;color:var(--text);max-width:680px;margin-bottom:50px;line-height:1.7}

/* === STATS === */
.stats{background:linear-gradient(180deg,var(--graphite-2) 0%,var(--graphite) 100%);position:relative;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);position:relative;z-index:3}
.stat{padding:64px 36px;border-right:1px solid var(--line);position:relative;transition:background .3s}
.stat:last-child{border-right:none}
.stat:hover{background:var(--graphite-3)}
.stat-num{font-family:'Michroma',sans-serif;font-size:56px;color:var(--silver-bright);line-height:1;letter-spacing:.01em;margin-bottom:14px}
.stat-num .plus{color:var(--lavender)}
.stat:nth-child(2) .stat-num .plus{color:var(--teal)}
.stat:nth-child(3) .stat-num .plus{color:var(--coral)}
.stat:nth-child(4) .stat-num .plus{color:var(--lavender)}
.stat-lbl{font-size:11px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;font-weight:700}

/* === ABOUT === */
.about{position:relative;overflow:hidden}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center;position:relative;z-index:3}
.about-visual{
  position:relative;aspect-ratio:1/1;
  background:
    radial-gradient(circle at 50% 45%, rgba(167,139,250,.25) 0%, transparent 60%),
    linear-gradient(135deg,var(--graphite-2) 0%,var(--graphite) 100%);
  border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.about-visual .av-bird{
  width:62%;height:auto;position:relative;z-index:2;
  filter:drop-shadow(0 16px 40px rgba(0,0,0,.5));
  animation:birdFloat 9s ease-in-out infinite reverse;
}
.about-text p{font-size:17px;color:var(--text);margin-bottom:22px;line-height:1.75}
.about-text p.lead{
  font-family:'Manrope';font-size:22px;color:var(--silver-bright);font-weight:500;line-height:1.5;
  padding-left:22px;border-left:2px solid var(--lavender);margin-bottom:26px;
}

/* === ADVANTAGES === */
.advantages{background:var(--graphite-2);position:relative;overflow:hidden}
.adv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);position:relative;z-index:3}
.adv-card{background:var(--graphite-2);padding:46px 32px 38px;position:relative;transition:all .35s;cursor:default;overflow:hidden}
.adv-card:hover{background:var(--graphite-3)}
.adv-card::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;transform:scaleX(0);transform-origin:left;transition:transform .35s}
.adv-card:nth-child(1)::after{background:var(--lavender)}
.adv-card:nth-child(2)::after{background:var(--teal)}
.adv-card:nth-child(3)::after{background:var(--coral)}
.adv-card:nth-child(4)::after{background:var(--lavender)}
.adv-card:hover::after{transform:scaleX(1)}
.adv-num{font-family:'Michroma';font-size:11px;color:var(--muted);letter-spacing:.1em;margin-bottom:28px}
.adv-icon{width:48px;height:48px;margin-bottom:26px;display:flex;align-items:center;justify-content:center}
.adv-icon svg{width:40px;height:40px}
.adv-card:nth-child(1) .adv-icon{color:var(--lavender)}
.adv-card:nth-child(2) .adv-icon{color:var(--teal)}
.adv-card:nth-child(3) .adv-icon{color:var(--coral)}
.adv-card:nth-child(4) .adv-icon{color:var(--lavender)}
.adv-card h3{font-family:'Michroma',sans-serif;font-size:15px;font-weight:400;color:var(--silver-bright);margin-bottom:14px;letter-spacing:.01em;line-height:1.4}
.adv-card p{font-size:14px;color:var(--muted);line-height:1.65}

/* === HIGHLIGHTS === */
.highlights{position:relative;overflow:hidden}
.hl-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px;flex-wrap:wrap;gap:24px;position:relative;z-index:3}
.hl-header .section-title{margin-bottom:0}
.constellation-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:18px;
  position:relative;
  z-index:3;
}
.constellation-grid::before{
  content:"";
  position:absolute;
  left:12%;
  right:12%;
  top:44%;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(167,139,250,.45), rgba(0,191,174,.35), transparent);
}
.constellation-card{
  position:relative;
  overflow:hidden;
  border:1px solid var(--line);
  background:var(--graphite-2);
  padding:24px;
  transition:transform .35s,border-color .35s,box-shadow .35s;
}
.constellation-card.major{grid-column:span 4;min-height:330px}
.constellation-card.minor{grid-column:span 2;min-height:250px}
.constellation-card.wide{grid-column:span 3;min-height:230px}
.constellation-card:hover{
  transform:translateY(-5px);
  border-color:var(--lavender);
  box-shadow:0 16px 40px -18px rgba(167,139,250,.45);
}
.constellation-bg{
  position:absolute;
  inset:0;
  background:var(--graphite-2);
}
.constellation-bg img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .6s cubic-bezier(.16, 1, .3, 1), filter .6s;
}
.constellation-card:hover .constellation-bg img{
  transform:scale(1.05);
  filter:brightness(0.7);
}
.constellation-bg::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:45%;
  background:linear-gradient(180deg, transparent, rgba(8,9,10,.78));
}
.constellation-card > *{position:relative;z-index:2}
.constellation-year{
  display:inline-block;
  padding:6px 10px;
  border:1px solid var(--line);
  font-family:'Michroma';
  font-size:10px;
  letter-spacing:.14em;
  color:var(--silver-bright);
  margin-bottom:16px;
}
.constellation-tag{
  display:block;
  font-family:'Michroma';
  font-size:9px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--lavender);
  margin-bottom:12px;
}
.constellation-card:nth-child(2) .constellation-tag{color:var(--coral)}
.constellation-card:nth-child(3) .constellation-tag{color:var(--teal)}
.constellation-card:nth-child(4) .constellation-tag{color:var(--teal)}
.constellation-card:nth-child(5) .constellation-tag{color:var(--lavender)}
.constellation-card h3{
  font-family:'Michroma',sans-serif;
  font-size:clamp(16px,1.7vw,22px);
  font-weight:400;
  line-height:1.3;
  color:var(--silver-bright);
  margin-bottom:10px;
}
.constellation-card.minor h3{font-size:15px;margin-bottom:0}
.constellation-card p{
  font-size:13px;
  color:var(--text);
  line-height:1.55;
  max-width:520px;
}
.constellation-card.minor p{display:none}

/* === ALL PROJECTS === */
.all-projects{background:var(--graphite-2);position:relative;overflow:hidden}
.year-section{margin-bottom:64px;position:relative;z-index:3}
.year-section:last-child{margin-bottom:0}
.year-head{display:flex;align-items:baseline;gap:26px;margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.year-big{font-family:'Michroma',sans-serif;font-size:56px;color:var(--silver-bright);line-height:.9;letter-spacing:.01em}
.year-big.t{color:var(--teal)}
.year-big.c{color:var(--coral)}
.year-big.l{color:var(--lavender)}
.year-info-cnt{font-family:'Michroma';font-size:10px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;margin-bottom:8px}
.year-info-title{font-size:18px;color:var(--text);line-height:1.3;font-weight:500}
.year-projects{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.yp{background:var(--graphite);padding:20px 22px;border:1px solid var(--line);position:relative;transition:all .25s;cursor:default;display:flex;gap:14px;align-items:flex-start;border-left:2px solid var(--lavender)}
.year-section:nth-child(even) .yp{border-left-color:var(--coral)}
.year-section:nth-child(3n) .yp{border-left-color:var(--teal)}
.yp:hover{background:var(--graphite-3);transform:translateX(4px)}
.yp-num{font-family:'Michroma';font-size:10px;color:var(--muted);flex-shrink:0;padding-top:2px}
.yp-text{font-size:13px;color:var(--text);line-height:1.5;font-weight:400}

/* === TEAM === */
.team{position:relative;overflow:hidden;background:radial-gradient(ellipse 60% 50% at 50% 50%, rgba(167,139,250,.10) 0%, transparent 60%),var(--graphite)}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative;z-index:3}
.team-card{
  background:var(--graphite-2);padding:30px 26px 26px;border:1px solid var(--line);
  transition:all .35s;position:relative;overflow:hidden;
}
.team-card::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,var(--lavender),var(--teal));
  transform:scaleX(0);transform-origin:left;transition:transform .35s;
}
.team-card:hover{background:var(--graphite-3);transform:translateY(-4px);border-color:var(--lavender)}
.team-card:hover::after{transform:scaleX(1)}
.avatar{
  width:88px;height:88px;border-radius:50%;
  background:linear-gradient(135deg,var(--lavender) 0%,var(--lavender-dim) 100%);
  display:flex;align-items:center;justify-content:center;color:var(--graphite);
  font-family:'Michroma',sans-serif;font-size:24px;letter-spacing:.04em;margin-bottom:22px;
}
.team-name{font-family:'Manrope';font-size:16px;font-weight:700;color:var(--silver-bright);margin-bottom:6px;letter-spacing:-.005em}
.team-role{font-family:'Michroma';font-size:10px;color:var(--lavender);letter-spacing:.18em;text-transform:uppercase}
.team-desc{font-size:13px;color:var(--muted);line-height:1.6;margin-top:14px}
.team-card.head{
  background:linear-gradient(135deg,rgba(167,139,250,.16) 0%,var(--graphite-2) 100%);
  border-color:var(--lavender);
}
.team-card.head .avatar{background:var(--silver-bright);color:var(--lavender-dim)}

/* === PARTNERS === */
.partners{position:relative;overflow:hidden}
.partners-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);position:relative;z-index:3}
.partner{background:var(--graphite);padding:50px 26px;text-align:center;font-family:'Manrope';font-size:14px;font-weight:700;color:var(--silver);line-height:1.3;min-height:150px;display:flex;align-items:center;justify-content:center;transition:all .3s;position:relative;overflow:hidden}
.partner::before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--lavender),var(--teal));transform:scaleX(0);transition:transform .3s;transform-origin:left}
.partner:hover{background:var(--graphite-3);color:var(--silver-bright)}
.partner:hover::before{transform:scaleX(1)}
.partner img{max-height:54px;width:auto;max-width:150px;object-fit:contain;filter:grayscale(1) brightness(2) opacity(.7);transition:filter .35s}
.partner:hover img{filter:grayscale(0) brightness(1.05) opacity(1)}

/* === CONTACT === */
.contact{background:var(--graphite-2)}
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:start}
.info-line{
  display:flex;align-items:flex-start;gap:14px;padding:16px 0;
  border-bottom:1px solid var(--line);font-size:14px;color:var(--silver-bright);
}
.info-line strong{font-family:'Michroma';font-weight:400;min-width:130px;color:var(--lavender);font-size:10px;letter-spacing:.18em;text-transform:uppercase;padding-top:3px}
.info-line a{color:var(--silver-bright);text-decoration:none;transition:color .25s}
.info-line a:hover{color:var(--lavender)}

.contact-form{background:var(--graphite);padding:40px 36px;border:1px solid var(--line)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.form-row.single{grid-template-columns:1fr}
.form-field label{display:block;font-family:'Michroma';font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-weight:400}
.form-field input,.form-field textarea{
  width:100%;font-family:'Manrope';font-size:14px;color:var(--silver-bright);
  background:transparent;border:none;border-bottom:1.5px solid var(--line);
  padding:10px 0;transition:border-color .25s;
}
.form-field input:focus,.form-field textarea:focus{outline:none;border-bottom-color:var(--lavender)}
.form-field textarea{resize:vertical;min-height:90px;font-family:'Manrope'}
.form-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;color:var(--muted);line-height:1.5;margin:22px 0}
.form-consent input{margin-top:3px;accent-color:var(--lavender);flex-shrink:0}
.form-consent a{color:var(--lavender);text-decoration:underline}
.contact-form .btn{width:100%;justify-content:center}

/* === CTA === */
.cta{
  text-align:center;padding:160px 0;position:relative;overflow:hidden;
  background:radial-gradient(ellipse 70% 80% at 50% 50%, rgba(167,139,250,.25) 0%, transparent 60%),var(--graphite);
}
.cta .container{position:relative;z-index:3}
.cta-bird{width:96px;height:auto;margin:0 auto 36px;display:block;filter:drop-shadow(0 14px 32px rgba(167,139,250,.5));animation:birdFloat 8s ease-in-out infinite}
.cta-bird img{width:100%;height:auto;display:block}
.cta h2{font-family:'Michroma',sans-serif;font-weight:400;font-size:clamp(32px,5.5vw,72px);color:var(--silver-bright);letter-spacing:.01em;line-height:1.15;margin-bottom:24px}
.cta h2 .grad{background:linear-gradient(120deg,var(--silver-bright),var(--lavender-bright),var(--lavender));-webkit-background-clip:text;background-clip:text;color:transparent}
.cta p{font-size:17px;color:var(--text);margin-bottom:44px;max-width:540px;margin-left:auto;margin-right:auto;line-height:1.6}
.cta-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* === FOOTER === */
footer{background:#090A0B;color:var(--muted);padding:68px 0 28px;border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.footer-brand{font-family:'Michroma';font-size:18px;color:var(--silver-bright);letter-spacing:.1em;margin-bottom:16px;display:flex;align-items:center;gap:12px}
.footer-brand .logo-mark{width:42px;height:28px}
.footer-tag{font-size:13px;line-height:1.6;max-width:300px;color:var(--muted)}
.footer-bars{display:flex;gap:6px;margin-top:20px}
.footer-bars span{height:3px}
.footer-bars span:nth-child(1){background:var(--lavender);width:42px}
.footer-bars span:nth-child(2){background:var(--teal);width:30px}
.footer-bars span:nth-child(3){background:var(--coral);width:20px}
.footer-grid h4{font-family:'Michroma';color:var(--silver-bright);font-size:10px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:16px;font-weight:400}
.footer-grid a{display:block;color:var(--muted);text-decoration:none;font-size:13px;margin-bottom:10px;transition:color .25s}
.footer-grid a:hover{color:var(--lavender)}
.footer-legal{border-top:1px solid var(--line);padding-top:26px;font-size:11px;color:rgba(255,255,255,.4);line-height:1.7}
.footer-legal p{margin-bottom:8px}
.footer-legal strong{color:var(--silver-bright);font-weight:700}
.footer-bottom{border-top:1px solid var(--line);padding-top:20px;margin-top:24px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.04em;gap:16px;flex-wrap:wrap}

/* === LEGAL PAGE === */
.page-legal{padding:140px 0 80px;background:var(--graphite-2);min-height:100vh;position:relative;overflow:hidden}
.legal-title{font-family:'Michroma';font-size:clamp(28px,4vw,52px);font-weight:400;color:var(--silver-bright);margin-bottom:18px;letter-spacing:.01em;line-height:1.1}
.legal-title .lav{color:var(--lavender)}
.legal-sub{font-size:16px;color:var(--text);max-width:780px;margin-bottom:52px;line-height:1.65}
.legal-card{background:var(--graphite);border:1px solid var(--line);padding:36px 40px;margin-bottom:22px;position:relative;z-index:3}
.legal-card h2{font-family:'Michroma';font-size:18px;font-weight:400;color:var(--silver-bright);margin-bottom:6px;letter-spacing:.01em}
.legal-card .legal-sub2{font-family:'Michroma';font-size:10px;color:var(--lavender);letter-spacing:.22em;text-transform:uppercase;margin-bottom:24px}
.legal-table{display:grid;grid-template-columns:280px 1fr;gap:14px 28px}
.legal-table dt{font-family:'Michroma';font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:3px}
.legal-table dd{font-size:14px;color:var(--silver-bright);line-height:1.55;word-break:break-word}
.legal-back{display:inline-flex;align-items:center;gap:8px;font-family:'Michroma';font-size:11px;color:var(--lavender);text-decoration:none;letter-spacing:.18em;text-transform:uppercase;margin-bottom:30px}
.legal-back:hover{color:var(--silver-bright)}

.privacy-content{background:var(--graphite);padding:44px 50px;border:1px solid var(--line);font-size:15px;color:var(--text);line-height:1.75;max-width:880px;position:relative;z-index:3}
.privacy-content h2{font-family:'Michroma';font-size:18px;color:var(--silver-bright);margin:30px 0 12px;font-weight:400;letter-spacing:.01em}
.privacy-content h2:first-child{margin-top:0}
.privacy-content h3{font-size:15px;color:var(--silver-bright);margin:20px 0 10px;font-weight:700}
.privacy-content p{margin-bottom:14px}
.privacy-content ul{margin:0 0 14px 24px}
.privacy-content li{margin-bottom:8px}
.privacy-content a{color:var(--lavender)}

/* === COOKIE === */
.cookie{
  position:fixed;left:20px;right:20px;bottom:20px;z-index:200;
  background:var(--graphite-2);color:var(--silver-bright);padding:18px 24px;
  display:flex;align-items:center;gap:20px;flex-wrap:wrap;
  border:1px solid var(--line);box-shadow:0 24px 60px -20px rgba(0,0,0,.6);
  transform:translateY(140%);transition:transform .5s;font-size:13px;line-height:1.5;
  max-width:880px;margin:0 auto;
}
.cookie.is-show{transform:translateY(0)}
.cookie p{margin:0;flex:1;min-width:240px}
.cookie a{color:var(--lavender);text-decoration:underline}
.cookie button{
  background:linear-gradient(120deg,var(--lavender),var(--lavender-dim));color:var(--graphite);border:none;
  padding:12px 24px;font-family:'Michroma';font-size:11px;font-weight:400;letter-spacing:.18em;
  text-transform:uppercase;cursor:pointer;transition:opacity .25s;
}
.cookie button:hover{opacity:.9}

@media(max-width:1024px){
  .container{padding:0 24px}
  .nav-menu{display:none}
  .nav-menu.is-open, .nav-menu.active{display:flex;position:absolute;top:100%;left:0;right:0;background:var(--graphite);flex-direction:column;padding:24px 28px;border-bottom:1px solid var(--line);gap:18px}
  .nav-toggle{display:block}
  .hero-inner{grid-template-columns:1fr;gap:48px}
  .hero-bird{order:-1;max-width:280px;margin:0 auto}
  .hero-bird-glow{width:340px;height:340px}
  .accent-bars{display:none}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .stat{padding:36px 24px;border-bottom:1px solid var(--line)}
  .stat:nth-child(2){border-right:none}
  .stat-num{font-size:42px}
  .about-grid{grid-template-columns:1fr;gap:48px}
  .adv-grid{grid-template-columns:repeat(2,1fr)}
  .constellation-grid{grid-template-columns:1fr}
  .constellation-grid::before{display:none}
  .constellation-card.major,.constellation-card.minor,.constellation-card.wide{grid-column:span 1;min-height:260px}
  .year-projects{grid-template-columns:1fr}
  .year-head{flex-direction:column;align-items:flex-start;gap:10px}
  .year-big{font-size:42px}
  .team-grid{grid-template-columns:repeat(2,1fr)}
  .partners-wall{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr;gap:40px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .legal-table{grid-template-columns:1fr;gap:4px}
  .legal-table dt{margin-top:18px}
  .legal-table dt:first-child{margin-top:0}
  .privacy-content{padding:28px 22px}
  .legal-card{padding:26px 24px}
}
@media(max-width:560px){
  .stats-grid{grid-template-columns:1fr}
  .adv-grid{grid-template-columns:1fr}
  .team-grid{grid-template-columns:1fr}
  .partners-wall{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .cookie{flex-direction:column;align-items:stretch}
  .cookie button{width:100%}
}


/* === PREMIUM CASES + POLISH === */
body.has-open-modal{overflow:hidden}
.case-more{
  display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:10px 14px;
  border:1px solid currentColor;background:rgba(255,255,255,.08);color:inherit;
  font:inherit;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  cursor:pointer;transition:transform .25s, background .25s, border-color .25s;
}
.case-more:hover{transform:translateY(-2px);background:rgba(255,255,255,.16)}
.case-modal{position:fixed;inset:0;z-index:500;display:none;align-items:center;justify-content:center;padding:28px;}
.case-modal.is-open{display:flex}
.case-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.case-modal__dialog{position:relative;z-index:2;width:min(1040px,100%);max-height:min(760px,92vh);display:grid;grid-template-columns:.92fr 1.08fr;overflow:hidden;box-shadow:0 40px 120px rgba(0,0,0,.35);outline:none}
.case-modal__close{position:absolute;top:18px;right:18px;z-index:5;width:42px;height:42px;border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.25);color:#fff;font-size:26px;line-height:1;cursor:pointer;transition:background .25s, transform .25s}
.case-modal__close:hover{background:rgba(255,255,255,.14);transform:rotate(90deg)}
.case-modal__visual{min-height:520px;position:relative;overflow:hidden;background:#111}
.case-modal__visual::before{content:"";position:absolute;inset:0;background:var(--case-visual,linear-gradient(135deg,#1b1f26,#6f8faf));}
.case-modal__visual::after{content:"";position:absolute;inset:28px;border:1px solid rgba(255,255,255,.22);background:repeating-linear-gradient(90deg,transparent 0,transparent 54px,rgba(255,255,255,.06) 55px),repeating-linear-gradient(0deg,transparent 0,transparent 54px,rgba(255,255,255,.05) 55px)}
.case-modal__body{padding:50px;overflow:auto}
.case-modal__meta{font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px;opacity:.72}
.case-modal__body h3{font-size:clamp(28px,3.5vw,46px);line-height:1.05;margin:0 0 18px;letter-spacing:-.02em}
.case-modal__lead{font-size:17px;line-height:1.7;margin-bottom:28px;opacity:.82}
.case-modal__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:28px}
.case-modal__grid div{padding:18px;border:1px solid currentColor;background:rgba(255,255,255,.04)}
.case-modal__grid strong{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;opacity:.6}
.case-modal__grid span{font-size:13px;line-height:1.55;opacity:.88}
.case-modal__cta{width:max-content;max-width:100%}
.avatar{overflow:hidden;flex-shrink:0}
.avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
@media (max-width:760px){.case-modal{padding:12px}.case-modal__dialog{grid-template-columns:1fr;max-height:94vh}.case-modal__visual{min-height:220px}.case-modal__body{padding:28px 22px}.case-modal__grid{grid-template-columns:1fr}.case-modal__close{top:12px;right:12px}}

.hidden{display:none !important}.hero-bird-logo,.av-bird,.cta-bird img{object-fit:contain;filter:drop-shadow(0 30px 70px rgba(167,139,250,.35));mix-blend-mode:screen}.hero-bird-logo{max-height:420px}.constellation-bg img{display:none}.constellation-bg{background:linear-gradient(135deg,var(--graphite-2),var(--lavender-dim))}.constellation-card[data-case="k-strong"] .constellation-bg{background:radial-gradient(circle at 70% 20%,rgba(167,139,250,.55),transparent 34%),linear-gradient(135deg,#12131a,#7e63cc)}.constellation-card[data-case="k-camps"] .constellation-bg{background:radial-gradient(circle at 30% 30%,rgba(0,191,174,.42),transparent 38%),linear-gradient(135deg,#0e0f11,#27323a)}.constellation-card[data-case="k-znanie"] .constellation-bg{background:radial-gradient(circle at 76% 18%,rgba(255,122,102,.42),transparent 30%),linear-gradient(135deg,#15171a,#4b3568)}.constellation-card[data-case="k-culture"] .constellation-bg{background:linear-gradient(135deg,#111318,#5d4a91 48%,#00bfae)}.constellation-card[data-case="k-award"] .constellation-bg{background:linear-gradient(135deg,#0e0f11,#7e63cc 55%,#ff7a66)}.constellation-card[data-case="k-orlyonok"] .constellation-bg{background:linear-gradient(135deg,#15171a,#00bfae 48%,#a78bfa)}.constellation-bg::before{content:"";position:absolute;inset:0;background-image:radial-gradient(1px 1px at 15% 20%,rgba(255,255,255,.9),transparent),radial-gradient(1px 1px at 70% 35%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 42% 82%,rgba(255,255,255,.65),transparent),linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.12) 42.5%,transparent 43%);background-size:180px 180px,220px 220px,160px 160px,100% 100%}.case-modal__dialog{background:var(--graphite-2);color:var(--silver-bright);border:1px solid rgba(167,139,250,.34);box-shadow:0 40px 140px rgba(167,139,250,.22)}.case-modal__meta{color:var(--lavender)}.case-modal__grid div{border-color:rgba(167,139,250,.24);background:rgba(167,139,250,.06)}.case-modal__visual{--case-visual:radial-gradient(circle at 70% 25%,rgba(167,139,250,.65),transparent 34%),linear-gradient(135deg,#0E0F11,#7E63CC)}

/* === FOLLOW-UP PREMIUM POLISH === */
.display,
.logo-link,
.hero-eyebrow,
.hero h1,
.section-label,
.section-title,
.stat-num,
.adv-num,
.adv-card h3,
.constellation-year,
.constellation-tag,
.constellation-card h3,
.year-big,
.year-info-cnt,
.team-role,
.info-line strong,
.form-field label,
.cookie button,
.footer-brand,
.footer-grid h4,
.legal-title,
.legal-card h2,
.legal-card .legal-sub2,
.legal-back,
.privacy-content h2{
  font-family:'Unbounded','Manrope',sans-serif;
}
body{font-family:'Manrope',sans-serif;font-size:16px}
.logo-link{font-weight:600;letter-spacing:.13em}
.hero-eyebrow,.section-label{font-weight:500;letter-spacing:.24em}
.hero h1{
  font-weight:600;
  letter-spacing:-.045em;
  line-height:.98;
  text-transform:uppercase;
}
.hero h1 .grad,.section-title .grad{
  background:linear-gradient(115deg,#fff 0%,#d9ceff 38%,#a78bfa 68%,#6ef3e8 100%);
  -webkit-background-clip:text;
  background-clip:text;
}
.hero-sub,.about-text p,.section-sub{
  font-size:18px;
  line-height:1.78;
  color:#d7dae1;
}
.section-title{
  font-weight:500;
  letter-spacing:-.035em;
  line-height:1.08;
  text-transform:uppercase;
}
.btn,.nav-menu a,.nav-cta{
  font-weight:800;
  letter-spacing:.16em;
}
.hero-bird-logo,.av-bird,.cta-bird img{
  mix-blend-mode:normal;
  filter:drop-shadow(0 30px 70px rgba(167,139,250,.42));
}
.team-duo{grid-template-columns:repeat(2,minmax(280px,1fr));gap:24px}
.team-duo .team-card{
  min-height:460px;
  padding:0;
  border-radius:34px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0)),
    var(--graphite-2);
  border-color:rgba(167,139,250,.24);
}
.team-duo .team-card::before{
  content:"";
  position:absolute;
  inset:auto 24px 24px 24px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--lavender),transparent);
}
.leader-portrait{
  height:270px;
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  padding:28px;
  margin:0 0 26px;
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 68% 28%,rgba(255,255,255,.22),transparent 22%),
    radial-gradient(circle at 24% 62%,rgba(0,191,174,.24),transparent 26%),
    linear-gradient(135deg,#171925,#5d46ad);
}
.leader-portrait.teal{
  background:
    radial-gradient(circle at 70% 25%,rgba(255,255,255,.20),transparent 22%),
    radial-gradient(circle at 28% 64%,rgba(167,139,250,.24),transparent 26%),
    linear-gradient(135deg,#121d22,#00bfae);
}
.leader-portrait::before{
  content:"";
  position:absolute;
  inset:24px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:28px;
}
.leader-portrait::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-46px;
  top:34px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
}
.leader-portrait span{
  position:relative;
  z-index:1;
  font-family:'Unbounded','Manrope',sans-serif;
  font-size:104px;
  line-height:.78;
  color:#fff;
  text-shadow:0 22px 60px rgba(0,0,0,.5);
}
.team-duo .team-name,
.team-duo .team-role,
.team-duo .team-desc{margin-left:28px;margin-right:28px}
.team-duo .team-name{font-size:20px;line-height:1.25}
.team-duo .team-desc{font-size:14px;margin-bottom:30px}
.partners-orbit{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  align-items:center;
  justify-content:center;
  padding:54px 34px;
  min-height:430px;
  background:
    radial-gradient(circle at 50% 50%,rgba(167,139,250,.18),transparent 34%),
    radial-gradient(circle at 72% 26%,rgba(0,191,174,.12),transparent 22%),
    var(--graphite-2);
  border-radius:44px;
  border:1px solid var(--line);
  position:relative;
}
.partners-orbit::before,
.partners-orbit::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  border:1px solid rgba(167,139,250,.20);
  border-radius:50%;
  transform:translate(-50%,-50%) rotate(-12deg);
  pointer-events:none;
}
.partners-orbit::before{width:min(720px,92%);height:220px}
.partners-orbit::after{width:min(520px,78%);height:340px}
.partners-orbit .partner{
  min-height:0;
  width:auto;
  min-width:180px;
  max-width:260px;
  padding:20px 24px;
  border-radius:999px;
  border:1px solid rgba(167,139,250,.28);
  background:rgba(14,15,17,.78);
  box-shadow:0 18px 44px -28px rgba(167,139,250,.7);
  z-index:2;
}
.partners-orbit .partner:nth-child(3n){border-color:rgba(0,191,174,.30)}
.partners-orbit .partner:nth-child(4n){border-color:rgba(255,122,102,.30)}
.partners-orbit .partner img{max-height:34px}
.case-modal{padding:30px}
.case-modal__backdrop{
  background:
    radial-gradient(circle at 30% 24%,rgba(167,139,250,.28),transparent 28%),
    rgba(2,3,8,.80);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.case-modal__dialog{
  width:min(980px,100%);
  grid-template-columns:1fr;
  border-radius:38px;
  background:linear-gradient(145deg,rgba(23,25,37,.94),rgba(7,8,13,.98));
  border:1px solid rgba(196,173,255,.30);
  box-shadow:0 44px 160px rgba(78,53,137,.44);
}
.case-modal__dialog::before{
  content:"";
  position:absolute;
  inset:16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  pointer-events:none;
}
.case-modal__visual{
  min-height:210px;
  --case-visual:
    radial-gradient(circle at 18% 62%,rgba(0,191,174,.36),transparent 16%),
    radial-gradient(circle at 74% 36%,rgba(167,139,250,.64),transparent 26%),
    linear-gradient(135deg,#05060a,#1c1238 54%,#0d2a32);
}
.case-modal__visual::after{
  inset:22px 34px;
  border-radius:999px;
  border-color:rgba(196,173,255,.28);
  background:
    radial-gradient(1px 1px at 18% 44%,#fff,transparent),
    radial-gradient(1px 1px at 64% 30%,#fff,transparent),
    radial-gradient(1px 1px at 82% 68%,#fff,transparent),
    linear-gradient(115deg,transparent 0 44%,rgba(255,255,255,.20) 44.2%,transparent 44.5%);
}
.case-modal__body{padding:44px 54px 54px}
.case-modal__grid{grid-template-columns:repeat(4,1fr)}
.case-modal__grid div{border-radius:22px;background:rgba(255,255,255,.045)}
.case-modal__close{
  border-radius:50%;
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.18);
}
@media(max-width:1024px){
  .team-duo{grid-template-columns:1fr}
  .case-modal__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .partners-orbit{border-radius:28px;padding:34px 18px}
  .partners-orbit .partner{min-width:140px}
  .case-modal__grid{grid-template-columns:1fr}
}


/* === KOLIBRI FINAL VISUAL PASS === */
.hero{
  min-height:100svh;
  padding:118px 0 72px;
  display:flex;
  align-items:center;
}
.hero .container{width:100%}
.hero-inner{
  min-height:calc(100svh - 190px);
  align-items:center;
}
.hero-inner > div:first-child{
  align-self:center;
}
.hero h1{
  max-width:780px;
}
.hero-sub{
  max-width:660px;
}
.hero-bird-logo{
  max-width:min(440px,34vw);
}
.constellation-card{cursor:pointer}
.constellation-bg img{
  display:block !important;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.98) contrast(1.05) brightness(.78);
}
.constellation-bg::before{
  background:
    radial-gradient(1px 1px at 18% 44%,rgba(255,255,255,.95),transparent),
    radial-gradient(1px 1px at 64% 30%,rgba(255,255,255,.75),transparent),
    linear-gradient(115deg,transparent 0 44%,rgba(196,173,255,.18) 44.2%,transparent 44.5%);
  opacity:.42;
  z-index:1;
}
.constellation-bg::after{
  height:72%;
  background:
    linear-gradient(180deg,rgba(8,9,10,.05),rgba(8,9,10,.44) 48%,rgba(8,9,10,.88)),
    radial-gradient(circle at 72% 22%,rgba(167,139,250,.20),transparent 38%);
  z-index:1;
}
.leader-portrait img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 32%;
  filter:saturate(.95) contrast(1.05) brightness(.92);
}
.leader-portrait.teal img{object-position:center 28%}
.leader-portrait span{display:none}
.leader-portrait::before,
.leader-portrait::after{z-index:2;pointer-events:none}
.team-duo .team-card{
  min-height:500px;
}
.team-duo .team-name,
.team-duo .team-role,
.team-duo .team-desc{
  position:relative;
  z-index:3;
}
.case-modal__dialog{
  width:min(1040px,100%);
  max-height:min(780px,92vh);
  overflow:hidden;
}
.case-modal__visual{
  min-height:320px;
  overflow:hidden;
  background:#090a0f;
}
.case-modal__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  z-index:1;
  display:none;
  filter:saturate(.98) contrast(1.04) brightness(.78);
}
.case-modal__visual::before{z-index:0}
.case-modal__visual::after{z-index:2;pointer-events:none}
.case-modal__body{
  position:relative;
  z-index:3;
  overflow:auto;
}
@media(max-width:1024px){
  .hero{text-align:center;padding-top:122px}
  .hero-inner{min-height:auto;gap:34px}
  .hero h1,.hero-sub{margin-left:auto;margin-right:auto}
  .hero-cta{justify-content:center}
  .hero-bird-logo{max-width:300px}
}
@media(max-width:560px){
  .hero{padding:108px 0 58px}
  .hero-bird-logo{max-width:230px}
  .team-duo .team-card{min-height:auto}
  .leader-portrait{height:240px}
  .case-modal__visual{min-height:210px}
}


/* === KOLIBRI HAND-DRAWN BIRD UPDATE === */
.logo-link .logo-mark{
  width:38px;
  height:38px;
  object-fit:contain;
  transform:translateY(-1px) scale(1.22);
  transform-origin:center;
  filter:drop-shadow(0 8px 18px rgba(167,139,250,.22));
}
.hero-bird{min-height:460px}
.hero-bird-logo{
  width:min(520px,38vw) !important;
  max-width:520px !important;
  max-height:none !important;
  transform-origin:50% 54%;
}
.hero-bird-glow{
  width:min(560px,42vw);
  height:min(560px,42vw);
}
.bird-shards{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
}
.bird-shards span{
  position:absolute;
  width:42px;
  height:18px;
  clip-path:polygon(0 50%,100% 0,72% 100%);
  background:linear-gradient(120deg,rgba(255,255,255,.78),rgba(167,139,250,.55),rgba(0,191,174,.35));
  opacity:.72;
  filter:drop-shadow(0 10px 22px rgba(167,139,250,.28));
  animation:shardDrift 8s ease-in-out infinite;
}
.bird-shards span:nth-child(1){left:6%;top:18%;transform:rotate(-18deg);animation-delay:-1.2s}
.bird-shards span:nth-child(2){right:13%;top:12%;width:30px;height:14px;transform:rotate(24deg);animation-delay:-3.1s}
.bird-shards span:nth-child(3){left:18%;bottom:17%;width:34px;height:15px;transform:rotate(18deg);animation-delay:-5.2s;background:linear-gradient(120deg,rgba(0,191,174,.56),rgba(255,255,255,.70))}
.bird-shards span:nth-child(4){right:3%;bottom:26%;width:48px;height:20px;transform:rotate(-8deg);animation-delay:-2.2s;background:linear-gradient(120deg,rgba(248,151,127,.60),rgba(255,255,255,.68))}
.bird-shards span:nth-child(5){left:50%;top:3%;width:26px;height:12px;transform:rotate(10deg);animation-delay:-4s}
@keyframes shardDrift{
  0%,100%{translate:0 0;opacity:.48}
  50%{translate:10px -16px;opacity:.9}
}
.stat-geo{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:8px;
  font-size:clamp(36px,4vw,54px);
}
.stats-grid{grid-template-columns:repeat(4,1fr)}
.about-grid-premium{grid-template-columns:1.02fr .98fr;gap:72px}
.about-visual{
  min-height:560px;
  border-radius:28px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 47%,rgba(167,139,250,.10),transparent 48%),
    radial-gradient(circle at 30% 70%,rgba(0,191,174,.08),transparent 34%),
    linear-gradient(160deg,rgba(255,255,255,.028),rgba(255,255,255,0)),
    var(--graphite-2);
  border:1px solid var(--line);
}
.about-orbit{
  position:absolute;
  inset:30px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.about-orbit .av-bird{
  width:min(34%,190px);
  animation:aboutFloat 9s ease-in-out infinite;
  z-index:3;
  filter:drop-shadow(0 22px 46px rgba(0,0,0,.5));
}
.orbit-track,
.orbit-comet{
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  pointer-events:none;
}
.orbit-track{border:1px solid rgba(196,173,255,.15)}
.track-a{width:78%;height:78%;animation:orbitComet 34s linear infinite}
.track-b{width:58%;height:58%;border-color:rgba(0,191,174,.13);animation:orbitComet 28s linear reverse infinite}
.track-c{width:88%;height:46%;border-color:rgba(255,122,102,.13);transform:translate(-50%,-50%) rotate(-15deg);animation:orbitTilt 24s ease-in-out infinite}
.orbit-comet{width:78%;height:78%;animation:orbitComet 16s linear infinite}
.orbit-comet::before{
  content:"";
  position:absolute;
  top:-3px;left:50%;margin-left:-3.5px;
  width:7px;height:7px;border-radius:50%;
  background:var(--lavender);
  box-shadow:0 0 12px 2px rgba(167,139,250,.85);
}
.about-node{
  position:absolute;
  z-index:5;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:9px;
  background:rgba(13,14,17,.66);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-size:10px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--silver-bright);
  white-space:nowrap;
  transform:translate(-50%,-50%);
}
.node-dot{
  width:6px;height:6px;border-radius:50%;flex:0 0 auto;
  background:var(--lavender);box-shadow:0 0 8px rgba(167,139,250,.7);
}
.n-2 .node-dot,.n-4 .node-dot{background:var(--teal);box-shadow:0 0 8px rgba(0,191,174,.7)}
.n-3 .node-dot,.n-6 .node-dot{background:var(--coral);box-shadow:0 0 8px rgba(255,122,102,.6)}
.n-1{left:50%;top:10%}
.n-2{left:76%;top:27%}
.n-3{left:75%;top:72%}
.n-4{left:50%;top:90%}
.n-5{left:25%;top:72%}
.n-6{left:24%;top:27%}
.about-pulse-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.about-pulse-list span{
  padding:10px 14px;border:1px solid rgba(167,139,250,.24);border-radius:999px;
  background:rgba(167,139,250,.07);color:var(--silver-bright);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
}
@keyframes aboutFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes orbitSpin{to{transform:rotate(348deg)}}
@keyframes orbitComet{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes orbitTilt{0%,100%{transform:translate(-50%,-50%) rotate(-15deg)}50%{transform:translate(-50%,-50%) rotate(11deg)}}
@keyframes dotPulse{0%,100%{scale:.72;opacity:.5}50%{scale:1.2;opacity:1}}
.constellation-grid{
  grid-template-columns:repeat(12,1fr);
  gap:20px;
}
.constellation-card.major{grid-column:span 7;min-height:360px}
.constellation-card.minor{grid-column:span 5;min-height:270px}
.constellation-card.wide{grid-column:span 6;min-height:270px}
.constellation-card:nth-child(6){grid-column:span 6}
.constellation-grid::before{display:none}
.year-info-cnt{color:var(--lavender);letter-spacing:.22em}
.team-duo{grid-template-columns:repeat(2,minmax(320px,520px));justify-content:center;gap:30px}
.team-duo .team-card{
  min-height:0;
  aspect-ratio:1/1.08;
  border-radius:30px;
  display:flex;
  flex-direction:column;
}
.leader-portrait{
  height:auto;
  aspect-ratio:1.15/1;
  flex:0 0 auto;
  margin-bottom:22px;
  border-radius:30px 30px 20px 20px;
}
.leader-portrait img{
  object-position:center 30%;
}
.team-duo .team-name{font-size:19px;line-height:1.2}
.team-duo .team-desc{font-size:13px;margin-bottom:26px}
.partners .section-label::after{
  content:'тендерный опыт';
  margin-left:6px;
  color:var(--muted);
  letter-spacing:.14em;
}
@media(max-width:1024px){
  .hero-bird{min-height:auto}.hero-bird-logo{width:min(330px,70vw) !important}.hero-bird-glow{width:340px;height:340px}
  .about-grid-premium{grid-template-columns:1fr}.about-visual{min-height:480px}
  .constellation-grid{grid-template-columns:1fr}.constellation-card.major,.constellation-card.minor,.constellation-card.wide,.constellation-card:nth-child(6){grid-column:auto;min-height:280px}
  .team-duo{grid-template-columns:minmax(280px,520px)}
}
@media(max-width:700px){
  .about-visual{min-height:0;border-radius:24px;padding:30px 18px}
  .about-orbit{position:relative;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;justify-items:stretch}
  .orbit-track,.orbit-comet{display:none}
  .about-orbit .av-bird{width:132px;grid-column:1/-1;justify-self:center;margin-bottom:8px}
  .about-node{position:static;transform:none;justify-content:flex-start;white-space:normal;line-height:1.2}
}
@media(max-width:560px){
  .container{padding:0 18px}
  .hero{padding:112px 0 64px}
  .hero h1{font-size:clamp(38px,12vw,56px);line-height:.96}
  .logo-link .logo-mark{width:32px;height:32px}.hero-bird-logo{width:min(260px,78vw) !important}.bird-shards span{scale:.75}
  .stats-grid{grid-template-columns:1fr 1fr}.stat-geo{font-size:32px}
  .about-visual{padding:26px 16px}.about-orbit .av-bird{width:120px}.about-node{font-size:9px;padding:9px 10px}
  .about-pulse-list span{font-size:10px;padding:9px 11px}
  .partners-wall{grid-template-columns:1fr}
  .partner{min-height:108px;padding:30px 18px}
  .form-field input,.form-field textarea{font-size:16px}
  .team-duo .team-card{aspect-ratio:auto}.leader-portrait{aspect-ratio:1/1}
}


/* === KOLIBRI TEAM FOOTER FOLLOW-UP === */
.team-duo{
  grid-template-columns:repeat(2,minmax(250px,350px));
  gap:82px;
  align-items:start;
  justify-content:center;
}
.team-duo .team-card{
  aspect-ratio:auto;
  min-height:0;
  padding-bottom:30px;
  max-width:350px;
  width:100%;
  overflow:hidden;
}
.leader-portrait{
  aspect-ratio:1.03/1;
  max-height:335px;
  margin-bottom:20px;
}
.team-duo .team-name,
.team-duo .team-role,
.team-duo .team-desc{
  margin-left:24px;
  margin-right:24px;
}
.team-duo .team-name{
  font-size:18px;
  line-height:1.18;
  margin-bottom:7px;
}
.team-duo .team-role{
  font-size:9px;
  line-height:1.35;
}
.team-duo .team-desc{
  font-size:12.5px;
  line-height:1.52;
  margin-top:12px;
  margin-bottom:34px;
}
.leader-portrait::before{
  inset:18px;
  border-color:rgba(255,255,255,.12);
}
.leader-portrait::after{
  width:112px;
  height:112px;
  right:-38px;
  top:12px;
  opacity:.26;
  border-color:rgba(255,255,255,.14);
}
.leader-portrait .team-photo-orb,
.leader-portrait::marker{
  display:none;
}
.leader-portrait + .team-name::before{
  content:"";
  position:absolute;
  width:136px;
  height:136px;
  left:-62px;
  top:-34px;
  border:1px solid rgba(167,139,250,.18);
  border-radius:50%;
  opacity:.5;
  pointer-events:none;
}
.leader-portrait img{
  object-position:center 18%;
}
.leader-portrait.teal img{
  object-position:center 14%;
}
@media(max-width:1024px){
  .team-duo{grid-template-columns:minmax(270px,350px);gap:38px}
}
@media(max-width:560px){
  .team-duo{grid-template-columns:1fr;gap:28px}
  .leader-portrait{max-height:none;aspect-ratio:1/1}
}
