/* =================================== */
/* PL custom styles - New product page 29.09.25
/* =================================== */

:root { --sticky-offset: 150px; }
html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--sticky-offset); /* the magic */
}

/* remove blue page banner and breadcrumbs */
.woocommerce-page .page_banner {
	display: none;
}


/* tighter spacing when FAQ is absent and reviews follows description directly */
.product_description_full + #reviews {
  padding-top: 0rem;
}






#product_breadcrumbs_inline {
	font-size: 0.8em;
	margin: 0 0 10px 0;
	padding: 0;
}
#product_breadcrumbs_inline .breadcrumb_last {
	padding-left: 0px;
	font-weight: 300;
}




.short-description {
	font-weight: 400;
	font-family: 'Poppins';
}

.trustpilot-small {
	padding: 1em 0;
	overflow: hidden;
	position: relative;
}
.trustpilot-small .trustpilot-widget {
	width: 35rem !important;
	left: -127px !important;
	position: absolute !important;
	top: 10px !important;
}


#promo_popup_button {
	position: fixed;
	background: #00b67a !important;
	z-index: 9999;
	left: 0;
	transform: rotate(270deg);
	transform-origin: top left;
	box-sizing: border-box;
	box-shadow: 0 0 20px rgb(0 0 0 / 44%) !important;
}
#promo_popup_button a {
	display: inline-block;
	background: #00b67a !important;
	color: #ffffff;
	font-weight: 600;
	text-decoration: none;
	padding: 10px 30px;
	height: 30px;
	line-height: 30px;
	position: relative;
}
#promo_popup_button a::after{
  content:"";
  position:absolute;
  inset:-6px;
  border-radius: 999px;
  box-shadow: 0 0 0 0 rgba(255,255,255,.35);
  opacity: 0;
  pointer-events:none;
}

/* one-shot nudge animation (0.9s) */
#promo_popup_button.nudge {
  animation: promoNudge .9s ease-in-out;
}
#promo_popup_button.nudge a {
	animation: colorPulse .9s ease-in-out;
}

@keyframes promoNudge{
  0%,100% { left: 0;   box-shadow: 0 0 20px rgba(0,0,0,.44); }
  20%     { left: 10px; box-shadow: 0 0 30px rgba(0,0,0,.5); }
  40%     { left: 0;   box-shadow: 0 0 20px rgba(0,0,0,.44); }
	60%     { left: 10px; box-shadow: 0 0 30px rgba(0,0,0,.5); }
	80%     { left: 0;   box-shadow: 0 0 20px rgba(0,0,0,.44); }
}
/* fade the text color */
@keyframes colorPulse{
  0%,100% { color: #fff; }
  20%     { color: #ffea3a; } /* your “yellow” highlight */
 40%     { color: #fff; }
  60%     { color: #ffea3a; }
  80%     { color: #fff; }
}

/* stop if hovered/focused (optional) */
#promo_popup_button:hover,
#promo_popup_button:focus-within{ animation: none; }




/* =================================== */
/* Price match icon
/* =================================== */
.product_info_container {
	position: relative;
}
.price_match {
	width: 8rem;
	position: absolute;
	top: 40px;
	right:-30px;
}
/* Shrink the title when the price match badge is shown */
.woocommerce div.product .price_match_title .product_title {
	width: 80%;
	font-family: 'Poppins';
	font-weight: 600;
}

.woocommerce div.product .product_title {
	font-family: 'Poppins';
	font-weight: 600;
}

/* =================================== */
/* Price 
/* =================================== */
.product .pl_cost .pl_original_cost {
	color: #050505;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.5em;
}
.product .pl_cost .vat_cost {
	color: #050505;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.5em;
}
.ps_price_container {
	align-items: center;
} 
.price-large {
	font-size: 32px;
}
.vat_relief {
	color: #000000;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.69em;
}
.rrp_you_save {
	font-weight: 800;
	color: #d13248;
}

.info-icon a {
	width: 16px;
	display: inline-block;
	margin-left: 5px;
	margin-bottom: -2px;
	vertical-align: bottom;
}
.single-product .pl_sale_price {
	margin-top: 0.5rem;
}

/* Turned off for now. Is it needed? */
/* .ps_ndd_container {
	display: none;
} */

/* =================================== */
/* Want it next day
/* =================================== */
.ps_ndd_container {
	padding: clamp(15px, 3vw, 10px) 0;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: row;
	gap: 5px 15px;
	text-align: left;
}

/* =================================== */
/* Protect your scooter
/* =================================== */

.ps_protect {
	width: 230px;
	height: 2rem;
	margin-left: 0rem;
	color: #4b5c6b;
	background-color: #f1f5f7;
	border: solid #c3cfd9 2px;
	display: flex;
	gap: 5px 15px;
	padding: 10px;
}
.ps_protect p {
	font-size: 0.7em;
	line-height: 1.2em;
}
.ps_protect_icon {
	width: 28px;
}
.ps_protect .info-icon a {
	margin-bottom: -4px;
}

/* =================================== */
/* Colour swatches
/* =================================== */

/* Hide the variations table that holds the colour dropdown as we don't need it */
/* table.variations {
	display: none;
} */

.colour_attr_label, .wc-pao-addon-name {
	font-weight: 700;
	font-size: 18px;
	line-height: 22px;
	color: #000000;
	margin-bottom: 10px !important;
	margin-top: 0;
}
.swatches {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 20px;
	margin-bottom: 40px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	row-gap: 30px;
}
.swatches .swatch_container {
	height: 60px;
	width: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	overflow: visible;
	cursor: pointer;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border: 2px solid #c3cfd9;
	padding: 5px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	transition: all ease-in-out 0.4s;
	position: relative;
}
.swatches .swatch_container.active:after {
	content: "";
	  position: absolute;
	  top: -9px;              /* adjust padding as needed */
	  right: -9px;
	  width: 30px;
	  height: 30px;
	  background: url("/wp-content/themes/lifestyle-and-mobility/includes/img/circle-check-solid.svg") no-repeat center / contain;
	  /* If the image is inside a link and you want clicks to pass through: */
	  pointer-events: none;
  /* content: url("/wp-content/themes/lifestyle-and-mobility/includes/img/circle-check-solid.svg"); */
}
.swatches .swatch_container.active {
	border: 2px solid #049af8;
	position: relative;
}
.swatches .swatch_container:hover{
	border: 2px solid #049af8;
}
.swatches .swatch_container > div {
	width: 46px;
	height: 42px;
	display: block;
	padding: 2px;
	background-size: 100%;
}
.swatches .swatch_container .swatch-mask {
	width: 100%;
	height: 100%;
	background: #fff;
	opacity: 0.8;
	transition: all ease-in-out 0.4s;
	display: none;
}
.swatches .swatch_container.active .swatch-mask {
	opacity: 0;
}
.swatch_container .colour_name {
	position: absolute;
	font-size: 0.7em;
	bottom: -26px;
	width: 100%;
	left: 0;
	text-align: center;
}

/* =================================== */
/* Accessories section
/* =================================== */

/* Hide the accessories dropdown as we don't need it */
.wc-pao-addon-image-swatch-select {
	display: none !important;
}
/* Hide the accessories description */
.wc-pao-addon-description {
	display: none;
}
.wc-pao-addon-image-swatch {
	display: inline-block;
	outline: 1px none #ddd;
	padding: 0;
	margin-right: 20px;
	margin-bottom: 0px;
	max-width: 65px;
	max-height: 65px;
	border-radius: 8px;
	transition: all ease-in-out 0.4s;
	border: 2px solid #c3cfd9;
	position: relative;
	
}
.wc-pao-addon-image-swatch img {
	max-width: 100%;
	max-height: 100%;
	border-radius: 6px;
}
.wc-pao-addon-image-swatch:focus, .wc-pao-addon-image-swatch:hover {
	outline: 1px none #666;
	/* box-shadow: 0 10px 10px rgba(5, 5, 5, 0.205); */
border: 2px solid #049af8;
	
}
.wc-pao-addons-container {
	min-width: 100%;
	/* height: 10rem; */
}
.wc-pao-addon-image-swatch:active, .wc-pao-addon-image-swatch.selected {
	/* box-shadow: 0 10px 10px rgba(5, 5, 5, 0.205); */
	border: 2px solid #049af8;
}
.wc-pao-addon-image-swatch.selected:after {
	content: "";
	  position: absolute;
	  top: -9px;              /* adjust padding as needed */
	  right: -9px;
	  width: 30px;
	  height: 30px;
	  background: url("/wp-content/themes/lifestyle-and-mobility/includes/img/circle-check-solid.svg") no-repeat center / contain;
	  /* If the image is inside a link and you want clicks to pass through: */
	  pointer-events: none;
  /* content: url("/wp-content/themes/lifestyle-and-mobility/includes/img/circle-check-solid.svg"); */
}
.wc-pao-addon-image-swatch-price {
	font-weight: 300;
	font-size: 14px;
	color: #8392a0;
}
#product-addons-total {
	display: none !important;
}

/* =================================== */
/* tweak the tooltip a bit so it sits under the images better
/* =================================== */
#tiptip_holder {
	top: 0px;
}


/* =================================== */
/* New share / compare / downloads / callback buttons
/* =================================== */

.product_csd_btns {
	display: flex;
		gap: 5%;
		align-items: center;
		margin-top: 2rem;
		container-type: inline-size;
}
.csd_btn {
	width: 100%;
	border: 2px solid #b3d4f1;
	color: #2c88d9;
	font-weight: 800;
	border-radius: 5px;
	padding: 7px 10px;
	display: flex;
	gap: 8px;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	font-size: clamp(0.8rem, 2.5cqw, 1rem);
	cursor: pointer;
}
.compare-button {
	width: 100%;
	border: 2px solid #b3d4f1;
	color: #2c88d9;
	font-weight: 800;
	border-radius: 5px;
	padding: 7px 10px;
	display: flex;
	gap: 8px;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	font-size: clamp(0.8rem, 2.5cqw, 1rem);
	cursor: pointer;
	transition: 0.3s;
}
.compare-button a, .compare-button a span {
	color: #2c88d9;
}
	.csd_btn:hover, .compare-button:hover {
		border: 2px solid #5594cc;
		background: rgba(179, 212, 241, 0.209);
		color: #0073d9;
		text-decoration: none !important;
	}
	.compare-button:hover a {
		text-decoration: none !important;
	}
	
.compare-button::before{
	  content: "";
	  display:inline-block;
	  width: 1.7rem;
	  height: 1.7rem;
	  margin-right: .45rem;
	  background-image: url("/wp-content/themes/lifestyle-and-mobility/includes/img/arrows-to-dotted-line-regular-full.svg");
	  background-repeat: no-repeat;
	  background-position: center;
	  background-size: contain;
	  vertical-align: -0.15em;
	}	
	
/* .compare-button .added .label {
	font-size: 0.8em !important;
}	 */
	
.csd_btn_compare i {
		width: 25px;
	  height: 25px;
	background: url("/wp-content/themes/lifestyle-and-mobility/includes/img/arrows-to-dotted-line-regular-full.svg") no-repeat center / contain;
}	
.csd_btn_share {
	background: #2c88d9;
	border: 2px solid #0e5695;
	color: #fff;
}
.csd_btn_share i {
		width: 20px;
	  height: 20px;
	background: url("/wp-content/themes/lifestyle-and-mobility/includes/img/share-nodes-solid-full.svg") no-repeat center / contain;
	filter: brightness(100);
}	
.csd_btn_share:hover i {
	filter: brightness(0.9);
}
.csd_btn_downloads i {
		width: 20px;
	  height: 20px;
	background: url("/wp-content/themes/lifestyle-and-mobility/includes/img/file-arrow-down-solid-full.svg") no-repeat center / contain;
}	

.csd_btn_callback {
	font-size: clamp(0.9rem, 2.3cqw, 1.1rem);
	width: 31%;
	padding: 9px 10px;
	margin-left: 0rem;
	height: 2rem;
}	
.csd_btn_callback i {
		width: 25px;
	  height: 25px;
	background: url("/wp-content/themes/lifestyle-and-mobility/includes/img/phone-volume-solid-full.svg") no-repeat center / contain;
}		

.csd_btn_whatsapp {
	font-size: clamp(0.9rem, 2.3cqw, 1.1rem);
	width: 31%;
	padding: 9px 10px;
	margin-left: 0rem;
	height: 2rem;
}	
.csd_btn_whatsapp i {
		width: 35px;
	  height: 35px;
	background: url("/wp-content/themes/lifestyle-and-mobility/includes/img/whatsapp-brands-solid-full.svg") no-repeat center / contain;
}	

.after_cart_btns {
	width: 100%;
	display: flex;
	margin-top: 2rem;
	position: relative;
	gap: 1rem;
}

.wc-favourite-button-wrapper {
	margin: 0px 0;
	white-space: nowrap;
	width: 55%;
	display: none;
}
.after_cart_btns .favourite-button {
	height: 3.3rem;
	padding: 9px 10px;
	font-size: clamp(0.9rem, 2.3cqw, 1.1rem);
	font-weight: 800;
	border-radius: 5px;
	width: 100%;
	align-items: center;
	justify-content: center;
}
.after_cart_btns .favourite-button i {
	font-size: 24px;
}
.favourite-button:hover {
	transform: translateY(0px);
	box-shadow: 0 4px 8px rgba(231, 76, 60, 0.0);
}
.floating-favourite-icon {
	bottom: 20px;
	left: 20px;
	z-index: 99999;
}
	
	
/* =================================== */
/* Layout changes for main 2 col section
/* =================================== */	

#section-grid {
	display: grid;
	grid-template-columns: 45% 1fr;
	grid-gap: 7vw;
	padding-top: 2rem;
}

#section-grid div.summary {
	float: none !important;
	width: 100% !important;
	clear: none;
}


/* =================================== */
/* Hide the QTY field
/* =================================== */
.woocommerce div.product form.cart div.quantity {
	display: none !important;
}

/* =================================== */
/* Restyle the basket buttons
/* =================================== */

.woocommerce div.product form.cart .button {
	vertical-align: middle;
	float: left;
	border-radius: 5px;
	padding: 10px 18px;
	font-size: clamp(1.2rem, 2.9cqw, 1.3rem);
	background-color: #2c88d9;
	border: 2px solid #2c88d9;
	width: 66.5%;
}
	.woocommerce div.product form.cart .button:hover {
		background-color: #fff;
		text-decoration: none;
	}
.woocommerce button.button.disabled, .woocommerce button.button.alt.disabled, .woocommerce button.button.alt.disabled:hover {
	padding: 10px 18px;
	color: #aba9a9;
	background-color: #fff !important;
	border-color: #cccccc !important;
	text-decoration: none;
}	
	
	.woocommerce-variation-add-to-cart {
		gap: 0;
		margin-top: clamp(15px, 3vw, 50px);
		position: relative;
		container-type: inline-size;
	}
	.product-type-simple form.cart .button.single_add_to_cart_button {
		margin-left: -15px !important;
		margin-top: 1rem !important;
	}
	
	
	/* =================================== */
	/* Key features bar
	/* =================================== */
	
	.key_features {
		background: #f1f5f7;
		border-top: 2px solid #c3cfd9;
		border-bottom: 2px solid #c3cfd9;
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		grid-gap: 2rem;
		margin-bottom: 6rem;
		margin-top: -2rem;
		padding: 2rem 6vw;
	}
	.key_feature {
		display: flex;
		gap: 20px;
		align-items: center;
		justify-content: center;
	}
	.key_feature .key_feature_icon {
		width: 30px;
			height: 30px;
			display: flex
		;
	}
	.key_feature .key_feature_icon img {
		min-width: 100%;
	}
	.key_feature .key_feature_icon svg path {
		fill: #293845;
	}
	.key_feature .key_feature_text {
		font-size: 18px;
		color: #293845;
		font-family: 'Poppins';
		font-weight: 500;
	}
	

/* =================================== */
/* favorites button
/* =================================== */	

.btn_favorite {
	width: 45px;
	height: 45px;
	margin-left: 1rem;
	position: absolute;
	right: 0px;
	top: 0; }

	  .btn_favorite .icon {
		position: absolute; 
		top: 0;
		right: 0;
		width: 50px;
		height: 50px;
		fill: #d3465a !important;
		transform-origin: center;
	  }
	  .btn_favorite:hover .icon{
		animation: svgPulse 1s ease-out infinite;
	  }
	  @keyframes svgPulse{
		0%   { transform: scale(1);    filter: drop-shadow(0 0 0 rgba(211, 70, 90, 1)); }
		70%  { transform: scale(1.08); filter: drop-shadow(0 0 14px rgba(255,46,99,0)); }
		100% { transform: scale(1);    filter: drop-shadow(0 0 0 rgba(255,46,99,0)); }
	  }
	  
	  
/* Fix for menu going under image thumbs	   */
#tns1-mw {
		  z-index: 8 !important;
	  }	  
	  
	  
	  
/* =================================== */
/* Sticky basket nav bar 
/* =================================== */
	  
	  /* Sticky bar container */
/* Hidden by default — no flash */
	  .sticky-bar{
		position: fixed; 
		left:0; 
		right:0; 
		z-index:9999;
		opacity: 0; 
		visibility: hidden; 
		pointer-events: none;
		transition: transform .25s ease, opacity .2s ease, visibility 0s linear .2s;
		background: #d5e7f7; 
		color:#293845; 
		padding: 23px 116px; 
		gap:16px;
		display:flex; 
		align-items:center; 
		box-shadow:0 2px 10px rgba(0,0,0,.08);
		/* border-top: 2px solid #c3cfd9; */
		border-bottom: 1px solid #bdbdbd;
		
	  }
	  /* .sticky-bar.at-top    { top:0;    transform: translateY(-100%); } */
	  /* Changed to keep desktop bar at the bottom without breaking JS */
	  .sticky-bar.at-top    { bottom: env(safe-area-inset-bottom, 0px); transform: translateY(100%); }
	  .sticky-bar.at-bottom { bottom: env(safe-area-inset-bottom, 0px); transform: translateY(100%); }
	  
	  /* Visible state */
	  .sticky-bar.is-visible{
		opacity: 1; visibility: visible; pointer-events: auto;
		transition: transform .25s ease, opacity .2s ease;
	  }
	  .sticky-bar.is-visible.at-top,
	  .sticky-bar.is-visible.at-bottom{ transform: translateY(0); }
	  
	  /* Admin bar offset */
	  body.admin-bar .sticky-bar.at-top { top:32px; z-index: 2; }
	  
	  /* Layout bits */
	  .sticky-bar__nav{
		display: flex;
		align-items: center;
		gap: clamp(12px, 3vw, 38px);
		overflow: auto hidden;      /* scrollable on small screens */
		-webkit-overflow-scrolling: touch;
		flex: 1 1 auto;
	  }
	  .sticky-bar__nav .item{
		display: inline-flex;
		align-items: center;
		gap: 8px;
		font-weight: 600;
		text-decoration: none;
		color: inherit;
		white-space: nowrap;
		opacity: .8;
		font-size: 14px;
	  }
	  .sticky-bar__nav .item:hover{ opacity: 1; }
	  
	  .sticky-bar__nav .ico{
		display: grid; 
		place-items: center;
		width: 24px; 
		height: 24px;
		border-radius: 6px;
		/* background: rgba(0,0,0,.15); */
		font-size: 14px;
	  }
	  
	  .sticky-bar__cta{
		display: inline-flex;
		align-items: center;
		gap: 12px;
		margin-left: auto;
		flex: 0 0 auto;
	  }
	  .sticky-bar__price{
		font-size: clamp(16px, 2.3vw, 24px);
		font-weight: 800;
	  }
	  .sticky-bar__price_from {
		  font-size: 14px;
	  }
	  
	  /* CTA button */
	  .sticky-bar__button{
		appearance: none;
		border: 0;
		background: #1e7dd7;
		color: #fff;
		font-weight: 700;
		padding: 10px 14px;
		border-radius: 4px;
		cursor: pointer;
		white-space: nowrap;
		text-decoration: none;
		font-size: 14px;
	  }
	  .sticky-bar__button:focus-visible{ outline: 2px solid #fff; outline-offset: 2px; }
	  
	  /* highlight missing variation selects */
	  .wc-var-missing {
		outline: 2px solid #e11d48; /* rose-600 */
		outline-offset: 2px;
	  }
	  
	  /* Mobile: pin to bottom; Desktop: pin to top */
	  @media (max-width: 767px){
		.sticky-bar { border-radius: 0px 0px 0 0; }
	  }
	  @media (min-width: 768px){
		.sticky-bar { border-radius: 0 0 0px 0px; }
	  }
	  
	  /* Avoid content being hidden when bar is at bottom */
	  body.has-sticky-bottom{
		padding-bottom: calc(var(--sticky-bar-h, 64px) + env(safe-area-inset-bottom, 0px));
	  }
	  
	  /* Smooth scrolling default (fallback) */
	  html { scroll-behavior: smooth; }
	  
	  /* fix for not floating over sticky nav */
	  .footer_socials {
		  z-index: 2;
	  }
	  
	  /* moves the compare bar above our sticky basket bar */
	  #yith-woocompare-preview-bar{
		transition: bottom .2s ease; /* smooth lift/drop */
	  }

/* =================================== */
/* Related products 
 /* =================================== */		  
	  /* box height fix */
	  .woocommerce ul.products li.product a {
		  height: auto;
	  }
	  /* hide sub title */
	  .wt-crp-heading {
		  display: none;
	  }
	  
/* =================================== */
/* Large content area
 /* =================================== */	  
 
 /* Hide standard tabs for now while in dev */
 .ps_tabs_container, .ps_info_container {
	 display: none;
 }
 
 
 #product-overview {
	 display: grid;
	 grid-template-columns: 1fr 1fr;
	 gap: 6rem;
 }
 
 /* =================================== */
 /* Specifications table
 /* =================================== */
 .features_overview {
	  padding: 2rem;
	  background: #f6f6f6;
	  border-radius: 10px;
	  font-family: 'Poppins';
  }
  .features_overview h3 {
	  font-weight: 500;
  }
 .features_overview table.shop_attributes th, .features_overview table.shop_attributes td, .features_overview .woocommerce-product-attributes-item__value p {
	  font-size: 12px;
  }
  .features_overview table.shop_attributes th, .features_overview table.shop_attributes td {
	  padding: 1px 5px 1px 5px;
  }
  .features_overview table.shop_attributes tr:nth-child(even) {
	  background: #eaeaea !important;
  }
  .features_overview table.shop_attributes tr {
	  border-bottom: 1px solid #ffffff;
  }
  
  /* turn the table into a grid with 4 columns if there aren't any videos in the 2nd column */
  #product-overview.default_1_col {
	  grid-template-columns: 1fr;
	  gap: 0rem;
  }
  .two-col table {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0px;                 /* optional spacing between “cells” */
  }
  
  /* flatten table wrappers so cells become grid items */
  .two-col table thead,
  .two-col table tbody,
  .two-col table tfoot,
  .two-col table tr {
	display: contents;
  }
  /* style cells as boxes */
  .two-col table th,
  .two-col table td {
	border-bottom: 1px solid #ffffff !important;
	padding: .5rem;
	width: 100% !important;
	background: #eaeaea !important;
  }
  .features_overview.two-col table.shop_attributes tr:nth-child(4n-1) th,
  .features_overview.two-col table.shop_attributes tr:nth-child(4n-1) td,
  .features_overview.two-col table.shop_attributes tr:nth-child(4n) th,
	.features_overview.two-col table.shop_attributes tr:nth-child(4n) td {
	  background: transparent !important;
  }

  .features_overview.two-col table.shop_attributes td {
		padding: 1px 15px 1px 15px;
	}
	.features_overview.two-col table.shop_attributes td:nth-child(4n-2) {
		border-right: 4px solid #f0f0f0;
	}
  
  
  /* Responsive youtube embeds */
  .video-hero, .video-card {
	  display: flex;
		  justify-content: center;
	  }		  
	.video-hero iframe, .video-card iframe {
		  aspect-ratio: 16 / 9;
		  width: 100% !important;
	  }
  .gallery_image_overview {
	  padding: 2rem;
	  width: 45%;
	  margin: auto;
  }
  .gallery_image_overview img {
		min-width: 100%;
		border-radius: 16px;
	}
	
	.faq_box h3 {
		font-weight: 500;
	}
	#faq_section {
		background: #f1f5f7;
		font-family: 'Poppins';
	}
	.faq_section_container {
		display: grid;
		 grid-template-columns: 60% 25%;
		 gap: 15%;
	}
	.faq_answer p {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	.faq_container.show .faq_question {
		color: #1e7dd8;
	}
	
	
	.question_cta {
		background: #0c1114;
		border-radius: 14px;
		overflow: hidden;
		display: flex;
		gap: 20px;
		align-items: flex-start;
		justify-content: space-between;
		flex-direction: column;
		max-height: 500px;
	}
	.question_cta_img {
		background: url(/wp-content/uploads/2024/12/Online-Denise.png) no-repeat top / cover;
		height: 300px;
		width: 100%;
	}
	.question_cta_info {
		color: #fff;
		text-align: center;
		padding-bottom: 1.5rem;
		width: 100%;
	}
	.question_cta_info p {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	.question_cta_info h4 {
		font-size: clamp(18px, 4vw, 24px);
		line-height: 1.5em;
		color: #fff;
	}
	.question_cta_info strong {
		display: block;
		font-size: 18px;
		padding-top: 0.3rem;
	}
	.question_cta_info strong i {
		display: inline-block;
		width: 18px;
		/* margin: 6px 5px 5px 0; */
		position: relative;
		top: 3px;
		left: -5px;
	}
	
	
	
	/* =================================== */
	/* Main full description area
	/* =================================== */
	
.product_description_full {
	/* padding-bottom: 1rem; */
}

	
.pl-grid-2x2 {
		font-family: 'Poppins';
		  display:grid;
		  grid-template-columns:repeat(2,minmax(0,1fr));
		  grid-auto-flow: row dense;    /* allow backfilling */
		  align-items: center;
		  gap: clamp(16px, 2rem, 3rem);
		  row-gap: 3rem;
		}
		.pl-grid-2x2 > * { min-width: 0; } /* allow items to shrink in their track */
		.pl-grid-2x2 > .row{ display:contents; }
		.pl-grid-2x2__content{ grid-column:1; }
		.pl-grid-2x2__media  { grid-column:2; }
		.pl-grid-2x2 > .row:nth-child(even) .pl-grid-2x2__content{ grid-column:2; }
		.pl-grid-2x2 > .row:nth-child(even) .pl-grid-2x2__media  { grid-column:1; }
		
		
		.pl-grid-2x2__media img {
			display: block;
			width: 70%;
			height: auto;
			border-radius: 16px;
			margin: auto;
		}
		.pl-grid-2x2 > .row:nth-child(even) .pl-grid-2x2__media img  { margin: auto auto auto 0 ; }
		.pl-grid-2x2 > .row:nth-child(odd) .pl-grid-2x2__media img  { margin: auto 0 auto auto; }
		
		
		@media (max-width:992px){
		  .pl-grid-2x2 { grid-template-columns:1fr; }
		  .pl-grid-2x2 > .row{ display:grid; }
		  .pl-grid-2x2__content, .pl-grid-2x2__media{ grid-column:1 !important; }
		  .pl-grid-2x2__media img {
			  width: 100%;
			  margin: 3rem auto !important;
		  }
		  .pl-grid-2x2 > .row:nth-child(even) .pl-grid-2x2__content{ order:1; }
		  .pl-grid-2x2 > .row:nth-child(even) .pl-grid-2x2__media  { order:2; }
		 
		}

.pl-grid-2x2 h2, .pl-grid-2x2 h3, .pl-grid-2x2 h4, .pl-grid-2x2 h5, .pl-grid-2x2 h6 {
			font-weight: 500;
				font-size: clamp(22px, 5vw, 30px);
		}

/* =================================== */
/* Full feature list with icons
/* =================================== */


.full_feature_list_item_icon svg path {
	fill: #0d91e5;
}
.full_feature_list_item_text {
	font-size: 18px;
	color: #5b6d7c;
	font-family: 'Poppins';
	font-weight: 500;
}
.full_feature_list {
	 --gap: 6rem;
	 display: flex;
	 flex-wrap: wrap;
	 gap: var(--gap);
	 justify-content: center;
	 margin-bottom: 8rem;
	 margin-top: 8rem;
	 padding: 4rem;
	 border-top: 1px solid #eee;
	 border-bottom: 1px solid #eee;
}

/* 4 columns on desktop */
.full_feature_list_item {
  /* exactly 4 per row accounting for 3 gaps between them */
  flex: 0 1 calc((100% - 3 * var(--gap)) / 4);
  display: flex;                 /* for vertical centering of icon/text */
  flex-direction: column;
  align-items: center;           /* centers icon block horizontally */
  text-align: center;            /* centers the text */
}

/* icon above text, centered */
.full_feature_list_item_icon {
  display: grid;                 /* easy centering if it has inner SVG/img */
  place-items: center;
  width: 30px;
  height: 30px;
  margin-bottom: 12px;
}

/* responsive: 2 columns on tablets, 1 on phones (tweak breakpoints) */
@media (max-width: 900px) {
  .full_feature_list_item {
	flex-basis: calc((100% - var(--gap)) / 2);
  }
}
@media (max-width: 520px) {
  .full_feature_list_item {
	flex-basis: 100%;
  }
}


/* =================================== */
/* Finance
/* =================================== */

.finance_options {
	margin-top: 4rem;
	padding: 3rem;
	text-align: center;
	background-color: #f1f7ff;
	border-radius: 12px;
}
.finance_options_logos {
	display: grid; 
	grid-template-columns:repeat(6,minmax(0,1fr));
	align-items: center;
	justify-content: center;
	gap: 3rem;
}
.finance_options_logos div {
	display: flex;
	align-items: center; 
	justify-content: center;
}
.finance_options_logos div img {
	max-height: 4rem;
}


/* =================================== */
/* Reviews
/* =================================== */

#reviews .show-both {
	display: grid;
	  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
	  gap: clamp(16px, 6rem, 6rem);
	  align-items: start;
}
.woo-reviews {
	position: relative;
}
.woo-reviews-box {
	height: 555px;
	overflow-y: scroll;
}
/* .woo-reviews-box::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
	height: 10px;
  pointer-events: none;
  background: linear-gradient(to top, rgb(0 0 0 / 10%), rgba(0, 0, 0, 0));
} */


#reviews {
	padding-bottom: 0;
}

#reviews .woo-reviews h3 {
	margin: auto;
	text-align: center;
	margin-top: 2.8rem;
	margin-bottom: 4.5rem;
	width: 55%;
	font-weight: 600;
	font-size: 1.5em;
}

#reviews .commentlist {
	list-style: none;
	margin: 0;
	padding: 0;
}
#reviews .commentlist li {
	background: #f8f9fa;
	border-bottom: 1px solid #e2e7ee;
	margin-left: 0;
	padding: 1rem;
	margin-bottom: 1rem;
}
#reviews .commentlist .description {
	font-size: 0.8em;
	line-height: 1.5em;
}
#reviews .commentlist .meta {
	font-size: 0.8em;
	line-height: 1.4em;
}

.comment-reply-title {
	font-weight: 700;
	padding-bottom: 0.1rem;
	border-bottom: 1px solid #dedede;
	width: 100%;
	display: block;
	margin-bottom: 1rem;
}
#review_form_wrapper {
	padding: 30px;
	background-color: #f6f8f9;
	border-radius: 0px;
}
.woocommerce #review_form #respond textarea {
	background-color: #fff;
}
.woocommerce-noreviews {
	display: none;
}
.woocommerce #review_form #respond .form-submit input {
	padding: 8px 28px;
}

/* =================================== */
/* Downloads box
/* =================================== */
#downloads {
padding: 3rem 5% 3rem 5%;
margin-top: 6rem;
background: #0074be;
border-radius: 12px;
/* border: 2px solid #c3cfd9; */
font-family: 'Poppins';
width: 90%;
margin-left: auto;
margin-right: auto;
}
#downloads h2 {
	text-align: center;
	font-size: clamp(26px, 5vw, 30px);
	color: #fff;
	font-weight: 500;
}
.downloads-buttons {
	display: grid;
	 grid-auto-flow: column;            /* create columns per item */
	   grid-auto-columns: clamp(220px, 33vw, 360px);
	  gap: clamp(16px, 3rem, 3rem);
	  justify-content: center;           /* center the group */
	  margin-top: 3rem;
}


/* when 3+ items, you can switch back to 3 equal cols */
.downloads-buttons:has(> :nth-child(3)) {
  grid-auto-flow: row;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:1rem;
}



.downloads-button a {
	padding: 2rem;
	border: 3px solid #a4d5ff;
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: center;
	color: #4b5c6b;
	font-weight: 800;
	width: auto;
	background: #fff;
	height: 4rem;
	border-radius: 8px;
}
.downloads-button a:hover {
	background: #fff;
	text-decoration: 	none;
	color: #0283ff;
	border: 3px solid #03d7fc;
	box-shadow:0 12px 20px rgba(0,0,0,.4);
}
.downloads-button div {
	width: 85%;
	line-height: 1.3em;
}
.downloads-button i {
	width: 44px;
		display: flex;
		align-items: center;
}
.downloads-button i img {
	width: 60px;
	max-height: 60px;
	max-width: 60px;
}
/* Button + icon base */
.downloads-button a {
  text-decoration:none;
}
.downloads-button a i {
  position:relative;
   line-height:1; /* anchor for badge */
}

/* Badge variables */
.downloads-button{
  --badge-size: 24px;         /* green circle size */
  --badge-offset: -1px;       /* how far it overlaps the icon corner */
  --badge-bg: #0283ff;        /* green 600 */
  --badge-ring: #fff;        /* thin ring to separate from background */
  --badge-icon: url('/wp-content/themes/lifestyle-and-mobility/includes/img/download-solid-full-white.svg'); /* overridden inline in HTML */
}

/* Green circle (badge) */
.downloads-button a i::after{
  content:"";
  position:absolute;
  right: var(--badge-offset);
  bottom: var(--badge-offset);
  width: var(--badge-size);
  height: var(--badge-size);
  background: var(--badge-bg);
  box-shadow: 0 0 0 2px var(--badge-ring); /* optional white ring */
  border-radius: 50%;
  pointer-events:none;
  transform-origin:center;
}

/* White SVG inside the circle (uses mask so it inherits color) */
.downloads-button a i::before{
content:"";
  position:absolute;
  right: calc(var(--badge-offset) + 3px);
  bottom: calc(var(--badge-offset) + 3px);
  width: calc(var(--badge-size) - 6px);
  height: calc(var(--badge-size) - 6px);
  background-image: var(--badge-icon);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events:none;
  transform-origin:center;
  z-index: 2;
}

/* Hover: pulse the badge (both layers) */
.downloads-button a:hover i::after,
.downloads-button a:hover i::before{
  animation: badgePulse .9s ease-in-out infinite;
}

@keyframes badgePulse{
  0%,100% { transform: translateY(0) scale(1); }
  50%     { transform: translateY(-5px) scale(1); }
}

/* Motion safety */
@media (prefers-reduced-motion: reduce){
  .downloads-button a:hover i::after,
  .downloads-button a:hover i::before{ animation:none; }
}

/* =================================== */
/* Sort out the product gallery
/* =================================== */

.woocommerce div.images img {
max-height: 100%;
max-width: 100%;
}
#section-grid .woocommerce-product-gallery {
	float: none !important;
	width: 100%;
}

.flex-direction-nav {
	display: none;
}



#callback-form h2.modal-title {
	color: #0074be;
}
#callback-form .gform_submission_error {
	font-size: clamp(16px, 3vw, 18px);
	padding-bottom: 1rem;
	color: #f14040;
}


/* =================================== */
/* Tame the related products boxes - remove most of the info
/* =================================== */

.wt-related-products .pl_rating {
	display: none;
}
.wt-related-products .pl_motability {
	display: none;
}
.wt-related-products .info-icon {
	display: none;
}
.wt-related-products .pl_ticked_labels {
	display: none !important;
}
.wt-related-products .snap-finance-product-badge {
	display: none;
}
.wt-related-products .pl_title {
	font-size: 22px;
	font-weight: 600;
	line-height: 1.2em;
	min-height: 3rem;
}
.wt-related-products .pl_details {
	gap: 0;
	
}
.wt-related-products .pl_price_container {
	margin-bottom: 2rem;
	min-height: 4rem;
}

.wt-related-products .intro_content p {
	font-family: 'Poppins';
	font-weight: 600;
}

/* =================================== */
/* Variations dropdown - don't need to show colour but we do need the other options
/* =================================== */

/* Hide the row (colour) */
table.variations tr:has(label[for="pa_colour"]) {
  display: none !important;
}
.woocommerce div.product form.cart .variations label {
	font-weight: 700;
	font-size: 18px;
	line-height: 22px;
	color: #000000;
	margin-bottom: 10px !important;
	margin-top: 0;
}
.woocommerce div.product form.cart .variations th {
	text-align: left;
	padding-bottom: 10px;
}
.woocommerce div.product form.cart .variations td, .woocommerce div.product form.cart .variations th {
	line-height: normal;
}
.woocommerce div.product form.cart .variations tr:not(:first-child) th {
	padding-top: 20px;
}
.woocommerce-variation-price {
	padding-left: 2rem;
}

/* =================================== */
/* Thinner height on the main nav bar + remove arrows
/* =================================== */

.main_menu > li > a {
	padding: 20px 20px 15px 20px;
	line-height: 15px;
}
.main_menu > li:last-child > a {
	position: relative;
}
.menu-item-23397 a:before {
	content: "";
	position: absolute;
	left: 16px;
	top: 55%;
	width: 60px;
	height: 150px;
	background: url('./includes/img/lifestyle-menu.png') no-repeat center / contain;
}
	.main_menu > li.menu-item-has-children > a:after, ul.sub-menu > li.menu-item-has-children > a:after {
	display: none;
}


/* =================================== */
/* Mobile styles
/* =================================== */

@media (max-width: 1300px) {
	.main_container {
		border-top: 1px solid #eee;
	}
}	
@media (max-width: 1150px) {
	.after_cart_btns {
		flex-wrap: wrap;
	}
	.downloads-buttons:has(> :nth-child(3)) .downloads-button div {
		line-height: 1.2em;
		font-size: 0.8em;
	}
}	
@media (max-width: 992px) {
	#section-grid {
		display: grid;
		grid-template-columns: 1fr;
		grid-gap: 7vw;
	}
	.btn_favorite {
		position: relative;
	}
	.price_match {
		/* right: 64px; */
	}
	.after_cart_btns {
		flex-wrap: nowrap;
	}
	#product-overview {
		grid-template-columns: 1fr;
		gap: 6rem;
	}
	.full_feature_list_item_text {
		font-size: 14px;
		line-height: normal;
	}
	.key_feature {
		  flex-direction: column;
		  gap: 5px;
		  justify-content: flex-start;
	  }
	  .key_feature .key_feature_text {
			font-size: 14px;
			text-align: center;
		}
	.faq_section_container {
		 grid-template-columns: 55% 35%;
		 gap: 10%;
	}	
	#reviews .woo-reviews h3 {
		width: 90%;
	}
	.finance_options_logos {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 4rem;
		row-gap: 2rem;
	}
	.downloads-buttons:has(> :nth-child(3)) {
		grid-auto-flow: row;
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 1rem;
	}
	.downloads-buttons:has(> :nth-child(3)) .downloads-button div {
		line-height: 1.3em;
		 font-size: 14px;
	}
}

@media (max-width: 768px) {
	.single-product .page_banner {
		display: none;
	}
	.single-product #section-grid {
		grid-template-columns: 1fr;
		grid-gap: 2rem;
		padding-top: 0;
	}
	.product_description_full {
		padding-top: 2rem;
		padding-bottom: 0rem;
	}
	.woocommerce span.in_store {
		margin-top: -27px;
	}
	#product_breadcrumbs_inline {
		display: none;
	}
	 /* hide gallery thumbs */
	.woocommerce-product-gallery ol {
		display: none !important;
	}
	.woocommerce div.product div.images.woocommerce-product-gallery > div:first-child {
		border: 1px none #f0f0f0;
	}
	
	.woocommerce-product-gallery .flex-viewport {
		overflow: visible !important;
		position: relative;

		transition: none;
		margin-left: -12px !important;
	}
	
	.flex-direction-nav {
		display: block;
	}
	/* Position the arrow buttons over the main image */
	.woocommerce div.product div.images .flex-direction-nav a {
	  position: absolute;
			  top: 50%;
			  transform: translateY(-50%);
			  z-index: 9;
			  width: 50px;
			  height: 50px;
			  border-radius: 999px;
			  background: rgb(239, 240, 241);
			  color: #fff;
			  display: grid;
			  place-items: center;
			  text-indent: -9999px;
			  overflow: hidden;
			  opacity: 1;
			  border: 2px solid rgb(7, 136, 249);
	}
	
	.woocommerce div.product div.images .flex-direction-nav {
		list-style-type: none;
	}
	
	/* Left / right placement */
	.woocommerce div.product div.images .flex-direction-nav .flex-nav-prev { display: none;}
	.woocommerce div.product div.images .flex-direction-nav .flex-nav-next { 
		position: absolute;
		right: 40px;
		top: 50%;
	}
	
	/* Icon glyphs */
	.woocommerce div.product div.images .flex-direction-nav .flex-nav-prev::after { 
	  content: "‹";
	  text-indent: 0; font-size: 24px; line-height: 1;
	}
	.woocommerce div.product div.images .flex-direction-nav .flex-nav-next::after {
	  content: "›";
	  text-indent: 0;
	  font-size: 64px;
	  line-height: 1;
	  position: absolute;
	  z-index: 9;
	  color: rgb(7, 136, 249);
	  font-weight: 100;
	  top: -40px;
	  left: 18px;
	  pointer-events: none;
	}
	
	/* Optional: only show on hover for pointer devices */
	@media (hover:hover) {
	  .woocommerce div.product div.images .flex-direction-nav a { opacity: 0; transition: opacity .2s; }
	  .woocommerce div.product div.images:hover .flex-direction-nav a { opacity: 1; }
	}
	
	
	/* A) Aspect ratio */
	  .woocommerce div.product div.images .woocommerce-product-gallery__image {
		aspect-ratio: 1 / 1;     /* try 1 / 1 or 16 / 9 */
	  }
	  .woocommerce div.product div.images .woocommerce-product-gallery__image img, .woocommerce div.product div.images .woocommerce-product-gallery__image a img{
		width: 100%; height: 100%; object-fit: cover;
		aspect-ratio: 1 / 1; 
		border-right: 1px solid #fff !important;
	  }
	
	  /* B) Fixed height */
	  /* .woocommerce div.product div.images .flex-viewport{ height: 320px !important; } */
	  /* .woocommerce div.product div.images .woocommerce-product-gallery__image img{ height: 100%; width: auto; object-fit: contain; } */
	
	.woocommerce div.product div.images .woocommerce-product-gallery__wrapper > div {
		/* width: 351px !important; */
		/* margin-right: 4px !important; */
	}
	.tns-outer {
		display: none;
	}
	.product_info_container {
		display: flex;
		flex-direction: column;
	}
	.price_match_title, .product_title   { order: -1; }   /* smaller number = earlier */
	  .trustpilot-small, .btn_favorite   { order: -2; margin-top: -50px; }
	  
	  
	  .trustpilot-small {
		  padding: 1em 0;
		  overflow: hidden;
		  position: relative;
		  margin-left: -14px;
		  margin-top: -43px;
	  }
	  .trustpilot-small .trustpilot-widget {
		  width: 35rem !important;
		  left: -73px !important;
		  position: absolute !important;
		  top: 10px !important;
	  }
	  .trustpilot-small .trustpilot-widget iframe {
		  width: 130% !important;
		  overflow: hidden !important;
		  left: -121px !important;
	  }
	  
	  .btn_favorite {
		  width: 25px;
		  height: 25px;
		  margin-left: 1rem;
		  position: absolute;
		  left: 82vw;
	  }
	  .btn_favorite .icon {
		  position: absolute;
		  top: 12px;
		  right: 9px;
		  width: 30px;
		  height: 30px;
	  }
	  /* hide the plain text, keep icon visible */
	  .after_cart_btns .favourite-button {
		font-size: 0;           /* hides text nodes */
		white-space: nowrap;    /* avoid stray line breaks */
		height: 2.8rem;
		margin-top: 1rem;
	  }
	  
	  .after_cart_btns .favourite-button i {
		font-size: 24px;        /* show the icon at normal size */
		line-height: 1;
		transform: translatex(4px);
	  }
	  
	  .after_cart_btns {
		  width: 100%;
		  margin-top:1rem;
		  gap: 0.6rem;
		  flex-wrap: nowrap;
	  }
	  
	  .key_features {
		  grid-template-columns: 1fr 1fr 1fr 1fr;
		  grid-gap: 1rem;
		  margin-bottom: 6rem;
		  margin-top: -2rem;
		  padding: 1rem;
		  position: absolute;
		  top: 491px;
		  min-height: 4.5rem;
	  }
	  .key_feature {
		  flex-direction: column;
		  gap: 5px;
		  justify-content: flex-start;
	  }
	  .key_feature .key_feature_text {
		  font-size: 11px;
		  text-align: center;
		  line-height: 1.1em;
	  }
	  .key_feature .key_feature_icon {
		  width: 25px;
		  height: 25px;
	  }
	  
	  .woocommerce div.product .product_title {
		  margin-top: 10rem;
		  font-size: 1.6em !important;
	  }
	  
	  .ps_price_container {
		  position: relative;
	  }
	 .price_match {
		 width: 4.5rem;
		 position: absolute;
		 top: -31px;
		 left: 74vw;
	 }
	 .woocommerce div.product .price_match_title .product_title {
		 width: 100%;
	 }
	 
	 .ps_ndd_container {
		 text-align: left;
		 font-size: 0.8em;
		 margin-top: 1rem;
		 margin-bottom: 1rem;
		 line-height: normal;
	 }
	 
	 
	 .swatches {
		 gap: 10px;
		 margin-bottom: 30px;
		 flex-wrap: wrap;
	 }
	 .swatches .swatch_container {
		 height: 50px;
		 width: 50px;
	 }
	 .swatches .swatch_container > div {
		 width: 36px;
		 height: 32px;
	 }
	 
	 .woocommerce form .wc-pao-addons-container .form-row {
		 flex-wrap: wrap;
	 }
	 .wc-pao-addon-image-swatch {
		 margin-right: 10px;
		 max-width: 50px;
		 max-height: 50px;
	 }
	 
	 .ps_protect {
		 width: 100%;
		 margin-left: 0rem;
		 display: flex;
		 margin-top: 2rem;
		 margin-bottom: 2rem;
	 }
	 .ps_protect p {
		 font-size: 0.8em;
		 line-height: 1.0em;
		 margin: 2px 0;
	 }
	 
	 .csd_btn_callback {
		 width: 50%;
		 padding: 9px 10px;
		 margin-left: 0rem;
		 margin-top: 1rem;
		 height: 1.4rem;
	 }
	 .csd_btn_whatsapp {
		 width: 50%;
		 padding: 9px 10px;
		 margin-left: 0rem;
		 height: 1.4rem;
		 margin-top: 1rem;
	 }
	 
	 .product_csd_btns {
		 display: flex;
		 gap: 10px;
		 align-items: center;
		 margin-top: 1rem;
		 width: 100%;
	 }
	 .product_csd_btns .csd_btn {
		 font-size: 0.7em;
	 }
	 
	 #product-overview {
		 grid-template-columns: 1fr;
		 gap: 2rem;
	 }
	 
	 .sticky-bar {
		 padding: 15px;
		 flex-direction: column;
	 }
	 .sticky-bar__cta {
		 margin-left: 0;
		 flex: 0 0 auto;
		 width: 100%;
		 justify-content: space-between;
		 margin-top: 0.5rem;
	 }
	 .sticky-bar__nav {
		 width: 100%;
		 /* flex-direction: column; */
		 flex-wrap: wrap;
		 padding-top: 1rem;
		 justify-content: space-evenly;
	 }
	 .sticky-bar__button {
		 font-size: 18px;
	 }
	 .sticky-bar__price {
		 font-size: clamp(28px, 2.3vw, 24px);
		 font-weight: 800;
	 }
	 
	 .gallery_image_overview {
		 padding: 0;
		 width: 100%;
		 margin: 2rem auto;
	 }
	 
	 .pl-grid-2x2 {
		 gap: clamp(16px, 2rem, 2rem);
	 }
	 .pl-grid-2x2__media {
		 margin: 0;
		 padding: 0;
	 }
	 .pl-grid-2x2__media--second {
		 order: 2;
	 }
	 
	 .faq_section_container {
		 grid-template-columns: 1fr;
		 gap: 2rem;
	 }
	 
	 #reviews .show-both {
		 grid-template-columns: 1fr;
		 gap: clamp(16px, 2rem, 6rem);
	 }
	 #reviews .woo-reviews h3 {
		 margin-top: 1rem;
		 margin-bottom: 2rem;
		 width: 100%;
	 }
	 
	 #downloads {
		 padding: 2rem;
		 margin-top: 3rem;
		 margin-bottom: 3rem;
		 width: auto;
		 margin-left: auto;
		 margin-right: auto;
	 }
	 .downloads-buttons {
		 grid-template-columns: 1fr;
		 gap: clamp(16px, 2rem, 3rem);
		 margin-top: 2rem;
		 grid-auto-flow: row;
	 }
	 .downloads-buttons:has(> :nth-child(3)) {
		 grid-auto-flow: row;
		 grid-template-columns: repeat(1, minmax(0, 1fr));
	 }
	 .downloads-buttons:has(> :nth-child(3)) .downloads-button div {
		 line-height: 1.3em;
		 font-size: 14px;
	 }
	 .downloads-button div {
		 font-size: 14px;
	 }
	 .downloads-button i {
		 width: 44px;
	 }
	 .downloads-button a {
		 height: auto;
	 }
	 
	 .finance_options {
		 margin-bottom: 3rem;
	 }
	 
	 .features_overview table.shop_attributes th, .features_overview table.shop_attributes td {
		 padding: 10px !important;
		 line-height: normal;
		 display: inline-flex;
		   align-items: center;
	 }
	 .two-col table {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	 }
	 .features_overview.two-col table.shop_attributes td:nth-child(4n-2) {
		 border-right: 0px solid #f0f0f0;
	 }
	 #product-overview .features_overview.two-col table.shop_attributes tr:nth-child(4n-2) th, #product-overview .features_overview.two-col table.shop_attributes tr:nth-child(4n-2) td, #product-overview .features_overview.two-col table.shop_attributes tr:nth-child(4n) th, #product-overview .features_overview.two-col table.shop_attributes tr:nth-child(4n) td {
		 background: transparent !important;
	 }
	 #product-overview .features_overview.two-col table.shop_attributes tr:nth-child(odd) th, #product-overview .features_overview.two-col table.shop_attributes tr:nth-child(odd) td{
		 background: #eaeaea !important;
	 }
	 
	 .social_share_icons {
		 flex-direction: row;
	 }
	 .share_icon_container p {
		 font-size: 0.7em;
		 line-height: normal;
	 }
	 
	 .woocommerce div.product div.images .woocommerce-product-gallery__wrapper > div:first-child a:before {
		 display: none;
	 }
	 
	 #yith-woocompare-preview-bar .yith-woocompare-open.button {
		 padding: 8px 10px;
		 font-size: 12px;
	 }
	 
	 .full_feature_list {
		 --gap: 4rem;
		 gap: var(--gap);
		 margin-bottom: 1rem;
		 margin-top: 1rem;
		 padding: 4rem;
	 }
	 
	 .finance_options_logos {
		 grid-template-columns:repeat(2,minmax(0,1fr));
		 gap: 3rem;
	 }
	 
	 .floating-favourite-icon {
		 bottom: 150px;
		 left: -14px;
		 width: 60px;
		 height: 60px;
		 border-radius: 0;
		 border-bottom-right-radius: 12px;
	 }
	 
	 .question_cta {
		 width: 65%;
		 margin: 2rem auto;
	 }
	 
	 .intro_content p.title-extra-large {
		 font-size: 20px;
	 }
	 
	 .woocommerce-variation-price {
		 padding: 0.6rem;
		 width: 100%;
		 text-align: center;
	 }
	 #trustpilot-widget-trustbox-0-wrapper {
		 padding-top: 5rem;
	 }
	 .wc-favourite-button-wrapper {
		 width: 25%;
	 }
	
}
@media (max-width: 480px){
	.question_cta {
		 width: 100%;
		 margin: 2rem auto;
	 }
	 .share_icon_container p {
		 font-size: 0.65em;
	 }
}	


/* Default (desktop/tablet ≥ 768px) */
.show-on-mobile { display: none !important; }       /* hidden unless we're on mobile */
/* .hide-on-mobile stays whatever its natural display is */

/* Mobile only (≤ 767px) */
@media (max-width: 768px){
  .hide-on-mobile { display: none !important; }     /* hide on mobile */
  .show-on-mobile { display: var(--show-display, block) !important; }    /* show on mobile */
}


/* turn off the favourites debug panel while in dev */
#wc-fav-debug-toggle {
	display: none;
}