:root{
	--tss-color-text:#0b2341;
	--tss-color-muted:#667085;
	--tss-color-border:#e5e7eb;
	--tss-color-bg:#ffffff;
	--tss-color-soft:#f7f8fa;
	--tss-color-accent:#1769aa;
	--tss-color-accent-dark:#0f4f82;
	--tss-radius:12px;
	--tss-sidebar-width:280px;
}

*{
	box-sizing:border-box;
}

html{
	line-height:1.15;
	-webkit-text-size-adjust:100%;
	scrollbar-gutter:stable;
}

body{
	margin:0;
	overflow-x:clip;
	font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size:16px;
	line-height:1.65;
	color:var(--tss-color-text, #0b2341);
	background:var(--tss-color-bg, #ffffff);
}

img{
	max-width:100%;
	height:auto;
}

a{
	color:var(--tss-color-accent, #1769aa);
	text-decoration:none;
}

a:hover,
a:focus{
	color:var(--tss-color-accent-dark, #0f4f82);
	text-decoration:underline;
}

button,
input,
select,
textarea{
	font:inherit;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	text-decoration:none;
}

button:not(.tss-product-search-submit),
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
	min-height:42px;
	padding:10px 16px;
	border:1px solid var(--tss-color-accent, #1769aa);
	border-radius:7px;
	color:#fff;
	background:var(--tss-color-accent, #1769aa);
	font-weight:500;
	line-height:1.2;
}

button:not(.tss-product-search-submit):hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.button:hover,
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover{
	border-color:var(--tss-color-accent-dark, #0f4f82);
	color:#fff;
	background:var(--tss-color-accent-dark, #0f4f82);
	text-decoration:none;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
textarea,
select{
	width:100%;
	max-width:100%;
	padding:10px 12px;
	border:1px solid var(--tss-color-border, #e5e7eb);
	border-radius:7px;
	background:#fff;
	color:var(--tss-color-text, #0b2341);
}

textarea{
	min-height:140px;
}

.screen-reader-text{
	position:absolute !important;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(1px, 1px, 1px, 1px);
	white-space:nowrap;
	border:0;
}

.screen-reader-text:focus{
	top:8px;
	left:8px;
	z-index:100000;
	width:auto;
	height:auto;
	padding:10px 14px;
	clip:auto !important;
	background:#fff;
	box-shadow:0 0 0 2px var(--tss-color-accent, #1769aa);
}

.tss-container{
	width:100%;
	max-width:var(--tss-container, 1280px);
	margin-inline:auto;
	padding-inline:var(--tss-container-padding, 24px);
}

.tss-full-bleed{
	width:100vw;
	max-width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
}

.tss-bleed-right,
.tss-left-container-right-bleed{
	width:calc(50% + 50vw);
	max-width:none;
	margin-right:calc(50% - 50vw);
}

.tss-bleed-left,
.tss-right-container-left-bleed{
	width:calc(50% + 50vw);
	max-width:none;
	margin-left:calc(50% - 50vw);
}

.site-main.tss-container .entry-content > .tss-full-bleed{
	width:100vw;
	max-width:100vw;
}

.site-main.tss-container .entry-content > .tss-bleed-right,
.site-main.tss-container .entry-content > .tss-left-container-right-bleed,
.site-main.tss-container .entry-content > .tss-bleed-left,
.site-main.tss-container .entry-content > .tss-right-container-left-bleed{
	width:calc(50% + 50vw);
}

.site-header{
	border-bottom:1px solid var(--tss-color-border, #e5e7eb);
	background:var(--tss-header-background, transparent);
}

body.tss-sticky-header .site-header{
	position:sticky;
	top:0;
	z-index:999;
}

body.tss-sticky-header.tss-sticky-header-scrolled .site-header{
	box-shadow:0 5px 20px rgba(0,0,0,.15);
}

body.admin-bar.tss-sticky-header .site-header{
	top:32px;
}

.site-header-inner{
	display:grid;
	grid-template-columns:var(--tss-header-logo, 280px) var(--tss-header-menu, minmax(0, 1fr)) auto;
	gap:24px;
	align-items:center;
	min-height:92px;
	padding-block:14px;
}

.site-header-inner.tss-header-no-actions{
	grid-template-columns:var(--tss-header-logo, 280px) var(--tss-header-menu, minmax(0, 1fr));
}

.site-branding{
	grid-column:1;
	min-width:0;
}

.site-title{
	margin:0;
	font-size:clamp(26px, 2.2vw, 36px);
	font-weight:800;
	line-height:1.05;
}

.site-title a{
	color:var(--tss-color-text, #0b2341);
}

.site-title a:hover,
.site-title a:focus{
	text-decoration:none;
}

.site-description{
	margin:4px 0 0;
	color:var(--tss-color-muted, #667085);
	font-size:14px;
	line-height:1.3;
}

.custom-logo{
	display:block;
	max-height:72px;
	width:auto;
}

.main-navigation{
	position:relative;
	grid-column:2;
	display:flex;
	justify-content:center;
	align-items:center;
	min-width:0;
}

.main-navigation ul,
.secondary-navigation ul{
	display:flex;
	align-items:center;
	justify-content:center;
	margin:0;
	padding:0;
	list-style:none;
}

.main-navigation ul{
	flex-wrap:wrap;
	gap:clamp(18px, 3vw, 35px);
	row-gap:10px;
}

.site-header-inner.tss-header-menu-inline .main-navigation ul{
	flex-wrap:nowrap;
}

.main-navigation li,
.secondary-navigation li{
	position:relative;
	margin:0;
}

.main-navigation a,
.secondary-navigation a{
	display:block;
	color:var(--tss-color-text, #0b2341);
	font-weight:700;
	line-height:1.25;
	white-space:nowrap;
}

.main-navigation a:hover,
.main-navigation a:focus,
.secondary-navigation a:hover,
.secondary-navigation a:focus{
	color:var(--tss-color-accent, #1769aa);
	text-decoration:none;
}

.menu-toggle{
	display:none;
}

.secondary-bar{
	border-top:1px solid var(--tss-color-border, #e5e7eb);
	background:transparent;
}

.secondary-bar-inner{
	padding-block:20px;
}

.secondary-bar-grid{
	display:grid;
	grid-template-columns:repeat(var(--tss-secondary-columns, 1), minmax(0, 1fr));
	gap:24px;
	align-items:center;
}

.secondary-bar-column{
	min-width:0;
}

.secondary-navigation ul{
	gap:26px;
	justify-content:flex-start;
}

.secondary-navigation a{
	font-size:14px;
}

.secondary-widget-area .widget{
	margin:0;
}

.secondary-widget-area .tss-empty-widget-area{
	padding:10px;
}

.secondary-widget-area .tss-empty-widget-area p{
	margin:0;
	font-size:12px;
}

.site-header-actions{
	grid-column:3;
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:18px;
	min-width:0;
}

.site-search{
	min-width:0;
	width:var(--tss-header-search, 300px);
}

.site-search .woocommerce-product-search{
	display:grid;
	grid-template-columns:minmax(0,1fr) 36px;
	gap:8px;
	align-items:center;
	margin:0;
}

.site-search .search-field{
	height:42px;
	min-width:0;
	background:transparent;
}

.site-search .tss-product-search-submit{
	width:36px;
	min-width:36px;
	height:42px;
	min-height:42px;
	padding:0;
	border:0;
	border-radius:0;
	color:var(--tss-color-text, #0b2341);
	background:transparent;
	font-size:0;
	font-weight:400;
	line-height:1;
}

.site-search .tss-product-search-submit svg{
	display:block;
	width:20px;
	height:20px;
}

.site-search .tss-product-search-submit:hover,
.site-search .tss-product-search-submit:focus{
	color:var(--tss-color-accent, #1769aa);
}

.site-cart{
	display:flex;
	justify-content:flex-end;
	align-items:center;
	min-width:0;
	width:var(--tss-header-cart, 58px);
}

.site-header-extra{
	display:flex;
	justify-content:flex-end;
	align-items:center;
	min-width:0;
	width:var(--tss-header-extra, 180px);
}

.site-header-extra .widget{
	display:flex;
	justify-content:flex-end;
	width:100%;
	margin:0;
}

.site-header-extra .widget-title{
	margin:0 0 4px;
	font-size:13px;
}

.site-header-extra .tss-empty-widget-area{
	padding:10px;
}

.site-header-extra .tss-empty-widget-area p{
	margin:0;
	font-size:12px;
	line-height:1.35;
}

.tss-cart-link{
	position:relative;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:42px;
	height:42px;
	border-radius:0;
	color:var(--tss-color-text, #0b2341);
	background:transparent;
	text-decoration:none;
}

.tss-cart-link:hover,
.tss-cart-link:focus{
	color:var(--tss-color-accent, #1769aa);
	background:transparent;
	text-decoration:none;
}

.tss-cart-icon{
	display:block;
	width:24px;
	height:24px;
}

.tss-cart-count{
	position:absolute;
	top:2px;
	right:0;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:18px;
	height:18px;
	padding:0 5px;
	border:2px solid #fff;
	border-radius:999px;
	color:#fff;
	background:var(--tss-color-accent, #1769aa);
	font-size:11px;
	font-weight:800;
	line-height:1;
}

.site-main{
	padding-block:36px 48px;
}

body.tss-no-secondary-bar .site-main{
	padding-top:0;
}

.page-header,
.entry-header{
	margin-bottom:24px;
}

.page-title,
.entry-title{
	margin:0 0 12px;
	font-size:clamp(28px, 3vw, 42px);
	line-height:1.15;
}

.entry-title a{
	color:var(--tss-color-text, #0b2341);
}

.entry-meta,
.entry-footer{
	display:flex;
	flex-wrap:wrap;
	gap:10px 16px;
	color:var(--tss-color-muted, #667085);
	font-size:14px;
}

.entry-content > *:first-child{
	margin-top:0;
}

.entry-content > *:last-child{
	margin-bottom:0;
}

.tss-post-list{
	display:grid;
	gap:24px;
}

.tss-card{
	padding:24px;
	border:1px solid var(--tss-color-border, #e5e7eb);
	border-radius:var(--tss-radius, 12px);
	background:#fff;
}

.post-thumbnail{
	display:block;
	margin:-24px -24px 22px;
	overflow:hidden;
	border-radius:var(--tss-radius, 12px) var(--tss-radius, 12px) 0 0;
}

.post-thumbnail img{
	display:block;
	width:100%;
}

.nav-links{
	display:flex;
	justify-content:space-between;
	gap:16px;
	margin-top:32px;
}

.search-form{
	display:flex;
	gap:8px;
	max-width:520px;
}

.search-form label{
	flex:1;
}


.search-form .search-submit{
	white-space:nowrap;
}

.comments-area{
	margin-top:48px;
	padding-top:32px;
	border-top:1px solid var(--tss-color-border, #e5e7eb);
}

.comment-list{
	padding-left:24px;
}

.site-footer{
	border-top:1px solid var(--tss-color-border, #e5e7eb);
}

.site-footer-inner{
	display:grid;
	gap:26px;
	padding-block:32px;
	color:var(--tss-color-muted, #667085);
	font-size:14px;
}

.footer-widgets{
	display:grid;
	grid-template-columns:repeat(var(--tss-footer-columns, 4), minmax(0, 1fr));
	gap:24px;
}

.footer-widget-area{
	min-width:0;
}

.widget{
	margin:0 0 22px;
}

.widget:last-child{
	margin-bottom:0;
}

.widget-title{
	margin:0 0 12px;
	font-size:16px;
	font-weight:700;
	line-height:1.25;
	color:var(--tss-color-text, #0b2341);
}

.widget ul{
	margin:0;
	padding:0;
	list-style:none;
}

.widget li + li{
	margin-top:7px;
}

.widget a{
	color:var(--tss-color-text, #0b2341);
}

.widget a:hover,
.widget a:focus{
	color:var(--tss-color-accent, #1769aa);
	text-decoration:none;
}

.tss-empty-widget-area{
	padding:14px;
	border:1px dashed var(--tss-color-border, #e5e7eb);
	border-radius:var(--tss-radius, 12px);
	background:#fff;
}

.site-footer-bottom{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:20px;
}

.tss-breadcrumb-wrap{
	padding-top:18px;
}

.woocommerce .woocommerce-breadcrumb,
.tss-breadcrumb{
	margin:0;
	color:var(--tss-color-muted, #667085);
	font-size:14px;
}

.tss-woocommerce-layout{
	padding-block:36px 48px;
}

.tss-woocommerce-main{
	min-width:0;
	padding:0;
}

.tss-woocommerce-layout-has-sidebar{
	display:grid;
	grid-template-columns:var(--tss-sidebar-width, 280px) minmax(0, 1fr);
	gap:32px;
	align-items:start;
}

.tss-woocommerce-sidebar-left .tss-woocommerce-main{
	grid-column:2;
	grid-row:1;
}

.tss-woocommerce-sidebar-left .tss-woocommerce-sidebar{
	grid-column:1;
	grid-row:1;
}

.tss-woocommerce-sidebar-right{
	grid-template-columns:minmax(0, 1fr) var(--tss-sidebar-width, 280px);
}

.tss-woocommerce-sidebar-right .tss-woocommerce-main{
	grid-column:1;
	grid-row:1;
}

.tss-woocommerce-sidebar-right .tss-woocommerce-sidebar{
	grid-column:2;
	grid-row:1;
}

.tss-woocommerce-sidebar{
	min-width:0;
}

.tss-woocommerce-sidebar .widget{
	padding:18px;
	border:1px solid var(--tss-color-border, #e5e7eb);
	border-radius:var(--tss-radius, 12px);
	background:#fff;
}

.woocommerce-products-header{
	max-width:860px;
	margin:0 auto 34px;
	text-align:center;
}

.woocommerce-products-header__title,
.woocommerce .page-title{
	margin:0 0 10px;
	font-size:clamp(28px, 3vw, 40px);
	line-height:1.15;
	color:var(--tss-color-text, #0b2341);
}

.woocommerce .term-description,
.woocommerce .page-description{
	color:var(--tss-color-muted, #667085);
}

.woocommerce .term-description > *:first-child,
.woocommerce .page-description > *:first-child{
	margin-top:0;
}

.woocommerce .term-description > *:last-child,
.woocommerce .page-description > *:last-child{
	margin-bottom:0;
}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{
	float:none;
	margin:0 0 22px;
}

.woocommerce .woocommerce-ordering{
	text-align:right;
}

.woocommerce .woocommerce-ordering select{
	width:auto;
	min-width:220px;
}



/* Classic WooCommerce loops, legacy wc-block-grid and Product Template blocks share the same card model. */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products,
.wc-block-grid__products,
.wp-block-woocommerce-product-template{
	--tss-tile-width:var(--tss-product-width, calc(25% - 21px));
	display:flex !important;
	flex-wrap:wrap;
	align-items:stretch;
	gap:var(--tss-gap, 28px) !important;
	clear:both;
	width:100%;
	max-width:100%;
	margin:0 !important;
	padding:0 !important;
	list-style:none !important;
	counter-reset:none !important;
}

body.post-type-archive-product{
	--tss-category-width:var(--tss-shop-category-width, calc(33.333333% - 18.666667px));
}

body.tax-product_cat,
body.tax-product_tag{
	--tss-category-width:var(--tss-subcategory-width, calc(33.333333% - 18.666667px));
}

.single-product .related.products ul.products,
.single-product .upsells.products ul.products{
	--tss-tile-width:var(--tss-related-product-width, calc(33.333333% - 18.666667px));
}

.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after,
ul.products::before,
ul.products::after,
.wc-block-grid__products::before,
.wc-block-grid__products::after,
.wp-block-woocommerce-product-template::before,
.wp-block-woocommerce-product-template::after{
	display:none !important;
	content:none !important;
}

.woocommerce ul.products > li,
.woocommerce-page ul.products > li,
ul.products > li,
.wc-block-grid__products > li,
.wp-block-woocommerce-product-template > li,
.wp-block-woocommerce-product-template > .wp-block-post{
	list-style:none outside !important;
	list-style-type:none !important;
	counter-increment:none !important;
}

.woocommerce ul.products > li::marker,
.woocommerce-page ul.products > li::marker,
ul.products > li::marker,
.wc-block-grid__products > li::marker,
.wp-block-woocommerce-product-template > li::marker,
.wp-block-woocommerce-product-template > .wp-block-post::marker{
	content:'' !important;
	font-size:0 !important;
	color:transparent !important;
}

.woocommerce ul.products > li::before,
.woocommerce-page ul.products > li::before,
ul.products > li::before,
.wc-block-grid__products > li::before,
.wp-block-woocommerce-product-template > li::before,
.wp-block-woocommerce-product-template > .wp-block-post::before{
	display:none !important;
	content:none !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
ul.products li.product,
.wc-block-grid__product,
.wp-block-woocommerce-product-template .wp-block-post{
	flex:0 0 var(--tss-tile-width) !important;
	max-width:var(--tss-tile-width) !important;
}

.woocommerce ul.products li.product-category,
.woocommerce-page ul.products li.product-category,
ul.products li.product-category{
	flex:0 0 var(--tss-category-width, var(--tss-tile-width)) !important;
	max-width:var(--tss-category-width, var(--tss-tile-width)) !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
ul.products li.product,
.woocommerce ul.products li.product-category,
.woocommerce-page ul.products li.product-category,
ul.products li.product-category,
.wc-block-grid__product,
.wp-block-woocommerce-product-template .wp-block-post{
	display:flex !important;
	flex-direction:column;
	float:none !important;
	width:auto !important;
	min-width:0;
	height:auto;
	margin:0 !important;
	padding:0 !important;
	border:1px solid var(--tss-color-border, #e5e7eb);
	border-radius:var(--tss-radius, 12px);
	background:#fff;
	overflow:hidden;
	box-shadow:0 1px 2px rgba(15, 23, 42, .04);
	transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.woocommerce ul.products li.product:hover,
.woocommerce ul.products li.product-category:hover,
.wc-block-grid__product:hover,
.wp-block-woocommerce-product-template .wp-block-post:hover{
	transform:translateY(-2px);
	border-color:#cbd5e1;
	box-shadow:0 10px 24px rgba(15, 23, 42, .08);
}

.woocommerce ul.products li.product a,
.woocommerce ul.products li.product-category a,
.wc-block-grid__product a,
.wp-block-woocommerce-product-template .wp-block-post a{
	text-decoration:none;
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product-category > a,
.wc-block-grid__product-link{
	display:flex;
	flex:1;
	flex-direction:column;
	color:var(--tss-color-text, #0b2341);
}

.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product-category a img,
.wc-block-grid__product-image img,
.wp-block-woocommerce-product-image img{
	display:block;
	width:100%;
	height:auto;
	aspect-ratio:4/3;
	object-fit:contain;
	margin:0 !important;
	padding:22px;
	background:#fff;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product-category .woocommerce-loop-category__title,
.wc-block-grid__product-title,
.wp-block-woocommerce-product-template .wp-block-post-title{
	display:flex;
	flex:1;
	align-items:center;
	justify-content:center;
	min-height:84px;
	margin:0 !important;
	padding:16px 18px;
	font-size:16px;
	font-weight:600;
	line-height:1.35;
	color:var(--tss-color-text, #0b2341);
	text-align:center;
	background:var(--tss-color-soft, #f7f8fa);
	word-break:normal;
	hyphens:auto;
}

.wp-block-woocommerce-product-template .wp-block-post-title a{
	color:var(--tss-color-text, #0b2341);
}

.woocommerce ul.products li.product-category mark.count{
	color:var(--tss-color-muted, #667085);
	background:transparent;
	font-size:13px;
	font-weight:500;
}

.woocommerce ul.products li.product .star-rating{
	margin:14px auto 0;
}

.woocommerce ul.products li.product .price,
.wc-block-grid__product-price,
.wp-block-woocommerce-product-price{
	display:block;
	margin:0;
	padding:0 20px 16px;
	color:var(--tss-color-accent, #1769aa);
	font-weight:700;
	text-align:center;
}

.woocommerce ul.products li.product .button,
.wc-block-grid__product-add-to-cart,
.wp-block-woocommerce-product-template .wp-block-button{
	align-self:center;
	margin:0 auto 20px !important;
	text-align:center;
}

.wc-block-grid__product-add-to-cart .wp-block-button__link,
.wp-block-woocommerce-product-template .wp-block-button__link{
	margin:0 auto;
}

.woocommerce .wc-block-grid .wc-block-grid__product-image,
.woocommerce-page .wc-block-grid .wc-block-grid__product-image,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image,
.wp-block-woocommerce-cart .wc-block-grid__product-image{
	margin:0 !important;
}

.woocommerce .wc-block-grid .wc-block-grid__product-image a,
.woocommerce-page .wc-block-grid .wc-block-grid__product-image a,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image a,
.wp-block-woocommerce-cart .wc-block-grid__product-image a{
	display:block !important;
}

.woocommerce nav.woocommerce-pagination{
	margin:34px 0 0;
	text-align:center;
}

.woocommerce nav.woocommerce-pagination ul{
	display:inline-flex;
	flex-wrap:wrap;
	gap:8px;
	margin:0;
	padding:0;
	border:0;
}

.woocommerce nav.woocommerce-pagination ul li{
	border:0;
	margin:0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:40px;
	height:40px;
	padding:0 12px;
	border:1px solid var(--tss-color-border, #e5e7eb);
	border-radius:10px;
	background:#fff;
	font-weight:700;
	text-decoration:none;
}

.woocommerce nav.woocommerce-pagination ul li span.current{
	border-color:var(--tss-color-accent, #1769aa);
	color:#fff;
	background:var(--tss-color-accent, #1769aa);
}

.woocommerce div.product{
	display:grid;
	grid-template-columns:minmax(260px, 470px) minmax(0, 1fr);
	gap:36px;
	align-items:start;
	width:100%;
	max-width:none;
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary{
	float:none;
	width:auto;
	margin:0 0 30px;
}

.woocommerce div.product div.images{
	max-width:470px;
}

.woocommerce div.product .woocommerce-product-gallery__wrapper{
	margin:0;
}

.woocommerce div.product div.images img{
	border-radius:var(--tss-radius, 12px);
}

.woocommerce div.product .product_title{
	margin:0 0 14px;
	font-size:clamp(24px, 2.2vw, 32px);
	line-height:1.18;
	color:var(--tss-color-text, #0b2341);
}

.woocommerce div.product p.price,
.woocommerce div.product span.price{
	margin:0 0 16px;
	color:var(--tss-color-accent, #1769aa);
	font-size:20px;
	font-weight:800;
}

.woocommerce div.product form.cart{
	display:flex;
	flex-wrap:wrap;
	gap:12px;
	align-items:center;
	margin:22px 0;
}

.woocommerce div.product form.cart div.quantity{
	float:none;
	margin:0;
}

.woocommerce .quantity .qty{
	width:76px;
	height:42px;
	text-align:center;
}

.woocommerce div.product .single_add_to_cart_button{
	min-height:42px;
}

.woocommerce div.product .woocommerce-product-details__short-description{
	padding:18px;
	border:1px solid var(--tss-color-border, #e5e7eb);
	border-radius:var(--tss-radius, 12px);
}

.woocommerce div.product .woocommerce-product-details__short-description > *:first-child{
	margin-top:0;
}

.woocommerce div.product .woocommerce-product-details__short-description > *:last-child{
	margin-bottom:0;
}

.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related,
.woocommerce div.product .upsells,
.woocommerce div.product .product-description{
	grid-column:1 / -1;
	width:100%;
	max-width:none;
}

.woocommerce div.product .woocommerce-tabs{
	margin-top:18px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs{
	margin:0 0 18px;
	padding:0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li{
	border-color:var(--tss-color-border, #e5e7eb);
	background:var(--tss-color-soft, #f7f8fa);
}

.woocommerce div.product .woocommerce-tabs .panel{
	width:100%;
	max-width:none;
	padding:22px;
	border:1px solid var(--tss-color-border, #e5e7eb);
	border-radius:var(--tss-radius, 12px);
}

.woocommerce div.product .related > h2,
.woocommerce div.product .upsells > h2{
	margin:0 0 20px;
	font-size:24px;
}

body.woocommerce-cart .cart-collaterals .cross-sells{
	float:none;
	width:100%;
	margin:36px 0 0;
}

body.woocommerce-cart .cart-collaterals .cross-sells > h2{
	margin:0 0 20px;
	font-size:24px;
	line-height:1.25;
}


.woocommerce-cart-form table.cart .product-thumbnail img{
	width:76px;
	max-width:76px;
	border:1px solid var(--tss-color-border, #e5e7eb);
	border-radius:10px;
	background:#fff;
}

.woocommerce-cart-form table.cart .product-name a{
	color:var(--tss-color-text, #0b2341);
	font-weight:700;
}

.woocommerce-cart-form table.cart .product-name a:hover,
.woocommerce-cart-form table.cart .product-name a:focus{
	color:var(--tss-color-accent, #1769aa);
	text-decoration:none;
}

.woocommerce table.shop_table{
	border-color:var(--tss-color-border, #e5e7eb);
	border-radius:var(--tss-radius, 12px);
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
	border-top-color:var(--tss-color-accent, #1769aa);
}



@media (prefers-reduced-motion:reduce){
	*,
	*::before,
	*::after{
		animation-duration:.01ms !important;
		animation-iteration-count:1 !important;
		scroll-behavior:auto !important;
		transition-duration:.01ms !important;
	}
}

/* Le menu principal peut passer en pleine largeur selon sa longueur réelle. */
.site-header-inner.tss-header-menu-below .main-navigation{
	grid-column:1 / -1;
	grid-row:2;
	width:100%;
	justify-content:center;
}

.site-header-inner.tss-header-menu-below .main-navigation ul{
	flex-wrap:wrap;
	row-gap:10px;
}

.site-header-inner.tss-header-menu-below .site-header-actions{
	grid-column:3;
	grid-row:1;
}

@media (min-width:761px) and (max-width:1180px){
	.main-navigation{
		grid-column:1 / -1;
		grid-row:2;
		width:100%;
		justify-content:center;
	}

	.main-navigation ul{
		flex-wrap:wrap;
		row-gap:10px;
	}

	.site-header-actions{
		grid-column:3;
		grid-row:1;
	}

	.site-header-inner.tss-header-menu-inline .main-navigation{
		grid-column:2;
		grid-row:1;
	}

	.site-header-inner.tss-header-menu-inline .main-navigation ul{
		flex-wrap:nowrap;
	}

}

@media (max-width:1180px){
	.woocommerce div.product{
		grid-template-columns:minmax(240px, 420px) minmax(0, 1fr);
		gap:30px;
	}
}

@media (max-width:1080px){
	.tss-woocommerce-layout-has-sidebar,
	.tss-woocommerce-sidebar-right{
		grid-template-columns:1fr;
	}

	.tss-woocommerce-layout-has-sidebar .tss-woocommerce-main,
	.tss-woocommerce-sidebar-right .tss-woocommerce-main{
		grid-column:1;
		grid-row:1;
	}

	.tss-woocommerce-layout-has-sidebar .tss-woocommerce-sidebar,
	.tss-woocommerce-sidebar-right .tss-woocommerce-sidebar{
		grid-column:1;
		grid-row:2;
	}
}

@media (max-width:900px){
	.woocommerce ul.products,
	.woocommerce-page ul.products,
	ul.products,
	.wc-block-grid__products,
	.wp-block-woocommerce-product-template,
	.single-product .related.products ul.products,
	.single-product .upsells.products ul.products{
		--tss-tile-width:calc(50% - var(--tss-half-gap, 14px));
	}

	body.post-type-archive-product,
	body.tax-product_cat,
	body.tax-product_tag{
		--tss-category-width:calc(50% - var(--tss-half-gap, 14px));
	}
}

@media screen and (max-width:782px){
	body.admin-bar.tss-sticky-header .site-header{
		top:46px;
	}
}

@media (max-width:760px){
	.site-header-inner,
	.site-header-inner.tss-header-no-actions{
		position:relative;
		grid-template-columns:auto minmax(0,1fr) auto;
		gap:14px;
		min-height:0;
		padding-block:18px;
	}

	.site-branding{
		grid-column:1 / -1;
		grid-row:1;
	}

	.site-header-actions{
		/* Conteneur neutre : ne pas ajouter role/aria sur cet élément tant qu'il utilise display:contents. */
		display:contents;
	}

	.main-navigation{
		position:relative;
		grid-column:1;
		grid-row:2;
		display:flex;
		align-items:center;
		justify-content:flex-start;
		width:auto;
		z-index:50;
	}

	.menu-toggle{
		display:inline-flex;
	}

	.site-search{
		grid-column:2;
		grid-row:2;
		width:100%;
	}

	.site-cart{
		grid-column:3;
		grid-row:2;
		width:auto;
		justify-self:end;
	}

	.site-header-extra{
		grid-column:1 / -1;
		grid-row:3;
		width:100%;
		justify-content:flex-start;
	}

	.site-header-extra .widget{
		justify-content:flex-start;
	}

	body.tss-hide-mobile-header-extra .site-header-extra{
		display:none;
	}

	.main-navigation ul{
		position:absolute;
		top:calc(100% + 12px);
		left:0;
		right:auto;
		z-index:60;
		display:none;
		width:calc(100vw - (var(--tss-container-padding, 24px) * 2));
		max-width:calc(100vw - (var(--tss-container-padding, 24px) * 2));
		margin-top:0;
		padding:8px 16px;
		box-sizing:border-box;
		flex-direction:column;
		align-items:stretch;
		gap:0;
		background:var(--tss-mobile-menu-background, #fff);
		box-shadow:0 8px 24px rgba(0,0,0,.08);
	}

	.main-navigation.toggled ul{
		display:flex;
	}

	.main-navigation li,
	.main-navigation a{
		width:100%;
	}

	.main-navigation a{
		padding:12px 0;
		border-bottom:1px solid var(--tss-color-border, #e5e7eb);
	}

	.secondary-bar-grid{
		grid-template-columns:1fr;
	}

	.secondary-navigation ul{
		flex-wrap:wrap;
		gap:12px 18px;
	}

	.footer-widgets{
		grid-template-columns:repeat(2, minmax(0, 1fr));
	}

	.site-footer-bottom{
		flex-direction:column;
		align-items:flex-start;
	}

	.woocommerce .woocommerce-ordering{
		text-align:left;
	}

	.woocommerce .woocommerce-ordering select{
		width:100%;
	}

	.search-form{
		flex-direction:column;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products,
	ul.products,
	.wc-block-grid__products,
	.wp-block-woocommerce-product-template,
	.single-product .related.products ul.products,
	.single-product .upsells.products ul.products{
		--tss-tile-width:100%;
	}

	body.post-type-archive-product,
	body.tax-product_cat,
	body.tax-product_tag{
		--tss-category-width:100%;
	}

	.woocommerce div.product{
		display:block;
	}

	.woocommerce div.product div.images{
		max-width:none;
		margin-bottom:24px;
	}
}

@media (max-width:480px){
	.site-search .woocommerce-product-search{
		grid-template-columns:minmax(0,1fr) 34px;
	}

	.footer-widgets{
		grid-template-columns:1fr;
	}
}
