/**
 * CDSWerx Pricing Table Widget
 * Qi parity stylesheet mapped to CDSWerx class names.
 * Layouts: standard, simple, minimal, cascading, vertical-image, with-icon, side-price.
 */

.cdswerx-pricing-table {
	position: relative;
	display: inline-block;
	width: 100%;
	vertical-align: top;
	overflow: hidden;
}

.cdswerx-pricing-table--featured {
	transform: translateY(-18px);
}

.cdswerx-pricing-table__inner {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 45px;
}

.cdswerx-pricing-table__main,
.cdswerx-pricing-table__title-wrapper,
.cdswerx-pricing-table__top {
	display: flex;
	flex-direction: column;
}

.cdswerx-pricing-table__section {
	width: 100%;
}

.cdswerx-pricing-table__title {
	margin: 0;
}

.cdswerx-pricing-table__subtitle {
	margin: 0;
}

.cdswerx-pricing-table__subtitle--above {
	margin: 0 0 0.5em;
}

.cdswerx-pricing-table__subtitle--below {
	margin: 0.5em 0 0;
}

.cdswerx-pricing-table__price {
	display: flex;
	align-items: baseline;
}

.cdswerx-pricing-table__price-wrapper {
	display: inline-flex;
	flex-wrap: wrap;
	margin: 0;
	line-height: 1;
	justify-content: center;
	align-items: baseline;
}

.cdswerx-pricing-table__price-currency {
	align-self: flex-start;
}

.cdswerx-pricing-table__price-currency--display-inline-block,
.cdswerx-pricing-table__price-period--display-inline-block {
	display: inline-block;
	width: auto;
	flex: 0 0 auto;
}

.cdswerx-pricing-table__price-currency--display-block,
.cdswerx-pricing-table__price-period--display-block {
	display: block;
	width: 100%;
	flex: 0 0 100%;
}

.cdswerx-pricing-table__price-currency--valign-baseline,
.cdswerx-pricing-table__price-period--valign-baseline {
	align-self: baseline;
	transform: none;
}

.cdswerx-pricing-table__price-currency--valign-top,
.cdswerx-pricing-table__price-period--valign-top,
.cdswerx-pricing-table__price-currency--valign-text-top,
.cdswerx-pricing-table__price-period--valign-text-top {
	align-self: flex-start;
	transform: none;
}

.cdswerx-pricing-table__price-currency--valign-middle,
.cdswerx-pricing-table__price-period--valign-middle {
	align-self: center;
	transform: none;
}

.cdswerx-pricing-table__price-currency--valign-bottom,
.cdswerx-pricing-table__price-period--valign-bottom,
.cdswerx-pricing-table__price-currency--valign-text-bottom,
.cdswerx-pricing-table__price-period--valign-text-bottom {
	align-self: flex-end;
	transform: none;
}

.cdswerx-pricing-table__price-currency--valign-sub,
.cdswerx-pricing-table__price-period--valign-sub {
	align-self: baseline;
	transform: translateY(0.25em);
}

.cdswerx-pricing-table__price-currency--valign-super,
.cdswerx-pricing-table__price-period--valign-super {
	align-self: baseline;
	transform: translateY(-0.25em);
}

.cdswerx-pricing-table--period-side .cdswerx-pricing-table__price-period {
	margin-left: 5px;
}

.cdswerx-pricing-table--period-bottom .cdswerx-pricing-table__price {
	flex-direction: column;
}

.cdswerx-pricing-table--period-bottom .cdswerx-pricing-table__price-period {
	margin: 0;
}

.cdswerx-pricing-table__price-desc {
	margin: 0;
}

.cdswerx-pricing-table__content {
	padding: 25px 0 0;
	margin: 0;
}

.cdswerx-pricing-table__item {
	margin-bottom: 8px;
}

.cdswerx-pricing-table__item:last-child {
	margin-bottom: 0;
}

.cdswerx-pricing-table__item-inner {
	display: inline-flex;
	align-items: center;
}

.cdswerx-pricing-table__content--ordered-custom {
	list-style: none;
	padding-left: 0;
}

.cdswerx-pricing-table__item-prefix {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	white-space: nowrap;
	margin-right: 8px;
	font-weight: 600;
}

.cdswerx-pricing-table__item-prefix--text {
	font-weight: 400;
}

.cdswerx-pricing-table__item-inner[data-tippy-content],
.cdswerx-pricing-table__item-inner[data-cds-tooltip-content] {
	cursor: help;
}

.cdswerx-pricing-table--features-divider .cdswerx-pricing-table__item:not(:first-child)::before {
	content: "";
	display: block;
	width: 100%;
	border-top: 1px solid currentColor;
	margin: 0 auto 8px;
}

.cdswerx-pricing-table__item--excluded {
	text-decoration: line-through;
	color: rgba(17, 17, 17, 0.6);
}

.cdswerx-pricing-table__button-wrapper .cdswerx-button-widget {
	margin: 25px 0 0;
}

.cdswerx-pricing-table__action-before,
.cdswerx-pricing-table__action-after {
	line-height: 1.4;
}

.cdswerx-pricing-table__action-before {
	margin: 0;
}

.cdswerx-pricing-table__action-after {
	margin: 0;
}

.cdswerx-pricing-table__label {
	position: absolute;
	right: 15px;
	color: #fff;
	background-color: #111;
}

.cdswerx-pricing-table--label-badge .cdswerx-pricing-table__label {
	top: 15px;
	border-radius: 50px;
	padding: 10px;
}

.cdswerx-pricing-table--label-ribbon .cdswerx-pricing-table__label {
	top: -1px;
	border-radius: 50px 0 0 50px;
	transform: rotate(-90deg) translate(0, -100%);
	transform-origin: right top;
	padding: 5px 15px;
}

.cdswerx-pricing-table__label--image {
	background: transparent;
	padding: 0;
}

.cdswerx-pricing-table__label-image {
	display: block;
	max-width: 120px;
	height: auto;
}

.cdswerx-pricing-table--list-icon .cdswerx-pricing-table__content {
	list-style-type: none;
}

.cdswerx-pricing-table--list-icon .cdswerx-pricing-table__content svg {
	width: 1em;
	fill: currentColor;
	stroke: currentColor;
}

.cdswerx-pricing-table--list-icon .cdswerx-pricing-table__item-icon {
	display: inline-block;
}

.cdswerx-pricing-table--list-icon.cdswerx-pricing-table--list-outside .cdswerx-pricing-table__content {
	margin: 0 calc(-1em - 5px);
}

.cdswerx-pricing-table--list-icon.cdswerx-pricing-table--list-outside .cdswerx-pricing-table__item {
	position: relative;
	display: flex;
}

.cdswerx-pricing-table--list-icon.cdswerx-pricing-table--list-outside .cdswerx-pricing-table__item-icon {
	position: absolute;
	left: 0;
}

.cdswerx-pricing-table--list-icon.cdswerx-pricing-table--list-outside .cdswerx-pricing-table__item-text {
	flex: 1;
	padding: 0 5px;
	margin: 0 1em;
}

.cdswerx-pricing-table--list-outside .cdswerx-pricing-table__content {
	list-style-position: outside;
}

.cdswerx-pricing-table--list-inside .cdswerx-pricing-table__content {
	list-style-position: inside;
}

.cdswerx-pricing-table--list-none .cdswerx-pricing-table__content {
	list-style-type: none;
}

.cdswerx-pricing-table__separator {
	position: relative;
	height: auto;
	font-size: 0;
	line-height: 1;
}

.cdswerx-pricing-table__separator--position-center {
	text-align: center;
}

.cdswerx-pricing-table__separator--position-left {
	text-align: left;
}

.cdswerx-pricing-table__separator--position-right {
	text-align: right;
}

.cdswerx-pricing-table__separator-line {
	position: relative;
	display: inline-block;
	width: 30px;
	vertical-align: top;
	font-size: 1px;
	color: #111;
	border-bottom: 1em solid currentColor;
	margin: 10px 0;
}

.cdswerx-pricing-table__separator--layout-with-icon {
	display: flex;
}

.cdswerx-pricing-table__separator--layout-with-icon .cdswerx-pricing-table__separator-line {
	display: flex;
	align-items: center;
	border-width: 0;
}

.cdswerx-pricing-table__separator-inner-line {
	width: 50%;
	border-color: currentColor;
	border-style: inherit;
	border-width: 0 0 1em;
}

.cdswerx-pricing-table__separator-icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
	line-height: 1;
	margin: 0 1em;
}

.cdswerx-pricing-table__separator-icon svg {
	width: 1em;
	height: 1em;
}

.cdswerx-pricing-table__separator--layout-border-image .cdswerx-pricing-table__separator-line {
	font-size: 12px;
	height: 1em;
	border-bottom: none;
	margin: 10px 0;
	background-position: top center;
	background-size: contain;
	background-repeat: round;
}

.cdswerx-pricing-table__separator--layout-with-icon.cdswerx-pricing-table__separator--position-center {
	justify-content: center;
}

.cdswerx-pricing-table__separator--layout-with-icon.cdswerx-pricing-table__separator--position-left {
	justify-content: flex-start;
}

.cdswerx-pricing-table__separator--layout-with-icon.cdswerx-pricing-table__separator--position-right {
	justify-content: flex-end;
}

.cdswerx-pricing-table--layout-cascading .cdswerx-pricing-table__inner {
	padding: 50px;
}

.cdswerx-pricing-table--layout-cascading .cdswerx-pricing-table__title {
	background-color: #f6f6f6;
	padding: 30px 50px;
}

.cdswerx-pricing-table--layout-minimal {
	border-width: 0 0 0 1px;
}

.cdswerx-pricing-table--layout-minimal .cdswerx-pricing-table__inner {
	padding: 0 0 0 15px;
}

.cdswerx-pricing-table--layout-minimal .cdswerx-pricing-table__price-wrapper {
	margin: 0 0 0.5em;
}

.cdswerx-pricing-table--layout-simple .cdswerx-pricing-table__inner {
	padding: 0 50px 40px;
}

.cdswerx-pricing-table--layout-simple .cdswerx-pricing-table__title-wrapper {
	background-color: #f6f6f6;
	padding: 40px 20px;
}

.cdswerx-pricing-table--layout-standard .cdswerx-pricing-table__title {
	margin: 0 0 1em;
}

.cdswerx-pricing-table--layout-vertical-image {
	display: flex;
}

.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__inner {
	flex: 1;
}

.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__vertical-image-holder {
	width: 90px;
	max-width: 60%;
}

.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__vertical-image-holder .cdswerx-pricing-table__image--proportion-full {
	height: 100%;
}

.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__vertical-image-holder .cdswerx-pricing-table__image--proportion-landscape,
.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__vertical-image-holder .cdswerx-pricing-table__image--proportion-portrait,
.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__vertical-image-holder .cdswerx-pricing-table__image--proportion-square {
	overflow: hidden;
}

.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__vertical-image-holder .cdswerx-pricing-table__image--proportion-landscape {
	aspect-ratio: 4 / 3;
}

.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__vertical-image-holder .cdswerx-pricing-table__image--proportion-portrait {
	aspect-ratio: 3 / 4;
}

.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__vertical-image-holder .cdswerx-pricing-table__image--proportion-square {
	aspect-ratio: 1 / 1;
}

.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__vertical-image-holder .cdswerx-pricing-table__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cdswerx-pricing-table--layout-vertical-image .cdswerx-pricing-table__title {
	margin-bottom: 1em;
}

.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__inner {
	padding: 0;
}

.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__top {
	padding: 50px;
}

.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__content {
	padding: 0;
}

.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__content .cdswerx-pricing-table__item {
	padding: 27px 50px;
	margin: 0;
	border-top: 1px solid #ebebeb;
}

.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__title-icon,
.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__top-icon {
	line-height: 1em;
}

.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__title-icon svg,
.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__top-icon svg {
	width: 1em;
	vertical-align: top;
	fill: currentColor;
	stroke: currentColor;
}

.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__title {
	margin: 0.7em 0 1em;
}

.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__button-wrapper .cdswerx-button-widget {
	text-align: center;
	margin-top: 0;
}

.cdswerx-pricing-table--layout-with-icon .cdswerx-pricing-table__button-wrapper .cdswerx-button-widget.cdswerx-button-size--full {
	width: 100%;
}

.cdswerx-pricing-table__fold-mask {
	overflow: hidden;
}

.cdswerx-pricing-table__fold-mask:not(.cdswerx-pricing-table__fold-mask--unfold-state) {
	max-height: 0;
}

.cdswerx-pricing-table__fold-trigger {
	display: flex;
	justify-content: center;
	margin-top: 16px;
}

.cdswerx-pricing-table__fold-button {
	display: flex;
	align-items: center;
	cursor: pointer;
	line-height: 1;
}

.cdswerx-pricing-table__fold-button--icon-right {
	flex-direction: row-reverse;
}

.cdswerx-pricing-table__fold-button-icon,
.cdswerx-pricing-table__fold-button-text {
	transition: all 0.3s;
}

.cdswerx-pricing-table__fold-button-icon,
.cdswerx-pricing-table__fold-button-icon svg {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.cdswerx-pricing-table__item.fold_visible_last,
.cdswerx-pricing-table__item.cdswerx-pricing-table__item--fold-visible-last {
	margin-bottom: 0 !important;
}

.cdswerx-pricing-table--layout-side-price .cdswerx-pricing-table__inner {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
}

.cdswerx-pricing-table--layout-side-price .cdswerx-pricing-table__side {
	margin-right: 20px;
}