/* Shell = gsw-gpt-slot-block | gsw-slot-shell (alias) */
.gsw-gpt-slot-block,
.gsw-slot-shell {
  --gsw-slot-gap: 1.5rem;
  box-sizing: border-box;
  clear: both;
  margin: 1.5rem auto;
  max-width: 100%;
  text-align: center;
  width: 100%;
}

.gsw-gpt-slot-block--top,
.gsw-slot-shell--top {
  margin-top: 1.75rem;
}

.gsw-gpt-slot-block--bottom,
.gsw-slot-shell--bottom {
  margin-bottom: 1.75rem;
}

.gsw-gpt-label {
  color: #56746a;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}

.gsw-gpt-slot {
  background: #f4f9f7;
  border: 1px solid rgba(72, 111, 99, 0.12);
  border-radius: 18px;
  box-sizing: border-box;
  margin: 0 auto;
  max-width: 100%;
  min-height: 0;
  overflow: hidden;
  padding: 0;
  transition: min-height 0.2s ease, margin 0.2s ease, opacity 0.2s ease;
  width: 100%;
}

.gsw-gpt-slot--desktop {
  display: none;
}

.gsw-gpt-slot--mobile {
  display: block;
  max-width: 336px;
}

.gsw-gpt-slot-block.is-empty .gsw-gpt-slot,
.gsw-slot-shell.is-empty .gsw-gpt-slot {
  background: transparent;
  border-color: transparent;
  min-height: 0;
}

.gsw-gpt-slot-block.is-empty .gsw-gpt-label,
.gsw-slot-shell.is-empty .gsw-gpt-label {
  display: none;
}

@media (min-width: 768px) {
  .gsw-gpt-slot--desktop {
    display: block;
  }

  .gsw-gpt-slot--mobile {
    display: none;
  }

  .gsw-gpt-slot-block--top .gsw-gpt-slot--desktop,
  .gsw-slot-shell--top .gsw-gpt-slot--desktop {
    max-width: 970px;
  }

  .gsw-gpt-slot-block--mid1 .gsw-gpt-slot--desktop,
  .gsw-gpt-slot-block--mid2 .gsw-gpt-slot--desktop,
  .gsw-gpt-slot-block--mid3 .gsw-gpt-slot--desktop,
  .gsw-gpt-slot-block--mid4 .gsw-gpt-slot--desktop,
  .gsw-gpt-slot-block--mid5 .gsw-gpt-slot--desktop,
  .gsw-slot-shell--mid1 .gsw-gpt-slot--desktop,
  .gsw-slot-shell--mid2 .gsw-gpt-slot--desktop,
  .gsw-slot-shell--mid3 .gsw-gpt-slot--desktop,
  .gsw-slot-shell--mid4 .gsw-gpt-slot--desktop,
  .gsw-slot-shell--mid5 .gsw-gpt-slot--desktop {
    max-width: 336px;
  }

  .gsw-gpt-slot-block--bottom .gsw-gpt-slot--desktop,
  .gsw-slot-shell--bottom .gsw-gpt-slot--desktop {
    max-width: 728px;
  }
}

.gsw-gpt-slot.is-empty,
.gsw-gpt-slot-block.is-empty,
.gsw-slot-shell.is-empty {
  margin-bottom: 0;
  margin-top: 0;
}

.gsw-gpt-slot-block.is-empty,
.gsw-slot-shell.is-empty {
  display: none;
}
