/*
 * Display-only layer. No WooCommerce calculation or checkout fields are
 * altered by these styles.
 */

[id="menu-currency-switcher"]:not(.gbvc-porto-ready) {
	visibility: hidden;
}

[id="menu-currency-switcher"].gbvc-porto-ready {
	display: flex;
	align-items: center;
	visibility: visible;
}

.gbvc-switcher {
	display: inline-flex;
	align-items: center;
}

.gbvc-currency-select {
	min-width: 82px;
	height: 34px;
	margin: 0;
	padding: 0 22px 0 6px;
	border: 0;
	border-radius: 0;
	background-color: transparent;
	color: inherit;
	font: inherit;
	font-weight: 600;
	line-height: 34px;
	cursor: pointer;
	box-shadow: none;
}

.gbvc-currency-select:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.gbvc-currency-select option {
	background: #fff;
	color: #222;
}

.gbvc-converted-amount {
	display: none;
	white-space: nowrap;
}

html.gbvc-ready.gbvc-foreign .gbvc-converted-amount {
	display: inline;
}

/* Product/catalog prices use the selected visual currency as the main view. */
html.gbvc-ready.gbvc-foreign body:not(.woocommerce-cart):not(.woocommerce-checkout) .price .woocommerce-Price-amount.amount {
	display: none !important;
}

html.gbvc-ready.gbvc-foreign body:not(.woocommerce-cart):not(.woocommerce-checkout) .price .gbvc-converted-amount {
	display: inline !important;
	margin: 0;
	font: inherit;
	font-weight: inherit;
	opacity: 1;
}

/* Cart, checkout and mini-cart retain the official EUR amount and add an estimate. */
html.gbvc-ready.gbvc-foreign body.woocommerce-cart .gbvc-converted-amount,
html.gbvc-ready.gbvc-foreign body.woocommerce-checkout .gbvc-converted-amount,
html.gbvc-ready.gbvc-foreign .widget_shopping_cart .gbvc-converted-amount,
html.gbvc-ready.gbvc-foreign .mini-cart .gbvc-converted-amount {
	display: block;
	margin-top: 2px;
	font-size: .78em;
	font-weight: 500;
	opacity: .72;
}

.gbvc-total-notice-row[hidden] {
	display: none !important;
}

.gbvc-total-notice-row td {
	padding-top: 10px !important;
}

.gbvc-payment-notice {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 15px 18px;
	border: 1px solid #edc4c4 !important;
	border-left: 6px solid #b32d2e !important;
	border-radius: 0 !important;
	background: #fff4f5 !important;
	box-shadow: none !important;
	color: #222 !important;
	font-size: 14px !important;
	font-weight: 400;
	line-height: 1.55 !important;
	text-align: left !important;
}

.gbvc-payment-notice span,
.gbvc-payment-notice strong {
	color: #222 !important;
}

.gbvc-payment-notice strong {
	font-weight: 700;
}

.gbvc-rate-date-wrap {
	display: block;
	margin-top: 3px;
	font-size: .88em;
	opacity: .72;
}

@media (max-width: 767px) {
	.gbvc-payment-notice {
		padding: 13px 14px;
		font-size: 14px !important;
		line-height: 1.55 !important;
	}

	.gbvc-currency-select {
		min-width: 76px;
		height: 32px;
		font-size: 13px;
		line-height: 32px;
	}
}


/* Landing-page preference popup. Newsletter popups keep the higher layer. */
.gbvc-welcome[hidden] { display: none !important; }
.gbvc-welcome { position: fixed; inset: 0; z-index: 99990; display: grid; place-items: center; padding: 18px; }
.gbvc-welcome__backdrop { position: absolute; inset: 0; background: rgba(20, 14, 18, .58); }
.gbvc-welcome__dialog { position: relative; z-index: 1; width: min(100%, 500px); box-sizing: border-box; padding: 46px 24px 24px; border-radius: 0; background: #fff; color: #050505; box-shadow: 0 18px 55px rgba(0,0,0,.24); }
.gbvc-welcome__close { position: absolute; top: 13px; right: 16px; border: 0; background: transparent; color: #555; font-size: 29px; font-weight: 200; line-height: 1; cursor: pointer; }
.gbvc-welcome h2 { margin: 0; font-size: clamp(23px, 4vw, 27px); font-weight: 400; line-height: 1.18; }
.gbvc-welcome__intro { margin: 14px 0 19px; font-size: 15px; line-height: 1.35; }
.gbvc-welcome__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.gbvc-welcome__field { position: relative; }
.gbvc-welcome label { display: block; margin: 0 0 7px; font-size: 14px; font-weight: 400; }
.gbvc-welcome__select, .gbvc-language-picker__trigger { width: 100%; height: 38px; padding: 0 4px; border: 0; border-bottom: 1px solid #d7d7d7; border-radius: 0; background: #fff; color: #050505; font: inherit; font-size: 16px; text-align: left; cursor: pointer; }
.gbvc-welcome__select { appearance: auto; }
.gbvc-language-picker__trigger { display: flex; align-items: center; justify-content: space-between; }
.gbvc-language-picker__trigger::after { content: '⌄'; font-size: 23px; line-height: 1; }
.gbvc-language-picker__menu { position: absolute; z-index: 2; top: 100%; left: 0; width: 100%; padding: 6px 0; background: #fff; border: 1px solid #d7d7d7; box-shadow: 0 9px 22px rgba(0,0,0,.12); }
.gbvc-language-picker__menu button { display: block; width: 100%; padding: 8px; border: 0; background: #fff; color: #050505; font: inherit; font-size: 15px; text-align: left; cursor: pointer; }
.gbvc-language-flags { display: inline-flex; gap: 2px; margin-right: 7px; vertical-align: middle; }
.gbvc-flag { display: block; width: 25px; height: 16px; background-position: center; background-repeat: no-repeat; background-size: cover; box-shadow: 0 0 0 1px rgba(0,0,0,.12); }
.gbvc-flag--uk { background-image: url('../flags/uk.svg'); }
.gbvc-flag--gr { background-image: url('../flags/gr.svg'); }
.gbvc-language-picker__menu button:hover { background: #f5f5f5; }
.gbvc-welcome__note { margin: 20px 0 13px; color: #555; font-size: 12px; }
.gbvc-welcome__continue { display: block; min-width: 125px; min-height: 46px; margin-left: auto; border: 0; border-radius: 0; background: #050505; color: #fff; font: inherit; font-size: 17px; font-weight: 400; cursor: pointer; }
.gbvc-welcome__continue:hover, .gbvc-welcome__continue:focus-visible { background: #333; }
html.gbvc-welcome-open { overflow: hidden; }
@media (max-width: 700px) { .gbvc-welcome { padding: 12px; } .gbvc-welcome__dialog { width: 100%; min-height: 0; padding: 31px 15px 14px; } .gbvc-welcome__close { top: 8px; right: 10px; font-size: 23px; } .gbvc-welcome h2 { font-size: 20px; } .gbvc-welcome__intro { margin: 8px 0 12px; font-size: 13px; } .gbvc-welcome__fields { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .gbvc-welcome label { margin-bottom: 4px; font-size: 12px; } .gbvc-welcome__select, .gbvc-language-picker__trigger { height: 31px; font-size: 13px; } .gbvc-language-picker__trigger::after { font-size: 17px; } .gbvc-flag { width: 18px; height: 12px; } .gbvc-language-flags { gap: 1px; margin-right: 3px; } .gbvc-welcome__note { margin: 11px 0 7px; font-size: 10px; } .gbvc-welcome__continue { width: auto; min-width: 104px; min-height: 37px; font-size: 14px; } }
@media (max-width: 360px) { .gbvc-welcome__fields { grid-template-columns: 1fr; gap: 14px; } }
