/*
 * Sunyu redesign — header, footer & typography (2026-11-08)
 * Loaded after Avada's own styles by functions.php. Remove the enqueue there to roll back.
 */

/* ------------------------------------------------------------------ *
 * 1. Poppins (self-hosted, latin + latin-ext)
 * ------------------------------------------------------------------ */
@font-face{font-family:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/poppins-300-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/poppins-300-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/poppins-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/poppins-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/poppins-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/poppins-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/poppins-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/poppins-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/poppins-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/poppins-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* Poppins has no Chinese glyphs: CJK text falls back to the visitor's system Chinese font. */
html:root{
	--sy-font: "Poppins", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", "Source Han Sans SC", Arial, sans-serif;
	--sy-blue: #0000ff;
	--sy-blue-soft: #eef0ff;
	--sy-ink: #111827;
	--sy-muted: #6b7280;
	--sy-footer-bg: #0b1120;
	--sy-footer-card: #121a2e;
	--sy-footer-line: rgba(255,255,255,.08);
	--sy-footer-text: #cbd2e1;

	/* Avada global typography sets (everything on the site inherits from these) */
	--awb-typography1-font-family: var(--sy-font);
	--awb-typography2-font-family: var(--sy-font);
	--awb-typography3-font-family: var(--sy-font);
	--awb-typography4-font-family: var(--sy-font);
	--awb-typography5-font-family: var(--sy-font);
	--h1_typography-font-family: var(--sy-font);
}
body,
button, input, select, textarea,
.fusion-body h1, .fusion-body h2, .fusion-body h3, .fusion-body h4, .fusion-body h5, .fusion-body h6{
	font-family: var(--sy-font);
}

/* ------------------------------------------------------------------ *
 * 2. Header
 * ------------------------------------------------------------------ */
/* keep the header and its dropdowns above page content (sort bars, sliders, etc.) */
.fusion-tb-header{
	position: relative;
	z-index: 1000 !important;
}
.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){
	z-index: 1000 !important; /* position left to Avada (it may be absolute over hero images) */
}
.fusion-tb-header > .fusion-fullwidth:last-child,
.fusion-tb-header .fusion-fullwidth.fusion-sticky-container{
	box-shadow: 0 1px 0 rgba(17,24,39, 0.018);
}

/* Menu bar: frosted white so the dark menu text stays readable over hero photos */
.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){
	background-color: rgba(255,255,255,.92) !important;
	-webkit-backdrop-filter: saturate(160%) blur(12px);
	backdrop-filter: saturate(160%) blur(12px);
	border-bottom: 1px solid rgba(17,24,39,.06);
}
/* Shop, category, product, cart & account pages have no hero image under the header,
   so don't overlap them (the -100px overlap was hiding the sidebar search box). */
body.post-type-archive-product .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]),
body.tax-product_cat .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]),
body.tax-product_tag .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]),
body.single-product .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]),
body.woocommerce-cart .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]),
body.woocommerce-checkout .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]),
body.woocommerce-account .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]),
body.has-sidebar .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){
	--awb-margin-bottom: 0px !important;
	margin-bottom: 0 !important;
}
/* cart / account icons */
.fusion-tb-header nav[aria-label="woomenu"]{
	--awb-color: var(--sy-ink) !important;
	--awb-active-color: var(--sy-blue) !important;
	--awb-bg: transparent !important;
}

/* Main menu: no boxes, no borders — clean text links with a sliding underline */
.fusion-tb-header nav.awb-menu{
	--awb-bg: transparent !important;
	--awb-color: var(--sy-ink) !important;
	--awb-active-color: var(--sy-blue) !important;
	--awb-active-bg: transparent !important;
	--awb-border-color: transparent !important;
	--awb-border-top: 0px !important;
	--awb-border-right: 0px !important;
	--awb-border-bottom: 0px !important;
	--awb-border-left: 0px !important;
	--awb-active-border-color: transparent !important;
	--awb-active-border-top: 0px !important;
	--awb-active-border-right: 0px !important;
	--awb-active-border-bottom: 0px !important;
	--awb-active-border-left: 0px !important;
	--awb-gap: 30px !important;
	--awb-items-padding-top: 8px !important;
	--awb-items-padding-bottom: 8px !important;
	--awb-items-padding-left: 0px !important;
	--awb-items-padding-right: 0px !important;
	--awb-font-size: 15px !important;
	--awb-fusion-font-family-typography: var(--sy-font) !important;
	--awb-fusion-font-weight-typography: 500 !important;
	--awb-submenu-color: var(--sy-ink) !important;
	--awb-submenu-bg: #ffffff !important;
	--awb-submenu-active-bg: var(--sy-blue-soft) !important;
	--awb-submenu-active-color: var(--sy-blue) !important;
	--awb-submenu-sep-color: transparent !important;
	--awb-submenu-font-size: 14px !important;
	--awb-fusion-font-family-submenu-typography: var(--sy-font) !important;
	font-family: var(--sy-font);
}
.fusion-tb-header nav.awb-menu_desktop .awb-menu__main-a{
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	font-weight: 500;
	letter-spacing: .01em;
}
.fusion-tb-header nav.awb-menu_desktop .awb-menu__main-li > .awb-menu__main-a .menu-text{
	background: linear-gradient(currentColor, currentColor) 0 100% / 0 2px no-repeat;
	padding-bottom: 4px;
	transition: background-size .25s ease, color .2s ease;
}
.fusion-tb-header nav.awb-menu_desktop .awb-menu__main-li:hover > .awb-menu__main-a .menu-text,
.fusion-tb-header nav.awb-menu_desktop .awb-menu__main-li:focus-within > .awb-menu__main-a .menu-text,
.fusion-tb-header nav.awb-menu_desktop .awb-menu__main-li.current-menu-item > .awb-menu__main-a .menu-text,
.fusion-tb-header nav.awb-menu_desktop .awb-menu__main-li.current-menu-ancestor > .awb-menu__main-a .menu-text{
	background-size: 100% 2px;
}
.fusion-tb-header nav.awb-menu_desktop .awb-menu__main-li:hover > .awb-menu__main-a,
.fusion-tb-header nav.awb-menu_desktop .awb-menu__main-li.current-menu-item > .awb-menu__main-a,
.fusion-tb-header nav.awb-menu_desktop .awb-menu__main-li.current-menu-ancestor > .awb-menu__main-a{
	color: var(--sy-blue) !important;
}
/* language switcher flag inside the menu */
.fusion-tb-header .trp-menu-ls-label .trp-flag-image{
	border-radius: 2px;
	vertical-align: -2px;
	margin-right: 6px;
}

/* Dropdowns: white card with soft shadow */
.fusion-tb-header nav.awb-menu_desktop .awb-menu__sub-ul{
	border: 1px solid rgba(17,24,39,.06) !important;
	border-radius: 12px !important;
	box-shadow: 0 18px 40px -12px rgba(17,24,39, 0.066) !important;
	padding: 8px !important;
	min-width: 230px;
	overflow: visible;
}
.fusion-tb-header nav.awb-menu_desktop .awb-menu__sub-a{
	border-radius: 8px;
	padding: 9px 14px !important;
	font-weight: 400;
	transition: background-color .15s ease, color .15s ease;
}

/* Mobile / tablet header: logo left · cart + account icons · menu button right */
@media (max-width: 1024px){
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row{
		flex-wrap: nowrap !important;
		align-items: center !important;
	}
	.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe){
		order: 1 !important;
		flex: 1 1 auto !important;
		width: auto !important;
		max-width: none !important;
	}
	.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-column-wrapper{
		align-items: flex-start !important;
		justify-content: center !important;
	}
	.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe{
		margin-left: 0 !important;
		margin-right: auto !important;
		text-align: left !important;
	}
	.fusion-tb-header .fusion-layout-column:has(nav[aria-label="woomenu"]){
		order: 2 !important;
		flex: 0 0 auto !important;
		width: auto !important;
	}
	.fusion-tb-header .fusion-layout-column:has(nav[aria-label="sunyu menu"]){
		order: 3 !important;
		flex: 0 0 auto !important;
		width: auto !important;
		position: static !important;
	}
	/* cart & account are just two icons — show them instead of a second hamburger */
	.fusion-tb-header nav[aria-label="woomenu"] .awb-menu__m-toggle{ display: none !important; }
	.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul{
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		gap: 18px !important;
		position: static !important;
		width: auto !important;
		max-height: none !important;
		height: auto !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		background: transparent !important;
		box-shadow: none !important;
		padding: 0 14px 0 0 !important;
		margin: 0 !important;
	}
	.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul > li{
		width: auto !important;
		border: 0 !important;
		background: transparent !important;
		margin: 0 !important;
	}
	.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul > li > a{
		padding: 0 !important;
		min-height: 0 !important;
		height: auto !important;
		background: transparent !important;
		justify-content: center !important;
	}
	.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul{ flex-wrap: nowrap !important; }
	.fusion-tb-header nav[aria-label="woomenu"] .awb-menu__i{
		display: inline-flex !important;
		margin: 0 !important;
		color: var(--sy-ink) !important;
	}
	.fusion-tb-header nav[aria-label="woomenu"] .menu-text{ display: none !important; }
	.fusion-tb-header nav[aria-label="woomenu"] .awb-menu__i i{ font-size: 22px !important; }
	.fusion-tb-header nav[aria-label="sunyu menu"] .awb-menu__m-toggle{
		color: var(--sy-ink) !important;
	}
	.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul{ padding-right: 20px !important; }

	/* phones/tablets: solid header in normal flow (sits above hero images instead of covering their headline).
	   Avada pulls the page up under the header with margin-bottom:-100px — undo that here. */
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){
		--awb-margin-bottom: 0px !important;
		margin-bottom: 0 !important;
		position: relative !important;
		top: auto !important;
		z-index: 1000 !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
		background-color: #fff !important;
	}
}

/* Mobile menu panel: solid white list, dark text, left aligned */
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"]{
	--awb-bg: #ffffff !important;
	--awb-mobile-color: var(--sy-ink) !important;
	--awb-mobile-active-color: var(--sy-blue) !important;
	--awb-mobile-active-bg: var(--sy-blue-soft) !important;
	--awb-mobile-sep-color: rgba(17,24,39,.07) !important;
	--awb-mobile-justify: flex-start !important;
	--awb-mobile-nav-items-height: 52 !important;
	--awb-mobile-trigger-color: var(--sy-ink) !important;
	--awb-fusion-font-weight-mobile-typography: 500 !important;
}
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] > ul.awb-menu__main-ul{
	background: #fff !important;
	box-shadow: 0 24px 40px -16px rgba(17,24,39, 0.084) !important;
	border-top: 1px solid rgba(17,24,39,.06);
}
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] .awb-menu__main-a,
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] .awb-menu__sub-a{
	padding-left: 24px !important;
	padding-right: 24px !important;
}
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] .awb-menu__sub-a{
	padding-left: 40px !important;
	font-weight: 400;
}

/* ------------------------------------------------------------------ *
 * 3. Footer  ([sunyu_footer] in the Global Footer layout section)
 * ------------------------------------------------------------------ */
.fusion-tb-footer .fusion-fullwidth:has(.sy-footer){
	padding: 0 !important;
	margin: 0 !important;
	background: var(--sy-footer-bg) !important;
}
.sy-footer{
	background: var(--sy-footer-bg);
	color: var(--sy-footer-text);
	font-family: var(--sy-font);
	font-size: 14px;
	line-height: 1.65;
}
.sy-footer *{ box-sizing: border-box; }
.sy-footer a{ color: inherit; text-decoration: none; transition: color .2s ease, background-color .2s ease, border-color .2s ease; }
.sy-footer a:hover{ color: #fff; }
.sy-footer__inner{
	max-width: 1240px;
	margin: 0 auto;
	padding: 56px 24px 0;
}

/* top row */
.sy-footer__top{
	display: grid;
	grid-template-columns: 1.5fr 1fr 1.1fr 1.2fr;
	gap: 40px;
	padding-bottom: 40px;
}
.sy-footer__logo{
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: #fff;
	font-weight: 600;
	font-size: 16px;
}
.sy-footer__logo img{ /* new logo is ~1.9:1 */
	width: 72px;
	height: auto;
	display: block;
}
.sy-footer__about{
	margin: 16px 0 20px;
	max-width: 340px;
	color: var(--sy-footer-text);
}
.sy-footer h4.sy-footer__title{
	color: #fff !important;
	font-family: var(--sy-font) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	letter-spacing: .12em !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	margin: 0 0 18px !important;
}
.sy-footer ul.sy-footer__links{ list-style: none !important; margin: 0 !important; padding: 0 !important; }
.sy-footer ul.sy-footer__links li{ margin: 0 0 10px !important; padding: 0 !important; border: 0 !important; font-size: 14px !important; line-height: 1.6 !important; background: none !important; }
.sy-footer ul.sy-footer__links li::before{ display: none !important; }
.sy-footer ul.sy-footer__links a{ display: inline-flex; align-items: center; gap: 8px; font-size: 14px !important; line-height: 1.6 !important; padding: 0 !important; color: var(--sy-footer-text); }
.sy-footer ul.sy-footer__links a:hover{ color: #fff; }
.sy-footer__links a::before{
	content: "";
	width: 0;
	height: 2px;
	background: var(--sy-blue);
	transition: width .2s ease;
}
.sy-footer__links a:hover::before{ width: 10px; }

.sy-footer__social{ display: flex; gap: 10px; }
.sy-footer__social a{
	width: 38px; height: 38px;
	border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid var(--sy-footer-line);
	background: rgba(255,255,255,.03);
}
.sy-footer__social a:hover{ background: var(--sy-blue); border-color: var(--sy-blue); color: #fff; }
.sy-footer__social svg{ width: 17px; height: 17px; fill: currentColor; }

.sy-footer__cta{ display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
.sy-footer__btn{
	display: inline-flex; align-items: center; gap: 10px;
	padding: 10px 16px;
	border-radius: 999px;
	font-weight: 500;
	font-size: 14px;
	border: 1px solid var(--sy-footer-line);
	color: #fff !important;
	white-space: nowrap;
}
.sy-footer__btn svg{ width: 16px; height: 16px; fill: currentColor; flex: none; }
.sy-footer__btn--primary{ background: var(--sy-blue); border-color: var(--sy-blue); }
.sy-footer__btn--primary:hover{ background: #2a2aff; }
.sy-footer__btn--ghost:hover{ border-color: rgba(255,255,255,.35); }
.sy-footer__hours{ margin-top: 6px; font-size: 13px; color: #8b95ab; }

/* location cards */
.sy-footer__locations{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	padding: 32px 0;
	border-top: 1px solid var(--sy-footer-line);
}
.sy-loc{
	display: grid;
	grid-template-columns: 200px 1fr;
	background: var(--sy-footer-card);
	border: 1px solid var(--sy-footer-line);
	border-radius: 14px;
	overflow: hidden;
}
.sy-loc__map{ position: relative; min-height: 160px; background: #1b2540; }
.sy-loc__map iframe{
	position: absolute; inset: 0;
	width: 100%; height: 100%;
	border: 0;
	filter: grayscale(.25) contrast(.95);
}
.sy-loc__body{ padding: 18px 20px; }
.sy-loc__tag{
	display: inline-block;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #9db0ff;
	background: rgba(0,0,255,.18);
	padding: 3px 10px;
	border-radius: 999px;
	margin-bottom: 8px;
}
.sy-footer h5.sy-loc__name{
	color: #fff !important;
	font-family: var(--sy-font) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	margin: 0 0 6px !important;
	letter-spacing: 0 !important;
}
.sy-loc__addr{ margin: 0 0 10px; font-size: 13.5px; }
.sy-loc__contact{ display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 13.5px; }
.sy-loc__contact a{ display: inline-flex; align-items: center; gap: 6px; color: #fff; }
.sy-loc__contact a:hover{ color: #9db0ff; }
.sy-loc__contact svg{ width: 14px; height: 14px; fill: #9db0ff; flex: none; }
.sy-loc__dir{ display: inline-block; margin-top: 10px; font-size: 13px; color: #9db0ff !important; font-weight: 500; }
.sy-loc__dir:hover{ color: #fff !important; }

/* bottom bar */
.sy-footer__bottom{
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	padding: 18px 0 22px;
	border-top: 1px solid var(--sy-footer-line);
	font-size: 13px;
	color: #8b95ab;
}
.sy-footer__top-link{ display: inline-flex; align-items: center; gap: 6px; }
.sy-footer__top-link svg{ width: 14px; height: 14px; fill: currentColor; }

/* responsive */
@media (max-width: 1100px){
	.sy-footer__top{ grid-template-columns: 1fr 1fr; gap: 32px; }
	.sy-loc{ grid-template-columns: 160px 1fr; }
}
@media (max-width: 800px){
	.sy-footer__locations{ grid-template-columns: 1fr; }
}
@media (max-width: 560px){
	.sy-footer__inner{ padding: 40px 18px 0; }
	.sy-footer__top{ grid-template-columns: 1fr; gap: 28px; padding-bottom: 28px; }
	.sy-loc{ grid-template-columns: 1fr; }
	.sy-loc__map{ min-height: 150px; }
	.sy-footer__bottom{ flex-direction: column; align-items: flex-start; }
}

/* ------------------------------------------------------------------ *
 * 2b. Header: centred container, right-side icon buttons, language pill
 * ------------------------------------------------------------------ */
.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row{
	max-width: 1240px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
	box-sizing: border-box;
}
.fusion-tb-header nav[aria-label="woomenu"]{
	--awb-gap: 10px !important;
	--awb-justify-content: flex-end !important;
	--awb-main-justify-content: flex-end !important;
	--awb-items-padding-top: 0px !important;
	--awb-items-padding-bottom: 0px !important;
	--awb-items-padding-left: 0px !important;
	--awb-items-padding-right: 0px !important;
	--awb-border-top: 0px !important; --awb-border-right: 0px !important; --awb-border-bottom: 0px !important; --awb-border-left: 0px !important;
	--awb-active-border-top: 0px !important; --awb-active-border-right: 0px !important; --awb-active-border-bottom: 0px !important; --awb-active-border-left: 0px !important;
	--awb-active-bg: transparent !important;
}
.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul{ justify-content: flex-end !important; gap: 10px !important; }

/* cart & account: 40px circles */
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a.awb-menu__main-a{
	width: 40px !important;
	height: 40px !important;
	min-height: 40px !important;
	padding: 0 !important;
	border-radius: 50% !important;
	background: #f3f4f8 !important;
	color: var(--sy-ink) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative;
	transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a.awb-menu__main-a:hover{
	background: var(--sy-blue) !important;
	color: #fff !important;
	transform: translateY(-1px);
}
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a .awb-menu__i{
	margin: 0 !important;
	color: inherit !important;
}
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a .awb-menu__i i{
	font-size: 17px !important;
	color: inherit !important;
	line-height: 1 !important;
}
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a .menu-text{ display: none !important; }
/* cart item count badge */
.fusion-tb-header nav[aria-label="woomenu"] .fusion-widget-cart-number{
	position: absolute !important;
	top: -4px; right: -4px;
	min-width: 18px; height: 18px;
	padding: 0 5px !important;
	border-radius: 999px !important;
	background: var(--sy-blue) !important;
	color: #fff !important;
	font-size: 11px !important;
	line-height: 18px !important;
	margin: 0 !important;
	text-align: center;
}

/* language switcher: round flags everywhere */
.trp-language-switcher-container .trp-flag-image,
.fusion-tb-header .trp-flag-image{
	width: 20px !important;
	height: 20px !important;
	border-radius: 50% !important;
	object-fit: cover;
	box-shadow: 0 0 0 1px rgba(17,24,39,.12);
	vertical-align: middle !important;
	margin: 0 !important;
}
.fusion-tb-header .trp-menu-ls-label{ display: inline-flex; align-items: center; gap: 8px; }
.fusion-tb-header .trp-ls-language-name{ font-weight: 600; font-size: 13px; letter-spacing: .04em; }

/* desktop: "EN v" pill with dropdown; mobile: single round flag that switches language */
.fusion-tb-header li.sy-lang > a.awb-menu__main-a{
	height: 40px !important;
	min-height: 40px !important;
	padding: 0 14px 0 10px !important;
	border-radius: 999px !important;
	background: #f3f4f8 !important;
	color: var(--sy-ink) !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px;
	transition: background-color .2s ease;
}
.fusion-tb-header li.sy-lang > a.awb-menu__main-a:hover{ background: var(--sy-blue-soft) !important; }
.fusion-tb-header li.sy-lang .menu-text{ display: inline-flex !important; background: none !important; padding: 0 !important; }
.fusion-tb-header li.sy-lang--mobile{ display: none !important; }
.fusion-tb-header li.sy-lang .awb-menu__sub-ul{ min-width: 150px !important; }
.fusion-tb-header li.sy-lang .awb-menu__sub-a .trp-menu-ls-label{ gap: 10px; }

@media (max-width: 1024px){
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row{ padding-left: 16px !important; padding-right: 12px !important; }
	.fusion-tb-header li.sy-lang--desktop{ display: none !important; }
	.fusion-tb-header li.sy-lang--mobile{ display: flex !important; }
	.fusion-tb-header li.sy-lang--mobile > a.awb-menu__main-a{
		width: 38px !important;
		padding: 0 !important;
		justify-content: center !important;
	}
	.fusion-tb-header li.sy-lang--mobile .trp-ls-language-name{ display: none !important; }
	.fusion-tb-header li.sy-lang--mobile .trp-flag-image{ width: 24px !important; height: 24px !important; }
	.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul{ gap: 8px !important; padding-right: 12px !important; }
	.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a.awb-menu__main-a,
	.fusion-tb-header li.sy-lang--mobile > a.awb-menu__main-a{ width: 38px !important; height: 38px !important; min-height: 38px !important; }
}

/* ------------------------------------------------------------------ *
 * 4. Inner pages: shop, category, product, cart & account
 * ------------------------------------------------------------------ */
body.has-sidebar #main,
body.woocommerce-cart #main,
body.woocommerce-account #main,
body.woocommerce-checkout #main{
	background: #f6f7fb;
}
body.has-sidebar #main{ padding-top: 40px !important; padding-bottom: 60px !important; }

/* Sidebar: search on top as its own bar, then widget cards */
body.has-sidebar #sidebar .widget{
	background: #fff;
	border: 1px solid #eceef3;
	border-radius: 16px;
	padding: 22px 22px 18px !important;
	margin: 0 0 18px !important;
	box-shadow: 0 1px 2px rgba(17,24,39, 0.009);
}
body.has-sidebar #sidebar .widget .heading{ margin: 0 0 14px !important; padding: 0 !important; border: 0 !important; }
body.has-sidebar #sidebar .widget .widget-title{
	font-family: var(--sy-font) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--sy-ink) !important;
	letter-spacing: 0 !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	padding: 0 0 0 12px !important;
	border-left: 3px solid var(--sy-blue);
}

/* search bar */
body.has-sidebar #sidebar .widget_product_search{
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0 !important;
	margin-bottom: 22px !important;
}
body.has-sidebar #sidebar .widget_product_search form > div{ position: relative; }
body.has-sidebar #sidebar .widget_product_search input.s{
	width: 100% !important;
	height: 52px !important;
	padding: 0 18px 0 48px !important;
	border: 1px solid #e3e6ee !important;
	border-radius: 14px !important;
	background-color: #fff !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: 16px 50% !important;
	background-size: 20px 20px !important;
	font-family: var(--sy-font) !important;
	font-size: 14px !important;
	color: var(--sy-ink) !important;
	box-shadow: 0 2px 8px -2px rgba(17,24,39, 0.018) !important;
	transition: border-color .2s ease, box-shadow .2s ease;
}
body.has-sidebar #sidebar .widget_product_search input.s::placeholder{ color: #8a93a6; opacity: 1; }
body.has-sidebar #sidebar .widget_product_search input.s:focus{
	outline: none !important;
	border-color: var(--sy-blue) !important;
	box-shadow: 0 0 0 4px rgba(0,0,255,.10) !important;
}

/* price filter */
body.has-sidebar #sidebar .widget_price_filter .price_slider_wrapper .ui-widget-content{
	height: 4px !important;
	background: #e6e8ef !important;
	border: 0 !important;
	border-radius: 999px !important;
	margin: 12px 8px 22px !important;
}
body.has-sidebar #sidebar .widget_price_filter .ui-slider .ui-slider-range{ background: var(--sy-blue) !important; border-radius: 999px; }
body.has-sidebar #sidebar .widget_price_filter .ui-slider .ui-slider-handle{
	width: 16px !important; height: 16px !important;
	top: -6px !important;
	margin-left: -8px !important;
	border-radius: 50% !important;
	background: #fff !important;
	border: 2px solid var(--sy-blue) !important;
	box-shadow: 0 2px 6px rgba(0,0,255, 0.075) !important;
}
body.has-sidebar #sidebar .widget_price_filter .price_slider_amount{
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	flex-direction: row-reverse;
	gap: 10px;
}
body.has-sidebar #sidebar .widget_price_filter .price_slider_amount .button{
	border-radius: 999px !important;
	padding: 8px 18px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: .06em;
	background: var(--sy-blue) !important;
	border: 0 !important;
	color: #fff !important;
	margin: 0 !important;
}
body.has-sidebar #sidebar .widget_price_filter .price_label{
	font-size: 13px !important;
	color: var(--sy-muted) !important;
	margin: 0 !important;
}
body.has-sidebar #sidebar .widget_price_filter .price_label span{ color: var(--sy-ink); font-weight: 600; }

/* category tree (Iks Menu) */
body.has-sidebar #sidebar .iksm-term__inner{
	border-radius: 10px;
	min-height: 40px;
	transition: background-color .15s ease;
}
body.has-sidebar #sidebar .iksm-term__inner:hover{ background: var(--sy-blue-soft) !important; }
body.has-sidebar #sidebar .iksm-term__link{
	font-family: var(--sy-font) !important;
	font-size: 14px !important;
	color: var(--sy-ink) !important;
	padding: 9px 12px !important;
}
body.has-sidebar #sidebar .iksm-term--current > .iksm-term__inner,
body.has-sidebar #sidebar .iksm-term--current > .iksm-term__inner:hover{ background: var(--sy-blue) !important; }
body.has-sidebar #sidebar .iksm-term--current > .iksm-term__inner .iksm-term__link,
body.has-sidebar #sidebar .iksm-term--current > .iksm-term__inner .iksm-term__toggle{ color: #fff !important; }
body.has-sidebar #sidebar .iksm-term__toggle{ color: #9aa3b5 !important; }
body.has-sidebar #sidebar .iksm-terms-tree--children .iksm-term__link{ font-size: 13.5px !important; color: #4b5563 !important; }

/* sort / view bar */
body.has-sidebar .catalog-ordering{ margin-bottom: 26px !important; }
body.has-sidebar .catalog-ordering .order-dropdown,
body.has-sidebar .catalog-ordering .orderby-order-container > ul,
body.has-sidebar .catalog-ordering .fusion-grid-list-view,
body.has-sidebar .catalog-ordering .order{
	border-radius: 10px !important;
	overflow: hidden;
	background: #fff !important;
}
body.has-sidebar .catalog-ordering .order-dropdown a,
body.has-sidebar .catalog-ordering .order a,
body.has-sidebar .catalog-ordering .fusion-grid-list-view a{ border-color: #e3e6ee !important; }

/* product cards */
body.has-sidebar ul.products li.product .fusion-product-wrapper{
	background: #fff;
	border: 1px solid #eceef3 !important;
	border-radius: 16px;
	overflow: hidden;
	transition: transform .25s ease, box-shadow .25s ease;
	height: 100%;
}
body.has-sidebar ul.products li.product .fusion-product-wrapper:hover{
	transform: translateY(-4px);
	box-shadow: 0 18px 36px -18px rgba(17,24,39, 0.084);
}
body.has-sidebar ul.products li.product .fusion-image-wrapper img{
	aspect-ratio: 4 / 5;
	width: 100%;
	height: auto;
	object-fit: cover;
}
body.has-sidebar ul.products li.product .product-details-container{
	padding: 16px 18px 20px !important;
	text-align: left !important;
}
body.has-sidebar ul.products li.product .product-title,
body.has-sidebar ul.products li.product .product-title a{
	font-family: var(--sy-font) !important;
	font-style: normal !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--sy-ink) !important;
	line-height: 1.4 !important;
	margin: 0 0 6px !important;
	text-align: left !important;
}
body.has-sidebar ul.products li.product .fusion-price-rating{ display: block !important; text-align: left !important; }
body.has-sidebar ul.products li.product .price{
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--sy-blue) !important;
	line-height: 1.5 !important;
}
body.has-sidebar ul.products li.product .woocommerce-price-suffix{
	display: block;
	font-size: 12px !important;
	font-weight: 400 !important;
	color: var(--sy-muted) !important;
	margin-top: 2px;
}
.woocommerce span.onsale{
	border-radius: 999px !important;
	padding: 2px 12px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	min-height: 0 !important;
	min-width: 0 !important;
	line-height: 22px !important;
	background: var(--sy-blue) !important;
	box-shadow: 0 4px 12px -4px rgba(0,0,255, 0.15);
}

/* single product */
body.single-product .woocommerce-product-gallery__image img,
body.single-product .woocommerce-product-gallery .flex-viewport{ border-radius: 16px; }
body.single-product .product .summary.entry-summary{
	background: #fff;
	border: 1px solid #eceef3;
	border-radius: 16px;
	padding: 28px 30px !important;
}
body.single-product .product .summary .product_title{
	font-size: 26px !important;
	font-weight: 600 !important;
	color: var(--sy-ink) !important;
	line-height: 1.3 !important;
	margin-bottom: 10px !important;
}
body.single-product .product .summary .price{ font-size: 22px !important; font-weight: 600 !important; color: var(--sy-blue) !important; }
body.single-product .product .summary .woocommerce-price-suffix{ font-size: 13px !important; font-weight: 400; color: var(--sy-muted) !important; }
body.single-product .product .summary .product_meta{ font-size: 14px; color: var(--sy-muted); border-top: 1px solid #eceef3; padding-top: 16px; }

/* shared WooCommerce controls (cart, account, product) */
.woocommerce form .input-text,
.woocommerce form select,
.woocommerce-page form .input-text,
.woocommerce-page form select,
.woocommerce .variations select{
	border-radius: 10px !important;
	border-color: #e3e6ee !important;
	font-family: var(--sy-font) !important;
}
.woocommerce .single_add_to_cart_button,
.woocommerce .checkout-button,
.woocommerce .wc-forward,
.woocommerce form .button[type="submit"]{
	border-radius: 999px !important;
	font-family: var(--sy-font) !important;
	font-weight: 600 !important;
	letter-spacing: .02em;
}
body.woocommerce-cart .shop_table,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-navigation{
	background: #fff;
	border: 1px solid #eceef3 !important;
	border-radius: 16px;
	overflow: hidden;
}
body.woocommerce-account .woocommerce-MyAccount-content{ padding: 24px 28px; }

/* ------------------------------------------------------------------ *
 * 5. Polish (header container specificity, icon alignment, shop spacing)
 * ------------------------------------------------------------------ */
/* Avada's hundred-percent rows use max-width:104% — out-specify it so the header matches the 1240px content width */
html body .fusion-tb-header .fusion-fullwidth.fusion-flex-container:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row.fusion-row{
	padding-left: 0 !important;
	padding-right: 0 !important;
}
/* Avada puts width/max-width:104% !important inline on the row, so constrain the parent instead:
   side padding leaves a 1200px content box (row = 104% of it, centred). */
html body .fusion-tb-header .fusion-fullwidth.fusion-flex-container:has(nav[aria-label="sunyu menu"]){
	padding-left: max(24px, calc((100% - 1200px) / 2)) !important;
	padding-right: max(24px, calc((100% - 1200px) / 2)) !important;
}

/* vertically centre the right-side icon buttons with the main menu */
.fusion-tb-header .fusion-layout-column:has(nav[aria-label="woomenu"]) > .fusion-column-wrapper{
	justify-content: center !important;
}
.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul{
	align-items: center !important;
	min-height: 0 !important;
	height: auto !important;
}
.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul > li{
	align-self: center !important;
	height: auto !important;
	min-height: 0 !important;
}

/* shop archive: the (empty) page-content block above the grid only adds a gap */
body.post-type-archive-product .woocommerce-products-header{ display: none !important; }

/* price filter: no stray divider / indent */
body.has-sidebar #sidebar .widget_price_filter .price_slider_wrapper,
body.has-sidebar #sidebar .widget_price_filter .price_slider_amount,
body.has-sidebar #sidebar .widget_price_filter form{
	border: 0 !important;
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}
body.has-sidebar #sidebar .widget_price_filter .price_label{ padding: 0 !important; text-indent: 0 !important; }

/* product cards: tighter details block */
body.has-sidebar ul.products li.product .fusion-product-content{ padding: 0 !important; }
body.has-sidebar ul.products li.product .product-details-container{ padding: 14px 18px 18px !important; min-height: 0 !important; }
body.has-sidebar ul.products li.product .product-details{ min-height: 0 !important; }

/* ------------------------------------------------------------------ *
 * 6. Fixed header on scroll
 * ------------------------------------------------------------------ */
/* Desktop: Avada's sticky row normally hides itself on scroll-down — keep it visible */
.fusion-tb-header .fusion-fullwidth.fusion-container-stuck:has(nav[aria-label="sunyu menu"]){
	top: var(--wp-admin--admin-bar--height, 0px) !important;
	transform: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	background-color: rgba(255,255,255,.96) !important;
	box-shadow: 0 10px 30px -18px rgba(17,24,39, 0.105) !important;
}
/* Phones/tablets: the whole header sticks; the blue promo banner scrolls away, the logo/menu bar stays */
@media (max-width: 1024px){
	.fusion-tb-header{
		position: -webkit-sticky !important;
		position: sticky !important;
		top: calc(0px - var(--sy-banner-h, 48px)) !important;
	}
	.sy-scrolled .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){
		box-shadow: 0 10px 30px -18px rgba(17,24,39, 0.105);
	}
}

/* ------------------------------------------------------------------ *
 * 7. Content pages: Poppins everywhere (beats per-element Montserrat / Hepta Slab overrides)
 * ------------------------------------------------------------------ */
#main :is(h1,h2,h3,h4,h5,h6,p,li,a,span,div,td,th,label,button,input,select,textarea):not(i):not([class*="icon"]):not([class*="fa-"]):not([class*="awb-icon"]):not([class*="glyphicon"]){
	font-family: var(--sy-font) !important;
}

/* ------------------------------------------------------------------ *
 * 8. Services pages (body.sy-service): shared design layer
 * ------------------------------------------------------------------ */
.sy-service #main{ background: #fff; }
.sy-service #main .post-content .fusion-title-heading{
	letter-spacing: -.01em !important;
	line-height: 1.2 !important;
}
.sy-service #main .post-content .fusion-title-heading a{ text-decoration: none !important; }

/* body copy: comfortable line-height only — sizes & colours stay as set per element (hero text, counters) */
.sy-service #main .post-content .fusion-text li{ line-height: 1.75; }

/* bullet lists: blue check markers */
.sy-service #main .post-content .fusion-text ul{
	list-style: none !important;
	padding-left: 0 !important;
	margin: 14px 0 22px !important;
}
.sy-service #main .post-content .fusion-text ul > li{
	position: relative;
	padding: 0 0 0 32px !important;
	margin: 0 0 12px !important;
}
.sy-service #main .post-content .fusion-text ul > li::before{
	content: "";
	position: absolute;
	left: 0; top: .45em;
	width: 20px; height: 20px;
	border-radius: 50%;
	background: var(--sy-blue-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230000ff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") no-repeat 50% 50% / 12px 12px;
}
.sy-service #main .post-content .fusion-text ul > li strong{ color: var(--sy-ink); }

/* images: rounded, soft shadow */
.sy-service #main .post-content .fusion-imageframe:not(.has-aspect-ratio) img,
.sy-service #main .post-content .fusion-imageframe.has-aspect-ratio{
	border-radius: 18px;
	overflow: hidden;
}
.sy-service #main .post-content .fusion-imageframe:not(.has-aspect-ratio) img{
	box-shadow: 0 24px 48px -28px rgba(17,24,39, 0.135);
}
.sy-service #main .post-content .fusion-image-carousel img,
.sy-service #main .post-content .fusion-slider-sc img{ border-radius: 18px; }

/* buttons: brand blue pills (replaces the orange / maroon demo buttons) */
.sy-service #main .post-content .fusion-button{
	--button_accent_color: #fff !important;
	--button_accent_hover_color: #fff !important;
	background: var(--sy-blue) !important;
	border: 0 !important;
	border-radius: 999px !important;
	padding: 13px 26px !important;
	box-shadow: 0 10px 24px -12px rgba(0,0,255, 0.165) !important;
	transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease !important;
}
.sy-service #main .post-content .fusion-button:hover{
	background: #2a2aff !important;
	transform: translateY(-2px);
	box-shadow: 0 14px 28px -12px rgba(0,0,255, 0.18) !important;
}
.sy-service #main .post-content .fusion-button .fusion-button-text{
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	letter-spacing: .02em !important;
	text-transform: none !important;
}

/* Tact: the three dark maroon demo sections become light product showcases */
.sy-service #main .fusion-fullwidth[style*="--awb-background-color:#22060b"]{
	background-color: #f6f7fb !important;
	--awb-background-color: #f6f7fb !important;
	border-top: 1px solid #eceef3;
}
.sy-service #main .fusion-fullwidth[style*="--awb-background-color:#22060b"] .fusion-title-heading{ color: var(--sy-ink) !important; }
.sy-service #main .fusion-fullwidth[style*="--awb-background-color:#22060b"] .fusion-separator-border{ border-color: #dfe3ec !important; }
.sy-service #main .fusion-post-cards li.post-card > .fusion-column-wrapper{
	background: #fff;
	border: 1px solid #eceef3;
	border-radius: 16px;
	overflow: hidden;
	padding: 0 0 20px !important;
	transition: transform .25s ease, box-shadow .25s ease;
}
.sy-service #main .fusion-post-cards li.post-card:hover > .fusion-column-wrapper{
	transform: translateY(-4px);
	box-shadow: 0 18px 36px -18px rgba(17,24,39, 0.084);
}
.sy-service #main .fusion-post-cards li.post-card .fusion-imageframe{ border-radius: 0; }
.sy-service #main .fusion-post-cards li.post-card .fusion-imageframe img{ box-shadow: none; border-radius: 0; }
.sy-service #main .fusion-post-cards li.post-card .fusion-title-heading,
.sy-service #main .fusion-post-cards li.post-card .fusion-title-heading a{
	color: var(--sy-ink) !important;
	font-size: 17px !important;
	font-weight: 600 !important;
}
.sy-service #main .fusion-post-cards li.post-card .fusion-tb-categories,
.sy-service #main .fusion-post-cards li.post-card .fusion-tb-categories a{
	color: var(--sy-muted) !important;
	font-size: 12px !important;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.sy-service #main .fusion-post-cards li.post-card .fusion-woo-price-tb,
.sy-service #main .fusion-post-cards li.post-card .fusion-woo-price-tb .amount{
	color: var(--sy-blue) !important;
	font-weight: 600 !important;
	font-size: 16px !important;
}
.sy-service #main .fusion-post-cards li.post-card .woocommerce-price-suffix{
	display: block;
	color: var(--sy-muted) !important;
	font-size: 12px !important;
	font-weight: 400 !important;
}

/* spec tables (Tact, Pureco) */
.sy-service #main .post-content table{
	border-collapse: separate !important;
	border-spacing: 0;
	border: 1px solid #eceef3 !important;
	border-radius: 14px;
	overflow: hidden;
	width: 100%;
}
.sy-service #main .post-content table td,
.sy-service #main .post-content table th{
	border: 0 !important;
	border-bottom: 1px solid #eceef3 !important;
	padding: 14px 18px !important;
	font-size: 14.5px;
	color: #374151;
	text-align: left;
}
.sy-service #main .post-content table tr:last-child td{ border-bottom: 0 !important; }
.sy-service #main .post-content table td:first-child{ background: #f6f7fb; font-weight: 600; color: var(--sy-ink); width: 38%; }

/* ------------------------------------------------------------------ *
 * 9. Call-to-action band at the end of every Services page
 * ------------------------------------------------------------------ */
.sy-cta{
	padding: 24px 24px 72px;
	background: #fff;
}
.sy-cta__inner{
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.6fr 1fr;
	gap: 32px;
	align-items: center;
	padding: 44px 48px;
	border-radius: 24px;
	background:
		radial-gradient(600px 240px at 100% 0%, rgba(255,255,255,.14), transparent 60%),
		linear-gradient(135deg, #0000ff 0%, #1b1bd8 55%, #0b1120 100%);
	color: #fff;
	box-shadow: 0 30px 60px -30px rgba(0,0,255, 0.165);
}
.sy-cta__eyebrow{
	display: inline-block;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #c7ceff;
	margin-bottom: 10px;
}
.sy-cta h2.sy-cta__title{
	color: #fff !important;
	font-size: clamp(22px, 2.4vw, 30px) !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	margin: 0 0 10px !important;
	letter-spacing: -.01em !important;
}
.sy-cta__lead{ margin: 0 !important; color: #dfe3ff; font-size: 15.5px; line-height: 1.7; max-width: 620px; }
.sy-cta__actions{ display: flex; flex-direction: column; gap: 12px; align-items: flex-end; }
.sy-cta a.sy-cta__btn{ padding: 13px 22px; font-size: 15px; text-decoration: none !important; }
.sy-cta a.sy-footer__btn--primary.sy-cta__btn{ background: #fff; border-color: #fff; color: var(--sy-blue) !important; }
.sy-cta a.sy-footer__btn--primary.sy-cta__btn:hover{ background: #eef0ff; }
.sy-cta a.sy-cta__btn--ghost{ border-color: rgba(255,255,255,.45); color: #fff !important; }
.sy-cta a.sy-cta__btn--ghost:hover{ background: rgba(255,255,255,.1); }
.sy-cta .sy-footer__btn svg{ width: 18px; height: 18px; }
@media (max-width: 800px){
	.sy-cta{ padding: 8px 16px 48px; }
	.sy-cta__inner{ grid-template-columns: 1fr; padding: 32px 24px; border-radius: 20px; }
	.sy-cta__actions{ align-items: stretch; }
	.sy-cta a.sy-cta__btn{ justify-content: center; }
}

/* small fixes */
body.has-sidebar ul.products li.product .price .amount{ line-height: 1.35; }
body.has-sidebar ul.products li.product .price{ line-height: 1.35 !important; }

/* Tact product cards: category label without the maroon strip; real 3-column grid */
.sy-service #main .fusion-post-cards .fusion-meta-tb{
	--awb-item-background-color: transparent !important;
	--awb-text-color: var(--sy-muted) !important;
	--awb-link-color: var(--sy-muted) !important;
	--awb-height: auto !important;
	--awb-item-padding-top: 14px !important;
	background: transparent !important;
}
.sy-service #main .fusion-post-cards ul.fusion-grid{
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	margin: 0 !important;
}
.sy-service #main .fusion-post-cards ul.fusion-grid > li.post-card{
	width: auto !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
@media (max-width: 800px){ .sy-service #main .fusion-post-cards ul.fusion-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } }
.sy-service #main .fusion-post-cards li.post-card .fusion_builder_column_inner > .fusion-column-wrapper{
	background-color: transparent !important;
	background-image: none !important;
	--awb-bg-color: transparent !important;
}

/* ------------------------------------------------------------------ *
 * 10. Consistent type scale for page content
 * ------------------------------------------------------------------ */
/* Body copy: paragraphs & list items in text blocks without their own size (counters, hero lines keep theirs) */
#main .fusion-text:not([style*="--awb-font-size"]) :is(p, li),
#main .fusion-text:not([style*="--awb-font-size"]) :is(p, li) span:not([class*="icon"]),
#main .fusion-checklist .fusion-li-item-content,
#main .fusion-checklist .fusion-li-item-content p{
	font-size: 16px !important;
	line-height: 1.75 !important;
}
@media (max-width: 800px){
	#main .fusion-text:not([style*="--awb-font-size"]) :is(p, li),
	#main .fusion-text:not([style*="--awb-font-size"]) :is(p, li) span:not([class*="icon"]),
	#main .fusion-checklist .fusion-li-item-content,
	#main .fusion-checklist .fusion-li-item-content p{ font-size: 15px !important; }
}

/* Titles: one size for every section title */
#main .post-content .fusion-title .fusion-title-heading,
#main .post-content .fusion-title .fusion-title-heading :is(p, span, a, strong),
#main .post-content h2.wsite-content-title{
	font-size: clamp(28px, 3vw, 40px) !important;
	line-height: 1.2 !important;
	letter-spacing: -.01em !important;
}
/* small sub-headings (About page story items were 18px) — one step down */
#main .post-content .fusion-title .fusion-title-heading[style*="--fontSize:18;"],
#main .post-content .fusion-title .fusion-title-heading[style*="--fontSize:18;"] :is(p, span, a, strong){
	font-size: 24px !important;
	line-height: 1.3 !important;
}
/* cards & product titles keep their own size */
#main .fusion-post-cards .fusion-title-heading,
#main .fusion-post-cards .fusion-title-heading a,
#main ul.products .fusion-title-heading{ font-size: 17px !important; }

/* ------------------------------------------------------------------ *
 * 11. Edge Banding (page 10024): full-width banner + stats card
 * ------------------------------------------------------------------ */
/* banner: break out of the boxed content width */
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child{
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	padding: 140px max(24px, calc((100vw - 1200px) / 2)) 190px !important;
	background-image:
		linear-gradient(90deg, rgba(11,17,32,.92) 0%, rgba(11,17,32,.72) 38%, rgba(11,17,32,.18) 75%, rgba(11,17,32,.05) 100%),
		url(/wp-content/uploads/2024/05/Edging.jpg) !important;
	background-size: cover !important;
	background-position: center right !important;
	background-color: #0b1120 !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child > .fusion-builder-row > .fusion-layout-column{
	margin-top: 0 !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{
	border-left: 0 !important;
	padding-left: 0 !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child .fusion-title-heading{
	font-size: clamp(40px, 5vw, 64px) !important;
	font-weight: 700 !important;
	color: #fff !important;
	letter-spacing: -.02em !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child .fusion-text p{
	font-size: 15px !important;
	font-weight: 500 !important;
	letter-spacing: .16em !important;
	color: #c7ceff !important;
	margin: 6px 0 26px !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child .fusion-button{ padding: 15px 30px !important; }
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child .fusion-button .fusion-button-text{ font-size: 15px !important; }

/* stats: one floating card overlapping the banner */
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2){
	position: relative;
	z-index: 5;
	max-width: 720px !important;
	margin: -90px auto 40px !important;
	padding: 0 !important;
	background: #fff !important;
	border-radius: 20px;
	box-shadow: 0 30px 60px -30px rgba(11,17,32, 0.135);
	border: 1px solid #eceef3;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) > .fusion-builder-row{ flex-wrap: nowrap !important; }
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) > .fusion-builder-row > .fusion-layout-column:first-child{ display: none !important; }
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) > .fusion-builder-row > .fusion-layout-column{
	width: 50% !important;
	flex: 1 1 50% !important;
	margin: 0 !important;
	padding: 0 !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-column-wrapper{
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center;
	padding: 30px 20px !important;
	background: transparent !important;
	border-left: 0 !important;
	min-height: 0 !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) > .fusion-builder-row > .fusion-layout-column:last-child > .fusion-column-wrapper{
	border-left: 1px solid #eceef3 !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-text{ margin: 0 !important; width: auto !important; }
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-text[style*="--awb-font-size:72px"],
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-text[style*="--awb-font-size:72px"] p{
	font-size: 52px !important;
	font-weight: 600 !important;
	line-height: 1.1 !important;
	color: var(--sy-blue) !important;
	letter-spacing: -.02em;
	margin: 0 !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-text:not([style*="--awb-font-size:72px"]),
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-text:not([style*="--awb-font-size:72px"]) p{
	font-size: 14px !important;
	font-weight: 500 !important;
	letter-spacing: .06em !important;
	text-transform: uppercase;
	color: var(--sy-muted) !important;
	margin: 6px 0 0 !important;
}
@media (max-width: 800px){
	.page-id-10024 #main .post-content > .fusion-fullwidth:first-child{ padding: 80px 20px 130px !important; background-position: 70% center !important; }
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2){ max-width: calc(100% - 32px) !important; margin-top: -70px !important; }
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-column-wrapper{ padding: 22px 10px !important; }
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-text[style*="--awb-font-size:72px"],
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-text[style*="--awb-font-size:72px"] p{ font-size: 36px !important; }
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2) .fusion-text:not([style*="--awb-font-size:72px"]) p{ font-size: 11.5px !important; }
}

/* body-copy blocks that had their own 17-20px size, and inner checklist spans: same 16px */
#main .fusion-text:is([style*="--awb-font-size:17px"],[style*="--awb-font-size:18px"],[style*="--awb-font-size:19px"],[style*="--awb-font-size:20px"]) :is(p, li),
#main .fusion-checklist .fusion-li-item-content *:not(i):not([class*="icon"]){
	font-size: 16px !important;
	line-height: 1.75 !important;
}

/* full-bleed banner: no white gap above it */
.page-id-10024 #main{ padding-top: 0 !important; }

/* About: story cards — titles line up at the top */
.page-id-17 #main .fusion-column-wrapper:has(> .fusion-title .fusion-title-heading[style*="--fontSize:18;"]){ justify-content: flex-start !important; }

/* ------------------------------------------------------------------ *
 * 12. Services mega menu (inc/sunyu-megamenu.php) — desktop only
 * ------------------------------------------------------------------ */
.sy-mega{ display: none; }
@media (min-width: 1025px){
	.fusion-tb-header nav[aria-label="sunyu menu"]{ position: relative; }
	.fusion-tb-header nav.awb-menu_desktop li.sy-has-mega:has(> .sy-mega){ position: static !important; }
	.fusion-tb-header nav.awb-menu_desktop li.sy-has-mega:has(> .sy-mega) > .awb-menu__sub-ul{ display: none !important; }
	/* invisible bridge so the panel doesn't close while the pointer travels down to it */
	.fusion-tb-header nav.awb-menu_desktop li.sy-has-mega > a.awb-menu__main-a{ position: relative; }
	.fusion-tb-header nav.awb-menu_desktop li.sy-has-mega > a.awb-menu__main-a::after{
		content: "";
		position: absolute;
		left: -40px; right: -40px;
		top: 100%;
		height: 40px;
	}

	.fusion-tb-header nav.awb-menu_desktop .sy-mega{
		display: grid;
		grid-template-columns: minmax(0, 1fr) 290px;
		position: absolute;
		top: calc(100% + 30px);
		left: 50%;
		width: min(960px, calc(100vw - 48px));
		transform: translate(-50%, 10px);
		background: #fff;
		border: 1px solid rgba(17,24,39,.06);
		border-radius: 22px;
		box-shadow: 0 40px 80px -30px rgba(17,24,39, 0.105), 0 2px 6px rgba(17,24,39, 0.012);
		overflow: hidden;
		text-align: left;
		text-transform: none;
		letter-spacing: 0;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity .22s ease, transform .22s ease, visibility .22s;
		z-index: 60;
	}
	.fusion-tb-header nav.awb-menu_desktop li.sy-has-mega:hover > .sy-mega,
	.fusion-tb-header nav.awb-menu_desktop li.sy-has-mega:focus-within > .sy-mega{
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translate(-50%, 0);
	}
}

.sy-mega a{ text-decoration: none !important; }
.sy-mega__main{ padding: 22px 22px 18px; display: flex; flex-direction: column; }
.sy-mega__grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 6px 10px; }
.sy-mega__card{
	display: flex !important;
	align-items: center;
	gap: 16px;
	padding: 12px !important;
	border-radius: 16px;
	background: transparent !important;
	transition: background-color .18s ease;
}
.sy-mega__card:hover{ background: var(--sy-blue-soft) !important; }
.sy-mega__thumb{
	flex: none;
	width: 68px; height: 68px;
	border-radius: 14px;
	overflow: hidden;
	background: #f3f4f8;
	box-shadow: 0 6px 14px -8px rgba(17,24,39, 0.105);
}
.sy-mega__thumb img{
	width: 100% !important; height: 100% !important;
	object-fit: cover;
	display: block;
	transition: transform .35s ease;
}
.sy-mega__card:hover .sy-mega__thumb img{ transform: scale(1.08); }
.sy-mega__title{
	display: block;
	font: 600 15.5px/1.35 var(--sy-font) !important;
	color: var(--sy-ink) !important;
	transition: color .18s ease;
}
.sy-mega__card:hover .sy-mega__title{ color: var(--sy-blue) !important; }
.sy-mega__desc{
	display: block;
	margin-top: 3px;
	font: 400 13px/1.45 var(--sy-font) !important;
	color: var(--sy-muted) !important;
}
.sy-mega__sub{
	list-style: none !important;
	margin: 0 0 4px 96px !important;
	padding: 0 !important;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.sy-mega__sub li{ margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
.sy-mega__sub a{
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	padding: 3px 0 !important;
	font: 400 13.5px/1.4 var(--sy-font) !important;
	color: #4b5563 !important;
	background: transparent !important;
}
.sy-mega__sub a::before{
	content: "";
	width: 6px; height: 6px;
	border-radius: 50%;
	background: #c7ceff;
	transition: background-color .15s ease;
}
.sy-mega__sub a:hover{ color: var(--sy-blue) !important; }
.sy-mega__sub a:hover::before{ background: var(--sy-blue); }
.sy-mega__foot{
	margin-top: auto;
	padding: 16px 12px 2px;
	border-top: 1px solid #eef0f4;
}
.sy-mega__foot a{
	font: 600 14px/1.4 var(--sy-font) !important;
	color: var(--sy-blue) !important;
	background: transparent !important;
	padding: 0 !important;
}
.sy-mega__foot a span{ display: inline-block; transition: transform .2s ease; }
.sy-mega__foot a:hover span{ transform: translateX(4px); }

/* featured image card */
.sy-mega__feature{
	position: relative;
	display: flex !important;
	flex-direction: column;
	justify-content: flex-end;
	gap: 6px;
	min-height: 330px;
	padding: 26px !important;
	background-size: cover !important;
	background-position: center !important;
	color: #fff !important;
	overflow: hidden;
	isolation: isolate;
}
.sy-mega__feature::before{
	content: "";
	position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(11,17,32,.05) 25%, rgba(11,17,32,.88) 100%);
	z-index: -1;
	transition: background-color .25s ease;
}
.sy-mega__feature:hover::before{ background-color: rgba(0,0,255,.18); }
.sy-mega__eyebrow{
	align-self: flex-start;
	font: 600 11px/1 var(--sy-font) !important;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #fff !important;
	background: rgba(255,255,255,.18);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	padding: 7px 11px;
	border-radius: 999px;
}
.sy-mega__ftitle{ font: 600 21px/1.25 var(--sy-font) !important; color: #fff !important; }
.sy-mega__fcta{ font: 500 14px/1.4 var(--sy-font) !important; color: #dfe3ff !important; }
.sy-mega__fcta span{ display: inline-block; transition: transform .2s ease; }
.sy-mega__feature:hover .sy-mega__fcta span{ transform: translateX(4px); }
.sy-mega__thumb img{ transform: scale(var(--sy-zoom, 1)); }
.sy-mega__card:hover .sy-mega__thumb img{ transform: scale(calc(var(--sy-zoom, 1) * 1.08)); }

/* full-bleed banners: exclude the scrollbar so they line up exactly with the window */
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child{
	width: calc(100vw - var(--sy-sbw, 0px)) !important;
	max-width: calc(100vw - var(--sy-sbw, 0px)) !important;
	margin-left: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2) !important;
	margin-right: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2) !important;
}

/* Edge Banding: feature-row images all the same size (3:2, up to 680px wide) */
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(n+4) .fusion-imageframe{
	display: block !important;
	width: 100% !important;
	max-width: 680px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(n+4) .fusion-imageframe img{
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

/* Edge Banding on phones: full-width sections, no hidden content, text above image in every row */
@media (max-width: 800px){
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(n+3){
		padding: 36px 20px !important;
	}
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(n+3) > .fusion-builder-row > .fusion-layout-column.fusion-no-small-visibility{
		display: flex !important;
	}
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(n+3) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{
		padding: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(n+3) > .fusion-builder-row > .fusion-layout-column{
		width: 100% !important;
		margin-bottom: 18px !important;
	}
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(n+3) > .fusion-builder-row > .fusion-layout-column:has(.fusion-imageframe){
		order: 2;
	}
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(3) .fusion-imageframe{
		display: block !important;
		width: 100% !important;
	}
	.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(3) .fusion-imageframe img{
		width: 100% !important;
		height: auto !important;
		aspect-ratio: 3 / 2;
		object-fit: cover;
	}
}

/* Edge Banding banner: centred text */
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child{
	background-image:
		radial-gradient(ellipse at center, rgba(11,17,32,.55) 0%, rgba(11,17,32,.78) 100%),
		url(/wp-content/uploads/2024/05/Edging.jpg) !important;
	background-position: center !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child > .fusion-builder-row{
	justify-content: center !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child > .fusion-builder-row > .fusion-layout-column{
	width: 100% !important;
	max-width: 820px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	flex: 0 1 820px !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{
	align-items: center !important;
	text-align: center !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child :is(.fusion-title, .fusion-title-heading, .fusion-text, .fusion-text p){
	text-align: center !important;
	margin-left: auto !important;
	margin-right: auto !important;
	justify-content: center !important;
}
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child .fusion-button-wrapper,
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child .fusion-align-block{
	display: flex !important;
	justify-content: center !important;
	text-align: center !important;
	width: 100%;
}

/* new brand logo (2026-11-08): wider shape */
.sy-footer__logo img{ width: 110px !important; }
.sy-footer__logo img{ width: 150px !important; }

/* header: new logo — keep it inside the bar with breathing room */
.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}
.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{
	width: auto !important;
	max-height: 68px !important;
	max-width: 100% !important;
}
@media (max-width: 1024px){
	.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{ max-height: 60px !important; }
}

/* wordmark logo (2026-11-08, 2000x740) */
.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{ max-height: 54px !important; }
@media (max-width: 1024px){
	.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{ max-height: 44px !important; }
}
/* footer: blue wordmark needs a light badge on the dark background */
.sy-footer__logo img{
	width: 170px !important;
	box-sizing: content-box;
	background: #fff;
	padding: 10px 14px;
	border-radius: 12px;
}
.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{ max-height: 62px !important; }
@media (max-width: 1024px){ .fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{ max-height: 46px !important; } }

/* footer logo: transparent, no badge (client request) */
.sy-footer__logo img{ background: transparent !important; padding: 0 !important; border-radius: 0 !important; }

/* ------------------------------------------------------------------ *
 * 13. About page (page-id-17) — hero 60% height, facts, sections
 *     .post-content children: 1 hero (new) · 2 facts (new) · 3 old empty hero (hidden)
 *                             4 intro · 5 mission · 6 story cards · 7 certification
 * ------------------------------------------------------------------ */
.page-id-17 #main{ padding-top: 0 !important; background: #fff; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(3){ display: none !important; }

/* hero — 60% of the screen height */
.sy-about-hero{
	position: relative;
	min-height: 60vh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 90px 24px 130px;
	background-size: cover;
	background-position: center;
	isolation: isolate;
	text-align: center;
}
.sy-about-hero::before{
	content: "";
	position: absolute; inset: 0;
	background: radial-gradient(ellipse at center, rgba(11,17,32,.55) 0%, rgba(11,17,32,.82) 100%);
	z-index: -1;
}
.sy-about-hero__inner{ max-width: 860px; margin: 0 auto; }
.sy-about-hero__eyebrow{
	display: inline-block;
	font: 600 12px/1 var(--sy-font);
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #fff;
	background: rgba(255,255,255,.14);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	padding: 9px 16px;
	border-radius: 999px;
	margin-bottom: 20px;
}
.sy-about-hero h1.sy-about-hero__title{
	color: #fff !important;
	font-family: var(--sy-font) !important;
	font-size: clamp(34px, 4.6vw, 58px) !important;
	font-weight: 700 !important;
	line-height: 1.12 !important;
	letter-spacing: -.02em !important;
	margin: 0 0 18px !important;
}
.sy-about-hero p.sy-about-hero__lead{
	color: #dfe3ff !important;
	font-size: 17px !important;
	line-height: 1.7 !important;
	max-width: 680px;
	margin: 0 auto 30px !important;
}
.sy-about-hero__actions{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.sy-about-hero__btn{
	display: inline-flex; align-items: center;
	padding: 14px 26px;
	border-radius: 999px;
	font: 600 15px/1 var(--sy-font);
	color: #fff !important;
	background: var(--sy-blue);
	box-shadow: 0 12px 26px -12px rgba(0,0,255, 0.21);
	text-decoration: none !important;
	transition: transform .2s ease, background-color .2s ease;
}
.sy-about-hero__btn:hover{ transform: translateY(-2px); background: #2a2aff; }
.sy-about-hero__btn--ghost{ background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.45); box-shadow: none; }
.sy-about-hero__btn--ghost:hover{ background: rgba(255,255,255,.16); }

/* key facts card overlapping the hero */
.sy-about-facts{
	position: relative;
	z-index: 5;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	max-width: 900px;
	margin: -70px auto 30px;
	background: #fff;
	border: 1px solid #eceef3;
	border-radius: 20px;
	box-shadow: 0 30px 60px -30px rgba(11,17,32, 0.135);
}
.sy-about-facts__item{
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	padding: 28px 16px;
	text-align: center;
}
.sy-about-facts__item + .sy-about-facts__item{ border-left: 1px solid #eceef3; }
.sy-about-facts__num{ font: 700 44px/1.05 var(--sy-font); color: var(--sy-blue); letter-spacing: -.02em; }
.sy-about-facts__label{ margin-top: 8px; font: 500 13px/1.4 var(--sy-font); letter-spacing: .06em; text-transform: uppercase; color: var(--sy-muted); }

/* 4 · intro: label pill, strong statement, framed image */
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4){ padding-top: 70px !important; padding-bottom: 80px !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4) .fusion-title-1 .fusion-title-heading{
	display: inline-block;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: .16em !important;
	color: var(--sy-blue) !important;
	background: var(--sy-blue-soft);
	padding: 8px 14px !important;
	border-radius: 999px;
	line-height: 1 !important;
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4) .fusion-title-2 .fusion-title-heading,
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4) .fusion-title-2 .fusion-title-heading *{
	font-weight: 600 !important;
	color: var(--sy-ink) !important;
	font-size: clamp(28px, 3vw, 40px) !important;
	line-height: 1.22 !important;
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4) .fusion-title-2 .fusion-title-heading span[style*="color"]{ color: var(--sy-blue) !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4) .fusion-text p{ color: #4b5563; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4) .fusion-image-element{ position: relative; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4) .fusion-image-element::before{
	content: "";
	position: absolute;
	right: -18px; bottom: -18px;
	width: 62%; height: 62%;
	border-radius: 22px;
	background: var(--sy-blue);
	opacity: .12;
	z-index: 0;
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4) .fusion-imageframe{ position: relative; z-index: 1; border-radius: 22px; overflow: hidden; }

/* 5 · mission: photo collage + text card */
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(5){ background: #f6f7fb !important; padding-top: 80px !important; padding-bottom: 80px !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(5) .fusion-imageframe{ border-radius: 18px; overflow: hidden; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(5) .fusion-imageframe img{ box-shadow: none !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(5) > .fusion-builder-row > .fusion-layout-column:last-child > .fusion-column-wrapper{
	background: #fff;
	border: 1px solid #eceef3;
	border-left: 4px solid var(--sy-blue);
	border-radius: 20px;
	padding: 40px 38px !important;
	box-shadow: 0 24px 48px -32px rgba(11,17,32, 0.105);
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(5) .fusion-separator{ display: none !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(5) .fusion-title{ margin-bottom: 18px !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(5) .fusion-title-heading{ color: var(--sy-ink) !important; font-weight: 600 !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(5) .fusion-text p{ font-size: 17px !important; line-height: 1.9 !important; color: #374151; }

/* 6 · story: deep-blue band with numbered white cards */
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6){
	--awb-background-color: transparent !important;
	background-color: #0b1120 !important;
	background-image: linear-gradient(135deg, rgba(0,0,255,.88) 0%, rgba(11,17,32,.94) 70%), url(/wp-content/uploads/2024/04/interior-home-design-living-room-with-open-kitchen-loft-house-scaled.jpg) !important;
	background-blend-mode: normal !important;
	background-size: cover !important;
	padding-top: 90px !important;
	padding-bottom: 90px !important;
	counter-reset: syStory;
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row{ row-gap: 24px; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column{ margin-bottom: 24px !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{
	counter-increment: syStory;
	position: relative;
	height: 100%;
	justify-content: flex-start !important;
	background: #fff !important;
	border-radius: 20px;
	padding: 72px 30px 30px !important;
	box-shadow: 0 30px 50px -30px rgba(0,0,0, 0.165);
	transition: transform .25s ease, box-shadow .25s ease;
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper:hover{
	transform: translateY(-6px);
	box-shadow: 0 40px 60px -30px rgba(0,0,0, 0.18);
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper::before{
	content: counter(syStory, decimal-leading-zero);
	position: absolute;
	top: 26px; left: 30px;
	font: 700 14px/1 var(--sy-font);
	letter-spacing: .06em;
	color: var(--sy-blue);
	background: var(--sy-blue-soft);
	padding: 8px 11px;
	border-radius: 10px;
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) .fusion-title{ margin-bottom: 12px !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) .fusion-title-heading{
	color: var(--sy-ink) !important;
	font-size: 21px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) .fusion-text p{ font-size: 15px !important; color: #4b5563; line-height: 1.75 !important; }

/* 7 · certification: framed documents */
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(7){ background: #fff !important; padding-top: 80px !important; padding-bottom: 40px !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(7) .fusion-title{ margin-bottom: 24px !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(7) .fusion-title-heading{ color: var(--sy-ink) !important; font-weight: 600 !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(7) .fusion-carousel-item-wrapper{
	background: #fff;
	border: 1px solid #eceef3 !important;
	border-radius: 14px;
	padding: 12px;
	box-shadow: 0 18px 36px -24px rgba(11,17,32, 0.12);
	transition: transform .25s ease, box-shadow .25s ease;
}
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(7) .fusion-carousel-item-wrapper:hover{ transform: translateY(-4px); box-shadow: 0 26px 44px -24px rgba(11,17,32, 0.135); }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(7) .fusion-carousel-item-wrapper img{ border-radius: 8px; }

@media (max-width: 800px){
	.sy-about-hero{ padding: 64px 20px 110px; min-height: 60vh; }
	.sy-about-hero p.sy-about-hero__lead{ font-size: 15.5px !important; }
	.sy-about-facts{ max-width: calc(100% - 32px); margin-top: -60px; }
	.sy-about-facts__item{ padding: 20px 6px; }
	.sy-about-facts__num{ font-size: 28px; }
	.sy-about-facts__label{ font-size: 10.5px; letter-spacing: .04em; }
	.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(n+4){ padding-left: 20px !important; padding-right: 20px !important; padding-top: 48px !important; padding-bottom: 48px !important; }
	.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(5) > .fusion-builder-row > .fusion-layout-column:last-child > .fusion-column-wrapper{ padding: 28px 22px !important; }
	.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(4) .fusion-image-element::before{ right: -8px; bottom: -8px; }
}
/* About hero: full-bleed + clear the overlapping header (Avada pulls content up 100px here) */
.sy-about-hero{
	width: calc(100vw - var(--sy-sbw, 0px));
	margin-left: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2);
	margin-right: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2);
	padding-top: 180px;
}
@media (max-width: 1024px){ .sy-about-hero{ padding-top: 70px; } }
/* About · certification: no big gap above the title */
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(7) .fusion-title{ margin: 0 0 36px !important; padding: 0 !important; min-height: 0 !important; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(7) > .fusion-builder-row > .fusion-layout-column:first-child > .fusion-column-wrapper{ padding-top: 0 !important; padding-bottom: 0 !important; min-height: 0 !important; }

/* About · story cards: a soft tint per card (with matching number badge) */
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column:nth-child(6n+1) > .fusion-column-wrapper{ background: linear-gradient(160deg, #eef0ff 0%, #ffffff 70%) !important; --sy-badge: #0000ff; --sy-badge-bg: #dfe3ff; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column:nth-child(6n+2) > .fusion-column-wrapper{ background: linear-gradient(160deg, #fff6d6 0%, #ffffff 70%) !important; --sy-badge: #a16207; --sy-badge-bg: #ffeaa3; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column:nth-child(6n+3) > .fusion-column-wrapper{ background: linear-gradient(160deg, #e3f8ef 0%, #ffffff 70%) !important; --sy-badge: #047857; --sy-badge-bg: #c6f0de; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column:nth-child(6n+4) > .fusion-column-wrapper{ background: linear-gradient(160deg, #f1eaff 0%, #ffffff 70%) !important; --sy-badge: #6d28d9; --sy-badge-bg: #e2d5ff; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column:nth-child(6n+5) > .fusion-column-wrapper{ background: linear-gradient(160deg, #ffece3 0%, #ffffff 70%) !important; --sy-badge: #c2410c; --sy-badge-bg: #ffd9c7; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column:nth-child(6n+6) > .fusion-column-wrapper{ background: linear-gradient(160deg, #e2f3ff 0%, #ffffff 70%) !important; --sy-badge: #0369a1; --sy-badge-bg: #cbe8fb; }
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper::before{
	color: var(--sy-badge, var(--sy-blue)) !important;
	background: var(--sy-badge-bg, var(--sy-blue-soft)) !important;
}

/* ------------------------------------------------------------------ *
 * 14. Services page (page-id-62) — rebuilt layout (inc/sunyu-services.php)
 * ------------------------------------------------------------------ */
.page-id-62 #main{ padding-top: 0 !important; padding-bottom: 0 !important; background: #fff; }
.page-id-62 #main .post-content > .fusion-fullwidth{ display: none !important; } /* safety: any builder leftovers */
.sy-svc-hero{ min-height: 60vh; }

.sy-svc, .sy-work{ max-width: 1200px; margin: 0 auto; padding: 90px 24px; }
.sy-svc__head{ text-align: center; max-width: 720px; margin: 0 auto 44px; }
.sy-svc__eyebrow{
	display: inline-block;
	font: 600 12px/1 var(--sy-font);
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--sy-blue);
	background: var(--sy-blue-soft);
	padding: 8px 14px;
	border-radius: 999px;
	margin-bottom: 14px;
}
.sy-svc__head h2.sy-svc__title{
	font-family: var(--sy-font) !important;
	font-size: clamp(28px, 3vw, 40px) !important;
	font-weight: 600 !important;
	color: var(--sy-ink) !important;
	line-height: 1.2 !important;
	letter-spacing: -.01em !important;
	margin: 0 0 12px !important;
}
.sy-svc__lead{ margin: 0 !important; color: var(--sy-muted); font-size: 16px; line-height: 1.7; }

/* service cards */
.sy-svc__grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; }
.sy-svc-card{
	display: grid;
	grid-template-columns: 44% 1fr;
	border-radius: 22px;
	overflow: hidden;
	background: #fff;
	border: 1px solid #eceef3;
	box-shadow: 0 24px 48px -34px rgba(11,17,32, 0.135);
	text-decoration: none !important;
	transition: transform .25s ease, box-shadow .25s ease;
	--sy-tint: #eef0ff; --sy-tint-ink: #0000ff;
}
.sy-svc-card:nth-child(4n+2){ --sy-tint: #fff6d6; --sy-tint-ink: #a16207; }
.sy-svc-card:nth-child(4n+3){ --sy-tint: #e3f8ef; --sy-tint-ink: #047857; }
.sy-svc-card:nth-child(4n+4){ --sy-tint: #ffece3; --sy-tint-ink: #c2410c; }
.sy-svc-card:hover{ transform: translateY(-6px); box-shadow: 0 34px 56px -32px rgba(11,17,32, 0.15); }
.sy-svc-card__media{ position: relative; overflow: hidden; min-height: 260px; background: #f3f4f8; }
.sy-svc-card__media img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.sy-svc-card:hover .sy-svc-card__media img{ transform: scale(1.06); }
.sy-svc-card__body{
	display: flex; flex-direction: column; gap: 10px;
	padding: 28px 28px 26px;
	background: linear-gradient(160deg, var(--sy-tint) 0%, #ffffff 75%);
}
.sy-svc-card__num{
	align-self: flex-start;
	font: 700 13px/1 var(--sy-font);
	color: var(--sy-tint-ink);
	background: #fff;
	border: 1px solid rgba(17,24,39,.06);
	padding: 7px 10px;
	border-radius: 9px;
}
.sy-svc-card__title{ font: 600 22px/1.25 var(--sy-font); color: var(--sy-ink); }
.sy-svc-card__desc{ font: 400 14.5px/1.7 var(--sy-font); color: #4b5563; }
.sy-svc-card__more{ margin-top: auto; padding-top: 6px; font: 600 14px/1 var(--sy-font); color: var(--sy-blue); }
.sy-svc-card__more span{ display: inline-block; transition: transform .2s ease; }
.sy-svc-card:hover .sy-svc-card__more span{ transform: translateX(5px); }

/* why sunyu */
.sy-why{ background: linear-gradient(135deg, #0000ff 0%, #1b1bd8 45%, #0b1120 100%); }
.sy-why__inner{ max-width: 1200px; margin: 0 auto; padding: 90px 24px; }
.sy-svc__head--light .sy-svc__eyebrow{ color: #fff; background: rgba(255,255,255,.14); }
.sy-svc__head--light h2.sy-svc__title{ color: #fff !important; }
.sy-why__grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.sy-why__item{
	display: flex; flex-direction: column; gap: 10px;
	padding: 28px 24px;
	border-radius: 20px;
	background: rgba(255,255,255,.07);
	border: 1px solid rgba(255,255,255,.14);
	transition: background-color .2s ease, transform .2s ease;
}
.sy-why__item:hover{ background: rgba(255,255,255,.12); transform: translateY(-4px); }
.sy-why__icon{
	width: 50px; height: 50px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 14px;
	background: #ffde59;
	color: #0b1120;
	margin-bottom: 6px;
}
.sy-why__icon svg{ width: 24px; height: 24px; }
.sy-why__title{ font: 600 18px/1.3 var(--sy-font); color: #fff; }
.sy-why__text{ font: 400 14.5px/1.65 var(--sy-font); color: #c7ceff; }

/* finished work gallery */
.sy-work__grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.sy-work__item{ position: relative; margin: 0; border-radius: 18px; overflow: hidden; aspect-ratio: 3 / 4; background: #f3f4f8; }
.sy-work__item img{ width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; display: block; }
.sy-work__item:hover img{ transform: scale(1.06); }
.sy-work__item figcaption{
	position: absolute; left: 14px; bottom: 14px;
	font: 600 13px/1 var(--sy-font);
	color: var(--sy-ink);
	background: rgba(255,255,255,.92);
	padding: 9px 14px;
	border-radius: 999px;
}

@media (max-width: 1024px){
	.sy-svc__grid{ grid-template-columns: 1fr; }
	.sy-why__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sy-work__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px){
	.sy-svc, .sy-work, .sy-why__inner{ padding: 56px 18px; }
	.sy-svc-card{ grid-template-columns: 1fr; }
	.sy-svc-card__media{ min-height: 200px; }
	.sy-why__grid{ grid-template-columns: 1fr; }
}

/* Services: full-bleed "why" band */
.sy-why{ width: calc(100vw - var(--sy-sbw, 0px)); margin-left: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2); margin-right: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2); }

/* ------------------------------------------------------------------ *
 * 15. About · Certification (sunyu_about_certs) — replaces the old carousel
 * ------------------------------------------------------------------ */
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(7){ display: none !important; }
.sy-certs{ max-width: 1200px; margin: 0 auto; padding: 90px 24px 70px; }
.sy-certs__grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.sy-cert{
	display: flex; flex-direction: column;
	border-radius: 20px;
	overflow: hidden;
	background: #fff;
	border: 1px solid #eceef3;
	box-shadow: 0 22px 44px -32px rgba(11,17,32, 0.135);
	text-decoration: none !important;
	transition: transform .25s ease, box-shadow .25s ease;
	--sy-tag: #0000ff; --sy-tag-bg: #eef0ff; --sy-paper: #eef0ff;
}
.sy-cert:nth-child(n+3){ --sy-tag: #047857; --sy-tag-bg: #dff5ea; --sy-paper: #e3f8ef; }
.sy-cert:hover{ transform: translateY(-6px); box-shadow: 0 32px 54px -30px rgba(11,17,32, 0.15); }
.sy-cert__doc{
	position: relative;
	display: block;
	height: 230px;
	padding: 22px 26px 0;
	background: linear-gradient(160deg, var(--sy-paper) 0%, #f7f8fb 100%);
	overflow: hidden;
}
.sy-cert__doc img{
	display: block;
	width: 100%;
	height: auto;
	border-radius: 6px 6px 0 0;
	box-shadow: 0 10px 26px -10px rgba(11,17,32, 0.105);
	transform-origin: top center;
	transition: transform .4s ease;
}
.sy-cert:hover .sy-cert__doc img{ transform: translateY(-6px) scale(1.02); }
.sy-cert__doc::after{
	content: "";
	position: absolute; left: 0; right: 0; bottom: 0;
	height: 60px;
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, #fff 100%);
}
.sy-cert__body{ display: flex; flex-direction: column; gap: 6px; padding: 18px 22px 22px; flex: 1; }
.sy-cert__tag{
	align-self: flex-start;
	font: 600 11px/1 var(--sy-font);
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--sy-tag);
	background: var(--sy-tag-bg);
	padding: 6px 10px;
	border-radius: 999px;
	margin-bottom: 4px;
}
.sy-cert__title{ font: 600 17px/1.3 var(--sy-font); color: var(--sy-ink); }
.sy-cert__product{ font: 400 14px/1.5 var(--sy-font); color: #4b5563; }
.sy-cert__meta{ font: 400 12.5px/1.5 var(--sy-font); color: var(--sy-muted); }
.sy-cert__link{ margin-top: auto; padding-top: 10px; font: 600 14px/1 var(--sy-font); color: var(--sy-blue); }
.sy-cert__link span{ display: inline-block; transition: transform .2s ease; }
.sy-cert:hover .sy-cert__link span{ transform: translate(3px, -3px); }
@media (max-width: 1024px){ .sy-certs__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px){ .sy-certs{ padding: 56px 18px 40px; } .sy-certs__grid{ grid-template-columns: 1fr; } }

/* ------------------------------------------------------------------ *
 * 16. Furniture page (page-id-15)
 * ------------------------------------------------------------------ */
.page-id-15 #main{ padding-top: 0 !important; padding-bottom: 0 !important; background: #fff; }
/* old image banner (replaced by .sy-furn-hero) */
.page-id-15 #main .post-content > :is(.fusion-container-anchor, .fusion-fullwidth):has(h1){ display: none !important; }

/* category tiles */
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element){
	max-width: 1200px;
	margin: 0 auto !important;
	padding: 70px 24px 30px !important;
}
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{
	background: #fff !important;
	border: 1px solid #eceef3 !important;
	border-radius: 18px !important;
	padding: 26px 18px !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center;
	box-shadow: 0 18px 36px -28px rgba(11,17,32, 0.12);
	overflow: hidden;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) > .fusion-builder-row > .fusion-layout-column:has(a) > .fusion-column-wrapper:hover{
	transform: translateY(-5px);
	border-color: #c7ceff !important;
	box-shadow: 0 26px 44px -26px rgba(0,0,255, 0.105);
}
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) .fb-icon-element{
	--awb-iconcolor: var(--sy-blue) !important;
	--awb-iconcolor-hover: var(--sy-blue) !important;
	--awb-font-size: 24px !important;
	width: 58px !important; height: 58px !important;
	display: inline-flex !important; align-items: center; justify-content: center;
	border-radius: 16px !important;
	background: var(--sy-blue-soft) !important;
	margin: 0 auto 12px !important;
	line-height: 58px !important;
}
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) .fusion-title-heading,
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) .fusion-title-heading a{
	font-size: 16px !important;
	font-weight: 600 !important;
	color: var(--sy-ink) !important;
	letter-spacing: 0 !important;
	text-align: center !important;
}
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) .fusion-separator{ display: none !important; }

/* catalogues + finished projects */
.page-id-15 #main .post-content > .fusion-fullwidth:has(._3d-flip-book){
	width: calc(100vw - var(--sy-sbw, 0px)) !important;
	max-width: none !important;
	margin-left: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2) !important;
	margin-right: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2) !important;
	padding: 70px max(24px, calc((100vw - 1200px) / 2)) 80px !important;
	background: #f6f7fb !important;
	margin-top: 40px !important;
}
.page-id-15 #main .post-content > .fusion-fullwidth:has(._3d-flip-book) .fusion-text :is(h1, h2, h3, h4, p){
	text-align: center !important;
	font-family: var(--sy-font) !important;
	font-size: clamp(28px, 3vw, 40px) !important;
	font-weight: 600 !important;
	color: var(--sy-ink) !important;
	line-height: 1.2 !important;
	letter-spacing: -.01em !important;
	margin: 10px 0 30px !important;
}
.page-id-15 #main .post-content > .fusion-fullwidth:has(._3d-flip-book) ._3d-flip-book{
	max-width: 1100px;
	margin: 0 auto 50px !important;
	border-radius: 22px;
	overflow: hidden;
	background: #fff;
	border: 1px solid #eceef3;
	box-shadow: 0 30px 60px -36px rgba(11,17,32, 0.135);
}
.page-id-15 #main .post-content > .fusion-fullwidth:has(._3d-flip-book) .fusion-separator{ display: none !important; }
.page-id-15 #main .post-content > .fusion-fullwidth:has(._3d-flip-book) .fusion-image-carousel img{ border-radius: 16px; }
.page-id-15 #main .post-content > .fusion-fullwidth:has(._3d-flip-book) .fusion-carousel-item-wrapper{ border: 0 !important; }
@media (max-width: 800px){
	.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) > .fusion-builder-row > .fusion-layout-column{ width: 50% !important; }
	.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element){ padding: 40px 14px 10px !important; }
}
/* Furniture tiles: one consistent look (no inner grey boxes, no Lock background photo) */
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) .awb-column__background-slider,
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) .awb-background-slider{ display: none !important; }
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) > .fusion-builder-row > .fusion-layout-column{
	--awb-bg-color: transparent !important;
	--awb-bg-color-hover: transparent !important;
	background: transparent !important;
}
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper :is(div, span):not(.fb-icon-element){
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
}

/* ------------------------------------------------------------------ *
 * 17. Furniture: catalogue covers over the 3D flip-books
 * ------------------------------------------------------------------ */
.sy-cat{ position: relative; max-width: 1100px; margin: 0 auto 50px; }
.page-id-15 #main .sy-cat ._3d-flip-book{ margin: 0 !important; }
.sy-cat__poster{
	position: absolute; inset: 0; z-index: 5;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: 48px;
	padding: 40px 60px;
	border-radius: 22px;
	background: radial-gradient(700px 400px at 20% 40%, #eef0ff 0%, #ffffff 70%);
	border: 1px solid #eceef3;
}
.sy-cat.is-open .sy-cat__poster{ display: none; }
.sy-cat__cover{ display: flex; justify-content: center; align-items: center; height: 100%; min-height: 0; }
.sy-cat__cover img{
	max-height: 100%;
	max-width: 100%;
	width: auto;
	height: auto;
	border-radius: 6px;
	box-shadow: 0 30px 60px -24px rgba(11,17,32, 0.135), 0 2px 6px rgba(11,17,32, 0.024);
	transform: rotate(-2deg);
}
.sy-cat__panel{ display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
.sy-cat__eyebrow{
	font: 600 12px/1 var(--sy-font); letter-spacing: .16em; text-transform: uppercase;
	color: var(--sy-blue); background: var(--sy-blue-soft); padding: 8px 14px; border-radius: 999px;
}
.sy-cat__title{ font: 600 clamp(24px, 2.4vw, 32px)/1.2 var(--sy-font); color: var(--sy-ink); letter-spacing: -.01em; }
.sy-cat__desc{ font: 400 16px/1.7 var(--sy-font); color: #4b5563; }
.sy-cat__pages{ font: 500 13px/1 var(--sy-font); color: var(--sy-muted); letter-spacing: .06em; text-transform: uppercase; }
.sy-cat__actions{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 12px; }
.sy-cat__read, .sy-cat__pdf{
	display: inline-flex; align-items: center; gap: 6px;
	padding: 13px 22px; border-radius: 999px;
	font: 600 14.5px/1 var(--sy-font);
	cursor: pointer; text-decoration: none !important;
	transition: transform .2s ease, background-color .2s ease;
}
.sy-cat__read{ background: var(--sy-blue); color: #fff; border: 0; box-shadow: 0 12px 24px -12px rgba(0,0,255, 0.18); }
.sy-cat__read:hover{ background: #2a2aff; transform: translateY(-2px); }
.sy-cat__pdf{ background: #fff; color: var(--sy-ink) !important; border: 1px solid #dfe3ec; }
.sy-cat__pdf:hover{ border-color: var(--sy-blue); color: var(--sy-blue) !important; }

/* ------------------------------------------------------------------ *
 * 18. Furniture: finished projects — looping strip + lightbox
 * ------------------------------------------------------------------ */
.page-id-15 #main .fusion-image-carousel,
.page-id-15 #main .fusion-text:has(~ .fusion-image-carousel){ display: none !important; }
.sy-proj{
	width: calc(100vw - var(--sy-sbw, 0px));
	margin-left: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2);
	margin-right: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2);
	padding: 80px 0 70px;
	background: #fff;
}
.sy-proj__viewport{
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 5%, #000 95%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, #000 5%, #000 95%, transparent 100%);
}
.sy-proj__track{
	display: flex;
	gap: 22px;
	padding: 10px 22px 30px 0; /* right padding = gap, so -50% is an exact seamless loop */
	width: max-content;
	animation: syMarquee calc(var(--sy-count, 10) * 4.5s) linear infinite;
}
.sy-proj__viewport:hover .sy-proj__track,
.sy-proj__viewport:focus-within .sy-proj__track{ animation-play-state: paused; }
@keyframes syMarquee{ from{ transform: translateX(0); } to{ transform: translateX(-50%); } }
.sy-proj__item{
	flex: none;
	width: 300px;
	aspect-ratio: 4 / 5;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 28px !important;
	overflow: hidden;
	background: #eef0f4 !important;
	cursor: zoom-in;
	box-shadow: 0 22px 40px -26px rgba(11,17,32, 0.15);
	transition: transform .3s ease, box-shadow .3s ease;
}
.sy-proj__item img{ width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease; }
.sy-proj__item:hover{ transform: translateY(-6px); box-shadow: 0 30px 50px -26px rgba(11,17,32, 0.165); }
.sy-proj__item:hover img{ transform: scale(1.06); }
.sy-proj__item:focus-visible{ outline: 3px solid var(--sy-blue); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce){
	.sy-proj__track{ animation: none; }
	.sy-proj__viewport{ overflow-x: auto; }
}
@media (max-width: 600px){ .sy-proj__item{ width: 220px; border-radius: 22px !important; } .sy-proj{ padding: 56px 0 50px; } }

/* lightbox */
html.sy-lb-open{ overflow: hidden; }
.sy-lb{
	position: fixed; inset: 0; z-index: 100000;
	display: flex; align-items: center; justify-content: center; gap: 18px;
	padding: 30px;
	background: rgba(11,17,32,.92);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}
.sy-lb[hidden]{ display: none; }
.sy-lb__figure{ margin: 0; display: flex; flex-direction: column; align-items: center; gap: 14px; }
.sy-lb__img{ max-width: min(1100px, 82vw); max-height: 80vh; border-radius: 18px; box-shadow: 0 40px 80px -30px rgba(0,0,0, 0.21); background: #1b2540; }
.sy-lb__count{ font: 500 14px/1 var(--sy-font); color: #c7ceff; letter-spacing: .08em; }
.sy-lb__nav, .sy-lb__close{
	display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid rgba(255,255,255,.2) !important;
	background: rgba(255,255,255,.08) !important;
	color: #fff !important;
	cursor: pointer;
	transition: background-color .2s ease, transform .2s ease;
	padding: 0 !important;
}
.sy-lb__nav{ flex: none; width: 54px; height: 54px; border-radius: 50%; font: 400 34px/1 var(--sy-font); }
.sy-lb__nav:hover{ background: var(--sy-blue) !important; transform: scale(1.06); }
.sy-lb__close{ position: absolute; top: 20px; right: 24px; width: 46px; height: 46px; border-radius: 50%; font: 300 30px/1 var(--sy-font); }
.sy-lb__close:hover{ background: rgba(255,255,255,.18) !important; }
@media (max-width: 800px){
	.sy-lb{ padding: 70px 10px 30px; gap: 6px; }
	.sy-lb__img{ max-width: 76vw; }
	.sy-lb__nav{ width: 42px; height: 42px; font-size: 26px; }
}
@media (max-width: 800px){
	.sy-cat__poster{ grid-template-columns: 1fr; gap: 14px; padding: 22px; align-content: center; }
	.sy-cat__cover{ height: auto; }
	.sy-cat__cover img{ max-height: 190px; }
	.sy-cat__panel{ align-items: center; text-align: center; gap: 6px; }
	.sy-cat__desc{ display: none; }
	.sy-cat__actions{ justify-content: center; margin-top: 4px; }
}
.sy-cat{ width: 100%; align-self: stretch; }
.page-id-15 #main .sy-cat ._3d-flip-book{ width: 100% !important; max-width: none !important; }
.sy-cat__cover img{ max-height: 580px; }

/* Fixed header always on top of page content while scrolling (client request) */
.fusion-tb-header{ z-index: 99990 !important; }
.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]),
.fusion-tb-header .fusion-fullwidth.fusion-container-stuck:has(nav[aria-label="sunyu menu"]){
	z-index: 99990 !important;
}
.fusion-tb-header .fusion-fullwidth.fusion-container-stuck:has(nav[aria-label="sunyu menu"]){
	background-color: #ffffff !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}
/* gallery popup sits above everything, including the header and chat bubble */
.sy-lb{ z-index: 2147483000 !important; }
/* Avada leaves the stuck header with pointer-events:none — clicks fell through to the page underneath */
.fusion-tb-header .fusion-fullwidth.fusion-container-stuck,
.fusion-tb-header .fusion-fullwidth.fusion-container-stuck *{ pointer-events: auto !important; }

/* ------------------------------------------------------------------ *
 * 19. Service detail pages — Tact / Pureco / Handle (inc/sunyu-service-pages.php)
 * ------------------------------------------------------------------ */
.sy-sp #main{ padding-top: 0 !important; padding-bottom: 0 !important; background: #fff; }
.sy-sp #main .post-content .sy-orig-first,
.sy-sp #main .post-content .fusion-container-anchor:has(> .sy-orig-first){ display: none !important; }
.sy-sp-facts{ grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: 1100px; }
.sy-sp-facts .sy-about-facts__num{ font-size: clamp(22px, 2.3vw, 32px); white-space: nowrap; }
@media (max-width: 800px){
	.sy-sp-facts{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sy-sp-facts .sy-about-facts__item:nth-child(3){ border-left: 0; }
	.sy-sp-facts .sy-about-facts__item:nth-child(n+3){ border-top: 1px solid #eceef3; }
	.sy-sp-facts .sy-about-facts__num{ font-size: 20px; white-space: normal; }
}

/* shared: comfortable section rhythm, bands, framed media */
.sy-sp #main .post-content > .fusion-fullwidth:not(.sy-orig-first){
	padding-top: 72px !important;
	padding-bottom: 72px !important;
}
.sy-sp #main .post-content .fusion-imageframe:not(.has-aspect-ratio) img{ border-radius: 18px; }

/* Pureco (10049): intro + product cards on alternating bands */
.page-id-10049 #main .post-content > .fusion-fullwidth:not(.sy-orig-first):nth-of-type(even){ background: #f6f7fb !important; }
.page-id-10049 #main .post-content > .fusion-fullwidth:not(.sy-orig-first) .fusion-imageframe img{
	max-height: 560px;
	width: 100%;
	object-fit: cover;
	box-shadow: 0 24px 48px -28px rgba(11,17,32, 0.135);
}
.page-id-10049 #main .post-content > .fusion-fullwidth:has(h2, h3, h4):not(.sy-orig-first) > .fusion-builder-row > .fusion-layout-column:not(:has(.fusion-imageframe)) > .fusion-column-wrapper{
	background: #fff;
	border: 1px solid #eceef3;
	border-radius: 20px;
	padding: 32px 34px !important;
	box-shadow: 0 24px 48px -34px rgba(11,17,32, 0.12);
}

/* Handle (10772): alternating bands */
.page-id-10772 #main .post-content > .fusion-fullwidth:not(.sy-orig-first):nth-of-type(odd){ background: #f6f7fb !important; }

/* Tact (10894): spec tables + diagrams as cards */
.page-id-10894 #main .post-content > .fusion-fullwidth:has(table) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{
	background: #fff;
	border: 1px solid #eceef3;
	border-radius: 20px;
	padding: 26px !important;
	box-shadow: 0 24px 48px -34px rgba(11,17,32, 0.12);
}
.page-id-10894 #main .post-content > .fusion-fullwidth:has(table){ background: #fff !important; }
@media (max-width: 800px){
	.sy-sp #main .post-content > .fusion-fullwidth:not(.sy-orig-first){ padding: 44px 18px !important; }
	.page-id-10049 #main .post-content > .fusion-fullwidth:has(h2, h3, h4):not(.sy-orig-first) > .fusion-builder-row > .fusion-layout-column:not(:has(.fusion-imageframe)) > .fusion-column-wrapper{ padding: 22px 20px !important; }
}
/* service pages: spec values may wrap (e.g. "Brass & aluminium") */
.sy-sp-facts .sy-about-facts__num{ white-space: normal; font-size: clamp(20px, 2vw, 28px); line-height: 1.15; text-align: center; }
/* full-bleed band colour for boxed sections (Handle) */
.page-id-10772 #main .post-content > .fusion-fullwidth:not(.sy-orig-first):nth-of-type(odd){
	box-shadow: 0 0 0 100vmax #f6f7fb;
	clip-path: inset(0 -100vmax);
}
/* Pureco intro: clean title, readable lead paragraph */
.page-id-10049 #main .post-content .fusion-title-heading :is(em, u, strong){ font-style: normal !important; text-decoration: none !important; }
.page-id-10049 #main .post-content .fusion-title-1 .fusion-title-heading{ color: var(--sy-ink) !important; }
.page-id-10049 #main .post-content .fusion-title-2 .fusion-title-heading,
.page-id-10049 #main .post-content .fusion-title-2 .fusion-title-heading *{
	font-size: 17px !important;
	font-weight: 400 !important;
	line-height: 1.75 !important;
	letter-spacing: 0 !important;
	color: #4b5563 !important;
}
.page-id-10049 #main .post-content .fusion-title + .fusion-title .fusion-title-heading,
.page-id-10049 #main .post-content .fusion-title + .fusion-title .fusion-title-heading *{ font-size: 17px !important; font-weight: 400 !important; line-height: 1.75 !important; letter-spacing: 0 !important; color: #4b5563 !important; }

/* ------------------------------------------------------------------ *
 * 20. Home page (inc/sunyu-home.php)
 * ------------------------------------------------------------------ */
.sy-home #main{ padding-top: 0 !important; padding-bottom: 0 !important; background: #fff; }
.sy-home #main .post-content .sy-orig-first{ display: none !important; }
.sy-home-hero{ min-height: 85vh; }
.sy-home-head{ max-width: 1200px; margin: 0 auto; padding: 90px 24px 0; }
.sy-home-head .sy-svc__head{ margin-bottom: 40px; }

/* 1 · intro */
.sy-home #main .post-content > .sy-home-s1{ max-width: 1320px; margin: 0 auto; padding: 52px 28px 70px !important; }
.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row{
	--sy-home-intro-inset: clamp(16px, 2.4vw, 30px);
	position: relative;
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 0;
	max-width: 1200px;
	margin: 0 auto !important;
	padding: var(--sy-home-intro-inset) !important;
	background: linear-gradient(135deg, #f8f6f1 0%, #f2f4f2 100%);
	border: 1px solid #eeece6;
	border-radius: 28px;
	overflow: hidden;
	box-shadow: 0 24px 60px -42px rgba(35, 40, 43, 0.096);
}
.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row > .fusion-layout-column{
	display: flex;
	align-items: center;
	width: 50% !important;
	flex: 0 0 50% !important;
	margin: 0 !important;
}
.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row > .fusion-layout-column:has(.fusion-title){ order: 1; }
.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row > .fusion-layout-column:has(.fusion-imageframe){ order: 2; }
.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row > .fusion-layout-column:has(.fusion-imageframe){
	position: absolute !important;
	top: calc(var(--sy-home-intro-inset) * -1);
	right: calc(var(--sy-home-intro-inset) * -1);
	bottom: calc(var(--sy-home-intro-inset) * -1);
	width: calc(50% + var(--sy-home-intro-inset)) !important;
	flex: none !important;
	margin: 0 !important;
}
.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row > .fusion-layout-column:has(.fusion-imageframe) > .fusion-column-wrapper{ width: 100%; height: 100%; min-height: 100%; }
.sy-home #main .post-content > .sy-home-s1 .fusion-column-wrapper:has(.fusion-title){
	width: 100%;
	padding: clamp(22px, 4vw, 58px) !important;
	text-align: left !important;
}
.sy-home #main .post-content > .sy-home-s1 .fusion-title{
	position: relative;
	margin: 0 !important;
	padding-top: 34px !important;
	text-align: left !important;
}
.sy-home #main .post-content > .sy-home-s1 .fusion-title::before{
	content: "“";
	position: absolute;
	top: -8px;
	left: 0;
	color: var(--sy-blue);
	font: 400 64px/.9 Georgia, "Times New Roman", serif;
}
.sy-home #main .post-content > .sy-home-s1 .fusion-title-heading{
	color: var(--sy-ink) !important;
	font-family: Georgia, "Times New Roman", serif !important;
	font-size: clamp(22px, 2.25vw, 32px) !important;
	font-style: italic !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	letter-spacing: 0 !important;
	text-align: left !important;
}
.sy-home #main .post-content > .sy-home-s1 .fusion-title *{ text-align: left !important; }
.sy-home-intro-actions{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 12px;
	margin-top: 28px;
}
.sy-home-intro-btn{
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 0 25px;
	border: 1px solid var(--sy-blue);
	border-radius: 999px;
	background: var(--sy-blue);
	box-shadow: 0 12px 24px -14px rgba(0, 0, 255, 0.21);
	color: #fff !important;
	font: 600 15px/1.2 var(--sy-font);
	text-decoration: none !important;
	transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.sy-home-intro-btn:hover{ transform: translateY(-2px); background: #2929ed; box-shadow: 0 16px 28px -14px rgba(0, 0, 255, 0.195); }
.sy-home-intro-btn--outline{ background: transparent; color: var(--sy-blue) !important; box-shadow: none; }
.sy-home-intro-btn--outline:hover{ background: rgba(0, 0, 255, .06); box-shadow: none; }
.sy-home #main .post-content > .sy-home-s1 .fusion-imageframe{
	display: block;
	width: 100%;
	height: 100%;
	min-height: 340px;
	border-radius: 0;
	overflow: hidden;
}
.sy-home #main .post-content > .sy-home-s1 .fusion-imageframe img{
	width: 100%;
	height: 100%;
	min-height: 340px;
	object-fit: cover;
}

/* 2 · four photo tiles: rounded cards with gaps + hover zoom */
.sy-home #main .post-content > .sy-home-s2{
	padding: 0 max(24px, calc((100% - 1200px) / 2)) 10px !important;
}
.sy-home #main .post-content > .sy-home-s2 > .fusion-builder-row{
	flex-wrap: nowrap !important;
	gap: 20px;
}
.sy-home #main .post-content > .sy-home-s2 > .fusion-builder-row > .fusion-layout-column{
	flex: 1 1 0 !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	border-radius: 24px !important;
	overflow: hidden !important;
	box-shadow: 0 30px 50px -32px rgba(11,17,32, 0.165);
	transition: transform .3s ease, box-shadow .3s ease;
}
.sy-home #main .post-content > .sy-home-s2 > .fusion-builder-row > .fusion-layout-column:hover{
	transform: translateY(-6px);
	box-shadow: 0 40px 60px -32px rgba(11,17,32, 0.18);
}
.sy-home #main .post-content > .sy-home-s2 .fusion-column-inner-bg,
.sy-home #main .post-content > .sy-home-s2 .fusion-column-inner-bg-image{ border-radius: 24px; transition: transform .6s ease; }
.sy-home #main .post-content > .sy-home-s2 .fusion-layout-column:hover .fusion-column-inner-bg-image{ transform: scale(1.06); }
.sy-home #main .post-content > .sy-home-s2 .fusion-title-heading{ font-size: 30px !important; font-weight: 600 !important; }
.sy-home #main .post-content > .sy-home-s2 .fusion-text p{ font-size: 15px !important; line-height: 1.65 !important; }

/* 3 · "Get started" comparison cards */
.sy-home #main .post-content > .sy-home-s3{ padding-top: 0 !important; padding-bottom: 40px !important; }
.sy-home #main .post-content > .sy-home-s3 > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{
	border-radius: 22px !important;
	border: 1px solid #eceef3 !important;
	box-shadow: 0 24px 48px -36px rgba(11,17,32, 0.135) !important;
	transition: transform .25s ease, box-shadow .25s ease;
}
.sy-home #main .post-content > .sy-home-s3 > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper:hover{ transform: translateY(-5px); }
.sy-home #main .post-content > .sy-home-s3 .fusion-title-heading{ font-size: 26px !important; font-weight: 600 !important; letter-spacing: .02em !important; }
.sy-home #main .post-content > .sy-home-s3 .fusion-text ul{ text-align: left; }
.sy-home #main .post-content > .sy-home-s3 .fusion-text li{ font-size: 15px !important; }
.sy-home #main .post-content > .sy-home-s3 .fusion-separator .fusion-separator-border{ border-color: #eef0f4 !important; }

/* 4 · video */
.sy-home #main .post-content > .sy-home-s4{ padding-top: 0 !important; padding-bottom: 90px !important; }
.sy-home #main .post-content > .sy-home-s4 :is(.fusion-video, .fusion-youtube, iframe){
	border-radius: 22px;
	overflow: hidden;
}
.sy-home #main .post-content > .sy-home-s4 .fusion-video{
	max-width: 960px !important;
	margin: 0 auto !important;
	box-shadow: 0 40px 70px -40px rgba(11,17,32, 0.18);
}

@media (max-width: 1024px){
	.sy-home #main .post-content > .sy-home-s1{ padding-right: 22px !important; padding-left: 22px !important; }
	.sy-home #main .post-content > .sy-home-s1 .fusion-imageframe,
	.sy-home #main .post-content > .sy-home-s1 .fusion-imageframe img{ min-height: 300px; }
	.sy-home #main .post-content > .sy-home-s2 > .fusion-builder-row{ flex-wrap: wrap !important; }
	.sy-home #main .post-content > .sy-home-s2 > .fusion-builder-row > .fusion-layout-column{ flex: 1 1 calc(50% - 10px) !important; min-height: 360px; }
}
@media (max-width: 600px){
	.sy-home-hero{ min-height: 70vh; }
	.sy-home-head{ padding: 56px 18px 0; }
	.sy-home #main .post-content > .sy-home-s1{ padding: 28px 16px 42px !important; }
	.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row{ flex-direction: column !important; padding: 14px !important; border-radius: 22px; }
	.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row > .fusion-layout-column{ width: 100% !important; flex: 1 1 100% !important; }
	.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row > .fusion-layout-column:has(.fusion-imageframe){ order: 1; }
	.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row > .fusion-layout-column:has(.fusion-title){ order: 2; }
	.sy-home #main .post-content > .sy-home-s1 > .fusion-builder-row > .fusion-layout-column:has(.fusion-imageframe){
		position: relative !important;
		top: auto;
		right: auto;
		bottom: auto;
		flex-basis: 100% !important;
		width: 100% !important;
		margin: 0 !important;
	}
	.sy-home #main .post-content > .sy-home-s1 .fusion-column-wrapper:has(.fusion-title){ padding: 20px 8px 8px !important; }
	.sy-home #main .post-content > .sy-home-s1 .fusion-title-heading{ font-size: 21px !important; }
	.sy-home #main .post-content > .sy-home-s1 .fusion-imageframe,
	.sy-home #main .post-content > .sy-home-s1 .fusion-imageframe img{ min-height: 230px; }
	.sy-home #main .post-content > .sy-home-s1 .fusion-imageframe{ border-radius: 14px; }
	.sy-home #main .post-content > .sy-home-s2 > .fusion-builder-row > .fusion-layout-column{ flex: 1 1 100% !important; }
}
/* home fixes: video fills its frame; equal card titles; tile titles fit */
.sy-home #main .post-content > .sy-home-s4 .fusion-video,
.sy-home #main .post-content > .sy-home-s4 .fusion-video > div,
.sy-home #main .post-content > .sy-home-s4 .fusion-video .video-shortcode,
.sy-home #main .post-content > .sy-home-s4 .fusion-video .fluid-width-video-wrapper{
	width: 100% !important;
	max-width: 960px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
.sy-home #main .post-content > .sy-home-s4 .fusion-video iframe{
	display: block;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9;
	position: static !important;
}
.sy-home #main .post-content > .sy-home-s4 .fusion-video .fluid-width-video-wrapper{ padding-top: 0 !important; height: auto !important; }
.sy-home #main .post-content > .sy-home-s3 .fusion-title-heading,
.sy-home #main .post-content > .sy-home-s3 .fusion-title-heading *{ font-size: 26px !important; font-weight: 600 !important; line-height: 1.25 !important; }
.sy-home #main .post-content > .sy-home-s2 .fusion-title-heading,
.sy-home #main .post-content > .sy-home-s2 .fusion-title-heading *{ font-size: clamp(22px, 2vw, 28px) !important; }
/* phones: home + service pages — full-width columns, no desktop-only padding */
@media (max-width: 800px){
	:is(.sy-home, .sy-sp) #main .post-content > .fusion-fullwidth:not(.sy-orig-first){
		padding-left: 18px !important;
		padding-right: 18px !important;
	}
	:is(.sy-home, .sy-sp) #main .post-content > .fusion-fullwidth:not(.sy-orig-first) > .fusion-builder-row > .fusion-layout-column:not(.sy-home-s2 *){
		width: 100% !important;
	}
	:is(.sy-home, .sy-sp) #main .post-content > .fusion-fullwidth:not(.sy-orig-first):not(.sy-home-s2) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

/* ------------------------------------------------------------------ *
 * 21. Home · "Choose what fits your project" — stacked cards (sunyu_home_stack)
 * ------------------------------------------------------------------ */
.sy-home #main .post-content > .sy-home-s3{ display: none !important; }
.sy-stack{ max-width: 1200px; margin: 0 auto; padding: 0 24px 60px; }
.sy-stack__card{
	position: sticky;
	top: calc(110px + var(--i, 0) * 22px);
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	min-height: 480px;
	margin: 0 0 44px;
	border-radius: 28px;
	overflow: hidden;
	background: #fff;
	border: 1px solid #e6e9f2;
	box-shadow: 0 -8px 30px -18px rgba(11,17,32, 0.075), 0 40px 70px -40px rgba(11,17,32, 0.135);
	transform-origin: center top;
	will-change: transform;
	--sy-tint: #eef0ff; --sy-ink2: #0000ff;
}
.sy-stack__card:nth-child(2){ --sy-tint: #fff6d6; --sy-ink2: #a16207; }
.sy-stack__card:nth-child(3){ --sy-tint: #e3f8ef; --sy-ink2: #047857; }
.sy-stack__card:nth-child(4){ --sy-tint: #ffece3; --sy-ink2: #c2410c; }
.sy-stack__body{
	display: flex; flex-direction: column; align-items: flex-start; gap: 12px;
	padding: 44px 48px;
	background: linear-gradient(160deg, var(--sy-tint) 0%, #ffffff 70%);
}
.sy-stack__num{
	font: 700 13px/1 var(--sy-font); color: var(--sy-ink2);
	background: #fff; border: 1px solid rgba(17,24,39,.06);
	padding: 8px 11px; border-radius: 10px;
}
.sy-stack h3.sy-stack__title{
	margin: 4px 0 0 !important;
	font: 700 clamp(28px, 3vw, 40px)/1.1 var(--sy-font) !important;
	letter-spacing: -.01em !important;
	color: var(--sy-ink) !important;
}
.sy-stack p.sy-stack__sub{ margin: 0 !important; font: 500 16px/1.5 var(--sy-font) !important; color: var(--sy-ink2) !important; }
.sy-stack ul.sy-stack__points{ list-style: none !important; margin: 8px 0 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 10px; }
.sy-stack ul.sy-stack__points li{
	position: relative;
	margin: 0 !important;
	padding: 0 0 0 32px !important;
	font: 400 15.5px/1.65 var(--sy-font) !important;
	color: #374151;
}
.sy-stack ul.sy-stack__points li::before{
	content: ""; position: absolute; left: 0; top: .3em;
	width: 20px; height: 20px; border-radius: 50%;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230000ff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") no-repeat 50% 50% / 12px 12px;
	box-shadow: 0 0 0 1px rgba(0,0,255,.15);
}
.sy-stack__why{ display: flex; flex-direction: column; gap: 8px; margin-top: 6px; }
.sy-stack__why-title{ font: 600 11.5px/1 var(--sy-font); letter-spacing: .14em; color: var(--sy-muted); }
.sy-stack__chips{ display: flex; flex-wrap: wrap; gap: 8px; }
.sy-stack__chip{
	font: 500 13px/1 var(--sy-font); color: var(--sy-ink);
	background: #fff; border: 1px solid #e3e6ee;
	padding: 8px 12px; border-radius: 999px;
}
.sy-stack__btn{
	margin-top: auto;
	display: inline-flex; align-items: center; gap: 8px;
	padding: 14px 24px; border-radius: 999px;
	background: var(--sy-blue); color: #fff !important;
	font: 600 15px/1 var(--sy-font);
	text-decoration: none !important;
	box-shadow: 0 12px 24px -12px rgba(0,0,255, 0.18);
	transition: transform .2s ease, background-color .2s ease;
}
.sy-stack__btn:hover{ background: #2a2aff; transform: translateY(-2px); }
.sy-stack__btn span{ transition: transform .2s ease; }
.sy-stack__btn:hover span{ transform: translateX(4px); }
.sy-stack__media{ position: relative; min-height: 320px; background: #eef0f4; }
.sy-stack__media img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 900px){
	.sy-stack{ padding: 0 16px 40px; }
	.sy-stack__card{ grid-template-columns: 1fr; top: calc(84px + var(--i, 0) * 14px); min-height: 0; margin-bottom: 28px; border-radius: 22px; }
	.sy-stack__media{ order: -1; min-height: 190px; }
	.sy-stack__body{ padding: 26px 22px 28px; }
	.sy-stack__btn{ margin-top: 10px; }
}

/* Home · intro on phones: no empty gap under the photo */
@media (max-width: 800px){
	.sy-home #main .post-content > .sy-home-s1 .fusion-layout-column,
	.sy-home #main .post-content > .sy-home-s1 .fusion-column-wrapper{
		min-height: 0 !important;
		height: auto !important;
		position: relative !important;
	}
}

/* ------------------------------------------------------------------ *
 * 22. Home · new intro + product tiles (replace builder sections 1 & 2)
 * ------------------------------------------------------------------ */
.sy-home #main .post-content > .sy-home-s1,
.sy-home #main .post-content > .sy-home-s2{ display: none !important; }

.sy-intro{
	max-width: 1200px;
	margin: 0 auto;
	padding: 100px 24px 20px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 64px;
	align-items: center;
}
.sy-intro__text{ display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.sy-intro p.sy-intro__statement{
	margin: 0 !important;
	font: 600 clamp(24px, 2.5vw, 34px)/1.35 var(--sy-font) !important;
	letter-spacing: -.01em;
	color: var(--sy-ink) !important;
}
.sy-intro__actions{ display: flex; align-items: center; gap: 22px; flex-wrap: wrap; margin-top: 8px; }
.sy-intro__link{ font: 600 15px/1 var(--sy-font); color: var(--sy-blue) !important; text-decoration: none !important; }
.sy-intro__link span{ display: inline-block; transition: transform .2s ease; }
.sy-intro__link:hover span{ transform: translateX(4px); }
.sy-intro__media{ position: relative; }
.sy-intro__media::before{
	content: ""; position: absolute; right: -18px; bottom: -18px; width: 70%; height: 70%;
	border-radius: 26px; background: var(--sy-blue); opacity: .1;
}
.sy-intro__media img{
	position: relative; display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover;
	border-radius: 26px; box-shadow: 0 34px 60px -34px rgba(11,17,32, 0.15);
}
.sy-intro__badge{
	position: absolute; left: -22px; bottom: 28px;
	display: flex; flex-direction: column; gap: 4px;
	padding: 16px 20px; border-radius: 18px;
	background: #fff; box-shadow: 0 20px 40px -20px rgba(11,17,32, 0.135);
}
.sy-intro__badge strong{ font: 700 28px/1 var(--sy-font); color: var(--sy-blue); }
.sy-intro__badge span{ font: 500 12px/1.3 var(--sy-font); letter-spacing: .06em; text-transform: uppercase; color: var(--sy-muted); }

/* product tiles */
.sy-tiles{
	max-width: 1200px; margin: 0 auto; padding: 0 24px 20px;
	display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px;
}
.sy-tile{
	position: relative; isolation: isolate;
	display: flex; align-items: flex-end;
	min-height: 460px;
	border-radius: 26px; overflow: hidden;
	text-decoration: none !important;
	box-shadow: 0 30px 50px -32px rgba(11,17,32, 0.165);
	transition: transform .3s ease, box-shadow .3s ease;
}
.sy-tile:hover{ transform: translateY(-6px); box-shadow: 0 40px 60px -32px rgba(11,17,32, 0.18); }
.sy-tile__img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .7s ease; }
.sy-tile:hover .sy-tile__img{ transform: scale(1.07); }
.sy-tile::before{
	content: ""; position: absolute; inset: 0; z-index: -1;
	background: linear-gradient(180deg, rgba(11,17,32,0) 30%, rgba(11,17,32,.55) 58%, rgba(11,17,32,.92) 100%);
}
.sy-tile__num{
	position: absolute; top: 18px; left: 18px;
	font: 700 13px/1 var(--sy-font); color: #fff;
	padding: 8px 11px; border-radius: 10px;
	background: rgba(255,255,255,.18);
	-webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
	border: 1px solid rgba(255,255,255,.25);
}
.sy-tile__body{ display: flex; flex-direction: column; gap: 10px; padding: 26px 24px 24px; width: 100%; }
.sy-tile__title{ font: 600 24px/1.2 var(--sy-font); color: #fff; }
.sy-tile__desc{
	font: 400 14px/1.6 var(--sy-font); color: rgba(255,255,255,.85);
	display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.sy-tile:hover .sy-tile__desc{ -webkit-line-clamp: 8; }
.sy-tile__more{ display: inline-flex; align-items: center; gap: 10px; font: 600 14px/1 var(--sy-font); color: #fff; margin-top: 4px; }
.sy-tile__arrow{
	display: inline-flex; align-items: center; justify-content: center;
	width: 34px; height: 34px; border-radius: 50%;
	background: #ffde59; color: #0b1120; font-size: 16px;
	transition: transform .25s ease;
}
.sy-tile:hover .sy-tile__arrow{ transform: translateX(4px); }

@media (max-width: 1024px){
	.sy-tiles{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sy-intro{ grid-template-columns: 1fr; gap: 40px; padding-top: 70px; }
}
@media (max-width: 600px){
	.sy-tiles{ grid-template-columns: 1fr; padding: 0 16px 10px; }
	.sy-tile{ min-height: 360px; }
	.sy-intro{ padding: 56px 18px 10px; }
	.sy-intro__badge{ left: 12px; bottom: 12px; padding: 12px 14px; }
	.sy-intro__media::before{ right: -8px; bottom: -8px; }
}
.sy-intro p.sy-intro__statement{ font-weight: 500 !important; font-size: clamp(22px, 2.3vw, 31px) !important; }

/* ------------------------------------------------------------------ *
 * 23. One vertical rhythm for every section (equal top & bottom spacing)
 * ------------------------------------------------------------------ */
html:root{ --sy-gap: 64px; }
@media (max-width: 1024px){ html:root{ --sy-gap: 52px; } }
@media (max-width: 600px){ html:root{ --sy-gap: 40px; } }

/* custom sections */
.sy-cta,
.sy-svc,
.sy-work,
.sy-certs,
.sy-proj,
.sy-why__inner,
.sy-intro{
	padding-top: var(--sy-gap) !important;
	padding-bottom: var(--sy-gap) !important;
}
.sy-cta{ padding-left: 24px !important; padding-right: 24px !important; }
/* heading + its content = one section */
.sy-home-head{ padding-top: var(--sy-gap) !important; }
.sy-tiles,
.sy-stack{ padding-bottom: var(--sy-gap) !important; }
.sy-stack__card:last-child{ margin-bottom: 0 !important; }
.sy-svc__head,
.sy-home-head .sy-svc__head{ margin-bottom: 40px !important; }

/* page-builder sections on the redesigned pages */
:is(.sy-service, .sy-sp, .sy-home, .page-id-17, .page-id-15) #main .post-content > .fusion-fullwidth{
	padding-top: var(--sy-gap) !important;
	padding-bottom: var(--sy-gap) !important;
}
/* …except: Edge Banding banner + stats card, home video (its heading supplies the top gap) */
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child{ padding-top: 140px !important; padding-bottom: 190px !important; }
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2){ padding-top: 0 !important; padding-bottom: 0 !important; }
.sy-home #main .post-content > .sy-home-s4{ padding-top: 0 !important; }
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element){ padding-bottom: 0 !important; }
@media (max-width: 800px){
	.page-id-10024 #main .post-content > .fusion-fullwidth:first-child{ padding-top: 80px !important; padding-bottom: 130px !important; }
}

/* overlapping facts / stats cards: the next section supplies the gap */
.sy-about-facts{ margin-bottom: 0 !important; }
.page-id-10024 #main .post-content > .fusion-fullwidth:nth-child(2){ margin-bottom: 0 !important; }
.sy-cat{ margin-bottom: var(--sy-gap) !important; }
.sy-cat:last-of-type{ margin-bottom: 0 !important; }
/* rhythm: override earlier per-section paddings / Avada margins */
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(n){ padding-top: var(--sy-gap) !important; padding-bottom: var(--sy-gap) !important; }
:is(.sy-service, .sy-sp, .sy-home, .page-id-17, .page-id-15) #main .post-content > .fusion-fullwidth:nth-child(n+3){ margin-top: 0 !important; margin-bottom: 0 !important; }
.sy-sp #main .post-content > .fusion-fullwidth:not(.sy-orig-first){ padding-top: var(--sy-gap) !important; padding-bottom: var(--sy-gap) !important; }
.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element),
.page-id-15 #main .post-content > .fusion-fullwidth:has(._3d-flip-book){ padding-top: var(--sy-gap) !important; padding-bottom: var(--sy-gap) !important; margin-top: 0 !important; }
@media (max-width: 800px){
	.sy-sp #main .post-content > .fusion-fullwidth:not(.sy-orig-first){ padding-top: var(--sy-gap) !important; padding-bottom: var(--sy-gap) !important; }
	.page-id-15 #main .post-content > .fusion-fullwidth:has(.fb-icon-element){ padding-top: var(--sy-gap) !important; padding-bottom: var(--sy-gap) !important; }
}

/* CTA band: client gradient (2026-11-08) */
.sy-cta__inner{ background: linear-gradient(332deg, #9b8c50, #0000ff) !important; }

/* ------------------------------------------------------------------ *
 * 24. Image sliders on Handle pages: fixed height, sticky beside long text, tidy text column
 * ------------------------------------------------------------------ */
.sy-service .fusion-slider-sc .flex-viewport{ height: auto !important; border-radius: 22px; overflow: hidden; box-shadow: 0 30px 56px -34px rgba(11,17,32, 0.15); }
.sy-service .fusion-slider-sc .slides li,
.sy-service .fusion-slider-sc .slides li a{ display: block; }
.sy-service .fusion-slider-sc .slides li img{
	width: 100% !important;
	height: 520px !important;
	object-fit: cover;
	border-radius: 0 !important;
	box-shadow: none !important;
}
/* keep the slider in view while the long text column scrolls */
.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc) > .fusion-column-wrapper{
	position: sticky;
	top: 120px;
	justify-content: flex-start !important;
}
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row{ align-items: flex-start !important; }
/* dots */
.sy-service .fusion-slider-sc .flex-control-nav{ position: static !important; margin-top: 18px !important; display: flex; justify-content: center; gap: 8px; }
.sy-service .fusion-slider-sc .flex-control-nav li{ margin: 0 !important; }
.sy-service .fusion-slider-sc .flex-control-paging li a{
	width: 9px !important; height: 9px !important;
	border-radius: 999px !important;
	background: #d4d8e3 !important;
	box-shadow: none !important;
	transition: width .25s ease, background-color .25s ease;
}
.sy-service .fusion-slider-sc .flex-control-paging li a.flex-active{ width: 26px !important; background: var(--sy-blue) !important; }
/* arrows */
.sy-service .fusion-slider-sc .flex-direction-nav a{
	width: 44px !important; height: 44px !important; line-height: 44px !important;
	border-radius: 50% !important;
	background: rgba(255,255,255,.92) !important;
	color: var(--sy-ink) !important;
	box-shadow: 0 8px 20px -8px rgba(11,17,32, 0.105);
}
/* text column: consistent heading, "Features:" label, button aligned with text */
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-title-heading{ color: var(--sy-ink) !important; font-weight: 600 !important; }
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-text p > strong:only-child,
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-text p > b:only-child{
	display: inline-block;
	font-size: 12px; letter-spacing: .14em; text-transform: uppercase;
	color: var(--sy-blue);
	background: var(--sy-blue-soft);
	padding: 7px 12px; border-radius: 999px;
	margin-top: 6px;
}
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) :is(.fusion-button-wrapper, .fusion-align-block){ text-align: left !important; justify-content: flex-start !important; }
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-button{ margin-left: 0 !important; }
@media (max-width: 800px){
	.sy-service .fusion-slider-sc .slides li img{ height: 340px !important; }
	.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc) > .fusion-column-wrapper{ position: static; }
}
/* Handle sections balanced: image column stretches so its sticky slider follows the text, top-aligned with the heading */
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row{ align-items: stretch !important; }
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row > .fusion-layout-column{ margin-top: 0 !important; margin-bottom: 0 !important; }
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{
	justify-content: flex-start !important;
	padding-top: 0 !important;
	margin-top: 0 !important;
}
.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc) > .fusion-column-wrapper{
	position: sticky;
	top: 110px;
	height: auto !important;
	align-self: flex-start;
}
.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc){ display: flex !important; flex-direction: column; }
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-slider-sc{ margin-top: 0 !important; }
/* "Features:" / "Benefits:" — same small pill label */
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-text :is(h2, h3, h4, h5, h6),
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-text p > :is(strong, b):only-child{
	display: inline-block !important;
	font-family: var(--sy-font) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: .14em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	color: var(--sy-blue) !important;
	background: var(--sy-blue-soft) !important;
	padding: 8px 13px !important;
	border-radius: 999px !important;
	margin: 18px 0 6px !important;
}
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-text :is(h2, h3, h4, h5, h6) *,
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-text p > :is(strong, b):only-child *{
	font: inherit !important; color: inherit !important; text-decoration: none !important; letter-spacing: inherit !important;
}
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-text u{ text-decoration: none !important; }

/* Custom Handle Services: balanced text / illustration */
.sy-service #main .post-content > .fusion-fullwidth:has(img[src*="about_img"]) > .fusion-builder-row{ align-items: center !important; }
.sy-service #main .post-content > .fusion-fullwidth:has(img[src*="about_img"]) > .fusion-builder-row > .fusion-layout-column{
	width: 50% !important; flex: 0 0 50% !important; margin-top: 0 !important; margin-bottom: 0 !important;
}
.sy-service #main .post-content > .fusion-fullwidth:has(img[src*="about_img"]) > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper{ justify-content: center !important; padding-top: 0 !important; }
.sy-service #main .post-content > .fusion-fullwidth:has(img[src*="about_img"]) .fusion-title-heading{ color: var(--sy-ink) !important; font-weight: 600 !important; text-align: left !important; }
.sy-service #main .post-content > .fusion-fullwidth:has(img[src*="about_img"]) .fusion-imageframe{
	display: flex !important; align-items: center; justify-content: center;
	width: 100%;
	padding: 40px;
	border-radius: 26px !important;
	background: radial-gradient(circle at 30% 30%, #eef0ff 0%, #f6f7fb 70%);
	border: 1px solid #eceef3;
}
.sy-service #main .post-content > .fusion-fullwidth:has(img[src*="about_img"]) .fusion-imageframe img{ max-width: 440px; width: 100%; height: auto; box-shadow: none !important; border-radius: 0 !important; }
.sy-service #main .post-content > .fusion-fullwidth:has(img[src*="about_img"]) :is(.fusion-button-wrapper, .fusion-align-block){ text-align: left !important; justify-content: flex-start !important; }
@media (max-width: 800px){
	.sy-service #main .post-content > .fusion-fullwidth:has(img[src*="about_img"]) > .fusion-builder-row > .fusion-layout-column{ width: 100% !important; flex-basis: 100% !important; }
	.sy-service #main .post-content > .fusion-fullwidth:has(img[src*="about_img"]) .fusion-imageframe{ padding: 24px; margin-top: 24px; }
}

/* Handle fixes (round 3): slider column keeps its own width; labels as pills; buttons left-aligned */
.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc) > .fusion-column-wrapper{
	align-self: stretch !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; flex: 0 0 auto !important;
}
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-slider-sc,
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) .fusion-slider-sc .flexslider{ width: 100% !important; max-width: 100% !important; overflow: hidden; border-radius: 22px; }
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row{ column-gap: 0; }
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc){ padding-right: 28px !important; }
.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row > .fusion-layout-column:not(:has(.fusion-slider-sc)){ padding-left: 28px !important; }
.sy-service #main .post-content p.sy-pill-label{
	display: table !important;
	font-family: var(--sy-font) !important; font-size: 12px !important; font-weight: 600 !important;
	letter-spacing: .14em !important; text-transform: uppercase !important; line-height: 1 !important;
	color: var(--sy-blue) !important; background: var(--sy-blue-soft) !important;
	padding: 8px 13px !important; border-radius: 999px !important; margin: 22px 0 10px !important;
}
.sy-service #main .post-content > .fusion-fullwidth:is(:has(.fusion-slider-sc), :has(img[src*="about_img"])) .fusion-column-wrapper:has(> div > .fusion-button){ align-items: stretch !important; }
.sy-service #main .post-content > .fusion-fullwidth:is(:has(.fusion-slider-sc), :has(img[src*="about_img"])) div:has(> .fusion-button){ width: 100%; text-align: left !important; }
@media (max-width: 800px){
	.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row > .fusion-layout-column{ padding-left: 0 !important; padding-right: 0 !important; }
	.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc) > .fusion-column-wrapper{ position: static; }
	.sy-service .fusion-slider-sc .slides li img{ height: 300px !important; }
}
.sy-service #main .post-content > .fusion-fullwidth:is(:has(.fusion-slider-sc), :has(img[src*="about_img"])) .fusion-button{ margin-left: 0 !important; margin-right: 0 !important; --button_margin-left: 0px !important; }
@media (max-width: 800px){
	.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row > .fusion-layout-column:not(:has(.fusion-slider-sc)),
	.sy-service #main .post-content > .fusion-fullwidth:has(.fusion-slider-sc) > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc){ padding-left: 0 !important; padding-right: 0 !important; }
}

/* Handle → Aluminum section split: full-width intro + features, then slider | benefits */
.sy-service #main .post-content > .sy-split > .fusion-builder-row{ flex-wrap: wrap !important; align-items: flex-start !important; row-gap: 44px; }
.sy-service #main .post-content > .sy-split .sy-split-top{ width: 100% !important; flex: 0 0 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
.sy-service #main .post-content > .sy-split .sy-split-top > .fusion-column-wrapper{ display: block !important; margin: 0 !important; padding: 0 !important; }
.sy-service #main .post-content > .sy-split .sy-split-top .fusion-title{ margin: 0 0 14px !important; }
.sy-service #main .post-content > .sy-split .sy-split-top .fusion-title-heading{ text-align: left !important; }
.sy-service #main .post-content > .sy-split .sy-split-top__text > p:first-child{ max-width: 760px; margin: 0 0 8px !important; }
/* features as a 3-column card grid */
.sy-service #main .post-content > .sy-split .sy-split-top__text ul{
	display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 14px 0 0 !important; padding: 0 !important;
}
.sy-service #main .post-content > .sy-split .sy-split-top__text ul li{
	margin: 0 !important; padding: 22px 22px 22px 54px !important; background-position: 22px 26px !important;
	border-radius: 18px; background-color: #f6f7fb; border: 1px solid #eceef3;
}
.sy-service #main .post-content > .sy-split .sy-split-top__text ul li::before{ left: 22px !important; top: 25px !important; }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul li:nth-child(4),
.sy-service #main .post-content > .sy-split .sy-split-top__text ul li:nth-child(5){ grid-column: span 1; }
.sy-service #main .post-content > .sy-split > .fusion-builder-row > .fusion-layout-column:not(.sy-split-top) .fusion-text > .sy-pill-label:first-child{ margin-top: 0 !important; }
@media (min-width: 1025px){
	.sy-service #main .post-content > .sy-split .sy-split-top__text ul{ grid-template-columns: repeat(6, minmax(0, 1fr)); }
	.sy-service #main .post-content > .sy-split .sy-split-top__text ul li{ grid-column: span 2; }
	.sy-service #main .post-content > .sy-split .sy-split-top__text ul li:nth-child(4){ grid-column: 2 / span 2; }
	.sy-service #main .post-content > .sy-split .sy-split-top__text ul li:nth-child(5){ grid-column: 4 / span 2; }
}
@media (max-width: 1024px){ .sy-service #main .post-content > .sy-split .sy-split-top__text ul{ grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px){ .sy-service #main .post-content > .sy-split .sy-split-top__text ul{ grid-template-columns: 1fr; } }
@media (max-width: 800px){
	.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc),
	.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc) > .fusion-column-wrapper{
		height: auto !important; min-height: 0 !important; max-height: none !important; align-self: auto !important; flex-grow: 0 !important;
	}
	.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc) > .fusion-column-wrapper{ overflow: hidden; }
}
@media (max-width: 800px){
	.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc) > .fusion-column-wrapper{ padding-bottom: 0 !important; }
}

/* Aluminum features — centred intro + colour-shaded numbered cards */
.sy-service #main .post-content > .sy-split .sy-split-top{ text-align: center; }
.sy-service #main .post-content > .sy-split .sy-split-top .fusion-title-heading{ text-align: center !important; }
.sy-service #main .post-content > .sy-split .sy-split-top__text > p:first-child{ max-width: 760px; margin: 0 auto 10px !important; text-align: center; }
.sy-service #main .post-content > .sy-split .sy-split-top__text > .sy-pill-label{ margin: 18px auto 26px !important; }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul{ gap: 22px !important; margin-top: 0 !important; }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul > li.sy-fcard{
	--c: #0000ff; --bg: #eef0ff;
	position: relative; overflow: hidden;
	display: flex; flex-direction: column; align-items: flex-start; gap: 10px;
	text-align: left;
	padding: 30px 28px 30px !important;
	border-radius: 22px; border: 1px solid color-mix(in srgb, var(--c) 14%, transparent);
	background: linear-gradient(160deg, var(--bg) 0%, #fff 100%) !important;
	box-shadow: 0 10px 30px -18px color-mix(in srgb, var(--c) 45%, transparent);
	transition: transform .25s ease, box-shadow .25s ease;
}
.sy-service #main .post-content > .sy-split .sy-split-top__text ul > li.sy-fcard:hover{
	transform: translateY(-4px); box-shadow: 0 18px 40px -18px color-mix(in srgb, var(--c) 55%, transparent);
}
.sy-service #main .post-content > .sy-split .sy-split-top__text ul > li.sy-fcard::before{ display: none !important; }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul > li.sy-fcard::after{
	content: ""; position: absolute; right: -40px; top: -40px; width: 130px; height: 130px; border-radius: 50%;
	background: color-mix(in srgb, var(--c) 8%, transparent); pointer-events: none;
}
.sy-service #main .post-content > .sy-split li.sy-fcard .sy-fcard__num{
	display: inline-grid; place-items: center; width: 46px; height: 46px; border-radius: 14px;
	background: var(--c); color: #fff; font: 600 15px/1 var(--sy-font); letter-spacing: .04em; margin-bottom: 6px;
	box-shadow: 0 8px 18px -8px color-mix(in srgb, var(--c) 30%, transparent);
}
.sy-service #main .post-content > .sy-split li.sy-fcard .sy-fcard__title{ font: 600 19px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.sy-service #main .post-content > .sy-split li.sy-fcard .sy-fcard__text{ font-size: 15px; line-height: 1.7; color: var(--sy-muted); }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul > li.sy-fcard:nth-child(1){ --c: #0000ff; --bg: #eef0ff; }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul > li.sy-fcard:nth-child(2){ --c: #0e9f8e; --bg: #e7f7f4; }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul > li.sy-fcard:nth-child(3){ --c: #9b8c50; --bg: #f7f3e4; }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul > li.sy-fcard:nth-child(4){ --c: #7c4ddb; --bg: #f2ecff; }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul > li.sy-fcard:nth-child(5){ --c: #e0623a; --bg: #fdeee8; }
.sy-service #main .post-content > .sy-split .sy-split-top__text > p:first-child{ text-wrap: balance; }
/* more breathing room between the feature cards and the slider / benefits row */
.sy-service #main .post-content > .sy-split > .fusion-builder-row{ row-gap: 96px !important; }
.sy-service #main .post-content > .sy-split .sy-split-top__text ul{ margin-bottom: 0 !important; }
@media (max-width: 800px){ .sy-service #main .post-content > .sy-split > .fusion-builder-row{ row-gap: 64px !important; } }

/* ==========================================================================
 * 25. Pureco page (10049) — intro, feature cards, colour swatches, specs + cut-to-size
 * ========================================================================== */
.sy-pc{ padding: var(--sy-gap) 0 !important; }
.sy-pc__wrap{ max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.sy-pc-feat{ padding-top: 0 !important; }
.sy-pc-colours{ background: #f6f7fb; }
.sy-pc h2.sy-pc__title{ font: 600 clamp(28px, 3.2vw, 40px)/1.15 var(--sy-font) !important; color: var(--sy-ink) !important; margin: 14px 0 16px !important; letter-spacing: -.01em; }
.sy-pc .sy-pc__lead{ font: 400 17px/1.75 var(--sy-font); color: var(--sy-muted); margin: 0 0 22px !important; }
.sy-pc__actions{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.sy-pc .sy-pc__btn{
	display: inline-flex; align-items: center; justify-content: center; padding: 15px 28px; border-radius: 999px;
	font: 600 15px/1 var(--sy-font); background: var(--sy-blue); color: #fff !important; text-decoration: none !important;
	border: 2px solid var(--sy-blue); transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
	box-shadow: 0 12px 26px -14px rgba(0,0,255, 0.21);
}
.sy-pc .sy-pc__btn:hover{ transform: translateY(-2px); }
.sy-pc .sy-pc__btn--ghost{ background: transparent; color: var(--sy-blue) !important; box-shadow: none; }
.sy-pc .sy-pc__btn--ghost:hover{ background: var(--sy-blue-soft); }
.sy-pc .sy-pc__btn--light{ background: #fff; color: var(--sy-blue) !important; border-color: #fff; box-shadow: 0 12px 26px -14px rgba(0,0,0, 0.15); }

/* intro */
.sy-pc-intro__grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.sy-pc-intro__media{ position: relative; z-index: 0; }
.sy-pc-intro__media img{ position: relative; display: block; width: 100%; aspect-ratio: 4 / 3.4; object-fit: cover; border-radius: 28px; box-shadow: 0 40px 70px -40px rgba(11,17,32, 0.165); }
.sy-pc-intro__media::before{ content: ""; position: absolute; inset: 22px -22px -22px 22px; border-radius: 28px; background: linear-gradient(332deg, #9b8c50, #0000ff); opacity: .16; z-index: -1; }
.sy-pc-intro__badge{
	position: absolute; left: -18px; bottom: 28px; background: #fff; border-radius: 16px; padding: 14px 18px;
	font: 400 13px/1.35 var(--sy-font); color: var(--sy-muted); box-shadow: 0 20px 40px -20px rgba(11,17,32, 0.135);
}
.sy-pc-intro__badge strong{ display: block; font: 600 17px/1.2 var(--sy-font); color: var(--sy-blue); }
.sy-pc ul.sy-pc-intro__chips{ list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 10px; }
.sy-pc ul.sy-pc-intro__chips li{
	margin: 0 !important; padding: 9px 16px 9px 34px !important; border-radius: 999px; background: #f3f4f8; position: relative;
	font: 500 14px/1.2 var(--sy-font); color: var(--sy-ink);
}
.sy-pc ul.sy-pc-intro__chips li::before{
	content: ""; position: absolute; left: 12px; top: 50%; width: 14px; height: 14px; transform: translateY(-50%); border-radius: 50%;
	background: var(--sy-blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") no-repeat 50% 50% / 9px 9px;
}

/* features */
.sy-pc ul.sy-pc-feat__grid{ list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card{
	--c: #0000ff; --bg: #eef0ff;
	position: relative; overflow: hidden; margin: 0 !important; padding: 28px 24px !important;
	display: flex; flex-direction: column; gap: 10px;
	border-radius: 22px; border: 1px solid color-mix(in srgb, var(--c) 14%, transparent);
	background: linear-gradient(165deg, var(--bg) 0%, #fff 100%);
	box-shadow: 0 10px 30px -20px color-mix(in srgb, var(--c) 50%, transparent);
	transition: transform .25s ease, box-shadow .25s ease;
}
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card::before{ display: none !important; }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card::after{
	content: ""; position: absolute; right: -36px; top: -36px; width: 110px; height: 110px; border-radius: 50%;
	background: color-mix(in srgb, var(--c) 8%, transparent); pointer-events: none;
}
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card:hover{ transform: translateY(-5px); box-shadow: 0 20px 40px -20px color-mix(in srgb, var(--c) 60%, transparent); }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card:nth-child(8n+1){ --c: #0000ff; --bg: #eef0ff; }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card:nth-child(8n+2){ --c: #0e9f8e; --bg: #e7f7f4; }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card:nth-child(8n+3){ --c: #9b8c50; --bg: #f7f3e4; }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card:nth-child(8n+4){ --c: #7c4ddb; --bg: #f2ecff; }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card:nth-child(8n+5){ --c: #0ea5e9; --bg: #e8f6fd; }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card:nth-child(8n+6){ --c: #db2777; --bg: #fdeef5; }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card:nth-child(8n+7){ --c: #e0623a; --bg: #fdeee8; }
.sy-pc ul.sy-pc-feat__grid > li.sy-pc-feat__card:nth-child(8n+8){ --c: #16a34a; --bg: #eaf7ee; }
.sy-pc-feat__icon{ display: inline-grid; place-items: center; width: 50px; height: 50px; border-radius: 15px; background: var(--c); color: #fff; margin-bottom: 6px; box-shadow: 0 10px 20px -10px color-mix(in srgb, var(--c) 30%, transparent); }
.sy-pc-feat__icon svg{ width: 24px; height: 24px; }
.sy-pc .sy-pc-feat__title{ font: 600 17.5px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.sy-pc .sy-pc-feat__text{ font: 400 14.5px/1.7 var(--sy-font); color: var(--sy-muted); }

/* colour swatches */
.sy-pc-colours__grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.sy-pc-swatch{ background: #fff; border-radius: 24px; overflow: hidden; border: 1px solid #eceef3; box-shadow: 0 24px 46px -34px rgba(11,17,32, 0.15); transition: transform .25s ease, box-shadow .25s ease; display: flex; flex-direction: column; }
.sy-pc-swatch:hover{ transform: translateY(-6px); box-shadow: 0 34px 56px -32px rgba(11,17,32, 0.165); }
.sy-pc-swatch__media{ display: block; aspect-ratio: 1 / 1; overflow: hidden; background: #eef0f4; }
.sy-pc-swatch__media img{ width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; display: block; }
.sy-pc-swatch:hover .sy-pc-swatch__media img{ transform: scale(1.06); }
.sy-pc-swatch__body{ padding: 20px 22px 22px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.sy-pc-swatch__code{ font: 600 20px/1.2 var(--sy-font); color: var(--sy-ink); letter-spacing: .02em; }
.sy-pc-swatch__name{ font: 400 14.5px/1.5 var(--sy-font); color: var(--sy-muted); }
.sy-pc .sy-pc-swatch__buy{
	margin-top: 14px; align-self: flex-start; display: inline-flex; gap: 6px; align-items: center;
	padding: 10px 18px; border-radius: 999px; background: var(--sy-blue-soft); color: var(--sy-blue) !important;
	font: 600 14px/1 var(--sy-font); text-decoration: none !important; transition: background .2s ease, color .2s ease;
}
.sy-pc .sy-pc-swatch__buy:hover{ background: var(--sy-blue); color: #fff !important; }

/* specs + cut-to-size */
.sy-pc-specs__grid{ display: grid; grid-template-columns: 1.25fr 1fr; gap: 24px; }
.sy-pc-specs__card, .sy-pc-specs__cut{ border-radius: 26px; padding: 40px; }
.sy-pc-specs__card{ background: #fff; border: 1px solid #eceef3; box-shadow: 0 24px 50px -38px rgba(11,17,32, 0.135); }
.sy-pc h3.sy-pc-specs__title{ font: 600 26px/1.25 var(--sy-font) !important; color: var(--sy-ink) !important; margin: 14px 0 20px !important; }
.sy-pc-specs__list{ margin: 0; }
.sy-pc-specs__list > div{ display: flex; justify-content: space-between; gap: 16px; padding: 15px 0; border-bottom: 1px dashed #e3e6ee; }
.sy-pc-specs__list > div:last-child{ border-bottom: 0; padding-bottom: 0; }
.sy-pc-specs__list dt{ font: 400 15px/1.4 var(--sy-font); color: var(--sy-muted); }
.sy-pc-specs__list dd{ margin: 0; font: 600 15px/1.4 var(--sy-font); color: var(--sy-ink); text-align: right; }
.sy-pc-specs__cut{ position: relative; overflow: hidden; color: #fff; background: linear-gradient(332deg, #9b8c50, #0000ff); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.sy-pc-specs__cut::after{ content: ""; position: absolute; right: -70px; bottom: -70px; width: 220px; height: 220px; border-radius: 50%; background: rgba(255,255,255,.1); pointer-events: none; }
.sy-pc-specs__cut-icon{ display: inline-grid; place-items: center; width: 54px; height: 54px; border-radius: 16px; background: rgba(255,255,255,.16); }
.sy-pc-specs__cut-icon svg{ width: 26px; height: 26px; }
.sy-pc .sy-pc-specs__cut h3.sy-pc-specs__title{ color: #fff !important; margin-bottom: 10px !important; }
.sy-pc .sy-pc-specs__cut p{ font: 400 16px/1.7 var(--sy-font); color: rgba(255,255,255,.88); margin: 0 0 26px !important; max-width: 420px; }

@media (max-width: 1024px){
	.sy-pc ul.sy-pc-feat__grid, .sy-pc-colours__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sy-pc-intro__grid{ gap: 48px; }
}
@media (max-width: 800px){
	.sy-pc-intro__grid, .sy-pc-specs__grid{ grid-template-columns: 1fr; }
	.sy-pc-intro__media{ margin: 0 22px 0 0; }
	.sy-pc-intro__badge{ left: 12px; }
	.sy-pc-specs__card, .sy-pc-specs__cut{ padding: 28px 24px; }
}
@media (max-width: 560px){
	.sy-pc ul.sy-pc-feat__grid{ grid-template-columns: 1fr; }
	.sy-pc-colours__grid{ gap: 14px; }
	.sy-pc-swatch__body{ padding: 14px 14px 16px; }
	.sy-pc-swatch__code{ font-size: 17px; }
}
.sy-pc-colours{ width: calc(100vw - var(--sy-sbw, 0px)); max-width: none !important; margin-left: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2) !important; margin-right: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2) !important; }
.sy-pc .sy-pc-swatch__media img{ width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; }
/* cut-to-size: warm tinted card so it doesn't repeat the gradient CTA band below */
.sy-pc .sy-pc-specs__cut{ background: linear-gradient(160deg, #f7f3e4 0%, #fffdf6 100%); color: var(--sy-ink); border: 1px solid #ece4c6; }
.sy-pc .sy-pc-specs__cut::after{ background: rgba(155,140,80,.12); }
.sy-pc .sy-pc-specs__cut-icon{ background: #9b8c50; color: #fff; box-shadow: 0 10px 20px -10px color-mix(in srgb, #9b8c50 30%, transparent); }
.sy-pc .sy-pc-specs__cut h3.sy-pc-specs__title{ color: var(--sy-ink) !important; }
.sy-pc .sy-pc-specs__cut p{ color: var(--sy-muted); }
.sy-pc .sy-pc-specs__cut .sy-pc__btn--light{ background: var(--sy-blue); color: #fff !important; border-color: var(--sy-blue); box-shadow: 0 12px 26px -14px rgba(0,0,255, 0.21); position: relative; z-index: 1; }

/* oval badge logo (2026-11-08, attachment 11443, 2000x1201): a little taller so the small "Products & Services" stays legible */
.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{ max-height: 72px !important; }
@media (max-width: 1024px){ .fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{ max-height: 54px !important; } }
.sy-footer__logo img{ width: 160px !important; }
/* header logo a little bigger (client request) */
.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{ max-height: 88px !important; }
.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe{ max-width: 100% !important; }
@media (max-width: 1024px){ .fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img{ max-height: 62px !important; } }
/* Handle slider columns: drop the builder's 509px bottom padding at every size, columns hug their content */
.sy-service #main .post-content > .fusion-fullwidth > .fusion-builder-row > .fusion-layout-column:has(.fusion-slider-sc) > .fusion-column-wrapper{ padding-bottom: 0 !important; min-height: 0 !important; }
.sy-service #main .post-content > .sy-split > .fusion-builder-row > .fusion-layout-column{ align-self: flex-start !important; height: auto !important; }

/* ==========================================================================
 * 26. Footer — abstract dark-blue gradient (glowing blobs + faint grid)
 * ========================================================================== */
.fusion-tb-footer .fusion-fullwidth:has(.sy-footer){ background: #060b24 !important; }
.sy-footer{
	position: relative; isolation: isolate; overflow: hidden;
	background:
		radial-gradient(60% 80% at 8% 0%, rgba(0, 0, 255, .55) 0%, rgba(0, 0, 255, 0) 60%),
		radial-gradient(45% 60% at 100% 20%, rgba(76, 61, 255, .38) 0%, rgba(76, 61, 255, 0) 65%),
		radial-gradient(50% 70% at 85% 100%, rgba(155, 140, 80, .30) 0%, rgba(155, 140, 80, 0) 60%),
		radial-gradient(40% 55% at 30% 100%, rgba(0, 120, 255, .22) 0%, rgba(0, 120, 255, 0) 65%),
		linear-gradient(160deg, #0a1240 0%, #060b24 55%, #050818 100%) !important;
}
/* soft blurred orbs */
.sy-footer::before{
	content: ""; position: absolute; z-index: -1; pointer-events: none;
	width: 520px; height: 520px; left: 38%; top: -260px; border-radius: 50%;
	background: radial-gradient(circle, rgba(42, 42, 255, .45) 0%, rgba(42, 42, 255, 0) 70%);
	filter: blur(30px);
}
/* faint grid texture fading out toward the bottom */
.sy-footer::after{
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background-image:
		linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px);
	background-size: 46px 46px;
	-webkit-mask-image: linear-gradient(180deg, #000 0%, rgba(0,0,0,.35) 55%, transparent 100%);
	mask-image: linear-gradient(180deg, #000 0%, rgba(0,0,0,.35) 55%, transparent 100%);
}
.sy-footer__inner{ position: relative; z-index: 1; }
/* glassy cards / lines on the gradient */
.sy-footer .sy-loc{ background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .10); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.sy-footer .sy-footer__social a{ background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .14); }
.sy-footer .sy-footer__social a:hover{ background: var(--sy-blue); border-color: var(--sy-blue); }
.sy-footer :is(.sy-footer__bottom, .sy-footer__locs){ border-color: rgba(255, 255, 255, .10) !important; }

/* 27. Top promo bar — brand gradient (blue → gold), slow drift */
.fusion-tb-header .fusion-fullwidth.fusion-builder-row-1{
	background: linear-gradient(90deg, #0000ff 0%, #2a1fe0 30%, #5b4fc0 60%, #9b8c50 100%) !important;
	background-size: 200% 100% !important;
	animation: sy-promo-drift 14s ease-in-out infinite alternate;
}
@keyframes sy-promo-drift{ from{ background-position: 0% 50%; } to{ background-position: 100% 50%; } }
@media (prefers-reduced-motion: reduce){ .fusion-tb-header .fusion-fullwidth.fusion-builder-row-1{ animation: none; } }
.fusion-tb-header .fusion-fullwidth.fusion-builder-row-1{
	background: linear-gradient(90deg, #0000ff 0%, #2a1fe0 35%, #5b4fc0 65%, #9b8c50 100%) !important;
	background-size: 125% 100% !important;
}

/* ==========================================================================
 * 28. Single product pages (all products) — full width, gallery | summary,
 *     spec list, styled options + cart, WhatsApp help, tabs, share, related
 * ========================================================================== */
body.single-product #sidebar{ display: none !important; }
body.single-product #main .woocommerce-container,
body.single-product #main #content{ width: 100% !important; max-width: 100% !important; float: none !important; margin: 0 !important; }
body.single-product #main > .fusion-row{ max-width: 1240px !important; padding: 0 24px !important; }
body.single-product #main{ padding-top: 36px !important; padding-bottom: var(--sy-gap) !important; background: #f6f7fb; }

/* top: gallery + summary */
body.single-product div.product.type-product{
	display: grid !important; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 32px; align-items: start;
}
body.single-product div.product > :not(.avada-single-product-gallery-wrapper):not(.summary){ grid-column: 1 / -1; }
body.single-product div.product .avada-single-product-gallery-wrapper{
	width: 100% !important; max-width: none !important; float: none !important; margin: 0 !important;
	position: sticky; top: 120px;
}
body.single-product div.product .woocommerce-product-gallery{
	width: 100% !important; float: none !important; margin: 0 !important;
	background: #fff; border: 1px solid #eceef3; border-radius: 26px; padding: 22px; box-shadow: 0 24px 50px -36px rgba(11,17,32, .15);
}
body.single-product div.product .woocommerce-product-gallery__wrapper{ border-radius: 18px; overflow: hidden; background: #f3f4f8; }
body.single-product div.product .woocommerce-product-gallery__image{ width: 100% !important; }
body.single-product div.product .woocommerce-product-gallery__image > a{ display: block; }
body.single-product div.product .woocommerce-product-gallery__image img.wp-post-image{
	width: 100% !important; height: auto !important; max-height: 620px; aspect-ratio: 1 / 1; object-fit: contain !important; display: block;
}
body.single-product div.product .woocommerce-product-gallery__trigger{
	top: 36px !important; right: 36px !important; left: auto !important; width: 42px !important; height: 42px !important; border-radius: 50% !important;
	background: #fff !important; box-shadow: 0 8px 20px -10px rgba(11,17,32, .3) !important; z-index: 5;
}
body.single-product div.product .flex-control-thumbs{ display: grid !important; grid-template-columns: repeat(5, 1fr); gap: 10px; margin: 14px 0 0 !important; padding: 0 !important; }
body.single-product div.product .flex-control-thumbs li{ width: auto !important; margin: 0 !important; float: none !important; list-style: none; }
body.single-product div.product .flex-control-thumbs img{ border-radius: 12px; border: 2px solid transparent; opacity: .7; transition: opacity .2s, border-color .2s; aspect-ratio: 1; object-fit: cover; }
body.single-product div.product .flex-control-thumbs img.flex-active,
body.single-product div.product .flex-control-thumbs img:hover{ opacity: 1; border-color: var(--sy-blue); }

body.single-product div.product .summary.entry-summary{
	width: 100% !important; float: none !important; margin: 0 !important; padding: 0 !important;
}
body.single-product div.product .summary-container{
	float: none !important; width: 100% !important; margin: 0 !important;
	background: #fff; border: 1px solid #eceef3; border-radius: 26px; padding: 36px 38px !important;
	box-shadow: 0 24px 50px -36px rgba(11,17,32, .15);
}
.sy-pd-crumbs{ display: flex; flex-wrap: wrap; gap: 6px; align-items: center; font: 400 13px/1.4 var(--sy-font); color: #8a93a6; margin: 0 0 18px; }
.sy-pd-crumbs a{ color: #6b7280 !important; text-decoration: none !important; }
.sy-pd-crumbs a:hover{ color: var(--sy-blue) !important; }
.sy-pd-crumbs span{ color: #c3c8d4; }
a.sy-pd-eyebrow{
	display: inline-block; margin: 0 0 12px; padding: 7px 13px; border-radius: 999px; background: var(--sy-blue-soft); color: var(--sy-blue) !important;
	font: 600 11.5px/1 var(--sy-font); letter-spacing: .14em; text-transform: uppercase; text-decoration: none !important;
}
body.single-product div.product h1.product_title{
	font: 600 clamp(28px, 3vw, 38px)/1.15 var(--sy-font) !important; color: var(--sy-ink) !important; letter-spacing: -.01em; margin: 0 0 12px !important;
}
body.single-product div.product .summary p.price{
	display: flex !important; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; margin: 0 0 4px !important;
	font: 600 26px/1.2 var(--sy-font) !important; color: var(--sy-blue) !important;
}
body.single-product div.product .summary p.price .amount{ font: inherit !important; color: inherit !important; }
body.single-product div.product .summary p.price .woocommerce-price-suffix{ font: 400 13px/1.2 var(--sy-font) !important; color: #8a93a6 !important; }
body.single-product div.product .summary .product-border{ margin: 18px 0 !important; border-top: 1px solid #eceef3 !important; height: 0 !important; }

/* short description → spec list */
body.single-product div.product .woocommerce-product-details__short-description{
	background: #f8f9fc; border: 1px solid #eef0f5; border-radius: 18px; padding: 6px 20px !important; margin: 0 0 22px !important;
}
body.single-product div.product .woocommerce-product-details__short-description > *{
	margin: 0 !important; padding: 12px 0 !important; border-bottom: 1px dashed #e3e6ee;
	font: 400 15px/1.55 var(--sy-font) !important; color: #374151 !important;
}
body.single-product div.product .woocommerce-product-details__short-description > *:last-child{ border-bottom: 0; }
body.single-product div.product .woocommerce-product-details__short-description ul{ padding-left: 0 !important; list-style: none !important; }
body.single-product div.product .woocommerce-product-details__short-description ul li{ margin: 0 0 4px !important; }
body.single-product div.product .woocommerce-product-details__short-description:not(:has(*:not(:empty))){ display: none; }

/* variations */
body.single-product div.product form.cart{ margin: 0 !important; }
body.single-product div.product table.variations{ width: 100%; margin: 0 0 16px !important; border: 0 !important; }
body.single-product div.product table.variations tr{ display: flex; flex-direction: column; gap: 8px; margin-bottom: 12px; }
body.single-product div.product table.variations th,
body.single-product div.product table.variations td{ display: block; padding: 0 !important; border: 0 !important; text-align: left !important; width: 100% !important; }
body.single-product div.product table.variations th.label,
body.single-product div.product table.variations td.label{ font: 600 13px/1.2 var(--sy-font) !important; color: var(--sy-ink) !important; letter-spacing: .04em; text-transform: uppercase; }
body.single-product div.product table.variations select{
	width: 100% !important; height: 50px !important; padding: 0 44px 0 16px !important; border-radius: 14px !important;
	border: 1.5px solid #dfe3ec !important; background-color: #fff !important; color: var(--sy-ink) !important;
	font: 500 15px/1 var(--sy-font) !important; cursor: pointer;
}
body.single-product div.product table.variations select:focus{ border-color: var(--sy-blue) !important; outline: 0; box-shadow: 0 0 0 4px rgba(0,0,255,.10) !important; }
body.single-product div.product table.variations .select-arrow,
body.single-product div.product table.variations .avada-select-wrapper .select-arrow{ height: 48px !important; line-height: 48px !important; right: 6px !important; color: var(--sy-blue) !important; background: transparent !important; border: 0 !important; }
body.single-product div.product .reset_variations{ display: inline-block; margin-top: 6px; font: 500 13px/1 var(--sy-font); color: #6b7280 !important; }
body.single-product div.product .woocommerce-variation-price{ margin: 0 0 10px; }
body.single-product div.product .woocommerce-variation-price .price{ font: 600 22px/1.2 var(--sy-font) !important; color: var(--sy-blue) !important; }

/* qty + add to cart */
body.single-product div.product .woocommerce-variation-add-to-cart,
body.single-product div.product form.cart:not(.variations_form){ display: flex !important; flex-wrap: wrap; gap: 12px; align-items: stretch; }
body.single-product div.product .quantity{
	display: inline-flex !important; align-items: center; height: 54px !important; margin: 0 !important; float: none !important;
	border: 1.5px solid #dfe3ec; border-radius: 999px; overflow: hidden; background: #fff;
}
body.single-product div.product .quantity input{
	height: 100% !important; border: 0 !important; background: transparent !important; box-shadow: none !important;
	font: 600 16px/1 var(--sy-font) !important; color: var(--sy-ink) !important;
}
body.single-product div.product .quantity input.qty{ width: 44px !important; }
body.single-product div.product .quantity input.minus,
body.single-product div.product .quantity input.plus{ width: 44px !important; color: var(--sy-blue) !important; font-size: 20px !important; cursor: pointer; }
body.single-product div.product .quantity input.minus:hover,
body.single-product div.product .quantity input.plus:hover{ background: var(--sy-blue-soft) !important; }
body.single-product div.product button.single_add_to_cart_button{
	flex: 1 1 200px; height: 54px !important; margin: 0 !important; float: none !important; border-radius: 999px !important; border: 0 !important;
	background: var(--sy-blue) !important; color: #fff !important; font: 600 15.5px/1 var(--sy-font) !important; letter-spacing: .02em; text-transform: none !important;
	box-shadow: 0 14px 28px -14px rgba(0,0,255, .3) !important; transition: transform .2s ease, background .2s ease;
}
body.single-product div.product button.single_add_to_cart_button:hover{ background: #2a2aff !important; transform: translateY(-1px); }
body.single-product div.product button.single_add_to_cart_button.disabled{ opacity: .55 !important; }

/* WhatsApp help + trust strip */
.sy-pd-help{ margin: 18px 0 0; }
a.sy-pd-wa{
	display: flex; align-items: center; justify-content: center; gap: 10px; height: 54px; border-radius: 999px;
	border: 1.5px solid #25d366; color: #128c4b !important; background: #effcf4; text-decoration: none !important;
	font: 600 15px/1 var(--sy-font); transition: background .2s ease, color .2s ease;
}
a.sy-pd-wa svg{ width: 22px; height: 22px; }
a.sy-pd-wa:hover{ background: #25d366; color: #fff !important; }
ul.sy-pd-trust{ list-style: none !important; margin: 18px 0 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
ul.sy-pd-trust li{
	margin: 0 !important; padding: 14px 12px !important; border-radius: 16px; background: #f8f9fc; border: 1px solid #eef0f5;
	display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center;
	font: 500 12.5px/1.35 var(--sy-font); color: #4b5563;
}
ul.sy-pd-trust li::before{ display: none !important; }
ul.sy-pd-trust svg{ width: 22px; height: 22px; fill: none; stroke: var(--sy-blue); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

/* meta */
body.single-product div.product .product_meta{
	margin: 22px 0 0 !important; padding: 18px 0 0 !important; border-top: 1px solid #eceef3 !important;
	display: flex; flex-wrap: wrap; gap: 8px 22px; font: 400 13.5px/1.5 var(--sy-font) !important; color: #8a93a6 !important;
}
body.single-product div.product .product_meta > span{ display: inline !important; border: 0 !important; padding: 0 !important; }
body.single-product div.product .product_meta span span,
body.single-product div.product .product_meta a{ color: var(--sy-ink) !important; font-weight: 500; }
body.single-product div.product .product_meta a:hover{ color: var(--sy-blue) !important; }

/* tabs */
body.single-product div.product .woocommerce-tabs{
	margin: 26px 0 0 !important; background: #fff; border: 1px solid #eceef3; border-radius: 26px; padding: 14px 32px 30px; box-shadow: 0 24px 50px -36px rgba(11,17,32, .15);
}
body.single-product div.product .woocommerce-tabs ul.tabs{
	float: none !important; width: 100% !important; display: flex !important; flex-wrap: wrap; gap: 6px; margin: 0 0 20px !important; padding: 12px 0 0 !important;
	border: 0 !important; border-bottom: 1px solid #eceef3 !important;
}
body.single-product div.product .woocommerce-tabs ul.tabs li{ float: none !important; width: auto !important; margin: 0 !important; border: 0 !important; background: none !important; }
body.single-product div.product .woocommerce-tabs ul.tabs li a{
	display: block; padding: 12px 18px !important; border: 0 !important; border-bottom: 2px solid transparent !important; margin-bottom: -1px;
	background: none !important; font: 600 15px/1.2 var(--sy-font) !important; color: #6b7280 !important;
}
body.single-product div.product .woocommerce-tabs ul.tabs li.active a,
body.single-product div.product .woocommerce-tabs ul.tabs li a:hover{ color: var(--sy-blue) !important; border-bottom-color: var(--sy-blue) !important; }
body.single-product div.product .woocommerce-tabs .panel{
	float: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important;
}
body.single-product div.product .woocommerce-tabs .panel > h2:first-child,
body.single-product div.product .woocommerce-tabs .panel h3.fusion-woocommerce-tab-title{ display: none !important; }
body.single-product div.product table.shop_attributes{ width: 100%; border: 0 !important; border-collapse: separate !important; border-spacing: 0; margin: 0 !important; }
body.single-product div.product table.shop_attributes tr th,
body.single-product div.product table.shop_attributes tr td{
	padding: 14px 18px !important; border: 0 !important; border-bottom: 1px solid #eef0f5 !important; background: none !important;
	font: 400 15px/1.55 var(--sy-font) !important; color: #374151 !important; text-align: left; vertical-align: top;
}
body.single-product div.product table.shop_attributes tr th{ width: 28%; font-weight: 600 !important; color: var(--sy-ink) !important; background: #f8f9fc !important; border-radius: 0; }
body.single-product div.product table.shop_attributes tr:last-child > *{ border-bottom: 0 !important; }
body.single-product div.product table.shop_attributes td p{ margin: 0 !important; }

/* share — compact icon chips */
body.single-product div.product ul.social-share{
	display: flex !important; flex-wrap: wrap; align-items: center; gap: 10px; margin: 22px 0 0 !important; padding: 0 !important;
	border: 0 !important; background: none !important;
}
body.single-product div.product ul.social-share::before{ content: "Share"; font: 600 13px/1 var(--sy-font); color: #6b7280; letter-spacing: .08em; text-transform: uppercase; margin-right: 6px; }
body.single-product div.product ul.social-share li{ width: auto !important; flex: none !important; padding: 0 !important; margin: 0 !important; border: 0 !important; }
body.single-product div.product ul.social-share li a{ display: inline-flex !important; align-items: center; justify-content: center; width: 42px; height: 42px; padding: 0 !important; border-radius: 50%; background: #fff; border: 1px solid #e3e6ee; transition: background .2s ease, border-color .2s ease; }
body.single-product div.product ul.social-share li a:hover{ background: var(--sy-blue-soft); border-color: var(--sy-blue); }
body.single-product div.product ul.social-share .fusion-woo-social-share-text{ display: none !important; }
body.single-product div.product ul.social-share i.fontawesome-icon{ margin: 0 !important; width: auto !important; height: auto !important; line-height: 1 !important; background: none !important; border: 0 !important; color: var(--sy-blue) !important; font-size: 16px !important; }

/* related */
body.single-product div.product section.related{ margin: var(--sy-gap) 0 0 !important; }
body.single-product div.product section.related > .fusion-title{ justify-content: center; margin-bottom: 26px !important; }
body.single-product div.product section.related > .fusion-title h2{ font: 600 clamp(24px, 2.6vw, 32px)/1.2 var(--sy-font) !important; color: var(--sy-ink) !important; text-align: center; }
body.single-product div.product section.related > .fusion-title .title-sep-container,
body.single-product div.product section.related > .fusion-title .awb-title-spacer{ display: none !important; }
body.single-product div.product section.related ul.products{ display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; margin: 0 !important; }
body.single-product div.product section.related ul.products li.product{ width: auto !important; margin: 0 !important; padding: 0 !important; float: none !important; }

@media (max-width: 1024px){
	body.single-product div.product section.related ul.products{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
	body.single-product div.product .summary-container{ padding: 28px !important; }
}
@media (max-width: 860px){
	body.single-product div.product.type-product{ grid-template-columns: 1fr; gap: 20px; }
	body.single-product div.product .avada-single-product-gallery-wrapper{ position: static; }
	body.single-product div.product section.related ul.products{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
}
@media (max-width: 560px){
	body.single-product #main > .fusion-row{ padding: 0 14px !important; }
	body.single-product div.product .woocommerce-product-gallery{ padding: 12px; border-radius: 20px; }
	body.single-product div.product .summary-container{ padding: 22px 18px !important; border-radius: 20px; }
	body.single-product div.product .woocommerce-tabs{ padding: 8px 18px 22px; border-radius: 20px; }
	body.single-product div.product table.shop_attributes tr th{ width: 40%; }
	ul.sy-pd-trust{ grid-template-columns: 1fr; }
	ul.sy-pd-trust li{ flex-direction: row; text-align: left; padding: 12px 14px !important; }
}
body.single-product div.product > .fusion-clearfix{ display: none !important; }
/* product fixes: empty variation rows, select chevron, zoom icon, trust strip */
body.single-product div.product table.variations tr:not(:has(select)):not(:has(.single_variation)){ display: none !important; }
body.single-product div.product table.variations tr:has(.single_variation){ margin: 0 !important; gap: 0; }
body.single-product div.product table.variations tr:has(.single_variation) > td.label{ display: none !important; }
body.single-product div.product table.variations tr:last-child{ margin-bottom: 0 !important; }
body.single-product div.product table.variations{ margin-bottom: 18px !important; }
body.single-product div.product table.variations .select-arrow{
	font-size: 0 !important; width: 44px !important; pointer-events: none;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230000ff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat 50% 50% / 18px 18px !important;
}
body.single-product div.product table.variations .select-arrow::before,
body.single-product div.product table.variations .select-arrow::after{ display: none !important; content: none !important; }
body.single-product div.product table.variations select{ -webkit-appearance: none; appearance: none; }
body.single-product div.product .woocommerce-product-gallery__trigger{
	font-size: 0 !important; text-indent: -9999px; overflow: hidden;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111827' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5M11 8v6M8 11h6'/%3E%3C/svg%3E") no-repeat 50% 50% / 20px 20px !important;
}
body.single-product div.product .woocommerce-product-gallery__trigger::before,
body.single-product div.product .woocommerce-product-gallery__trigger::after{ display: none !important; }
ul.sy-pd-trust li{ flex-direction: row !important; text-align: left !important; justify-content: flex-start; padding: 12px !important; font-size: 12.5px !important; }
ul.sy-pd-trust svg{ flex: none; }
body.single-product div.product .avada-single-product-gallery-wrapper{ position: relative !important; top: auto !important; }
body.single-product div.product section.related ul.products{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 860px){ body.single-product div.product section.related ul.products{ grid-template-columns: repeat(2, minmax(0, 1fr)); } }
body.single-product div.product section.related ul.products::before,
body.single-product div.product section.related ul.products::after{ display: none !important; content: none !important; }
body.single-product div.product section.related ul.products li.product .fusion-image-wrapper{ display: block !important; aspect-ratio: 1 / 1; overflow: hidden; }
body.single-product div.product section.related ul.products li.product .fusion-image-wrapper img{ width: 100% !important; height: 100% !important; object-fit: cover; }
ul.sy-pd-trust{ grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important; }
body.single-product div.product .summary p.stock{
	display: inline-flex !important; align-items: center; gap: 8px; margin: 4px 0 6px !important; padding: 8px 14px !important; border-radius: 999px;
	background: #fff7e6; color: #b45309 !important; font: 600 13.5px/1 var(--sy-font) !important;
}
body.single-product div.product .summary p.stock::before{ content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
body.single-product div.product .summary p.stock.in-stock{ background: #eaf7ee; color: #15803d !important; }
body.single-product div.product .summary p.stock.out-of-stock{ background: #fdecec; color: #b91c1c !important; }

/* 29. Shop list view (product_view=list) — horizontal product cards */
.sy-lv-more{ display: none; }
body #main ul.products li.product.product-list-view{ width: 100% !important; margin: 0 0 18px !important; padding: 0 !important; }
body #main ul.products li.product.product-list-view .fusion-product-wrapper{
	display: grid !important; grid-template-columns: 220px minmax(0, 1fr); grid-template-rows: auto 1fr; column-gap: 28px;
	align-items: start; padding: 18px !important; background: #fff; border: 1px solid #eceef3 !important; border-radius: 22px !important;
	box-shadow: 0 18px 40px -30px rgba(11,17,32, .15) !important; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
body #main ul.products li.product.product-list-view .fusion-product-wrapper:hover{ transform: translateY(-3px); border-color: #d9ddf5 !important; box-shadow: 0 24px 46px -28px rgba(11,17,32, .2) !important; }
body #main ul.products li.product.product-list-view .fusion-clean-product-image-wrapper{
	grid-row: 1 / span 2; width: 220px !important; float: none !important; margin: 0 !important; border-radius: 16px; overflow: hidden; background: #f3f4f8;
}
body #main ul.products li.product.product-list-view .fusion-image-wrapper{ display: block !important; aspect-ratio: 1 / 1; }
body #main ul.products li.product.product-list-view .fusion-image-wrapper img{ width: 100% !important; height: 100% !important; object-fit: cover; border-radius: 0 !important; }
body #main ul.products li.product.product-list-view .fusion-product-content{ grid-column: 2; padding: 8px 0 0 !important; float: none !important; width: auto !important; }
body #main ul.products li.product.product-list-view .product-details-container{ padding: 0 !important; text-align: left !important; }
body #main ul.products li.product.product-list-view .product-title,
body #main ul.products li.product.product-list-view .product-title a{ font: 600 21px/1.25 var(--sy-font) !important; color: var(--sy-ink) !important; margin: 0 0 8px !important; }
body #main ul.products li.product.product-list-view .product-title a:hover{ color: var(--sy-blue) !important; }
body #main ul.products li.product.product-list-view .price{ font: 600 18px/1.3 var(--sy-font) !important; color: var(--sy-blue) !important; }
body #main ul.products li.product.product-list-view .price .woocommerce-price-suffix{ display: inline !important; margin-left: 6px; font: 400 12.5px/1 var(--sy-font) !important; color: #8a93a6 !important; }
body #main ul.products li.product.product-list-view .product-excerpt{
	grid-column: 2; display: flex !important; flex-direction: column; align-items: flex-start; gap: 16px;
	float: none !important; width: auto !important; margin: 14px 0 0 !important; padding: 14px 0 0 !important; border-top: 1px dashed #e3e6ee;
}
body #main ul.products li.product.product-list-view .product-excerpt .fusion-content-sep{ display: none !important; }
body #main ul.products li.product.product-list-view .product-excerpt .post-content,
body #main ul.products li.product.product-list-view .product-excerpt .post-content *{
	font: 400 14.5px/1.65 var(--sy-font) !important; color: #6b7280 !important; margin: 0 !important; padding: 0 !important; display: inline !important;
}
body #main ul.products li.product.product-list-view .product-excerpt-container{
	display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; max-width: 680px;
}
body #main ul.products li.product.product-list-view .product-buttons{ display: none !important; }
body #main ul.products li.product.product-list-view .sy-lv-more{
	grid-column: 2; justify-self: start; display: inline-flex; align-items: center; gap: 6px; margin-top: 16px; padding: 11px 20px; border-radius: 999px;
	background: var(--sy-blue-soft); color: var(--sy-blue) !important; font: 600 14px/1 var(--sy-font); text-decoration: none !important; transition: background .2s, color .2s;
}
body #main ul.products li.product.product-list-view .sy-lv-more:hover{ background: var(--sy-blue); color: #fff !important; }
@media (max-width: 640px){
	body #main ul.products li.product.product-list-view .fusion-product-wrapper{ grid-template-columns: 110px minmax(0, 1fr); column-gap: 16px; padding: 12px !important; }
	body #main ul.products li.product.product-list-view .fusion-clean-product-image-wrapper{ width: 110px !important; }
	body #main ul.products li.product.product-list-view .product-title, body #main ul.products li.product.product-list-view .product-title a{ font-size: 17px !important; }
	body #main ul.products li.product.product-list-view .product-excerpt{ display: none !important; }
	body #main ul.products li.product.product-list-view .sy-lv-more{ margin-top: 10px; padding: 9px 14px; font-size: 13px; }
}
body #main ul.products li.product.product-list-view{ position: relative; }
body #main ul.products li.product.product-list-view .fusion-product-wrapper{ min-height: 256px; padding-bottom: 76px !important; }
body #main ul.products li.product.product-list-view .fusion-clean-product-image-wrapper{ max-width: none !important; min-width: 220px; }
body #main ul.products li.product.product-list-view .fusion-image-wrapper{ width: 100% !important; max-width: none !important; }
body #main ul.products li.product.product-list-view .sy-lv-more{ position: absolute; left: 266px; bottom: 22px; margin: 0; }
@media (max-width: 640px){
	body #main ul.products li.product.product-list-view .fusion-clean-product-image-wrapper{ min-width: 110px; }
	body #main ul.products li.product.product-list-view .fusion-product-wrapper{ min-height: 0; padding-bottom: 58px !important; }
	body #main ul.products li.product.product-list-view .sy-lv-more{ left: 138px; bottom: 14px; }
}
body #main ul.products li.product.product-list-view .fusion-product-content,
body #main ul.products li.product.product-list-view .product-details,
body #main ul.products li.product.product-list-view .product-details-container,
body #main ul.products li.product.product-list-view .product-title{ padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; }
body #main ul.products li.product.product-list-view .fusion-price-rating{ padding: 0 !important; margin: 0 !important; }
body #main ul.products li.product.product-list-view .product-excerpt{ width: 100% !important; max-width: none !important; margin-top: 16px !important; padding-top: 14px !important; gap: 0; }
body #main ul.products li.product.product-list-view .product-excerpt-container,
body #main ul.products li.product.product-list-view .product-excerpt .post-content{ width: 100% !important; margin: 0 !important; padding: 0 !important; line-height: 1.6 !important; }
body #main ul.products li.product.product-list-view .product-excerpt .post-content p{ display: inline !important; margin: 0 0 0 6px !important; line-height: 1.6 !important; }
/* list view v2: spec cards + button flow right under them; text block centred beside the image */
body #main ul.products li.product.product-list-view .fusion-product-wrapper{
	min-height: 0 !important; padding: 18px !important; grid-template-rows: 1fr auto auto 1fr !important; row-gap: 0;
}
body #main ul.products li.product.product-list-view .fusion-clean-product-image-wrapper{ grid-row: 1 / -1 !important; align-self: center; }
body #main ul.products li.product.product-list-view .fusion-product-content{ grid-row: 2 !important; padding-top: 0 !important; }
body #main ul.products li.product.product-list-view .product-excerpt{ grid-row: 3 !important; }
body #main ul.products li.product.product-list-view .product-excerpt-container{ display: block !important; -webkit-line-clamp: unset; overflow: visible; max-width: none; }
body #main ul.products li.product.product-list-view .product-excerpt .post-content{ display: block !important; }
body #main ul.products li.product.product-list-view .product-excerpt .post-content .sy-lv-specs{
	display: flex !important; flex-wrap: wrap; gap: 10px;
}
body #main ul.products li.product.product-list-view .product-excerpt .post-content .sy-lv-spec{
	display: inline-flex !important; flex-direction: column; gap: 3px; padding: 10px 14px !important; border-radius: 14px;
	background: #f6f7fb; border: 1px solid #eceef3; max-width: 100%;
}
body #main ul.products li.product.product-list-view .product-excerpt .post-content .sy-lv-spec__k{
	display: block !important; font: 600 10.5px/1.2 var(--sy-font) !important; letter-spacing: .12em; text-transform: uppercase; color: #8a93a6 !important;
}
body #main ul.products li.product.product-list-view .product-excerpt .post-content .sy-lv-spec__v{
	display: block !important; font: 600 14px/1.4 var(--sy-font) !important; color: var(--sy-ink) !important;
}
body #main ul.products li.product.product-list-view .product-excerpt .post-content .sy-lv-text{ display: block !important; font: 400 14.5px/1.6 var(--sy-font) !important; color: #6b7280 !important; }
body #main ul.products li.product.product-list-view .product-excerpt .post-content a.sy-lv-btn{
	display: inline-flex !important; align-items: center; gap: 6px; margin: 16px 0 0 !important; padding: 11px 20px !important; border-radius: 999px;
	background: var(--sy-blue-soft); color: var(--sy-blue) !important; font: 600 14px/1 var(--sy-font) !important; text-decoration: none !important; transition: background .2s, color .2s;
}
body #main ul.products li.product.product-list-view .product-excerpt .post-content a.sy-lv-btn span{ display: inline !important; color: inherit !important; font: inherit !important; }
body #main ul.products li.product.product-list-view .product-excerpt .post-content a.sy-lv-btn:hover{ background: var(--sy-blue); color: #fff !important; }
@media (max-width: 640px){
	body #main ul.products li.product.product-list-view .fusion-product-wrapper{ padding: 12px !important; }
	body #main ul.products li.product.product-list-view .product-excerpt{ display: flex !important; grid-column: 1 / -1 !important; grid-row: 5 !important; }
	body #main ul.products li.product.product-list-view .fusion-clean-product-image-wrapper{ grid-row: 1 / 5 !important; }
}

/* original logo restored (attachment 3200, Sunyu-Logo.png 633x465 with wide transparent margins):
   crop the empty margin in the box so the oval shows at a proper size */
.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img[src*="Sunyu-Logo"]{
	width: 176px !important; height: 88px !important; max-height: none !important; max-width: none !important; object-fit: cover; object-position: 50% 50%;
}
.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe:has(img[src*="Sunyu-Logo"]){ max-width: none !important; }
@media (max-width: 1024px){
	.fusion-tb-header .fusion-layout-column:has(.fusion-imageframe) .fusion-imageframe img[src*="Sunyu-Logo"]{ width: 124px !important; height: 62px !important; }
}
.sy-footer__logo img[src*="Sunyu-Logo"]{ width: 180px !important; height: 90px !important; object-fit: cover; object-position: 50% 50%; }

/* 30. Footer — curved (wave) top edge. The curve is cut out with a mask, so whatever section sits above shows through;
       the footer slides up by the wave height so the curve overlaps that section's bottom padding. */
footer.sy-footer{
	padding-top: var(--sy-wave-h) !important;
	--sy-wave-h: 70px;
	position: relative; z-index: 2;
	margin-top: calc(0px - var(--sy-wave-h)) !important;
	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath d='M0 46 C 200 8, 420 4, 640 26 S 1080 70, 1260 38 S 1400 12, 1440 18 L1440 70 L0 70 Z' fill='%23000'/%3E%3C/svg%3E") top left / 100% var(--sy-wave-h) no-repeat,
		linear-gradient(#000, #000) left var(--sy-wave-h) / 100% calc(100% - var(--sy-wave-h)) no-repeat;
	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath d='M0 46 C 200 8, 420 4, 640 26 S 1080 70, 1260 38 S 1400 12, 1440 18 L1440 70 L0 70 Z' fill='%23000'/%3E%3C/svg%3E") top left / 100% var(--sy-wave-h) no-repeat,
		linear-gradient(#000, #000) left var(--sy-wave-h) / 100% calc(100% - var(--sy-wave-h)) no-repeat;
}

@media (max-width: 800px){ footer.sy-footer{ --sy-wave-h: 40px; } }
.fusion-tb-footer{ clear: both; width: 100%; }
footer.sy-footer{ width: 100%; clear: both; }

/* 30b. Footer top edge: zig-zag instead of the wave (repeating 36x18 teeth) */
footer.sy-footer{
	--sy-wave-h: 18px;
	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 18 L18 0 L36 18 Z' fill='%23000'/%3E%3C/svg%3E") top left / 36px var(--sy-wave-h) repeat-x,
		linear-gradient(#000, #000) left var(--sy-wave-h) / 100% calc(100% - var(--sy-wave-h)) no-repeat !important;
	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 18 L18 0 L36 18 Z' fill='%23000'/%3E%3C/svg%3E") top left / 36px var(--sy-wave-h) repeat-x,
		linear-gradient(#000, #000) left var(--sy-wave-h) / 100% calc(100% - var(--sy-wave-h)) no-repeat !important;
}
@media (max-width: 800px){ footer.sy-footer{ --sy-wave-h: 14px; } }
/* 30c. tinier zig-zag teeth (16x8) */
footer.sy-footer{ --sy-wave-h: 8px; -webkit-mask-size: 16px var(--sy-wave-h), 100% calc(100% - var(--sy-wave-h)) !important; mask-size: 16px var(--sy-wave-h), 100% calc(100% - var(--sy-wave-h)) !important; }
@media (max-width: 800px){ footer.sy-footer{ --sy-wave-h: 7px; -webkit-mask-size: 14px var(--sy-wave-h), 100% calc(100% - var(--sy-wave-h)) !important; mask-size: 14px var(--sy-wave-h), 100% calc(100% - var(--sy-wave-h)) !important; } }

/* 31. Hero sections (home + all inner pages + Edge Banding banner): same tiny zig-zag along the bottom edge (16x8 teeth) */
.sy-about-hero,
.page-id-10024 #main .post-content > .fusion-fullwidth:first-child{
	--sy-zz-h: 8px;
	-webkit-mask:
		linear-gradient(#000, #000) left top / 100% calc(100% - var(--sy-zz-h) + 1px) no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L36 0 L18 18 Z' fill='%23000'/%3E%3C/svg%3E") left bottom / 16px var(--sy-zz-h) repeat-x;
	mask:
		linear-gradient(#000, #000) left top / 100% calc(100% - var(--sy-zz-h) + 1px) no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L36 0 L18 18 Z' fill='%23000'/%3E%3C/svg%3E") left bottom / 16px var(--sy-zz-h) repeat-x;
}
@media (max-width: 800px){
	.sy-about-hero,
	.page-id-10024 #main .post-content > .fusion-fullwidth:first-child{
		--sy-zz-h: 7px;
		-webkit-mask-size: 100% calc(100% - var(--sy-zz-h) + 1px), 14px var(--sy-zz-h);
		mask-size: 100% calc(100% - var(--sy-zz-h) + 1px), 14px var(--sy-zz-h);
	}
}

/* 32. Image popups / lightboxes above the fixed header (header is z-index 99990) */
.pswp{ z-index: 2147483000 !important; }
.featherlight, .ilightbox-overlay, .ilightbox-holder, .ilightbox-toolbar, .ilightbox-thumbnails, .ilightbox-button,
.fancybox-container, .awb-lightbox, .fusion-lightbox{ z-index: 2147483000 !important; }
.ilightbox-holder, .ilightbox-toolbar, .ilightbox-thumbnails, .ilightbox-button{ z-index: 2147483001 !important; }

/* 33. Full-width coloured bands (Why Sunyu on Home/Services, About story band): tiny zig-zag on top AND bottom edges */
.sy-why,
.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6){
	--sy-zz-h: 8px; --sy-zz-w: 16px;
	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 18 L18 0 L36 18 Z' fill='%23000'/%3E%3C/svg%3E") left top / var(--sy-zz-w) var(--sy-zz-h) repeat-x,
		linear-gradient(#000, #000) left var(--sy-zz-h) / 100% calc(100% - 2 * var(--sy-zz-h) + 2px) no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L36 0 L18 18 Z' fill='%23000'/%3E%3C/svg%3E") left bottom / var(--sy-zz-w) var(--sy-zz-h) repeat-x;
	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 18 L18 0 L36 18 Z' fill='%23000'/%3E%3C/svg%3E") left top / var(--sy-zz-w) var(--sy-zz-h) repeat-x,
		linear-gradient(#000, #000) left var(--sy-zz-h) / 100% calc(100% - 2 * var(--sy-zz-h) + 2px) no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L36 0 L18 18 Z' fill='%23000'/%3E%3C/svg%3E") left bottom / var(--sy-zz-w) var(--sy-zz-h) repeat-x;
}
@media (max-width: 800px){
	.sy-why,
	.page-id-17 #main .post-content > .fusion-fullwidth:nth-child(6){ --sy-zz-h: 7px; --sy-zz-w: 14px; }
}

/* 34. Replacements for removed plugins: floating social icons, WhatsApp chat button, category accordion */
.sy-float-social{ position: fixed; left: 16px; bottom: 150px; z-index: 9990; display: flex; flex-direction: column; gap: 10px; }
.sy-fs{ display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; color: #fff !important; text-decoration: none !important;
	box-shadow: 0 8px 18px -8px rgba(11,17,32,.35); transition: transform .2s ease; }
.sy-fs svg{ width: 21px; height: 21px; }
.sy-fs:hover{ transform: translateY(-2px) scale(1.05); }
.sy-fs--fb{ background: #1877f2; }
.sy-fs--ig{ background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 60%, #285aeb 90%); }
.sy-wa-float{ position: fixed; right: 15px; bottom: 15px; z-index: 9991; display: flex; align-items: center; gap: 10px; text-decoration: none !important; }
.sy-wa-float__label{ background: #fff; color: #374151; font: 400 13px/1 var(--sy-font); padding: 10px 14px; border-radius: 10px; box-shadow: 0 10px 24px -12px rgba(11,17,32,.35); white-space: nowrap; }
.sy-wa-float__label strong{ color: #111827; font-weight: 600; }
.sy-wa-float__btn{ display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: #2db742; color: #fff; box-shadow: 0 12px 26px -12px rgba(45,183,66,.7); transition: transform .2s ease; }
.sy-wa-float__btn svg{ width: 30px; height: 30px; }
.sy-wa-float:hover .sy-wa-float__btn{ transform: scale(1.06); }
@media (max-width: 640px){
	.sy-wa-float__label{ display: none; }
	.sy-float-social{ left: 10px; bottom: 90px; gap: 8px; }
	.sy-fs{ width: 36px; height: 36px; }
	.sy-fs svg{ width: 18px; height: 18px; }
}
.sy-catmenu .iksm-terms-tree--children{ display: none; }
.sy-catmenu .iksm-term--expanded > .iksm-terms-tree--children{ display: block; }
.sy-catmenu .iksm-term__inner{ display: flex !important; align-items: center; justify-content: space-between; gap: 6px; }
.sy-catmenu .iksm-term__link{ flex: 1; display: flex !important; align-items: center; min-width: 0; text-decoration: none !important; }
.sy-catmenu .iksm-term__shifts{ flex: none; display: inline-block; }
.sy-catmenu .iksm-term__toggle{ flex: none; display: grid; place-items: center; width: 30px; height: 30px; padding: 0 !important; border: 0 !important; border-radius: 8px; background: transparent !important; color: #8a93a6; cursor: pointer; }
.sy-catmenu .iksm-term__toggle:hover{ background: var(--sy-blue-soft) !important; color: var(--sy-blue); }
.sy-catmenu .iksm-term__toggle svg{ width: 16px; height: 16px; transition: transform .25s ease; }
.sy-catmenu .iksm-term--expanded > .iksm-term__inner > .iksm-term__toggle svg{ transform: rotate(180deg); }
.sy-catmenu .iksm-term--current > .iksm-term__inner .iksm-term__text{ color: var(--sy-blue); font-weight: 600; }

/* 35. Furniture catalogues: heading block + two different card shades */
.page-id-15 #main .sy-cat-head{ margin: 0 auto 40px !important; }
.page-id-15 #main .sy-cat-head .sy-svc__title{ font-size: clamp(30px, 3.4vw, 44px) !important; line-height: 1.15 !important; }
.page-id-15 #main .sy-cat-head .sy-svc__lead{ font-size: 16.5px !important; }
.page-id-15 #main .fusion-text:has(> .sy-cat-head){ --awb-font-size: 16px !important; }
/* card 1 (E³ SPACE): cool blue tint */
.sy-cat[data-cat="11154"] .sy-cat__poster{
	background: radial-gradient(640px 420px at 18% 30%, #dfe3ff 0%, rgba(223,227,255,0) 70%), linear-gradient(140deg, #f2f4ff 0%, #ffffff 65%) !important;
	border-color: #dfe3fb !important;
}
/* card 2 (Sunyu hardware): warm gold tint */
.sy-cat[data-cat="11412"] .sy-cat__poster{
	background: radial-gradient(640px 420px at 18% 30%, #f6eccb 0%, rgba(246,236,203,0) 70%), linear-gradient(140deg, #fbf7ea 0%, #ffffff 65%) !important;
	border-color: #efe5c4 !important;
}
.sy-cat[data-cat="11412"] .sy-cat__eyebrow{ background: #f3ead0 !important; color: #8a7a3c !important; }
.page-id-15 #main .sy-cat-head p.sy-svc__lead{ font: 400 16.5px/1.7 var(--sy-font) !important; color: var(--sy-muted) !important; max-width: 560px; margin: 12px auto 0 !important; }
.page-id-15 #main .sy-cat-head h2.sy-svc__title{ margin: 14px 0 0 !important; }
.page-id-15 #main .sy-cat-head .sy-cat-lead{ display: block; font: 400 16.5px/1.7 var(--sy-font) !important; color: var(--sy-muted) !important; max-width: 560px; margin: 12px auto 0 !important; }

/* 36. Custom Design Special Handle page (10802) — reuses the Pureco (.sy-pc) blocks */
.sy-ch .sy-ch-label{ display: block; margin: 0 0 12px; font: 600 12px/1 var(--sy-font); letter-spacing: .14em; text-transform: uppercase; color: var(--sy-ink); }
.sy-ch .sy-pc-intro__media img{ aspect-ratio: 4 / 4.4; }
.sy-ch .sy-ch-feat{ padding-top: var(--sy-gap) !important; }
/* 5 feature cards: 3 + 2 centred on desktop */
@media (min-width: 1025px){
	.sy-pc ul.sy-ch-feat__grid{ grid-template-columns: repeat(6, minmax(0, 1fr)); }
	.sy-pc ul.sy-ch-feat__grid > li{ grid-column: span 2; }
	.sy-pc ul.sy-ch-feat__grid > li:nth-child(4){ grid-column: 2 / span 2; }
	.sy-pc ul.sy-ch-feat__grid > li:nth-child(5){ grid-column: 4 / span 2; }
}
/* examples gallery + what you can customise */
.sy-ch-work{ background: #f6f7fb; width: calc(100vw - var(--sy-sbw, 0px)); max-width: none !important;
	margin-left: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2) !important; margin-right: calc(50% - (100vw - var(--sy-sbw, 0px)) / 2) !important; }
.sy-ch-work__grid{ display: grid; grid-template-columns: 1.1fr 1fr; gap: 56px; align-items: center; }
.sy-ch-work__gallery{ display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 150px; gap: 12px; }
.sy-ch-work__item{ margin: 0 !important; border-radius: 18px; overflow: hidden; background: #e9ebf1; }
.sy-ch-work__item img{ width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease; }
.sy-ch-work__item:hover img{ transform: scale(1.06); }
.sy-ch-work__item--1{ grid-row: span 2; }
.sy-ch-work__item--4{ grid-row: span 2; }
.sy-pc ol.sy-ch-steps{ list-style: none !important; margin: 22px 0 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 14px; }
.sy-pc ol.sy-ch-steps > li{ display: flex; gap: 16px; align-items: flex-start; margin: 0 !important; padding: 18px 20px !important; background: #fff; border: 1px solid #eceef3; border-radius: 18px; }
.sy-pc ol.sy-ch-steps > li::before{ display: none !important; }
.sy-ch-steps__num{ flex: none; display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 13px; background: var(--sy-blue); color: #fff; font: 600 14px/1 var(--sy-font); }
.sy-pc ol.sy-ch-steps > li:nth-child(2) .sy-ch-steps__num{ background: #9b8c50; }
.sy-pc ol.sy-ch-steps > li:nth-child(3) .sy-ch-steps__num{ background: #0e9f8e; }
.sy-pc ol.sy-ch-steps strong{ display: block; font: 600 17px/1.3 var(--sy-font); color: var(--sy-ink); margin-bottom: 4px; }
.sy-pc ol.sy-ch-steps p{ margin: 0 !important; font: 400 14.5px/1.65 var(--sy-font); color: var(--sy-muted); }
/* closing card */
.sy-ch-close{ padding-bottom: 0 !important; }
.sy-ch-close__card{ text-align: center; max-width: 900px; margin: 0 auto; padding: 48px 56px; border-radius: 28px;
	background: radial-gradient(600px 300px at 50% 0%, #f6eccb 0%, rgba(246,236,203,0) 70%), linear-gradient(160deg, #fbf7ea 0%, #ffffff 70%); border: 1px solid #efe5c4; }
.sy-ch-close__card .sy-svc__eyebrow{ background: #f3ead0; color: #8a7a3c; }
.sy-ch-close__card h2.sy-pc__title{ margin: 14px auto 14px !important; max-width: 640px; }
.sy-pc .sy-ch-close__card p{ margin: 0 auto !important; max-width: 700px; font: 400 16.5px/1.8 var(--sy-font); color: #4b5563; }
@media (max-width: 900px){
	.sy-ch-work__grid{ grid-template-columns: 1fr; gap: 36px; }
	.sy-ch-work__gallery{ grid-auto-rows: 120px; }
	.sy-ch-close__card{ padding: 32px 22px; }
}
@media (max-width: 560px){ .sy-ch-work__gallery{ grid-template-columns: repeat(2, 1fr); } .sy-ch-work__item--4{ grid-row: span 1; } }
.sy-ch-work__item--5{ grid-row: span 2; }
@media (max-width: 560px){ .sy-ch-work__item--5{ grid-row: span 1; } .sy-ch-work__item--1{ grid-row: span 1; } }

/* 37. Product category pages: banner above the shop grid; sidebar current item readable */
.sy-cat-hero{ min-height: 0 !important; padding: 110px 24px 100px !important; }
.sy-cat-hero .sy-about-hero__inner{ max-width: 860px; }
.sy-cat-hero .sy-about-hero__title{ font-size: clamp(34px, 4.4vw, 56px) !important; }
.sy-cat-hero__crumbs{ display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0 0 16px; font: 500 13px/1.4 var(--sy-font); color: rgba(255,255,255,.7); }
.sy-cat-hero__crumbs a{ color: rgba(255,255,255,.85) !important; text-decoration: none !important; }
.sy-cat-hero__crumbs a:hover{ color: #fff !important; }
.sy-cat-hero__crumbs span{ color: rgba(255,255,255,.45); }
.sy-cat-hero__meta{ display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 26px; }
.sy-cat-hero__count{ display: inline-flex; align-items: center; padding: 9px 16px; border-radius: 999px; background: #fff; color: var(--sy-blue); font: 600 13.5px/1 var(--sy-font); }
a.sy-cat-hero__chip{ display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border-radius: 999px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.28);
	color: #fff !important; font: 500 13.5px/1 var(--sy-font); text-decoration: none !important; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); transition: background .2s ease; }
a.sy-cat-hero__chip span{ display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; background: rgba(255,255,255,.2); font-size: 12px; }
a.sy-cat-hero__chip:hover{ background: rgba(255,255,255,.24); }
.tax-product_cat .woocommerce-products-header{ display: none !important; }
.tax-product_cat #main{ padding-top: 44px !important; }
@media (max-width: 640px){ .sy-cat-hero{ padding: 80px 18px 70px !important; } }
/* sidebar: current category stays readable on its blue highlight */
body.has-sidebar #sidebar .sy-catmenu .iksm-term--current > .iksm-term__inner .iksm-term__text,
body.has-sidebar #sidebar .sy-catmenu .iksm-term--current > .iksm-term__inner .iksm-term__toggle{ color: #fff !important; }

/* 38. "Sale!" badge — always inside the photo's top-left corner (grid + list view), cleaner pill */
body #main ul.products li.product .onsale{
	top: 12px !important; left: 12px !important; right: auto !important; bottom: auto !important; margin: 0 !important;
	min-width: 0 !important; min-height: 0 !important; width: auto !important; height: auto !important; line-height: 1 !important;
	padding: 7px 12px !important; border-radius: 999px !important; z-index: 6 !important;
	background: #e0362c !important; color: #fff !important; font: 600 11.5px/1 var(--sy-font) !important; letter-spacing: .06em; text-transform: uppercase;
	box-shadow: 0 6px 14px -8px rgba(224,54,44,.6) !important;
}
body #main ul.products li.product.product-list-view .onsale{ top: 30px !important; left: 30px !important; }
@media (max-width: 640px){ body #main ul.products li.product.product-list-view .onsale{ top: 20px !important; left: 20px !important; padding: 5px 9px !important; font-size: 10px !important; } }
/* list view: no specs → no dashed divider, button sits right under the price */
body #main ul.products li.product.product-list-view .product-excerpt:not(:has(.sy-lv-specs, .sy-lv-text)){ border-top: 0 !important; padding-top: 0 !important; margin-top: 4px !important; }

/* 39. 404 page */
.error404 #main{ padding: 0 !important; background: #f6f7fb; }
.error404 #main > .fusion-row{ max-width: none !important; padding: 0 !important; }
.sy-404{ max-width: 1200px; margin: 0 auto; padding: var(--sy-gap) 24px; }
.sy-404__hero{ text-align: center; max-width: 760px; margin: 0 auto; }
.sy-404__num{ display: flex; justify-content: center; align-items: center; gap: 10px; margin: 0 0 26px; font: 700 clamp(110px, 16vw, 190px)/0.9 var(--sy-font); letter-spacing: -.04em;
	background: linear-gradient(332deg, #9b8c50, #0000ff); -webkit-background-clip: text; background-clip: text; color: transparent; }
.sy-404__zero{ display: inline-block; width: .62em; height: .78em; border-radius: 50%; border: .13em solid #0000ff; position: relative;
	background: radial-gradient(circle at 50% 50%, #ffde59 0 18%, transparent 19%); animation: sy-404-spin 6s linear infinite; border-right-color: #9b8c50; }
@keyframes sy-404-spin{ to{ transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce){ .sy-404__zero{ animation: none; } }
h1.sy-404__title{ margin: 14px 0 12px !important; font: 600 clamp(28px, 3.4vw, 42px)/1.15 var(--sy-font) !important; color: var(--sy-ink) !important; }
.sy-404__lead{ margin: 0 auto 28px !important; max-width: 600px; font: 400 16.5px/1.7 var(--sy-font); color: var(--sy-muted); }
.sy-404__search{ position: relative; display: flex; align-items: center; max-width: 600px; margin: 0 auto; padding: 6px 6px 6px 50px; background: #fff;
	border: 1.5px solid #dfe3ec; border-radius: 999px; box-shadow: 0 18px 40px -30px rgba(11,17,32,.2); }
.sy-404__search:focus-within{ border-color: var(--sy-blue); box-shadow: 0 0 0 4px rgba(0,0,255,.1); }
.sy-404__search svg{ position: absolute; left: 18px; width: 20px; height: 20px; fill: none; stroke: #8a93a6; stroke-width: 2; stroke-linecap: round; }
.sy-404__search input[type=search]{ flex: 1; min-width: 0; height: 46px; border: 0 !important; background: transparent !important; box-shadow: none !important; outline: 0; padding: 0 !important; font: 400 15.5px/1 var(--sy-font) !important; color: var(--sy-ink); }
.sy-404__search button{ height: 46px; padding: 0 24px; border: 0; border-radius: 999px; background: var(--sy-blue); color: #fff; font: 600 14.5px/1 var(--sy-font); cursor: pointer; }
.sy-404__actions{ display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 22px; }
a.sy-404__btn{ display: inline-flex; align-items: center; justify-content: center; padding: 14px 26px; border-radius: 999px; border: 2px solid var(--sy-blue);
	background: var(--sy-blue); color: #fff !important; font: 600 15px/1 var(--sy-font); text-decoration: none !important; transition: transform .2s ease, background .2s ease; }
a.sy-404__btn:hover{ transform: translateY(-2px); }
a.sy-404__btn--ghost{ background: transparent; color: var(--sy-blue) !important; }
a.sy-404__btn--ghost:hover{ background: var(--sy-blue-soft); }
a.sy-404__btn--wa{ background: #2db742; border-color: #2db742; }
.sy-404__ranges{ margin-top: var(--sy-gap); }
h2.sy-404__h2{ text-align: center; margin: 0 0 24px !important; font: 600 24px/1.2 var(--sy-font) !important; color: var(--sy-ink) !important; }
.sy-404__grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
a.sy-404__card{ display: flex; flex-direction: column; background: #fff; border: 1px solid #eceef3; border-radius: 22px; overflow: hidden; text-decoration: none !important;
	transition: transform .25s ease, box-shadow .25s ease; box-shadow: 0 18px 40px -32px rgba(11,17,32,.2); }
a.sy-404__card:hover{ transform: translateY(-5px); box-shadow: 0 26px 50px -30px rgba(11,17,32,.25); }
.sy-404__card-img{ display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #eef0f4; }
.sy-404__card-img img{ width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease; }
a.sy-404__card:hover .sy-404__card-img img{ transform: scale(1.06); }
.sy-404__card-body{ display: flex; justify-content: space-between; align-items: center; padding: 16px 18px; }
.sy-404__card-title{ font: 600 17px/1.2 var(--sy-font); color: var(--sy-ink); }
.sy-404__card-more{ font: 600 13.5px/1 var(--sy-font); color: var(--sy-blue); }
.sy-404__help{ margin-top: 40px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; padding: 26px 30px; border-radius: 22px;
	background: radial-gradient(500px 200px at 0% 0%, #f6eccb 0%, rgba(246,236,203,0) 70%), #fff; border: 1px solid #efe5c4; }
.sy-404__help strong{ display: block; font: 600 19px/1.3 var(--sy-font); color: var(--sy-ink); margin-bottom: 4px; }
.sy-404__help span{ font: 400 15px/1.6 var(--sy-font); color: var(--sy-muted); }
.sy-404__help-actions{ display: flex; flex-wrap: wrap; gap: 10px; }
@media (max-width: 900px){ .sy-404__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px){ .sy-404__search{ padding-left: 44px; } .sy-404__search button{ padding: 0 16px; } .sy-404__help{ padding: 22px; } }
body.error404 .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){ --awb-margin-bottom: 0px !important; margin-bottom: 0 !important; }

/* 40. Collection + product category title band: blue gradient, title left-aligned, no photo */
.sy-cat-band{
	position: relative; overflow: hidden;
	background: radial-gradient(700px 260px at 85% 0%, rgba(76,61,255,.55) 0%, rgba(76,61,255,0) 70%), linear-gradient(120deg, #0000ff 0%, #1b14c9 45%, #0a0f5c 100%);
	padding: 54px 24px 58px;
	--sy-zz-h: 8px;
	-webkit-mask: linear-gradient(#000, #000) left top / 100% calc(100% - var(--sy-zz-h) + 1px) no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L36 0 L18 18 Z' fill='%23000'/%3E%3C/svg%3E") left bottom / 16px var(--sy-zz-h) repeat-x;
	mask: linear-gradient(#000, #000) left top / 100% calc(100% - var(--sy-zz-h) + 1px) no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 18' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L36 0 L18 18 Z' fill='%23000'/%3E%3C/svg%3E") left bottom / 16px var(--sy-zz-h) repeat-x;
}
.sy-cat-band::after{ content: ""; position: absolute; inset: 0; pointer-events: none;
	background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px); background-size: 40px 40px;
	-webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 60%); mask-image: linear-gradient(90deg, transparent 0%, #000 60%); }
.sy-cat-band__inner{ position: relative; z-index: 1; max-width: 1270px; margin: 0 auto; }
h1.sy-cat-band__title{ margin: 0 !important; text-align: left !important; font: 600 clamp(28px, 3.4vw, 44px)/1.15 var(--sy-font) !important; color: #fff !important; letter-spacing: -.01em; }
.post-type-archive-product .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header,
.tax-product_tag .woocommerce-products-header{ display: none !important; }
.post-type-archive-product #main, .tax-product_cat #main, .tax-product_tag #main{ padding-top: 40px !important; }
@media (max-width: 640px){ .sy-cat-band{ padding: 36px 18px 40px; } }
/* 40b. title band: centred badge + title + short line */
.sy-cat-band{ padding: 60px 24px 66px; text-align: center; }
.sy-cat-band__inner{ max-width: 820px; }
.sy-cat-band__badge{ display: inline-block; margin: 0 0 14px; padding: 7px 14px; border-radius: 999px; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.28);
	color: #fff; font: 600 11.5px/1 var(--sy-font); letter-spacing: .16em; text-transform: uppercase; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
h1.sy-cat-band__title{ text-align: center !important; }
p.sy-cat-band__lead{ margin: 14px auto 0 !important; max-width: 680px; font: 400 16.5px/1.7 var(--sy-font) !important; color: rgba(255,255,255,.82) !important; }
.sy-cat-band::after{ -webkit-mask-image: radial-gradient(ellipse at 50% 50%, transparent 20%, #000 75%); mask-image: radial-gradient(ellipse at 50% 50%, transparent 20%, #000 75%); }
@media (max-width: 640px){ .sy-cat-band{ padding: 42px 18px 48px; } p.sy-cat-band__lead{ font-size: 15px !important; } }

/* 41. Cart page (block cart) */
.woocommerce-cart #main{ background: #f6f7fb; padding-top: 44px !important; padding-bottom: var(--sy-gap) !important; }
.woocommerce-cart .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){ --awb-margin-bottom: 0px !important; margin-bottom: 0 !important; }
.woocommerce-cart #main .post-content > .fusion-fullwidth{ padding: 0 !important; }
.wp-block-woocommerce-cart.alignwide, .wp-block-woocommerce-cart{ max-width: 1200px; margin: 0 auto !important; }
.wc-block-cart{ gap: 28px; align-items: flex-start; }
.wc-block-cart .wc-block-cart__main{ background: #fff; border: 1px solid #eceef3; border-radius: 24px; padding: 10px 28px 18px !important; box-shadow: 0 24px 50px -38px rgba(11,17,32,.15); }
.wc-block-cart .wc-block-cart-items{ border: 0 !important; margin: 0 !important; }
.wc-block-cart .wc-block-cart-items th{ padding: 18px 0 14px !important; border-bottom: 1px solid #eceef3 !important; font: 600 12px/1 var(--sy-font) !important; letter-spacing: .14em; text-transform: uppercase; color: #8a93a6 !important; }
.wc-block-cart .wc-block-cart-items__row{ border: 0 !important; }
.wc-block-cart .wc-block-cart-items__row > td{ padding-top: 22px !important; padding-bottom: 22px !important; border-bottom: 1px dashed #e3e6ee !important; }
.wc-block-cart .wc-block-cart-items__row:last-child > td{ border-bottom: 0 !important; }
.wc-block-cart .wc-block-cart-item__image{ width: 112px !important; padding-right: 22px !important; }
.wc-block-cart .wc-block-cart-item__image img{ width: 112px !important; height: 112px !important; object-fit: cover; border-radius: 16px; background: #f3f4f8; }
.wc-block-cart .wc-block-components-product-name{ font: 600 17px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; text-decoration: none !important; }
.wc-block-cart .wc-block-components-product-name:hover{ color: var(--sy-blue) !important; }
.wc-block-cart .wc-block-cart-item__prices{ margin: 6px 0 !important; font: 600 15px/1.3 var(--sy-font); color: var(--sy-blue); }
.wc-block-cart .wc-block-cart-item__prices del{ color: #9aa1b2; font-weight: 400; margin-right: 6px; }
.wc-block-cart .wc-block-components-product-metadata{ font: 400 13.5px/1.5 var(--sy-font) !important; color: #6b7280 !important; margin: 4px 0 10px !important; }
.wc-block-cart .wc-block-components-product-metadata__description{ display: none; }
.wc-block-cart .wc-block-components-product-badge{ border: 0 !important; border-radius: 999px !important; background: #fdecea !important; color: #c0352b !important; padding: 5px 10px !important; font: 600 11px/1 var(--sy-font) !important; letter-spacing: .06em; }
.wc-block-cart .wc-block-components-quantity-selector{ width: 124px !important; height: 42px; border: 1.5px solid #dfe3ec !important; border-radius: 999px !important; overflow: hidden; background: #fff; }
.wc-block-cart .wc-block-components-quantity-selector::after{ display: none !important; }
.wc-block-cart .wc-block-components-quantity-selector input{ font: 600 15px/1 var(--sy-font) !important; color: var(--sy-ink) !important; border: 0 !important; box-shadow: none !important; }
.wc-block-cart .wc-block-components-quantity-selector button{ width: 40px !important; color: var(--sy-blue) !important; font-size: 18px !important; border: 0 !important; background: transparent !important; opacity: 1 !important; }
.wc-block-cart .wc-block-components-quantity-selector button:hover{ background: var(--sy-blue-soft) !important; }
.wc-block-cart .wc-block-cart-item__remove-link{ margin-top: 10px !important; font: 500 13px/1 var(--sy-font) !important; color: #b42318 !important; text-decoration: none !important; }
.wc-block-cart .wc-block-cart-item__remove-link:hover{ text-decoration: underline !important; }
.wc-block-cart .wc-block-cart-item__total{ font: 600 17px/1.3 var(--sy-font) !important; color: var(--sy-ink); }
/* order summary */
.wc-block-cart .wc-block-cart__sidebar{ position: sticky; top: 120px; background: #fff; border: 1px solid #eceef3; border-radius: 24px; padding: 22px 24px 24px !important; box-shadow: 0 24px 50px -38px rgba(11,17,32,.15); }
.wc-block-cart .wc-block-cart__totals-title{ display: block !important; margin: 0 0 6px !important; padding: 0 0 14px !important; border-bottom: 1px solid #eceef3; font: 600 18px/1.2 var(--sy-font) !important; color: var(--sy-ink) !important; text-transform: none !important; letter-spacing: 0 !important; text-align: left !important; }
.wc-block-cart .wc-block-components-totals-wrapper{ border-color: #eef0f5 !important; padding: 14px 0 !important; }
.wc-block-cart .wc-block-components-totals-item__label, .wc-block-cart .wc-block-components-totals-item__value{ font: 400 15px/1.4 var(--sy-font) !important; color: #374151; }
.wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{ font: 600 20px/1.2 var(--sy-font) !important; color: var(--sy-ink) !important; }
.wc-block-cart .wc-block-components-totals-coupon__button, .wc-block-cart .wc-block-components-panel__button{ font: 500 15px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.wc-block-cart .wc-block-components-text-input input, .wc-block-cart .wc-block-components-text-input label{ font-family: var(--sy-font) !important; }
.wc-block-cart .wc-block-components-text-input input{ border-radius: 12px !important; }
.wc-block-cart .wc-block-components-radio-control__option{ font-family: var(--sy-font) !important; }
.wc-block-cart a.wc-block-cart__submit-button, .wc-block-cart .wc-block-cart__submit-button{
	width: 100%; height: 56px; border-radius: 999px !important; border: 0 !important; background: var(--sy-blue) !important; color: #fff !important;
	font: 600 16px/1 var(--sy-font) !important; text-transform: none !important; letter-spacing: .01em; box-shadow: 0 14px 28px -14px rgba(0,0,255,.3) !important; transition: transform .2s ease, background .2s ease; }
.wc-block-cart .wc-block-cart__submit-button:hover{ background: #2a2aff !important; transform: translateY(-1px); }
.wc-block-cart .wc-block-cart__submit-container{ padding: 6px 0 0 !important; }
.sy-cart-note{ display: flex; flex-direction: column; align-items: center; gap: 10px; margin-top: 14px; font: 400 13px/1.4 var(--sy-font); color: #6b7280; text-align: center; }
.sy-cart-note span{ display: inline-flex; align-items: center; gap: 6px; }
.sy-cart-note svg{ width: 15px; height: 15px; fill: none; stroke: #15803d; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.sy-cart-note a{ color: var(--sy-blue) !important; font-weight: 600; text-decoration: none !important; }
/* empty cart */
.wp-block-woocommerce-empty-cart-block{ background: #fff; border: 1px solid #eceef3; border-radius: 24px; padding: 44px 32px 40px; box-shadow: 0 24px 50px -38px rgba(11,17,32,.15); }
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{ margin: 0 0 6px !important; font: 600 26px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; text-align: center !important; }
.sy-cart-empty-cta{ text-align: center; margin: 14px 0 0 !important; }
.sy-cart-empty-cta a{ display: inline-flex; align-items: center; padding: 14px 28px; border-radius: 999px; background: var(--sy-blue); color: #fff !important; font: 600 15px/1 var(--sy-font); text-decoration: none !important; }
.wp-block-woocommerce-empty-cart-block hr, .wp-block-woocommerce-empty-cart-block .wp-block-separator{ border: 0 !important; border-top: 1px solid #eceef3 !important; margin: 36px 0 28px !important; max-width: none !important; opacity: 1; }
.wp-block-woocommerce-empty-cart-block h2:not(.wc-block-cart__empty-cart__title){ text-align: center !important; font: 600 22px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; margin: 0 0 20px !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{ gap: 18px; margin: 0 !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product{ border: 1px solid #eceef3 !important; border-radius: 18px; overflow: hidden; padding: 0 0 16px !important; background: #fff; text-align: left; flex: 1 1 0 !important; max-width: none !important; margin: 0 !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img{ aspect-ratio: 1; object-fit: cover; border-radius: 0 !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{ padding: 12px 16px 2px !important; font: 600 15px/1.35 var(--sy-font) !important; color: var(--sy-ink) !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{ padding: 0 16px !important; font: 600 14px/1.4 var(--sy-font) !important; color: var(--sy-blue) !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart{ padding: 8px 16px 0 !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a{ display: inline-flex !important; padding: 9px 16px !important; border-radius: 999px !important; background: var(--sy-blue-soft) !important; color: var(--sy-blue) !important; font: 600 13px/1 var(--sy-font) !important; border: 0 !important; }
@media (max-width: 782px){
	.wc-block-cart .wc-block-cart__main{ padding: 6px 18px 12px !important; }
	.wc-block-cart .wc-block-cart__sidebar{ position: static; }
	.wc-block-cart .wc-block-cart-item__image, .wc-block-cart .wc-block-cart-item__image img{ width: 84px !important; height: 84px !important; }
	.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{ flex-wrap: wrap; }
	.wp-block-woocommerce-empty-cart-block .wc-block-grid__product{ flex: 1 1 calc(50% - 18px) !important; }
}
@media (min-width: 783px){
	.wc-block-cart{ flex-wrap: nowrap !important; }
	.wc-block-cart .wc-block-cart__main{ flex: 1 1 auto !important; width: auto !important; min-width: 0; }
	.wc-block-cart .wc-block-cart__sidebar{ flex: 0 0 380px !important; width: 380px !important; max-width: 380px; }
}
.wc-block-cart .wc-block-cart-item__image{ width: 134px !important; }
.wc-block-cart .wc-block-cart-item__image img{ max-width: none !important; display: block; }
.wc-block-cart .wc-block-components-quantity-selector{ display: flex !important; align-items: stretch; }
.wc-block-cart .wc-block-components-quantity-selector input{ height: 100% !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; line-height: 39px !important; text-align: center; }
.wc-block-cart .wc-block-components-quantity-selector button{ height: 100% !important; padding: 0 !important; display: grid !important; place-items: center; }
@media (max-width: 782px){ .wc-block-cart .wc-block-cart-item__image{ width: 100px !important; } }
.wc-block-cart .wc-block-cart__submit-container, .wc-block-cart .wc-block-cart__submit{ background: transparent !important; box-shadow: none !important; }
.wc-block-cart .wc-block-components-totals-wrapper:empty, .wc-block-cart .wc-block-components-totals-wrapper:not(:has(*:not(:empty))){ display: none !important; }
.wc-block-cart .wc-block-components-totals-wrapper:has(> .wp-block-woocommerce-cart-order-summary-fee-block:empty), .wc-block-cart .wc-block-components-totals-wrapper:has(> .wp-block-woocommerce-cart-order-summary-discount-block:empty){ display: none !important; }
.wc-block-cart .wc-block-components-totals-shipping *, .wc-block-cart .wc-block-components-shipping-address, .wc-block-cart .wc-block-components-totals-shipping__change-address__link{ font-family: var(--sy-font) !important; font-size: 14px !important; line-height: 1.5 !important; }
.wc-block-cart .wc-block-components-totals-shipping .wc-block-components-totals-item__description, .wc-block-cart .wc-block-components-shipping-address{ color: #6b7280 !important; }
.wc-block-cart .wc-block-components-totals-shipping__change-address__link{ color: var(--sy-blue) !important; text-decoration: none !important; font-weight: 600; }
.wc-block-cart .wc-block-components-radio-control__option{ padding-top: 6px !important; padding-bottom: 6px !important; }
.wc-block-cart .wc-block-components-radio-control__label{ font-size: 14.5px !important; }
.sy-cart-note span{ display: block; max-width: 260px; }
.sy-cart-note svg{ display: inline-block; vertical-align: -2px; margin-right: 4px; }
.wc-block-cart .wc-block-components-radio-control__input{ border-color: var(--sy-blue) !important; }
.wc-block-cart .wc-block-components-radio-control__input:checked::before{ background: var(--sy-blue) !important; }

/* 42. Title bands (Collection, product categories, Cart): text left, 3 overlapping photos right.
       Height stays exactly as before — the photo group is absolutely positioned and never adds height. */
.sy-cat-band{ text-align: left; }
.sy-cat-band .sy-cat-band__inner{ position: relative; max-width: 1200px; margin: 0 auto; }
.sy-cat-band .sy-cat-band__text{ max-width: 620px; }
.sy-cat-band h1.sy-cat-band__title{ text-align: left !important; }
.sy-cat-band p.sy-cat-band__lead{ margin: 14px 0 0 !important; max-width: 600px; }
.sy-cat-band::after{ -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 55%); mask-image: linear-gradient(90deg, transparent 0%, #000 55%); }
.sy-cat-band__media{ position: absolute; right: 0; top: -30px; bottom: -32px; width: 440px; pointer-events: none; }
.sy-cat-band__img{ position: absolute; display: block; overflow: hidden; border-radius: 18px; border: 4px solid rgba(255,255,255,.9); background: #e9ebf1;
	box-shadow: 0 18px 40px -18px rgba(0,0,40,.55); }
.sy-cat-band__img img{ width: 100%; height: 100%; object-fit: cover; display: block; }
/* big centre photo + two smaller ones overlapping, slightly rotated */
.sy-cat-band__img--1{ right: 120px; top: 6%; bottom: 6%; width: 200px; transform: rotate(-3deg); z-index: 2; }
.sy-cat-band__img--2{ right: 0; top: 0; height: 58%; width: 150px; transform: rotate(4deg); z-index: 1; }
.sy-cat-band__img--3{ right: 290px; bottom: 0; height: 52%; width: 140px; transform: rotate(5deg); z-index: 3; }
@media (max-width: 1100px){ .sy-cat-band__media{ width: 360px; } .sy-cat-band__img--1{ width: 170px; right: 100px; } .sy-cat-band__img--2{ width: 120px; } .sy-cat-band__img--3{ width: 115px; right: 240px; } .sy-cat-band .sy-cat-band__text{ max-width: 520px; } }
@media (max-width: 900px){ .sy-cat-band__media{ display: none; } .sy-cat-band .sy-cat-band__text{ max-width: none; } }
@media (min-width: 1101px){ .sy-cat-band .sy-cat-band__text{ max-width: 680px; } .sy-cat-band p.sy-cat-band__lead{ max-width: 680px; } }

/* 42b. Title bands: right 60% filled edge-to-edge with a photo collage (full band height, fades into the blue on the left).
        Band height unchanged — the collage is absolutely positioned on the band itself. */
.sy-cat-band .sy-cat-band__inner{ position: static; }
.sy-cat-band__media{ position: absolute !important; top: 0 !important; bottom: 0 !important; right: 0 !important; width: 60% !important; z-index: 0;
	display: grid !important; grid-template-columns: 1.25fr 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 6px; }
.sy-cat-band__img{ position: relative !important; inset: auto !important; width: auto !important; height: auto !important; transform: none !important;
	border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.sy-cat-band__img--1{ grid-column: 1; grid-row: 1 / span 2; }
.sy-cat-band__img--2{ grid-column: 2 / span 2; grid-row: 1; }
.sy-cat-band__img--3{ grid-column: 2 / span 2; grid-row: 2; }
/* only 1 or 2 photos: let them fill the area */
.sy-cat-band__media:not(:has(.sy-cat-band__img--3)) .sy-cat-band__img--2{ grid-row: 1 / span 2; }
.sy-cat-band__media:not(:has(.sy-cat-band__img--2)) .sy-cat-band__img--1{ grid-column: 1 / -1; }
.sy-cat-band__img img{ transition: transform .6s ease; }
/* soft blend into the blue + slight tint so the collage sits in the brand colour */
.sy-cat-band__media::before{ content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
	background: linear-gradient(90deg, #1813cf 0%, rgba(24,19,207,.75) 12%, rgba(24,19,207,.15) 34%, rgba(24,19,207,0) 50%),
		linear-gradient(0deg, rgba(10,15,92,.18), rgba(10,15,92,.18)); }
.sy-cat-band::after{ z-index: 1; -webkit-mask-image: linear-gradient(90deg, #000 0%, transparent 45%); mask-image: linear-gradient(90deg, #000 0%, transparent 45%); }
.sy-cat-band .sy-cat-band__text{ position: relative; z-index: 3; max-width: 470px !important; }
.sy-cat-band p.sy-cat-band__lead{ max-width: 470px !important; font-size: 15.5px !important; }
@media (max-width: 900px){ .sy-cat-band__media{ display: none !important; } .sy-cat-band .sy-cat-band__text, .sy-cat-band p.sy-cat-band__lead{ max-width: none !important; } }
@media (min-width: 901px){ .sy-cat-band{ padding-top: 52px !important; padding-bottom: 58px !important; } .sy-cat-band p.sy-cat-band__lead{ font-size: 15px !important; line-height: 1.6 !important; margin-top: 12px !important; } .sy-cat-band .sy-cat-band__text{ max-width: 500px !important; } .sy-cat-band p.sy-cat-band__lead{ max-width: 500px !important; } }
@media (min-width: 901px){ .sy-cat-band{ padding-top: 60px !important; padding-bottom: 66px !important; min-height: 267px; display: flex; flex-direction: column; justify-content: center; } .sy-cat-band p.sy-cat-band__lead{ line-height: 1.7 !important; } }
.sy-cat-band .sy-cat-band__inner{ width: 100%; box-sizing: border-box; }
.sy-cat-band__media{ -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.55) 14%, #000 34%); mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.55) 14%, #000 34%); }
.sy-cat-band__media::before{ background: linear-gradient(0deg, rgba(10,15,92,.22), rgba(10,15,92,.06)) !important; }
.sy-fs--tt{ background: #000; }
.sy-fs--tt svg{ filter: drop-shadow(1px 1px 0 #fe2c55) drop-shadow(-1px -1px 0 #25f4ee); }

/* 43. WooCommerce notices ("added to your cart", info, errors) — block banners + classic notices */
.woocommerce-notices-wrapper:empty{ display: none; }
.woocommerce-notices-wrapper{ max-width: 1240px; margin: 0 auto 22px; }
.wc-block-components-notice-banner,
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error,
.woocommerce-page .woocommerce-message, .woocommerce-page .woocommerce-info, .woocommerce-page .woocommerce-error{
	--sy-n: #15803d; --sy-n-soft: #eaf7ee;
	position: relative; display: flex !important; align-items: center; gap: 14px; flex-wrap: wrap;
	margin: 0 0 14px !important; padding: 14px 16px 14px 20px !important;
	background: linear-gradient(90deg, var(--sy-n-soft) 0%, #fff 55%) !important;
	border: 1px solid color-mix(in srgb, var(--sy-n) 22%, #fff) !important; border-left: 4px solid var(--sy-n) !important; border-radius: 16px !important;
	box-shadow: 0 14px 30px -24px rgba(11,17,32,.25) !important;
	font: 500 15px/1.5 var(--sy-font) !important; color: var(--sy-ink) !important; text-align: left;
}
.wc-block-components-notice-banner.is-info, .woocommerce .woocommerce-info, .woocommerce-page .woocommerce-info{ --sy-n: #0000ff; --sy-n-soft: #eef0ff; }
.wc-block-components-notice-banner.is-error, .woocommerce .woocommerce-error, .woocommerce-page .woocommerce-error{ --sy-n: #c0352b; --sy-n-soft: #fdecea; }
.wc-block-components-notice-banner.is-warning{ --sy-n: #b45309; --sy-n-soft: #fff7e6; }
/* round icon */
.wc-block-components-notice-banner > svg{
	flex: none; width: 34px !important; height: 34px !important; padding: 7px; border-radius: 50% !important;
	background: var(--sy-n) !important; fill: #fff !important; color: #fff; margin: 0 !important;
}
.woocommerce .woocommerce-message::before, .woocommerce .woocommerce-info::before, .woocommerce .woocommerce-error::before,
.woocommerce-page .woocommerce-message::before, .woocommerce-page .woocommerce-info::before, .woocommerce-page .woocommerce-error::before{
	position: static !important; flex: none; display: grid !important; place-items: center; width: 34px; height: 34px; border-radius: 50%;
	background: var(--sy-n); color: #fff !important; font-size: 15px !important; margin: 0 !important;
}
.woocommerce-message .fusion-woo-notice-icon, .woocommerce-message > i.fa, .wc-block-components-notice-banner i.fa{ display: none !important; }
.wc-block-components-notice-banner__content{ flex: 1; min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap;
	font: 500 15px/1.5 var(--sy-font) !important; color: var(--sy-ink) !important; }
/* the "View cart" / action button → blue pill on the right */
.wc-block-components-notice-banner__content a.button, .wc-block-components-notice-banner__content a.wc-forward,
.woocommerce-message a.button, .woocommerce-info a.button, .woocommerce-message a.wc-forward{
	order: 2; margin: 0 0 0 auto !important; float: none !important; display: inline-flex !important; align-items: center; gap: 8px;
	padding: 10px 18px !important; border-radius: 999px !important; border: 0 !important; background: var(--sy-blue) !important; color: #fff !important;
	font: 600 14px/1 var(--sy-font) !important; text-decoration: none !important; text-transform: none !important; letter-spacing: 0 !important;
	box-shadow: 0 10px 20px -12px rgba(0,0,255,.35) !important; opacity: 1 !important; transition: background .2s ease, transform .2s ease;
}
.wc-block-components-notice-banner__content a.button::after, .wc-block-components-notice-banner__content a.wc-forward::after,
.woocommerce-message a.wc-forward::after{ content: "→"; font-weight: 600; }
.wc-block-components-notice-banner__content a.button::before, .woocommerce-message a.button::before, .woocommerce-message a.wc-forward::before{ display: none !important; }
.wc-block-components-notice-banner__content a.button:hover, .woocommerce-message a.button:hover{ background: #2a2aff !important; transform: translateY(-1px); }
.wc-block-components-notice-banner.is-error .wc-block-components-notice-banner__content a.button{ background: var(--sy-n) !important; }
.wc-block-components-notice-banner ul{ margin: 0 !important; padding: 0 !important; list-style: none !important; }
@media (max-width: 640px){
	.wc-block-components-notice-banner, .woocommerce .woocommerce-message{ padding: 12px 14px !important; }
	.wc-block-components-notice-banner__content a.button, .wc-block-components-notice-banner__content a.wc-forward{ margin: 6px 0 0 !important; }
}
body .wc-block-components-notice-banner > svg{ display: block !important; }
body .wc-block-components-notice-banner::before, body .wc-block-components-notice-banner::after{ display: none !important; content: none !important; }
body .woocommerce-notices-wrapper .wc-block-components-notice-banner .wc-block-components-notice-banner__content a.button, body .woocommerce-notices-wrapper .wc-block-components-notice-banner .wc-block-components-notice-banner__content a.wc-forward, body .wc-block-components-notice-banner .wc-block-components-notice-banner__content a{ color: #fff !important; }
body .wc-block-components-notice-banner .wc-block-components-notice-banner__content a::after{ color: #fff !important; }

/* 44. Checkout page (block checkout) — numbered step cards, rounded fields, highlighted options, sticky summary */
.woocommerce-checkout #main{ background: #f6f7fb; padding-top: 44px !important; padding-bottom: var(--sy-gap) !important; }
.woocommerce-checkout .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){ --awb-margin-bottom: 0px !important; margin-bottom: 0 !important; }
.woocommerce-checkout #main .post-content > .fusion-fullwidth{ padding: 0 !important; }
.wp-block-woocommerce-checkout{ max-width: 1200px; margin: 0 auto !important; }
.wc-block-checkout{ gap: 28px; align-items: flex-start; }
@media (min-width: 783px){
	.wc-block-checkout{ flex-wrap: nowrap !important; }
	.wc-block-checkout .wc-block-checkout__main{ flex: 1 1 auto !important; width: auto !important; min-width: 0; padding-right: 0 !important; }
	.wc-block-checkout .wc-block-checkout__sidebar{ flex: 0 0 390px !important; width: 390px !important; max-width: 390px; padding-left: 0 !important; }
}
/* steps as numbered cards */
.wc-block-checkout__form{ counter-reset: sy-step; }
.wc-block-checkout .wc-block-components-checkout-step{
	counter-increment: sy-step; position: relative;
	background: #fff; border: 1px solid #eceef3 !important; border-radius: 22px; padding: 26px 28px 26px 84px !important; margin: 0 0 18px !important;
	box-shadow: 0 20px 44px -36px rgba(11,17,32,.18);
}
.wc-block-checkout .wc-block-components-checkout-step::before{
	content: counter(sy-step); position: absolute !important; left: 26px !important; top: 24px !important; width: 38px; height: 38px; border-radius: 12px;
	display: grid; place-items: center; background: var(--sy-blue); color: #fff; font: 600 15px/1 var(--sy-font); box-shadow: 0 10px 20px -12px rgba(0,0,255,.5); border: 0 !important;
}
.wc-block-checkout .wc-block-components-checkout-step::after{ display: none !important; }
.wc-block-checkout .wc-block-components-checkout-step__heading{ margin: 0 0 4px !important; }
.wc-block-checkout .wc-block-components-checkout-step__title{ font: 600 19px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.wc-block-checkout .wc-block-components-checkout-step__description{ font: 400 14px/1.6 var(--sy-font) !important; color: #6b7280 !important; margin: 0 0 16px !important; }
.wc-block-checkout .wc-block-components-checkout-step__container{ padding: 0 !important; }
/* fields */
.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-blocks-components-select__select,
.wc-block-checkout .wc-block-components-textarea, .wc-block-checkout textarea{
	border: 1.5px solid #dfe3ec !important; border-radius: 12px !important; background: #fff !important; font-family: var(--sy-font) !important; color: var(--sy-ink) !important;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.wc-block-checkout .wc-blocks-components-select__container{ border-radius: 12px !important; }
.wc-block-checkout .wc-block-components-text-input input:focus,
.wc-block-checkout .wc-blocks-components-select__select:focus, .wc-block-checkout textarea:focus{ border-color: var(--sy-blue) !important; box-shadow: 0 0 0 4px rgba(0,0,255,.1) !important; outline: 0 !important; }
.wc-block-checkout .wc-block-components-text-input label, .wc-block-checkout .wc-blocks-components-select__label{ font-family: var(--sy-font) !important; color: #6b7280 !important; }
.wc-block-checkout .wc-block-components-checkbox__input{ border-radius: 6px !important; border-color: #c9cfdb !important; }
.wc-block-checkout .wc-block-components-checkbox__input:checked{ background: var(--sy-blue) !important; border-color: var(--sy-blue) !important; }
.wc-block-checkout .wc-block-components-checkbox__mark{ fill: #fff !important; }
.wc-block-checkout .wc-block-components-checkbox label, .wc-block-checkout .wc-block-components-address-form__address_2-toggle{ font-family: var(--sy-font) !important; font-size: 14.5px !important; }
.wc-block-checkout .wc-block-components-address-form__address_2-toggle{ color: var(--sy-blue) !important; text-decoration: none !important; font-weight: 600; }
/* shipping + payment options */
.wc-block-checkout .wc-block-components-radio-control--highlight-checked{ border: 0 !important; box-shadow: none !important; display: flex; flex-direction: column; gap: 10px; }
.wc-block-checkout .wc-block-components-radio-control--highlight-checked::after{ display: none !important; }
.wc-block-checkout .wc-block-components-radio-control__option,
.wc-block-checkout .wc-block-components-radio-control-accordion-option{
	border: 1.5px solid #e3e6ee !important; border-radius: 14px !important; background: #fff; box-shadow: none !important; margin: 0 !important; overflow: hidden;
	transition: border-color .2s ease, background .2s ease;
}
.wc-block-checkout .wc-block-components-radio-control__option::after, .wc-block-checkout .wc-block-components-radio-control-accordion-option::after{ display: none !important; }
.wc-block-checkout .wc-block-components-radio-control__option--checked-option-highlighted,
.wc-block-checkout .wc-block-components-radio-control-accordion-option--checked-option-highlighted{ border-color: var(--sy-blue) !important; background: #f5f6ff !important; box-shadow: 0 0 0 3px rgba(0,0,255,.08) !important; }
.wc-block-checkout .wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option{ border: 0 !important; background: transparent !important; box-shadow: none !important; }
.wc-block-checkout .wc-block-components-radio-control__label{ font: 600 15px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.wc-block-checkout .wc-block-components-radio-control__description, .wc-block-checkout .wc-block-components-radio-control__secondary-label{ font-family: var(--sy-font) !important; color: #6b7280 !important; }
.wc-block-checkout .wc-block-components-radio-control-accordion-content{ font: 400 14px/1.6 var(--sy-font) !important; color: #4b5563 !important; padding-top: 0 !important; }
.wc-block-checkout .wc-block-components-radio-control__input{ border-color: #c9cfdb !important; }
.wc-block-checkout .wc-block-components-radio-control__input:checked{ border-color: var(--sy-blue) !important; }
.wc-block-checkout .wc-block-components-radio-control__input:checked::before{ background: var(--sy-blue) !important; }
/* order notes + terms + actions */
.wc-block-checkout .wc-block-checkout__add-note{ margin: 0 0 18px !important; padding: 18px 24px; background: #fff; border: 1px solid #eceef3; border-radius: 18px; }
.wc-block-checkout .wc-block-checkout__terms{ margin: 0 0 18px !important; padding: 0 4px !important; border: 0 !important; font: 400 14px/1.6 var(--sy-font) !important; color: #6b7280 !important; }
.wc-block-checkout .wc-block-checkout__terms a{ color: var(--sy-blue) !important; }
.wc-block-checkout .wc-block-checkout__actions{ padding: 0 !important; }
.wc-block-checkout .wc-block-checkout__actions_row{ display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.wc-block-checkout .wc-block-components-checkout-place-order-button{
	flex: 0 1 340px; min-height: 58px; width: auto !important; border-radius: 999px !important; border: 0 !important; background: var(--sy-blue) !important; color: #fff !important;
	font: 600 16.5px/1 var(--sy-font) !important; text-transform: none !important; letter-spacing: .01em; box-shadow: 0 16px 30px -16px rgba(0,0,255,.4) !important;
	transition: transform .2s ease, background .2s ease; opacity: 1 !important;
}
.wc-block-checkout .wc-block-components-checkout-place-order-button:hover{ background: #2a2aff !important; transform: translateY(-1px); }
.wc-block-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text{ color: #fff !important; }
.wc-block-checkout .wc-block-components-checkout-return-to-cart-button{ font: 600 14.5px/1 var(--sy-font) !important; color: var(--sy-blue) !important; text-decoration: none !important; }
/* summary */
.wc-block-checkout .wc-block-checkout__sidebar{ position: sticky; top: 120px; }
.wc-block-checkout .wp-block-woocommerce-checkout-order-summary-block{ background: #fff; border: 1px solid #eceef3 !important; border-radius: 22px; padding: 6px 22px 10px !important; box-shadow: 0 20px 44px -36px rgba(11,17,32,.18); }
.wc-block-checkout .wc-block-components-checkout-order-summary__title{ padding: 18px 0 14px !important; border-bottom: 1px solid #eceef3 !important; }
.wc-block-checkout .wc-block-components-checkout-order-summary__title-text{ font: 600 18px/1.2 var(--sy-font) !important; color: var(--sy-ink) !important; }
.wc-block-checkout .wc-block-components-order-summary{ padding: 14px 0 !important; }
.wc-block-checkout .wc-block-components-order-summary-item{ padding: 10px 0 !important; align-items: flex-start; }
.wc-block-checkout .wc-block-components-order-summary-item__image{ width: 64px !important; margin-right: 14px !important; }
.wc-block-checkout .wc-block-components-order-summary-item__image > img{ width: 64px !important; max-width: none !important; height: 64px !important; object-fit: cover; border-radius: 12px; background: #f3f4f8; }
.wc-block-checkout .wc-block-components-order-summary-item__quantity{ background: var(--sy-blue) !important; color: #fff !important; border: 2px solid #fff !important; font: 600 11px/1 var(--sy-font) !important; min-width: 22px; height: 22px; box-shadow: none !important; }
.wc-block-checkout .wc-block-components-product-name{ font: 600 15px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.wc-block-checkout .wc-block-components-order-summary-item__individual-prices{ font: 600 13.5px/1.4 var(--sy-font) !important; color: var(--sy-blue) !important; }
.wc-block-checkout .wc-block-components-product-metadata{ font: 400 12.5px/1.45 var(--sy-font) !important; color: #6b7280 !important; }
.wc-block-checkout .wc-block-components-order-summary-item__total-price{ font: 600 15px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.wc-block-checkout .wc-block-components-totals-wrapper{ border-color: #eef0f5 !important; }
.wc-block-checkout .wc-block-components-totals-item__label, .wc-block-checkout .wc-block-components-totals-item__value{ font: 400 14.5px/1.4 var(--sy-font) !important; color: #374151; }
.wc-block-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{ font: 600 20px/1.2 var(--sy-font) !important; color: var(--sy-ink) !important; }
.wc-block-checkout .wc-block-components-totals-coupon__button, .wc-block-checkout .wc-block-components-panel__button{ font: 500 15px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.sy-checkout-note{ margin-top: 16px; }
.sy-checkout-note a{ color: var(--sy-blue) !important; font-weight: 600; text-decoration: none !important; }
@media (max-width: 782px){
	.wc-block-checkout .wc-block-components-checkout-step{ padding: 22px 18px 22px 18px !important; }
	.wc-block-checkout .wc-block-components-checkout-step::before{ position: static !important; margin-bottom: 10px; }
	.wc-block-checkout .wc-block-checkout__sidebar{ position: static; }
	.wc-block-checkout .wc-block-checkout__actions_row{ flex-direction: column-reverse; align-items: stretch; }
	.wc-block-checkout .wc-block-components-checkout-place-order-button{ flex: none; width: 100% !important; }
}
.wc-block-checkout .wc-block-checkout__order-notes{ counter-increment: none !important; padding: 18px 24px !important; }
.wc-block-checkout .wc-block-checkout__order-notes::before{ display: none !important; }
.wc-block-checkout .wc-block-checkout__order-notes .wc-block-checkout__add-note{ background: transparent !important; border: 0 !important; padding: 0 !important; margin: 0 !important; }
.wc-block-checkout .wc-block-components-totals-shipping *, .wc-block-checkout .wc-block-components-shipping-address{ font-family: var(--sy-font) !important; font-size: 14px !important; line-height: 1.5 !important; }
.wc-block-checkout .wc-block-components-totals-shipping .wc-block-components-totals-item__description, .wc-block-checkout .wc-block-components-shipping-address{ color: #6b7280 !important; }
/* 45. Trust card under the cart / checkout summary */
.sy-trust{ margin-top: 16px; background: #fff; border: 1px solid #eceef3; border-radius: 18px; overflow: hidden; box-shadow: 0 16px 36px -30px rgba(11,17,32,.2); }
.sy-trust__row{ display: flex; align-items: center; gap: 12px; padding: 14px 16px; text-decoration: none !important; }
.sy-trust__row + .sy-trust__row{ border-top: 1px dashed #e6e9f0; }
.sy-trust__icon{ flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; }
.sy-trust__icon svg{ width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.sy-trust__icon--lock{ background: #eaf7ee; color: #15803d; }
.sy-trust__icon--wa{ background: #2db742; color: #fff; }
.sy-trust__icon--wa svg{ width: 21px; height: 21px; }
.sy-trust__text{ flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; text-align: left; }
.sy-trust__text strong{ font: 600 14.5px/1.3 var(--sy-font); color: var(--sy-ink); }
.sy-trust__text span{ font: 400 13px/1.4 var(--sy-font); color: #6b7280; }
.sy-trust__arrow{ flex: none; color: var(--sy-blue); font: 600 16px/1 var(--sy-font); transition: transform .2s ease; }
.sy-trust__row--link:hover{ background: #f7fbf8; }
.sy-trust__row--link:hover .sy-trust__arrow{ transform: translateX(3px); }
a.sy-trust-back{ display: block; margin-top: 14px; text-align: center; font: 600 14px/1 var(--sy-font); color: var(--sy-blue) !important; text-decoration: none !important; }
a.sy-trust-back:hover{ text-decoration: underline !important; }

/* 46. Login / Register / Password reset (Ultimate Member) — split layout */
.sy-auth-page .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){ --awb-margin-bottom: 0px !important; margin-bottom: 0 !important; }
.sy-auth-page #main{ background: #f6f7fb; padding: var(--sy-gap) 0 !important; }
.sy-auth-page #main > .fusion-row{ max-width: 1120px !important; padding: 0 24px !important; }
.sy-auth{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); background: #fff; border: 1px solid #eceef3; border-radius: 28px; overflow: hidden;
	box-shadow: 0 30px 60px -44px rgba(11,17,32,.25); }
/* brand panel */
.sy-auth__aside{ position: relative; min-height: 560px; background-size: cover; background-position: center; display: flex; align-items: flex-end; }
.sy-auth__aside::before{ content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, rgba(0,0,255,.82) 0%, rgba(27,20,201,.72) 45%, rgba(10,15,92,.92) 100%); }
.sy-auth__aside::after{ content: ""; position: absolute; inset: 0; pointer-events: none;
	background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px); background-size: 40px 40px; }
.sy-auth__aside-inner{ position: relative; z-index: 1; padding: 44px; color: #fff; }
.sy-auth__badge{ display: inline-block; padding: 7px 14px; border-radius: 999px; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.28);
	font: 600 11.5px/1 var(--sy-font); letter-spacing: .14em; text-transform: uppercase; color: #fff; }
h2.sy-auth__aside-title{ margin: 18px 0 22px !important; font: 600 clamp(26px, 2.6vw, 34px)/1.2 var(--sy-font) !important; color: #fff !important; max-width: 420px; }
ul.sy-auth__points{ list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 12px; }
ul.sy-auth__points li{ display: flex; align-items: center; gap: 12px; margin: 0 !important; padding: 0 !important; font: 500 15px/1.4 var(--sy-font); color: rgba(255,255,255,.92); }
ul.sy-auth__points li::before{ display: none !important; }
ul.sy-auth__points svg{ flex: none; width: 26px; height: 26px; padding: 5px; border-radius: 50%; background: #ffde59; fill: none; stroke: #0a0f5c; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
/* form card */
.sy-auth__card{ padding: 52px 52px 40px; display: flex; flex-direction: column; justify-content: center; }
h1.sy-auth__title{ margin: 0 0 8px !important; font: 600 clamp(26px, 2.6vw, 32px)/1.2 var(--sy-font) !important; color: var(--sy-ink) !important; }
p.sy-auth__lead{ margin: 0 0 26px !important; font: 400 15px/1.65 var(--sy-font); color: var(--sy-muted); }
.sy-auth__form .um{ max-width: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; opacity: 1 !important; }
.sy-auth__form .um-form{ width: 100%; }
.sy-auth__form .um-row{ margin: 0 0 18px !important; }
.sy-auth__form .um-field{ padding: 0 0 16px !important; }
.sy-auth__form .um-field-label{ margin: 0 0 7px !important; border: 0 !important; padding: 0 !important; }
.sy-auth__form .um-field-label label{ font: 600 13.5px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.sy-auth__form .um-form-field, .sy-auth__form input[type=text], .sy-auth__form input[type=password], .sy-auth__form input[type=email]{
	height: 50px !important; padding: 0 16px !important; border: 1.5px solid #dfe3ec !important; border-radius: 14px !important; background: #fff !important;
	font: 400 15px/1 var(--sy-font) !important; color: var(--sy-ink) !important; box-shadow: none !important; transition: border-color .2s ease, box-shadow .2s ease;
}
.sy-auth__form .um-form-field:focus, .sy-auth__form input:focus{ border-color: var(--sy-blue) !important; box-shadow: 0 0 0 4px rgba(0,0,255,.1) !important; outline: 0 !important; }
.sy-auth__form .um-field-area-password{ position: relative; }
.sy-auth__form .um-toggle-password{ position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: #8a93a6; cursor: pointer; }
.sy-auth__form .um-field-checkbox-option, .sy-auth__form .um-field-checkbox{ font: 400 14px/1.4 var(--sy-font) !important; color: #4b5563 !important; }
.sy-auth__form .um-field-checkbox-state i{ color: var(--sy-blue) !important; }
.sy-auth__form .um-col-alt{ display: flex !important; gap: 12px; margin: 6px 0 0 !important; }
.sy-auth__form .um-col-alt .um-left, .sy-auth__form .um-col-alt .um-right{ float: none !important; width: auto !important; flex: 1; padding: 0 !important; }
.sy-auth__form .um-col-alt .um-clear{ display: none; }
.sy-auth__form input.um-button, .sy-auth__form .um-button{
	width: 100% !important; height: 52px !important; padding: 0 18px !important; border-radius: 999px !important; border: 2px solid var(--sy-blue) !important;
	background: var(--sy-blue) !important; color: #fff !important; font: 600 15.5px/1 var(--sy-font) !important; text-transform: none !important;
	box-shadow: 0 14px 28px -14px rgba(0,0,255,.4) !important; transition: transform .2s ease, background .2s ease; display: inline-flex !important; align-items: center; justify-content: center;
}
.sy-auth__form input.um-button:hover, .sy-auth__form .um-button:hover{ background: #2a2aff !important; transform: translateY(-1px); }
.sy-auth__form .um-button.um-alt, .sy-auth__form a.um-alt{ background: #fff !important; color: var(--sy-blue) !important; box-shadow: none !important; }
.sy-auth__form .um-button.um-alt:hover, .sy-auth__form a.um-alt:hover{ background: var(--sy-blue-soft) !important; }
.sy-auth__form .um-col-alt-b{ padding-top: 18px !important; text-align: center; }
.sy-auth__form .um-link-alt{ font: 600 14px/1 var(--sy-font) !important; color: var(--sy-blue) !important; text-decoration: none !important; }
.sy-auth__form .um-link-alt:hover{ text-decoration: underline !important; }
.sy-auth__form .um-field-error{ border-radius: 10px; font-family: var(--sy-font); }
.sy-auth__form .um-notice{ border-radius: 12px !important; font-family: var(--sy-font) !important; }
p.sy-auth__help{ margin: 22px 0 0 !important; padding-top: 18px; border-top: 1px dashed #e3e6ee; text-align: center; font: 400 14px/1.4 var(--sy-font); color: #6b7280; }
p.sy-auth__help a{ color: #15803d !important; font-weight: 600; text-decoration: none !important; }
@media (max-width: 860px){
	.sy-auth{ grid-template-columns: 1fr; }
	.sy-auth__aside{ min-height: 240px; }
	.sy-auth__aside-inner{ padding: 28px; }
	.sy-auth__card{ padding: 32px 22px 28px; }
}
.sy-auth__form .um-col-alt{ flex-wrap: wrap; }
.sy-auth__form .um-col-alt > .um-field-c{ flex: 1 1 100%; padding: 0 0 8px !important; }
.sy-auth-page #main{ background: #f6f7fb !important; }

/* 47. Account page (Ultimate Member account, page 10691) */
.sy-acc-page .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){ --awb-margin-bottom: 0px !important; margin-bottom: 0 !important; }
.sy-acc-page #main{ background: #f6f7fb !important; padding: 44px 0 var(--sy-gap) !important; }
.sy-acc-page #main > .fusion-row{ max-width: 1200px !important; padding: 0 24px !important; }
.sy-acc .um{ max-width: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; opacity: 1 !important; }
.sy-acc .um-account .um-form > form{ display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 24px; align-items: start; }
.sy-acc .um-account-side, .sy-acc .um-account-main{ float: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
.sy-acc .um-account .um-clear{ display: none; }
/* side: profile + tabs */
.sy-acc .um-account-side{ background: #fff; border: 1px solid #eceef3; border-radius: 22px; padding: 26px 18px 18px !important; box-shadow: 0 20px 44px -36px rgba(11,17,32,.18); }
.sy-acc .um-account-meta{ background: none !important; padding: 0 0 18px !important; margin: 0 0 12px !important; border-bottom: 1px dashed #e3e6ee; text-align: center; }
.sy-acc .um-account-meta-img img{ width: 84px !important; height: 84px !important; border-radius: 50% !important; border: 4px solid var(--sy-blue-soft); }
.sy-acc .um-account-name{ margin-top: 10px; }
.sy-acc .um-account-name a{ font: 600 18px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; text-decoration: none !important; }
.sy-acc .um-account-profile-link a{ display: inline-block; margin-top: 6px; padding: 6px 12px; border-radius: 999px; background: var(--sy-blue-soft); color: var(--sy-blue) !important; font: 600 12.5px/1 var(--sy-font) !important; text-decoration: none !important; }
.sy-acc .um-account-side ul{ list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 4px; }
.sy-acc .um-account-side ul li{ margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
.sy-acc .um-account-side ul li::before{ display: none !important; }
.sy-acc .um-account-side li a{ display: flex !important; align-items: center; gap: 12px; height: auto !important; padding: 12px 14px !important; border-radius: 12px; background: transparent !important;
	color: #374151 !important; text-decoration: none !important; transition: background .2s ease, color .2s ease; }
.sy-acc .um-account-side li a:hover{ background: #f3f4f8 !important; }
.sy-acc .um-account-side li a.current, .sy-acc .um-account-side li a.current:hover{ background: var(--sy-blue) !important; color: #fff !important; }
.sy-acc .um-account-side li a .um-account-icon{ float: none !important; width: 20px !important; text-align: center; font-size: 15px !important; color: inherit !important; border: 0 !important; padding: 0 !important; }
.sy-acc .um-account-side li a .um-account-title{ float: none !important; flex: 1; padding: 0 !important; font: 500 14.5px/1.3 var(--sy-font) !important; color: inherit !important; }
.sy-acc .um-account-side li a .um-account-arrow{ float: none !important; color: inherit !important; opacity: .6; }
/* main: form card */
.sy-acc .um-account-main{ background: #fff; border: 1px solid #eceef3; border-radius: 22px; padding: 30px 34px !important; box-shadow: 0 20px 44px -36px rgba(11,17,32,.18); }
.sy-acc .um-account-heading{ margin: 0 0 20px !important; padding: 0 0 16px !important; border-bottom: 1px solid #eceef3; font: 600 20px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; display: flex; align-items: center; gap: 10px; }
.sy-acc .um-account-heading i{ color: var(--sy-blue); }
.sy-acc .um-account-tab .um-field{ padding: 0 0 16px !important; }
.sy-acc .um-field-label{ margin: 0 0 7px !important; padding: 0 !important; border: 0 !important; }
.sy-acc .um-field-label label{ font: 600 13.5px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.sy-acc .um-form-field, .sy-acc input[type=text], .sy-acc input[type=password], .sy-acc input[type=email], .sy-acc select{
	height: 50px !important; padding: 0 16px !important; border: 1.5px solid #dfe3ec !important; border-radius: 14px !important; background: #fff !important;
	font: 400 15px/1 var(--sy-font) !important; color: var(--sy-ink) !important; box-shadow: none !important; }
.sy-acc .um-form-field:focus, .sy-acc input:focus{ border-color: var(--sy-blue) !important; box-shadow: 0 0 0 4px rgba(0,0,255,.1) !important; outline: 0 !important; }
.sy-acc .um-form-field[disabled], .sy-acc .um-form-field[readonly]{ background: #f6f7fb !important; color: #8a93a6 !important; }
.sy-acc .um-col-alt-b{ padding-top: 8px !important; }
.sy-acc input.um-button, .sy-acc .um-button{
	width: auto !important; min-width: 200px; height: 50px !important; padding: 0 28px !important; border-radius: 999px !important; border: 0 !important;
	background: var(--sy-blue) !important; color: #fff !important; font: 600 15px/1 var(--sy-font) !important; text-transform: none !important;
	box-shadow: 0 14px 28px -14px rgba(0,0,255,.4) !important; transition: transform .2s ease, background .2s ease; }
.sy-acc .um-button:hover{ background: #2a2aff !important; transform: translateY(-1px); }
.sy-acc .um-left, .sy-acc .um-right{ float: none !important; width: auto !important; }
.sy-acc .um-field-radio, .sy-acc .um-field-checkbox{ font-family: var(--sy-font) !important; }
/* quick links row */
.sy-acc-links{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 24px; }
.sy-acc-links a{ display: flex; align-items: center; gap: 12px; padding: 18px 20px; background: #fff; border: 1px solid #eceef3; border-radius: 18px; text-decoration: none !important;
	box-shadow: 0 16px 36px -30px rgba(11,17,32,.2); transition: transform .2s ease, border-color .2s ease; }
.sy-acc-links a:hover{ transform: translateY(-3px); border-color: #d9ddf5; }
.sy-acc-links svg{ flex: none; width: 40px; height: 40px; padding: 9px; border-radius: 12px; background: var(--sy-blue-soft); fill: none; stroke: var(--sy-blue); stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.sy-acc-links span{ flex: 1; font: 600 15px/1.3 var(--sy-font); color: var(--sy-ink); }
.sy-acc-links b{ color: var(--sy-blue); font: 600 16px/1 var(--sy-font); }
@media (max-width: 860px){
	.sy-acc .um-account .um-form > form{ grid-template-columns: 1fr; }
	.sy-acc .um-account-main{ padding: 22px 18px !important; }
	.sy-acc-links{ grid-template-columns: 1fr; }
	.sy-acc .um-account-side{ display: block !important; }
}

/* 48. WooCommerce My Account (orders, addresses, account details…) */
.sy-myacc .fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]){ --awb-margin-bottom: 0px !important; margin-bottom: 0 !important; }
.sy-myacc #main{ background: #f6f7fb !important; padding: 44px 0 var(--sy-gap) !important; }
.sy-myacc #main > .fusion-row{ max-width: 1200px !important; padding: 0 24px !important; }
.sy-myacc .woocommerce:has(.woocommerce-MyAccount-navigation){ display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 24px; align-items: start; }
.sy-myacc .woocommerce-MyAccount-navigation, .sy-myacc .woocommerce-MyAccount-content{ float: none !important; width: auto !important; margin: 0 !important; }
/* nav card */
.sy-myacc .woocommerce-MyAccount-navigation{ background: #fff; border: 1px solid #eceef3 !important; border-radius: 22px; padding: 14px !important; box-shadow: 0 20px 44px -36px rgba(11,17,32,.18); position: sticky; top: 120px; }
.sy-myacc .woocommerce-MyAccount-navigation ul{ list-style: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; display: flex; flex-direction: column; gap: 3px; }
.sy-myacc .woocommerce-MyAccount-navigation ul li{ margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
.sy-myacc .woocommerce-MyAccount-navigation ul li::before{ display: none !important; }
.sy-myacc .woocommerce-MyAccount-navigation ul li a{ display: flex !important; align-items: center; gap: 12px; padding: 12px 14px !important; border-radius: 12px; border: 0 !important;
	font: 500 14.5px/1.3 var(--sy-font) !important; color: #374151 !important; text-decoration: none !important; background: transparent !important; transition: background .2s ease, color .2s ease; }
.sy-myacc .woocommerce-MyAccount-navigation ul li a::before{ content: ""; flex: none; width: 20px; height: 20px; background: currentColor; opacity: .85;
	-webkit-mask: var(--sy-ico) no-repeat 50% 50% / 20px 20px; mask: var(--sy-ico) no-repeat 50% 50% / 20px 20px; }
.sy-myacc .woocommerce-MyAccount-navigation ul li a::after{ display: none !important; content: none !important; }
.sy-myacc .woocommerce-MyAccount-navigation ul li a:hover{ background: #f3f4f8 !important; }
.sy-myacc .woocommerce-MyAccount-navigation ul li.is-active a{ background: var(--sy-blue) !important; color: #fff !important; }
.sy-myacc .woocommerce-MyAccount-navigation-link--customer-logout{ margin-top: 6px !important; padding-top: 6px !important; border-top: 1px dashed #e3e6ee !important; }
.sy-myacc .woocommerce-MyAccount-navigation-link--customer-logout a{ color: #b42318 !important; }
.sy-myacc .woocommerce-MyAccount-navigation-link--dashboard a{ --sy-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='9' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='5' rx='1.5'/%3E%3Crect x='14' y='12' width='7' height='9' rx='1.5'/%3E%3Crect x='3' y='16' width='7' height='5' rx='1.5'/%3E%3C/svg%3E"); }
.sy-myacc .woocommerce-MyAccount-navigation-link--orders a{ --sy-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 7h12l-1 13H7z'/%3E%3Cpath d='M9 7a3 3 0 0 1 6 0'/%3E%3C/svg%3E"); }
.sy-myacc .woocommerce-MyAccount-navigation-link--downloads a{ --sy-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E"); }
.sy-myacc .woocommerce-MyAccount-navigation-link--edit-address a{ --sy-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6.2 7-11.5A7 7 0 0 0 5 9.5C5 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
.sy-myacc .woocommerce-MyAccount-navigation-link--payment-methods a{ --sy-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 10h18M7 15h4'/%3E%3C/svg%3E"); }
.sy-myacc .woocommerce-MyAccount-navigation-link--edit-account a{ --sy-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E"); }
.sy-myacc .woocommerce-MyAccount-navigation-link--sy-profile a{ --sy-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4.5-3 8.5-7 10-4-1.5-7-5.5-7-10V6z'/%3E%3C/svg%3E"); }
.sy-myacc .woocommerce-MyAccount-navigation-link--customer-logout a{ --sy-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4h4v16h-4M10 8l-4 4 4 4M6 12h10'/%3E%3C/svg%3E"); }
/* content card */
.sy-myacc .woocommerce-MyAccount-content{ background: #fff; border: 1px solid #eceef3; border-radius: 22px; padding: 30px 34px !important; box-shadow: 0 20px 44px -36px rgba(11,17,32,.18); min-height: 300px;
	font: 400 15px/1.7 var(--sy-font); color: #374151; }
.sy-myacc .woocommerce-MyAccount-content h2, .sy-myacc .woocommerce-MyAccount-content h3, .sy-myacc .avada-woocommerce-myaccount-heading{
	margin: 0 0 16px !important; font: 600 20px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; }
.sy-myacc .woocommerce-MyAccount-content > .avada-woocommerce-myaccount-heading{ display: none !important; }
.sy-myacc .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button){ color: var(--sy-blue); font-weight: 600; text-decoration: none; }
.sy-myacc .woocommerce-MyAccount-content .button, .sy-myacc .woocommerce-MyAccount-content .woocommerce-button, .sy-myacc .woocommerce-MyAccount-content button[type=submit]{
	display: inline-flex !important; align-items: center; justify-content: center; padding: 12px 22px !important; border-radius: 999px !important; border: 0 !important;
	background: var(--sy-blue) !important; color: #fff !important; font: 600 14.5px/1 var(--sy-font) !important; text-transform: none !important; box-shadow: 0 12px 24px -14px rgba(0,0,255,.4) !important; }
.sy-myacc .woocommerce-MyAccount-content .button:hover{ background: #2a2aff !important; }
/* orders table */
.sy-myacc table.woocommerce-orders-table, .sy-myacc table.shop_table{ width: 100%; border: 0 !important; border-collapse: separate !important; border-spacing: 0; border-radius: 16px; overflow: hidden; }
.sy-myacc table.shop_table th{ background: #f6f7fb !important; padding: 14px 16px !important; border: 0 !important; font: 600 12px/1 var(--sy-font) !important; letter-spacing: .12em; text-transform: uppercase; color: #8a93a6 !important; text-align: left; }
.sy-myacc table.shop_table td{ padding: 16px !important; border: 0 !important; border-bottom: 1px dashed #e6e9f0 !important; font: 400 14.5px/1.5 var(--sy-font) !important; color: #374151 !important; vertical-align: middle; }
.sy-myacc table.shop_table tr:last-child td{ border-bottom: 0 !important; }
.sy-myacc .woocommerce-orders-table__cell-order-status{ font-weight: 600 !important; }
.sy-myacc .woocommerce-orders-table .button{ padding: 9px 16px !important; font-size: 13px !important; box-shadow: none !important; }
/* addresses */
.sy-myacc .woocommerce-Addresses{ display: grid !important; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 16px; }
.sy-myacc .woocommerce-Addresses::before, .sy-myacc .woocommerce-Addresses::after{ display: none !important; }
.sy-myacc .woocommerce-Address{ float: none !important; width: auto !important; margin: 0 !important; padding: 22px !important; background: #f8f9fc; border: 1px solid #eceef3; border-radius: 18px; }
.sy-myacc .woocommerce-Address-title{ display: flex !important; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 12px !important; }
.sy-myacc .woocommerce-Address-title h2{ margin: 0 !important; font-size: 17px !important; }
.sy-myacc .woocommerce-Address-title .edit{ float: none !important; padding: 7px 12px; border-radius: 999px; background: var(--sy-blue-soft); color: var(--sy-blue) !important; font: 600 12.5px/1 var(--sy-font) !important; }
.sy-myacc .woocommerce-Address address{ margin: 0; font: 400 14.5px/1.7 var(--sy-font); font-style: normal; color: #6b7280; }
/* forms (account details, edit address) */
.sy-myacc .woocommerce-MyAccount-content .form-row{ margin: 0 0 14px !important; padding: 0 !important; }
.sy-myacc .woocommerce-MyAccount-content label{ font: 600 13.5px/1.3 var(--sy-font) !important; color: var(--sy-ink) !important; margin-bottom: 6px !important; }
.sy-myacc .woocommerce-MyAccount-content input.input-text, .sy-myacc .woocommerce-MyAccount-content select, .sy-myacc .woocommerce-MyAccount-content .select2-selection{
	height: 48px !important; padding: 0 14px !important; border: 1.5px solid #dfe3ec !important; border-radius: 12px !important; background: #fff !important; font: 400 15px/1 var(--sy-font) !important; color: var(--sy-ink) !important; box-shadow: none !important; }
.sy-myacc .woocommerce-MyAccount-content input.input-text:focus{ border-color: var(--sy-blue) !important; box-shadow: 0 0 0 4px rgba(0,0,255,.1) !important; outline: 0; }
.sy-myacc .woocommerce-MyAccount-content fieldset{ margin: 22px 0 0 !important; padding: 20px !important; border: 1px solid #eceef3 !important; border-radius: 16px; }
.sy-myacc .woocommerce-MyAccount-content legend{ padding: 0 8px !important; font: 600 15px/1 var(--sy-font) !important; color: var(--sy-ink); }
.sy-myacc .woocommerce-MyAccount-content .wc-block-components-notice-banner{ margin-top: 4px !important; }
@media (max-width: 860px){
	.sy-myacc .woocommerce:has(.woocommerce-MyAccount-navigation){ grid-template-columns: 1fr; }
	.sy-myacc .woocommerce-MyAccount-navigation{ position: static; }
	.sy-myacc .woocommerce-MyAccount-content{ padding: 22px 18px !important; }
	.sy-myacc .woocommerce-Addresses{ grid-template-columns: 1fr; }
}
.sy-myacc .avada-myaccount-user{ display: none !important; }
.sy-myacc .woocommerce-MyAccount-navigation{ grid-column: 1; grid-row: 1; }
.sy-myacc .woocommerce-MyAccount-content{ grid-column: 2; grid-row: 1; }
@media (max-width: 860px){ .sy-myacc .woocommerce-MyAccount-navigation, .sy-myacc .woocommerce-MyAccount-content{ grid-column: 1; grid-row: auto; } }
body.sy-myacc .woocommerce-MyAccount-content .wc-block-components-notice-banner a.button, body.sy-myacc .woocommerce-MyAccount-content .wc-block-components-notice-banner a.woocommerce-Button, body.sy-myacc .woocommerce-MyAccount-content a.button, body.sy-myacc .woocommerce-MyAccount-content a.woocommerce-button{ color: #fff !important; }
body.sy-myacc .woocommerce-MyAccount-navigation ul li.is-active a::before{ background: #fff !important; opacity: 1 !important; }

/* 49. Header right side — language pill, cart, account: unified style + animated hover */
@keyframes sy-ring{ 0%{ box-shadow: 0 0 0 0 rgba(0,0,255,.35); } 100%{ box-shadow: 0 0 0 12px rgba(0,0,255,0); } }
@keyframes sy-wiggle{ 0%,100%{ transform: rotate(0); } 20%{ transform: rotate(-14deg); } 40%{ transform: rotate(10deg); } 60%{ transform: rotate(-6deg); } 80%{ transform: rotate(3deg); } }
@keyframes sy-bounce{ 0%,100%{ transform: translateY(0); } 35%{ transform: translateY(-3px); } 65%{ transform: translateY(1px); } }
@keyframes sy-pop{ 0%{ transform: scale(0); } 70%{ transform: scale(1.18); } 100%{ transform: scale(1); } }
@keyframes sy-drop{ from{ opacity: 0; transform: translateY(-8px) scale(.98); } to{ opacity: 1; transform: translateY(0) scale(1); } }

.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul{ gap: 12px !important; align-items: center !important; }
/* cart + account circles */
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a.awb-menu__main-a{
	width: 44px !important; height: 44px !important; min-height: 44px !important;
	background: #fff !important; border: 1px solid #e6e9f2 !important; color: var(--sy-ink) !important;
	box-shadow: 0 6px 16px -10px rgba(11,17,32,.35) !important; overflow: visible !important;
	transition: transform .3s cubic-bezier(.34,1.56,.64,1), background .3s ease, color .25s ease, border-color .25s ease, box-shadow .3s ease !important;
}
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a.awb-menu__main-a:hover,
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a.awb-menu__main-a:focus-visible{
	background: linear-gradient(135deg, #0000ff 0%, #3b2bff 100%) !important; border-color: transparent !important; color: #fff !important;
	transform: translateY(-3px) !important; box-shadow: 0 12px 24px -10px rgba(0,0,255,.55) !important;
	animation: sy-ring .9s ease-out 1;
}
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a .awb-menu__i i{ font-size: 18px !important; display: inline-block; }
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang):has(.fusion-widget-cart-number) > a:hover .awb-menu__i i,
.fusion-tb-header nav[aria-label="woomenu"] > ul > li.menu-item-has-children:not(.sy-lang) > a:hover .awb-menu__i i{ animation: sy-wiggle .6s ease 1; }
.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang):last-child > a:hover .awb-menu__i i{ animation: sy-bounce .5s ease 1; }
/* cart count badge */
.fusion-tb-header nav[aria-label="woomenu"] .fusion-widget-cart-number{
	top: -6px !important; right: -6px !important; min-width: 22px !important; height: 22px !important; line-height: 18px !important; padding: 0 6px !important;
	background: linear-gradient(135deg, #0000ff, #3b2bff) !important; border: 2px solid #fff !important; font: 700 11px/18px var(--sy-font) !important;
	box-shadow: 0 6px 12px -6px rgba(0,0,255,.7); animation: sy-pop .45s cubic-bezier(.34,1.56,.64,1) .3s both; transition: transform .3s ease;
}
.fusion-tb-header nav[aria-label="woomenu"] a:hover .fusion-widget-cart-number{ background: #ffde59 !important; color: #0a0f5c !important; transform: scale(1.1); }
/* language pill */
.fusion-tb-header li.sy-lang > a.awb-menu__main-a{
	height: 44px !important; min-height: 44px !important; padding: 0 12px 0 6px !important; gap: 8px; border-radius: 999px !important;
	background: #fff !important; border: 1px solid #e6e9f2 !important; box-shadow: 0 6px 16px -10px rgba(11,17,32,.35) !important;
	transition: transform .3s cubic-bezier(.34,1.56,.64,1), border-color .25s ease, box-shadow .3s ease, background .25s ease !important;
}
.fusion-tb-header li.sy-lang > a.awb-menu__main-a:hover, .fusion-tb-header li.sy-lang:hover > a.awb-menu__main-a{
	background: #fff !important; border-color: var(--sy-blue) !important; transform: translateY(-3px); box-shadow: 0 12px 24px -12px rgba(0,0,255,.45) !important;
}
.fusion-tb-header li.sy-lang .trp-flag-image{ width: 30px !important; height: 30px !important; border: 2px solid #fff; box-shadow: 0 0 0 1px #e6e9f2; transition: transform .35s cubic-bezier(.34,1.56,.64,1); }
.fusion-tb-header li.sy-lang:hover .trp-flag-image{ transform: scale(1.12) rotate(-8deg); }
.fusion-tb-header li.sy-lang .trp-ls-language-name, .fusion-tb-header li.sy-lang .menu-text{ font: 600 13.5px/1 var(--sy-font) !important; color: var(--sy-ink) !important; letter-spacing: .04em; }
.fusion-tb-header li.sy-lang [class*="open-nav-submenu"], .fusion-tb-header li.sy-lang .awb-menu__open-nav-submenu-hover{ transition: transform .3s ease; }
.fusion-tb-header li.sy-lang:hover [class*="open-nav-submenu"]{ transform: rotate(180deg); color: var(--sy-blue) !important; }
/* language dropdown card */
.fusion-tb-header li.sy-lang .awb-menu__sub-ul{
	min-width: 170px !important; padding: 8px !important; margin-top: 8px !important; border-radius: 16px !important; border: 1px solid #eceef3 !important;
	background: #fff !important; box-shadow: 0 24px 50px -24px rgba(11,17,32,.35) !important; overflow: hidden;
}
.fusion-tb-header li.sy-lang:hover .awb-menu__sub-ul, .fusion-tb-header li.sy-lang.expanded .awb-menu__sub-ul{ animation: sy-drop .25s ease both; }
.fusion-tb-header li.sy-lang .awb-menu__sub-ul li{ margin: 0 !important; }
.fusion-tb-header li.sy-lang .awb-menu__sub-a{ padding: 10px 12px !important; border-radius: 10px !important; font: 500 14px/1 var(--sy-font) !important; color: var(--sy-ink) !important; transition: background .2s ease, padding-left .2s ease; }
.fusion-tb-header li.sy-lang .awb-menu__sub-a:hover{ background: var(--sy-blue-soft) !important; color: var(--sy-blue) !important; padding-left: 16px !important; }
.fusion-tb-header li.sy-lang .awb-menu__sub-a .trp-flag-image{ width: 22px !important; height: 22px !important; }
@media (prefers-reduced-motion: reduce){
	.fusion-tb-header nav[aria-label="woomenu"] *, .fusion-tb-header li.sy-lang *{ animation: none !important; }
}
@media (max-width: 1024px){
	.fusion-tb-header nav[aria-label="woomenu"] > ul > li:not(.sy-lang) > a.awb-menu__main-a, .fusion-tb-header li.sy-lang--mobile > a.awb-menu__main-a{ width: 40px !important; height: 40px !important; min-height: 40px !important; }
	.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul{ gap: 8px !important; }
}
.fusion-tb-header nav[aria-label="woomenu"] .fusion-widget-cart-number{ top: -7px !important; right: -9px !important; left: auto !important; min-width: 20px !important; height: 20px !important; line-height: 16px !important; padding: 0 5px !important; font-size: 10.5px !important; }
.fusion-tb-header nav[aria-label="woomenu"] .fusion-widget-cart-number{ top: -4px !important; right: -5px !important; min-width: 16px !important; height: 16px !important; line-height: 13px !important; padding: 0 4px !important; font-size: 9px !important; border-width: 1.5px !important; }

/* 50. Language switcher as EN / 中文 toggle (inc/sunyu-lang-toggle.php) */
.fusion-tb-header li.sy-lang--toggle > a.awb-menu__main-a,
.fusion-tb-header li.sy-lang--toggle.sy-lang--mobile > a.awb-menu__main-a{
	width: auto !important; height: 44px !important; min-height: 44px !important; padding: 4px !important; gap: 0 !important;
	border-radius: 999px !important; background: #fff !important; border: 1px solid #e6e9f2 !important;
	box-shadow: 0 6px 16px -10px rgba(11,17,32,.35) !important; transform: none !important;
}
.fusion-tb-header li.sy-lang--toggle > a.awb-menu__main-a:hover{ border-color: var(--sy-blue) !important; box-shadow: 0 10px 22px -12px rgba(0,0,255,.45) !important; }
.fusion-tb-header li.sy-lang--toggle .awb-menu__open-nav-submenu-hover,
.fusion-tb-header li.sy-lang--toggle .awb-menu__open-nav-submenu_mobile{ display: none !important; }
.fusion-tb-header li.sy-lang--toggle .menu-text{ display: block !important; }
.sy-ltog{ position: relative; display: grid; grid-template-columns: 1fr 1fr; align-items: center; height: 34px; border-radius: 999px; background: #f1f3fa; isolation: isolate; }
.sy-ltog__opt{ position: relative; z-index: 1; min-width: 46px; padding: 0 12px; text-align: center; font: 700 13px/34px var(--sy-font); letter-spacing: .04em; color: #5b6478; transition: color .3s ease; }
.sy-ltog__knob{ position: absolute; z-index: 0; top: 0; left: 0; width: 50%; height: 100%; border-radius: 999px;
	background: linear-gradient(135deg, #0000ff 0%, #3b2bff 100%); box-shadow: 0 6px 14px -6px rgba(0,0,255,.6);
	transition: transform .4s cubic-bezier(.34,1.56,.64,1); }
.sy-ltog--zh .sy-ltog__knob{ transform: translateX(100%); }
.sy-ltog--en .sy-ltog__opt--en, .sy-ltog--zh .sy-ltog__opt--zh{ color: #fff; }
/* hover hints the switch: knob leans toward the other language */
a:hover > .menu-text > .sy-ltog--en .sy-ltog__knob{ transform: translateX(8%); }
a:hover > .menu-text > .sy-ltog--zh .sy-ltog__knob{ transform: translateX(92%); }
a:hover > .menu-text > .sy-ltog--en .sy-ltog__opt--zh, a:hover > .menu-text > .sy-ltog--zh .sy-ltog__opt--en{ color: var(--sy-blue); }
/* on click: slide fully before the page changes */
.sy-ltog.is-switching.sy-ltog--en .sy-ltog__knob{ transform: translateX(100%); }
.sy-ltog.is-switching.sy-ltog--zh .sy-ltog__knob{ transform: translateX(0); }
.sy-ltog.is-switching .sy-ltog__opt{ color: #5b6478 !important; }
.sy-ltog.is-switching.sy-ltog--en .sy-ltog__opt--zh, .sy-ltog.is-switching.sy-ltog--zh .sy-ltog__opt--en{ color: #fff !important; }
@media (max-width: 1024px){
	.fusion-tb-header li.sy-lang--toggle.sy-lang--mobile > a.awb-menu__main-a{ height: 40px !important; min-height: 40px !important; padding: 3px !important; }
	.sy-ltog{ height: 32px; }
	.sy-ltog__opt{ min-width: 38px; padding: 0 8px; font-size: 12px; line-height: 32px; }
}
@media (prefers-reduced-motion: reduce){ .sy-ltog__knob{ transition: none; } }

/* 50b. Language toggle — keep labels on one line */
.sy-ltog__opt{ white-space: nowrap; min-width: 0; }
.fusion-tb-header li.sy-lang--toggle .menu-text{ line-height: 1 !important; }
@media (max-width: 1024px){
	.fusion-tb-header li.sy-lang--toggle.sy-lang--mobile{ width: auto !important; }
	.sy-ltog__opt{ padding: 0 9px; font-size: 12px; }
}

/* 51. Mobile app-style bottom bar (Facebook, Instagram, TikTok, WhatsApp) + mobile polish */
.sy-mbar{ display: none; }
@media (max-width: 767px){
	.sy-float-social, .sy-wa-float{ display: none !important; }
	.sy-mbar{
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 9995;
		display: grid; grid-template-columns: repeat(4, 1fr); align-items: end;
		padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
		background: rgba(255,255,255,.94); -webkit-backdrop-filter: saturate(160%) blur(14px); backdrop-filter: saturate(160%) blur(14px);
		border-top: 1px solid #e8eaf2; box-shadow: 0 -10px 30px -18px rgba(11,17,32,.35);
		border-radius: 20px 20px 0 0;
	}
	.sy-mbar__i{ display: flex; flex-direction: column; align-items: center; gap: 4px; text-decoration: none !important; color: #5b6478 !important; -webkit-tap-highlight-color: transparent; }
	.sy-mbar__ic{ display: grid; place-items: center; width: 40px; height: 40px; border-radius: 14px; color: #fff; transition: transform .25s cubic-bezier(.34,1.56,.64,1); }
	.sy-mbar__ic svg{ width: 20px; height: 20px; }
	.sy-mbar__t{ font: 600 10.5px/1 var(--sy-font); letter-spacing: .02em; }
	.sy-mbar__i:active .sy-mbar__ic{ transform: scale(.88); }
	.sy-mbar__i--fb .sy-mbar__ic{ background: #1877f2; }
	.sy-mbar__i--ig .sy-mbar__ic{ background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 60%, #285aeb 90%); }
	.sy-mbar__i--tt .sy-mbar__ic{ background: #111; box-shadow: inset -2px 0 0 #fe2c55, inset 2px 0 0 #25f4ee; }
	/* WhatsApp = the main action: raised, bigger, green */
	.sy-mbar__i--wa{ color: #1f9d3a !important; }
	.sy-mbar__i--wa .sy-mbar__ic{ width: 52px; height: 52px; margin-top: -24px; border-radius: 50%; background: #25d366; border: 4px solid #fff; box-shadow: 0 10px 22px -8px rgba(37,211,102,.75); animation: sy-wa-pulse 2.4s ease-out infinite; }
	.sy-mbar__i--wa .sy-mbar__ic svg{ width: 24px; height: 24px; }
	@keyframes sy-wa-pulse{ 0%{ box-shadow: 0 10px 22px -8px rgba(37,211,102,.75), 0 0 0 0 rgba(37,211,102,.45); } 70%{ box-shadow: 0 10px 22px -8px rgba(37,211,102,.75), 0 0 0 12px rgba(37,211,102,0); } 100%{ box-shadow: 0 10px 22px -8px rgba(37,211,102,.75), 0 0 0 0 rgba(37,211,102,0); } }
	/* room for the bar so the footer/copyright isn't hidden; lift Avada's to-top button */
	body{ padding-bottom: calc(76px + env(safe-area-inset-bottom)) !important; background: #080c2e !important; }
	#toTop, .to-top-container, .fusion-totop{ bottom: calc(92px + env(safe-area-inset-bottom)) !important; }
	.fusion-sliding-bar-wrapper, .awb-off-canvas-wrap{ z-index: 99999; }

	/* --- shop grid: 2 columns like a shopping app --- */
	body.has-sidebar ul.products:not(:has(.product-list-view)){ display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px !important; margin: 0 !important; }
	body.has-sidebar ul.products:not(:has(.product-list-view))::before, body.has-sidebar ul.products:not(:has(.product-list-view))::after{ display: none !important; }
	body.has-sidebar ul.products li.product.product-grid-view{ width: auto !important; margin: 0 !important; padding: 0 !important; float: none !important; }
	body.has-sidebar ul.products li.product.product-grid-view .fusion-image-wrapper img{ aspect-ratio: 1 / 1; object-fit: cover; width: 100%; height: auto !important; }
	body.has-sidebar ul.products li.product.product-grid-view .product-details-container{ padding: 10px 12px 12px !important; }
	body.has-sidebar ul.products li.product.product-grid-view .product-title, body.has-sidebar ul.products li.product.product-grid-view .product-title a{ font-size: 14px !important; }
	body.has-sidebar ul.products li.product .price{ font-size: 13.5px !important; }
	body.has-sidebar ul.products li.product .woocommerce-price-suffix{ font-size: 11px !important; }
	/* sort / per-page / view toggles in one tidy row */
	body.has-sidebar .catalog-ordering{ display: flex !important; flex-wrap: wrap; gap: 8px; justify-content: space-between; align-items: center; margin-bottom: 18px !important; }
	body.has-sidebar .catalog-ordering > *{ margin: 0 !important; float: none !important; }
	body.has-sidebar .catalog-ordering .orderby-order-container{ flex: 1 1 100%; display: flex !important; gap: 8px; }
	body.has-sidebar .catalog-ordering .orderby-order-container > ul.orderby{ flex: 1 1 auto; }
	body.has-sidebar .catalog-ordering .order-dropdown, body.has-sidebar .catalog-ordering ul.orderby, body.has-sidebar .catalog-ordering ul.sort-count{ width: 100% !important; }
	body.has-sidebar .catalog-ordering > ul.sort-count{ flex: 1 1 auto; }

	/* related products: keep prices on one line */
	body.single-product div.product section.related ul.products li.product .price{ font-size: 13px !important; }
	body.single-product div.product section.related ul.products li.product .price .amount{ white-space: nowrap; }

	/* cart rows: fit the card (line total was clipped) */
	.wc-block-cart .wc-block-cart-items{ width: 100% !important; }
	.wc-block-cart .wc-block-cart-items__row{ grid-template-columns: 72px minmax(0, 1fr) auto !important; column-gap: 12px; }
	.wc-block-cart .wc-block-cart-items__row > td.wc-block-cart-item__image{ padding-right: 0 !important; }
	.wc-block-cart .wc-block-cart-items__row > td.wc-block-cart-item__product{ grid-column: 2 / 3 !important; min-width: 0; }
	.wc-block-cart .wc-block-cart-items__row > td.wc-block-cart-item__total{ grid-column: 3 !important; grid-row: 1 !important; font-size: 15px !important; }

}

/* 52. Mobile navigation panel: logo + close, language, links, locations */
nav.awb-menu:not(.collapse-enabled) li.sy-mhead, nav.awb-menu:not(.collapse-enabled) li.sy-mlang, nav.awb-menu:not(.collapse-enabled) li.sy-mfoot{ display: none !important; }
@media (max-width: 1024px){
	/* language lives inside the menu on mobile — remove it from the header bar */
	.fusion-tb-header li.sy-lang--mobile, .fusion-tb-header li.sy-lang--desktop{ display: none !important; }
}
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead,
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang,
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot{ display: block; }

/* opened panel: full-screen sheet sliding in */
@keyframes sy-sheet{ from{ opacity: 0; transform: translateY(14px); } to{ opacity: 1; transform: none; } }
.fusion-tb-header nav.awb-menu.collapse-enabled.expanded[aria-label="sunyu menu"] > ul.awb-menu__main-ul{
	position: fixed !important; inset: 0 !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100dvh !important; max-height: none !important;
	z-index: 100000 !important; margin: 0 !important; padding: 0 0 calc(24px + env(safe-area-inset-bottom)) !important;
	overflow-y: auto !important; overscroll-behavior: contain; display: block !important;
	background: linear-gradient(180deg, #ffffff 0%, #f6f7fc 100%) !important; border: 0 !important; box-shadow: none !important;
	animation: sy-sheet .32s cubic-bezier(.2,.8,.2,1) both;
}
body:has(nav.awb-menu.collapse-enabled.expanded[aria-label="sunyu menu"]){ overflow: hidden !important; }
body:has(nav.awb-menu.collapse-enabled.expanded[aria-label="sunyu menu"]) .sy-mbar{ display: none !important; }

/* head */
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead{
	position: sticky !important; top: 0; z-index: 3; display: flex !important; align-items: center; justify-content: space-between;
	padding: 14px 18px !important; margin: 0 0 6px !important; background: rgba(255,255,255,.92); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
	border-bottom: 1px solid #edf0f6 !important;
}
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead .sy-mhead__logo{ display: block; padding: 0 !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead .sy-mhead__logo img{ height: 46px !important; width: auto !important; max-width: none; display: block; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead .sy-mhead__close{
	display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border-radius: 50%; cursor: pointer;
	background: #f1f3fa; border: 1px solid #e6e9f2; color: var(--sy-ink); transition: transform .3s cubic-bezier(.34,1.56,.64,1), background .2s ease;
}
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead .sy-mhead__close svg{ width: 20px; height: 20px; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead .sy-mhead__close:active{ transform: rotate(90deg) scale(.92); background: var(--sy-blue-soft); }

/* language row */
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang{
	display: flex !important; align-items: center; justify-content: space-between; gap: 12px;
	margin: 8px 16px 10px !important; padding: 10px 10px 10px 16px !important; width: auto !important;
	background: #fff; border: 1px solid #e6e9f2 !important; border-radius: 16px; box-shadow: 0 8px 20px -16px rgba(11,17,32,.35);
}
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang .sy-mlang__label{ font: 600 12px/1 var(--sy-font); letter-spacing: .12em; text-transform: uppercase; color: #6b7280; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang > a{ padding: 0 !important; min-height: 0 !important; height: auto !important; background: none !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang .sy-ltog{ height: 36px; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang .sy-ltog__opt{ font-size: 13px; line-height: 36px; padding: 0 14px; }

/* menu links as soft rows */
.fusion-tb-header nav.awb-menu.collapse-enabled.expanded[aria-label="sunyu menu"] > ul > li:not(.sy-mhead):not(.sy-mlang):not(.sy-mfoot){
	margin: 0 16px !important; width: auto !important; border-bottom: 1px solid #edf0f6 !important;
}
.fusion-tb-header nav.awb-menu.collapse-enabled.expanded[aria-label="sunyu menu"] > ul > li:not(.sy-mhead):not(.sy-mlang):not(.sy-mfoot) > a.awb-menu__main-a{
	padding-left: 8px !important; padding-right: 8px !important; min-height: 54px !important; font: 600 16.5px/1.2 var(--sy-font) !important; border-radius: 12px; background: transparent !important;
}
.fusion-tb-header nav.awb-menu.collapse-enabled.expanded[aria-label="sunyu menu"] > ul > li.current-menu-item > a.awb-menu__main-a{ color: var(--sy-blue) !important; background: var(--sy-blue-soft) !important; padding-left: 14px !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled.expanded[aria-label="sunyu menu"] .awb-menu__sub-ul{ background: #f6f7fc !important; border-radius: 12px; margin: 0 0 10px !important; }

/* locations */
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot{ margin: 22px 16px 0 !important; padding: 0 !important; width: auto !important; border: 0 !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mfoot__title{ margin: 0 0 10px; font: 700 12px/1 var(--sy-font); letter-spacing: .14em; text-transform: uppercase; color: #6b7280; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc{
	display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; padding: 16px; border-radius: 18px; color: #c9cfee;
	background: radial-gradient(120% 120% at 100% 0%, #2d2bd6 0%, #0b1050 55%, #070b2e 100%); box-shadow: 0 16px 30px -20px rgba(10,15,92,.8);
}
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__tag{ align-self: flex-start; padding: 4px 9px; border-radius: 999px; background: rgba(255,255,255,.12); color: #ffde59; font: 700 10px/1 var(--sy-font); letter-spacing: .12em; text-transform: uppercase; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__name{ color: #fff; font: 700 15.5px/1.3 var(--sy-font); }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__addr{ font: 400 13px/1.5 var(--sy-font); }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__acts{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 8px; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__btn{
	display: flex; align-items: center; justify-content: center; gap: 6px; height: 38px; padding: 0 6px !important; border-radius: 12px;
	background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.16); color: #fff !important; font: 600 12px/1 var(--sy-font); text-decoration: none !important;
}
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__btn svg{ width: 15px; height: 15px; flex: none; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__btn--wa{ background: #25d366; border-color: #25d366; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__btn--dir{ background: #fff; color: #0a0f5c !important; border-color: #fff; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__btn:active{ transform: scale(.96); }
/* 52b. mobile panel fixes: Avada forces column + menu link backgrounds inside the collapsed menu */
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead,
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang{ flex-direction: row !important; display: flex !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead{ position: sticky !important; padding: 10px 16px !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead .sy-mhead__logo{ min-height: 0 !important; background: none !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mhead .sy-mhead__logo img{ width: 124px !important; height: 62px !important; object-fit: cover; object-position: 50% 50%; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang{ position: relative !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__btn{ min-height: 0 !important; height: 38px !important; background: rgba(255,255,255,.1) !important; color: #fff !important; font-size: 12px !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__btn--wa{ background: #25d366 !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__btn--dir{ background: #fff !important; color: #0a0f5c !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang{ border-radius: 16px !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mlang .sy-mlang__label{ white-space: nowrap; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc__btn{ border-radius: 12px !important; }
.fusion-tb-header nav.awb-menu.collapse-enabled[aria-label="sunyu menu"] li.sy-mfoot .sy-mloc{ border-radius: 18px !important; }

/* 53. Mobile header: logo hard left, cart/account/hamburger hard right; cart badge not clipped */
@media (max-width: 1024px){
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row{ justify-content: space-between !important; align-items: center !important; }
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row > .fusion-layout-column:has(.fusion-imageframe){ flex: 1 1 auto !important; width: auto !important; }
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row > .fusion-layout-column:has(.fusion-imageframe) > .fusion-column-wrapper{ justify-content: flex-start !important; align-items: flex-start !important; margin-left: 0 !important; }
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) .fusion-image-element{ text-align: left !important; }
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row > .fusion-layout-column:has(nav[aria-label="woomenu"]){ margin-left: auto !important; flex: 0 0 auto !important; width: auto !important; }
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row > .fusion-layout-column:has(nav[aria-label="sunyu menu"]){ flex: 0 0 auto !important; width: auto !important; margin-left: 12px !important; }
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row > .fusion-layout-column:has(nav[aria-label="woomenu"]) > .fusion-column-wrapper,
	.fusion-tb-header .fusion-fullwidth:has(nav[aria-label="sunyu menu"]) > .fusion-builder-row > .fusion-layout-column:has(nav[aria-label="sunyu menu"]) > .fusion-column-wrapper{ margin-left: 0 !important; margin-right: 0 !important; }
	.fusion-tb-header nav[aria-label="woomenu"] > ul.awb-menu__main-ul{ overflow: visible !important; padding-right: 0 !important; padding-top: 6px !important; margin-top: -6px !important; }
	.fusion-tb-header nav[aria-label="woomenu"], .fusion-tb-header .fusion-layout-column:has(nav[aria-label="woomenu"]) .fusion-column-wrapper{ overflow: visible !important; }
}

/* 54. Mobile: no padding on main content area (client request) */
@media (max-width: 767px){
	main#main{ padding: 0px !important; }
}

/* 55. Ultimate Member profile page (/user-3/<name>/): branded cover, card header, pill tabs, friendly empty state */
body.um-page-user #main{ background: linear-gradient(180deg, #f6f7fc 0%, #ffffff 520px) !important; }
body.um-page-user .um.um-profile{ max-width: 1040px !important; margin: 36px auto 70px !important; padding: 0 20px !important; font-family: var(--sy-font) !important; }
body.um-page-user .um-profile .um-form{ position: relative; background: #fff; border: 1px solid #e6e9f2; border-radius: 26px; box-shadow: 0 30px 60px -40px rgba(11,17,32,.35); overflow: hidden; }

/* cover */
body.um-page-user .um-profile .um-cover{ position: relative; height: 230px !important; background: radial-gradient(120% 140% at 100% 0%, #2d2bd6 0%, #0b1050 55%, #070b2e 100%) !important; overflow: hidden; }
body.um-page-user .um-profile .um-cover::before{ content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px); background-size: 34px 34px; -webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 95%); mask-image: linear-gradient(180deg, #000 0%, transparent 95%); pointer-events: none; }
body.um-page-user .um-profile .um-cover::after{ content: ""; position: absolute; width: 340px; height: 340px; right: -90px; bottom: -200px; border-radius: 50%; background: radial-gradient(circle, rgba(255,222,89,.35) 0%, rgba(255,222,89,0) 65%); pointer-events: none; }
body.um-page-user .um-profile .um-cover-e{ position: relative; z-index: 1; height: 100% !important; padding: 0 !important; background: transparent !important; }
body.um-page-user .um-profile .um-cover-e img{ width: 100% !important; height: 100% !important; object-fit: cover; }
body.um-page-user .um-profile .um-cover-add, body.um-page-user .um-profile .um-cover-overlay{ color: #fff !important; }

/* header: avatar overlapping the cover + name */
body.um-page-user .um-profile .um-header{ display: flex !important; align-items: flex-end; gap: 22px; min-height: 0 !important; padding: 0 36px 22px !important; margin: 0 !important; border: 0 !important; }
body.um-page-user .um-profile .um-header .um-clear{ display: none; }
body.um-page-user .um-profile .um-profile-photo{ float: none !important; position: relative !important; flex: none; width: 140px !important; height: 140px !important; margin: -70px 0 0 !important; padding: 0 !important; z-index: 2; }
body.um-page-user .um-profile .um-profile-photo a.um-profile-photo-img{ position: static !important; top: auto !important; left: auto !important; display: block !important; width: 140px !important; height: 140px !important; padding: 0 !important; border-radius: 50% !important; background: #fff !important; border: 6px solid #fff !important; box-shadow: 0 18px 34px -16px rgba(10,15,92,.55) !important; overflow: hidden; }
body.um-page-user .um-profile .um-profile-photo img{ width: 100% !important; height: 100% !important; border-radius: 50% !important; object-fit: cover; border: 0 !important; }
body.um-page-user .um-profile .um-profile-meta{ flex: 1; min-width: 0; padding: 18px 0 4px !important; margin: 0 !important; float: none !important; }
body.um-page-user .um-profile .um-main-meta{ padding: 0 !important; }
body.um-page-user .um-profile .um-name{ float: none !important; margin: 0 !important; font: 700 28px/1.2 var(--sy-font) !important; letter-spacing: -.01em; }
body.um-page-user .um-profile .um-name a{ color: #0b1120 !important; text-decoration: none !important; }
body.um-page-user .um-profile .um-name::after{ content: "Sunyu member"; display: block; margin-top: 6px; font: 600 11.5px/1 var(--sy-font); letter-spacing: .14em; text-transform: uppercase; color: var(--sy-blue); }
body.um-page-user .um-profile.um-role-administrator .um-name::after{ content: "Sunyu team"; }
body.um-page-user .um-profile .um-profile-status{ display: none !important; }

/* tabs: pill segmented bar */
body.um-page-user .um-profile .um-profile-navbar{ display: none !important; }
body.um-page-user .um-profile .um-profile-nav{ display: flex !important; flex-wrap: wrap; gap: 6px; margin: 0 36px !important; padding: 6px !important; background: #f3f5fb !important; border: 1px solid #e6e9f2; border-radius: 16px; }
body.um-page-user .um-profile .um-profile-nav > .um-clear{ display: none; }
body.um-page-user .um-profile .um-profile-nav-item{ float: none !important; margin: 0 !important; }
body.um-page-user .um-profile .um-profile-nav-item a{ display: flex !important; align-items: center; gap: 9px; height: 44px; padding: 0 18px !important; border-radius: 12px !important; background: transparent !important; color: #4b5563 !important; font: 600 14.5px/1 var(--sy-font) !important; text-decoration: none !important; transition: background .2s ease, color .2s ease, box-shadow .2s ease; }
body.um-page-user .um-profile .um-profile-nav-item a.uimob800-show{ display: none !important; }
body.um-page-user .um-profile .um-profile-nav-item a i{ position: static !important; top: auto !important; font-size: 16px !important; height: auto !important; line-height: 1 !important; color: inherit !important; }
body.um-page-user .um-profile .um-profile-nav-item a span.title{ position: static !important; padding: 0 !important; color: inherit !important; }
body.um-page-user .um-profile .um-profile-nav-item a:hover{ background: #fff !important; color: var(--sy-blue) !important; }
body.um-page-user .um-profile .um-profile-nav-item.active a{ background: var(--sy-blue) !important; color: #fff !important; box-shadow: 0 10px 20px -10px rgba(0,0,255,.6); }

/* body + empty state */
body.um-page-user .um-profile .um-profile-body{ max-width: none !important; padding: 34px 36px 40px !important; margin: 0 !important; }
body.um-page-user .um-profile .um-profile-body .um-row:has(> .um-col-1:empty){ display: none; }
body.um-page-user .um-profile p.um-profile-note{ display: flex !important; flex-direction: column; align-items: center; gap: 14px; margin: 0 !important; padding: 44px 24px !important; border: 1.5px dashed #d6dbea; border-radius: 20px; background: #fafbff; text-align: center; color: #6b7280 !important; font: 400 15px/1.6 var(--sy-font) !important; }
body.um-page-user .um-profile p.um-profile-note i{ display: none !important; }
body.um-page-user .um-profile p.um-profile-note::before{ content: ""; width: 64px; height: 64px; border-radius: 20px; background: var(--sy-blue-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230000ff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 20c1.5-3.5 4.5-5 8-5s6.5 1.5 8 5'/%3E%3C/svg%3E") center / 30px no-repeat; }
body.um-page-user .um-profile p.um-profile-note span{ max-width: 360px; }
body.um-page-user .um-profile p.um-profile-note a{ color: var(--sy-blue) !important; font-weight: 600; }
/* posts / comments lists */
body.um-page-user .um-profile .um-item{ padding: 18px 0 !important; border-bottom: 1px solid #edf0f6 !important; }
body.um-page-user .um-profile .um-item-link a{ color: #0b1120 !important; font: 600 16px/1.4 var(--sy-font) !important; }
body.um-page-user .um-profile .um-item-meta{ color: #6b7280 !important; font-size: 13px !important; }
body.um-page-user .um-profile .um-field-label label{ color: #0b1120 !important; font: 600 13.5px/1.3 var(--sy-font) !important; }

@media (max-width: 767px){
	body.um-page-user .um.um-profile{ margin: 18px auto 40px !important; padding: 0 14px !important; }
	body.um-page-user .um-profile .um-form{ border-radius: 22px; }
	body.um-page-user .um-profile .um-cover{ height: 150px !important; }
	body.um-page-user .um-profile .um-header{ flex-direction: column; align-items: center; gap: 4px; padding: 0 18px 18px !important; text-align: center; }
	body.um-page-user .um-profile .um-profile-photo, body.um-page-user .um-profile .um-profile-photo a.um-profile-photo-img{ width: 112px !important; height: 112px !important; }
	body.um-page-user .um-profile .um-profile-photo{ margin-top: -56px !important; }
	body.um-page-user .um-profile .um-profile-meta{ padding-top: 10px !important; }
	body.um-page-user .um-profile .um-name{ font-size: 23px !important; text-align: center; }
	body.um-page-user .um-profile .um-profile-nav{ margin: 0 16px !important; flex-wrap: nowrap; }
	body.um-page-user .um-profile .um-profile-nav-item{ flex: 1; }
	body.um-page-user .um-profile .um-profile-nav-item a{ justify-content: center; padding: 0 8px !important; font-size: 13px !important; }
	body.um-page-user .um-profile .um-profile-body{ padding: 22px 16px 26px !important; }
	body.um-page-user .um-profile p.um-profile-note{ padding: 32px 18px !important; }
	body.um-page-user .um-profile .um-profile-nav-item a{ gap: 6px; }
	body.um-page-user .um-profile .um-profile-nav-item a > *{ margin: 0 !important; align-self: center !important; display: block !important; line-height: 1 !important; }
	body.um-page-user .um-profile .um-profile-nav-item a i{ font-size: 14px !important; }
}
