/*
Theme Name: Plastics Twenty-Five
Theme URI: https://wordpress.org/themes/plasticstwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Plastics Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.375
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: plasticstwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

@import url("assets/css/fontello.css");


html {
	scroll-behavior: smooth;
	/* Enables smooth scrolling site-wide */
	scroll-padding-top: 100px;
	/* Adds 100px offset from the top of the viewport */
}


/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 0px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
caption,
figcaption,
p {
	text-wrap: pretty;
}


:root .entry-content:where(.is-layout-constrained)>.wp-block-group,
:root main:where(.is-layout-constrained)>.wp-block-group {
	margin-block-start: 0rem;
	margin-block-end: 0;
}


/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}



/* CUSTOMISATIONS */

body * {
	transition: all 0.66s;
	box-sizing: border-box;
}

main {
	position: relative;
}

main:before {
	content: '';
	height: 150px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 888;
	background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 33%, rgba(255, 255, 255, 1) 75%);
}

.home .carousel .wp-block-cover {
	height: 600px;
	max-height: none !important;
	min-height: 80vh !important;
}


main>.wp-block-cover:first-child {
	height: 460px;
	max-height: 70vh;
	min-height: 33vh;
}

@media (max-width: 781px){
	main>.wp-block-cover:first-child .wp-block-column:not(:first-child){
		display:none
	}
}
.single main>.wp-block-cover:first-child,
.woocommerce-cart main>.wp-block-cover:first-child,
.woocommerce-checkout main>.wp-block-cover:first-child {
	height: 280px;
	max-height: 70vh;
	min-height: 33vh;
}

::selection {
	background-color: var(--wp--preset--color--shade);
	color: var(--wp--preset--color--teal)
}

.show-for-desktop {
	display: none;
}

.hide-for-mobile {
	display: none;
}

.show-for-mobile {
	display: flex;
	align-items: center;
}

.hide-for-desktop {
	display: flex;
	align-items: center;
}

@media (min-width: 1080px) {
	.show-for-desktop {
		display: flex;
		align-items: center;
	}

	.hide-for-mobile {
		display: flex;
		align-items: center;
	}

	.show-for-mobile {
		display: none;
	}

	.hide-for-desktop {
		display: none;
	}
}



div,
main,
section,
header,
footer {
	box-sizing: border-box;
}

strong,
b {
	font-weight: 500
}

.has-font-size-large,
.has-font-size-x-large,
.has-font-size-xx-large {
	line-height: 1.1em
}

button {
	background-color: transparent;
	box-shadow: none;
	border: none
}

html,
body {
	width: 100%;
	height: 100vh;
}

.is-layout-grid+.wp-block-cover {
	margin-block-start: 0
}

.wp-block-cover+.wp-block-group.has-background {
	margin-block-start: 0;
}

.entry-content .wp-block-cover:not(.entry-content >:first-child) .wp-block-cover__inner-container {
	height: 100%;
	width: 100%;
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	align-items: stretch;
}

.entry-content .wp-block-cover.is-position-bottom-left:not(.entry-content > :first-child) .wp-block-cover__inner-container {
	align-items: flex-end;
	height: auto;
	justify-content: flex-start;
	margin-left: 0
}

.entry-content .wp-block-cover.is-position-bottom-left:not(.entry-content > :first-child) .wp-block-cover__inner-container .glassbox {
	max-width: 420px;
	margin-left: 0 !important
}

@media (max-width: 781px){

	.wp-block-cover__inner-container .glassbox.is-layout-flow > *:not(:first-child){
	margin-block-start: 0.66rem;
	}

}

.wp-block-cover .wp-block-cover__inner-container>* {
	width: 100%;
}

.wp-block-cover .wp-block-cover__inner-container>.wp-block-buttons:last-child {
	width: 100%;
	margin-top: auto;
	justify-content: flex-start;
	align-items: flex-start;
	margin-left: 0 !important;
}




/* SVG ICONS */

svg.replaced-svg {
	width: 100%;
	height: auto
}

.outline {
	fill: currentColor !important
}

.fillable {
	fill: transparent
}

div.woocommerce-product-attributes.shop_attributes {
	color: var(--wp--preset--color--primary)
}

/**HEADER**/

header.wp-block-template-part {
	position: relative;
	width: 100%;
	z-index: 999;
	top: 0;
	left: 0
}

#shippingBanner {
	position: relative;
	bottom: 0;
	max-height: 0;
	overflow: hidden;
	padding: 0;
	margin-bottom: 0;
	margin-block-start: 0;
}

#shippingBanner>.wp-block-group {
	padding-top: var(--wp--preset--spacing--20);
	padding-bottom: var(--wp--preset--spacing--20);
}

#shippingBanner .wp-block-buttons {
	position: absolute;
	z-index: 1;
	width: 100%;
}

#shippingBanner .wp-block-button__link {
	background-color: transparent;
	display: inline-block;
	font-size: var(--wp--preset--font-size--medium);
	color: var(--wp--preset--color--contrast);
	border: 1px solid var(--wp--preset--color--contrast);
	border-radius: 50%;
	padding: 0;
	width: 40px;
	line-height: 35px;
	margin: var(--wp--preset--spacing--20);
}


#shippingBanner.is-open {
	margin-top: 0;
	max-height: 100vh;
}

#shippingBanner.is-open + * {
	margin-block-start: 1em
}

@media (max-width: 781px) {
	#shippingBanner .wp-block-columns {
		gap: 0
	}

	#shippingBanner .wp-block-column:first-child {
		flex-basis: 90px !important
	}

	#shippingBanner > .wp-block-group{
		padding-top: 10px !important;
		padding-left: 10px !important; 
		margin-block-start: 0;
	}

	#shippingBanner svg {
		width: 70px
	}

	#shippingBanner p {
		font-size: var(--wp--preset--font-size--small) !important;
		margin-block-start: 0.33rem;
	}

	.icon-grid {
		width: 100%; 
		grid-template-columns: repeat(auto-fill, 28%) !important;
		container-type: inline-size;
	}

	.icon-grid p {
		font-size: var(--wp--preset--font-size--small)
	}


}

main {
	margin-block-start: 0
}

main+* {
	margin-block-start: 0;
}

header .has-purple-accent-background-color {
	height: 50px;
	overflow: hidden;
}

.ticker {
	font-size: var(--wp--preset--font-size--small);
	padding: 0;
	padding-bottom: 5px;
	padding-top: 5px;
}

.ticker svg {
	width: auto;
	height: 35px;
}

.ticker svg .fillable {
	fill: var(--wp--preset--color--purple)
}

.ticker p {
	white-space: nowrap;
}

.ticker button[data-action] {
	display: none;
}

.tns-horizontal.tns-subpixel>.tns-item {
	position: relative;
	display: inline-flex !important;
	flex-flow: row nowrap;
	align-items: center;
	margin-block-start: 0;
}

.ticker .tns-item {
	margin-block-start: 0;
}

.tns-autowidth {
	display: block !important;
}

@media (min-width: 1200px) {
	.ticker {
		display: flex !important;
		flex-flow: row nowrap;
		justify-content: space-between;
		width: 100%;
	}
}

.carousel.wp-block-post-template {
	max-width: none;
}

.tns-item .entry-content {
	display: block;
	width: 100%
}

.tns-outer {
	position: relative;
}

.tns-outer [data-action] {
	display: none;
}

.tns-nav {
	position: absolute;
	display: flex;
	gap: 0.66rem;
	bottom: 1.66rem;
	z-index: 2;
	width: 100%;
	max-width: var(--wp--style--global--wide-size);
	left: 50%;
	transform: translateX(-50%);
}

.tns-nav button {
	width: 25px;
	height: 25px;
	border: 2px solid var(--wp--preset--color--primary);
	border-radius: 5px;
	background-color: rgba(255, 255, 255, 0.3);
}

.tns-nav button:hover {
	border: 2px solid var(--wp--preset--color--primary);
	background-color: #9ECD5C78;
}

.tns-nav button.tns-nav-active {
	background-color: #9ECD5CC4;
}

/*** NEWS ***/

body.category-news .wp-site-blocks,
.single-post .wp-site-blocks {
	background-color: var(--wp--preset--color--pale);
}

.wp-block-query .wp-block-post-template .category-news {
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--30)
}

.wp-block-query .wp-block-post-template .category-news>*:last-child {
	margin-top: auto;
}


.wp-block-read-more {
	background-color: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
	border-radius: 5px;
	letter-spacing: 2px;
	text-transform: uppercase;
	display: inline-block;
	font-size: var(--wp--preset--font-size--small);
	padding: 5px var(--wp--preset--spacing--20)
}

.wp-block-read-more:hover {
	background-color: var(--wp--preset--color--teal);
}


/*home*/
.home h1 {
	display: none
}

/* .home main .entry-content>.wp-block-cover {
	height: 76vh;
	min-height: 400px;
} */


/*breadcrumb bar*/
.breadcrumb-bar {
	margin-block-start: 0;
	font-size: var(--wp--preset--font-size--small)
}
.breadcrumb-bar + .wp-block-group {
	margin-block-start: 0;
}


/*header*/

header.wp-block-template-part .custom-logo {
	width: 220px
}


.docked-nav header.wp-block-template-part .custom-logo {
	width: 120px
}

/* 
.logged-in header.wp-block-template-part {
	padding-top: 32px
} */

/**HERO BANNERS**/
.glassbox {
	/* From https://css.glass */
	float: left;
	background: rgba(255, 255, 255, 0.4);
	border-radius: 5px;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	margin-left: calc(-1 * var(--wp--preset--spacing--40));
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	border: 1px solid rgba(255, 255, 255, 0.3);
}

/*FAQ*/
.question {
	cursor: pointer;
	position: relative;
	border-bottom: 1px solid var(--wp--preset--color--accent-6);
	padding: calc(0.5 * var(--wp--preset--spacing--30)) var(--wp--preset--spacing--20)
}

.question:after {
	content: '\e805';
	font-family: 'Fontello';
	position: absolute;
	right: 10px;
	top: 50%;
	transform-origin: center;
	transform: rotate(180deg) translateY(50%);
	color: var(--wp--preset--color--accent-6)
}

.question.is-active {
	background: var(--wp--preset--color--base)
}

.question.is-active:after {
	transform: rotate(0) translateY(-50%);
	color: var(--wp--preset--color--primary)
}

.answer {
	max-height: 0;
	overflow: hidden;
	margin-block-start: 0
}

.answer.is-active {
	max-height: 1000px
}


.wc-block-product-filter-price-slider .text input[type="text"] {
	max-width: 65px
}

input,
textarea,
button,
.ff-default .ff-el-form-control,
form.fluent_form_1 .wpf_has_custom_css.ff-btn-submit {
	font-family: var(--wp--preset--font-family--inter) !important;
	font-size: inherit;
	font-weight: 400px;
}

.ff-default textarea.ff-el-form-control {
	height: 175px
}

.ff-default .ff-el-form-control:focus {
	border-color: var(--wp--preset--color--purple)
}

form.fluent_form_1 .wpf_has_custom_css.ff-btn-submit {
	background-color: var(--wp--preset--color--primary) !important;
	border-color: var(--wp--preset--color--primary) !important;
	color: #ffffff;
}

form.fluent_form_1 .wpf_has_custom_css.ff-btn-submit:hover {
	background-color: var(--wp--preset--color--primary-accent) !important;
	border-color: var(--wp--preset--color--primary-accent) !important;
	color: #ffffff !important;
	min-width: 0 !important;
	width: auto !important;
}


/*footer*/

footer {
	margin-block-start: 0
}

.grayscale {
	filter: grayscale(100%);
	opacity: 0.5;
}

/*VIDEOS*/

.yotu-playlist {
	padding: 0
}

.yotu-videos.yotu-mode-grid {
	padding: 0;
	float: none
}

.yotu-videos.yotu-mode-grid ul {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)) !important;
	container-type: inline-size;
	place-content: center;
	gap: var(--wp--preset--spacing--30)
}

.yotu-videos.yotu-mode-grid ul li {
	width: auto;
	display: flex;
	flex-flow: column;
	align-items: stretch;
	justify-content: stretch;
	margin: 0;
}

.yotu-videos.yotu-mode-grid ul li a {
	padding: var(--wp--preset--spacing--20);
	background-color: VAR(--wp--preset--color--pale);
	display: block;
	height: 100%;
	border: 1px solid var(--wp--preset--color--sky-light)
}

.ytef-grow:hover {
	transform: scale(1.05);
}

.yotu-videos.yotu-mode-grid h3 {
	text-overflow: initial;
	white-space: initial;
	color: var(--wp--preset--color--teal)
}


.yotu-button-prs {
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1em;
	padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
	border-radius: 3px;
}


/*woocommerce*/

header+.woocommerce {
	margin-block-start: 0;
}

.woocommerce .wp-block-woocommerce-product-image-gallery {
	width: 90% !important;
	max-width: 700px;
	min-width: 100%;
}

.woocommerce.single-product main {
	background-color: var(--wp--preset--color--pale)
}


.woocommerce.single-product main .has-pale-background-color {
	background-color: var(--wp--preset--color--base) !important;
}


table.variations select {
	visibility: hidden;
}


html {
	--radio-color: var(--wp--preset--color--contrast);
}

.woocommerce .variations .value {
	width: 100%;
	/* height: 100%; */
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 10px;
	margin-block-end: var(--wp--preset--spacing--20);
}


.woocommerce .variations .value input[type="radio"] {
	appearance: none;
	display: none;
}

.woocommerce .variations>label {
	display: block;
	margin-block-end: 0;
}

.woocommerce .variations .value input[type="radio"]+label {
	font-size: var(--wp--preset--font-size--small);
	font-weight: 300;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--wp--preset--color--shade);
	text-align: center;
	border-radius: 2px;
	overflow: hidden;
	transition: linear 0.3s;
	color: var(--radio-color);
	padding: 0.3em 0.6em;
	border: 1px solid var(--radio-color);
	cursor: pointer;
}

.woocommerce .variations .value input[type="radio"]:checked+label {
	background-color: var(--wp--preset--color--primary);
	color: #f1f3f5;
	transition: 0.3s;
}

a.reset_variations {
	display: none !important;
}

.wp-block-woocommerce-add-to-cart-form .variations_button>.quantity:not(.wc-block-components-quantity-selector) .qty {
	line-height: 1em;
	padding: 0;
	width: 4.6em;
}

.woocommerce-tabs.wc-tabs-wrapper {
	max-width: 1100px;
}


.wc-block-product-template.is-flex-container {
	justify-content: center;
}

.related-products .wc-block-product-template.is-flex-container {
	justify-content: center;
}

.related-product-price-to-cart {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
}


@media (max-width: 781px) {

	.related-product-price-to-cart {

		flex-flow: column;
		align-items: flex-start;
	}
}	

.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
	display: none;
}

.wp-block-query-pagination-numbers>* {
	display: inline-block;
	width: 40px;
	text-align: center;
	line-height: 40px;
}

.wp-block-query-pagination-numbers>span.current {
	border: 1px solid var(--wp--preset--color--black)
}

.wp-block-query-pagination-numbers a {
	border: 1px solid var(--wp--preset--color--shade);
}

.wp-block-query-pagination-numbers>a:hover {
	border: 1px solid var(--wp--preset--color--primary);
	color: var(--wp--preset--color--primary)
}

.wp-block-query-pagination>a {
	text-decoration: none;
}

.wp-block-query-pagination>a.wp-block-query-pagination-next,
.wp-block-query-pagination>a.wp-block-query-pagination-previous {
	font-size: var(--wp--preset--font-size--small);

}


.products.columns-4 {
	display: flex;
	flex-flow: row wrap;
	gap: var(--wp--preset--spacing--30);
	justify-content: flex-start;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	width: calc(25% - var(--wp--preset--spacing--30));
	margin: 0;
	float: 0;
	min-width: 240px;
	flex-grow: 0;
}

@media (max-width: 781px) {

	.woocommerce .related-products ul.products li.product{
		min-width: 0;
	}
}	



.woocommerce ul.products li.product .woocommerce-product-attribute {
	margin: 0.33rem 0 0.66rem 0
}

.woocommerce ul.products li.product .related-product-price-to-cart .price {
	font-size: var(--wp--preset--font-size--normal);
	margin-bottom: 0;
}

.woocommerce ul.products li.product .attachment-woocommerce_thumbnail {
	width: 100%;
	object-fit: cover;
	aspect-ratio: 4/3;
}

.woocommerce ul.products li.product .related-product-price-to-cart .button {
	margin-top: 0;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	border-radius: 5px;
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30)
}

.woocommerce table.shop_attributes th {
	text-align: left;
	width: 20%;
	white-space: nowrap;
	max-width: 280px;
}

.woocommerce table.shop_attributes td {
	text-align: left;
	width: auto;
}


.woocommerce table {
	border-collapse: collapse;
}

.woocommerce .single_variation_wrap .woocommerce-variation {
	margin-bottom: 0;
}

.woocommerce table.shop_attributes tr>* {
	padding: var(--wp--preset--spacing--10)
}

.woocommerce table.shop_attributes td p {
	padding: 0
}

.woocommerce table.shop_attributes tr:nth-child(2n) td,
.woocommerce table.shop_attributes tr:nth-child(2n) th {
	background-color: var(--wp--preset--color--shade);
}

.woocommerce table.shop_attributes tr:nth-child(odd) td,
.woocommerce table.shop_attributes tr:nth-child(odd) th {
	background-color: var(--wp--preset--color--base);
}

.woocommerce table.shop_attributes td {
	font-style: normal;
}

/*Woocommerce benefit icons*/
div.woocommerce-product-attributes.shop_attributes {
	margin-block-start: 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
	gap: var(--wp--preset--spacing--10)
}

@media (max-width: 781px) {

	.woocommerce div.product div.images{
		margin-bottom: 1rem;
	}

	#shippingBanner .wp-block-button__link{
		width: 30px;
		height: 30px;
		line-height: 1em;
	}
	div.woocommerce-product-attributes.shop_attributes {
		justify-content: center;
		gap: var(--wp--preset--spacing--10)
	}

	div.woocommerce-product-attributes.shop_attributes svg{
		max-width: 40px;
	}
	:root :where(.wp-block-columns-is-layout-flex){
		gap: var(--wp--preset--spacing--50);
	}
	.breadcrumb-bar .wp-block-group{
		gap: var(--wp--preset--spacing--10);
	}

	.wc-block-mini-cart__amount{display: none}
	.wp-block-woocommerce-customer-account .label{display: none}

}	

.wc-block-checkout__actions .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
}

.woocommerce-cart .wp-block-post-title {
	max-width: var(--wp--style--global--wide-size);
}

.yearly ul {
	display: flex;
	flex-flow: row wrap;
	list-style: none;
	padding-left: 0;
	justify-content: center;
}

.yearly ul a {

	display: inline-block;
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
	text-decoration: none;
	border-bottom: 4px solid transparent;
	font-weight: 400;
}

.yearly ul a:hover {
	border-bottom: 4px solid var(--wp--preset--color--primary);
}

.yearly ul a.is-active {
	border-bottom: 4px solid var(--wp--preset--color--black);
}

.woocommerce-page.archive .cmplz-cookiebanner.optin.cmplz-dismissed {
	display: none !important;
}

.wp-block-woocommerce-product-collection h2.wp-block-heading {
	font-size: var(--wp--preset--font-size--medium);
	line-height: inherit
}

.wp-block-woocommerce-product-specifications table {
	width: 100%
}

.wp-block-woocommerce-product-specifications tr:nth-child(odd) th,
.wp-block-woocommerce-product-specifications tr:nth-child(odd) td {
	background-color: rgba(0, 0, 0, 0.05);
}

.wp-block-woocommerce-product-specifications th,
.wp-block-woocommerce-product-specifications td {
	padding: var(--wp--preset--spacing--10)
}

.wp-block-woocommerce-product-specifications p {
	margin-block-start: 0;
	margin-block-end: 0;
}

.wp-block-woocommerce-product-specifications th {
	text-align: left;
	width: 40%;
	max-width: 200px;
}

.wc-block-attribute-filter__actions {
	justify-content: flex-start;
}

.show-more button {
	font-size: var(--wp--preset--font-size--small);
}

.wc-block-attribute-filter .wc-block-components-checkbox {
	margin-block-start: 0.33rem;
}

:where(.wc-block-product-filters) .wc-block-product-filters__overlay-content {
	gap: 0
}