.mg-affiliate-placement,
.mg-yandex-travel-pilot{
  margin:clamp(28px,4vw,48px) 0;
  border:0;
  background:transparent;
}

.mg-affiliate-placement>.mg-shell,
.mg-yandex-travel-pilot>.mg-shell{
  padding-block:0;
}

.mg-affiliate-grid{
  display:grid;
  grid-template-columns:1fr;
  width:min(100%,780px);
  gap:14px;
  margin:clamp(28px,4vw,44px) auto;
}

.mg-affiliate-placement .mg-affiliate-grid,
.mg-yandex-travel-pilot .mg-affiliate-grid{
  margin-block:0;
}

.mg-affiliate-contextual,
.mg-commercial-pilot{
  width:min(100%,780px);
  margin:clamp(28px,4vw,44px) auto;
}

.mg-affiliate-slot{
  min-width:0;
  width:100%;
}

.mg-affiliate-slot:only-child{
  grid-column:auto;
  max-width:none;
}

.mg-affiliate-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "copy action"
    "disclosure disclosure";
  align-items:center;
  gap:16px 28px;
  width:100%;
  min-height:0;
  border:1px solid rgba(166,93,24,.20);
  border-radius:16px;
  padding:22px 24px 14px;
  background:linear-gradient(135deg,#fffaf3 0%,#fff 64%);
  box-shadow:0 10px 28px rgba(16,42,46,.045);
}

.mg-affiliate-card__copy{
  grid-area:copy;
  min-width:0;
}

.mg-affiliate-card__kicker{
  margin:0 0 7px!important;
  color:#8f4b14!important;
  font-size:.7rem!important;
  font-weight:750!important;
  letter-spacing:.065em;
  line-height:1.25!important;
  text-transform:uppercase;
}

.mg-affiliate-card h3{
  margin:0 0 7px;
  color:#102a2e;
  font-size:clamp(1.14rem,1.7vw,1.32rem);
  font-weight:760;
  letter-spacing:-.02em;
  line-height:1.25;
}

.mg-affiliate-card__copy>p:not(.mg-affiliate-card__kicker):not(.mg-affiliate-card__legal):not(.mg-affiliate-card__disclosure){
  max-width:590px;
  margin:0;
  color:#30484c;
  font-size:.97rem;
  line-height:1.58;
}

.mg-affiliate-card__button{
  grid-area:action;
  align-self:center;
  justify-self:end;
  width:auto;
  min-height:46px;
  margin:0;
  border:1px solid #a65d18!important;
  border-radius:11px;
  padding:11px 19px;
  color:#fff!important;
  background:#a65d18!important;
  font-size:.94rem;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  white-space:nowrap;
}

.mg-affiliate-card__button:hover{
  border-color:#8f4b14!important;
  color:#fff!important;
  background:#8f4b14!important;
}

.mg-affiliate-card__button:focus-visible{
  outline:3px solid #ffbf45!important;
  outline-offset:3px!important;
}

.mg-affiliate-card__disclosure,
.mg-affiliate-card__legal,
.mg-affiliate-card__note{
  color:#64777a;
  font-size:.72rem;
  font-weight:450;
  line-height:1.42;
}

.mg-affiliate-card__disclosure{
  grid-area:disclosure;
  margin:0;
  padding-top:8px;
  border-top:1px solid rgba(16,42,46,.055);
}

.mg-affiliate-card__disclosure-link{
  color:inherit;
  font:inherit;
  text-decoration-line:underline;
  text-decoration-style:dotted;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.mg-affiliate-card__disclosure-link:hover{
  color:#3f5558;
  text-decoration-style:solid;
}

.mg-affiliate-card__disclosure-link:focus-visible{
  border-radius:3px;
  outline:2px solid #ffbf45;
  outline-offset:3px;
}

.mg-affiliate-card__legal{
  margin:8px 0 0;
}

.mg-affiliate-card__note{
  margin:7px 0 0;
}

.mg-affiliate-card__label{
  margin:0;
  color:#64777a;
  font-size:.72rem;
  font-weight:500;
  letter-spacing:0;
  line-height:1.42;
  text-transform:none;
}

@media(max-width:760px){
  .mg-affiliate-placement,
  .mg-yandex-travel-pilot{
    margin:24px 0 34px;
  }

  .mg-affiliate-grid,
  .mg-affiliate-contextual,
  .mg-commercial-pilot{
    width:100%;
    margin:24px auto 34px;
  }

  .mg-affiliate-placement .mg-affiliate-grid,
  .mg-yandex-travel-pilot .mg-affiliate-grid{
    margin-block:0;
  }

  .mg-affiliate-card{
    grid-template-columns:1fr;
    grid-template-areas:
      "copy"
      "action"
      "disclosure";
    gap:14px;
    border-radius:14px;
    padding:19px 16px 12px;
  }

  .mg-affiliate-card h3{
    font-size:1.18rem;
  }

  .mg-affiliate-card__button{
    justify-self:stretch;
    width:100%;
    max-width:none;
    min-height:48px;
    white-space:normal;
  }

  .mg-affiliate-card__disclosure{
    padding-top:7px;
  }
}

@media(prefers-reduced-motion:reduce){
  .mg-affiliate-card__button{transition:none}
}
