/* InvestGroup Magnet — base styles
   Version: 1.2.3
   Общие безопасные стили. Здесь нет раскладки desktop/mobile. */
.ig-magnet,
.ig-magnet *{
  box-sizing: border-box;
  font-family: "Montserrat", sans-serif;
}

.ig-magnet{
  --ig-ring-rotation: 60deg;
  --ig-ring-color-gab: #efc989;
  --ig-ring-color-mini: #a9c2ee;
  --ig-ring-color-torgi: #c1b3f3;
  --ig-ring-color-ren: #e7a6c3;
  --ig-ring-color-apts: #e2b593;
  --ig-ring-color-izhs: #a5c6a8;
  --ig-ring-slot-1: var(--ig-ring-color-gab);
  --ig-ring-slot-2: var(--ig-ring-color-mini);
  --ig-ring-slot-3: var(--ig-ring-color-torgi);
  --ig-ring-slot-4: var(--ig-ring-color-ren);
  --ig-ring-slot-5: var(--ig-ring-color-apts);
  --ig-ring-slot-6: var(--ig-ring-color-izhs);
  --ig-border-opacity: 0.45;
  --ig-shadow-opacity: 0.05;
  --ig-shadow-y: 10px;
  --ig-shadow-blur: 26px;
  --ig-shadow-float-mult: 1.25;
  --ig-wide-gap: clamp(14px, 2.5vw, 52px);
  --ig-stage-width: min(calc(100vw - (var(--ig-wide-gap) * 2)), 1300px);
  --ig-stage-height: 720px;
  --ig-card-width: 315px;
  --ig-card-pad-y: 16px;
  --ig-card-pad-x: 25px;
  --ig-card-radius: 8px;
  --ig-card-title-size: 14px;
  --ig-card-line-size: 13px;
  --ig-card-line-height: 1.25;
  --ig-card-gap: 4px;
  --ig-icon-bubble: 40px;
  --ig-icon-size: 20px;
  --ig-center-size: 220px;
  --ig-center-outer: 236px;
  --ig-center-outer-thin: 248px;
  --ig-logo-width: 135px;
}

.ig-magnet__sr{
  position:absolute;
  left:-9999px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}

.ig-magnet__stage{
  width: 100%;
  margin: 0 auto;
  isolation: isolate;
}

.ig-magnet__logoBox,
.ig-magnet__logoBox::before,
.ig-magnet__logoBox::after{
  border-radius: 999px;
  pointer-events: none;
}

.ig-magnet__logoBox{
  position: relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding: 0;
  background: transparent;
  border: none;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  isolation: isolate;
}

.ig-magnet__logoBox::before{
  content:"";
  position:absolute;
  background: radial-gradient(circle,
    rgba(255,255,255,0.98) 0%,
    rgba(255,255,255,0.96) 60%,
    rgba(255,255,255,0.92) 100%
  );
  box-shadow: inset 0 0 0 1px rgba(95,111,87,0.07);
  z-index: 0;
}

.ig-magnet__logoBox::after{
  content:"";
  position:absolute;
  border-radius:999px;
  background: conic-gradient(
    from calc(-90deg + var(--ig-ring-rotation)),
    var(--ig-ring-slot-1) 0deg 60deg,
    var(--ig-ring-slot-2) 60deg 120deg,
    var(--ig-ring-slot-3) 120deg 180deg,
    var(--ig-ring-slot-4) 180deg 240deg,
    var(--ig-ring-slot-5) 240deg 300deg,
    var(--ig-ring-slot-6) 300deg 360deg
  );
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 6px), #000 calc(100% - 5px));
  mask: radial-gradient(farthest-side, transparent calc(100% - 6px), #000 calc(100% - 5px));
  z-index: 1;
  transition: transform .28s ease, filter .22s ease;
}

.ig-magnet--ring-active-gab{ --ig-ring-color-gab: #f4b23f; }
.ig-magnet--ring-active-mini{ --ig-ring-color-mini: #78a7f2; }
.ig-magnet--ring-active-torgi{ --ig-ring-color-torgi: #9d8cf0; }
.ig-magnet--ring-active-ren{ --ig-ring-color-ren: #ea75ad; }
.ig-magnet--ring-active-apts{ --ig-ring-color-apts: #dc9460; }
.ig-magnet--ring-active-izhs{ --ig-ring-color-izhs: #74b77a; }

.ig-magnet--ring-active-gab .ig-magnet__logoBox::after,
.ig-magnet--ring-active-mini .ig-magnet__logoBox::after,
.ig-magnet--ring-active-torgi .ig-magnet__logoBox::after,
.ig-magnet--ring-active-ren .ig-magnet__logoBox::after,
.ig-magnet--ring-active-apts .ig-magnet__logoBox::after,
.ig-magnet--ring-active-izhs .ig-magnet__logoBox::after{
  filter: saturate(1.08) brightness(1.04);
}

.ig-magnet__center::before,
.ig-magnet__center::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  border-radius:999px;
  pointer-events:none;
  transform:translate(-50%,-50%);
}

.ig-magnet__logo{
  position: relative;
  z-index: 2;
  display:block;
  margin:0 auto;
  height:auto;
  user-select:none;
}

.ig-magnet__cardLink{
  display: block;
  text-decoration: none;
  color: inherit;
}

.ig-card{
  border: none;
  background: rgba(255,255,255,0.75);
  box-shadow: none;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: border-color .22s ease, box-shadow .22s ease, background-color .22s ease;
}

.ig-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
}

.ig-card__title{
  font-weight: 500;
  color: #000000;
}

.ig-card__iconBubble{
  border-radius: 999px;
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #F4F5F9;
}

.ig-card__icon{
  display: block;
  object-fit: contain;
}

.ig-card__body{
  color: #475569;
  display:flex;
  flex-direction:column;
  font-weight: 500;
}

.ig-card__line{
  position: relative;
  padding-left: 12px;
}

.ig-card__line::before{
  content: '';
  position: absolute;
  left: 0;
  top: 0.56em;
  width: 4px;
  height: 4px;
  border-radius: 999px;
  background: rgba(var(--ig-accent-rgb), 0.9);
  transform: translateY(-50%);
}

.ig-card.ig-magnet__card--accent{
  border: 1px solid rgba(var(--ig-accent-rgb), var(--ig-border-opacity)) !important;
  border-left: 4px solid rgba(var(--ig-accent-rgb), var(--ig-border-opacity)) !important;
  box-shadow: 0 var(--ig-shadow-y) var(--ig-shadow-blur) rgba(var(--ig-accent-rgb), var(--ig-shadow-opacity)) !important;
  background-clip: padding-box;
  animation: igCardGlow 6s ease-in-out infinite;
}

@keyframes igCardGlow{
  0%,100%{
    box-shadow: 0 var(--ig-shadow-y) var(--ig-shadow-blur) rgba(var(--ig-accent-rgb), var(--ig-shadow-opacity));
  }
  50%{
    box-shadow: 0 calc(var(--ig-shadow-y) + 4px) calc(var(--ig-shadow-blur) + 10px)
      rgba(var(--ig-accent-rgb), calc(var(--ig-shadow-opacity) * var(--ig-shadow-float-mult)));
  }
}

@keyframes igCenterPulse{
  0%,100%{
    transform:scale(1);
    box-shadow: 0 0 0 10px rgba(95,111,87,0.045), 0 0 0 18px rgba(95,111,87,0.0);
  }
  50%{
    transform:scale(1.028);
    box-shadow: 0 0 0 14px rgba(95,111,87,0.075), 0 0 0 22px rgba(95,111,87,0.035);
  }
}

@keyframes igPulseOuter{
  0%,100%{ opacity:.7; transform:translate(-50%,-50%) scale(1); }
  50%{ opacity:.95; transform:translate(-50%,-50%) scale(1.03); }
}

@keyframes igPulseOuterThin{
  0%,100%{ opacity:.5; transform:translate(-50%,-50%) scale(1); }
  50%{ opacity:.9; transform:translate(-50%,-50%) scale(1.045); }
}

/* Accessibility/performance: reduce continuous animations only for users who explicitly enabled reduced motion. */
@media (prefers-reduced-motion: reduce){
  .ig-magnet .ig-magnet__logoBox,
  .ig-magnet .ig-magnet__center::before,
  .ig-magnet .ig-magnet__center::after,
  .ig-magnet .ig-card.ig-magnet__card--accent{
    animation: none !important;
  }

  .ig-magnet .ig-magnet__logoBox::after,
  .ig-magnet .ig-magnet__cardWrap{
    transition-duration: .01ms !important;
  }
}


/* Desktop hover/focus: highlight the active card border with the same brighter tone as the active ring segment. */
@media (min-width: 769px){
  .ig-magnet--ring-active-gab .ig-magnet__cardWrap[data-card-id="gab"] .ig-card.ig-magnet__card--accent{
    border-color: rgba(244,178,63,0.92) !important;
    border-left-color: rgba(244,178,63,0.98) !important;
    box-shadow: 0 14px 34px rgba(244,178,63,0.14) !important;
  }

  .ig-magnet--ring-active-mini .ig-magnet__cardWrap[data-card-id="mini"] .ig-card.ig-magnet__card--accent{
    border-color: rgba(120,167,242,0.92) !important;
    border-left-color: rgba(120,167,242,0.98) !important;
    box-shadow: 0 14px 34px rgba(120,167,242,0.14) !important;
  }

  .ig-magnet--ring-active-torgi .ig-magnet__cardWrap[data-card-id="torgi"] .ig-card.ig-magnet__card--accent{
    border-color: rgba(157,140,240,0.92) !important;
    border-left-color: rgba(157,140,240,0.98) !important;
    box-shadow: 0 14px 34px rgba(157,140,240,0.14) !important;
  }

  .ig-magnet--ring-active-ren .ig-magnet__cardWrap[data-card-id="ren"] .ig-card.ig-magnet__card--accent{
    border-color: rgba(234,117,173,0.92) !important;
    border-left-color: rgba(234,117,173,0.98) !important;
    box-shadow: 0 14px 34px rgba(234,117,173,0.14) !important;
  }

  .ig-magnet--ring-active-apts .ig-magnet__cardWrap[data-card-id="apts"] .ig-card.ig-magnet__card--accent{
    border-color: rgba(220,148,96,0.92) !important;
    border-left-color: rgba(220,148,96,0.98) !important;
    box-shadow: 0 14px 34px rgba(220,148,96,0.14) !important;
  }

  .ig-magnet--ring-active-izhs .ig-magnet__cardWrap[data-card-id="izhs"] .ig-card.ig-magnet__card--accent{
    border-color: rgba(116,183,122,0.92) !important;
    border-left-color: rgba(116,183,122,0.98) !important;
    box-shadow: 0 14px 34px rgba(116,183,122,0.14) !important;
  }
}


/* =========================================================
   PKL wide-screen adaptation
   Safe desktop scaling. No zoom.
   1366–1920 keeps the stable desktop geometry.
   2200px+ becomes wide/full-bleed independently of Elementor inner width.
   ========================================================= */
@media (min-width: 1440px){
  .ig-magnet{
    --ig-wide-gap: clamp(28px, 2.5vw, 56px);
    --ig-stage-width: min(calc(100vw - (var(--ig-wide-gap) * 2)), 1440px);
  }
}

@media (min-width: 1800px) and (max-width: 2199px){
  .ig-magnet{
    --ig-wide-gap: clamp(40px, 2.8vw, 64px);
    --ig-stage-width: min(calc(100vw - (var(--ig-wide-gap) * 2)), 1560px);
    --ig-stage-height: 760px;
    --ig-card-width: clamp(300px, 15.7vw, 335px);
    --ig-card-pad-y: clamp(16px, 0.8vw, 19px);
    --ig-card-pad-x: clamp(24px, 1.25vw, 30px);
    --ig-card-title-size: clamp(15px, 0.72vw, 17px);
    --ig-card-line-size: clamp(13px, 0.6vw, 15px);
    --ig-card-line-height: 1.34;
    --ig-card-gap: 6px;
    --ig-icon-bubble: clamp(40px, 2vw, 46px);
    --ig-icon-size: clamp(20px, 0.95vw, 23px);
    --ig-center-size: clamp(215px, 11vw, 240px);
    --ig-center-outer: clamp(234px, 12vw, 260px);
    --ig-center-outer-thin: clamp(248px, 12.8vw, 276px);
    --ig-logo-width: clamp(132px, 6.8vw, 150px);
  }
}

@media (min-width: 2200px){
  .ig-magnet{
    --ig-wide-gap: clamp(48px, 2.5vw, 76px);
    --ig-stage-width: calc(100vw - (var(--ig-wide-gap) * 2));
    --ig-stage-height: clamp(800px, 32vw, 880px);
    --ig-card-width: clamp(330px, 14.2vw, 385px);
    --ig-card-pad-y: clamp(18px, 0.82vw, 22px);
    --ig-card-pad-x: clamp(28px, 1.24vw, 34px);
    --ig-card-radius: 10px;
    --ig-card-title-size: clamp(16px, 0.72vw, 20px);
    --ig-card-line-size: clamp(14px, 0.6vw, 17px);
    --ig-card-line-height: 1.36;
    --ig-card-gap: 7px;
    --ig-icon-bubble: clamp(44px, 2vw, 54px);
    --ig-icon-size: clamp(22px, 0.95vw, 27px);
    --ig-center-size: clamp(245px, 10.6vw, 285px);
    --ig-center-outer: clamp(264px, 11.4vw, 308px);
    --ig-center-outer-thin: clamp(278px, 12vw, 324px);
    --ig-logo-width: clamp(150px, 6.3vw, 180px);

    /* Full-bleed inside Elementor boxed containers. */
    width: var(--ig-stage-width) !important;
    max-width: none !important;
    margin-left: 50% !important;
    margin-right: 0 !important;
    transform: translateX(-50%) !important;
  }
}

@media (min-width: 2560px){
  .ig-magnet{
    --ig-wide-gap: clamp(56px, 2.4vw, 90px);
    --ig-stage-width: calc(100vw - (var(--ig-wide-gap) * 2));
    --ig-stage-height: clamp(820px, 31vw, 900px);
    --ig-card-width: clamp(350px, 13.6vw, 410px);
    --ig-card-line-size: clamp(15px, 0.58vw, 18px);
    --ig-card-title-size: clamp(17px, 0.68vw, 21px);
    --ig-card-gap: 8px;
    --ig-center-size: clamp(260px, 10vw, 305px);
    --ig-center-outer: clamp(282px, 10.8vw, 330px);
    --ig-center-outer-thin: clamp(296px, 11.5vw, 348px);
    --ig-logo-width: clamp(160px, 6vw, 190px);
  }
}


/* Central logo link. The visual circle remains unchanged; only clickability is added. */
.ig-magnet__centerLink{
  position: relative;
  z-index: 4;
  display: block;
  border-radius: 999px;
  line-height: 0;
  text-decoration: none;
  cursor: pointer;
  pointer-events: auto;
}

.ig-magnet__centerLink:focus-visible{
  outline: 2px solid rgba(95,111,87,0.72);
  outline-offset: 6px;
}

/* Lightweight local risk rating inside direction cards. */
.ig-card__riskLine{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  padding-left: 12px;
  color: #475569;
}

.ig-card__riskLine::before{
  content: '';
  position: absolute;
  left: 0;
  top: 0.56em;
  width: 4px;
  height: 4px;
  border-radius: 999px;
  background: rgba(var(--ig-accent-rgb), 0.9);
  transform: translateY(-50%);
}

.ig-card__riskRating{
  --ig-risk-dot-size: 8px;
  --ig-risk-dot-gap: 5px;
  --ig-risk-inactive-color: rgba(162,179,173,0.38);
  --ig-risk-active-color: #95cb9a;

  display: inline-flex;
  align-items: center;
  gap: var(--ig-risk-dot-gap);
  flex: none;
  line-height: 1;
}

.ig-card__riskDot{
  display: block;
  width: var(--ig-risk-dot-size);
  height: var(--ig-risk-dot-size);
  min-width: var(--ig-risk-dot-size);
  border-radius: 999px;
  background-color: var(--ig-risk-inactive-color);
}

.ig-card__riskDot.is-active{
  background-color: var(--ig-risk-active-color);
}
