/* Gift voucher personalisation on the product page. */
.obb-single__form[data-obb-gift] .obb-gift-fields {
	min-width: 0;
	margin: 24px 0 20px;
	padding: 18px 20px 20px;
	border: 1px solid #d5deed;
	border-radius: 16px;
	background: #f7f9fd;
	color: #00154d;
}
.obb-single__form[data-obb-gift] .obb-gift-fields legend {
	max-width: 100%;
	padding: 0 8px;
	color: #00154d;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.3;
}
.obb-single__form[data-obb-gift] .obb-gift-fields p {
	margin: 0 0 18px;
	font-size: 14px;
	line-height: 1.5;
}
.obb-single__form[data-obb-gift] .obb-gift-fields__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 14px;
}
.obb-single__form[data-obb-gift] .obb-gift-fields label {
	display: block;
	min-width: 0;
	margin: 0 0 16px;
	color: #00154d;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
}
.obb-single__form[data-obb-gift] .obb-gift-fields label span { color: #ad2632; }
.obb-single__form[data-obb-gift] .obb-gift-fields input,
.obb-single__form[data-obb-gift] .obb-gift-fields textarea {
	display: block;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	margin: 7px 0 0;
	padding: 11px 13px;
	border: 1px solid #9facbf;
	border-radius: 8px;
	background: #fff;
	color: #00154d;
	font: inherit;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.4;
	box-shadow: none;
}
.obb-single__form[data-obb-gift] .obb-gift-fields textarea { min-height: 96px; resize: vertical; }
.obb-single__form[data-obb-gift] .obb-gift-fields input:focus-visible,
.obb-single__form[data-obb-gift] .obb-gift-fields textarea:focus-visible {
	border-color: #00154d;
	outline: 2px solid #00154d;
	outline-offset: 2px;
}
.obb-single__form[data-obb-gift] .obb-gift-fields small {
	display: block;
	color: #455779;
	font-size: 12px;
	line-height: 1.5;
}
.obb-single__form[data-obb-gift] .obb-single__cart { grid-template-columns: minmax(0, 1fr); }
.obb-single__form[data-obb-gift] .obb-single__quantity { display: none; }
@media (max-width: 640px) {
	.obb-single__form[data-obb-gift] .obb-gift-fields { padding: 16px; }
	.obb-single__form[data-obb-gift] .obb-gift-fields__grid { grid-template-columns: minmax(0, 1fr); gap: 0; }
}

/* Gift details in the full cart and the drawer. */
.obb-cart-page__gift-details { margin: 10px 0 12px; }
.obb-cart-page__gift-value {
	display: block;
	margin-bottom: 7px;
	color: #00154d;
	font-size: 17px;
	line-height: 1.3;
}
.obb-cart-page__gift-details dl {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	gap: 4px 12px;
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
}
.obb-cart-page__gift-details dt { color: #54627c; font-weight: 600; }
.obb-cart-page__gift-details dd { min-width: 0; margin: 0; color: #00154d; overflow-wrap: anywhere; }
.obb-cart-page__gift-count {
	align-self: center;
	padding: 7px 11px;
	border-radius: 999px;
	background: #f0f3f9;
	color: #00154d;
	font-size: 12px;
	font-weight: 700;
}
.obb-sidecart__gift-details { display: grid; gap: 3px; margin: 5px 0 9px; color: #455779; font-size: 13px; line-height: 1.4; }
.obb-sidecart__gift-value { color: #00154d; font-size: 17px; line-height: 1.3; }

/* Personalised voucher in the checkout summary. */
.obb-checkout-item__gift-details { margin: 9px 0 10px; }
.obb-checkout-item__gift-value { display: block; margin-bottom: 7px; color: #00154d; font-size: 16px; line-height: 1.3; }
.obb-checkout-item__gift-details dl {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	gap: 4px 10px;
	margin: 0;
	font-size: 12px;
	line-height: 1.5;
}
.obb-checkout-item__gift-details dt { color: #54627c; font-weight: 600; }
.obb-checkout-item__gift-details dd { min-width: 0; margin: 0; color: #00154d; overflow-wrap: anywhere; }
.obb-checkout-item__gift-count {
	align-self: center;
	padding: 6px 10px;
	border-radius: 999px;
	background: #f0f3f9;
	color: #00154d;
	font-size: 12px;
	font-weight: 700;
}

/* Order confirmation and account: keep gift details out of the image column. */
:is(.obb-checkout-page, .obb-account-page) .woocommerce table.woocommerce-table--order-details tbody td.product-name > .wc-item-meta {
	grid-column: 2;
	min-width: 0;
	width: 100%;
	margin: 10px 0 0;
	padding: 0;
	list-style: none;
}
:is(.obb-checkout-page, .obb-account-page) .woocommerce table.woocommerce-table--order-details tbody td.product-name > .wc-item-meta li {
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr);
	gap: 8px;
	min-width: 0;
	margin: 0 0 6px;
}
:is(.obb-checkout-page, .obb-account-page) .woocommerce table.woocommerce-table--order-details tbody td.product-name > .wc-item-meta .wc-item-meta-label {
	color: #455779;
}
:is(.obb-checkout-page, .obb-account-page) .woocommerce table.woocommerce-table--order-details tbody td.product-name > .wc-item-meta li p {
	min-width: 0;
	margin: 0;
	overflow-wrap: anywhere;
}
@media (max-width: 680px) {
	:is(.obb-checkout-page, .obb-account-page) .woocommerce table.woocommerce-table--order-details tbody td.product-name > .wc-item-meta {
		grid-column: 1 / -1;
	}
	:is(.obb-checkout-page, .obb-account-page) .woocommerce table.woocommerce-table--order-details tbody td.product-name > .wc-item-meta li {
		grid-template-columns: 1fr;
		gap: 0;
	}
}
