/* ===== HERO: организации ===== */
:root{
    --accent:#3972FE;
    --ink:#0b1420;
    --container: min(1240px, 100% - clamp(16px,4vw,64px)*2);
  }
  
  /* базовые */
  .container{ width:var(--container); margin-inline:auto; }
  
  .accent{color:var(--accent)}
  
  /* секция */
  .org-hero{
    background:#fff;
    color:var(--ink);
    position:relative;
    overflow:visible;
    margin-bottom: 4rem;
  }
  .org-hero__inner{
    width:var(--container);
    margin-inline:auto;
    display:grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 40px;
    align-items: center;
    padding: 72px 0 24px;
  }
  
  /* текст */
  .org-hero h1{
    font-family:"DM Sans", Inter, system-ui, sans-serif;
    font-weight: 700;
    font-size: clamp(32px, 5vw, 56px);
    line-height: 1.06;
    letter-spacing: -0.02em;
    margin: 0 0 12px;
  }
  .org-hero .lead{
    margin: 0 0 20px;
    color:#2d3845;
    font-size: clamp(16px, 1.4vw, 18px);
  }
  .org-hero__actions{ display:flex; gap:12px; flex-wrap:wrap; }
  
  /* правая карточка с мягким синим свечением */
  .org-hero__media{ position:relative; justify-self:end; }
  .report-card{
    position:relative;
    background:#fff;
    border-radius: 16px;
    padding: 0;
    box-shadow:
        0 20px 60px rgba(36,61,126,.18),     /* тёплая мягкая тень */
        0 0 0 1px #E7EDFF inset;             /* тонкий контур */
  }
  .report-card::before{
    /* голубой «ореол» как на макете */
    content:"";
    position:absolute; inset:-20px -22px -18px -22px;
    border-radius: 22px;
    background: radial-gradient(60% 60% at 50% 10%, rgba(201,221,255,.85), rgba(201,221,255,0));
    filter: blur(6px);
    z-index:-1;
  }
  .report-card img{ display:block; width:min(520px, 38vw); height:auto; border-radius:12px; }
  
  /* нижняя полоса со статами */
  .org-hero__statsbar{
    padding: 12px 0 32px;
    background: #fff;    /* чистый белый, без градиента */
  }
  .statsbar{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(12px, 3vw, 32px);
    align-items: center;
  }
  .stat{
    display:flex; align-items:center; gap:14px; position:relative;
    padding: 8px 0;
  }
  .stat + .stat::before{
    /* тонкий вертикальный разделитель с фейдом */
    content:""; position:absolute; left:-18px; top:12%;
    width:1px; height:76%;
    background: linear-gradient(180deg, rgba(216,226,255,0) 0%, #D8E2FF 50%, rgba(216,226,255,0) 100%);
  }
  .stat__icon{
    display:inline-flex; align-items:center; justify-content:center;
  }
  .stat__icon img{ width:50px; height:50px; }
  .stat__text{ display:flex; flex-direction:column; line-height:1.1; }
  .stat__num{
    font-weight: 800;
    font-size: clamp(22px, 3vw, 32px);
    color:#0b1420;
  }
  .stat__label{ color:#475467; margin-top: 4px; }
  
  /* адаптив */
  @media (max-width: 1024px){
    .org-hero__inner{ grid-template-columns: 1fr; gap: 22px; }
    .org-hero__media{ justify-self:center; }
    .report-card img{ width:min(560px, 82vw); }
  }
  @media (max-width: 640px){
    .statsbar{ grid-template-columns: 1fr; }
    .stat + .stat::before{ display:none; }
  }

  /* ===== Problem → Solution (organizations) ===== */
:root{
  --c-primary:#3972FE;
  --c-bg:#FFFFFF;
  --c-text:#0B1220;
  --c-muted:#566079;
  --c-good:#26C281;
  --c-bad:#FF6161;
  --r-xxl:24px;
  --shadow:0 12px 40px rgba(8,21,65,.08);
  --shadow-soft:0 6px 24px rgba(8,21,65,.06);
}

.ps-ind{
  position:relative;
  padding:0px 0 72px;
  overflow:hidden;
}

.ps-ind__container{
  width:min(1200px,92vw);
  margin:0 auto;
  position:relative;
  z-index:2;
}

.ps-ind__head{
  text-align:center;
  margin-bottom:40px;
  align-items: center;
  display: flex;
  flex-direction: column;
}
.ps-ind__eyebrow{
  display:inline-block;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(57,114,254,.08);
  color:var(--c-primary);
  font-weight:600;
  font-size:14px;
}
.ps-ind__title{
  font-size: 36px;
  line-height: 1.15;
  text-align: center;
  font-weight: 700;
  margin: 0 0 10px;
  max-width: 800px;
}
.ps-ind__sub{
  text-align: center;
  color: #3a4a61;
  max-width: 720px;
  margin: 0 auto 28px;
  font-size: 16px;
  max-width: 900px;
}

/* grid */
.ps-ind__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
  margin-top:28px;
}

.ps-card{
  background:var(--c-bg);
  border-radius:var(--r-xxl);
  box-shadow:var(--shadow);
  padding:28px 28px 24px;
  position:relative;
}
.ps-card--right{
  border:1px solid rgba(57,114,254,.12);
  background:
    linear-gradient(180deg,rgba(57,114,254,.06),transparent 55%) ,
    var(--c-bg);
}
.ps-card__title{
  font-size:22px;
  font-weight:700;
  margin:4px 0 16px;
}

/* lists */
.ps-list{
  display:grid;
  gap:12px;
  color:#111827;
  font-size:16px;
}
.ps-list li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  line-height:1.45;
}
.ps-ico{
  width:22px;height:22px;flex:0 0 22px;
  border-radius:8px;
  box-shadow:var(--shadow-soft);
  position:relative;top:2px;
}
.ps-ico::after{
  content:"";
  position:absolute;inset:0;
  mask-size:60% 60%; mask-repeat:no-repeat; mask-position:center;
  -webkit-mask-size:60% 60%; -webkit-mask-repeat:no-repeat; -webkit-mask-position:center;
  background:#fff;
}
.ps-ico--good{ background:var(--c-primary); }
.ps-ico--good::after{ mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M9.55 17.54L4.5 12.49l1.77-1.77l3.28 3.29l7.68-7.68l1.77 1.77z'/></svg>"); }
.ps-ico--bad{ background:rgba(255,97,97,.18); }
.ps-ico--bad::after{ background:#ff4d4d; mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z'/></svg>"); }

/* CTA */
.ps-cta{
  display:flex;flex-wrap:wrap;gap:12px;
  margin-top:20px;
}
.ps-btn{
  display:inline-flex;align-items:center;justify-content:center;
  height:46px;padding:0 18px;border-radius:8px;
  font-weight:700;text-decoration:none;
  transition:.2s ease;
}
.ps-btn--primary{
  background:var(--c-primary);color:#fff;
  box-shadow:0 12px 36px rgba(57,114,254,.35);
}
.ps-btn--primary:hover{ color: white; }
.ps-btn--outline:hover{ background: #f4f7ff; color: var(--blue); border-color: #3972FE; }


.ps-btn--ghost:hover{ background:rgba(57,114,254,.06); }

/* мини-статусы */
.ps-mini{
  display:flex;flex-wrap:wrap;gap:18px 28px;
  margin-top:28px;color:var(--c-muted);font-weight:600;
}
.ps-mini__box{
  width:22px;height:22px;border-radius:8px;
  display:inline-block;margin-right:8px;background:rgba(57,114,254,.15);
  box-shadow:var(--shadow-soft);
}

/* декоративные «водяные» элементы */
.ps-ind__decor{ position:absolute; inset:0; z-index:1; pointer-events:none; }
.ps-blob{
  position:absolute; filter:blur(44px); opacity:.35; border-radius:999px;
}
.ps-blob--1{ width:380px; height:380px; left:-120px; top:140px; background:radial-gradient(70% 70% at 30% 30%, #79A7FF 0%, rgba(121,167,255,0) 70%); }
.ps-blob--2{ width:420px; height:420px; right:-140px; bottom:-40px; background:radial-gradient(70% 70% at 70% 70%, #BACEFF 0%, rgba(186,206,255,0) 70%); }

.ps-wm{
  position:absolute; border-radius:50%;
  border:1px solid rgba(57,114,254,.18);
}
.ps-wm--md{ width:420px; height:420px; right:12%; top:40px; }
.ps-wm--sm{ width:220px; height:220px; left:8%; bottom:20px; }

/* responsive */
@media (max-width: 1024px){
  .ps-ind{ padding:72px 0 56px; }
  .ps-ind__title{ font-size:36px; }
  .ps-ind__grid{ grid-template-columns:1fr; }
}
@media (max-width: 560px){
  .ps-ind__title{ font-size:30px; }
  .ps-card{ padding:22px 18px; }
  .ps-btn{ height:44px;  }
}
.ps-card__icon {
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
}

.ps-card__desc {
  font-size: 15px;
  color: var(--c-muted);
  margin-bottom: 16px;
}

.ps-card--bad {
  border: 1px solid rgba(255,97,97,.12);
  background: linear-gradient(180deg, rgba(255,97,97,.06), transparent 55%), var(--c-bg);
}

.ps-card--good {
  border: 1px solid rgba(57,114,254,.12);
  background: linear-gradient(180deg, rgba(57,114,254,.06), transparent 55%), var(--c-bg);
  border: 1px solid var(--c-primary);
}

/* ===== How it works ===== */
.how-ind{
  position:relative; padding:84px 0 64px;
  background-color: white;
}
.how-ind__container{ width:min(1100px,92vw); margin:0 auto; }
.how-ind__title{
  text-align:center; font-weight:700; color:var(--c-text);
  font-size:36px; letter-spacing:-.01em;
}
.how-ind__lead{
  text-align:center; color:var(--c-muted); margin-top:8px; font-size:16px;
}

.how-ind__grid{
  list-style:none; padding:0; margin:36px 0 0;
  display:grid; grid-template-columns:1fr 80px 1fr 80px 1fr 80px 1fr; align-items:start;
}

/* step */
.how-step{ text-align:center; }
.how-ico{
  width:72px; height:72px; margin:0 auto 14px;
  border-radius:22px; background:var(--c-primary); color:#fff;
  display:grid; place-items:center; position:relative;
  box-shadow:0 16px 40px rgba(57,114,254,.35);
}
.how-ico svg{
  width:34px; height:34px; fill:none; stroke:#fff; stroke-width:2; stroke-linecap:round; stroke-linejoin:round;
}
.how-ico svg path[fill]{ fill:#fff; stroke:none; }

.how-badge{
  position:absolute; right:-6px; top:-6px;
  width:26px; height:26px; border-radius:999px;
  background:#fff; color:var(--c-primary);
  font-weight:700; font-size:14px; display:grid; place-items:center;
  box-shadow:0 8px 24px rgba(8,21,65,.12);
}

.how-title{ font-size:18px; font-weight:700; color:#0B1220; margin-bottom:6px; }
.how-desc{
  color:var(--c-muted); font-size:14px; line-height:1.6;
  max-width:260px; margin:0 auto;
}

/* arrows */
.how-arrow{
  height:72px; position:relative; opacity:.6;
}
.how-arrow::before{
  content:""; position:absolute; top:50%; left:8px; right:8px; height:1px;
  background:linear-gradient(90deg,rgba(57,114,254,.15), rgba(57,114,254,.05));
}
.how-arrow::after{
  content:""; position:absolute; top:calc(50% - 5px); right:8px;
  width:10px; height:10px; border-right:2px solid rgba(57,114,254,.35);
  border-top:2px solid rgba(57,114,254,.35); transform:rotate(45deg);
}

/* responsive */
@media (max-width: 1024px){
  .how-ind__grid{ grid-template-columns:1fr 56px 1fr; row-gap:28px; }
  .how-ind__grid .how-arrow:nth-of-type(2n){ display:block; }
}
@media (max-width: 720px){
  .how-ind{ padding:64px 0 48px; }
  .how-ind__title{ font-size:28px; }
  .how-ind__lead{ font-size:15px; }
  .how-ind__grid{ grid-template-columns:1fr; row-gap:20px; }
  .how-arrow{ display:none; }
  .how-step{ text-align:center; }
}

/* ===== Benefits (universities) ===== */
.adv-ind{
  position:relative;
  padding:96px 0;
  background:linear-gradient(180deg,#FFFFFF 0%, #F6F8FF 40%,var(--hero-bg) 100%); /* лёгкая голубая шапка */
}
.adv-ind__container{ width:min(1200px,92vw); margin:0 auto; }
.adv-ind__title{
  text-align:center; font-weight:700; color:var(--c-text);
  font-size:40px; letter-spacing:-.01em;
}
.adv-ind__lead{
  text-align:center; color:var(--c-muted); margin:10px auto 38px; font-size:18px;
  max-width:900px;
}

.adv-ind__grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:24px;
}

/* card */
.adv-card{
  background:#fff;
  border-radius:24px;
  box-shadow:0 18px 48px rgba(8,21,65,.08);
  padding:26px 28px 22px;
  border:1px solid rgba(57,114,254,.08);
  display:flex; flex-direction:column;
}
.adv-ico{
  width:56px; height:56px; border-radius:16px;
  background:var(--c-primary); color:#fff;
  display:grid; place-items:center; margin-bottom:12px;
  box-shadow:0 14px 36px rgba(57,114,254,.35);
}
.adv-ico svg{ width:28px; height:28px; fill:none; stroke:#fff; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.adv-ico svg path[fill]{ fill:#fff; stroke:none; }

.adv-title{ font-size:22px; font-weight:700; color:#0B1220; margin-bottom:8px; }
.adv-sub{ color:var(--c-muted); margin-bottom:14px; }

/* list with blue bullets */
.adv-list{ list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.adv-list li{
  display:flex; align-items:flex-start; gap:10px; color:#0B1220;
}
.adv-list li::before{
  content:""; width:8px; height:8px; border-radius:50%;
  background:var(--c-primary); margin-top:.55em; flex:0 0 8px;
}

/* responsive */
@media (max-width: 1100px){
  .adv-ind__grid{ grid-template-columns:1fr; }
  .adv-ind{ padding:80px 0; }
  .adv-ind__title{ font-size:34px; }
}
@media (max-width: 560px){
  .adv-card{ padding:22px 18px; border-radius:20px; }
  .adv-title{ font-size:20px; }
}


/* ===== Partners (logos marquee) ===== */
.partners{
  position: relative;
  padding: 56px 0 64px;
  background: #EDFAFF;     /* продолжение голубого фона */
}
.partners__inner{
  
  margin: 0 auto;
  padding: 0 16px;
}
.partners__title{
  font-size: 36px;
  line-height: 1.15;
  text-align: center;
  font-weight: 700;
  margin: 0 0 10px;
}

.partners__sub{
  text-align: center;
  color: #3a4a61;
  max-width: 720px;
  margin: 0 auto 28px;
  font-size: 16px;
}

/* Лента с «масками» по краям (их можно убрать, если вдруг скрывают контент) */
.partners__marquee{
  --gap: 28px;
  --speed: 80s; /* чем больше — тем медленнее */
  overflow: hidden;
  user-select: none;
  -webkit-mask-image: linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);
          mask-image: linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);
}

/* Трек: flex + ширина по содержимому + бесконечная прокрутка */
.partners__track{
  display: flex;
  align-items: center;
  gap: var(--gap);
  width: max-content;
  animation: scroll-left 80s linear infinite;
  will-change: transform;
}
.partners__marquee:hover .partners__track{
  animation-play-state: paused; /* пауза при наведении */
}
@keyframes scroll-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }}

/* «Карточка» логотипа */
.partner-logo{
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 72px;
  padding: 14px 22px;
  background: #fff;
  border: 1px solid #E7EDFF;
  border-radius: 14px;
  box-shadow: 0 12px 30px rgba(36,61,126,.10);
  transition: transform .2s ease;
}
.partner-logo:hover{ transform: translateY(-2px); }

/* Сам логотип */
.partner-logo img{
  display: block;
  height: 38px;           /* единая высота логотипов */
  width: auto;
  filter: grayscale(100%) contrast(1.05);
  opacity: .9;
  transition: filter .25s ease, opacity .25s ease;
}
.partner-logo:hover img{
  filter: none;
  opacity: 1;
}


/* ===== FAQ ===== */
.faq{
  position: relative;
  padding: 68px 0 92px;
  /* плавный фон секции от белого к голубому */
  background-color: var(--hero-bg);
}
.faq__inner{
  
  margin: 0 auto;
  padding: 0 16px;
}
.faq__title{
  font-size: 36px;
  line-height: 1.15;
  text-align: center;
  font-weight: 700;
  margin: 0 0 10px;
}
.faq .accent{ color: var(--accent); }
.faq__subtitle{
  text-align: center;
  color: #3a4a61;
  max-width: 720px;
  margin: 0 auto 28px;
  font-size: 16px;
}

/* список */
.faq__list{
  max-width: 1040px;
  margin: 0 auto;
  display: grid;
  gap: 14px;
}

/* карточка */
.faq-item{
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid #CFE0FF;
  background: #fff; /* у закрытых — белый */
  box-shadow: 0 16px 40px rgba(36,61,126,.10);
}

/* заголовок вопроса */
.faq-item__summary{
  list-style: none;
  cursor: pointer;
  padding: 18px 72px 18px 28px;
  font-weight: 600;
  font-size: clamp(16px, 2.4vw, 22px);
  color: var(--accent);
  position: relative;
  min-height: 60px;
  display: flex;
  align-items: center;
}
.faq-item__summary::-webkit-details-marker{ display:none; }
/* закрыт: белый фон, синий плюс */
.faq-item__summary::after{
  content: "";
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 42px; height: 42px;
  border-radius: 10px;
  background:
    #fff
    url("data:image/svg+xml;utf8,\<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233972FE' stroke-width='3' stroke-linecap='round'><path d='M12 5v14M5 12h14'/></svg>") 
  no-repeat center / 20px 20px;
}

/* открыт: синий фон, белый минус */
.faq-item[open] .faq-item__summary::after{
  background:var(--accent)
      url("data:image/svg+xml;utf8,\<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round'><path d='M5 12h14'/></svg>")
    no-repeat center / 20px 20px;
}
/* открытое состояние: синий хедер, белая панель */
.faq-item[open] .faq-item__summary{
  background: var(--accent);
  color: #fff;
  border-bottom: 1px solid rgba(255,255,255,.25);
}


/* контент ответа (белая панель как на макете) */
.faq-item__panel{
  background: #fff;
  color: #1f2a37;
  font-size: 16px;
  line-height: 1.55;
  padding: 16px 28px 20px;
  border-top: 1px solid #E6EEFF;
}

.faq-item[open] .faq-item__panel{
  animation: faq-reveal .5s ease;
}
@keyframes faq-reveal{
  from{ opacity:.0; transform: translateY(-4px); }
  to  { opacity:1;  transform: translateY(0); }
}

/* адаптив */
@media (max-width: 640px){
  .faq-item__summary{ padding: 16px 66px 16px 18px; }
  .faq-item__panel{ padding: 14px 18px 18px; }
}


.hero-ind__media{
  position: relative;
  justify-self: end;
  z-index: 1;
}
.doc-anim-video{
  display: block;
  width: clamp(280px, 24vw, 440px);
  height: auto;
  border-radius: 16px;
  box-shadow: 0 28px 60px rgba(36,61,126,.18);
  background: #fff;
  object-fit: cover;
}
.hero-ind__media::before{
  content:"";
  position:absolute;
  inset: -24px -28px -18px -28px;
  border-radius: 24px;
  background: radial-gradient(60% 60% at 60% 40%, rgba(201,221,255,.6), rgba(201,221,255,0));
  filter: blur(6px);
  z-index:-1;
}
/* те же переменные, что у hero-ind */
:root{
  --hero-bg: #EDFAFF;   /* важно: именно этот мягкий голубой */
  --hero-soft: #C9DDFF;
  --accent: #3972FE;
}

/* герой организаций — готовим стек и позволяем «вылезать» фейду */
.org-hero{
  position: relative;
  overflow: visible;   /* чтобы фейд заходил на следующую секцию */
  isolation: isolate;  /* как в твоём примере */
}

/* один (!) нижний фейд, как hero-ind__fade */
.org-hero__fade{
  position: absolute;
  left: 50%;
  bottom:-80px;
  transform: translateX(-50%);
  width: calc(100vw - (100vw - 100%));
  height: 200px; /* 200–260 по вкусу */
  background: linear-gradient(
    180deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0) 35%,
    var(--hero-bg) 100%
  );
  z-index: 1;
  pointer-events: none;
}
@supports (width: 100dvw){
  .org-hero__fade{ width: 100dvw; }
}

/* секция «Проблема → Решение» на том же фоне, что и hero-ind */
.ps-ind.ps-ind--aqua{
  background: var(--hero-bg);
  /* можно добавить лёгкий нижний градиент как в твоих секциях: */
  /* background: linear-gradient(180deg, var(--hero-bg) 0%, #EDFAFF 80%, #EDFAFF 100%); */
}

/* на голубом фоне заголовки остаются тёмными — карточки уже белые, ок */
 /* декоративный фон всей секции */
 .hero-ind__decor{
  position:absolute; inset:0; z-index:0; pointer-events:none;
  background: transparent;
}

.blob{
  position:absolute; width:400px; height:400px; border-radius:50%;
  background: linear-gradient( var(--accent), var(--hero-soft));
  filter: blur(50px); opacity:0.3; z-index:-5;
}
.blob-1{ left:-15%; bottom:0; }
.blob-2{ right: -140px; top: 7%; width:320px; height:320px; }

/* ===== Aqua → White fade для секции 'Проблема → Решение' ===== */
.ps-ind.ps-ind--aqua{
  position: relative;
  background: var(--hero-bg);     /* тот же аква цвет */
  padding-top: 0;                 /* как у тебя */
  padding-bottom: 168px;          /* добавили место под фейд, чтобы не накрывать CTA */
  overflow: hidden;               /* фейд внутри секции */
}

/* нижний фейд, аналог hero-ind__fade, но из аква в белый */
.ps-ind.ps-ind--aqua::after{
  content:"";
  position:absolute;
  left:50%; bottom:-1px; transform:translateX(-50%);
  width: calc(100vw - (100vw - 100%));
  height: 168px;                  /* 140–220 по вкусу */
  background: linear-gradient(
    180deg,
    rgba(237,250,255,0) 0%,       /* прозрачный аква */
    rgba(237,250,255,0) 40%,
    rgba(237,250,255,.65) 72%,    /* мягкий белый */
    #FFFFFF 100%                  /* чисто белый у следующей секции */
  );
  pointer-events:none;
  z-index:1;                      /* ниже контента (он у тебя z-index:2), но выше фона */
}
@supports (width: 100dvw){ .ps-ind.ps-ind--aqua::after{ width:100dvw; } }



/* ===== Support CTA ===== */
.support-cta{
  position: relative;
  padding: 48px 0 80px;
  background-color: var(--hero-bg);
}

.support-cta__inner{
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 16px;
}

.support-cta__card{
  position: relative;
  background:#fff;
  border:1px solid #E7EDFF;
  border-radius: 22px;
  padding: clamp(28px, 4vw, 40px);
  text-align:center;
  box-shadow: 0 26px 60px rgba(36,61,126,.18);
  display:flex; flex-direction: column; align-items: center;
}

/* декоративное мягкое свечение снизу карточки */
.support-cta__card::after{
  content:"";
  position:absolute;
  left:10%; right:10%; bottom:-18px; height:36px;
  border-radius: 999px;
  background: radial-gradient(60% 60% at 50% 0%, rgba(57,114,254,.20), rgba(57,114,254,0));
  filter: blur(8px);
  z-index:-1;
}

.support-cta__icon{
  width:60px; height:60px;
  border-radius: 50%;
  display:flex; align-items:center; justify-content:center;
}
.support-cta__title{
  margin: 6px 0 8px;
  font-weight: 600;
  font-size: clamp(22px, 3.6vw, 36px);
  line-height:1.2;
}

.support-cta__text{
  font-family: Inter, system-ui, sans-serif;
  max-width: 760px;
  margin: 0 auto 18px;
  color:#2a3445;
  font-size: 16px;
}

/* выровняем кнопку и усилим «ореол» в твоём стиле */
.support-cta__actions{
  display:flex; justify-content:center; gap: 12px;
}
.support-cta .btn.btn-primary{
  box-shadow: 0 16px 36px rgba(57,114,254,.28);
  border-radius: 12px;
  padding: 0 26px;
}
.support-cta .btn.btn-primary:hover{
  transform: translateY(-1px);
}

/* адаптив */
@media (max-width: 560px){
  .support-cta__icon{ width:64px; height:64px; }
  .support-cta .btn.btn-primary{ height: 48px; }
}


/* =========================
   CONTACT — чистый фирменный
   ========================= */

/* палитра (на всякий) */
:root{
  --hero-bg:#EDFAFF;  /* мягкий aqua */
  --accent:#3972FE;   /* фирменный синий */
  --ink:#0b1420;
}

/* секция и шапка без лишнего декора */
.oy-contact{ 
  padding: clamp(56px, 8vw, 96px) 0 clamp(80px, 10vw, 120px);
  background:var(--hero-bg);
}
.oy-contact__hero{
  background: var(--hero-bg);
  color: var(--ink);
  padding: clamp(44px, 6vw, 88px) 0;
  background-image: none !important; /* на случай старых градиентов */
}

/* заголовок и подзаголовок */
.oy-contact__title{
  text-align:center; font-weight:700; line-height:1.15;
  font-size: clamp(28px, 3.6vw, 44px); margin:0 0 10px; color:var(--ink);
}
.oy-contact__subtitle{
  text-align:center; color:#2a3445; margin:0 auto 20px;
  max-width: 900px; font-size: clamp(16px, 1.6vw, 18px);
}

/* CTA-ряд: кнопка + поле */
.oy-contact__cta{
  display:flex; gap:12px; justify-content:center; align-items:center; flex-wrap:wrap;
  margin-bottom:22px;
}
.btn-cta{
  background: var(--accent); color:#fff; font-weight:700;
  padding:12px 18px; border-radius:8px; text-decoration:none;
  box-shadow: 0 16px 36px rgba(57,114,254,.28);
  transition: transform .16s ease;
}
.btn-cta:hover{ }

.cta-input{
  display:flex; align-items:center; gap:8px;
  background:#fff; border:1px solid #E7EDFF; border-radius:14px; padding:6px;
  box-shadow: 0 10px 24px rgba(36,61,126,.10);
}
.ps-btn--outline{
  background:none; color: var(--accent);
  border: 1px solid var(--accent);
}
.cta-input input{
  background:transparent; border:0; outline:0; color:var(--ink);
  padding:10px 12px; width:260px;
}
.cta-input input::placeholder{ color:#667085; }
.cta-input button{
  border:0; background: var(--accent); color:#fff;
  border-radius:12px; padding:10px 14px; font-weight:700; cursor:pointer;
  box-shadow: 0 12px 28px rgba(57,114,254,.25);
}

/* три преимущества — чистые белые карточки */
.oy-contact__features{ margin-top: 18px; }
.feat-card{
  display:flex; gap:12px; align-items:flex-start; padding:16px;
  background:#fff; border:1px solid #E7EDFF; border-radius:18px;
  box-shadow: 0 12px 28px rgba(36,61,126,.12);
  color: var(--ink);
}
.feat-icon{ font-size:22px; line-height:1; margin-top:2px; }
.feat-title{ font-weight:700; }
.feat-sub{ color:#3a4a61; font-size:14px; }

/* большая белая карта с формой */
.oy-card{
  background:#fff; border-radius:22px; margin-top: 28px;
  border:1px solid #E7EDFF;
  box-shadow: 0 20px 48px rgba(36,61,126,.16);
  overflow:hidden;
}
.oy-card__title{ font-weight:700; font-size:20px; margin-bottom:16px; color:#0f172a; }
.oy-list{ list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.oy-key{ color:#334155; font-weight:700; margin-right:8px; }
.oy-list a{ color:var(--accent); text-decoration:none; }
.oy-list a:hover{ text-decoration:underline; }

/* инпуты + сабмит — без градиентов, строго фирменно */
.oy-input{
  border-radius:14px; padding:12px 14px; border:1px solid #e5e7eb;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.oy-input:focus{
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(57,114,254,.16);
}
.btn-submit{
  background: var(--accent);
  color:#fff; font-weight:700; border:0; border-radius:14px; padding:12px 18px;
  box-shadow:0 12px 22px rgba(57,114,254,.28); cursor:pointer;
  transition: transform .16s ease, box-shadow .16s ease;
}
.btn-submit:hover{ box-shadow:0 16px 28px rgba(57,114,254,.34); background-color: var(--c-primary); color: white;}

/* адаптив */
@media (max-width: 767.98px){
  .oy-contact__hero{ padding: 40px 0 56px; }
  .cta-input input{ width: 200px; }
}

.hero-head .accent{ color:var(--accent); }
.hero-head .hero-br{ display:block; }