/* BENSINI Studio 1.0.12: centered landing and unchanged sticky product layout. */
.bensini-cds-root {
	--bensini-cds-accent: #75655b;
	--bensini-cds-text: #302c29;
	--bensini-cds-border: #ded8d2;
	--bensini-cds-background: #fff;
	--bensini-cds-button-background: var(--bensini-cds-accent);
	--bensini-cds-column-gap: 48px;
	--bensini-cds-preview-column: 1.35fr;
	--bensini-cds-controls-column: .85fr;
	--bensini-cds-sticky-top: 24px;
	box-sizing: border-box;
	width: min(1500px, calc(100% - 64px));
	max-width: 100%;
	margin-inline: auto;
	color: var(--bensini-cds-text);
	font: inherit;
}

@media (max-width: 640px) {
  .bensini-cds-root {
    width: calc(100% - 24px);
    min-width: 0;
  }
}

.bensini-cds-root *, .bensini-cds-root *::before, .bensini-cds-root *::after { box-sizing: border-box; }
.bensini-cds-root .bensini-cds-button,
.bensini-cds-root .single_add_to_cart_button { background: var(--bensini-cds-button-background) !important; border-color: var(--bensini-cds-button-background) !important; color: #fff !important; }
.bensini-cds-root .bensini-cds-button:hover,
.bensini-cds-root .bensini-cds-button:focus-visible,
.bensini-cds-root .single_add_to_cart_button:hover,
.bensini-cds-root .single_add_to_cart_button:focus-visible { filter: brightness(.88); background: var(--bensini-cds-button-background) !important; color: #fff !important; }
.bensini-cds-root .bensini-cds-shortcode {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin-inline: auto;
}

.bensini-cds-root .bensini-cds-product-layout {
	clear: both;
	grid-column: 1 / -1;
	width: 100%;
	max-width: 100%;
	margin: 28px auto;
}

.bensini-cds-root .bensini-cds-native-fallback {
	clear: both;
	width: min(1400px, calc(100% - 32px));
	margin: 24px auto;
}

.bensini-cds-root .bensini-cds-native-fallback__product {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, .8fr);
	gap: 40px;
	align-items: start;
}

.bensini-cds-root .bensini-cds-native-fallback__product > .summary.entry-summary {
	display: block !important;
	float: none;
	width: auto;
}

.bensini-cds-root .bensini-cds-preview-placeholder {
	width: 100%;
	aspect-ratio: 1 / 1;
	background: linear-gradient(135deg, #f8f5f2, #eee7e1);
}

@media (max-width: 800px) {
	.bensini-cds-root .bensini-cds-native-fallback__product { grid-template-columns: 1fr; gap: 24px; }
}

.bensini-cds-root .bensini-cds-heading h1 {
	margin: 0 0 8px;
}

.bensini-cds-root .bensini-cds-base-price {
	margin: 0 0 20px;
	font-weight: 700;
}

.bensini-cds-root .bensini-cds-inline-error {
	padding: 10px 12px;
	border: 1px solid #c93535;
	border-radius: 8px;
	color: #9c2020;
	background: #fff3f3;
}

.bensini-cds-root .bensini-cds-inline-warning {
	margin: 0 0 12px;
	padding: 10px 12px;
	border: 1px solid #d9b86c;
	border-radius: 9px;
	background: #fff8e7;
	color: #6a4b0d;
	font-size: 13px;
	line-height: 1.45;
}

.bensini-cds-root .bensini-cds-product-details-layout {
	display: block;
	width: 100%;
	padding-inline: clamp(16px, 2.2vw, 32px);
	margin-top: 24px;
}

.bensini-cds-root .bensini-cds-product-details {
	--cds-ink: var(--bensini-cds-text);
	--cds-muted: #776d65;
	--cds-accent: var(--bensini-cds-accent);
	--cds-line: var(--bensini-cds-border);
	width: 100%;
	min-width: 0;
	padding-inline: clamp(15px, 1.8vw, 22px);
	border: 1px solid var(--cds-line);
	border-radius: 16px;
	background: #fff;
}

.bensini-cds-root .bensini-cds-gift-included {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	width: min(1500px, 100%);
	margin: 18px auto 0;
	color: var(--bensini-cds-text);
}

.bensini-cds-root .bensini-cds-gift-included__item {
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr);
	align-items: center;
	gap: 14px;
	min-width: 0;
	min-height: 66px;
	padding: 12px 20px;
	border: 1px solid var(--bensini-cds-border);
	border-radius: 12px;
	background: #fffcf8;
}

.bensini-cds-root .bensini-cds-gift-included__icon { display: grid; place-items: center; color: var(--bensini-cds-accent); }
.bensini-cds-root .bensini-cds-gift-included__icon svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.bensini-cds-root .bensini-cds-gift-included__copy { display: grid; gap: 1px; min-width: 0; }
.bensini-cds-root .bensini-cds-gift-included__copy strong { font-size: 14px; line-height: 1.25; }
.bensini-cds-root .bensini-cds-gift-included__copy > span { color: #776d65; font-size: 12px; line-height: 1.35; }

/* Keep stock semantics and WooCommerce inventory logic, but omit the redundant
   in-stock label rendered immediately above the active Studio configurator. */
.bensini-cds-root .bensini-cds-product-layout > p.stock.in-stock,
.bensini-cds-root .bensini-cds-shortcode > p.stock.in-stock { display: none !important; }

.bensini-cds-root .bensini-cds-relocated-product-details {
	position: static !important;
	float: none !important;
	clear: both;
	width: 100% !important;
	max-width: none !important;
	margin: 28px 0 0 !important;
}

.bensini-cds-root .bensini-cds-relocated-product-details > .bensini-accordion,
.bensini-cds-root .bensini-cds-relocated-product-details > .product_meta {
	width: 100%;
	max-width: none;
}

@media (max-width: 600px) {
	.bensini-cds-root .bensini-cds-gift-included { grid-template-columns: minmax(0, 1fr); gap: 12px; }
	.bensini-cds-root .bensini-cds-inspirations > div,
	.bensini-cds-root .bensini-cds-inspiration-grid { grid-template-columns: minmax(0, 1fr); }
}

.bensini-cds-root .bensini-cds-product-tab + .bensini-cds-product-tab {
	border-top: 1px solid var(--cds-line);
}

.bensini-cds-root .bensini-cds-product-tab > summary {
	display: flex;
	min-height: 58px;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	color: var(--cds-ink);
	font-weight: 600;
	list-style: none;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-product-tab > summary::-webkit-details-marker {
	display: none;
}

.bensini-cds-root .bensini-cds-product-tab > summary::after {
	width: 9px;
	height: 9px;
	flex: 0 0 auto;
	border-right: 2px solid var(--cds-accent);
	border-bottom: 2px solid var(--cds-accent);
	content: "";
	transform: rotate(45deg);
}

.bensini-cds-root .bensini-cds-product-tab[open] > summary::after {
	transform: rotate(-135deg);
}

.bensini-cds-root .bensini-cds-product-tab-content {
	min-width: 0;
	padding-bottom: 18px;
	overflow-wrap: anywhere;
}

.bensini-cds-root .bensini-cds-product-tab-content img,
.bensini-cds-root .bensini-cds-product-tab-content table {
	max-width: 100%;
}

.bensini-cds-root .bensini-cds-product-layout > form,
.bensini-cds-root .bensini-cds-shortcode > form,
.bensini-cds-root .bensini-cds-shortcode > .bensini-cds-hero,
.bensini-cds-root .bensini-cds-shortcode > .bensini-cds-benefits {
	width: min(1500px, 100%);
	max-width: none;
	margin-inline: auto;
}

.bensini-cds-root .bensini-cds-configurator,
.bensini-cds-root .bensini-cds-approval {
	--cds-ink: var(--bensini-cds-text);
	--cds-muted: #776d65;
	--cds-accent: var(--bensini-cds-accent);
	--cds-line: var(--bensini-cds-border);
	--cds-paper: var(--bensini-cds-background);
	--cds-sand: #f7f3ee;
	--cds-sticky-top: var(--bensini-cds-sticky-top);
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	color: var(--cds-ink);
	overflow: visible;
}

.bensini-cds-root .bensini-cds-configurator *,
.bensini-cds-root .bensini-cds-approval *,
.bensini-cds-root .bensini-cds-shortcode * {
	box-sizing: border-box;
}

.bensini-cds-root .bensini-cds-workspace {
	display: grid;
	grid-template-columns: minmax(0, var(--bensini-cds-preview-column)) minmax(380px, var(--bensini-cds-controls-column));
	gap: var(--bensini-cds-column-gap);
	align-items: start;
	padding: clamp(16px, 2.2vw, 32px);
	border-radius: 24px;
	background: var(--cds-sand);
	overflow: visible;
}

.bensini-cds-root .bensini-cds-preview {
	position: sticky;
	top: var(--cds-sticky-top);
	grid-column: 1;
	align-self: start;
	min-width: 0;
	padding: clamp(14px, 2vw, 24px);
	border: 1px solid var(--cds-line);
	border-radius: 18px;
	background: var(--cds-paper);
}

.bensini-cds-root .bensini-cds-controls {
	position: static;
	grid-column: 2;
	display: grid;
	gap: 16px;
	min-width: 0;
	max-height: none;
	overflow: visible;
}

.bensini-cds-root .bensini-cds-heading {
	padding: 4px 2px 0;
	text-align: left;
}

.bensini-cds-root .bensini-cds-heading > span {
	color: var(--cds-accent);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
}

.bensini-cds-root .bensini-cds-heading h2,
.bensini-cds-root .bensini-cds-preview h3,
.bensini-cds-root .bensini-cds-path h3,
.bensini-cds-root .bensini-cds-text h3,
.bensini-cds-root .bensini-cds-transform-tools h3,
.bensini-cds-root .bensini-cds-purchase-bar h3 {
	margin: 0 0 14px;
	color: var(--cds-ink);
	line-height: 1.16;
}

.bensini-cds-root .bensini-cds-heading h2 {
	margin-block: 5px 0;
	font-size: clamp(23px, 2.15vw, 35px);
}

.bensini-cds-root .bensini-cds-mode-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.bensini-cds-root .bensini-cds-mode {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: auto auto;
	row-gap: 3px;
	align-content: start;
	width: 100%;
	min-height: 108px;
	padding: 13px 15px;
	border: 1px solid var(--cds-line);
	border-radius: 14px;
	background: var(--cds-paper);
	color: var(--cds-ink);
	text-align: left;
	cursor: pointer;
	transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

@media (hover: hover) {
	.bensini-cds-root .bensini-cds-mode:hover { border-color: #bca493; background: #fff9f4; box-shadow: 0 8px 20px rgb(74 55 43 / 9%); transform: translateY(-1px); }
}

.bensini-cds-root .bensini-cds-mode.is-selected {
	border-color: var(--cds-accent);
	background: #fcf7f2;
	box-shadow: 0 0 0 1px var(--cds-accent);
}

.bensini-cds-root .bensini-cds-mode:focus-visible {
	outline: 2px solid var(--cds-accent);
	outline-offset: 3px;
}

.bensini-cds-root .bensini-cds-mode strong,
.bensini-cds-root .bensini-cds-mode small {
	grid-column: 1;
	min-width: 0;
}

.bensini-cds-root .bensini-cds-mode strong {
	font-size: 12px;
	line-height: 1.28;
}

.bensini-cds-root .bensini-cds-mode small {
	color: var(--cds-muted);
	font-size: 12px;
	line-height: 1.35;
}

.bensini-cds-root .bensini-cds-path,
.bensini-cds-root .bensini-cds-text,
.bensini-cds-root .bensini-cds-transform-tools,
.bensini-cds-root .bensini-cds-purchase-bar {
	min-width: 0;
	padding: clamp(15px, 1.8vw, 22px);
	border: 1px solid var(--cds-line);
	border-radius: 16px;
	background: var(--cds-paper);
}

.bensini-cds-root .bensini-cds-path,
.bensini-cds-root .bensini-cds-text,
.bensini-cds-root .bensini-cds-transform-tools {
	border-color: #dfd1c5;
}

.bensini-cds-root .bensini-cds-path[hidden],
.bensini-cds-root .bensini-cds-transform-tools[hidden] {
	display: none;
}

.bensini-cds-root .bensini-cds-mode-grid > .bensini-cds-path {
	margin-bottom: 4px;
}

.bensini-cds-root .bensini-cds-path h3,
.bensini-cds-root .bensini-cds-text h3,
.bensini-cds-root .bensini-cds-transform-tools h3,
.bensini-cds-root .bensini-cds-purchase-bar h3,
.bensini-cds-root .bensini-cds-preview h3 {
	font-size: clamp(20px, 1.8vw, 28px);
}

.bensini-cds-root .bensini-cds-path p,
.bensini-cds-root .bensini-cds-transform-tools p,
.bensini-cds-root .bensini-cds-preview > p,
.bensini-cds-root .bensini-cds-purchase-bar > div > p {
	margin: 0 0 12px;
	color: var(--cds-muted);
	font-size: 13px;
	line-height: 1.5;
}

.bensini-cds-root .bensini-cds-preview > p {
	margin: 12px 0 0;
}

.bensini-cds-root .bensini-cds-preview-stage {
	position: relative;
	width: 100%;
	min-height: 180px;
	background: #f8f6f3;
	overflow: hidden;
}

.bensini-cds-root .bensini-cds-preview-stage > img {
	display: block;
	width: 100%;
	height: auto;
	max-height: calc(100svh - 145px);
	object-fit: contain;
}

.bensini-cds-root .bensini-cds-preview-decorations {
	position: absolute;
	inset: 0;
	pointer-events: none;
	overflow: hidden;
}

.bensini-cds-root .bensini-cds-product-mask-layer {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

.bensini-cds-root [data-product-mask-layer].has-product-mask {
	-webkit-mask-image: var(--bensini-cds-product-mask);
	-webkit-mask-position: 0 0;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	mask-image: var(--bensini-cds-product-mask);
	mask-mode: alpha;
	mask-position: 0 0;
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
}

.bensini-cds-root .bensini-cds-preview-decorations[hidden] { display: none; }

.bensini-cds-root .bensini-cds-preview-decorations img {
	position: absolute;
	height: auto;
	max-width: none;
	pointer-events: none;
	user-select: none;
}

.bensini-cds-root .bensini-cds-preview-stage [data-preview-art] {
	position: absolute;
	top: var(--top, 25%);
	left: var(--left, 25%);
	width: var(--w, 50%);
	height: var(--h, 50%);
	overflow: visible;
	pointer-events: none;
}

.bensini-cds-root .bensini-cds-preview-stage [data-preview-art-image] {
	position: absolute;
	top: var(--art-y, 50%);
	left: var(--art-x, 50%);
	width: var(--art-scale, 100%);
	height: auto;
	max-width: none;
	transform: translate(-50%, -50%);
	cursor: grab;
	touch-action: none;
	user-select: none;
	pointer-events: auto;
}

.bensini-cds-root .bensini-cds-preview-stage [data-preview-text] {
	position: absolute;
	top: var(--text-y, 80%);
	left: var(--text-x, 50%);
	max-width: 90%;
	font-family: var(--text-font, inherit);
	font-size: var(--text-size, 24px);
	font-weight: 700;
	line-height: 1.15;
	text-align: center;
	transform: translate(-50%, -50%) rotate(var(--text-rotation, 0deg));
	cursor: grab;
	touch-action: none;
	user-select: none;
	overflow-wrap: anywhere;
	pointer-events: auto;
}
.bensini-cds-root .bensini-cds-preview-stage [data-preview-text]{display:block;overflow:visible}.bensini-cds-root .bensini-cds-preview-stage [data-preview-text-svg]{display:block;width:100%;height:100%;overflow:visible}.bensini-cds-root .bensini-cds-preview-stage [data-preview-text-svg][hidden]{display:none}.bensini-cds-root .bensini-cds-text-rotation{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;margin:10px 0}.bensini-cds-root .bensini-cds-text-rotation input{grid-column:1/-1;width:100%}
.bensini-cds-root .bensini-cds-range-hints{grid-column:1/-1;display:flex;justify-content:space-between;margin-top:-2px;color:var(--cds-muted);font-size:11px;font-weight:500}.bensini-cds-root .bensini-cds-rotation-hints span:nth-child(2){position:absolute;left:50%;transform:translateX(-50%)}.bensini-cds-root .bensini-cds-rotation-hints{position:relative}

.bensini-cds-root .bensini-cds-preview-stage .is-dragging {
	cursor: grabbing;
}

.bensini-cds-root .bensini-cds-selected-print {
	display: flex;
	gap: 12px;
	align-items: center;
	min-width: 0;
	margin-bottom: 12px;
}

.bensini-cds-root .bensini-cds-decorative-option {
	margin-top: 18px;
	padding: 16px;
	border: 1px solid var(--cds-line);
	border-radius: 12px;
	background: rgba(255,255,255,.62);
}

.bensini-cds-root .bensini-cds-decorative-option[hidden] { display: none; }
.bensini-cds-root .bensini-cds-decorative-toggle{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important;background:none!important;font-weight:700;cursor:pointer}.bensini-cds-root .bensini-cds-decorative-toggle>input[type=checkbox]{position:absolute!important;width:1px!important;min-width:0!important;height:1px!important;margin:0!important;padding:0!important;opacity:0!important;flex:none!important}.bensini-cds-root .bensini-cds-toggle-track{display:inline-flex;align-items:center;justify-content:flex-end;width:58px;min-width:58px;height:30px;padding:3px;border-radius:999px;background:#d7d0ca;box-shadow:inset 0 0 0 1px rgba(87,71,61,.18);transition:background .2s;flex:none}.bensini-cds-root .bensini-cds-toggle-track:before{content:"";width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.22);transform:translateX(-28px);transition:transform .2s}.bensini-cds-root .bensini-cds-toggle-track>span{position:absolute;font-size:10px;font-weight:800;color:#fff;opacity:0;margin-right:7px}.bensini-cds-root .bensini-cds-decorative-toggle>input:checked+.bensini-cds-toggle-track{background:var(--cds-accent)}.bensini-cds-root .bensini-cds-decorative-toggle>input:checked+.bensini-cds-toggle-track:before{transform:translateX(0)}.bensini-cds-root .bensini-cds-decorative-toggle>input:checked+.bensini-cds-toggle-track>span{opacity:1}.bensini-cds-root .bensini-cds-decorative-toggle>input:focus-visible+.bensini-cds-toggle-track{outline:3px solid rgba(87,71,61,.28);outline-offset:3px}
.bensini-cds-root .bensini-cds-toggle-track{position:relative}.bensini-cds-root .bensini-cds-toggle-track>span{left:8px;margin-right:0}
.bensini-cds-root .bensini-cds-decorative-option p { margin: 10px 0 0; color: var(--cds-muted); font-size: 13px; line-height: 1.5; }
.bensini-cds-root .bensini-cds-decorative-option{padding:16px;border-color:#d9c7b8;background:#fbf4ed;box-shadow:0 7px 18px rgb(82 61 47 / 6%)}
.bensini-cds-root .bensini-cds-project-note{display:grid;gap:8px;margin-bottom:12px;padding:16px;border:1px solid var(--cds-line);border-radius:14px;background:var(--cds-paper)}
.bensini-cds-root .bensini-cds-project-note>label{font-weight:700}.bensini-cds-root .bensini-cds-project-note textarea{box-sizing:border-box;width:100%;min-height:82px;resize:vertical}.bensini-cds-root .bensini-cds-project-note p{margin:0;color:var(--cds-muted);font-size:12px;line-height:1.45}
.bensini-cds-root .bensini-cds-legacy-text-notice{margin:12px 0!important;padding:10px 12px;border-left:3px solid var(--cds-accent);border-radius:7px;background:var(--cds-sand);color:var(--cds-ink)!important;font-size:12px!important}

.bensini-cds-root .bensini-cds-selected-print:empty {
	display: none;
}

.bensini-cds-root .bensini-cds-selected-print img {
	width: 66px;
	height: 66px;
	object-fit: contain;
}

.bensini-cds-root .bensini-cds-selected-print strong {
	min-width: 0;
	overflow-wrap: anywhere;
}

.bensini-cds-root .bensini-cds-button,
.bensini-cds-root .bensini-cds-back,
.bensini-cds-root .bensini-cds-step-buttons > button {
	display: inline-flex;
	min-height: 42px;
	align-items: center;
	justify-content: center;
	padding: 9px 15px;
	border: 1px solid var(--cds-accent);
	border-radius: 8px;
	background: var(--cds-paper);
	color: var(--cds-accent);
	font: inherit;
	font-weight: 600;
	text-align: center;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-button.is-primary {
	background: var(--cds-accent);
	color: #fff;
}

.bensini-cds-root .bensini-cds-button.is-small {
	min-height: 36px;
	padding: 6px 11px;
	font-size: 12px;
}

.bensini-cds-root .bensini-cds-path label,
.bensini-cds-root .bensini-cds-transform-tools > label,
.bensini-cds-root .bensini-cds-customer-text-size {
	display: grid;
	gap: 8px;
	margin-top: 14px;
	font-size: 13px;
	font-weight: 600;
}

.bensini-cds-root .bensini-cds-configurator input[type="text"],
.bensini-cds-root .bensini-cds-configurator input[type="search"],
.bensini-cds-root .bensini-cds-configurator textarea,
.bensini-cds-root .bensini-cds-configurator select,
.bensini-cds-root .bensini-cds-approval textarea {
	width: 100%;
	max-width: 100%;
	min-height: 44px;
	padding: 9px 12px;
	border: 1px solid var(--cds-line);
	border-radius: 8px;
	background: #fff;
	color: var(--cds-ink);
	font: inherit;
}

.bensini-cds-root .bensini-cds-configurator textarea,
.bensini-cds-root .bensini-cds-approval textarea {
	min-height: 100px;
	resize: vertical;
}

.bensini-cds-root .bensini-cds-configurator input[type="range"] {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 6px;
	margin: 0;
	border: 0 !important;
	border-radius: 999px;
	outline: 2px solid transparent;
	outline-offset: 3px;
	background: #ddd2c9;
	box-shadow: none !important;
	accent-color: var(--cds-accent);
}

.bensini-cds-root .bensini-cds-configurator input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 20px;
	height: 20px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: var(--cds-accent);
	box-shadow: 0 0 0 1px rgba(56,47,42,.28);
}

.bensini-cds-root .bensini-cds-configurator input[type="range"]::-moz-range-thumb {
	width: 17px;
	height: 17px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: var(--cds-accent);
	box-shadow: 0 0 0 1px rgba(56,47,42,.28);
}

.bensini-cds-root .bensini-cds-configurator input[type="range"]::-moz-range-track {
	height: 6px;
	border: 0;
	border-radius: 999px;
	background: #ddd2c9;
}

.bensini-cds-root .bensini-cds-configurator input[type="range"]:focus {
	border: 0 !important;
	box-shadow: none !important;
}

.bensini-cds-root .bensini-cds-configurator input[type="range"]:focus-visible {
	outline: 2px solid var(--cds-accent);
	outline-offset: 4px;
	box-shadow: 0 0 0 4px rgba(150,119,99,.14) !important;
}

.bensini-cds-root .bensini-cds-transform-tools output,
.bensini-cds-root .bensini-cds-customer-text-size output {
	color: var(--cds-muted);
	font-size: 12px;
}

.bensini-cds-root .bensini-cds-step-buttons {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	align-items: center;
	margin-top: 10px;
}

.bensini-cds-root .bensini-cds-step-buttons > button:not(.bensini-cds-button) {
	width: 36px;
	min-height: 36px;
	padding: 0;
	font-size: 20px;
}

.bensini-cds-root .bensini-cds-colors {
	display: flex;
	gap: 10px 15px;
	flex-wrap: wrap;
	align-items: flex-start;
	margin-block: 14px;
}

.bensini-cds-root .bensini-cds-color-option {
	position: relative;
	display: inline-flex;
	gap: 7px;
	align-items: center;
	margin: 0;
	padding: 5px 8px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 13px;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-color-option:has(input:checked) {
	border-color: var(--cds-accent);
	box-shadow: 0 0 0 2px rgba(150,119,99,.15);
}

.bensini-cds-root .bensini-cds-color-option:has(input:focus-visible) {
	outline: 2px solid var(--cds-accent);
	outline-offset: 3px;
}

.bensini-cds-root .bensini-cds-visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.bensini-cds-root .bensini-cds-color-swatch {
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	border: 1px solid var(--cds-line);
	border-radius: 50%;
	background: var(--bensini-cds-swatch, #333);
}

.bensini-cds-root .bensini-cds-custom-color {
	position: relative;
}

.bensini-cds-root .bensini-cds-color-popover {
	position: absolute;
	z-index: 35;
	top: calc(100% + 8px);
	right: 0;
	width: min(310px, calc(100vw - 40px));
	padding: 14px;
	border: 1px solid var(--cds-line);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 18px 46px rgba(48,44,41,.18);
}

.bensini-cds-root .bensini-cds-color-popover[hidden] { display: none; }

.bensini-cds-root .bensini-cds-color-popover__head,
.bensini-cds-root .bensini-cds-color-popover__current {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.bensini-cds-root .bensini-cds-color-popover__head { margin-bottom: 12px; }

.bensini-cds-root .bensini-cds-color-popover__head > button {
	width: 34px;
	min-height: 34px;
	padding: 0;
	border: 1px solid #ded8d2 !important;
	border-radius: 50%;
	background: #f3f0ed !important;
	box-shadow: none !important;
	color: #302c29 !important;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-color-popover__head > button:hover { background: #e8e3de !important; border-color: #cfc7c0 !important; color: #211e1c !important; }
.bensini-cds-root .bensini-cds-color-popover__head > button:active { background: #ddd7d1 !important; }
.bensini-cds-root .bensini-cds-color-popover__head > button:focus-visible { outline: 3px solid rgba(117,101,91,.28); outline-offset: 2px; }

.bensini-cds-root .bensini-cds-color-popover__current {
	justify-content: flex-start;
	margin-bottom: 12px;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.bensini-cds-root .bensini-cds-color-popover__current > span {
	width: 38px;
	height: 38px;
	border: 1px solid var(--cds-line);
	border-radius: 50%;
	background: var(--bensini-cds-custom-preview, #333);
}

.bensini-cds-root .bensini-cds-color-popover > label {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	gap: 10px;
	align-items: center;
	margin: 8px 0;
	font-size: 12px;
}

.bensini-cds-root .bensini-cds-color-popover input[type="text"] { min-width: 0; }
.bensini-cds-root .bensini-cds-color-popover input[type="range"] { width: 100%; }
.bensini-cds-root .bensini-cds-color-popover > p { margin: -3px 0 10px; color: var(--cds-muted); font-size: 11px; }
.bensini-cds-root .bensini-cds-color-eyedropper {
	display: inline-flex;
	width: 100%;
	min-height: 42px;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 10px;
	padding: 8px 12px;
	border: 1px solid var(--cds-line);
	border-radius: 8px;
	background: #f7f4f1;
	color: var(--bensini-cds-text);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}
.bensini-cds-root .bensini-cds-color-eyedropper[hidden] { display: none; }
.bensini-cds-root .bensini-cds-color-eyedropper svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.bensini-cds-root .bensini-cds-color-eyedropper:hover { border-color: var(--bensini-cds-accent); background: #efeae5; }
.bensini-cds-root .bensini-cds-color-eyedropper:focus-visible { outline: 3px solid rgb(117 101 91 / 28%); outline-offset: 2px; }
.bensini-cds-root .bensini-cds-color-popover > .bensini-cds-button { width: 100%; margin-top: 10px; }

.bensini-cds-root .bensini-cds-text h4,
.bensini-cds-root .bensini-cds-path h4 {
	margin: 18px 0 10px;
	font-size: 14px;
}

.bensini-cds-root .bensini-cds-fonts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.bensini-cds-root .bensini-cds-fonts label {
	position: relative;
	display: grid;
	gap: 3px;
	min-width: 0;
	min-height: 84px;
	padding: 10px;
	border: 1px solid var(--cds-line);
	border-radius: 9px;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-fonts label:has(input:checked) {
	border-color: var(--cds-accent);
	box-shadow: 0 0 0 1px var(--cds-accent);
}

.bensini-cds-root .bensini-cds-fonts input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.bensini-cds-root .bensini-cds-fonts strong {
	font-family: var(--font-preview);
	font-size: 27px;
	line-height: 1;
}

.bensini-cds-root .bensini-cds-fonts span {
	color: var(--cds-muted);
	font-size: 11px;
	overflow-wrap: anywhere;
}

.bensini-cds-root .bensini-cds-drag-hint {
	margin: 12px 0;
	color: var(--cds-muted);
	font-size: 12px;
}

.bensini-cds-root .bensini-cds-drag-hint button {
	padding: 0;
	border: 0;
	background: none;
	color: var(--cds-accent);
	font: inherit;
	text-decoration: underline;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-confirm {
	display: flex;
	gap: 7px;
	align-items: flex-start;
	font-size: 12px;
}

.bensini-cds-root .bensini-cds-dropzone {
	position: relative;
	display: grid;
	gap: 6px;
	min-height: 108px;
	place-content: center;
	padding: 14px;
	border: 1px dashed var(--cds-accent);
	border-radius: 10px;
	text-align: center;
}

.bensini-cds-root .bensini-cds-dropzone small {
	color: var(--cds-muted);
}

.bensini-cds-root .bensini-cds-dropzone input[type="file"] {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-upload-list > div {
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: space-between;
	margin-top: 8px;
	font-size: 12px;
	overflow-wrap: anywhere;
}

.bensini-cds-root [data-upload-list="customer"] [data-remove-upload] {
	display: inline-grid;
	flex: 0 0 auto;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 1px solid #ded5cf;
	border-radius: 8px;
	place-items: center;
	background: #f3f0ed;
	box-shadow: none;
	color: #302c29;
	font: inherit;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}

.bensini-cds-root [data-upload-list="customer"] [data-remove-upload]:hover {
	border-color: #ded5cf;
	background: #e8e1dc;
	color: #302c29;
}

.bensini-cds-root [data-upload-list="customer"] [data-remove-upload]:focus-visible {
	outline: 2px solid #75655b;
	outline-offset: 2px;
}

.bensini-cds-root .bensini-cds-upload-list .is-error {
	color: #a53030;
}

.bensini-cds-root .bensini-cds-how {
	margin-top: 16px;
	padding: 12px;
	border-radius: 9px;
	background: var(--cds-sand);
}

.bensini-cds-root .bensini-cds-brief-explainer {
	margin-bottom: 16px;
	padding: 13px 14px;
	border-left: 3px solid var(--cds-accent);
	border-radius: 8px;
	background: var(--cds-sand);
}

.bensini-cds-root .bensini-cds-brief-explainer > strong {
	display: block;
	margin-bottom: 7px;
	font-size: 14px;
}

.bensini-cds-root .bensini-cds-path .bensini-cds-brief-explainer > p {
	margin: 0;
	color: var(--cds-ink);
}

.bensini-cds-root .bensini-cds-how h4 {
	margin-top: 0;
}

.bensini-cds-root .bensini-cds-how ol {
	margin: 0;
	padding-left: 20px;
	font-size: 12px;
	line-height: 1.8;
}

.bensini-cds-root .bensini-cds-purchase-bar {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 14px;
	border-color: #d9c5b5;
	background: #fffcf8;
	box-shadow: 0 8px 22px rgba(86,66,52,.06);
}

.bensini-cds-root .bensini-cds-purchase-bar h3 {
	margin-bottom: 4px;
}

.bensini-cds-root .bensini-cds-purchase-bar > div > p {
	margin-bottom: 0;
}

.bensini-cds-root .bensini-cds-purchase-bar > div > .bensini-cds-approval-notice {
	margin-top: 9px;
	color: var(--cds-accent);
	font-weight: 600;
}

.bensini-cds-root .bensini-cds-approval-notice[hidden] {
	display: none;
}

.bensini-cds-root .bensini-cds-purchase-price {
	display: flex;
	gap: 12px;
	align-items: baseline;
	justify-content: space-between;
	padding-top: 13px;
	border-top: 1px solid var(--cds-line);
}

.bensini-cds-root .bensini-cds-purchase-price > span {
	color: var(--cds-muted);
	font-size: 13px;
}

.bensini-cds-root .bensini-cds-purchase-price strong {
	font-size: clamp(22px, 2.1vw, 30px);
	white-space: nowrap;
}

.bensini-cds-root .bensini-cds-purchase-bar > .bensini-cds-button {
	width: 100%;
}

.bensini-cds-root .bensini-cds-purchase-actions {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 10px;
	align-items: center;
	min-width: 0;
}

.bensini-cds-root .bensini-cds-purchase-actions > span:only-child,
.bensini-cds-root .bensini-cds-purchase-actions > button:only-child {
	grid-column: 1 / -1;
}

.bensini-cds-root .bensini-cds-purchase-actions .quantity,
.bensini-cds-root .bensini-cds-purchase-actions input.qty {
	width: 68px;
	max-width: 68px;
}

.bensini-cds-root .bensini-cds-purchase-actions input.qty {
	min-height: 48px;
	border: 1px solid var(--cds-line);
	border-radius: 8px;
	text-align: center;
}

.bensini-cds-root form.bensini-cds-purchase-form .bensini-cds-purchase-actions .single_add_to_cart_button {
	width: 100%;
	min-height: 48px;
	padding-inline: 12px;
	border-color: #5b463d !important;
	background: #5b463d !important;
	box-shadow: none !important;
	color: #fff !important;
	filter: none;
	white-space: normal;
	overflow-wrap: anywhere;
}

.bensini-cds-root form.bensini-cds-purchase-form .bensini-cds-purchase-actions .single_add_to_cart_button:hover { border-color: #49372f !important; background: #49372f !important; color: #fff !important; filter: none; }
.bensini-cds-root form.bensini-cds-purchase-form .bensini-cds-purchase-actions .single_add_to_cart_button:active { border-color: #3f2f29 !important; background: #3f2f29 !important; color: #fff !important; filter: none; }
.bensini-cds-root form.bensini-cds-purchase-form .bensini-cds-purchase-actions .single_add_to_cart_button:focus-visible { border-color: #5b463d !important; background: #5b463d !important; color: #fff !important; outline: 3px solid rgb(91 70 61 / 32%); outline-offset: 3px; }

.bensini-cds-root .bensini-cds-modal,
.bensini-cds-root .bensini-cds-inspiration-lightbox {
	position: fixed;
	z-index: 100050;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 18px;
	background: rgb(31 25 21 / 68%);
	overflow: auto;
	overscroll-behavior: contain;
}

.bensini-cds-root .bensini-cds-modal[hidden] {
	display: none;
}

.bensini-cds-root .bensini-cds-modal-card {
	position: relative;
	width: min(860px, 100%);
	max-height: calc(100dvh - 36px);
	padding: clamp(18px, 3.5vw, 34px);
	border-radius: 18px;
	background: #fff;
	overflow-y: auto;
	overscroll-behavior: contain;
}

.bensini-cds-root .bensini-cds-modal-close,
.bensini-cds-root .bensini-cds-inspiration-lightbox > button {
	position: absolute;
	z-index: 1;
	top: 12px;
	right: 12px;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	color: #352d27;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-modal-card h2 {
	margin: 0 35px 18px 0;
	font-size: clamp(22px, 3vw, 33px);
	line-height: 1.2;
}

.bensini-cds-root .bensini-cds-filters {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(160px, 0.65fr);
	gap: 10px;
	margin-bottom: 15px;
}

.bensini-cds-root .bensini-cds-print-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.bensini-cds-root .bensini-cds-print-card {
	display: grid;
	gap: 7px;
	align-content: start;
	min-width: 0;
	padding: 9px;
	border: 1px solid var(--cds-line);
	border-radius: 10px;
	background: #fff;
	color: var(--cds-ink);
	text-align: left;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-print-card img,
.bensini-cds-root .bensini-cds-no-image {
	display: block;
	width: 100%;
	aspect-ratio: 1;
	object-fit: contain;
}

.bensini-cds-root .bensini-cds-print-card strong {
	font-size: 12px;
	overflow-wrap: anywhere;
}

.bensini-cds-root .bensini-cds-print-card small {
	color: var(--cds-muted);
}

.bensini-cds-root .bensini-cds-modal-card > div > [data-load-more] {
	margin-top: 15px;
}

.bensini-cds-root .bensini-cds-print-detail {
	text-align: center;
}

.bensini-cds-root .bensini-cds-print-detail[hidden],
.bensini-cds-root [data-library-gallery][hidden] {
	display: none;
}

.bensini-cds-root .bensini-cds-back {
	margin-bottom: 12px;
	border-color: transparent;
}

.bensini-cds-root .bensini-cds-detail-image {
	display: grid;
	min-height: 140px;
	place-items: center;
	border-radius: 14px;
	background: var(--cds-sand);
}

.bensini-cds-root .bensini-cds-detail-image img {
	width: auto;
	max-width: 100%;
	max-height: min(48dvh, 440px);
	object-fit: contain;
}

.bensini-cds-root .bensini-cds-print-detail h2 {
	margin: 13px 0 6px;
	font-size: clamp(22px, 3vw, 32px);
}

.bensini-cds-root .bensini-cds-print-detail > p {
	margin: 0 0 13px;
	color: var(--cds-muted);
}

.bensini-cds-root .bensini-cds-inspirations {
	width: 100%;
	margin-top: 38px;
}

.bensini-cds-root .bensini-cds-inspirations h2 {
	margin: 0 0 18px;
	font-size: clamp(25px, 3vw, 40px);
}

.bensini-cds-root .bensini-cds-inspirations-description {
	margin: -8px 0 18px;
	color: var(--cds-muted, #776d65);
	line-height: 1.6;
}

.bensini-cds-root .bensini-cds-inspirations > div,
.bensini-cds-root .bensini-cds-inspiration-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.bensini-cds-root .bensini-cds-inspiration-card { display:grid;align-content:start;gap:10px;min-width:0; }
.bensini-cds-root .bensini-cds-inspiration-zoom {
	position: relative;
	min-width: 0;
	padding: 0;
	border: 0;
	border-radius: 16px;
	background: var(--cds-sand);
	overflow: hidden;
	cursor: pointer;
}

.bensini-cds-root .bensini-cds-inspiration-zoom > img {
	display: block;
	width: 100%;
	height: auto;
	transition: transform .2s ease, filter .2s ease;
}

@media (hover:hover) { .bensini-cds-root .bensini-cds-inspiration-zoom:hover>img{transform:scale(1.018);filter:brightness(1.015)} }

.bensini-cds-root .bensini-cds-inspiration-zoom > span {
	position: absolute;
	right: 13px;
	bottom: 13px;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: rgb(55 46 40 / 78%);
}

.bensini-cds-root .bensini-cds-inspiration-zoom > span::before {
	position: absolute;
	top: 9px;
	left: 9px;
	width: 14px;
	height: 14px;
	border: 2px solid #fff;
	border-radius: 50%;
	content: "";
}

.bensini-cds-root .bensini-cds-inspiration-zoom > span::after {
	position: absolute;
	top: 24px;
	left: 23px;
	width: 9px;
	height: 2px;
	background: #fff;
	content: "";
	transform: rotate(45deg);
}

.bensini-cds-root .bensini-cds-inspiration-preset{min-height:42px;padding:9px 14px;border:1px solid var(--cds-accent);border-radius:10px;background:var(--cds-paper);color:var(--cds-accent);font-weight:700;cursor:pointer}.bensini-cds-root .bensini-cds-inspiration-preset:hover{background:#fbf4ed}.bensini-cds-root .bensini-cds-inspiration-preset:focus-visible,.bensini-cds-root .bensini-cds-inspiration-zoom:focus-visible{outline:2px solid var(--cds-accent);outline-offset:3px}

.bensini-cds-root .bensini-cds-inspiration-lightbox > img {
	max-width: min(1100px, 90vw);
	max-height: 86dvh;
	object-fit: contain;
}

.bensini-cds-root .bensini-cds-inspiration-lightbox > button {
	top: 18px;
	right: 18px;
}

.bensini-cds-root .bensini-cds-hero {
	display: grid;
	grid-template-columns: minmax(380px, 0.8fr) minmax(0, 1.2fr);
	gap: clamp(48px, 5.4vw, 96px);
	align-items: center;
	padding-block: clamp(20px, 3vw, 46px);
	margin: 0;
}

.bensini-cds-root .bensini-cds-hero__content {
	min-width: 0;
}

.bensini-cds-root .bensini-cds-hero__eyebrow {
	display: inline-block;
	margin-bottom: 14px;
	color: var(--cds-accent, #967763);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.13em;
	line-height: 1.45;
	text-transform: uppercase;
}

.bensini-cds-root .bensini-cds-hero > img,
.bensini-cds-root .bensini-cds-hero__image {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid rgb(150 119 99 / 14%);
	border-radius: clamp(16px, 2vw, 26px);
	object-fit: contain;
}

.bensini-cds-root .bensini-cds-hero:not(:has(> img)) {
	grid-template-columns: minmax(0, 1fr);
}

.bensini-cds-root .bensini-cds-hero h1 {
	max-width: 18ch;
	margin: 0;
	font-size: clamp(42px, 3.6vw, 69px);
	line-height: 1.02;
	overflow-wrap: anywhere;
}

.bensini-cds-root .bensini-cds-hero__description,
.bensini-cds-root .bensini-cds-hero__helper {
	max-width: 39ch;
	margin: 18px 0 0;
	line-height: 1.62;
}

.bensini-cds-root .bensini-cds-hero__description {
	color: var(--cds-ink, #382f2a);
	font-size: clamp(15px, 1.16vw, 18px);
}

.bensini-cds-root .bensini-cds-hero__helper {
	margin-top: 11px;
	color: var(--cds-muted, #776d65);
	font-size: clamp(14px, 1vw, 16px);
}

.bensini-cds-root .bensini-cds-hero__cta {
	display: inline-flex;
	min-height: 52px;
	max-width: 100%;
	align-items: center;
	justify-content: center;
	padding: 13px 21px;
	margin-top: 24px;
	border: 1px solid var(--cds-accent, #967763);
	border-radius: 10px;
	background: var(--cds-accent, #967763);
	color: #fff !important;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.bensini-cds-root .bensini-cds-hero__cta:hover {
	background: var(--cds-ink, #382f2a);
	border-color: var(--cds-ink, #382f2a);
	color: #fff !important;
}

.bensini-cds-root .bensini-cds-hero__cta:focus-visible {
	color: #fff !important;
	outline: 3px solid var(--cds-accent, #967763);
	outline-offset: 4px;
}

.bensini-cds-root .bensini-cds-hero__cta:active {
	color: #fff !important;
}

.bensini-cds-root .bensini-cds-benefits {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	padding-block: clamp(16px, 1.8vw, 23px);
	margin: clamp(12px, 2vw, 30px) 0 clamp(32px, 4vw, 56px);
	border-top: 1px solid rgb(150 119 99 / 18%);
	border-bottom: 1px solid rgb(150 119 99 / 18%);
	font-size: clamp(12px, 0.93vw, 15px);
}

.bensini-cds-root .bensini-cds-benefits > span {
	display: flex;
	gap: 9px;
	align-items: center;
	min-width: 0;
	padding-inline: clamp(9px, 1.6vw, 24px);
	line-height: 1.45;
}

.bensini-cds-root .bensini-cds-benefits > span + span {
	border-left: 1px solid rgb(150 119 99 / 18%);
}

.bensini-cds-root .bensini-cds-benefits > span > span {
	color: var(--cds-accent, #967763);
}

.bensini-cds-root .bensini-cds-approval {
	width: min(980px, calc(100vw - 32px));
	margin: 36px auto;
}

.bensini-cds-root .bensini-cds-approval-page {
	margin: 0;
	background: #f8f3ed;
}

.bensini-cds-root .bensini-cds-brand {
	color: var(--cds-accent);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.18em;
}

.bensini-cds-root .bensini-cds-message {
	margin: 18px 0;
	padding: 14px;
	border-radius: 9px;
}

.bensini-cds-root .bensini-cds-message.is-success {
	background: #e6f5eb;
}

.bensini-cds-root .bensini-cds-message.is-error {
	background: #f9e6e5;
}

.bensini-cds-root .bensini-cds-proof-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.bensini-cds-root .bensini-cds-proof {
	display: grid;
	gap: 9px;
	padding: 12px;
	border: 1px solid var(--cds-line);
	border-radius: 12px;
}

.bensini-cds-root .bensini-cds-proof img {
	width: 100%;
	height: auto;
}

.bensini-cds-root .bensini-cds-decisions {
	display: grid;
	gap: 15px;
	margin-top: 20px;
}

.bensini-cds-root .bensini-cds-decisions summary {
	margin-bottom: 10px;
	cursor: pointer;
}

@media (max-width: 1199px) {
	.bensini-cds-root .bensini-cds-workspace,
.bensini-cds-root .bensini-cds-product-details-layout {
		grid-template-columns: minmax(0, 1.08fr) minmax(370px, 0.92fr);
		gap: 20px;
	}

	.bensini-cds-root .bensini-cds-mode {
		padding-inline: 11px;
	}
}

@media (max-width: 1040px) {
	.bensini-cds-root .bensini-cds-hero {
		grid-template-columns: minmax(0, 1fr);
		gap: clamp(24px, 4vw, 38px);
	}

	.bensini-cds-root .bensini-cds-hero__content {
		max-width: 760px;
	}

	.bensini-cds-root .bensini-cds-hero h1 {
		max-width: 18ch;
	}
}

	@media (max-width: 959px) {
		.bensini-cds-root .bensini-cds-product-layout { width: 100%; }

	.bensini-cds-root .bensini-cds-workspace {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
		padding: 14px;
	}

	.bensini-cds-root .bensini-cds-product-details-layout {
		grid-template-columns: minmax(0, 1fr);
		padding-inline: 14px;
	}

	.bensini-cds-root .bensini-cds-product-details {
		grid-column: 1;
	}

	.bensini-cds-root .bensini-cds-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 17px;
	}

	.bensini-cds-root .bensini-cds-benefits > span:nth-child(odd) {
		border-left: 0;
	}

	.bensini-cds-root .bensini-cds-preview,
.bensini-cds-root .bensini-cds-controls {
		position: static;
		grid-column: 1;
	}

	.bensini-cds-root .bensini-cds-preview-stage > img {
		max-height: none;
	}

	.bensini-cds-root .bensini-cds-hero {
		gap: clamp(23px, 4vw, 34px);
	}
}

	@media (max-width: 640px) {
		.bensini-cds-root .bensini-cds-product-layout { width: 100%; }

	.bensini-cds-root .bensini-cds-color-popover {
		position: fixed;
		top: 50%;
		right: 12px;
		left: 12px;
		width: auto;
		max-height: calc(100dvh - 24px);
		overflow: auto;
		transform: translateY(-50%);
	}

	.bensini-cds-root .bensini-cds-workspace {
		gap: 13px;
		padding: 9px;
		border-radius: 16px;
	}

	.bensini-cds-root .bensini-cds-product-details-layout {
		padding-inline: 9px;
	}

	.bensini-cds-root .bensini-cds-preview,
.bensini-cds-root .bensini-cds-path,
.bensini-cds-root .bensini-cds-text,
.bensini-cds-root .bensini-cds-transform-tools,
.bensini-cds-root .bensini-cds-purchase-bar {
		padding: 12px;
	}

		.bensini-cds-root .bensini-cds-mode {
			grid-template-columns: minmax(0, 1fr);
			padding: 11px;
		}

		.bensini-cds-root .bensini-cds-mode-grid {
			grid-template-columns: minmax(0, 1fr);
		}

	.bensini-cds-root .bensini-cds-filters,
.bensini-cds-root .bensini-cds-hero {
		grid-template-columns: minmax(0, 1fr);
	}

	.bensini-cds-root .bensini-cds-hero {
		padding-block: 15px 19px;
	}

	.bensini-cds-root .bensini-cds-hero h1 {
		font-size: clamp(38px, 9vw, 54px);
	}

	.bensini-cds-root .bensini-cds-hero__eyebrow {
		margin-bottom: 11px;
		font-size: 11px;
	}

	.bensini-cds-root .bensini-cds-hero__cta {
		min-height: 48px;
		margin-top: 20px;
	}

	.bensini-cds-root .bensini-cds-benefits {
		margin-block: 12px 30px;
	}

	.bensini-cds-root .bensini-cds-print-grid,
.bensini-cds-root .bensini-cds-benefits,
.bensini-cds-root .bensini-cds-inspirations > div,
.bensini-cds-root .bensini-cds-inspiration-grid,
.bensini-cds-root .bensini-cds-proof-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.bensini-cds-root .bensini-cds-modal {
		padding: 9px;
	}

	.bensini-cds-root .bensini-cds-modal-card {
		max-height: calc(100dvh - 18px);
		padding: 17px;
	}
}

	@media (max-width: 380px) {
		.bensini-cds-root .bensini-cds-product-layout { width: 100%; }

	.bensini-cds-root .bensini-cds-workspace {
		padding: 6px;
	}

	.bensini-cds-root .bensini-cds-product-details-layout {
		padding-inline: 6px;
	}

	.bensini-cds-root .bensini-cds-purchase-actions {
		grid-template-columns: 52px minmax(0, 1fr);
		gap: 7px;
	}

	.bensini-cds-root .bensini-cds-purchase-actions .quantity,
.bensini-cds-root .bensini-cds-purchase-actions input.qty {
		width: 52px;
		max-width: 52px;
	}

	.bensini-cds-root .bensini-cds-colors {
		gap: 8px 10px;
	}
}

@media (max-width: 1040px) {
	.bensini-cds-root .bensini-cds-inspirations > div,
	.bensini-cds-root .bensini-cds-inspiration-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
	.bensini-cds-root .bensini-cds-inspirations > div,
	.bensini-cds-root .bensini-cds-inspiration-grid { grid-template-columns: minmax(0, 1fr); }
}

.bensini-cds-root .bensini-cds-mode-label-mobile,
.bensini-cds-root .bensini-cds-mobile-preview {
	display: none;
}

.bensini-cds-root .bensini-cds-mobile-preview[hidden] {
	display: none !important;
}

@media (max-width: 767px) {
	.bensini-cds-root .bensini-cds-mode-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 5px;
		width: 100%;
		min-width: 0;
	}

	.bensini-cds-root .bensini-cds-mode {
		align-content: center;
		justify-items: center;
		min-width: 0;
		min-height: 54px;
		padding: 8px 4px;
		border-radius: 10px;
		text-align: center;
		touch-action: manipulation;
	}

	.bensini-cds-root .bensini-cds-mode strong {
		width: 100%;
		font-size: clamp(11px, 3.15vw, 13px);
		line-height: 1.2;
		overflow-wrap: normal;
	}

	.bensini-cds-root .bensini-cds-mode small,
	.bensini-cds-root .bensini-cds-mode-label-desktop {
		display: none;
	}

	.bensini-cds-root .bensini-cds-mode-label-mobile {
		display: block;
	}

	.bensini-cds-root .bensini-cds-project-note {
		order: 1;
	}

	.bensini-cds-root .bensini-cds-purchase-bar {
		order: 2;
	}

	.bensini-cds-root .bensini-cds-mobile-preview:not([hidden]) {
		position: fixed;
		top: max(var(--bensini-cds-sticky-top), env(safe-area-inset-top));
		right: max(8px, env(safe-area-inset-right));
		z-index: 9990;
		display: grid;
		gap: 3px;
		width: clamp(104px, 29vw, 128px);
		max-height: 130px;
		padding: 5px;
		border: 1px solid var(--bensini-cds-border);
		border-radius: 11px;
		background: rgba(255, 253, 251, .96);
		box-shadow: 0 7px 22px rgb(48 44 41 / 18%);
		pointer-events: none;
		overflow: hidden;
	}

	.bensini-cds-root .bensini-cds-mobile-preview > span {
		color: var(--bensini-cds-text);
		font-size: 10px;
		font-weight: 700;
		line-height: 1.15;
		text-align: center;
	}

	.bensini-cds-root .bensini-cds-mobile-preview [data-mobile-preview-stage] {
		min-width: 0;
		max-height: 104px;
		border-radius: 7px;
		overflow: hidden;
	}

	.bensini-cds-root .bensini-cds-mobile-preview .bensini-cds-preview-stage {
		width: 100%;
		min-height: 0;
		max-height: 104px;
	}

	.bensini-cds-root .bensini-cds-mobile-preview .bensini-cds-preview-stage > img {
		width: 100%;
		max-height: 104px;
		object-fit: contain;
	}
}
