.wp-block-ainoblocks-button {
	border: 0px solid;

	&.is-style-outline,
	&.is-style-outline.has-border-color {
		border-width: 1px;
		border-style: solid;

		.wp-block-ainoblocks-button__link {

			&:hover {
				text-decoration: none;
			}
		}
	}

	.wp-block-ainoblocks-button__link {
		border: none;
		border-radius: 0;
		color: inherit;
		background-color: inherit;
		cursor: pointer;
		display: block;
		margin: 0;
		line-height: 1;
		text-align: center;
		text-decoration: none;
		overflow-wrap: break-word;

		&:hover {
			text-decoration: none;
		}

		&.has-link-bg:hover {
			background: transparent !important;
		}

		&.aligncenter {
			text-align: center;
		}

		&.alignright {
			/*rtl:ignore*/
			text-align: right;
		}

		&.size {

			&__xxxs {
				padding: 0.375rem 0.5rem;
				font-size: 0.75rem;
			}

			&__xxs {
				padding: 0.5rem 0.625rem;
				font-size: 0.875rem;
			}

			&__xs {
				padding: 0.625rem 0.813rem;
				font-size: 0.875rem;
			}

			&__s {
				padding: 0.75rem 1rem;
				font-size: 1rem;
			}

			&__m {
				padding: 1rem 1.313rem;
				font-size: 1rem;
			}

			&__l {
				padding: 1.25rem 1.625rem;
				font-size: 1rem;
			}

			&__xl {
				padding: 1.5rem 2rem;
				font-size: 1.125rem;
			}

			&__xxl,
			&__xxxl {
				padding: 2rem 2.625rem;
				font-size: clamp(1.125rem, 1.08333rem + 0.208333vw, 1.25rem);
			}

			&__xxxl,
			&__xxxxl,
			&__5xl,
			&__6xl,
			&__7xl,
			&__8xl,
			&__9xl {
				padding: 2.5rem 3.25rem;
				font-size: clamp(1.25rem, 1.16667rem + 0.416667vw, 1.5rem);
			}

			@media (min-width: 64em) {

				&__xxxl {
				padding: 2.5rem 3.25rem;
				font-size: clamp(1.25rem, 1.16667rem + 0.416667vw, 1.5rem);
				}

				&__xxxxl {
					padding: 3rem 3.875rem;
					font-size: clamp(1.5rem, 1.375rem + 0.625vw, 1.875rem);	
				}

				&__5xl {
					padding: 4rem 5.188rem;
					font-size: clamp(1.875rem, 1.75rem + 0.625vw, 2.25rem);
				}
				
				&__6xl {
					padding: 5rem 6.5rem;
					font-size: clamp(2.25rem, 2rem + 1.25vw, 3rem);
				}

				&__7xl {
					padding: 6rem 5.188rem;
					font-size: clamp(2.25rem, 1.75rem + 2.5vw, 3.75rem);
				}

				&__8xl {
					padding: 7.5rem 6.5rem;
					font-size: clamp(3rem, 2.5rem + 2.5vw, 4.5rem);
				}

				&__9xl {
					padding: 9rem 11.688rem;
					font-size: clamp(3.75rem, 3rem + 3.75vw, 6rem);
				}
			}
		}

		&.is-uppercase {
			text-transform: uppercase;
		}
	}

	&.is-style-outline {

		.wp-block-ainoblocks-button__link {

			&.size {
				&__xxxs {
					padding: calc(0.563rem - 1px) calc(1.125rem - 1px);
				}

				&__xxs {
					padding: calc(0.625rem - 1px) calc(1.313rem - 1px);
				}
	
				&__xs {
					padding: calc(0.75rem - 1px) calc(1.5rem - 1px);
				}
	
				&__s {
					padding: calc(0.875rem - 1px) calc(1.688rem - 1px);
				}
	
				&__m {
					padding: calc(0.938rem - 1px) calc(1.875rem - 1px);
				}

				&__l {
					padding: calc(1.125rem - 1px) calc(2.25rem - 1px);
				}

				&__xl {
					padding: calc(1.375rem - 1px) calc(2.813rem - 1px);
				}

				&__xxl,
				&__xxxl,
				&__xxxxl {
					padding: calc(1.688rem - 1px) calc(3.375rem - 1px);
				}

				@media (min-width: 64em) {
					&__xxxl {
						padding: calc(2.25rem - 1px) calc(4.5rem - 1px);
					}

					&__xxxxl {
						padding: calc(2.813rem - 1px) calc(5.625rem - 1px);
					}
				}
			}
		}
	}
}