/* AmigoVPN buy modal: isolated from the site template styles */
html.amigo-buy-lock,
body.amigo-buy-lock {
  overflow: hidden !important;
  overscroll-behavior: none;
}

.amigo-buy-modal {
  position: fixed !important;
  z-index: 2147483000 !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  padding: 18px !important;
  opacity: 0;
  pointer-events: none;
}

.amigo-buy-modal.is-open {
  display: flex !important;
  opacity: 1;
  pointer-events: auto;
}

.amigo-buy-modal *,
.amigo-buy-modal *::before,
.amigo-buy-modal *::after {
  box-sizing: border-box !important;
}

.amigo-buy-modal__backdrop {
  position: absolute !important;
  z-index: 0 !important;
  inset: 0 !important;
  background: rgba(18, 25, 34, 0.68) !important;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}

.amigo-buy-modal__dialog {
  position: relative !important;
  z-index: 1 !important;
  width: min(760px, 100%) !important;
  max-height: calc(100dvh - 36px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  margin: 0 auto !important;
  padding: 28px !important;
  border: 1px solid rgba(144, 144, 144, 0.34) !important;
  border-radius: 24px !important;
  background: #ffffff !important;
  color: #555 !important;
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.28) !important;
  transform: translateY(8px) scale(0.985);
  animation: amigoBuyModalIn 0.18s ease-out forwards;
}

@keyframes amigoBuyModalIn {
  to {
    transform: translateY(0) scale(1);
  }
}

.amigo-buy-modal__close {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(0, 0, 0, 0.06) !important;
  box-shadow: none !important;
  color: #4b4b4b !important;
  font-size: 28px !important;
  font-weight: 300 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-indent: 0 !important;
  text-transform: none !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.amigo-buy-modal__close:hover {
  background: rgba(0, 0, 0, 0.11) !important;
}

.amigo-buy-modal__head {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 48px 12px 12px !important;
  margin: 0 0 14px 0 !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #f5f7f8 0%, #ffffff 50%, rgba(107, 212, 200, 0.2) 100%) !important;
}

.amigo-buy-modal__logo {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 50px !important;
  height: 50px !important;
  border-radius: 15px !important;
  background: #fff !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08) !important;
}

.amigo-buy-modal__logo img {
  display: block !important;
  width: 35px !important;
  height: 35px !important;
  object-fit: contain !important;
  margin: 0 !important;
}

.amigo-buy-modal__titlebox {
  min-width: 0 !important;
}

.amigo-buy-modal__eyebrow {
  margin: 0 0 4px 0 !important;
  color: #57aed3 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.13em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.amigo-buy-modal__head h2 {
  margin: 0 0 4px 0 !important;
  color: #333 !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
}

.amigo-buy-modal__head p:not(.amigo-buy-modal__eyebrow) {
  margin: 0 !important;
  color: #646464 !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
}

.amigo-buy-form {
  margin: 0 !important;
}

.amigo-buy-form__contacts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 0 !important;
}

.amigo-buy-field {
  display: block !important;
  margin: 0 !important;
}

.amigo-buy-field span {
  display: block !important;
  margin: 0 0 7px 0 !important;
  color: #4f4f4f !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.amigo-buy-field input[type="email"],
.amigo-buy-field input[type="text"] {
  display: block !important;
  width: 100% !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 1px solid rgba(144, 144, 144, 0.36) !important;
  border-radius: 14px !important;
  background: rgba(144, 144, 144, 0.075) !important;
  color: #333 !important;
  font-size: 15px !important;
  line-height: 48px !important;
  outline: none !important;
  box-shadow: none !important;
}

.amigo-buy-field input[type="email"]:focus,
.amigo-buy-field input[type="text"]:focus {
  border-color: #6bd4c8 !important;
  box-shadow: 0 0 0 3px rgba(107, 212, 200, 0.18) !important;
}

.amigo-buy-field.has-error input[type="email"],
.amigo-buy-field.has-error input[type="text"] {
  border-color: #c62828 !important;
  box-shadow: 0 0 0 3px rgba(198, 40, 40, 0.12) !important;
}

.amigo-buy-field__error,
.amigo-buy-plans__error {
  display: none !important;
  margin: 7px 0 0 0 !important;
  color: #c62828 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  text-align: left !important;
}

.amigo-buy-field.has-error .amigo-buy-field__error,
.amigo-buy-plans__error.has-error {
  display: block !important;
}

.amigo-buy-form__hint {
  margin: 12px 0 18px 0 !important;
  color: #818181 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.amigo-buy-plans {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px 12px !important;
  margin: 0 0 10px 0 !important;
  padding-top: 14px !important;
}

.amigo-buy-plan {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 118px !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 14px !important;
  border: 1px solid rgba(144, 144, 144, 0.45) !important;
  border-radius: 18px !important;
  background: #fff !important;
  cursor: pointer !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease, background 0.18s ease !important;
}

.amigo-buy-plan:hover,
.amigo-buy-plan.is-selected {
  border-color: #57aed3 !important;
  box-shadow: 0 14px 34px rgba(87, 174, 211, 0.18) !important;
  transform: translateY(-2px) !important;
}

.amigo-buy-plan.is-selected {
  background: linear-gradient(180deg, rgba(107, 212, 200, 0.14), #fff 72%) !important;
}

.amigo-buy-plan input[type="radio"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.amigo-buy-plan--popular {
  border-color: rgba(124, 92, 255, 0.55) !important;
}

.amigo-buy-plan__badge {
  position: absolute !important;
  top: -13px !important;
  left: 14px !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 5px 9px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #ff4da6, #7c5cff) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  box-shadow: 0 8px 18px rgba(124, 92, 255, 0.26) !important;
}

.amigo-buy-plan__name,
.amigo-buy-plan__price,
.amigo-buy-plan__note {
  display: block !important;
  margin: 0 !important;
}

.amigo-buy-plan__name {
  color: #555 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.amigo-buy-plan__price {
  margin-top: 8px !important;
  color: #303030 !important;
  font-size: 27px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

.amigo-buy-plan__note {
  margin-top: auto !important;
  padding-top: 12px !important;
  color: #838383 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

.amigo-buy-plans__error {
  margin: -1px 0 16px 0 !important;
}


.amigo-buy-form__errors {
  display: none !important;
  margin: 12px 0 14px 0 !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(198, 40, 40, 0.28) !important;
  border-radius: 16px !important;
  background: rgba(198, 40, 40, 0.065) !important;
  color: #c62828 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  text-align: left !important;
}

.amigo-buy-form__errors.has-error {
  display: block !important;
}

.amigo-buy-form__errors strong {
  display: block !important;
  margin: 0 0 6px 0 !important;
  color: #a61f1f !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.amigo-buy-form__errors ul {
  margin: 0 !important;
  padding-left: 18px !important;
}

.amigo-buy-form__errors li {
  margin: 3px 0 0 0 !important;
  padding: 0 !important;
}

.amigo-buy-form__submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  border-radius: 999px !important;
  white-space: normal !important;
  text-align: center !important;
}

.amigo-buy-form__submit[disabled] {
  opacity: 0.7 !important;
  cursor: wait !important;
}

.amigo-buy-form__response {
  min-height: 20px !important;
  margin: 12px 0 0 0 !important;
  color: #555 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  text-align: center !important;
}

.amigo-buy-form__response.is-success {
  color: #198754 !important;
}

.amigo-buy-form__response.is-error {
  color: #c62828 !important;
}


.amigo-buy-check {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
  color: #555 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  text-align: left !important;
  cursor: pointer !important;
}

.amigo-buy-check input[type="checkbox"] {
  flex: 0 0 auto !important;
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  min-height: 19px !important;
  margin: 2px 0 0 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  accent-color: #57aed3 !important;
  cursor: pointer !important;
}

.amigo-buy-check span {
  display: block !important;
  min-width: 0 !important;
}

.amigo-buy-check strong {
  display: block !important;
  margin: 0 0 2px 0 !important;
  color: #333 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

.amigo-buy-check small {
  display: block !important;
  margin: 0 !important;
  color: #818181 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

.amigo-buy-check a {
  color: #57aed3 !important;
  border-bottom-color: rgba(87, 174, 211, 0.35) !important;
}

.amigo-buy-extra {
  margin: 14px 0 14px 0 !important;
  padding: 14px !important;
  border: 1px solid rgba(144, 144, 144, 0.34) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(245, 247, 248, 0.86), #ffffff 76%) !important;
  color: #555 !important;
  text-align: left !important;
}


.amigo-buy-extra__toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #555 !important;
  font: inherit !important;
  line-height: 1.4 !important;
  letter-spacing: normal !important;
  text-align: left !important;
  text-transform: none !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.amigo-buy-extra__toggle:hover,
.amigo-buy-extra__toggle:focus {
  background: transparent !important;
  box-shadow: none !important;
  color: #555 !important;
}

.amigo-buy-extra__toggle span {
  display: block !important;
  min-width: 0 !important;
}

.amigo-buy-extra__toggle strong {
  display: block !important;
  margin: 0 0 2px 0 !important;
  color: #333 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

.amigo-buy-extra__toggle small {
  display: block !important;
  margin: 0 !important;
  color: #818181 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

.amigo-buy-extra__toggle i {
  flex: 0 0 auto !important;
  margin-left: 12px !important;
  color: #57aed3 !important;
  font-size: 20px !important;
  transition: transform 0.18s ease !important;
}

.amigo-buy-extra.is-open .amigo-buy-extra__toggle i {
  transform: rotate(180deg) !important;
}

.amigo-buy-extra.is-open {
  border-color: rgba(87, 174, 211, 0.52) !important;
  box-shadow: 0 12px 30px rgba(87, 174, 211, 0.11) !important;
}

.amigo-buy-extra__body {
  display: block !important;
  margin: 13px 0 0 0 !important;
  padding-top: 13px !important;
  border-top: 1px solid rgba(144, 144, 144, 0.24) !important;
}

.amigo-buy-extra__body[hidden],
.amigo-buy-check[hidden] {
  display: none !important;
}

.amigo-buy-extra__topline {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 0 10px 0 !important;
  color: #555 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

.amigo-buy-extra__topline a {
  flex: 0 0 auto !important;
  color: #57aed3 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  border-bottom: 1px dashed rgba(87, 174, 211, 0.55) !important;
}

.amigo-buy-extra__options {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
}

.amigo-buy-extra-option {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 78px !important;
  margin: 0 !important;
  padding: 12px 12px 12px 38px !important;
  border: 1px solid rgba(144, 144, 144, 0.38) !important;
  border-radius: 15px !important;
  background: #fff !important;
  color: #555 !important;
  cursor: pointer !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease, background 0.18s ease !important;
}

.amigo-buy-extra-option:hover,
.amigo-buy-extra-option.is-selected {
  border-color: #57aed3 !important;
  box-shadow: 0 12px 26px rgba(87, 174, 211, 0.14) !important;
  transform: translateY(-1px) !important;
}

.amigo-buy-extra-option.is-selected {
  background: linear-gradient(180deg, rgba(107, 212, 200, 0.13), #fff 76%) !important;
}


.amigo-buy-extra-option.is-disabled {
  opacity: 0.58 !important;
  cursor: not-allowed !important;
  background: rgba(144, 144, 144, 0.08) !important;
  border-color: rgba(144, 144, 144, 0.24) !important;
  box-shadow: none !important;
  transform: none !important;
}

.amigo-buy-extra-option.is-disabled:hover {
  border-color: rgba(144, 144, 144, 0.24) !important;
  box-shadow: none !important;
  transform: none !important;
}

.amigo-buy-extra-option.is-disabled input[type="checkbox"] {
  cursor: not-allowed !important;
}

.amigo-buy-extra-option__note--disabled {
  color: #a35d00 !important;
}

.amigo-buy-extra-option input[type="checkbox"] {
  position: absolute !important;
  left: 12px !important;
  top: 15px !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  accent-color: #57aed3 !important;
  cursor: pointer !important;
}

.amigo-buy-extra-option__main {
  display: block !important;
  min-width: 0 !important;
}

.amigo-buy-extra-option__name {
  display: block !important;
  margin: 0 0 5px 0 !important;
  color: #333 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.amigo-buy-extra-option__price {
  display: block !important;
  color: #57aed3 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.amigo-buy-extra-option__note {
  display: block !important;
  margin: 6px 0 0 0 !important;
  color: #838383 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.amigo-buy-extra__hint {
  margin: 10px 0 0 0 !important;
  color: #818181 !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}

.amigo-buy-extra__error,
.amigo-buy-check__error {
  display: none !important;
  margin: 8px 0 0 0 !important;
  color: #c62828 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  text-align: left !important;
}

.amigo-buy-extra__error.has-error,
.amigo-buy-check__error.has-error {
  display: block !important;
}

.amigo-buy-terms {
  display: grid !important;
  gap: 10px !important;
  margin: 14px 0 14px 0 !important;
  padding: 13px !important;
  border: 1px solid rgba(144, 144, 144, 0.27) !important;
  border-radius: 16px !important;
  background: rgba(144, 144, 144, 0.06) !important;
}

.amigo-buy-total {
  margin: 12px 0 14px 0 !important;
  padding: 14px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, rgba(107, 212, 200, 0.16), rgba(87, 174, 211, 0.12)) !important;
  color: #333 !important;
  text-align: left !important;
}

.amigo-buy-total__label {
  margin: 0 0 8px 0 !important;
  color: #57aed3 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.amigo-buy-total__row,
.amigo-buy-total__final {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 !important;
  color: #555 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

.amigo-buy-total__row + .amigo-buy-total__row {
  margin-top: 5px !important;
}

.amigo-buy-total__row strong,
.amigo-buy-total__final strong {
  color: #333 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.amigo-buy-total__final {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(87, 174, 211, 0.22) !important;
  color: #333 !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}

.amigo-buy-total__note {
  margin: 10px 0 0 0 !important;
  color: #646464 !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}

.amigo-buy-extra--page {
  margin: 0 0 22px 0 !important;
}

.amigo-buy-extra__summary {
  margin: 10px 0 0 29px !important;
  color: #555 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

.amigo-buy-extra__summary span,
.amigo-buy-extra__summary strong {
  display: block !important;
}

.amigo-buy-extra__summary strong {
  margin-top: 3px !important;
  color: #333 !important;
  font-weight: 900 !important;
}


/* AmigoVPN page pricing cards */
.amigo-buy-page-pricing,
.amigo-buy-page-pricing *,
.amigo-buy-page-pricing *::before,
.amigo-buy-page-pricing *::after {
  box-sizing: border-box !important;
}

.amigo-buy-page-plans {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px 16px !important;
  margin: 0 0 26px 0 !important;
  padding-top: 16px !important;
  text-align: left !important;
}

.amigo-buy-page-plan {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 278px !important;
  height: auto !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 18px !important;
  border: 1px solid rgba(144, 144, 144, 0.42) !important;
  border-radius: 22px !important;
  background: #fff !important;
  color: #555 !important;
  box-shadow: 0 12px 34px rgba(0, 0, 0, 0.06) !important;
  text-align: left !important;
  text-decoration: none !important;
  text-indent: 0 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  line-height: normal !important;
  white-space: normal !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease, background 0.18s ease !important;
}

button.amigo-buy-page-plan {
  height: auto !important;
  min-height: 278px !important;
  font: inherit !important;
  line-height: normal !important;
  letter-spacing: 0 !important;
  text-indent: 0 !important;
  text-transform: none !important;
  white-space: normal !important;
  overflow: visible !important;
}

.amigo-buy-page-plan:hover,
.amigo-buy-page-plan:focus,
.amigo-buy-page-plan.is-selected {
  border-color: #57aed3 !important;
  box-shadow: 0 18px 44px rgba(87, 174, 211, 0.18) !important;
  transform: translateY(-3px) !important;
  outline: none !important;
}

.amigo-buy-page-plan.is-selected,
.amigo-buy-page-plan--popular {
  background: linear-gradient(180deg, rgba(107, 212, 200, 0.14), #fff 72%) !important;
}

.amigo-buy-page-plan--popular {
  border-color: rgba(124, 92, 255, 0.55) !important;
}

.amigo-buy-page-plan--trial {
  background: linear-gradient(180deg, rgba(245, 247, 248, 0.98), #fff 72%) !important;
}

.amigo-buy-page-plan__meta {
  display: grid !important;
  gap: 6px !important;
  margin: 16px 0 18px 0 !important;
  padding: 13px !important;
  border-radius: 16px !important;
  background: rgba(144, 144, 144, 0.075) !important;
  color: #686868 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

.amigo-buy-page-plan__meta span,
.amigo-buy-page-plan__meta b {
  display: block !important;
}

.amigo-buy-page-plan__meta b {
  display: inline !important;
  color: #333 !important;
  font-weight: 800 !important;
}

.amigo-buy-page-plan__action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 42px !important;
  margin-top: auto !important;
  padding: 9px 12px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #6bd4c8, #57aed3) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  box-shadow: 0 10px 22px rgba(87, 174, 211, 0.18) !important;
}

.amigo-buy-page-plan--trial .amigo-buy-page-plan__action {
  background: linear-gradient(135deg, #ff4da6, #7c5cff) !important;
  box-shadow: 0 10px 22px rgba(124, 92, 255, 0.18) !important;
}

.amigo-buy-page-actions {
  margin-top: 4px !important;
}

.amigo-buy-page-actions p {
  margin-bottom: 18px !important;
}

@media screen and (max-width: 980px) {
  .amigo-buy-page-plans {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 736px) {
  .amigo-buy-page-plans {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding-top: 8px !important;
  }

  .amigo-buy-page-plan,
  button.amigo-buy-page-plan {
    min-height: 264px !important;
    height: auto !important;
    padding: 16px !important;
    border-radius: 19px !important;
  }

  .amigo-buy-page-plan__meta {
    margin: 12px 0 14px 0 !important;
  }
}

@media screen and (max-width: 736px) {
  .amigo-buy-modal {
    align-items: flex-start !important;
    justify-content: center !important;
    padding: max(10px, env(safe-area-inset-top)) 10px max(10px, env(safe-area-inset-bottom)) 10px !important;
  }

  .amigo-buy-modal__dialog {
    width: 100% !important;
    max-height: calc(100dvh - 20px) !important;
    padding: 12px !important;
    border-radius: 20px !important;
  }

  .amigo-buy-modal__close {
    top: 10px !important;
    right: 10px !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    font-size: 26px !important;
  }

  .amigo-buy-modal__head {
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 44px 10px 10px !important;
    margin-bottom: 12px !important;
    border-radius: 16px !important;
  }

  .amigo-buy-modal__logo {
    width: 42px !important;
    height: 42px !important;
    border-radius: 13px !important;
  }

  .amigo-buy-modal__logo img {
    width: 30px !important;
    height: 30px !important;
  }

  .amigo-buy-modal__head h2 {
    font-size: 19px !important;
  }

  .amigo-buy-modal__head p:not(.amigo-buy-modal__eyebrow) {
    font-size: 12px !important;
    line-height: 1.25 !important;
  }

  .amigo-buy-form__contacts,
  .amigo-buy-plans,
  .amigo-buy-extra__options {
    grid-template-columns: 1fr !important;
  }

  .amigo-buy-extra__topline {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 6px !important;
  }

  .amigo-buy-extra {
    padding: 12px !important;
    border-radius: 16px !important;
  }

  .amigo-buy-total__row,
  .amigo-buy-total__final {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 3px !important;
  }

  .amigo-buy-plans {
    gap: 18px !important;
    padding-top: 12px !important;
  }

  .amigo-buy-field input[type="email"],
  .amigo-buy-field input[type="text"] {
    height: 46px !important;
    line-height: 46px !important;
  }

  .amigo-buy-plan {
    min-height: 82px !important;
    height: auto !important;
    padding: 12px 14px !important;
  }

  .amigo-buy-plan__note {
    margin-top: 4px !important;
    padding-top: 0 !important;
  }
}

@media screen and (max-width: 420px) {
  .amigo-buy-modal__head {
    display: flex !important;
  }

  .amigo-buy-modal__eyebrow {
    display: none !important;
  }
}

/* Checkout page: use old modal visual elements without turning the page block into an inner scrollable modal frame */
.amigo-buy-checkout,
.amigo-buy-checkout *,
.amigo-buy-checkout *::before,
.amigo-buy-checkout *::after {
  box-sizing: border-box !important;
}

.amigo-buy-checkout {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #555 !important;
  box-shadow: none !important;
  overflow: visible !important;
  max-height: none !important;
}

.amigo-buy-checkout .amigo-buy-modal__head {
  margin: 0 0 18px 0 !important;
  padding-right: 12px !important;
}

.amigo-buy-checkout .amigo-buy-form {
  margin: 0 !important;
}

.amigo-buy-checkout .amigo-buy-form__contacts {
  margin-bottom: 10px !important;
}

.amigo-buy-checkout .amigo-buy-page-plans {
  margin-top: 26px !important;
}

.amigo-buy-checkout .amigo-buy-extra {
  margin-top: 0 !important;
}

.amigo-buy-checkout .amigo-buy-terms {
  margin-top: 18px !important;
}

@media screen and (max-width: 736px) {
  .amigo-buy-checkout .amigo-buy-modal__head {
    padding-right: 10px !important;
  }
}


/* Checkout page fixes: terms checkboxes must stay visible with the site CSS reset */
.amigo-buy-checkout .amigo-buy-terms .amigo-buy-check input[type="checkbox"] {
  position: static !important;
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  flex: 0 0 19px !important;
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  min-height: 19px !important;
  margin: 2px 0 0 0 !important;
  padding: 0 !important;
  z-index: auto !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  accent-color: #57aed3 !important;
}

.amigo-buy-checkout .amigo-buy-terms .amigo-buy-check {
  align-items: flex-start !important;
}
