/* v3 product page — plaisio.gr Pdp (desktop + mobile). Own CSS written with plaisio's measurements. Mobile first; 48em / 64em / 80em. */

.pp { --pp-gray-line: #e0e0e0; position: relative; }
.pp .pp-ico, .pp [class$="__ico"], .pp [class*="__icon"], .pp .pp-tb__chev, .pp .pp-block__img { display: block; flex-shrink: 0; }
.pp .p-sr, .pp .screen-reader-text { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.pp .pp-fine { margin: .625rem 0 0; font-size: .75rem; line-height: 1.3; color: var(--p-gray-text); }
.pp-anchor { scroll-margin-top: 7.5rem; }
@media print, screen and (min-width: 48em) { .pp-anchor { scroll-margin-top: 13.75rem; } }
@media screen and (min-width: 64em) { .pp-anchor { scroll-margin-top: 11.25rem; } }
@media screen and (min-width: 80em) { .pp-anchor { scroll-margin-top: 12.5rem; } }

/* ---------- Layout (Pdp) ---------- */
.pp-layout { max-width: 81.25rem; margin: 0 auto; padding: .625rem; background: #fff; }
@media print, screen and (min-width: 48em) { .pp-layout { padding-top: .9375rem; padding-bottom: .9375rem; } }
@media screen and (min-width: 64em) { .pp-layout { padding-top: 1.25rem; padding-bottom: 1.25rem; } }
.pp-top { width: 100%; margin: 1.25rem 0; }
@media print, screen and (min-width: 48em) and (max-width: 63.99875em) { .pp-top { padding: 0 3.9375rem; } }
@media screen and (min-width: 64em) { .pp-top { display: flex; margin: 1.875rem 0; } .pp-top__left { flex-grow: 1; min-width: 0; } }
.pp-top__inner { position: relative; margin-bottom: 1.25rem; }
@media screen and (min-width: 64em) { .pp-top__inner { position: sticky; top: 11.5625rem; margin-bottom: 0; } }
@media screen and (min-width: 80em) { .pp-top__inner { top: 13.4375rem; } }
.pp-top__right { margin: 0 auto; max-width: 38.75rem; }
@media screen and (min-width: 64em) { .pp-top__right { --w: 25.75rem; --pi: .625rem; flex-shrink: 0; width: calc(var(--w) + var(--pi) * 2); max-width: none; margin-bottom: -.625rem; padding-inline: var(--pi); } }
@media screen and (min-width: 80em) { .pp-top__right { --w: 32.9375rem; --pi: .9375rem; } }
.pp-sec { margin-bottom: 0; }
@media print, screen and (min-width: 48em) { .pp-sec { margin-bottom: 1.25rem; } }
@media screen and (min-width: 64em) { .pp-sec { margin-bottom: 3.75rem; } }
.pp-sec-h { margin: 0 0 1.25rem; font-weight: 800; font-size: 1.25rem; line-height: 1.2; text-align: center; }
@media screen and (min-width: 64em) { .pp-sec-h { font-size: 1.375rem; } }
@media screen and (min-width: 80em) { .pp-sec-h { font-size: 1.75rem; } }

/* ---------- Breadcrumb ---------- */
.pp-crumbs { margin: .3125rem 0 1.25rem; }
@media print, screen and (min-width: 48em) { .pp-crumbs { margin-bottom: 1.875rem; } }
.pp-crumbs ol { display: flex; flex-wrap: wrap; margin: 0; padding: 0; }
.pp-crumbs li { display: none; margin: 0; padding: 0; list-style: none; font-size: .8125rem; line-height: 1; white-space: nowrap; vertical-align: middle; }
.pp-crumbs a, .pp-crumbs__last { color: var(--p-header-blue); }
@media (hover: hover) { .pp-crumbs a:hover { text-decoration: underline; } }
.pp-crumbs li:nth-last-child(2), .pp-crumbs li:only-child { display: inline-block; }
.pp-crumbs li:nth-last-child(2) a::before { content: ""; display: inline-block; vertical-align: middle; width: .6875rem; height: .6875rem; margin: -.125rem .3125rem 0 -.125rem; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M10.5 2 4.5 8l6 6' fill='none' stroke='%23000' stroke-width='2.4'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M10.5 2 4.5 8l6 6' fill='none' stroke='%23000' stroke-width='2.4'/%3E%3C/svg%3E") center / contain no-repeat; }
@media screen and (min-width: 64em) {
	.pp-crumbs li { display: inline; position: relative; }
	.pp-crumbs li:nth-last-child(2) a::before { display: none; }
	.pp-crumbs li::after { content: ""; display: inline-block; vertical-align: middle; width: .6875rem; height: .6875rem; margin: -.125rem .1875rem 0; background: var(--p-header-blue); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m5.5 2 6 6-6 6' fill='none' stroke='%23000' stroke-width='2.4'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m5.5 2 6 6-6 6' fill='none' stroke='%23000' stroke-width='2.4'/%3E%3C/svg%3E") center / contain no-repeat; }
	.pp-crumbs li:last-child::after { display: none; }
}

/* ---------- Title + code (TitleAndSku) + price history (ReviewsAndPriceHistory) ---------- */
@media print, screen and (min-width: 48em) and (max-width: 63.99875em) { .pp-title, .pp-rph, .pp-tt { margin-left: -3.9375rem; margin-right: -3.9375rem; } }
@media screen and (min-width: 80em) { .pp-title { padding-right: 3.9375rem; } }
.pp-title__h { margin: 0 0 .3em; font-weight: 800; font-size: 1.1875rem; line-height: 1.1; }
@media print, screen and (min-width: 48em) { .pp-title__h { font-size: 1.75rem; } }
.pp-title__sku { display: block; margin-bottom: .125rem; font-size: .75rem; line-height: 1; color: #9e9e9e; }
@media print, screen and (min-width: 48em) { .pp-title__sku { margin-bottom: .4375rem; font-size: 1rem; } }
.pp-rph { display: flex; flex-wrap: wrap; align-items: center; gap: .4375rem 0; margin-top: .5rem; }
.pp-phist { display: flex; align-items: center; justify-content: center; margin-right: .75rem; font-size: .75rem; line-height: .75rem; color: #33a64c; cursor: pointer; }
.pp-phist .pp-ico { width: 1.125rem; height: 1.125rem; margin-right: .3125rem; }
.pp-phist:hover { text-decoration: underline dashed; }
.pp-rph__stars { display: inline-flex; align-items: center; gap: .3125rem; margin-right: .75rem; font-size: .75rem; color: #000; }

/* ---------- Stars ---------- */
.pp-stars { position: relative; display: inline-block; font-size: .875rem; line-height: 1; letter-spacing: .08em; color: #d6d6d6; white-space: nowrap; }
.pp-stars::before { content: "★★★★★"; }
.pp-stars__fill { position: absolute; top: 0; left: 0; height: 100%; overflow: hidden; color: #f6a800; }
.pp-stars__fill::before { content: "★★★★★"; }
.pp-stars--big { font-size: 1.375rem; }

/* ---------- Tag pills + compare / wishlist (Pdp_topLeftTop, Tags, Tag) ---------- */
.pp-tt { display: flex; align-items: flex-start; justify-content: flex-end; gap: .625rem; margin-top: .4375rem; padding-bottom: .625rem; }
@media print, screen and (min-width: 48em) { .pp-tt { margin-top: 1.375rem; } }
@media screen and (min-width: 80em) { .pp-tt { padding-right: 3rem; } }
.pp-tags, .pp-tags .x6sf-pbadges, .pp-tags .x6sf-tagchips { display: flex; flex-wrap: wrap; gap: .625rem; }
.pp-tags { margin-right: auto; }
.pp-tag, .pp-tags .x6sf-pbadge, .pp-tags .x6sf-tagchips a, .pp-tags .x6sf-cond { display: flex; align-items: center; gap: .3125rem; padding: .3125rem .6875rem; font-size: .75rem; line-height: 1.2; text-transform: uppercase; text-align: left; color: var(--p-blue); background-color: #f2f6ff; border: .0625rem solid #e0e0e0; border-radius: .3125rem; user-select: none; }
.pp-tag--offer, .pp-tags .x6sf-pbadge--purple { color: #5b2bb5; background-color: #efe7ff; border-color: #e3d6ff; }
.pp-tags .x6sf-pbadge--red { color: #c11600; background-color: #fff0ee; border-color: #f6d4cf; }
.pp-tags .x6sf-pbadge--green, .pp-tags .x6sf-cond { color: #019379; background-color: #e9f8f4; border-color: #c9ece2; }
.pp-tags .x6sf-pbadge--orange { color: #a85300; background-color: #fff3e3; border-color: #f6dfc0; }
.pp-tags .x6sf-pbadge--black { color: #000; background-color: #f2f2f2; }
.pp-tags .x6sf-pbadge .x6l, .pp-tags .x6sf-cond .x6l { display: inline; }
.pp-tt__icons { display: flex; align-items: center; gap: .625rem; }
.pp-tt__icons .x6sf-iconbtn { display: flex; align-items: center; justify-content: center; width: 1.375rem; height: 1.375rem; color: #000; }
.pp-tt__icons .x6sf-iconbtn svg { width: 100%; height: 100%; }
.pp-tt__icons .x6sf-iconbtn.is-on { color: var(--p-blue); }

/* ---------- Gallery (Slider, ProductImage, ZoomSlider) ---------- */
.pp-img { position: relative; aspect-ratio: 1; margin: 0 auto; background-color: #f9f9f9; overflow: hidden; }
.pp-img img { display: block; width: 100%; height: 100%; object-fit: contain; }
.pp-gal__slides { position: relative; max-width: 22.1875rem; margin: 0 auto .9375rem; padding: 0 1.875rem; }
@media print, screen and (min-width: 48em) { .pp-gal__slides { max-width: 38.875rem; margin-bottom: .625rem; padding: 0; } }
@media screen and (min-width: 80em) { .pp-gal__slides { max-width: 39.8125rem; margin-bottom: 1.25rem; } }
.pp-gal__main { aspect-ratio: 1; }
.pp-gal__main .swiper-wrapper { align-items: center; }
.pp-gal__zoombtn { display: block; width: 100%; height: 100%; cursor: auto; }
@media screen and (min-width: 64em) { .pp-gal__zoombtn { cursor: zoom-in; } }
.pp-gal__zoombtn:focus-visible { outline: 1px solid #2da0db; }
.pp-gal__thumbs { position: relative; max-width: 22.75rem; margin: 0 auto; }
@media print, screen and (min-width: 48em) { .pp-gal__thumbs { max-width: 39.6875rem; } }
@media screen and (min-width: 64em) { .pp-gal__thumbs { max-width: 26.875rem; } }
.pp-gal__tc { margin: 0 auto; overflow: hidden; }
.pp-gal__tc .swiper-wrapper { margin: -.3125rem 0; }
.pp-gal__tc .swiper-slide { position: relative; width: 25%; padding: .3125rem; cursor: pointer; }
@media print, screen and (min-width: 48em) { .pp-gal__tc .swiper-slide { width: 20%; } }
.pp-gal__tc .swiper-slide::after { content: ""; position: absolute; inset: 5px; border: 1px solid #e0e0e0; border-radius: .375rem; pointer-events: none; transition: border-color .15s; }
.pp-gal__tc .swiper-slide-thumb-active::after { border-color: #8a8a8a; }
.pp-gal__thumb { border-radius: .375rem; overflow: hidden; }
.pp-gal__nav { position: absolute; top: 0; z-index: 10; display: flex; align-items: center; justify-content: center; width: 1.5625rem; height: 100%; color: #9e9e9e; background: transparent; }
.pp-gal__nav .pp-ico { width: 1.5rem; height: 1.5rem; }
.pp-gal__nav--prev { left: 0; }
.pp-gal__nav--next { right: 0; }
.pp-gal__nav.swiper-button-disabled { opacity: .35; cursor: default; }
.pp-gal__nav.swiper-button-lock { display: none; }
.pp-gal__thumbs .pp-gal__nav { display: none; }
@media print, screen and (min-width: 48em) {
	.pp-gal__nav--mobile { display: none; }
	.pp-gal__thumbs .pp-gal__nav { display: flex; }
	.pp-gal__thumbs .pp-gal__nav--prev { left: -1.5625rem; }
	.pp-gal__thumbs .pp-gal__nav--next { right: -1.5625rem; }
}
.pp-zoom { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; background: #fff; }
.pp-zoom[hidden] { display: none; }
.pp-zoom__slider { width: 100%; height: 100%; }
.pp-zoom__slider .swiper-wrapper { align-items: center; }
.pp-zoom__slider .swiper-slide { display: flex; align-items: center; justify-content: center; height: 100%; }
.pp-zoom__img { display: block; max-width: 100%; max-height: 100vh; margin: auto; object-fit: contain; touch-action: none; }
.pp-zoom__close { position: absolute; top: 1.25rem; right: 1.25rem; z-index: 16; display: flex; color: #000; background: #fff; }
.pp-zoom__close .pp-ico { width: 2.75rem; height: 2.75rem; }
@media print, screen and (min-width: 48em) { .pp-zoom__close { top: 2.5rem; } }
@media (min-width: 1201px) { .pp-zoom__close { right: 2.5rem; } }
.pp-zoom__nav { position: absolute; top: 50%; z-index: 2; display: flex; transform: translateY(-50%); color: #000; }
.pp-zoom__nav .pp-ico { width: 3.25rem; height: 3.25rem; }
.pp-zoom__nav--prev { left: 1.25rem; }
.pp-zoom__nav--next { right: 1.25rem; }
.pp-zoom__nav.swiper-button-disabled { opacity: .3; pointer-events: none; }
html.pp-lock { overflow: hidden; }
/* Gallery videos (VideoSlide / VideoThumb): click-to-play facade, YouTube thumbnail + play badge. */
.pp-gal__thumb { display: block; width: 100%; padding: 0; border: 0; background: none; cursor: pointer; }
.pp-gal__thumb:focus-visible { outline: 2px solid #2da0db; outline-offset: 2px; }
.pp-gal__thumb--video { position: relative; display: flex; align-items: center; justify-content: center; aspect-ratio: 1; background: #fff; }
.pp-gal__thumb--video img { display: block; width: 100%; height: 56.25%; object-fit: cover; }
.pp-gal__thumb--video:not(:has(img)) { background: #1d1d1b; }
.pp-play { position: absolute; top: 50%; left: 50%; width: 4rem; height: 2.8rem; background: rgba(23, 23, 23, .78); border-radius: .75rem; transform: translate(-50%, -50%); transition: background-color .2s; pointer-events: none; }
.pp-play::after { content: ""; position: absolute; top: 50%; left: 54%; border-style: solid; border-width: .65rem 0 .65rem 1.1rem; border-color: transparent transparent transparent #fff; transform: translate(-50%, -50%); }
.pp-play--sm { width: 1.9rem; height: 1.35rem; border-radius: .4rem; }
.pp-play--sm::after { border-width: .33rem 0 .33rem .56rem; }
.pp-vid { position: relative; display: flex; align-items: center; width: 100%; aspect-ratio: 1; margin: auto; }
.pp-vid__btn { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; padding: 0; overflow: hidden; border: 0; background: #1d1d1b; cursor: pointer; }
.pp-vid__btn img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pp-vid__btn:hover .pp-play, .pp-vid__btn:focus-visible .pp-play { background: #e30613; }
.pp-vid__btn:focus-visible { outline: 2px solid #2da0db; outline-offset: 2px; }
.pp-vid__player { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; background: #000; }
.pp-vid--short .pp-vid__btn, .pp-vid--short .pp-vid__player { width: auto; height: 100%; max-width: 100%; aspect-ratio: 9 / 16; margin: 0 auto; }
.pp-gal__vslide { display: flex; align-items: center; height: auto; }
.pp-gal__main .pp-gal__vslide { aspect-ratio: 1; }
.pp-zoom__vslide .pp-vid { width: 80%; max-width: 70rem; height: 100%; aspect-ratio: auto; }
.pp-zoom__vslide .pp-vid--short { width: auto; height: 80vh; }
@media screen and (max-width: 47.99875em) { .pp-zoom__vslide .pp-vid { width: calc(100% - 5.5rem); } }
.pp-zoom__slider .swiper-zoom-container { width: 100%; height: 100%; }
.pp-zoom__count { position: absolute; top: 1.6rem; left: 1.25rem; z-index: 16; font-size: .9375rem; color: #555; font-variant-numeric: tabular-nums; }
@media print, screen and (min-width: 48em) { .pp-zoom__count { top: 2.9rem; left: 2.5rem; } }
@media screen and (max-width: 47.99875em) { .pp-zoom__nav .pp-ico { width: 2.25rem; height: 2.25rem; } .pp-zoom__nav--prev { left: .25rem; } .pp-zoom__nav--next { right: .25rem; } }
/* Description video tile (plaisio «text-video»): the video takes the image side. */
.pp-mdt--video .pp-mdt__imagewrap { display: flex; align-items: center; background: #000; }
.pp-mdt__imagewrap .pp-vid, .pp-mdg__imagewrap .pp-vid { aspect-ratio: auto; }
.pp-mdt__imagewrap .pp-vid img, .pp-mdg__imagewrap .pp-vid img { width: 100%; height: 100%; min-height: 0; max-width: none; aspect-ratio: auto; object-fit: cover; }

/* ---------- Price (PriceLayoutB2C, PriceB2C, SavingsPdp, PriceTypeIndication, BannerPayIn4, ManufacturedLocally) ---------- */
.pp-price { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) repeat(2, minmax(0, auto)) minmax(0, 1fr); align-items: center; justify-content: center; margin: 2.5rem 0 1.875rem; }
@media screen and (min-width: 64em) { .pp-price { grid-template-columns: minmax(0, auto) minmax(0, 1fr); justify-content: flex-start; margin-top: 0; } }
.pp-price__left { grid-column-start: 2; display: flex; flex-direction: column; gap: .125rem; width: fit-content; }
@media screen and (min-width: 64em) { .pp-price__left { grid-column-start: 1; } }
.pp-price__box { line-height: 1.1; }
.pp-price__from { margin-bottom: .125rem; font-size: .75rem; color: #000; }
.pp-price__from s { text-decoration: line-through; }
@media print, screen and (min-width: 48em) { .pp-price__from { font-size: 1rem; } }
.pp-price__now { font-weight: 800; font-size: 1.6875rem; white-space: nowrap; }
.pp-price__now small { font-weight: 400; font-size: .45em; }
@media print, screen and (min-width: 48em) { .pp-price__now { font-size: 2.4375rem; } }
.pp-save { display: flex; flex-flow: column wrap; border-radius: .25rem; overflow: hidden; }
.pp-save__text, .pp-pti { display: flex; align-items: center; justify-content: center; gap: .25rem; width: 100%; min-height: 1.5625rem; padding-inline: .75rem; font-weight: 800; font-size: .75rem; background-color: #fbed13; border-radius: .25rem; }
@media print, screen and (min-width: 48em) { .pp-save__text { font-size: 1rem; } }
.pp-pti--pro { background-color: var(--p-lilac); }
.pp-pay { grid-column-start: 3; display: flex; align-items: center; }
@media screen and (min-width: 64em) { .pp-pay { grid-column-start: 2; } }
.pp-pay__or { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .25rem; margin: 0 .9375rem; font-size: .75rem; line-height: 1; }
@media screen and (min-width: 23.4375em) { .pp-pay__or { margin: 0 1.25rem; } }
@media screen and (min-width: 64em) { .pp-pay__or { margin: 0 2.5rem; } }
.pp-pay__or::before, .pp-pay__or::after { content: ""; width: 1px; height: 2.75rem; background: #000; }
.pp-pay__content { display: flex; flex-direction: column; align-items: center; gap: .25rem; text-align: center; }
.pp-pay__text { padding: .125rem 0; font-size: .75rem; line-height: 1.2; }
.pp-pay__text b { font-weight: 800; font-size: .875rem; }
.pp-pay__badge { display: inline-flex; align-items: center; gap: .375rem; padding: .25rem .625rem; font-size: .8125rem; border: 1px solid #e0e0e0; border-radius: .3125rem; }
.pp-pay__badge .pp-ico { width: 1.375rem; height: 1.375rem; color: var(--p-blue); }
.pp-price__bottom { grid-column: span 4; display: flex; flex-direction: column; gap: .9375rem; width: 100%; margin-top: .9375rem; }
@media screen and (min-width: 64em) { .pp-price__bottom { grid-column: span 2; max-width: 26.25rem; } }
.pp-local { display: flex; align-items: center; gap: .3125rem; margin: 0; font-size: .75rem; line-height: 1.2; letter-spacing: -.02em; }
.pp-local .pp-ico { width: .9375rem; height: .9375rem; }
.pp-local--pro a { color: var(--p-blue); text-decoration: underline; }

/* ---------- Quantity + Προσθήκη (AddToCartLayout, QuantitySelector, PdpAddToCartButton) ---------- */
@media print, screen and (min-width: 48em) { .pp-buy { margin-bottom: 1.25rem; padding-bottom: 1.25rem; border-bottom: .0625rem solid #e0e0e0; } }
@media screen and (min-width: 64em) { .pp-buy { max-width: 26.25rem; } }
.pp-buy__extra { margin-bottom: 1.25rem; font-size: .875rem; }
.woocommerce div.pp .pp-buy form.cart { margin: 0; padding: 0; }
.woocommerce div.pp .pp-buy form.cart::before, .woocommerce div.pp .pp-buy form.cart::after { display: none; }
/* the bar itself: simple products (form.cart), variations (.woocommerce-variation-add-to-cart), not for sale (.pp-buy__fixed) */
.woocommerce div.pp .pp-buy form.cart:not(.variations_form):not(.grouped_form), .woocommerce div.pp .pp-buy .woocommerce-variation-add-to-cart, .pp-buy__fixed, .woocommerce div.pp .pp-buy .grouped_form .pp-grouped-bar {
	position: fixed; left: 0; bottom: 0; z-index: 99; display: flex; flex-wrap: wrap; align-items: center; gap: .625rem; width: 100%; padding: .625rem; background-color: #fff; box-shadow: 0 -4px 4px 0 rgba(0, 0, 0, .25);
}
@media print, screen and (min-width: 48em) {
	.woocommerce div.pp .pp-buy form.cart:not(.variations_form):not(.grouped_form), .woocommerce div.pp .pp-buy .woocommerce-variation-add-to-cart, .pp-buy__fixed {
		position: relative; z-index: auto; gap: 1.875rem .625rem; padding: 0; box-shadow: none;
	}
}
@media print, screen and (max-width: 47.99875em) { body.pp-page { padding-bottom: 4.75rem; } }
.woocommerce div.pp .pp-buy form.cart div.quantity, .pp-qty-off {
	--b: #e0e0e0; float: none; display: inline-flex; flex-shrink: 0; width: 5.0625rem; height: 3.4375rem; margin: 0; color: #000; border: .0625rem solid var(--b); border-radius: .625rem; transition: border-color .1s ease-out;
}
@media print, screen and (min-width: 48em) { .woocommerce div.pp .pp-buy form.cart div.quantity, .pp-qty-off { width: 6.0625rem; } }
.woocommerce div.pp .pp-buy form.cart div.quantity:has(input:focus-visible) { --b: #cacaca; }
.woocommerce div.pp .pp-buy form.cart div.quantity:has(input[type="hidden"]) { display: none; }
.pp .pp-qty__btn, .pp-qty-off > span:first-child, .pp-qty-off > span:last-child { position: relative; flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 1.4375rem; height: 100%; color: inherit; border: 0 solid var(--b, #e0e0e0); border-radius: 0; }
@media print, screen and (min-width: 48em) { .pp .pp-qty__btn, .pp-qty-off > span:first-child, .pp-qty-off > span:last-child { width: 1.8125rem; } }
.pp .pp-qty__btn--minus, .pp-qty-off > span:first-child { border-right-width: .0625rem; }
.pp .pp-qty__btn--plus, .pp-qty-off > span:last-child { border-left-width: .0625rem; }
.pp .pp-qty__btn::before, .pp .pp-qty__btn--plus::after, .pp-qty-off > span:first-child::before, .pp-qty-off > span:last-child::before, .pp-qty-off > span:last-child::after { content: ""; position: absolute; top: 50%; left: 50%; width: .5625rem; height: .09375rem; background: currentColor; transform: translate(-50%, -50%); }
.pp .pp-qty__btn--plus::after, .pp-qty-off > span:last-child::after { transform: translate(-50%, -50%) rotate(90deg); }
.pp .pp-qty__btn[disabled] { color: #d2d2d2; cursor: default; }
.woocommerce div.pp .pp-buy form.cart div.quantity .qty { flex-grow: 1; width: auto; min-width: 0; height: 100%; margin: 0; padding: 0; font: inherit; font-size: 1rem; color: inherit; text-align: center; background: transparent; border: none !important; border-radius: 0; box-shadow: none; -moz-appearance: textfield; appearance: textfield; }
.woocommerce div.pp .pp-buy form.cart div.quantity .qty::-webkit-outer-spin-button, .woocommerce div.pp .pp-buy form.cart div.quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.pp-qty-off { color: #d0d0d0; }
.pp-qty-off > span:nth-child(2) { display: flex; flex-grow: 1; align-items: center; justify-content: center; }
.woocommerce div.pp .pp-buy form.cart .single_add_to_cart_button, .pp-buy__off {
	float: none; flex: 1 1 0; min-width: 0; display: block; margin: 0; padding: 1.21875rem .3125rem; font: inherit; font-weight: 400; font-size: 1rem; line-height: 1; color: #fff; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; background-color: var(--p-green); border: 0; border-radius: .625rem; opacity: 1; cursor: pointer; transition: filter .1s;
}
.woocommerce div.pp .pp-buy form.cart .single_add_to_cart_button:hover { background-color: var(--p-green); color: #fff; filter: brightness(.96); }
.woocommerce div.pp .pp-buy form.cart .single_add_to_cart_button.disabled, .woocommerce div.pp .pp-buy form.cart .single_add_to_cart_button:disabled, .pp-buy__off { color: #fff; background-color: #9e9e9e; opacity: 1; cursor: not-allowed; }
.woocommerce div.pp .pp-buy form.cart .single_add_to_cart_button.loading { opacity: .7; }
html.x6-en .woocommerce div.pp .pp-buy form.cart .single_add_to_cart_button { font-size: 0; }
html.x6-en .woocommerce div.pp .pp-buy form.cart .single_add_to_cart_button::before { content: "Add"; font-size: 1rem; }
/* variations (VariantSelectorPdp) */
.woocommerce div.pp .pp-buy form.variations_form { display: block; }
.woocommerce div.pp .pp-buy table.variations { display: block; width: 100%; margin: 0 0 1.25rem; border: 0; }
@media print, screen and (min-width: 48em) { .woocommerce div.pp .pp-buy table.variations { margin-bottom: 1.875rem; } }
.woocommerce div.pp .pp-buy table.variations tbody, .woocommerce div.pp .pp-buy table.variations tr, .woocommerce div.pp .pp-buy table.variations th, .woocommerce div.pp .pp-buy table.variations td { display: block; padding: 0; border: 0; line-height: 1.3; text-align: left; }
.woocommerce div.pp .pp-buy table.variations tr + tr { margin-top: 1rem; }
.woocommerce div.pp .pp-buy table.variations th.label { margin-bottom: .5rem; font-weight: 800; font-size: .875rem; }
.woocommerce div.pp .pp-buy table.variations th.label label { font-weight: 800; }
.woocommerce div.pp .pp-buy table.variations select { min-width: 12rem; max-width: 100%; margin: 0; padding: .625rem .75rem; font: inherit; font-size: .875rem; border: 1px solid #e0e0e0; border-radius: .625rem; background-color: #fff; }
.woocommerce div.pp .pp-buy table.variations select.pp-swselect { display: none; }
.pp-swatches { display: flex; flex-wrap: wrap; gap: .625rem; }
.pp-swatches button { min-width: 4.5rem; padding: .625rem .9375rem; font-size: .8125rem; line-height: 1.1; border: 1px solid #e0e0e0; border-radius: .625rem; background: #fff; transition: border-color .1s; }
.pp-swatches button:hover { border-color: #9e9e9e; }
.pp-swatches button.is-on { border-color: var(--p-blue); box-shadow: inset 0 0 0 1px var(--p-blue); }
.pp-swatches button:disabled { color: #9e9e9e; text-decoration: line-through; cursor: default; }
.woocommerce div.pp .pp-buy .reset_variations { display: inline-block; margin-top: .625rem; font-size: .75rem; color: var(--p-blue); text-decoration: underline; }
.woocommerce div.pp .pp-buy .single_variation_wrap .woocommerce-variation-price { display: none; }
.woocommerce div.pp .pp-buy .single_variation_wrap .woocommerce-variation-description { font-size: .8125rem; }
.woocommerce div.pp .pp-buy .single_variation_wrap .woocommerce-variation-availability p.stock { margin: 0 0 .625rem; font-size: .75rem; }
.woocommerce div.pp .pp-buy p.stock { display: none; }
.woocommerce div.pp .pp-buy .woocommerce-variation-availability p.stock { display: block; }
/* grouped products */
.woocommerce div.pp .pp-buy .grouped_form table { width: 100%; margin-bottom: 1rem; border-collapse: collapse; font-size: .875rem; }
.woocommerce div.pp .pp-buy .grouped_form td { padding: .5rem .25rem; border-bottom: 1px solid #e8e8e8; vertical-align: middle; }
.woocommerce div.pp .pp-buy .grouped_form .single_add_to_cart_button { width: 100%; }

/* ---------- Delivery cards (AvailabilityPdp, Block, AdditionalInfo) ---------- */
.pp-avail__blocks { display: flex; gap: .625rem; padding-bottom: .0625rem; overflow-x: auto; background: linear-gradient(90deg, #fff 30%, transparent), linear-gradient(270deg, #fff 30%, transparent) 100%, linear-gradient(90deg, rgba(0, 0, 0, .1) 0, transparent 50%), linear-gradient(270deg, rgba(0, 0, 0, .1) 0, transparent 50%) 100%; background-size: 40px 100%, 40px 100%, 50px 100%, 50px 100%; background-repeat: no-repeat; background-attachment: local, local, scroll, scroll; }
.pp-block { flex-shrink: 0; display: flex; flex-direction: column; align-items: stretch; width: 6.125rem; padding: .625rem .5rem; font-size: .6875rem; line-height: 1.1; text-align: left; background: #fff; border: 1px solid #e0e0e0; border-radius: .625rem; }
.pp-block.is-active { border-color: var(--p-blue); }
.pp-block__img { width: 2rem; height: 2rem; margin-bottom: 2.0625rem; color: var(--p-blue); }
.pp-block__name { display: flex; min-height: 2.2em; }
.pp-block__name > span { font-weight: 800; }
.pp-block__msg { min-height: 2.2em; }
.pp-block__msg--blue { color: var(--p-blue); }
.pp-block__msg--red { color: #c11600; }
.pp-block__msg--orange { color: #f67600; }
.pp-avail__info { min-height: 2.2em; margin: .9375rem 0 1.25rem; font-size: .8125rem; line-height: 1.1; }
.pp-avail__info[hidden] { display: none; }
.pp-save[hidden], .pp-price__from[hidden] { display: none; }

/* ---------- Accordions (Blocks, ToggleBlock, ToggleBlockInstallments, ToggleIcon) ---------- */
.pp-blocks { display: flex; flex-direction: column; gap: .625rem; }
.pp-tb { --gap: .625rem; --icw: 1.625rem; --mh: 2.25rem; width: 100%; background-color: #f5f5f5; border-radius: .625rem; }
@media print, screen and (min-width: 48em) { .pp-tb { --icw: 1.875rem; } }
.pp-tb--border { border: 1px solid #e9e9e9; }
.pp-tb__btn { display: grid; grid-template-areas: "a b d"; grid-template-columns: 0fr 1fr 0fr; gap: var(--gap); width: 100%; padding: .625rem 1.25rem .625rem .9375rem; font-weight: 800; font-size: .875rem; line-height: 1.1; text-align: left; }
.pp-tb__left, .pp-tb__text, .pp-tb__right { display: flex; flex-direction: column; justify-content: center; }
.pp-tb__left { grid-area: a; width: var(--icw); height: var(--mh); }
.pp-tb__icon { width: 1.25rem; height: 1.25rem; }
@media print, screen and (min-width: 48em) { .pp-tb__icon { width: 1.5rem; height: 1.5rem; } }
.pp-tb__text { grid-area: b; min-height: var(--mh); margin-right: auto; word-break: break-word; }
.pp-tb__desc { display: block; margin-top: .1875rem; font-weight: 400; font-size: .6875rem; line-height: 1.3; color: #555; }
.pp-tb__right { grid-area: d; height: var(--mh); }
@media print, screen and (min-width: 48em) { .pp-tb__right { padding-left: .3125rem; } }
.pp-tb__chev { width: 1rem; height: 1rem; transition: transform .15s; }
@media print, screen and (min-width: 48em) { .pp-tb__chev { width: 1.25rem; height: 1.25rem; } }
.pp-tb.is-open .pp-tb__chev { transform: rotate(180deg); }
.pp-tb__content, .pp-tb__summary { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .15s ease-out; }
.pp-tb.is-open .pp-tb__content, .pp-tb:not(.is-open) .pp-tb__summary { grid-template-rows: 1fr; }
@media (prefers-reduced-motion) { .pp-tb__content, .pp-tb__summary { transition: none; } }
.pp-tb__inner { overflow: hidden; }
.pp-tb__inner > div { padding: .3125rem 1.25rem 1.25rem .9375rem; font-size: .8125rem; line-height: 1.35; }
@media print, screen and (min-width: 48em) { .pp-tb__inner > div { padding-top: 0; padding-left: calc(.9375rem + var(--icw) + var(--gap)); } }
.pp-tb__inner p { margin: 0 0 .625rem; }
.pp-tb__inner p:last-child { margin-bottom: 0; }
.pp-tb__links { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; }
.pp-tb__links a { color: var(--p-blue); text-decoration: underline; }
.pp-inst__sum { margin: 0; padding: 0; list-style: none; font-size: .6875rem; }
.pp-inst__sum button { color: var(--p-blue); text-decoration: underline; text-align: left; }
.pp-inst__methods { display: grid; grid-template-columns: 1fr; margin: 0 0 1.25rem; padding: .3125rem; list-style: none; font-size: .75rem; line-height: 1; background-color: #e0dddd; border-radius: 3.125rem; }
.pp-inst__methods li { padding: .4375rem .25rem; text-align: center; border-radius: 3.125rem; }
.pp-inst__methods li.is-on { background-color: #fff; box-shadow: 1px 1px 4px 0 rgba(0, 0, 0, .25); }
.pp-inst__table { width: 100%; font-size: .75rem; color: #707070; border-collapse: collapse; }
.pp-inst__table th { padding: 0 0 .5rem; font-weight: 400; text-align: left; }
.pp-inst__table th + th, .pp-inst__table td + td { text-align: right; }
.pp-inst__select { padding: .375rem .5rem; font: inherit; font-size: .8125rem; color: #000; border: 1px solid #e0e0e0; border-radius: .3125rem; background: #fff; }
.pp-inst__amount { font-weight: 800; font-size: .9375rem; color: #000; }
.pp-gifts { display: flex; flex-direction: column; gap: 1rem; }
.pp-gift { display: flex; gap: .625rem; max-width: 18.75rem; }
.pp-gift__img { width: 5rem; flex-shrink: 0; }
.pp-gift__content h3 { margin: 0 0 .5rem; font-size: .8125rem; line-height: 1.1; }
.pp-gift__content a { color: #000; }
.pp-gift__price { display: flex; gap: .625rem; font-size: .875rem; }
.pp-gift__price b { color: #b544a0; }

/* ---------- Grey highlights band (Highlights, BrandLogo, DigitalAssetsAndPrint, ShortProductDescription, Warranty, HighlightedCharacteristics) ---------- */
.pp-hl { --c: calc((100% - 110px) / 12); padding: 2rem var(--c) 1.75rem; background-color: #f5f5f5; }
@media print, screen and (min-width: 48em) { .pp-hl { padding-top: 2.8125rem; padding-bottom: 2.8125rem; } }
@media screen and (min-width: 64em) { .pp-hl { display: flex; justify-content: space-between; align-items: flex-start; padding-left: 0; padding-right: 0; } }
.pp-hl + * { margin-top: 1.25rem; }
@media screen and (min-width: 64em) { .pp-hl + * { margin-top: 3.75rem; } }
.pp-hl h2 { margin: 0 0 .9375rem; font-size: 1.25rem; line-height: 1.2; }
@media screen and (min-width: 64em) { .pp-hl h2 { margin-bottom: 1.4375rem; font-size: 1.5625rem; } }
.pp-hl__left, .pp-hl__middle { margin-bottom: 1.25rem; }
@media print, screen and (min-width: 48em) { .pp-hl__left, .pp-hl__middle { margin-bottom: 2.5rem; } }
.pp-hl__left { display: flex; justify-content: space-between; align-items: flex-start; }
@media screen and (min-width: 64em) {
	.pp-hl__left, .pp-hl__middle { margin-bottom: 0; }
	.pp-hl__left { display: block; width: calc(var(--c) * 3 + 40px); padding: 0 .625rem 0 2.6875rem; }
	.pp-hl__middle { width: calc(var(--c) * 4 + 30px); }
	.pp-hl__right { width: calc(var(--c) * 4 + 50px); margin-right: var(--c); padding: 0 .625rem; }
}
@media screen and (min-width: 80em) {
	.pp-hl__left { margin-left: var(--c); padding: 0 .625rem; }
	.pp-hl__middle { width: calc(var(--c) * 3 + 20px); margin-right: calc(var(--c) + 10px); }
	.pp-hl__right { width: calc(var(--c) * 3 + 40px); }
}
.pp-hl__logo { display: block; width: auto; max-height: 5.3125rem; }
@media print, screen and (max-width: 63.99875em) { .pp-hl__logo { max-width: 35%; } }
@media screen and (min-width: 64em) { .pp-hl__logo { max-width: 12.5rem; margin-bottom: 1.25rem; } }
.pp-hl__brand { display: block; font-weight: 800; font-size: 1.5rem; line-height: 1; }
@media screen and (min-width: 64em) { .pp-hl__brand { margin-bottom: 1.25rem; } }
.pp-hl__assets { max-width: 60%; margin: -.4375rem 0 0 auto; padding: 0; list-style: none; font-size: .75rem; line-height: 1.4; }
@media print, screen and (min-width: 48em) { .pp-hl__assets { font-size: .8125rem; text-align: right; } }
@media screen and (min-width: 64em) { .pp-hl__assets { max-width: none; margin: 0; text-align: left; } }
.pp-print { position: relative; display: flex; align-items: center; width: 100%; padding: .125rem 0; color: inherit; }
@media print, screen and (min-width: 48em) { .pp-print { justify-content: flex-end; } }
@media screen and (min-width: 64em) { .pp-print { justify-content: flex-start; padding: .4375rem 0 .4375rem 2.1875rem; } }
.pp-print .pp-ico { width: 1.5625rem; height: 1.5625rem; margin-right: .625rem; }
@media screen and (min-width: 64em) { .pp-print .pp-ico { position: absolute; left: 0; } }
.pp-print:hover span { text-decoration: underline; }
.pp-hl__desc { margin-bottom: 1.375rem; font-size: .9375rem; line-height: 1.3; }
@media screen and (min-width: 64em) { .pp-hl__desc { font-size: 1rem; } }
.pp-hl__desc p { margin: 0 0 .75rem; }
.pp-hl__desc ul, .pp-hl__desc ol { margin: 0 0 .75rem; padding-left: 1.125rem; }
.pp-hl__desc li { margin-bottom: .25rem; }
.pp-hl__desc > :last-child, .pp-hl__desc .x6l > :last-child { margin-bottom: 0; }
.pp-hl__desc strong, .pp-hl__desc b { font-weight: 800; }
.pp-warranty { position: relative; margin: 0; padding: 1rem 1rem 1rem 2.5rem; line-height: 1.2; text-wrap: balance; background-color: #caeee5; border-radius: .3125rem; }
.pp-warranty__ico { position: absolute; left: .9375rem; top: 1.05rem; width: .8125rem; height: .8125rem; color: var(--p-green); }
.pp-warranty__text { font-weight: 800; font-size: .9375rem; }
.pp-hl__chars { margin: 0; font-size: .875rem; }
.pp-hl__chars div { display: flex; justify-content: space-between; padding: .5rem .625rem; }
.pp-hl__chars div:nth-child(odd) { background-color: #dadada; }
.pp-hl__chars dt, .pp-hl__chars dd { width: 50%; margin: 0; word-break: break-word; }
.pp-hl__chars dt { padding-right: .1875rem; font-weight: 400; }
.pp-hl__chars dd { text-align: right; }

/* ---------- «Συνδύασέ το με» (Accessories, Card) ---------- */
.pp-acc { margin: .625rem 0; padding: 1.875rem .625rem 2.4375rem; background-color: #dbe2eb; }
@media screen and (min-width: 23.4375em) { .pp-acc { padding-left: 1.875rem; padding-right: 1.875rem; } }
@media screen and (min-width: 64em) { .pp-acc { min-height: 24.375rem; margin: 1.875rem 0; padding: 2rem 1.25rem 3.625rem .625rem; } }
@media screen and (min-width: 80em) { .pp-acc { padding: 2rem 6.75rem 3.625rem; } }
.pp-acc__heading { margin: 0 0 .9375rem; font-size: .9375rem; line-height: 1; }
@media screen and (min-width: 64em) { .pp-acc__content { display: flex; justify-content: space-between; } }
.pp-acc__combine { display: flex; padding: 1.25rem 0; font-size: 1.25rem; line-height: 1.1; }
@media print, screen and (min-width: 48em) { .pp-acc__combine { padding: 1.5625rem 0 .625rem; } }
@media screen and (min-width: 64em) { .pp-acc__combine { flex-shrink: 0; align-items: center; justify-content: center; width: 6.25rem; padding: 0 1.125rem 0 .625rem; font-size: 1.125rem; line-height: 1; word-wrap: break-word; } }
@media screen and (min-width: 68.75em) { .pp-acc__combine { width: 7.6875rem; font-size: 1.5625rem; } }
@media screen and (min-width: 64em) { .pp-acc__related { flex: 1 1 0; min-width: 0; padding: 0 2.5rem; } }
.pp-acc__list { display: flex; flex-direction: column; gap: .625rem; }
.pp-card { display: flex; gap: .9375rem; padding: .9375rem; background-color: #fff; border-radius: .25rem; }
.pp-card__img { display: block; flex-shrink: 0; width: 6.5625rem; }
.pp-card__img .pp-img { background: #fff; }
.pp-card__content { display: flex; flex-direction: column; align-items: flex-start; flex-grow: 1; min-width: 0; }
.pp-card__heading { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin: 0 0 .625rem; font-size: .75rem; line-height: 1.3; }
.pp-card__heading a { color: #000; }
.pp-card__heading a:hover { text-decoration: underline; }
.pp-card__price { margin-bottom: .625rem; font-weight: 800; font-size: 1.25rem; line-height: 1; }
.pp-card__from { display: block; margin-bottom: .25rem; font-weight: 400; font-size: .8125rem; color: var(--p-gray-text); }
.pp-card__add { width: 100%; max-width: 10.75rem; margin-top: auto; }
@media screen and (min-width: 64em) {
	.pp-card { flex-direction: column; gap: 0; padding: 1.5625rem 1rem .625rem; }
	.pp-card--self { flex-shrink: 0; width: 12.75rem; }
	.pp-card__img { width: 6.5625rem; margin: 0 auto 1rem; }
	.pp-card__heading { height: 2.6em; margin-bottom: 1.25rem; }
	.pp-card__add { max-width: none; }
}
.pp-acc__swiper .swiper-slide { display: flex; height: auto; }
.pp-acc__swiper .swiper-slide > .pp-card { flex: 1 1 auto; }
.pp-acc__swiper > [class*="swiper-button"] { width: 1.5rem; height: 2.5rem; margin-top: -1.25rem; border: none; background: none; }
.pp-acc__swiper > .swiper-button-prev { left: -2.25rem; }
.pp-acc__swiper > .swiper-button-next { right: -2.25rem; }
.pp-acc__swiper > .swiper-button-disabled { opacity: .5; color: #000; }

/* ---------- Αναλυτική παρουσίαση (MultimediaDescription / mdescrbox) ---------- */
@media screen and (min-width: 64em) { .pp-md { margin-bottom: 3.75rem; } }
.pp-mdb { width: 100%; position: relative; }
.pp-mdb p { margin: 0 0 1.25rem; }
.pp-mdb p:last-child { margin-bottom: 0; }
.pp-mdb ul, .pp-mdb ol { margin: 0 0 1.25rem; padding-left: 1.25rem; }
.pp-mdb li { margin-bottom: .375rem; }
.pp-mdb strong, .pp-mdb b { font-weight: 800; }
.pp-mdb a { color: var(--p-blue); text-decoration: underline; }
.pp-mdb img { max-width: 100%; height: auto; }
/* «Με μία ματιά» (col1) */
.pp-mdg { display: flex; align-items: center; max-width: 80rem; margin: 0 auto 1.875rem; }
@media print, screen and (max-width: 63.99875em) { .pp-mdg { flex-direction: column; } }
.pp-mdg__textwrap { flex: 0 0 auto; width: calc(41.6666666667% - 1.25rem); margin: 0 .625rem; padding: 1.875rem 0; }
.pp-mdg--noimg .pp-mdg__textwrap { width: 100%; max-width: 50rem; margin: 0 auto; }
.pp-mdg__imagewrap { flex: 0 0 auto; width: calc(58.3333333333% - 1.25rem); margin: 0 .625rem; padding: 1.875rem 0; }
@media print, screen and (max-width: 63.99875em) { .pp-mdg__textwrap, .pp-mdg__imagewrap { width: 100%; margin: 0; } .pp-mdg__imagewrap { padding-top: 0; } }
@media print, screen and (max-width: 47.99875em) { .pp-mdg__textwrap { padding: 1.25rem 0; } .pp-mdg__imagewrap { padding-bottom: 1.25rem; } }
.pp-mdg__imagewrap img { display: block; width: 100%; max-width: 37.5rem; height: auto; margin: 0 auto; }
.pp-mdg__title { margin-bottom: 1.875rem; font-weight: 800; font-size: 1.875rem; line-height: 1.875rem; }
@media print, screen and (max-width: 47.99875em) { .pp-mdg__title { margin-bottom: .625rem; font-size: 1rem; line-height: 1rem; } }
.pp-mdg__text { font-size: 1rem; line-height: 1.25rem; }
@media print, screen and (max-width: 47.99875em) { .pp-mdg__text { font-size: .8125rem; line-height: 1.0625rem; } }
.pp-mdg__lead { font-weight: 800; }
/* icon-feature row (col5) */
.pp-mdf { max-width: 80rem; margin: 0 auto; padding: 2.5rem 0 3.125rem; }
@media screen and (min-width: 64em) { .pp-mdf { padding: 3.75rem 0 5rem; } }
.pp-mdf__heading { margin-bottom: 1.25rem; font-size: 1.5625rem; line-height: 1.2; text-align: center; }
@media print, screen and (max-width: 47.99875em) { .pp-mdf__heading { font-size: 1.0625rem; } }
.pp-mdf__intro { max-width: 50rem; margin: 0 auto 1.875rem; font-size: 1rem; line-height: 1.25rem; text-align: center; color: #8c8c8c; }
.pp-mdf__cols { display: flex; flex-wrap: wrap; justify-content: center; gap: 2.5rem .76336%; }
.pp-mdf__col { width: 49%; text-align: center; }
@media screen and (min-width: 38.125em) { .pp-mdf__col { width: 32.48082%; } }
@media screen and (min-width: 64em) { .pp-mdf__col { width: 19.38931%; } }
.pp-mdf__icon { width: 3.0625rem; height: 3.0625rem; margin: 0 auto 1.25rem; color: #8c8c8c; }
.pp-mdf__textwrap { max-width: 12.5rem; margin: 0 auto; }
.pp-mdf__title { font-size: 1.125rem; line-height: 1.25rem; }
@media screen and (min-width: 64em) { .pp-mdf__title { font-size: 1.25rem; } }
.pp-mdf__text { margin-top: 1.25rem; font-size: .8125rem; line-height: 1.0625rem; color: #8c8c8c; }
@media print, screen and (min-width: 48em) { .pp-mdf__text { font-size: 1rem; line-height: 1.25rem; } }
/* image / text tiles (tiles-right, tiles-left) */
.pp-mdt { display: flex; align-items: center; max-width: 80rem; margin: 0 auto .625rem; background-color: #f6f6f6; }
@media print, screen and (max-width: 63.99875em) { .pp-mdt { flex-direction: column; } }
.pp-mdt__textwrap { position: relative; order: 2; display: flex; justify-content: center; width: 50%; padding: 1.5625rem 1.25rem; }
.pp-mdt__imagewrap { order: 1; align-self: stretch; width: 50%; font-size: 0; line-height: 0; }
.pp-mdt--right .pp-mdt__textwrap { order: 1; }
.pp-mdt--right .pp-mdt__imagewrap { order: 2; }
@media print, screen and (max-width: 63.99875em) {
	.pp-mdt__textwrap, .pp-mdt__imagewrap { width: 100%; }
	.pp-mdt__textwrap, .pp-mdt--right .pp-mdt__textwrap { order: 2; padding: 2.8125rem 2.5rem; }
	.pp-mdt__imagewrap, .pp-mdt--right .pp-mdt__imagewrap { order: 1; }
}
@media print, screen and (max-width: 47.99875em) { .pp-mdt__textwrap, .pp-mdt--right .pp-mdt__textwrap { padding: 1.5625rem 1.25rem; } }
.pp-mdt__imagewrap img { display: block; width: 100%; height: 100%; min-height: 100%; aspect-ratio: 640 / 428; object-fit: cover; }
.pp-mdt__container { width: 100%; max-width: 26.25rem; }
@media print, screen and (max-width: 63.99875em) { .pp-mdt__container { max-width: 100%; } }
.pp-mdt__title { margin-bottom: 1.25rem; font-size: 1.5625rem; line-height: 1.5625rem; }
@media print, screen and (max-width: 47.99875em) { .pp-mdt__title { font-size: 1.0625rem; line-height: 1.125rem; } }
.pp-mdt__text { font-size: .9375rem; line-height: 1.1875rem; }
@media print, screen and (max-width: 47.99875em) { .pp-mdt__text { font-size: .8125rem; line-height: 1.0625rem; } }
.pp-mdt__text p, .pp-mdt__text ul { margin-bottom: .9375rem; }
/* text-only block */
.pp-mdx { max-width: 80rem; margin: 0 auto .625rem; }
.pp-mdx__in { max-width: 50rem; margin: 0 auto; padding: 1.875rem 0; }
.pp-mdx__title { margin-bottom: 1.25rem; font-size: 1.5625rem; line-height: 1.2; }
@media print, screen and (max-width: 47.99875em) { .pp-mdx__title { font-size: 1.0625rem; } .pp-mdx__in { padding: 1.25rem 0; } }
.pp-mdx__text { font-size: 1rem; line-height: 1.4; }
@media print, screen and (max-width: 47.99875em) { .pp-mdx__text { font-size: .8125rem; } }

/* ---------- Legacy descriptions (old XStore / Elementor texts, normalised in inc/p-legacy-content.php) ---------- */
/* Never wider than the page; theme font and colours whatever the old markup said. */
.pp-md, .pp-hl__desc { min-width: 0; overflow-wrap: break-word; }
.pp-mdb :where(p, li, h1, h2, h3, h4, h5, h6, td, th, blockquote, figcaption) { overflow-wrap: break-word; }
.pp-mdb :where(*), .pp-hl__desc :where(*) { font-family: inherit; }
.pp-mdb :where(img, video, iframe), .pp-hl__desc :where(img, video, iframe) { max-width: 100%; }
.pp-mdb :where(img), .pp-hl__desc :where(img) { height: auto; }
.pp-mdb figure, .pp-hl__desc figure { margin: 0 0 1.25rem; }
.pp-mdb figcaption { margin-top: .375rem; font-size: .8125rem; color: var(--p-gray-text, #8c8c8c); }
.pp-mdb :where(h1, h2, h3, h4, h5, h6) { margin: 1.25rem 0 .625rem; font-weight: 800; font-size: 1.0625rem; line-height: 1.25; }
.pp-mdb blockquote { margin: 0 0 1.25rem; padding-left: 1rem; border-left: .1875rem solid #e0e0e0; }
.pp-mdb li > p { margin: 0; }
/* Description pictures: whole (banners, logos, drawings), never cropped. */
.pp-mdt__imagewrap img.pp-md-own { object-fit: contain; background-color: #fff; }
.pp-mdg__imagewrap img.pp-md-own { height: auto; }
/* Long first block: title, picture, then the text at reading width. */
.pp-mdg--long { flex-direction: column; align-items: stretch; }
.pp-mdg--long .pp-mdg__textwrap { width: 100%; max-width: 50rem; margin: 0 auto; }
.pp-mdg--long .pp-mdg__imagewrap { width: 100%; margin: 0 0 1.25rem; padding: 0; }
.pp-mdg--long .pp-mdg__imagewrap img { max-width: min(100%, 37.5rem); max-height: 31.25rem; object-fit: contain; }
/* Long section with a picture: full-width text block, picture above. */
.pp-mdx__media { margin-bottom: 1.25rem; font-size: 0; line-height: 0; text-align: center; }
.pp-mdx__media img { display: inline-block; max-width: 100%; max-height: 31.25rem; height: auto; object-fit: contain; }
.pp-mdx__media .pp-vid { max-width: 100%; }
/* Extra pictures / videos of a section. */
.pp-lg-media { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: .625rem; margin-top: 1.25rem; }
.pp-lg-media__item { display: flex; align-items: center; justify-content: center; min-width: 0; background-color: #fff; }
.pp-lg-media__item img { display: block; max-width: 100%; max-height: 25rem; height: auto; object-fit: contain; }
.pp-lg-media__item--video { display: block; }
.pp-mdt .pp-lg-media, .pp-mdx--long .pp-lg-media { grid-template-columns: repeat(auto-fit, minmax(min(100%, 12.5rem), 1fr)); }
/* Old float classes: beside the text on wide screens only. */
.pp-mdb img.pp-lg-left, .pp-mdb img.pp-lg-right { display: block; margin: 0 auto 1rem; }
@media print, screen and (min-width: 48em) {
	.pp-mdb img.pp-lg-left { float: left; max-width: 40%; margin: 0 1.25rem 1rem 0; }
	.pp-mdb img.pp-lg-right { float: right; max-width: 40%; margin: 0 0 1rem 1.25rem; }
	.pp-mdx__text::after, .pp-mdt__text::after { content: ""; display: table; clear: both; }
}
/* Tables: a scroll box on phones, plaisio «Χαρακτηριστικά» rows. */
.pp-lg-table { max-width: 100%; margin: 0 0 1.25rem; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.pp-md .pp-lg-table table, .pp-hl__desc .pp-lg-table table { display: table; width: 100%; max-width: none; min-width: 0; overflow: visible; border-collapse: collapse; border-spacing: 0; font-size: inherit; line-height: 1.3; }
.pp-md .pp-lg-table table td, .pp-md .pp-lg-table table th, .pp-hl__desc .pp-lg-table table td, .pp-hl__desc .pp-lg-table table th { padding: .625rem .75rem; border: 0; border-bottom: .0625rem solid #e0e0e0; text-align: left; vertical-align: top; overflow-wrap: break-word; }
.pp-md .pp-lg-table tr:nth-child(odd) > :is(td, th) { background-color: #f6f6f6; }
.pp-md .pp-lg-table :is(td, th):first-child:not(:only-child) { width: 40%; color: var(--p-gray-text, #6b6b6b); }
@media screen and (max-width: 47.99875em) { .pp-md .pp-lg-table :is(td, th):first-child:not(:only-child) { width: auto; } }
.pp-lg-table th { font-weight: 800; }
.pp-lg-table img { max-width: 6.25rem; }
/* Map / Vimeo embeds: 16:9 box. */
.pp-lg-embed { position: relative; margin: 0 0 1.25rem; aspect-ratio: 16 / 9; }
.pp-lg-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* ---------- Videos + NOETIC app (own features, plaisio look) ---------- */
.pp-videos { max-width: 80rem; margin: 0 auto 2.5rem; }
@media screen and (min-width: 64em) { .pp-videos { margin-bottom: 3.75rem; } }
.pp .x6sf-videos { display: grid; grid-template-columns: repeat(auto-fill, minmax(17.5rem, 1fr)); gap: 1.25rem; }
.pp .x6sf-video { margin: 0; }
.pp .x6sf-video__play, .pp .x6sf-video iframe, .pp .x6sf-video video { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: #000; border: 0; border-radius: .625rem; }
.pp .x6sf-video--short .x6sf-video__play, .pp .x6sf-video--short iframe { aspect-ratio: 9 / 16; max-width: 20rem; margin: 0 auto; }
.pp .x6sf-video__play img { width: 100%; height: 100%; object-fit: cover; opacity: .9; transition: opacity .2s; }
.pp .x6sf-video__play:hover img { opacity: 1; }
.pp .x6sf-video__btn { position: absolute; top: 50%; left: 50%; display: flex; align-items: center; justify-content: center; width: 4rem; height: 4rem; color: #fff; background: rgba(0, 0, 0, .6); border-radius: 50%; transform: translate(-50%, -50%); }
.pp .x6sf-video__btn svg { width: 1.75rem; height: 1.75rem; fill: currentColor; }
.pp .x6sf-video figcaption { margin-top: .5rem; font-size: .875rem; line-height: 1.3; }
.pp-noetic { max-width: 80rem; margin: 0 auto 2.5rem; padding: 2rem 1.25rem; background-color: var(--p-gray-bg); border-radius: .625rem; }
@media screen and (min-width: 64em) { .pp-noetic { margin-bottom: 3.75rem; padding: 2.5rem 3.75rem; } }
.pp-noetic__lead { max-width: 50rem; margin: -.5rem auto 1.5625rem; font-size: .9375rem; line-height: 1.35; text-align: center; }
.pp .x6sf-caps { display: grid; grid-template-columns: repeat(auto-fill, minmax(16.25rem, 1fr)); gap: .9375rem; }
.pp .x6sf-cap { display: flex; flex-direction: column; padding: 1.25rem; background: #fff; border-radius: .625rem; }
.pp .x6sf-cap h3 { margin: 0 0 .5rem; font-weight: 800; font-size: 1rem; line-height: 1.2; }
.pp .x6sf-cap p { flex-grow: 1; margin: 0 0 .9375rem; font-size: .875rem; line-height: 1.35; color: #444; }
.pp .x6sf-cap__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem; }
.pp .x6sf-cap__foot a { font-size: .8125rem; color: var(--p-blue); text-decoration: underline; }
.pp .x6sf-status { display: inline-block; padding: .25rem .625rem; font-size: .6875rem; line-height: 1.2; border-radius: 1rem; }
.pp .x6sf-status--green { color: #017a64; background: #d4f0ea; }
.pp .x6sf-status--yellow { color: #7a5c00; background: #fff4c2; }
.pp .x6sf-status--red { color: #a61300; background: #fde3df; }
.pp .x6sf-fine { margin: 1rem 0 0; font-size: .75rem; line-height: 1.35; color: var(--p-gray-text); }
.pp .x6sf-noetic-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .625rem 1.25rem; margin-top: 1.5625rem; }
.pp .x6sf-noetic-cta .x6sf-btn { display: inline-block; width: auto; min-height: 0; padding: .9375rem 1.5625rem; font-weight: 400; font-size: .9375rem; line-height: 1; color: #fff !important; background: var(--p-green) !important; border: 1px solid var(--p-green); border-radius: .625rem; }
.pp .x6sf-noetic-cta .x6sf-btn--ghost { color: #000 !important; background: #fff !important; border-color: #000; }
@media (hover: hover) { .pp .x6sf-noetic-cta .x6sf-btn--ghost:hover { color: #fff !important; background: #000 !important; } }
.pp .x6sf-noetic-cta .x6sf-link { font-size: .875rem; color: var(--p-blue); text-decoration: underline; }

/* ---------- Χαρακτηριστικά (DetailedCharacteristics, SectionHeading) ---------- */
.pp-specs { font-size: .9375rem; }
@media print, screen and (min-width: 48em) { .pp-specs { font-size: 1.25rem; } }
.pp-specs__heading { display: none; }
@media screen and (min-width: 64em) { .pp-specs__heading { display: block; margin: 0 0 .625rem; font-weight: 800; font-size: 1.375rem; text-align: center; } }
@media screen and (min-width: 80em) { .pp-specs__heading { font-size: 1.75rem; } }
.pp-sh { margin: 0; font-weight: 400; font-size: .9375rem; border-bottom: 1px solid #e8e8e8; }
@media screen and (min-width: 64em) { .pp-sh { font-size: 1.25rem; } }
.pp-sh button { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 1.25rem 0 .625rem .625rem; color: inherit; text-align: left; cursor: default; }
@media print, screen and (min-width: 48em) { .pp-sh button { padding: 2.5rem 0 .9375rem; } }
@media screen and (min-width: 64em) { .pp-sh button { padding: 1.875rem 0 .625rem; cursor: pointer; } }
@media screen and (min-width: 80em) { .pp-sh button { padding: 2.5rem 0 .9375rem; } }
.pp-sh__icon { display: none; }
@media screen and (min-width: 64em) {
	.pp-sh__icon { display: block; width: 1.5rem; font-weight: 300; font-size: 2.1875rem; line-height: .5; text-align: center; }
	.pp-sh__icon::before { content: "+"; }
	.pp-sh button[aria-expanded="true"] .pp-sh__icon { font-size: 1.375rem; }
	.pp-sh button[aria-expanded="true"] .pp-sh__icon::before { content: "—"; }
	.pp-chars.is-closed { display: none; }
}
.pp-chars { margin: 0; line-height: 1.2; }
.pp-chars__row { display: flex; padding: .5rem .625rem; }
@media print, screen and (min-width: 48em) { .pp-chars__row { padding: .9375rem 1.875rem; } }
@media screen and (min-width: 80em) { .pp-chars__row { padding: 1.125rem 2.5rem; } }
.pp-chars__row:nth-child(2n) { background-color: #efefef; }
.pp-chars dt, .pp-chars dd { margin: 0; word-break: break-word; }
.pp-chars dt { flex-shrink: 0; width: 50%; padding-right: 1.125rem; font-weight: 400; color: var(--p-gray-mid); }
@media screen and (min-width: 64em) { .pp-chars dt { width: 18.75rem; padding-right: 2.1875rem; } }
@media screen and (min-width: 80em) { .pp-chars dt { width: 25rem; } }
.pp-chars dd { flex-grow: 1; }

/* ---------- Αξιολογήσεις ---------- */
.pp-reviews { max-width: 60rem; margin: 0 auto; }
.pp-reviews .pp-sec-h { line-height: 1.6; margin-bottom: .625rem; }
.pp-reviews__none { margin: 0 0 1.25rem; font-size: .9375rem; text-align: center; color: var(--p-gray-text); }
.pp-reviews__summary { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .5rem .75rem; margin-bottom: 1.25rem; font-size: .9375rem; }
.pp-reviews__list { margin: 0 0 1.25rem; padding: 0; list-style: none; }
.pp-review { padding: 1.25rem 0; border-bottom: 1px solid #e8e8e8; }
.pp-review__head { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .75rem; margin-bottom: .5rem; font-size: .875rem; }
.pp-review__head time { font-size: .75rem; color: #9e9e9e; }
.pp-review__ver { font-size: .75rem; color: #00b66a; }
.pp-review__text { font-size: .9375rem; line-height: 1.4; }
.pp-review__text p { margin: 0 0 .5rem; }
.pp-reviews__form { text-align: center; }
.pp-reviews__write.p-btn { display: inline-block; width: auto; padding: .75rem 1.5rem; }
.pp-reviews__formin { max-width: 37.5rem; margin: 1.25rem auto 0; text-align: left; }
.pp-reviews__formin[hidden] { display: none; }
.pp .comment-respond { margin: 0; }
.pp .pp-field { display: block; margin: 0 0 .9375rem; }
.pp .pp-field label, .pp .pp-field__label { display: block; margin-bottom: .3125rem; font-size: .8125rem; }
.pp .pp-field input[type="text"], .pp .pp-field input[type="email"], .pp .pp-field textarea { display: block; width: 100%; padding: .625rem .75rem; font: inherit; font-size: .9375rem; border: 1px solid #e0e0e0; border-radius: .3125rem; background: #fff; }
.pp .pp-field textarea { resize: vertical; }
.pp .comment-form-cookies-consent { display: flex; gap: .5rem; align-items: flex-start; font-size: .75rem; }
.pp .form-submit { margin: 0; }
.pp .form-submit .p-btn { display: inline-block; width: auto; padding: .75rem 2rem; border: 0; cursor: pointer; font: inherit; font-size: .875rem; }
.pp-rate { display: inline-flex; flex-direction: row-reverse; gap: .125rem; }
.pp-rate input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pp-rate label { margin: 0 !important; font-size: 1.75rem !important; line-height: 1; color: #d6d6d6; cursor: pointer; }
.pp-rate input:checked ~ label, .pp-rate label:hover, .pp-rate label:hover ~ label { color: #f6a800; }
.pp-rate input:focus-visible + label { outline: 1px solid var(--p-blue); }

/* ---------- «Όσοι είδαν…» (Recommendations, RecommendationsProductLarge) ---------- */
.pp-recs-grid { margin-top: 1.25rem; margin-bottom: 2.5rem; }
.pp-recs { padding: 1.25rem 0 1.5625rem; background-color: var(--p-gray-bg); border-radius: .3125rem; }
@media print, screen and (min-width: 48em) { .pp-recs { padding: 1.5625rem 0 1.875rem; } }
.pp-recs__header { display: flex; align-items: center; gap: .625rem; min-height: 2.6875rem; margin: 0 .625rem .8125rem; }
@media print, screen and (min-width: 48em) { .pp-recs__header { margin: 0 1.875rem .8125rem; } }
.pp-recs__heading { margin: 0; font-weight: 800; font-size: 1.0625rem; line-height: 1.1; }
@media print, screen and (min-width: 48em) { .pp-recs__heading { font-size: 1.25rem; line-height: 1; } }
.pp-recs__slider .swiper-slide { width: 9.6875rem; }
@media print, screen and (min-width: 48em) { .pp-recs__slider .swiper-slide { width: 12.8125rem; } }
.pp-rec { line-height: 1.1; }
.pp-rec__img { display: flex; align-items: center; justify-content: center; height: 10rem; margin-bottom: .9375rem; background-color: #fff; border-radius: .3125rem; overflow: hidden; }
@media print, screen and (min-width: 48em) { .pp-rec__img { height: 14.375rem; } }
.pp-rec__img img { width: 85%; height: 85%; object-fit: contain; }
.pp-rec__heading { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; height: 3.3em; margin: 0; font-size: .8125rem; line-height: 1.1; }
@media print, screen and (min-width: 48em) { .pp-rec__heading { font-size: .875rem; } }
.pp-rec__heading a { color: #000; }
.pp-rec__heading a:hover { text-decoration: underline; }
.pp-rec__from { min-height: .875rem; margin: .9375rem 0 .1875rem; font-size: .8125rem; line-height: 1.1; color: var(--p-gray-text); }
.pp-rec__from s { text-decoration: line-through; }
.pp-rec__price { margin-bottom: .625rem; font-weight: 800; font-size: 1rem; }
.pp-rec__add .p-btn { display: inline-block; width: auto; padding: .625rem; font-size: .875rem; }
.pp-rec__add .p-btn--outlined { border: 1px solid #000; }

/* ---------- Scroll header (ScrollHeader + Navigation) ---------- */
.pp-scroll { display: none; }
@media print, screen and (min-width: 48em) {
	.pp-scroll { position: fixed; top: var(--pp-top, 0px); left: 0; z-index: 90; display: block; width: 100%; overflow: hidden; pointer-events: none; }
	.pp-scroll__content { visibility: hidden; max-height: 0; background-color: #fff; transform: translateY(-100%); transition: transform .3s ease-out, visibility 0s linear .3s, max-height 0s linear .3s; pointer-events: auto; }
	.pp-scroll.is-active .pp-scroll__content { visibility: visible; max-height: 31.25rem; margin-bottom: .625rem; transform: translateY(0); transition: transform .3s ease-out; box-shadow: 0 .25rem .25rem rgba(0, 0, 0, .25); }
}
.pp-scroll__summary { display: flex; align-items: center; min-height: 3.375rem; padding: .3125rem 0; line-height: 1.2; }
@media screen and (min-width: 80em) { .pp-scroll__summary { min-height: 4.625rem; } }
.pp-scroll__thumb { flex-shrink: 0; width: 2.875rem; height: 2.875rem; margin-right: .625rem; object-fit: contain; }
@media screen and (min-width: 80em) { .pp-scroll__thumb { width: 4rem; height: 4rem; margin-right: 2.8125rem; } }
.pp-scroll__name { display: inline-flex; align-items: center; max-width: 13.4375rem; margin-right: auto; padding-right: .625rem; }
.pp-scroll__name span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; max-height: 2.3em; font-size: .75rem; line-height: 1.1; }
@media screen and (min-width: 64em) { .pp-scroll__name span { font-size: .8125rem; } }
.pp-scroll__from { margin: 0 .625rem 0 0; font-size: 1rem; color: #757575; white-space: nowrap; }
@media screen and (min-width: 80em) { .pp-scroll__from { font-size: 1.125rem; } }
.pp-scroll__price { font-weight: 800; font-size: 1.4375rem; white-space: nowrap; }
.pp-scroll__price small { font-weight: 400; font-size: .55em; }
.pp-scroll__btn { min-width: 9.9375rem; margin-left: 1.25rem; }
@media screen and (min-width: 64em) { .pp-scroll__btn { min-width: 12.8125rem; } }
.pp-scroll__btn .p-btn { padding-top: .5rem; padding-bottom: .5rem; border-radius: .625rem; }
@media screen and (min-width: 64em) { .pp-scroll__btn .p-btn { padding-top: .8125rem; padding-bottom: .8125rem; } }
.pp-nav { border-top: 1px solid #e8e8e8; }
.pp-nav__list { display: flex; justify-content: flex-end; gap: 2rem; margin: 0; padding: 0 .625rem; list-style: none; }
@media screen and (min-width: 64em) { .pp-nav__list { padding: 0; } }
.pp-nav__list li { display: block; padding: 0; }
.pp-nav__link { display: inline-flex; flex-direction: column; justify-content: center; align-items: center; min-height: 1.8125rem; font-size: .6875rem; color: #000; }
@media screen and (min-width: 64em) { .pp-nav__link { min-height: 2.0625rem; font-size: .75rem; } }
@media screen and (min-width: 80em) { .pp-nav__link { min-height: 2.75rem; font-size: .8125rem; } }
.pp-nav__link.is-active { font-weight: 800; }
.pp-nav__link:hover { text-decoration: underline; }

/* ---------- Side drawers on phones (MobileDrawerBlock) ---------- */
.pp-drawer__btn { position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: .25rem .625rem; width: 100%; min-height: 3.75rem; margin-bottom: .625rem; padding: .875rem 2.5rem .875rem .875rem; font-size: .875rem; color: dimgray; text-align: left; border: 1px solid #e8e8e8; border-radius: .25rem; }
.pp-drawer__btn .pp-drawer__stars { display: flex; align-items: center; gap: .25rem; width: 100%; }
.pp-drawer__arrow { position: absolute; top: 50%; right: 1rem; width: 1.25rem; height: 1.25rem; color: dimgray; transform: translateY(-50%); }
.pp-drawer__dialog { display: none; }
.pp-drawer.is-open .pp-drawer__dialog { position: fixed; top: var(--pp-drawer-top, 0px); right: 0; bottom: 0; left: 0; z-index: 95; display: block; overflow: hidden; }
.pp-drawer__bg { position: absolute; inset: 0; touch-action: none; background-color: rgba(0, 0, 0, .6); animation: pp-fade .25s cubic-bezier(.4, 0, .2, 1) both; }
.pp-drawer__panel { position: absolute; top: 0; right: 0; bottom: 0; width: calc(100% - 2.5rem); min-width: 18.75rem; padding: .9375rem .9375rem 1.875rem 1.5625rem; background-color: #fff; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; animation: pp-slide .25s cubic-bezier(0, 0, .2, 1) both; }
.pp-drawer__title { margin-bottom: .9375rem; font-weight: 800; font-size: 1.125rem; }
.pp-drawer__title button { display: flex; align-items: center; gap: .25rem; margin-left: -.375rem; color: inherit; text-align: left; }
.pp-drawer__title .pp-ico { width: 1.125rem; height: 1.125rem; }
.pp-drawer__title .pp-drawer__stars { display: none; }
@keyframes pp-slide { 0% { visibility: hidden; transform: translateX(100%); } 1% { visibility: visible; } to { transform: translateX(0); } }
@keyframes pp-fade { 0% { visibility: hidden; opacity: 0; } 1% { visibility: visible; } to { opacity: 1; } }
@media print, screen and (min-width: 48em) {
	.pp-drawer__btn, .pp-drawer__bg, .pp-drawer__title { display: none; }
	.pp-drawer__dialog, .pp-drawer.is-open .pp-drawer__dialog { position: static; display: block; overflow: visible; }
	.pp-drawer__panel { position: static; width: auto; min-width: 0; padding: 0; overflow: visible; animation: none; }
}
@media print, screen and (max-width: 47.99875em) {
	.pp-drawer__body .pp-mdg__textwrap { padding-top: 0; }
	.pp-drawer__body .pp-sec-h, .pp-drawer__body .pp-specs__heading { display: none; }
	.pp-drawer__body .pp-videos .pp-sec-h, .pp-drawer__body .pp-noetic .pp-sec-h { display: block; font-size: 1.0625rem; }
	.pp-drawer__body .pp-chars__row { padding-left: 0; padding-right: .3125rem; }
}

/* ---------- Price history dialog ---------- */
.pp-dialog { width: calc(100% - 2rem); max-width: 36rem; padding: 1.5rem; border: 0; border-radius: .625rem; }
.pp-dialog::backdrop { background: rgba(0, 0, 0, .5); }
.pp-dialog h2 { margin: 0 0 1rem; font-weight: 800; font-size: 1.25rem; }
.pp-dialog__x { position: absolute; top: .75rem; right: .75rem; display: flex; }
.pp-dialog__x .pp-ico { width: 1.5rem; height: 1.5rem; }
.pp-dialog svg.x6sf-phist__svg { display: block; width: 100%; height: auto; color: var(--p-blue); }
.pp-dialog svg text { fill: #696969; }
.pp-after { margin-bottom: 1.25rem; }

/* ---------- Print (Εκτύπωσέ το): title, main photo, price, highlights, specs ---------- */
@media print {
	.p-header, .p-footer, .pp-scroll, .pp-crumbs, .pp-tt__icons, .pp-gal__thumbs, .pp-gal__nav, .pp-buy, .pp-avail, .pp-blocks, .pp-pay, .pp-acc, .pp-recs-grid, .pp-hl__assets, .pp-reviews__form, .pp-drawer__btn, .pp-sec--reviews, .pp-videos, .pp-dialog, .p-backtotop { display: none !important; }
	.pp-gal__main .swiper-slide:not(:first-child) { display: none; }
	.pp-gal__slides { max-width: 20rem; }
	body.pp-page { padding: 0; }
}

/* ---------- QA 29/10: free-text content never pushes the page / drawer wider (phones cut it on the right) ----------
   Long words / URLs wrap, media shrink, tables and <pre> scroll horizontally inside their own box only. */
.pp-hl__desc, .pp-md, .pp-mdb, .pp-mdx__text, .pp-mdt__text, .pp-mdg__text, .pp-mdf__text, .pp-mdf__intro, .pp-specs, .pp-chars, .pp-drawer__body, .pp-box { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.pp-hl__desc img, .pp-md img, .pp-drawer__body img, .pp-hl__desc iframe, .pp-md iframe, .pp-drawer__body iframe, .pp-hl__desc video, .pp-md video { max-width: 100%; height: auto; }
.pp-hl__desc table, .pp-md table, .pp-drawer__body .pp-md table { display: block; width: max-content; max-width: 100%; overflow-x: auto; border-collapse: collapse; -webkit-overflow-scrolling: touch; }
.pp-hl__desc table td, .pp-hl__desc table th, .pp-md table td, .pp-md table th { padding: .375rem .625rem; overflow-wrap: normal; border: 1px solid #e0e0e0; }
.pp-hl__desc pre, .pp-md pre { max-width: 100%; overflow-x: auto; white-space: pre; }

/* ---------- Extra product options (TM EPO «ΥΠΗΡΕΣΙΕΣ») inside the buy box, plaisio «Υπηρεσίες» style ----------
   Phones: the theme pins form.cart to the bottom of the screen; with the options block inside it the pinned bar grew taller
   than the screen and covered the whole page. With options the form stays in the flow and only quantity + Προσθήκη are pinned. */
@media screen and (max-width: 47.99875em) {
	.woocommerce div.pp .pp-buy form.cart:has(.tc-extra-product-options):not(.variations_form):not(.grouped_form) {
		position: static; display: block; padding: 0; background: none; box-shadow: none;
	}
	.woocommerce div.pp .pp-buy form.cart:has(.tc-extra-product-options) > div.quantity {
		position: fixed; left: .625rem; bottom: .625rem; z-index: 100; width: 6.0625rem; height: 3.4375rem; background: #fff;
	}
	.woocommerce div.pp .pp-buy form.cart:has(.tc-extra-product-options) > .single_add_to_cart_button {
		position: fixed; left: 7.3125rem; right: .625rem; bottom: .625rem; z-index: 100; width: auto;
	}
	body.pp-page:has(.pp-buy form.cart .tc-extra-product-options)::after {
		content: ""; position: fixed; left: 0; right: 0; bottom: 0; z-index: 99; height: 4.6875rem; background: #fff; box-shadow: 0 -4px 4px 0 rgba(0, 0, 0, .25);
	}
}
.woocommerce div.pp .tc-extra-product-options { width: 100%; max-width: 100%; margin: 0 0 1rem; padding: 0; font-size: .875rem; color: #212121; }
.woocommerce div.pp .tc-extra-product-options *, .woocommerce div.pp .tc-totals-form * { box-sizing: border-box; max-width: 100%; }
.woocommerce div.pp .tc-extra-product-options .tc-row, .woocommerce div.pp .tc-extra-product-options .tc-cell { width: 100% !important; margin: 0; }
.woocommerce div.pp .tc-extra-product-options .tm-box, .woocommerce div.pp .tc-extra-product-options [class*="bgcolor-"] {
	padding: 1rem; background: #fff !important; border: .0625rem solid #e0e0e0; border-radius: .5rem;
}
.woocommerce div.pp .tc-extra-product-options .tm-epo-element-label, .woocommerce div.pp .tc-extra-product-options h2, .woocommerce div.pp .tc-extra-product-options h3 {
	margin: 0 0 .5rem; padding: 0; font-family: var(--p-font); font-size: 1rem; font-weight: 700; line-height: 1.4; color: #212121 !important; text-transform: none; background: none;
}
.woocommerce div.pp .tc-extra-product-options .tc-element-container ul.tmcp-ul-wrap { margin: 0; padding: 0; list-style: none; }
.woocommerce div.pp .tc-extra-product-options li.tmcp-field-wrap { margin: 0; padding: .625rem 0; border-top: .0625rem solid #eee; }
.woocommerce div.pp .tc-extra-product-options li.tmcp-field-wrap:first-child { border-top: 0; }
.woocommerce div.pp .tc-extra-product-options label.tm-epo-field-label { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem .625rem; margin: 0; font-size: .875rem; line-height: 1.4; color: #212121; cursor: pointer; }
.woocommerce div.pp .tc-extra-product-options .tc-label-wrap, .woocommerce div.pp .tc-extra-product-options .tc-label-wrap span { color: #212121 !important; font-weight: 400; }
.woocommerce div.pp .tc-extra-product-options .tc-label-wrap a { color: var(--p-blue, #0034b9); }
.woocommerce div.pp .tc-extra-product-options .tc-price-wrap { margin-left: auto; }
.woocommerce div.pp .tc-extra-product-options .tc-price, .woocommerce div.pp .tc-extra-product-options .tc-price .amount { font-weight: 700; color: #212121 !important; }
.woocommerce div.pp .tc-extra-product-options .tc-tooltip { color: #9e9e9e; }
.woocommerce div.pp .tc-extra-product-options .tm-description, .woocommerce div.pp .tc-extra-product-options .tm-element-description { margin: 0 0 .5rem; font-size: .875rem; color: #616161; }
/* totals: keep only the final price, as one line (plaisio shows no «Options amount») */
.woocommerce div.pp .tc-totals-form { width: 100%; margin: 0 0 1rem; font-size: .875rem; }
.woocommerce div.pp .tc-totals-form .tm-options-totals, .woocommerce div.pp .tc-totals-form .tm-unit-price, .woocommerce div.pp .tc-totals-form .tm-fee-totals { display: none !important; }
.woocommerce div.pp .tc-totals-form dl { display: flex; align-items: baseline; justify-content: space-between; gap: .625rem; margin: 0; }
.woocommerce div.pp .tc-totals-form dt, .woocommerce div.pp .tc-totals-form dd { margin: 0; color: #212121; }
.woocommerce div.pp .tc-totals-form dd .amount { font-size: 1.25rem; font-weight: 800; color: #212121 !important; }
.woocommerce div.pp .tc-extra-product-options .tm-epo-element-label *, .woocommerce div.pp .tc-extra-product-options .tc-epo-label * { color: #212121 !important; text-transform: none; }
.woocommerce div.pp .tc-extra-product-options label.tm-epo-field-label { flex-wrap: nowrap; align-items: flex-start; }
.woocommerce div.pp .tc-extra-product-options .tc-epo-style-wrapper { flex: 0 0 auto; margin-top: .0625rem; }
.woocommerce div.pp .tc-extra-product-options .tc-label-wrap { flex: 1 1 auto; min-width: 0; }
/* Cookie Notice «revoke» button sits bottom-left over the quantity selector of the pinned buy bar on phones */
@media screen and (max-width: 47.99875em) { body.pp-page #hu-revoke { bottom: 5.5rem !important; } body.pp-page .grecaptcha-badge { bottom: 5.5rem !important; } }
/* «Ειδική κατασκευή» notice under the delivery cards (owner 31/10) */
.pp-custom { margin: 0 0 1.25rem; padding: .875rem 1rem; font-size: .8125rem; line-height: 1.5; color: #424242; background: #fff8e6; border: 1px solid #f4d48a; border-radius: .5rem; }
.pp-custom__title { display: flex; align-items: center; gap: .5rem; margin: 0 0 .375rem; font-size: .9375rem; font-weight: 700; color: #212121; }
.pp-custom__ico { flex: 0 0 auto; width: 1.125rem; height: 1.125rem; color: #b07f00; }
.pp-custom__text { margin: 0 0 .375rem; }
.pp-custom__text:last-child { margin-bottom: 0; }
@media screen and (min-width: 64em) { .pp-custom { max-width: 26.25rem; } }
