/*
 * Ring builder review page ("Complete Ring") design.
 * Scoped to section.kirb_main_section.kirb-review-design (the review shortcode wrapper),
 * so the theme header, footer and menus are untouched.
 */

.kirb_main_section.kirb-review-design {
	--kirb-ld-text: #575757;
	--kirb-ld-muted: #8e8e8e;
	--kirb-ld-border: #cccccc;
	--kirb-ld-line: #dddddd;
	--kirb-ld-font: 'Poppins', sans-serif;

	/* Store colours (Appearance > General Appearance, set on :root by kirb_load()): Primary for the
	   dark parts (buttons, active states), Accent for the light panels, each with its readable
	   text colour. The fallbacks are the design's own greys. */
	--kirb-ld-dark: var(--kirb-primary-color, #575757);
	--kirb-ld-dark-hover: color-mix(in srgb, var(--kirb-ld-dark) 85%, #000000);
	--kirb-ld-on-dark: var(--kirb-text-primary-color, #ffffff);
	--kirb-ld-panel: var(--kirb-accent-color, #eeeeee);
	--kirb-ld-on-panel: var(--kirb-text-accent-color, #575757);

	font-family: var(--kirb-ld-font) !important;
	font-size: 13px;
	color: var(--kirb-ld-text);

	/* Break out of the theme's narrower content column (no transform: it would trap the fixed modals) */
	width: min(1192px, calc(100vw - 32px)) !important;
	max-width: none !important;
	margin-left: calc(50% - min(596px, 50vw - 16px)) !important;
	margin-right: 0 !important;
}

.kirb_main_section.kirb-review-design *:not([class^="ri-"]):not([class*=" ri-"]) {
	font-family: var(--kirb-ld-font) !important;
}

.kirb_main_section.kirb-review-design .byor-section,
.kirb_main_section.kirb-review-design .byor-section > .container {
	width: 100%;
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
	margin-top: 0 !important;
}

/* ---------------- Steps (all complete on this page: dark rings) ---------------- */

.kirb_main_section.kirb-review-design .kirb-main-byor-section {
	margin: 8px auto 40px;
	padding-top: 0;
}

.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section {
	width: 682px;
	max-width: 100%;
	justify-content: space-between;
	position: relative;
}

.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section::after {
	border-top: 1px solid var(--kirb-ld-border);
	top: 33px;
	left: calc(50% - 233px);
	right: auto;
	width: 466px;
	max-width: calc(100% - 200px);
}

.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section .kirb-byor-pedding {
	padding: 8px;
	background: #ffffff;
}

.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section .kirb-byor-icon-circle {
	background-color: var(--kirb-ld-panel);
	border: 1px solid var(--kirb-ld-panel);
	margin-bottom: 0;
}

.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-byor-icon-circle img,
.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb_highlight_img_btn {
	filter: invert(70%) sepia(0%) saturate(0%) brightness(95%) !important;
}

.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section .kirb-item-byor.active .kirb-byor-icon-circle {
	background-color: #ffffff;
	border: 1px solid var(--kirb-ld-dark);
}

.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-item-byor.active .kirb-byor-icon-circle img {
	filter: brightness(0) opacity(0.75) !important;
}

.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section .kirb-item-byor,
.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-byor-number,
.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-byor-number span {
	font-size: 13px;
	color: var(--kirb-ld-text);
}

.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section .kirb-item-byor .kirb-number-head,
.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section .kirb-item-byor.active .kirb-number-head {
	width: 22px;
	height: 22px;
	font-size: 13px;
	background-color: var(--kirb-ld-panel);
	border: 1px solid #bdbdbd;
	color: var(--kirb-ld-text) !important;
	margin-right: 6px;
}

/* ---------------- Back link ---------------- */

.kirb_main_section.kirb-review-design .back-collection {
	padding: 0;
	margin: 0 0 24px;
}

.kirb_main_section.kirb-review-design .back-collection a {
	font-size: 13px;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--kirb-ld-text);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ---------------- Layout: image grid + summary ---------------- */

.kirb_main_section.kirb-review-design .kirb-row-detail {
	display: flex;
	align-items: flex-start;
	gap: 40px;
	margin: 0;
}

.kirb_main_section.kirb-review-design .kirb-row-detail > .img-section {
	flex: 0 0 592px;
	width: 592px;
	max-width: 592px;
	padding: 0;
}

.kirb_main_section.kirb-review-design .kirb-row-detail > .product--content {
	flex: 1 1 auto;
	width: auto;
	max-width: 560px;
	padding: 0;
}

/* Desktop image grid: two columns of square tiles */
.kirb_main_section.kirb-review-design .main-image.kirb-review-image-section {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0;
	padding: 0;
}

.kirb_main_section.kirb-review-design .main-image.kirb-review-image-section > div:empty {
	display: none;
}

.kirb_main_section.kirb-review-design .main-image.kirb-review-image-section > div {
	min-width: 0;
}

.kirb_main_section.kirb-review-design .main-image.kirb-review-image-section .kirb-img-item {
	position: relative;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--kirb-ld-line);
	border-radius: 0;
	background: #ffffff;
}

.kirb_main_section.kirb-review-design .main-image.kirb-review-image-section .kirb-img-item img,
.kirb_main_section.kirb-review-design .main-image.kirb-review-image-section .kirb-img-item iframe {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	border: 0;
}

.kirb_main_section.kirb-review-design .kirb-review-360-btn,
.kirb_main_section.kirb-review-design .item-360 {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 2;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #ffffff;
	border-radius: 50%;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.18);
	cursor: pointer;
}

.kirb_main_section.kirb-review-design .kirb-review-360-btn img,
.kirb_main_section.kirb-review-design .item-360 img {
	width: 26px !important;
	height: auto !important;
	object-fit: contain !important;
}

/* The 360 button wraps a second .item-360: only the outer one is the white circle */
.kirb_main_section.kirb-review-design .kirb-review-360-btn .item-360 {
	position: static;
	width: auto;
	height: auto;
	background: transparent;
	box-shadow: none;
}

/* ---------------- Summary ---------------- */

.kirb_main_section.kirb-review-design .kirb-review-heading-h1 {
	align-items: baseline;
	margin: 0 0 6px;
}

.kirb_main_section.kirb-review-design .kirb-review-heading-h1 .heading_h1,
.kirb_main_section.kirb-review-design .kirb-review-heading-h1 .price {
	margin: 0;
	font-size: 17px;
	font-weight: 400;
	line-height: 26px;
	color: var(--kirb-ld-text) !important;
	text-transform: none;
}

.kirb_main_section.kirb-review-design .kirb-byor-reset-text {
	display: inline-block;
	margin: 0 0 18px;
	font-size: 13px;
	font-weight: 500;
	color: var(--kirb-ld-text);
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}

.kirb_main_section.kirb-review-design .kirb-custom-pro-box {
	margin: 0 0 20px !important;
	padding: 16px 16px 14px !important;
	border: 1px solid var(--kirb-ld-dark);
	border-radius: 0;
	background: #ffffff;
}

.kirb_main_section.kirb-review-design .kirb-custom-pro-box .key-card,
.kirb_main_section.kirb-review-design .kirb-custom-pro-box .data {
	padding: 0;
	margin: 0;
	border: 0;
}

.kirb_main_section.kirb-review-design .kirb-custom-pro-box .heading3 {
	margin: 0 0 14px;
	font-size: 17px;
	font-weight: 500;
	line-height: 24px;
	color: var(--kirb-ld-text);
}

.kirb_main_section.kirb-review-design .kirb-custom-pro-box .heading2 {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 16px;
	margin: 0 0 8px;
	font-size: 16px;
	font-weight: 500;
	line-height: 24px;
	color: var(--kirb-ld-text);
}

.kirb_main_section.kirb-review-design .kirb-custom-pro-box .heading2 > div {
	flex: 0 0 auto;
	font-size: 16px;
	font-weight: 400;
	white-space: nowrap;
}

.kirb_main_section.kirb-review-design .kirb-custom-pro-box .price-comp {
	font-size: 13px;
	color: var(--kirb-ld-muted);
}

.kirb_main_section.kirb-review-design .kirb-byor-review-desc,
.kirb_main_section.kirb-review-design .kirb-custom-pro-box .data > div:not(.heading3):not(.heading2) {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 20px;
	font-size: 11.5px;
	line-height: 18px;
	color: var(--kirb-ld-text);
}

.kirb_main_section.kirb-review-design .kirb-link-btn {
	display: inline-block;
	margin: 10px 0 0 !important;
	padding: 0 !important;
	font-size: 14px;
	font-weight: 500;
	color: var(--kirb-ld-text);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Ring size */
.kirb_main_section.kirb-review-design .inner-ring-size,
.kirb_main_section.kirb-review-design .ring-sizes,
.kirb_main_section.kirb-review-design .ring-size {
	margin: 0;
	padding: 0;
	font-size: 14px;
	color: var(--kirb-ld-text);
}

.kirb_main_section.kirb-review-design .inner-ring-size {
	margin: 0 0 22px;
}

.kirb_main_section.kirb-review-design .inner-ring-size label,
.kirb_main_section.kirb-review-design .inner-ring-size .pera-text {
	display: block;
	margin: 0 0 8px;
	font-size: 14px;
	color: var(--kirb-ld-text);
}

.kirb_main_section.kirb-review-design select.kirb_ring_size_selector,
.kirb_main_section.kirb-review-design .kirb_ring_size_selector select {
	width: 100px;
	height: 34px;
	padding: 0 8px;
	font-size: 13px;
	color: var(--kirb-ld-text);
	background-color: #ffffff;
	border: 1px solid var(--kirb-ld-border);
	border-radius: 0;
}

/* Delivery / shipping / returns chips */
.kirb_main_section.kirb-review-design .free-shipping-byor {
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 18px;
}

.kirb_main_section.kirb-review-design .free-shipping-byor .inner--info {
	margin: 0;
	padding: 6px 10px;
	font-size: 13px;
	line-height: 20px;
	color: var(--kirb-ld-text);
	background: var(--kirb-ld-panel);
	border: 0;
	border-radius: 0;
}

.kirb_main_section.kirb-review-design .free-shipping-byor .inner--info * {
	font-size: 13px;
	color: var(--kirb-ld-text);
}

.kirb_main_section.kirb-review-design .free-shipping-byor .inner--info b,
.kirb_main_section.kirb-review-design .free-shipping-byor .inner--info strong {
	font-weight: 600;
}

.kirb_main_section.kirb-review-design .free-text-section,
.kirb_main_section.kirb-review-design .free-text-section * {
	font-size: 13.5px;
	line-height: 22px;
	color: var(--kirb-ld-text);
}

.kirb_main_section.kirb-review-design .free-text-section {
	margin: 0 0 22px;
}

/* Add to cart (disabled in the free version) */
.kirb_main_section.kirb-review-design .kirb_byor_add_to_cart {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 320px;
	max-width: 100%;
	height: 48px;
	margin: 0 0 22px !important;
	padding: 0 16px;
	font-size: 13.5px;
	font-weight: 500;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	color: var(--kirb-ld-on-dark) !important;
	background: var(--kirb-ld-dark) !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none;
}

.kirb_main_section.kirb-review-design .kirb_byor_add_to_cart.disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

/* Drop hint / consult / share links */
.kirb_main_section.kirb-review-design .drop-icon-section {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 28px;
	width: auto !important;
	max-width: none !important;
	margin: 0;
}

.kirb_main_section.kirb-review-design .drop-icon-section > div {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
}

.kirb_main_section.kirb-review-design .drop-icon-section .pera-text {
	margin: 0;
	font-size: 14px;
	white-space: nowrap;
	color: var(--kirb-ld-text);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.kirb_main_section.kirb-review-design .drop-icon-section .sprite-popup-iocn {
	filter: grayscale(1) brightness(0.7);
}

/* ---------------- Responsive ---------------- */

@media (max-width: 991px) {
	.kirb_main_section.kirb-review-design .kirb-row-detail {
		flex-direction: column;
		gap: 28px;
	}

	.kirb_main_section.kirb-review-design .kirb-row-detail > .img-section,
	.kirb_main_section.kirb-review-design .kirb-row-detail > .product--content {
		flex: 1 1 auto;
		width: 100%;
		max-width: 100%;
	}

	.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section::after {
		display: none;
	}
}

@media (max-width: 767px) {

	.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section .kirb-item-byor .kirb-number-head,
	.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section .kirb-item-byor.active .kirb-number-head {
		width: auto;
		height: 20px;
		border: 0;
		border-radius: 0;
		background-color: transparent !important;
		margin-right: 0;
	}

	.kirb_main_section.kirb-review-design .kirb-main-byor-section .kirb-new-byor-section .kirb-item-byor .kirb-number-head.head-dot {
		margin-right: 3px;
	}
}
