.medicube-page{
  --med-pink:#efb7c7;
  --med-pink-deep:#b95f7d;
  --med-rose:#8d405a;
  --med-gel:#f9dfe7;
  --med-pearl:#fff8fa;
}

.medicube-page .w2-hero{
  background:
    radial-gradient(
      circle at 82% 12%,
      rgba(239,183,199,.34),
      transparent 18rem
    ),
    radial-gradient(
      circle at 92% 76%,
      rgba(185,95,125,.12),
      transparent 20rem
    ),
    linear-gradient(
      135deg,
      #fff 0%,
      #fff8fa 48%,
      #f5e1e8 100%
    );
}

.medicube-page .w2-kicker{
  color:var(--med-rose);
}

.med-visual{
  position:relative;
  min-height:390px;
}

.med-mask{
  position:absolute;
  top:50%;
  left:50%;
  width:235px;
  height:310px;
  transform:
    translate(-50%,-50%)
    rotate(-2deg);
  border-radius:
    48% 52% 45% 45% /
    35% 35% 61% 61%;
  border:
    1px solid
    rgba(185,95,125,.19);
  background:
    linear-gradient(
      150deg,
      rgba(255,255,255,.77),
      rgba(239,183,199,.66),
      rgba(255,240,245,.88)
    );
  box-shadow:
    inset 14px 12px 30px
    rgba(255,255,255,.72),
    inset -15px -15px 38px
    rgba(185,95,125,.08),
    0 30px 90px
    rgba(141,64,90,.16);
  backdrop-filter:blur(11px);
}

.med-eye{
  position:absolute;
  top:100px;
  width:53px;
  height:22px;
  border-radius:50%;
  background:
    rgba(255,255,255,.72);
  border:
    1px solid
    rgba(185,95,125,.12);
}

.med-eye-a{
  left:42px;
}

.med-eye-b{
  right:42px;
}

.med-mouth{
  position:absolute;
  left:50%;
  bottom:67px;
  width:54px;
  height:15px;
  transform:translateX(-50%);
  border-radius:50%;
  background:
    rgba(255,255,255,.65);
}

.med-bubble{
  position:absolute;
  border-radius:50%;
  border:
    1px solid
    rgba(185,95,125,.16);
  background:
    rgba(255,255,255,.43);
  box-shadow:
    inset 0 0 18px
    rgba(255,255,255,.8);
}

.med-bubble-a{
  width:95px;
  height:95px;
  top:22px;
  left:0;
}

.med-bubble-b{
  width:65px;
  height:65px;
  right:4%;
  top:55px;
}

.med-bubble-c{
  width:116px;
  height:116px;
  right:-2%;
  bottom:8px;
}

.med-gradient-meter{
  margin:30px 0 12px;
  height:18px;
  border-radius:999px;
  background:
    linear-gradient(
      90deg,
      #e7a8bc,
      #f4cfda,
      rgba(255,255,255,.92)
    );
  border:
    1px solid
    rgba(185,95,125,.14);
}

.med-claim-box{
  margin:30px 0;
  padding:27px;
  border-radius:24px;
  border:
    1px solid
    rgba(185,95,125,.16);
  background:
    linear-gradient(
      135deg,
      #fffafb,
      #f9e9ee
    );
}

.med-claim-box strong{
  color:var(--med-rose);
}

.med-evidence-grid{
  display:grid;
  grid-template-columns:
    repeat(3,1fr);
  gap:13px;
  margin:30px 0;
}

.med-evidence{
  padding:23px;
  border-radius:20px;
  border:
    1px solid
    var(--k-line);
  background:#fff;
}

.med-evidence-label{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  margin-bottom:12px;
  padding:0 11px;
  border-radius:999px;
  background:#f8e5eb;
  color:var(--med-rose);
  font-size:12px;
  font-weight:850;
}

.med-timeline{
  position:relative;
  margin:30px 0;
  padding-left:34px;
}

body[dir="rtl"] .med-timeline{
  padding-left:0;
  padding-right:34px;
}

.med-timeline::before{
  content:"";
  position:absolute;
  top:4px;
  bottom:4px;
  left:9px;
  width:2px;
  background:
    linear-gradient(
      var(--med-pink-deep),
      rgba(185,95,125,.12)
    );
}

body[dir="rtl"] .med-timeline::before{
  left:auto;
  right:9px;
}

.med-time{
  position:relative;
  margin:0 0 24px;
  padding:0 0 0 20px;
}

body[dir="rtl"] .med-time{
  padding:0 20px 0 0;
}

.med-time::before{
  content:"";
  position:absolute;
  width:14px;
  height:14px;
  left:-31px;
  top:7px;
  border-radius:50%;
  background:var(--med-pink-deep);
  box-shadow:
    0 0 0 6px
    rgba(239,183,199,.25);
}

body[dir="rtl"] .med-time::before{
  left:auto;
  right:-31px;
}

.med-time strong{
  display:block;
  margin-bottom:4px;
}

@media(max-width:760px){
  .med-evidence-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:560px){
  .med-visual{
    min-height:330px;
  }

  .med-mask{
    transform:
      translate(-50%,-50%)
      scale(.86);
  }
}
