/* Zimula2 V4.3 - Zimu coach section composition fix */
.zimu-section{
  min-height:520px;
  grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);
  gap:56px;
  align-items:center;
  padding-top:76px;
  padding-bottom:76px
}
.zimu-copy{position:relative;z-index:3;max-width:610px}
.zimu-copy>p{max-width:570px}
.zimu-points{flex-wrap:wrap}
.zimu-points span{
  min-width:135px;
  padding:13px 14px;
  background:rgba(255,255,255,.055);
  backdrop-filter:blur(8px)
}
.zimu-art{
  position:relative;
  height:400px;
  display:flex;
  align-items:center;
  justify-content:center;
  isolation:isolate
}
.zimu-art:before{
  content:"";
  position:absolute;
  width:330px;height:330px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(93,225,247,.20),rgba(87,107,244,.09) 52%,transparent 72%);
  filter:blur(2px)
}
.zimu-art>img{
  position:absolute;
  z-index:2;
  left:50%;
  bottom:8px;
  width:min(360px,78%);
  height:auto;
  max-height:350px;
  object-fit:contain;
  transform:translateX(-50%);
  filter:drop-shadow(0 26px 30px rgba(3,20,58,.28));
  animation:v43ZimuCenter 4.8s ease-in-out infinite!important
}
.orbit{pointer-events:none}
.orbit.one{width:315px;height:315px;opacity:.72}
.orbit.two{width:405px;height:405px;opacity:.48}
.bubble{
  z-index:5;
  right:8px;
  top:26px;
  width:190px;
  padding:15px 16px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:17px;
  background:rgba(8,38,94,.78);
  box-shadow:0 18px 34px rgba(2,16,50,.22);
  backdrop-filter:blur(16px);
  animation:v43Bubble 5s ease-in-out infinite!important
}
.bubble small{color:#7de8f6;font-size:8px;font-weight:800;letter-spacing:.08em}
.bubble b{margin-top:6px;color:#fff;font-size:12px;line-height:1.42}
@keyframes v43ZimuCenter{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(-9px)}
}
@keyframes v43Bubble{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}
@media(max-width:980px){
  .zimu-section{
    grid-template-columns:1fr;
    gap:28px;
    min-height:auto;
    padding-top:64px;
    padding-bottom:56px
  }
  .zimu-copy{max-width:760px}
  .zimu-art{
    width:min(100%,620px);
    height:360px;
    margin:0 auto
  }
  .zimu-art>img{width:min(330px,68%);max-height:315px}
  .orbit.one{width:280px;height:280px}
  .orbit.two{width:350px;height:350px}
  .bubble{right:5%;top:22px;width:180px}
}
@media(max-width:600px){
  .zimu-section{
    display:block;
    padding:52px 20px 38px;
    text-align:left
  }
  .zimu-section h2{font-size:36px;line-height:1.04}
  .zimu-copy>p{font-size:12px;line-height:1.65}
  .zimu-points{display:grid;grid-template-columns:1fr;gap:8px;margin-top:20px}
  .zimu-points span{max-width:none;width:100%}
  .zimu-art{
    height:auto;
    min-height:0;
    margin-top:28px;
    display:flex;
    flex-direction:column;
    gap:14px
  }
  .zimu-art:before,.orbit{display:none!important}
  .zimu-art>img{
    position:relative;
    left:auto;bottom:auto;
    width:min(290px,86%);
    max-height:none;
    margin:0 auto;
    transform:none!important;
    animation:v43ZimuMobile 4.8s ease-in-out infinite!important
  }
  .bubble{
    position:relative;
    right:auto;top:auto;
    width:min(100%,360px);
    margin:0 auto;
    padding:14px 16px;
    text-align:left;
    background:rgba(4,30,76,.86);
    animation:none!important
  }
  @keyframes v43ZimuMobile{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-7px)}
  }
}
@media(prefers-reduced-motion:reduce){
  .zimu-art>img,.bubble{animation:none!important}
}