
:root{
	--rosa-v2-green:#176844;
	--rosa-v2-green-dark:#0f5035;
	--rosa-v2-navy:#102739;
	--rosa-v2-navy-dark:#071a27;
	--rosa-v2-gold:#cc9a3a;
	--rosa-v2-text:#263844;
	--rosa-v2-muted:#667782;
	--rosa-v2-line:#dce6e2;
	--rosa-v2-soft:#f4f8f6;
	--rosa-v2-white:#fff;
	--rosa-v2-shell:1320px;
	--rosa-v2-radius:18px;
	--rosa-v2-shadow:0 16px 46px rgba(16,39,57,.12)
}

body.rosa-v2-active{
	background:#fff;
	color:var(--rosa-v2-text);
	font-family:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	font-size:16px;
	line-height:1.68;
	overflow-x:hidden;
	-webkit-font-smoothing:antialiased
}

body.rosa-v2-active *{box-sizing:border-box}

body.rosa-v2-active :where(
	h1,h2,h3,h4,h5,h6,p,a,span,li,label,strong,small,
	.elementor-heading-title,.elementor-widget-text-editor,
	.woocommerce-loop-product__title,.product_title,
	.woocommerce-product-details__short-description
){
	filter:none!important;
	-webkit-filter:none!important;
	backdrop-filter:none!important;
	-webkit-backdrop-filter:none!important;
	opacity:1!important;
	visibility:visible!important;
	text-shadow:none!important
}

body.rosa-v2-active img{
	filter:none!important;
	-webkit-filter:none!important
}

body.rosa-v2-active .rosa-v2-shell{
	width:min(calc(100% - 40px),var(--rosa-v2-shell));
	margin-inline:auto
}

/* Hide every theme/header-builder header and footer except this rebuild. */
body.rosa-v2-active header:not(.rosa-v2-header),
body.rosa-v2-active footer:not(.rosa-v2-footer),
body.rosa-v2-active #masthead,
body.rosa-v2-active #colophon,
body.rosa-v2-active .site-header,
body.rosa-v2-active .site-footer,
body.rosa-v2-active .elementor-location-header,
body.rosa-v2-active .elementor-location-footer,
body.rosa-v2-active [data-elementor-type="header"],
body.rosa-v2-active [data-elementor-type="footer"],
body.rosa-v2-active .hfe-header,
body.rosa-v2-active .hfe-footer,
body.rosa-v2-active .header-wrapper,
body.rosa-v2-active .footer-wrapper,
body.rosa-v2-active .header-main,
body.rosa-v2-active .footer-main,
body.rosa-v2-active .rosa-global-header,
body.rosa-v2-active .rosa-global-footer{
	display:none!important
}

body.rosa-v2-active .rosa-v2-header,
body.rosa-v2-active .rosa-v2-footer{
	display:block!important
}

body.rosa-v2-active .page-header,
body.rosa-v2-active .entry-header:has(.entry-title){
	display:none!important
}

body.admin-bar .rosa-v2-header{top:32px}

.rosa-v2-header{
	position:sticky;
	top:0;
	z-index:999999;
	background:#fff;
	border-bottom:1px solid var(--rosa-v2-line);
	box-shadow:0 5px 26px rgba(16,39,57,.06)
}

.rosa-v2-topbar{
	background:var(--rosa-v2-navy);
	color:#fff;
	font-size:13px
}

.rosa-v2-topbar .rosa-v2-shell{
	min-height:39px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:24px
}

.rosa-v2-topbar p{margin:0;color:#eef5f2}

.rosa-v2-topbar div div{
	display:flex;
	align-items:center;
	gap:10px
}

.rosa-v2-topbar a{color:#fff;text-decoration:none}

.rosa-v2-navigation>.rosa-v2-shell{
	height:82px;
	display:flex;
	align-items:center;
	gap:30px
}

.rosa-v2-logo{
	display:inline-flex;
	align-items:center;
	text-decoration:none;
	flex:0 0 auto
}

.rosa-v2-logo-image{
	max-width:195px;
	max-height:63px;
	width:auto;
	height:auto;
	object-fit:contain
}

.rosa-v2-logo-text{
	flex-direction:column;
	align-items:flex-start;
	line-height:1
}

.rosa-v2-logo-text strong{
	font-size:29px;
	letter-spacing:.08em;
	color:var(--rosa-v2-green)
}

.rosa-v2-logo-text span{
	margin-top:7px;
	font-size:12px;
	text-transform:uppercase;
	letter-spacing:.25em;
	color:var(--rosa-v2-navy)
}

.rosa-v2-primary-menu{
	margin-left:auto;
	display:flex;
	align-items:center;
	gap:27px
}

.rosa-v2-primary-menu>a,
.rosa-v2-dropdown>a{
	display:block;
	padding:30px 0;
	color:var(--rosa-v2-navy);
	font-size:15px;
	font-weight:740;
	text-decoration:none;
	white-space:nowrap
}

.rosa-v2-primary-menu>a:hover,
.rosa-v2-dropdown>a:hover{
	color:var(--rosa-v2-green)
}

.rosa-v2-dropdown{position:relative}

.rosa-v2-mega-menu,
.rosa-v2-small-menu{
	position:absolute;
	top:calc(100% - 4px);
	left:50%;
	transform:translateX(-50%);
	background:#fff;
	border:1px solid var(--rosa-v2-line);
	border-radius:0 0 18px 18px;
	box-shadow:var(--rosa-v2-shadow);
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:.18s ease
}

.rosa-v2-dropdown:hover>.rosa-v2-mega-menu,
.rosa-v2-dropdown:focus-within>.rosa-v2-mega-menu,
.rosa-v2-dropdown:hover>.rosa-v2-small-menu,
.rosa-v2-dropdown:focus-within>.rosa-v2-small-menu{
	opacity:1;
	visibility:visible;
	pointer-events:auto
}

.rosa-v2-mega-menu{
	width:770px;
	padding:29px;
	display:grid;
	grid-template-columns:1fr 1fr 1.08fr;
	gap:28px
}

.rosa-v2-small-menu{
	width:245px;
	padding:15px
}

.rosa-v2-mega-menu h3{
	margin:0 0 12px;
	color:var(--rosa-v2-muted);
	font-size:12px;
	text-transform:uppercase;
	letter-spacing:.14em
}

.rosa-v2-mega-menu a,
.rosa-v2-small-menu a{
	display:block;
	padding:7px 0;
	color:var(--rosa-v2-navy);
	font-weight:650;
	text-decoration:none
}

.rosa-v2-mega-menu a:hover,
.rosa-v2-small-menu a:hover{
	color:var(--rosa-v2-green)
}

.rosa-v2-mega-cta{
	padding:22px;
	border-radius:14px;
	background:var(--rosa-v2-soft)
}

.rosa-v2-mega-cta>span{
	color:var(--rosa-v2-green);
	font-size:12px;
	text-transform:uppercase;
	letter-spacing:.12em;
	font-weight:800
}

.rosa-v2-mega-cta p{margin:9px 0 15px}

.rosa-v2-header-actions{
	display:flex;
	align-items:center;
	gap:12px
}

.rosa-v2-search-button{
	width:44px;
	height:44px;
	border:1px solid var(--rosa-v2-line);
	border-radius:10px;
	background:#fff;
	color:var(--rosa-v2-navy);
	font-size:25px;
	cursor:pointer
}

.rosa-v2-quote-button,
.rosa-v2-button{
	min-height:48px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:12px 22px;
	border:1px solid var(--rosa-v2-green);
	border-radius:9px;
	background:var(--rosa-v2-green);
	color:#fff!important;
	font-weight:760;
	text-decoration:none;
	box-shadow:0 9px 22px rgba(23,104,68,.18);
	transition:.18s ease
}

.rosa-v2-quote-button:hover,
.rosa-v2-button:hover{
	background:var(--rosa-v2-green-dark);
	border-color:var(--rosa-v2-green-dark);
	transform:translateY(-1px)
}

.rosa-v2-button-outline{
	background:transparent;
	border-color:rgba(255,255,255,.65);
	box-shadow:none
}

.rosa-v2-button-outline:hover{
	background:#fff;
	border-color:#fff;
	color:var(--rosa-v2-navy)!important
}

.rosa-v2-button-light{
	background:#fff;
	border-color:#fff;
	color:var(--rosa-v2-navy)!important;
	box-shadow:none
}

.rosa-v2-button-light:hover{
	background:var(--rosa-v2-navy);
	border-color:var(--rosa-v2-navy);
	color:#fff!important
}

.rosa-v2-search-panel{
	padding:14px 0;
	border-top:1px solid var(--rosa-v2-line);
	background:var(--rosa-v2-soft)
}

.rosa-v2-search-panel form{
	display:flex;
	gap:10px
}

.rosa-v2-search-panel input{
	flex:1;
	min-height:49px;
	padding:0 16px;
	border:1px solid var(--rosa-v2-line);
	border-radius:9px;
	background:#fff;
	font:inherit
}

.rosa-v2-search-panel button{
	min-width:165px;
	border:0;
	border-radius:9px;
	background:var(--rosa-v2-green);
	color:#fff;
	font-weight:750
}

.rosa-v2-menu-button{display:none}

.rosa-v2-page-hero,
.rosa-v2-shop-hero{
	position:relative;
	min-height:510px;
	display:flex;
	align-items:center;
	overflow:hidden;
	background:
		radial-gradient(circle at 82% 24%,rgba(204,154,58,.20),transparent 22%),
		radial-gradient(circle at 70% 86%,rgba(255,255,255,.08),transparent 28%),
		linear-gradient(135deg,#071a27 0%,#103b38 54%,#176844 100%)
}

.rosa-v2-page-hero-copy{
	max-width:790px;
	padding:90px 0
}

.rosa-v2-kicker{
	display:inline-block;
	margin-bottom:16px;
	color:var(--rosa-v2-gold);
	font-size:13px;
	font-weight:820;
	text-transform:uppercase;
	letter-spacing:.14em
}

.rosa-v2-page-hero h1,
.rosa-v2-shop-hero h1{
	max-width:13ch;
	margin:0 0 24px;
	color:#fff;
	font-size:clamp(43px,6vw,76px);
	line-height:1.04;
	letter-spacing:-.045em
}

.rosa-v2-page-hero p,
.rosa-v2-shop-hero p{
	max-width:720px;
	margin:0 0 30px;
	color:#dce8e3;
	font-size:19px
}

.rosa-v2-hero-actions{
	display:flex;
	flex-wrap:wrap;
	gap:12px
}

.rosa-v2-benefits{
	border-bottom:1px solid var(--rosa-v2-line);
	background:#fff
}

.rosa-v2-benefit-grid{
	display:grid;
	grid-template-columns:repeat(4,1fr)
}

.rosa-v2-benefit-grid>div{
	padding:25px 22px;
	border-right:1px solid var(--rosa-v2-line)
}

.rosa-v2-benefit-grid>div:first-child{padding-left:0}
.rosa-v2-benefit-grid>div:last-child{border-right:0}

.rosa-v2-benefit-grid strong{
	display:block;
	margin-bottom:5px;
	color:var(--rosa-v2-navy);
	font-size:15px
}

.rosa-v2-benefit-grid span{
	display:block;
	color:var(--rosa-v2-muted);
	font-size:13px;
	line-height:1.45
}

.rosa-v2-section{padding:94px 0}
.rosa-v2-section-soft{background:var(--rosa-v2-soft)}

.rosa-v2-section-heading{
	display:grid;
	grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
	gap:75px;
	align-items:end;
	margin-bottom:42px
}

.rosa-v2-section-heading h2,
.rosa-v2-company-layout h2,
.rosa-v2-mission-grid h2,
.rosa-v2-reading-layout h2,
.rosa-v2-contact-layout h2,
.rosa-v2-enquiry-checklist h2{
	margin:0;
	color:var(--rosa-v2-navy);
	font-size:clamp(34px,4vw,53px);
	line-height:1.1;
	letter-spacing:-.035em
}

.rosa-v2-section-heading p,
.rosa-v2-company-layout p,
.rosa-v2-reading-layout p{
	margin:0 0 11px;
	color:var(--rosa-v2-muted)
}

.rosa-v2-text-link{
	color:var(--rosa-v2-green)!important;
	font-weight:800;
	text-decoration:none
}

.rosa-v2-category-grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:23px
}

.rosa-v2-category-card{
	position:relative;
	min-height:310px;
	overflow:hidden;
	border:1px solid var(--rosa-v2-line);
	border-radius:var(--rosa-v2-radius);
	background:#fff;
	box-shadow:0 10px 30px rgba(16,39,57,.06);
	transition:.2s ease
}

.rosa-v2-category-card:hover{
	transform:translateY(-5px);
	box-shadow:var(--rosa-v2-shadow)
}

.rosa-v2-category-accent{
	height:9px;
	background:linear-gradient(90deg,var(--rosa-v2-green),var(--rosa-v2-gold))
}

.rosa-v2-category-card:nth-child(2) .rosa-v2-category-accent{background:linear-gradient(90deg,#a94b36,#cc9a3a)}
.rosa-v2-category-card:nth-child(3) .rosa-v2-category-accent{background:linear-gradient(90deg,#8f3d36,#173f58)}
.rosa-v2-category-card:nth-child(4) .rosa-v2-category-accent{background:linear-gradient(90deg,#b17b24,#667e3f)}
.rosa-v2-category-card:nth-child(5) .rosa-v2-category-accent{background:linear-gradient(90deg,#d1aa51,#5e8e7b)}
.rosa-v2-category-card:nth-child(6) .rosa-v2-category-accent{background:linear-gradient(90deg,#557f31,#caa43d)}

.rosa-v2-category-card-content{padding:38px 31px 31px}

.rosa-v2-category-card-content>span{
	color:var(--rosa-v2-green);
	font-size:12px;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.13em
}

.rosa-v2-category-card-content h3{
	margin:14px 0 12px;
	color:var(--rosa-v2-navy);
	font-size:27px
}

.rosa-v2-category-card-content p{
	margin:0 0 19px;
	color:var(--rosa-v2-muted)
}

.rosa-v2-category-card-content a{
	color:var(--rosa-v2-green);
	font-weight:800;
	text-decoration:none
}

.rosa-v2-company-layout{
	display:grid;
	grid-template-columns:minmax(0,1.25fr) minmax(350px,.75fr);
	gap:68px;
	align-items:start
}

.rosa-v2-inline-actions{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:20px;
	margin-top:28px
}

.rosa-v2-profile-card,
.rosa-v2-facts,
.rosa-v2-contact-details{
	padding:36px;
	border-radius:22px;
	background:var(--rosa-v2-navy);
	color:#fff;
	box-shadow:var(--rosa-v2-shadow)
}

.rosa-v2-profile-card>span,
.rosa-v2-facts>span{
	color:var(--rosa-v2-gold);
	font-size:12px;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.13em
}

.rosa-v2-profile-card h3,
.rosa-v2-facts h3{
	margin:9px 0 24px;
	color:#fff;
	font-size:29px
}

.rosa-v2-profile-card dl,
.rosa-v2-facts dl{
	margin:0
}

.rosa-v2-profile-card dl>div,
.rosa-v2-facts dl>div{
	display:grid;
	grid-template-columns:135px 1fr;
	gap:17px;
	padding:14px 0;
	border-top:1px solid rgba(255,255,255,.14)
}

.rosa-v2-profile-card dt,
.rosa-v2-facts dt{
	color:#afbdc5;
	font-size:13px
}

.rosa-v2-profile-card dd,
.rosa-v2-facts dd{
	margin:0;
	color:#fff;
	font-weight:700
}

.rosa-v2-profile-card ul{
	margin:0;
	padding-left:19px
}

.rosa-v2-profile-card li{margin:7px 0}

.rosa-v2-service-grid,
.rosa-v2-value-grid,
.rosa-v2-buyer-grid,
.rosa-v2-process-grid{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:20px
}

.rosa-v2-service-grid-six{
	grid-template-columns:repeat(3,1fr)
}

.rosa-v2-service-grid article,
.rosa-v2-value-grid article,
.rosa-v2-buyer-grid article,
.rosa-v2-process-grid article{
	padding:30px;
	border:1px solid var(--rosa-v2-line);
	border-radius:16px;
	background:#fff;
	box-shadow:0 8px 26px rgba(16,39,57,.055)
}

.rosa-v2-service-grid article>span{
	width:50px;
	height:50px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-bottom:22px;
	border-radius:14px;
	background:#e9f4ee;
	color:var(--rosa-v2-green);
	font-size:23px
}

.rosa-v2-service-grid h3,
.rosa-v2-value-grid h3,
.rosa-v2-buyer-grid h3,
.rosa-v2-process-grid h3{
	margin:0 0 11px;
	color:var(--rosa-v2-navy);
	font-size:21px
}

.rosa-v2-service-grid p,
.rosa-v2-value-grid p,
.rosa-v2-buyer-grid p,
.rosa-v2-process-grid p{
	margin:0;
	color:var(--rosa-v2-muted)
}

.rosa-v2-dark-section{
	background:var(--rosa-v2-navy);
	color:#fff
}

.rosa-v2-dark-section .rosa-v2-section-heading h2,
.rosa-v2-dark-section .rosa-v2-section-heading p,
.rosa-v2-dark-section .rosa-v2-mission-grid h2,
.rosa-v2-dark-section .rosa-v2-mission-grid p,
.rosa-v2-dark-section .rosa-v2-reading-layout h2,
.rosa-v2-dark-section .rosa-v2-reading-layout p,
.rosa-v2-dark-section .rosa-v2-enquiry-checklist h2{
	color:#fff
}

.rosa-v2-dark-section .rosa-v2-buyer-grid article{
	border-color:rgba(255,255,255,.12);
	background:rgba(255,255,255,.07);
	box-shadow:none
}

.rosa-v2-dark-section .rosa-v2-buyer-grid h3{color:#fff}
.rosa-v2-dark-section .rosa-v2-buyer-grid p{color:#c9d5dc}
.rosa-v2-dark-section a{color:#fff}

.rosa-v2-timeline{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:20px
}

.rosa-v2-timeline article{
	padding:28px;
	border-top:5px solid var(--rosa-v2-gold);
	border-radius:0 0 15px 15px;
	background:#fff;
	box-shadow:0 8px 25px rgba(16,39,57,.06)
}

.rosa-v2-timeline article>span{
	color:var(--rosa-v2-green);
	font-size:14px;
	font-weight:820
}

.rosa-v2-timeline h3{
	margin:8px 0 10px;
	color:var(--rosa-v2-navy)
}

.rosa-v2-timeline p{
	margin:0;
	color:var(--rosa-v2-muted)
}

.rosa-v2-mission-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:24px
}

.rosa-v2-mission-grid article{
	padding:44px;
	border:1px solid var(--rosa-v2-line);
	border-radius:20px;
	background:#fff
}

.rosa-v2-dark-section .rosa-v2-mission-grid article{
	border-color:rgba(255,255,255,.13);
	background:rgba(255,255,255,.07)
}

.rosa-v2-profile-toc{
	display:grid;
	grid-template-columns:.7fr 1.3fr;
	gap:60px;
	align-items:start
}

.rosa-v2-profile-toc h2{
	margin:0;
	color:var(--rosa-v2-navy);
	font-size:42px
}

.rosa-v2-profile-toc nav{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:10px
}

.rosa-v2-profile-toc nav a{
	padding:14px 16px;
	border:1px solid var(--rosa-v2-line);
	border-radius:9px;
	color:var(--rosa-v2-navy);
	font-weight:700;
	text-decoration:none
}

.rosa-v2-profile-toc nav a:hover{
	border-color:var(--rosa-v2-green);
	color:var(--rosa-v2-green)
}

.rosa-v2-reading-layout{
	display:grid;
	grid-template-columns:.8fr 1.2fr;
	gap:70px;
	align-items:start
}

.rosa-v2-enquiry-checklist{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:70px;
	align-items:start
}

.rosa-v2-enquiry-checklist ul{
	margin:0;
	padding:0;
	list-style:none
}

.rosa-v2-enquiry-checklist li{
	position:relative;
	padding:13px 0 13px 30px;
	border-bottom:1px solid rgba(255,255,255,.13)
}

.rosa-v2-enquiry-checklist li:before{
	content:"✓";
	position:absolute;
	left:0;
	color:var(--rosa-v2-gold);
	font-weight:900
}

.rosa-v2-contact-layout{
	display:grid;
	grid-template-columns:minmax(320px,.76fr) minmax(0,1.24fr);
	gap:50px;
	align-items:start
}

.rosa-v2-contact-details{
	position:sticky;
	top:155px
}

.rosa-v2-contact-details h2{color:#fff;font-size:38px}
.rosa-v2-contact-details>div{padding:17px 0;border-top:1px solid rgba(255,255,255,.14)}
.rosa-v2-contact-details strong{color:var(--rosa-v2-gold)}
.rosa-v2-contact-details p{margin:5px 0 0;color:#d2dde2}
.rosa-v2-contact-details a{color:#fff}

.rosa-v2-contact-form-card{
	padding:38px;
	border:1px solid var(--rosa-v2-line);
	border-radius:20px;
	background:#fff;
	box-shadow:var(--rosa-v2-shadow)
}

.rosa-v2-contact-form-card h2{
	margin:0 0 10px;
	color:var(--rosa-v2-navy);
	font-size:38px
}

.rosa-v2-contact-form-card>p{
	color:var(--rosa-v2-muted)
}

.rosa-v2-form-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:18px
}

.rosa-v2-form-wide{grid-column:1/-1}

.rosa-v2-contact-form label>span{
	display:block;
	margin-bottom:6px;
	color:var(--rosa-v2-navy);
	font-weight:700
}

.rosa-v2-contact-form input,
.rosa-v2-contact-form textarea,
.rosa-v2-contact-form select{
	width:100%;
	min-height:49px;
	padding:11px 14px;
	border:1px solid #cfdade;
	border-radius:9px;
	background:#fff;
	color:var(--rosa-v2-text);
	font:inherit
}

.rosa-v2-contact-form textarea{min-height:165px;resize:vertical}

.rosa-v2-contact-form input:focus,
.rosa-v2-contact-form textarea:focus{
	border-color:var(--rosa-v2-green);
	box-shadow:0 0 0 4px rgba(23,104,68,.11);
	outline:none
}

.rosa-v2-consent{
	display:flex!important;
	align-items:flex-start;
	gap:10px;
	margin:18px 0
}

.rosa-v2-consent input{
	width:18px!important;
	min-height:auto!important;
	margin-top:5px
}

.rosa-v2-honeypot{
	position:absolute!important;
	left:-10000px!important
}

.rosa-v2-form-notice{
	margin-bottom:18px;
	padding:14px 16px;
	border-radius:9px;
	font-weight:700
}

.rosa-v2-form-success{
	background:#e8f5ed;
	color:#176844
}

.rosa-v2-form-error{
	background:#fcebea;
	color:#a32c2c
}

.rosa-v2-shop-hero{
	min-height:430px
}

.rosa-v2-shop-hero .rosa-v2-shell{
	padding:80px 0
}

.rosa-v2-shop-content{
	padding-top:55px;
	padding-bottom:90px
}

.rosa-v2-shop-categories{
	display:flex;
	flex-wrap:wrap;
	gap:9px;
	margin:0 0 28px
}

.rosa-v2-shop-categories a{
	padding:9px 13px;
	border:1px solid var(--rosa-v2-line);
	border-radius:999px;
	background:#fff;
	color:var(--rosa-v2-navy);
	font-size:13px;
	font-weight:720;
	text-decoration:none
}

.rosa-v2-shop-categories a:hover{
	border-color:var(--rosa-v2-green);
	color:var(--rosa-v2-green)
}

body.rosa-v2-active .woocommerce-products-header{
	margin-bottom:30px
}

body.rosa-v2-active .woocommerce-products-header__title{
	color:var(--rosa-v2-navy);
	font-size:clamp(35px,4vw,53px)
}

body.rosa-v2-active .woocommerce-result-count{
	color:var(--rosa-v2-muted)
}

body.rosa-v2-active .woocommerce-ordering select{
	min-height:46px;
	padding:8px 12px;
	border:1px solid var(--rosa-v2-line);
	border-radius:8px;
	background:#fff
}

body.rosa-v2-active .woocommerce ul.products{
	display:grid!important;
	grid-template-columns:repeat(4,minmax(0,1fr))!important;
	gap:22px!important;
	margin:30px 0 45px!important;
	padding:0!important
}

body.rosa-v2-active .woocommerce ul.products:before,
body.rosa-v2-active .woocommerce ul.products:after{
	display:none!important
}

body.rosa-v2-active .woocommerce ul.products li.product{
	float:none!important;
	width:auto!important;
	height:100%;
	margin:0!important;
	padding:14px 14px 18px!important;
	display:flex;
	flex-direction:column;
	border:1px solid var(--rosa-v2-line);
	border-radius:15px;
	background:#fff;
	box-shadow:0 8px 25px rgba(16,39,57,.06);
	transition:.18s ease
}

body.rosa-v2-active .woocommerce ul.products li.product:hover{
	transform:translateY(-4px);
	box-shadow:var(--rosa-v2-shadow)
}

body.rosa-v2-active .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
	display:flex;
	flex:1;
	flex-direction:column;
	text-decoration:none
}

body.rosa-v2-active .woocommerce ul.products li.product img{
	width:100%;
	aspect-ratio:1/1;
	padding:12px;
	border-radius:10px;
	background:#fff;
	object-fit:contain
}

body.rosa-v2-active .woocommerce-loop-product__title{
	min-height:47px;
	color:var(--rosa-v2-navy)!important;
	font-size:16px!important;
	line-height:1.45!important
}

body.rosa-v2-active .woocommerce ul.products li.product .price{
	color:var(--rosa-v2-green)!important;
	font-weight:800
}

body.rosa-v2-active .woocommerce ul.products li.product .button{
	width:100%;
	min-height:46px;
	margin-top:auto!important;
	border-radius:8px!important;
	background:var(--rosa-v2-green)!important;
	color:#fff!important;
	text-align:center
}

body.rosa-v2-active .woocommerce nav.woocommerce-pagination ul{
	display:flex;
	gap:6px;
	border:0
}

body.rosa-v2-active .woocommerce nav.woocommerce-pagination ul li{
	border:0
}

body.rosa-v2-active .woocommerce nav.woocommerce-pagination a,
body.rosa-v2-active .woocommerce nav.woocommerce-pagination span{
	min-width:42px;
	min-height:42px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid var(--rosa-v2-line);
	border-radius:8px;
	background:#fff;
	color:var(--rosa-v2-navy)
}

body.rosa-v2-active .woocommerce nav.woocommerce-pagination .current{
	border-color:var(--rosa-v2-green);
	background:var(--rosa-v2-green);
	color:#fff
}

body.rosa-v2-active .woocommerce div.product{
	width:min(calc(100% - 40px),var(--rosa-v2-shell));
	margin:55px auto 90px;
	padding:clamp(20px,3vw,40px);
	border:1px solid var(--rosa-v2-line);
	border-radius:22px;
	background:#fff;
	box-shadow:0 12px 36px rgba(16,39,57,.08)
}

body.rosa-v2-active .woocommerce div.product .product_title{
	color:var(--rosa-v2-navy);
	font-size:clamp(34px,4vw,54px);
	line-height:1.08
}

body.rosa-v2-active .woocommerce div.product div.images img{
	aspect-ratio:1/1;
	padding:18px;
	background:#fff;
	object-fit:contain
}

body.rosa-v2-active .woocommerce div.product .product_meta{
	margin-top:22px;
	padding:18px;
	border-radius:10px;
	background:var(--rosa-v2-soft)
}

.rosa-v2-single-quote{
	margin-top:25px;
	padding:23px;
	border-left:5px solid var(--rosa-v2-gold);
	border-radius:10px;
	background:var(--rosa-v2-soft)
}

.rosa-v2-single-quote strong{
	color:var(--rosa-v2-navy);
	font-size:19px
}

.rosa-v2-single-quote p{
	margin:7px 0 16px;
	color:var(--rosa-v2-muted)
}

.rosa-v2-footer-cta{
	padding:52px 0;
	background:var(--rosa-v2-green);
	color:#fff
}

.rosa-v2-footer-cta .rosa-v2-shell{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:40px
}

.rosa-v2-footer-cta h2{
	max-width:850px;
	margin:0;
	color:#fff;
	font-size:clamp(30px,4vw,48px);
	line-height:1.12
}

.rosa-v2-footer-cta .rosa-v2-kicker{color:#dbeadf}

.rosa-v2-footer-main{
	padding:70px 0;
	background:var(--rosa-v2-navy-dark);
	color:#bdcbd2
}

.rosa-v2-footer-grid{
	display:grid;
	grid-template-columns:1.4fr .82fr .82fr 1fr;
	gap:54px
}

.rosa-v2-footer-main .rosa-v2-logo-image{
	filter:brightness(0) invert(1)!important
}

.rosa-v2-footer-main .rosa-v2-logo-text strong{color:#fff}
.rosa-v2-footer-main .rosa-v2-logo-text span{color:#aebdc5}

.rosa-v2-footer-main h3{
	margin:0 0 18px;
	color:#fff;
	font-size:16px
}

.rosa-v2-footer-main a{
	display:block;
	margin:8px 0;
	color:#c6d2d7;
	text-decoration:none
}

.rosa-v2-footer-main a:hover{color:#fff}
.rosa-v2-footer-main p{color:#aebdc5}
.rosa-v2-footer-about p{max-width:420px}
.rosa-v2-footer-about strong{color:#fff}

.rosa-v2-footer-bottom{
	padding:18px 0;
	background:#06141e;
	color:#8fa2ac;
	font-size:13px
}

.rosa-v2-footer-bottom .rosa-v2-shell{
	display:flex;
	justify-content:space-between;
	gap:20px
}

.rosa-v2-footer-bottom p{margin:0}

body.rosa-v2-remove-numbers .elementor-counter-number-wrapper,
body.rosa-v2-remove-numbers [class*="step-number"],
body.rosa-v2-remove-numbers [class*="service-number"],
body.rosa-v2-remove-numbers [class*="process-number"],
body.rosa-v2-remove-numbers [class*="card-number"],
body.rosa-v2-remove-numbers .number-box{
	display:none!important
}

body.rosa-v2-remove-numbers .entry-content ol:not(.woocommerce-pagination):not(.wc-block-grid){
	list-style:none;
	padding-left:0
}

@media(max-width:1120px){
	.rosa-v2-primary-menu{gap:18px}
	.rosa-v2-primary-menu>a,.rosa-v2-dropdown>a{font-size:14px}
	.rosa-v2-category-grid{grid-template-columns:repeat(2,1fr)}
	.rosa-v2-service-grid,.rosa-v2-value-grid,.rosa-v2-buyer-grid,.rosa-v2-process-grid{grid-template-columns:repeat(2,1fr)}
	.rosa-v2-service-grid-six{grid-template-columns:repeat(2,1fr)}
	.rosa-v2-timeline{grid-template-columns:repeat(2,1fr)}
	body.rosa-v2-active .woocommerce ul.products{grid-template-columns:repeat(3,1fr)!important}
	.rosa-v2-footer-grid{grid-template-columns:1.3fr 1fr 1fr}
	.rosa-v2-footer-grid>div:last-child{grid-column:1/-1}
}

@media(max-width:900px){
	body.admin-bar .rosa-v2-header{top:46px}
	.rosa-v2-topbar .rosa-v2-shell{justify-content:center}
	.rosa-v2-topbar p{display:none}
	.rosa-v2-navigation>.rosa-v2-shell{height:74px}
	.rosa-v2-menu-button{
		width:48px;
		height:45px;
		display:flex;
		margin-left:auto;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		gap:5px;
		border:1px solid var(--rosa-v2-line);
		border-radius:10px;
		background:#fff;
		cursor:pointer
	}
	.rosa-v2-menu-button span{width:22px;height:2px;display:block;background:var(--rosa-v2-navy)}
	.rosa-v2-menu-button em{position:absolute;left:-9999px}
	.rosa-v2-primary-menu{
		position:absolute;
		top:113px;
		left:0;
		right:0;
		display:none;
		max-height:calc(100vh - 120px);
		margin:0;
		padding:15px 20px 24px;
		flex-direction:column;
		align-items:stretch;
		gap:0;
		overflow-y:auto;
		border-top:1px solid var(--rosa-v2-line);
		background:#fff;
		box-shadow:var(--rosa-v2-shadow)
	}
	body.admin-bar .rosa-v2-primary-menu{top:121px}
	.rosa-v2-primary-menu.is-open{display:flex}
	.rosa-v2-primary-menu>a,.rosa-v2-dropdown>a{padding:14px 0;border-bottom:1px solid var(--rosa-v2-line)}
	.rosa-v2-mega-menu,.rosa-v2-small-menu{
		position:static;
		width:auto;
		display:grid;
		grid-template-columns:1fr;
		padding:15px 0 0;
		transform:none;
		border:0;
		border-radius:0;
		box-shadow:none;
		opacity:1;
		visibility:visible;
		pointer-events:auto
	}
	.rosa-v2-header-actions{display:none}
	.rosa-v2-section-heading,.rosa-v2-company-layout,.rosa-v2-reading-layout,.rosa-v2-contact-layout,.rosa-v2-profile-toc,.rosa-v2-enquiry-checklist{grid-template-columns:1fr;gap:28px}
	.rosa-v2-contact-details{position:static}
	.rosa-v2-benefit-grid{grid-template-columns:repeat(2,1fr)}
	.rosa-v2-benefit-grid>div{border-bottom:1px solid var(--rosa-v2-line)}
	.rosa-v2-footer-cta .rosa-v2-shell{align-items:flex-start;flex-direction:column}
}

@media(max-width:680px){
	body.rosa-v2-active .rosa-v2-shell{width:min(calc(100% - 26px),var(--rosa-v2-shell))}
	.rosa-v2-topbar div div{font-size:12px;gap:6px}
	.rosa-v2-page-hero,.rosa-v2-shop-hero{min-height:520px}
	.rosa-v2-page-hero h1,.rosa-v2-shop-hero h1{font-size:41px}
	.rosa-v2-page-hero p,.rosa-v2-shop-hero p{font-size:17px}
	.rosa-v2-section{padding:70px 0}
	.rosa-v2-category-grid,.rosa-v2-service-grid,.rosa-v2-value-grid,.rosa-v2-buyer-grid,.rosa-v2-process-grid,.rosa-v2-timeline,.rosa-v2-mission-grid,.rosa-v2-service-grid-six{grid-template-columns:1fr}
	.rosa-v2-benefit-grid{grid-template-columns:1fr}
	.rosa-v2-benefit-grid>div{padding-left:0;border-right:0}
	.rosa-v2-form-grid{grid-template-columns:1fr}
	.rosa-v2-form-wide{grid-column:auto}
	.rosa-v2-profile-toc nav{grid-template-columns:1fr}
	body.rosa-v2-active .woocommerce ul.products{grid-template-columns:1fr!important}
	.rosa-v2-footer-grid{grid-template-columns:1fr;gap:36px}
	.rosa-v2-footer-grid>div:last-child{grid-column:auto}
	.rosa-v2-footer-bottom .rosa-v2-shell{flex-direction:column}
	.rosa-v2-profile-card dl>div,.rosa-v2-facts dl>div{grid-template-columns:1fr;gap:5px}
}

@media(prefers-reduced-motion:reduce){
	*{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}


/* Owner-supplied ROSA homepage artwork. */
.rosa-v2-owner-banner{
	background:#f7f5ef;
	border-bottom:1px solid var(--rosa-v2-line)
}

.rosa-v2-owner-banner-image{
	width:100%;
	display:flex;
	justify-content:center;
	overflow:hidden;
	background:linear-gradient(135deg,#f6f1e8,#e5eee8)
}

.rosa-v2-owner-banner-image img{
	display:block;
	width:min(100%,1254px);
	height:auto;
	object-fit:contain
}

.rosa-v2-owner-banner-cta{
	padding:34px 0;
	background:var(--rosa-v2-navy);
	color:#fff
}

.rosa-v2-owner-banner-cta .rosa-v2-shell{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:40px
}

.rosa-v2-owner-banner-cta h1{
	margin:0 0 8px;
	color:#fff;
	font-size:clamp(30px,4vw,48px);
	line-height:1.08;
	letter-spacing:-.035em
}

.rosa-v2-owner-banner-cta p{
	margin:0;
	color:#d4e0e5
}

.rosa-v2-owner-banner-cta .rosa-v2-kicker{
	margin-bottom:8px
}

.rosa-v2-category-grid-images .rosa-v2-category-card{
	min-height:0;
	display:flex;
	flex-direction:column
}

.rosa-v2-category-card-image{
	display:block;
	aspect-ratio:1/1;
	overflow:hidden;
	background:#fff;
	border-bottom:1px solid var(--rosa-v2-line)
}

.rosa-v2-category-card-image img{
	width:100%;
	height:100%;
	padding:8px;
	object-fit:contain;
	background:#fff;
	transition:transform .22s ease
}

.rosa-v2-category-card.has-image:hover .rosa-v2-category-card-image img{
	transform:scale(1.025)
}

.rosa-v2-category-card.text-only{
	min-height:390px;
	background:
		radial-gradient(circle at 84% 12%,rgba(204,154,58,.16),transparent 24%),
		linear-gradient(145deg,#fff,#f4f8f6)
}

.rosa-v2-category-card.text-only .rosa-v2-category-card-content{
	padding-top:55px
}

@media(max-width:900px){
	.rosa-v2-owner-banner-cta .rosa-v2-shell{
		align-items:flex-start;
		flex-direction:column
	}
}

@media(max-width:680px){
	.rosa-v2-owner-banner-image img{
		width:100%
	}
	.rosa-v2-owner-banner-cta{
		padding:28px 0
	}
}


/* ================================================================
   ROSA v2.2 mobile optimisation and unwanted-banner removal
   ================================================================ */

/* Never display the retired truck/crates image, even if an old builder block
   or cached inline style still references the filename. */
body.rosa-v2-active img[src*="rosa-wholesale-distribution-banner"],
body.rosa-v2-active source[srcset*="rosa-wholesale-distribution-banner"],
body.rosa-v2-active [style*="rosa-wholesale-distribution-banner"]{
\tdisplay:none!important;
\tbackground-image:none!important
}

.rosa-v2-clean-hero{isolation:isolate}
.rosa-v2-clean-hero>.rosa-v2-shell{position:relative;z-index:2}
.rosa-v2-clean-hero-shapes{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}
.rosa-v2-clean-hero-shapes span{position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%}
.rosa-v2-clean-hero-shapes span:nth-child(1){width:560px;height:560px;right:-110px;top:-180px}
.rosa-v2-clean-hero-shapes span:nth-child(2){width:310px;height:310px;right:220px;bottom:-160px;background:rgba(255,255,255,.035)}
.rosa-v2-clean-hero-shapes span:nth-child(3){width:105px;height:105px;right:125px;top:210px;border-color:rgba(204,154,58,.45);background:rgba(204,154,58,.14)}

body.rosa-v2-active{
\tmax-width:100%;
\toverflow-x:hidden;
\ttext-size-adjust:100%;
\t-webkit-text-size-adjust:100%
}

body.rosa-v2-active :where(input,select,textarea,button){font-size:16px}
body.rosa-v2-active :where(img,svg,video,iframe){max-width:100%}
body.rosa-v2-mobile-menu-open{overflow:hidden!important}

body.rosa-v2-active :where(.woocommerce,.entry-content,.site-main) table{
\tmax-width:100%
}

body.rosa-v2-active :where(.woocommerce,.entry-content,.site-main) .rosa-v2-table-scroll,
body.rosa-v2-active .woocommerce-cart-form,
body.rosa-v2-active .woocommerce-checkout-review-order{
\toverflow-x:auto;
\t-webkit-overflow-scrolling:touch
}

body.rosa-v2-active :where(a,button,input,select,textarea){touch-action:manipulation}

@media(max-width:900px){
\tbody.rosa-v2-active .rosa-v2-shell{width:min(calc(100% - 28px),var(--rosa-v2-shell))}
\t.rosa-v2-header{position:sticky;top:0}
\tbody.admin-bar .rosa-v2-header{top:46px}
\t.rosa-v2-topbar .rosa-v2-shell{
\t\tmin-height:0;
\t\tpadding:8px 0;
\t\tjustify-content:center
\t}
\t.rosa-v2-topbar div div{
\t\twidth:100%;
\t\tjustify-content:center;
\t\tflex-wrap:wrap;
\t\tgap:3px 8px;
\t\tline-height:1.35;
\t\ttext-align:center
\t}
\t.rosa-v2-navigation>.rosa-v2-shell{height:68px;gap:12px}
\t.rosa-v2-logo-image{max-width:156px;max-height:52px}
\t.rosa-v2-logo-text strong{font-size:24px}
\t.rosa-v2-logo-text span{font-size:10px;letter-spacing:.18em}
\t.rosa-v2-menu-button{flex:0 0 48px;margin-left:auto}
\t.rosa-v2-primary-menu{
\t\tposition:fixed;
\t\ttop:var(--rosa-v2-mobile-menu-top,107px);
\t\tbottom:0;
\t\tleft:0;
\t\tright:0;
\t\tmax-height:none;
\t\tpadding:12px 18px 32px;
\t\toverflow-y:auto;
\t\toverscroll-behavior:contain;
\t\t-webkit-overflow-scrolling:touch;
\t\tbox-shadow:0 18px 38px rgba(7,26,39,.20)
\t}
\t.rosa-v2-primary-menu>a,.rosa-v2-dropdown>a{
\t\tmin-height:50px;
\t\tdisplay:flex;
\t\talign-items:center;
\t\tjustify-content:space-between;
\t\tpadding:12px 2px;
\t\tfont-size:16px
\t}
\t.rosa-v2-mega-menu,.rosa-v2-small-menu{
\t\tgap:8px;
\t\tpadding:10px 0 14px
\t}
\t.rosa-v2-mega-menu h3{
\t\tmargin:8px 0 3px;
\t\tfont-size:11px
\t}
\t.rosa-v2-mega-menu a,.rosa-v2-small-menu a{
\t\tmin-height:44px;
\t\tdis:flex;
\t\tdisplay:flex;
\t\talign-items:center;
\t\tpadding:8px 10px;
\t\tborder-radius:8px;
\t\tbackground:var(--rosa-v2-soft)
\t}
\t.rosa-v2-mega-cta{padding:16px}
\t.rosa-v2-page-hero,.rosa-v2-shop-hero{min-height:420px}
\t.rosa-v2-page-hero-copy,.rosa-v2-shop-hero .rosa-v2-shell{padding:64px 0}
\t.rosa-v2-page-hero h1,.rosa-v2-shop-hero h1{max-width:16ch;font-size:clamp(38px,8.5vw,54px)}
\t.rosa-v2-page-hero p,.rosa-v2-shop-hero p{max-width:620px;font-size:17px}
\t.rosa-v2-clean-hero-shapes span:nth-child(1){width:390px;height:390px;right:-175px;top:-125px}
\t.rosa-v2-clean-hero-shapes span:nth-child(2){width:230px;height:230px;right:90px;bottom:-140px}
\t.rosa-v2-clean-hero-shapes span:nth-child(3){right:45px;top:185px}
\t.rosa-v2-owner-banner-image img{width:100%;height:auto;max-height:none;object-fit:contain}
\t.rosa-v2-owner-banner-cta .rosa-v2-shell{gap:22px}
\t.rosa-v2-owner-banner-cta .rosa-v2-hero-actions{width:100%}
\t.rosa-v2-owner-banner-cta .rosa-v2-button{flex:1 1 210px}
\t.rosa-v2-section{padding:64px 0}
\t.rosa-v2-section-heading{margin-bottom:30px}
\t.rosa-v2-section-heading h2,.rosa-v2-company-layout h2,.rosa-v2-mission-grid h2,.rosa-v2-reading-layout h2,.rosa-v2-contact-layout h2,.rosa-v2-enquiry-checklist h2{font-size:clamp(32px,7vw,44px)}
\t.rosa-v2-category-card-content{padding:28px 24px 26px}
\t.rosa-v2-service-grid article,.rosa-v2-value-grid article,.rosa-v2-buyer-grid article,.rosa-v2-process-grid article{padding:24px}
\t.rosa-v2-contact-form-card,.rosa-v2-contact-details,.rosa-v2-profile-card,.rosa-v2-facts{padding:28px}
\tbody.rosa-v2-active .woocommerce div.product{
\t\twidth:min(calc(100% - 28px),var(--rosa-v2-shell));
\t\tmargin:32px auto 60px;
\t\tpadding:22px
\t}
\tbody.rosa-v2-active .woocommerce div.product div.images,
\tbody.rosa-v2-active .woocommerce div.product div.summary{
\t\tfloat:none!important;
\t\twidth:100%!important;
\t\tmargin:0 0 28px!important
\t}
\tbody.rosa-v2-active .woocommerce div.product .product_title{font-size:clamp(32px,7vw,46px)}
\tbody.rosa-v2-active .woocommerce div.product form.cart,
\tbody.rosa-v2-active .woocommerce div.product form.cart .variations_button{
\t\tdisplay:flex;
\t\tflex-wrap:wrap;
\t\tgap:10px
\t}
\tbody.rosa-v2-active .woocommerce div.product form.cart .button{min-height:48px;flex:1 1 210px}
\tbody.rosa-v2-active .woocommerce div.product form.cart .quantity{flex:0 0 90px}
\tbody.rosa-v2-active .woocommerce div.product .variations{display:block;width:100%}
\tbody.rosa-v2-active .woocommerce div.product .variations tbody,
\tbody.rosa-v2-active .woocommerce div.product .variations tr,
\tbody.rosa-v2-active .woocommerce div.product .variations th,
\tbody.rosa-v2-active .woocommerce div.product .variations td{display:block;width:100%;text-align:left}
\tbody.rosa-v2-active .woocommerce div.product .variations select{width:100%;min-height:48px;margin:5px 0 12px}
\tbody.rosa-v2-active .woocommerce div.product .woocommerce-tabs ul.tabs{
\t\tdis:flex;
\t\tgap:6px;
\t\toverflow-x:auto;
\t\twhite-space:nowrap;
\t\t-webkit-overflow-scrolling:touch
\t}
\tbody.rosa-v2-active .woocommerce div.product .woocommerce-tabs ul.tabs li{flex:0 0 auto}
\tbody.rosa-v2-active .woocommerce .col2-set,
\tbody.rosa-v2-active .woocommerce-page .col2-set{
\t\tdisplay:grid;
\t\tgrid-template-columns:1fr;
\t\tgap:24px
\t}
\tbody.rosa-v2-active .woocommerce .col2-set .col-1,
\tbody.rosa-v2-active .woocommerce .col2-set .col-2,
\tbody.rosa-v2-active .woocommerce-page .col2-set .col-1,
\tbody.rosa-v2-active .woocommerce-page .col2-set .col-2{float:none;width:100%}
\t.rosa-v2-footer-cta{padding:42px 0}
\t.rosa-v2-footer-main{padding:54px 0}
}

@media(min-width:481px) and (max-width:680px){
\tbody.rosa-v2-active .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
\tbody.rosa-v2-active .woocommerce ul.products li.product{padding:10px 10px 14px!important}
\tbody.rosa-v2-active .woocommerce-loop-product__title{font-size:14px!important;min-height:42px}
\tbody.rosa-v2-active .woocommerce ul.products li.product .button{font-size:13px;padding-inline:8px!important}
}

@media(max-width:480px){
\tbody.rosa-v2-active .rosa-v2-shell{width:min(calc(100% - 22px),var(--rosa-v2-shell))}
\t.rosa-v2-topbar a{overflow-wrap:anywhere}
\t.rosa-v2-logo-image{max-width:140px;max-height:48px}
\t.rosa-v2-page-hero,.rosa-v2-shop-hero{min-height:390px}
\t.rosa-v2-page-hero-copy,.rosa-v2-shop-hero .rosa-v2-shell{padding:52px 0}
\t.rosa-v2-page-hero h1,.rosa-v2-shop-hero h1{font-size:36px;line-height:1.07}
\t.rosa-v2-page-hero p,.rosa-v2-shop-hero p{font-size:16px}
\t.rosa-v2-hero-actions,.rosa-v2-inline-actions{display:grid;grid-template-columns:1fr;width:100%}
\t.rosa-v2-hero-actions .rosa-v2-button,.rosa-v2-inline-actions .rosa-v2-button{width:100%}
\t.rosa-v2-benefit-grid>div{padding:18px 0}
\t.rosa-v2-section{padding:54px 0}
\t.rosa-v2-category-card-image{aspect-ratio:1/1}
\t.rosa-v2-category-card-content{padding:24px 21px}
\t.rosa-v2-contact-form-card,.rosa-v2-contact-details,.rosa-v2-profile-card,.rosa-v2-facts{padding:22px}
\t.rosa-v2-contact-form-card h2,.rosa-v2-contact-details h2{font-size:31px}
\tbody.rosa-v2-active .woocommerce ul.products{grid-template-columns:1fr!important;gap:15px!important}
\tbody.rosa-v2-active .woocommerce ul.products li.product img{max-height:300px}
\tbody.rosa-v2-active .woocommerce div.product{width:calc(100% - 22px);padding:16px;border-radius:15px}
\t.rosa-v2-single-quote{padding:18px}
\t.rosa-v2-footer-bottom .rosa-v2-shell{gap:7px}
}


/* v2.2.1 route and quote reliability */
.rosa-v2-quote-link,
.rosa-v2-product-quote,
#rosa-wholesale-form,
.rosa-v2-contact-form-card{
	position:relative!important;
	z-index:40!important;
	pointer-events:auto!important
}

#rosa-wholesale-form{
	scroll-margin-top:145px
}

body.rosa-v2-active .elementor-sticky--active:not(.rosa-v2-header),
body.rosa-v2-active .sticky-header:not(.rosa-v2-header),
body.rosa-v2-active .header-sticky:not(.rosa-v2-header),
body.rosa-v2-active .header-area:not(.rosa-v2-header),
body.rosa-v2-active .main-header:not(.rosa-v2-header),
body.rosa-v2-active .mobile-header:not(.rosa-v2-header),
body.rosa-v2-active .theme-header:not(.rosa-v2-header),
body.rosa-v2-active .theme-footer:not(.rosa-v2-footer){
	display:none!important;
	pointer-events:none!important
}

.rosa-v2-form-success{
	border:1px solid #a8d5b7
}


/* v2.2.2: every product quote control remains clickable */
body.rosa-v2-active a.rosa-v2-quote-link,
body.rosa-v2-active button.rosa-v2-quote-link,
body.rosa-v2-active .rosa-v2-product-quote{
	cursor:pointer!important;
	pointer-events:auto!important;
	position:relative!important;
	z-index:60!important
}

body.rosa-v2-active .rosa-v2-product-quote{
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:100%!important;
	min-height:46px!important;
	margin-top:auto!important;
	text-align:center!important
}


/* v2.2.3 — Products-page quote button section */
body.rosa-v2-active .woocommerce ul.products li.product{
	display:flex!important;
	flex-direction:column!important;
	height:100%!important;
	overflow:hidden!important
}

body.rosa-v2-active .woocommerce ul.products li.product .woocommerce-loop-product__title{
	flex:1 0 auto!important;
	min-height:52px!important;
	margin:12px 0 16px!important;
	color:var(--rosa-v2-navy)!important
}

body.rosa-v2-active .woocommerce ul.products li.product > a.button,
body.rosa-v2-active .woocommerce ul.products li.product .rosa-v2-product-quote,
body.rosa-v2-active .woocommerce ul.products li.product a[data-rosa-quote="1"]{
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:100%!important;
	min-height:50px!important;
	margin:16px 0 0!important;
	padding:12px 16px!important;
	border:1px solid var(--rosa-v2-green)!important;
	border-radius:9px!important;
	background:var(--rosa-v2-green)!important;
	background-image:none!important;
	color:#fff!important;
	font-size:15px!important;
	font-weight:800!important;
	line-height:1.2!important;
	text-align:center!important;
	text-decoration:none!important;
	box-shadow:0 8px 18px rgba(23,104,68,.18)!important;
	opacity:1!important;
	visibility:visible!important;
	cursor:pointer!important;
	pointer-events:auto!important;
	transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease!important
}

body.rosa-v2-active .woocommerce ul.products li.product > a.button:hover,
body.rosa-v2-active .woocommerce ul.products li.product .rosa-v2-product-quote:hover,
body.rosa-v2-active .woocommerce ul.products li.product a[data-rosa-quote="1"]:hover{
	border-color:var(--rosa-v2-green-dark)!important;
	background:var(--rosa-v2-green-dark)!important;
	color:#fff!important;
	transform:translateY(-1px)!important;
	box-shadow:0 11px 22px rgba(15,80,53,.24)!important
}

body.rosa-v2-active .woocommerce ul.products li.product > a.button:focus-visible,
body.rosa-v2-active .woocommerce ul.products li.product a[data-rosa-quote="1"]:focus-visible{
	outline:3px solid rgba(204,154,58,.45)!important;
	outline-offset:3px!important
}

/* Remove theme-generated pseudo layers that can block the link. */
body.rosa-v2-active .woocommerce ul.products li.product a[data-rosa-quote="1"]::before,
body.rosa-v2-active .woocommerce ul.products li.product a[data-rosa-quote="1"]::after{
	pointer-events:none!important
}

@media(max-width:680px){
	body.rosa-v2-active .woocommerce ul.products li.product .woocommerce-loop-product__title{
		min-height:auto!important;
		margin-bottom:12px!important
	}

	body.rosa-v2-active .woocommerce ul.products li.product > a.button,
	body.rosa-v2-active .woocommerce ul.products li.product a[data-rosa-quote="1"]{
		min-height:48px!important;
		font-size:14px!important
	}
}


/* v2.2.4 — remove Price Per Pallet fields from any legacy/custom output */
body.rosa-v2-active [class*="price-per-pallet" i],
body.rosa-v2-active [id*="price-per-pallet" i],
body.rosa-v2-active [data-name*="price-per-pallet" i],
body.rosa-v2-active [data-label*="Price Per Pallet" i]{
	display:none!important;
}


/* v2.3.0 — Wood & Biomass category */
.rosa-v2-category-grid-images .rosa-v2-category-card.text-only:nth-last-child(1){
	background:
		radial-gradient(circle at 82% 16%,rgba(126,153,74,.20),transparent 25%),
		linear-gradient(145deg,#ffffff,#eef5eb);
}

.rosa-v2-category-grid-images .rosa-v2-category-card.text-only:nth-last-child(1) .rosa-v2-category-accent{
	background:linear-gradient(90deg,#3f6b35,#b48a3b);
}

@media(min-width:1121px){
	.rosa-v2-category-grid-images{
		grid-template-columns:repeat(4,minmax(0,1fr));
	}
}

@media(max-width:1120px) and (min-width:681px){
	.rosa-v2-category-grid-images{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}
