/*
Theme Name: Funds 4 Schools
Description: Accessible, fast campaign and shop theme for school artwork fundraising.
Version: 1.1.94
Text Domain: funds4schools
*/
:root{--white:#fff;--muted:#59637a;--purple:var(--navy);--purple-dark:var(--navy);--purple-mid:var(--pink);--lavender:var(--pale);--lavender-light:#f4f8ff;--red:var(--pink);--border:#dfe4ed;--shadow:0 8px 24px #0d265012;--radius:15px;--container:min(1240px,calc(100vw - 40px))}

/* Flexible layout styles merged from style-original.css */
.title-left-text-right,
.image-text,
.image-text-boxed,
.icon-text,
.text-list,
.text-left-items-right,
.contact-section,
.insights {
	padding: clamp(2.7rem, 5vw, 5rem) 0;
}

.title-left-text-right-container,
.image-text-container,
.text-left-items-right-container {
	display: grid;
	gap: clamp(2rem, 5vw, 4rem);
	grid-template-columns: minmax(0, .75fr) minmax(0, 1fr);
}

.title-left-text-right.full-width .title-left-text-right-container {
	grid-template-columns: 1fr;
}

.title-left-text-right.pl-bg {
	background: var(--lavender);
}

.title-left-text-right.no-top-padding {
	padding-top: 0;
}

.title-left-text-right.no-bottom-padding {
	padding-bottom: 0;
}

.title-left-text-right .right > * + *,
.image-text .right-inner > * + *,
.image-text-boxed .right > * + * {
	margin-top: 1.2rem;
}

.underline h1,
.underline h2,
h1.underline {
	position: relative;
}

.underline h1::after,
.underline h2::after,
h1.underline::after {
	background: var(--purple-mid);
	border-radius: 999px;
	content: "";
	display: block;
	height: 4px;
	margin-top: .7rem;
	width: 76px;
}

.grid-items-full {
	padding: clamp(3rem, 6vw, 5.25rem) 0;
}

.grid-items-full .title {
	margin-bottom: 2rem;
}

.grid-items-full .items,
.grid-items .items {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid-items-full .item,
.grid-items .item {
	background: var(--white);
	border-radius: var(--radius);
	box-shadow: 0 1px 0 rgba(36, 21, 50, .08);
	display: grid;
	gap: 1.25rem;
	grid-template-columns: minmax(0, 1fr) auto;
	min-height: 160px;
	padding: 1.5rem;
}

.grid-items-full .item:not(:has(.item-image))::after,
.grid-items .item:not(:has(.item-image))::after {
	align-self: center;
	background: var(--lavender-light);
	border: 4px solid var(--purple);
	border-radius: 50%;
	color: var(--purple);
	content: " ";
	display: block;
	height: 86px;
	justify-self: end;
	mask: radial-gradient(circle at 50% 28%, transparent 0 13px, #000 14px), linear-gradient(#000 0 0);
	width: 86px;
}

.grid-items-full .item:not(:has(.item-image)):nth-child(4n + 1)::after,
.grid-items .item:not(:has(.item-image)):nth-child(4n + 1)::after {
	border-radius: 44% 56% 47% 53%;
	box-shadow: inset 18px -14px 0 var(--lavender-light);
}

.grid-items-full .item:not(:has(.item-image)):nth-child(4n + 2)::after,
.grid-items .item:not(:has(.item-image)):nth-child(4n + 2)::after {
	border-radius: 50%;
	box-shadow: inset 0 0 0 14px var(--lavender-light);
}

.grid-items-full .item:not(:has(.item-image)):nth-child(4n + 3)::after,
.grid-items .item:not(:has(.item-image)):nth-child(4n + 3)::after {
	border-radius: 62% 38% 58% 42%;
}

.grid-items-full .item:has(.item-image),
.grid-items .item:has(.item-image) {
	gap: 0;
	grid-template-columns: 1fr;
	overflow: hidden;
	padding: 0;
}

.grid-items-full .item:has(.item-image) .item-content,
.grid-items .item:has(.item-image) .item-content {
	padding: 1.35rem;
}

.grid-items .item {
	border: 1px solid var(--border);
}

.grid-items-full .item-image,
.grid-items .item-image,
.icon-text .image {
	align-items: center;
	background: var(--lavender-light);
	border-radius: var(--radius);
	display: flex;
	justify-content: center;
	min-height: 110px;
	min-width: 120px;
	overflow: hidden;
}

.grid-items-full .item:has(.item-image) .item-image,
.grid-items .item:has(.item-image) .item-image {
	border-radius: 0;
	min-height: 220px;
	order: -1;
	width: 100%;
}

.grid-items-full .item-image img,
.grid-items .item-image img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.info-section {
	color: var(--white);
	padding: clamp(2rem, 4vw, 3.2rem) 0;
}

.info-section.contained {
	background: var(--white);
}

.info-section-container {
	border-radius: var(--radius);
	display: grid;
	gap: 2rem;
	grid-template-columns: minmax(0, .75fr) minmax(0, 1fr);
	padding: clamp(1.5rem, 4vw, 3rem);
}

.info-section .items {
	display: grid;
	gap: .8rem;
}

.info-section .item {
	background: rgba(255, 255, 255, .18);
	border-radius: var(--radius);
	padding: 1rem 1.1rem;
}

.image-text .image,
.image-text-boxed .image,
.images-section .image {
	border-radius: var(--radius);
	overflow: hidden;
}

.image-text .image img,
.image-text-boxed .image img,
.images-section .image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	width: 100%;
}

.image-text.flip .image-text-container,
.image-text-boxed.flipped .image-text-boxed-container {
	direction: rtl;
}

.image-text.flip .image-text-container > *,
.image-text-boxed.flipped .image-text-boxed-container > * {
	direction: ltr;
}

.image-text-boxed-container {
	align-items: center;
	border-radius: var(--radius);
	display: grid;
	gap: clamp(1.5rem, 4vw, 3rem);
	grid-template-columns: minmax(0, .9fr) minmax(0, 1fr);
	padding: clamp(1.25rem, 3vw, 2rem);
}

.image-text-boxed .arrow-down {
	display: none;
}

.image-text-boxed .left:empty {
	display: none;
}

.image-text-boxed .left:empty + .right {
	grid-column: 1 / -1;
}

.cta {
	background: var(--purple-dark);
	color: var(--white);
	padding: clamp(2rem, 5vw, 4rem) 0;
}

.cta-container {
	align-items: center;
	display: grid;
	gap: 1rem 2rem;
	grid-template-columns: minmax(280px, .45fr) minmax(0, 1fr) auto;
}

.cta h2,
.cta h3,
.cta .text {
	color: var(--white);
}

.cta .subtitle,
.cta .text {
	grid-column: 2;
}

.cta .a-button {
	grid-column: 3;
	grid-row: 1 / span 3;
}

.text-list {
	background: var(--lavender-light);
}

.text-list.white-bg {
	background: var(--white);
}

.text-list-container {
	max-width: 880px;
}

.text-list .items ul {
	display: grid;
	gap: .6rem;
	list-style: none;
	margin: 1.5rem 0;
	padding: 0;
}

.text-list li {
	background: var(--white);
	border-left: 5px solid var(--purple);
	border-radius: var(--radius);
	padding: .9rem 1rem;
}

.accordion {
	background: var(--lavender-light);
	padding: clamp(3rem, 6vw, 5.5rem) 0;
}

.accordion-columns {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.accordion-item {
	background: var(--white);
	border-radius: var(--radius);
	overflow: hidden;
}

.accordion-header {
	align-items: center;
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr auto;
	padding: 1.15rem 1.25rem;
}

.accordion-header h3 {
	font-size: 1.05rem;
}

.accordion-toggle {
	align-items: center;
	background: var(--purple);
	border: 0;
	border-radius: 50%;
	color: var(--white);
	display: inline-flex;
	height: 36px;
	justify-content: center;
	width: 36px;
}

.accordion-toggle[aria-expanded="true"] {
	background: var(--red);
}

.accordion-toggle .square::before {
	content: "⌄";
	display: block;
	font-weight: 900;
	line-height: 1;
}

.accordion-toggle[aria-expanded="true"] .square::before {
	content: "⌃";
}

.accordion-content {
	border-top: 1px solid var(--border);
	padding: 1.15rem 1.25rem;
}

.sr-only {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.icon-text .heading {
	margin-bottom: 2rem;
	max-width: 820px;
}

.icon-text .items,
.text-left-items-right .items {
	display: grid;
	gap: 1.2rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.icon-text .item,
.text-left-items-right .item {
	background: var(--lavender-light);
	border-radius: var(--radius);
	padding: 1.5rem;
}

.contact-section {
	background: var(--lavender-light);
}

.contact-section-container {
	display: grid;
	gap: 2rem;
	grid-template-columns: minmax(0, .75fr) minmax(0, 1fr);
}

.contact form,
.wpcf7 form {
	background: var(--white);
	border-radius: var(--radius);
	padding: 1.5rem;
}

.contact input,
.contact textarea,
.contact select,
.wpcf7 input,
.wpcf7 textarea,
.wpcf7 select {
	background: var(--lavender-light);
	border: 2px solid transparent;
	border-radius: var(--radius);
	color: var(--ink);
	margin-top: .35rem;
	min-height: 46px;
	padding: .8rem;
	width: 100%;
}

.contact input[type="submit"],
.wpcf7-submit {
	background: var(--purple-dark);
	color: var(--white);
	font-weight: 900;
	width: auto;
}

.social-banner {
	color: var(--white);
	padding: 2rem 0;
}

.social-banner-container {
	align-items: center;
	display: flex;
	gap: 1.5rem;
	justify-content: space-between;
}

.social-icons {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
}

.social-icons a {
	background: rgba(255, 255, 255, .18);
	border-radius: 999px;
	color: var(--white);
	display: inline-flex;
	font-weight: 800;
	padding: .65rem .9rem;
}

.text-slider {
	background: var(--lavender-light);
	padding: clamp(3rem, 6vw, 5rem) 0;
}

.text-slider .slider {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 2rem;
}

.text-slider .slide {
	background: var(--white);
	border-radius: var(--radius);
	padding: 1.5rem;
}

.site-footer {
	background: var(--purple);
	color: var(--white);
}

.article-hero {
	background: var(--lavender-light);
	padding: clamp(3rem, 6vw, 5.5rem) 0;
}

.article-hero-grid {
	display: grid;
	gap: clamp(2rem, 5vw, 4rem);
	grid-template-columns: minmax(0, 1fr) 300px;
}

.article-meta {
	color: var(--purple);
	font-weight: 900;
	margin-top: 1.2rem;
}

.article-toc {
	background: var(--purple-dark);
	border-radius: var(--radius);
	color: var(--white);
	padding: 1.4rem;
}

.article-toc h2,
.article-toc a {
	color: var(--white);
}

.article-body {
	padding: clamp(3rem, 6vw, 5.5rem) 0;
}

.article-body article {
	max-width: 860px;
}

.article-body article > * + * {
	margin-top: 1.3rem;
}

.callout-box,
.article-faq,
.final-cta {
	background: var(--lavender-light);
	border-radius: var(--radius);
	padding: 1.5rem;
}

.final-cta {
	background: var(--purple-dark);
	color: var(--white);
}

.final-cta h2,
.final-cta p {
	color: var(--white);
}

.footer-main {
	padding: 3rem 0;
}

.site-footer .container {
	display: grid;
	gap: 2rem;
	grid-template-columns: 1.2fr 1fr 1fr;
}
@media (max-width: 760px) {
	:root {
		--container: min(100% - 32px, 1120px);
	}

	body {
		font-size: 15px;
	}

	.site-header .container {
		min-height: 68px;
	}

	.quick-exit {
		bottom: 12px;
		right: 12px;
	}

	.home-hero,
	.hero {
		padding-top: 3rem;
	}

	.home-hero {
		min-height: 0;
	}

	.grid-items-full .items,
	.grid-items .items,
	.accordion-columns,
	.icon-text .items,
	.text-left-items-right .items,
	.text-slider .slider {
		grid-template-columns: 1fr;
	}

	.grid-items-full .item,
	.grid-items .item {
		grid-template-columns: 1fr;
	}

	.social-banner-container {
		align-items: flex-start;
		flex-direction: column;
	}

	.desktop-only {
		display: none;
	}

	.mobile-only {
		display: block;
	}
}

:root{--navy:#062968;--pink:#ef0870;--green:#67b52b;--ink:#172744;--paper:#fffefd;--pale:#f4f8ff;--yellow:#ffd025;--shell:1240px;--round:15px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:#252a39;font-family:"Nunito Sans",Arial,sans-serif;font-size:17px;line-height:1.5}.shell{width:min(calc(100% - 40px),var(--shell));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:10px;background:#fff;color:var(--navy);padding:10px;z-index:99}.skip-link:focus{left:10px}a{color:inherit;text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 24px;border:2px solid transparent;border-radius:7px;font-weight:800;font-size:16px;line-height:1;transition:transform .2s,box-shadow .2s,background .2s}.button:hover{transform:translateY(-2px);box-shadow:0 5px 12px #06296825}.button:focus-visible,.menu-toggle:focus-visible,a:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.button-pink{background:var(--pink);color:#fff}.button-navy{background:var(--navy);color:#fff}.button-outline{border-color:var(--pink);background:#fff;color:var(--pink)}.navy-outline{border-color:var(--navy);color:var(--navy)}.site-header{background:#fff;position:relative;z-index:5;box-shadow:0 2px 8px #0d265012}.header-top{min-height:118px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-family:"Baloo 2",cursive;font-size:48px;line-height:1;letter-spacing:-2px;font-weight:800;white-space:nowrap;position:relative}.brand:before,.brand:after{content:"";position:absolute;background:var(--yellow);width:3px;height:21px;left:-10px;top:-15px;transform:rotate(-25deg);border-radius:3px}.brand:after{left:3px;top:-22px;transform:rotate(21deg)}.brand-funds{color:var(--navy)}.brand-four{color:var(--pink);font-size:58px}.brand-school{color:var(--green)}.brand-heart{color:var(--pink);font-size:42px;margin-left:2px}.header-actions{display:flex;gap:16px}.primary-nav{background:var(--navy);color:#fff}.primary-nav .shell{display:flex;justify-content:center}.primary-nav ul{display:flex;justify-content:center;gap:80px;list-style:none;margin:0;padding:0}.primary-nav a{display:block;padding:13px 0 11px;font-size:15px;font-weight:800;position:relative}.primary-nav .current-menu-item a:after,.primary-nav a:hover:after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--pink)}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span:not(.visually-hidden){display:block;width:28px;height:3px;margin:5px;background:var(--navy);border-radius:2px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.hero{min-height:562px;background:#f8f4ef url('img/christmas-hero.jpg') center center/cover no-repeat}.hero__content{min-height:562px;display:flex;align-items:center}.hero__copy{width:47%;padding:50px 0;position:relative}.hero__title{margin:0 0 22px;font-family:"Baloo 2",cursive;font-size:69px;line-height:.9;letter-spacing:-2px;color:var(--navy);font-weight:700}.hero__title span,.hero__title strong{display:block}.hero__title strong{color:var(--green);font-weight:700}.hero__title i{color:var(--pink);font-style:normal}.hero__copy>p:not(.hero__title){max-width:500px;margin:0;font-size:21px;font-weight:600;line-height:1.42}.hero__actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:26px}.early-bird{display:block;position:absolute;left:10px;bottom:-39px;background:var(--yellow);color:var(--navy);font-weight:900;font-size:16px;line-height:1.2;text-align:center;text-transform:uppercase;padding:20px 12px 15px;width:143px;min-height:104px;transform:rotate(-6deg);box-shadow:0 4px 10px #17274424;border-radius:4px}.early-bird:before{content:"";position:absolute;left:50%;top:-20px;width:2px;height:20px;background:#8c6549}.section{padding:52px 0}.section-title{margin:0 0 34px;text-align:center;color:var(--navy);font:700 39px/1 "Baloo 2",cursive;letter-spacing:-.5px}.section-title:after{content:"";display:block;background:var(--pink);height:3px;width:92px;margin:0 auto;border-radius:5px}.section-title span{color:var(--yellow);font-family:Arial;font-size:24px;vertical-align:top}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product-card{border:1px solid #dfe1e4;border-radius:var(--round);background:#fff;padding:12px;box-shadow:0 1px 2px #1727440d;overflow:hidden;text-align:center}.product-card>img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;display:block;background:#f3f3f3}.product-card__body{padding:12px 13px 10px;display:flex;flex-direction:column;align-items:center;height:285px}.product-card h3{margin:0;color:var(--navy);font:700 29px/1.1 "Baloo 2",cursive}.product-card p{margin:16px 0 auto;font-size:16px;line-height:1.4}.product-card strong{display:block;color:var(--pink);font:800 27px/1 "Baloo 2",cursive;margin:12px 0 17px}.product-card .button{min-height:42px;padding:8px 24px}.products__cta{text-align:center;margin:28px 0 0}.benefits{background:linear-gradient(105deg,#f3f8ff,#fff5f8);position:relative}.benefit-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.benefit{text-align:center}.benefit__icon{display:grid;place-items:center;background:#e5f0ff;color:var(--navy);margin:0 auto 11px;width:82px;height:82px;border-radius:50%;font-family:"Baloo 2",cursive;font-size:49px;line-height:1}.benefit:nth-child(2) .benefit__icon{background:#f5eaff}.benefit:nth-child(3) .benefit__icon{background:#fff7d8}.benefit:nth-child(4) .benefit__icon{background:#eaf4ff}.benefit:nth-child(5) .benefit__icon{background:#fde9f0}.benefit h3{font:700 17px/1.15 "Baloo 2",cursive;color:var(--navy);margin:0}.benefit p{font-size:13px;line-height:1.45;margin:8px auto;max-width:180px}.site-footer{background:var(--navy);color:#fff;padding:24px 0;font-size:14px;text-align:center}.site-footer p{margin:0}
@media(max-width:800px){.header-top{min-height:82px}.brand{font-size:33px}.brand-four{font-size:40px}.brand-heart{font-size:29px}.header-actions{display:none}.menu-toggle{display:block}.primary-nav{display:none}.primary-nav.is-open{display:block}.primary-nav .shell,.primary-nav ul{display:block}.primary-nav ul{padding:8px 0}.primary-nav a{padding:12px 0}.hero,.hero__content{min-height:600px}.hero{background-position:65% center;background-image:linear-gradient(90deg,#fff 0%,#fffc 52%,#fff1 100%),url('img/christmas-hero.jpg')}.hero__copy{width:min(100%,500px)}.hero__title{font-size:58px}.early-bird{bottom:-25px}.product-grid{gap:14px}.product-card{padding:8px}.product-card h3{font-size:23px}.product-card p{font-size:14px}.product-card__body{height:270px;padding-inline:5px}.benefit-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){body{font-size:16px}.shell{width:min(calc(100% - 28px),var(--shell))}.hero,.hero__content{min-height:655px}.hero{background-position:70% center}.hero__copy{padding-top:50px;align-self:flex-start}.hero__title{font-size:51px}.hero__copy>p:not(.hero__title){font-size:18px;max-width:345px}.early-bird{left:auto;right:10px;bottom:-20px;width:120px;font-size:13px}.section{padding:44px 0}.section-title{font-size:33px;margin-bottom:25px}.product-grid{grid-template-columns:1fr}.product-card{max-width:420px;margin:auto;width:100%}.product-card__body{height:auto;min-height:245px}.benefit-grid{grid-template-columns:repeat(2,1fr);gap:25px 12px}.benefit:last-child{grid-column:1/-1}.benefit__icon{width:68px;height:68px;font-size:42px}.benefit p{font-size:12px}}

/* Parent journey and footer */
.custom-logo-link{display:block}.brand .custom-logo{display:block;max-height:70px;width:auto}.parent-journey{padding:58px 0 48px;background:#fff;text-align:center}.journey-title{margin:0;font:700 62px/1 "Baloo 2",cursive;color:var(--navy)}.journey-title span{color:var(--green)}.journey-title strong{color:var(--pink);font-weight:700}.journey-title i{color:var(--pink);font-style:normal}.journey-intro{margin:8px 0 28px;font-size:20px}.journey-steps{margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:12px;list-style:none}.journey-steps li{position:relative}.journey-steps li:not(:last-child):after{content:"→";position:absolute;top:98px;right:-20px;color:#ffae00;font-size:39px;font-weight:800;z-index:2}.journey-number{position:absolute;z-index:2;left:calc(50% - 22px);top:-9px;display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:var(--navy);color:#fff;font:800 26px/1 "Baloo 2",cursive}.journey-steps li:nth-child(2) .journey-number,.journey-steps li:nth-child(6) .journey-number{background:var(--pink)}.journey-steps li:nth-child(3) .journey-number{background:var(--green)}.journey-steps li:nth-child(4) .journey-number{background:#f9ae12}.journey-image{display:block;margin:auto;width:170px;height:190px;border-radius:45% 54% 49% 43%;background-image:url('img/website-footer.png');background-repeat:no-repeat;background-size:1064px 496px;background-color:#eff6fe}.journey-image--1{background-position:1% 37%}.journey-image--2{background-position:21% 37%;background-color:#fcebf4}.journey-image--3{background-position:40% 37%;background-color:#eff7e9}.journey-image--4{background-position:60% 37%;background-color:#fff5df}.journey-image--5{background-position:79% 37%;background-color:#eff6fe}.journey-image--6{background-position:99% 37%;background-color:#fcebf4}.journey-steps h3{margin:13px 0 11px;color:var(--navy);font:700 22px/1.1 "Baloo 2",cursive}.journey-steps h3:after,.site-footer h2:after{content:"";display:block;width:70px;height:3px;margin:5px auto 0;background:var(--pink);border-radius:2px}.journey-steps li:nth-child(3) h3:after{background:var(--green)}.journey-steps li:nth-child(4) h3:after{background:#f9ae12}.journey-steps p{margin:0 auto;max-width:190px;font-size:15px;line-height:1.4}.site-footer{background:var(--navy);color:#fff;padding:42px 0;text-align:left}.footer-grid{display:grid;grid-template-columns:1.35fr 1.15fr 1.45fr 1.5fr;gap:34px}.footer-grid>section:not(:first-child){border-left:1px solid #ffffff55;padding-left:34px}.footer-brand p{margin:10px 0;font-size:22px}.footer-wordmark{margin:0!important;font:700 44px/1 "Baloo 2",cursive!important;letter-spacing:-2px}.footer-wordmark span{color:#fff}.footer-wordmark b{color:var(--pink);font-size:54px}.footer-wordmark em{color:var(--green);font-style:normal}.footer-logo .custom-logo{max-width:290px;max-height:80px;width:auto}.site-footer h2{margin:0 0 13px;color:#fff;font:700 28px/1 "Baloo 2",cursive}.site-footer h2:after{margin-left:0;background:var(--yellow)}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{padding:3px 0}.site-footer p{margin:9px 0;font-size:17px;line-height:1.45}.payments{display:flex;justify-content:flex-start;gap:10px;flex-wrap:wrap;align-items:center}.payments .payment-method{display:flex;align-items:center;justify-content:flex-start;width:54px;height:34px}.payments .payment-method__logo{display:block;max-width:100%;max-height:100%;width:auto;height:auto}.social-links{display:flex;gap:13px}.social-links a{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#1877f2;font-size:22px;font-weight:800}.social-links a:nth-child(2){background:#e92d7c}.social-links a:nth-child(3){background:#f10d22;font-size:15px}
@media(max-width:950px){.journey-title{font-size:48px}.journey-steps{grid-template-columns:repeat(3,1fr);gap:35px 18px}.journey-steps li:nth-child(3):after{display:none}.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-grid>section:nth-child(3){border-left:0;padding-left:0}}@media(max-width:560px){.parent-journey{padding:42px 0}.journey-title{font-size:40px}.journey-intro{font-size:17px}.journey-steps{grid-template-columns:repeat(2,1fr);gap:32px 14px}.journey-steps li:after{display:none}.journey-image{width:135px;height:150px;background-size:840px 391px}.journey-steps h3{font-size:19px}.journey-steps p{font-size:13px}.footer-grid{grid-template-columns:1fr;gap:26px}.footer-grid>section:not(:first-child),.footer-grid>section:nth-child(3){border-left:0;border-top:1px solid #ffffff55;padding:22px 0 0}.footer-brand p{font-size:18px}}

/* WordPress utility menu */
.header-actions,.utility-menu{display:flex;align-items:center;gap:16px;margin:0;padding:0;list-style:none}.utility-menu a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 24px;border:2px solid var(--pink);border-radius:7px;background:#fff;color:var(--pink);font-size:16px;font-weight:800;line-height:1}.utility-menu li:last-child a{border-color:var(--navy);background:var(--navy);color:#fff}.utility-menu a:hover{transform:translateY(-2px);box-shadow:0 5px 12px #06296825}@media(max-width:800px){.header-actions{display:none}}

/* Keep utility buttons tied to their purpose, not their menu position. */
.utility-menu li.utility-menu__item--parents-shop a{border-color:var(--pink);background:#fff;color:var(--pink)}.utility-menu li.utility-menu__item--organisers-login a{border-color:var(--navy);background:var(--navy);color:#fff}

.journey-steps li:nth-child(1) h3:after,.journey-steps li:nth-child(5) h3:after{background:var(--light-blue,#a9d8f2)}

/* WooCommerce's post-add-to-cart link can include an icon; centre both it and its label. */
.woocommerce a.button.wc-forward{display:inline-flex;align-items:center;justify-content:center;line-height:1.2}

/* WooCommerce catalogue and product pages */
.woocommerce-page{padding-top:54px;padding-bottom:70px}.woocommerce-page .woocommerce-breadcrumb{margin:0 0 18px;color:#65718a;font-size:14px}.woocommerce-page .page-title,.woocommerce-page .woocommerce-products-header__title{margin:0 0 28px;color:var(--navy);font:700 48px/1 "Baloo 2",cursive}.woocommerce-page .woocommerce-result-count{margin:0;color:#59637a;font-weight:700;line-height:46px}.woocommerce-page .woocommerce-ordering{margin:0 0 28px;float:right;position:relative}.woocommerce-page .woocommerce-ordering select{appearance:none;min-width:238px;height:48px;padding:0 46px 0 17px;border:2px solid var(--navy);border-radius:8px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3E%3Cpath d='m2 2 6 6 6-6' fill='none' stroke='%23062968' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5'/%3E%3C/svg%3E") right 16px center/16px no-repeat;color:var(--navy);font:700 15px "Nunito Sans",sans-serif;cursor:pointer}.woocommerce-page .woocommerce-ordering select:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.woocommerce-page ul.products{clear:both;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0!important;padding:0;list-style:none}.woocommerce-page ul.products::before,.woocommerce-page ul.products::after{display:none}.woocommerce-page ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:12px;border:1px solid #dfe1e4;border-radius:15px;background:#fff;box-shadow:0 1px 2px #1727440d;text-align:center;display:flex;flex-direction:column}.woocommerce-page ul.products li.product a img{width:100%!important;margin:0!important;aspect-ratio:1/1;object-fit:cover;border-radius:10px}.woocommerce-page ul.products li.product .woocommerce-loop-product__title{padding:17px 10px 4px!important;color:var(--navy);font:700 25px/1.1 "Baloo 2",cursive}.woocommerce-page ul.products li.product .price{margin:8px 0 17px!important;color:var(--pink)!important;font:800 23px/1 "Baloo 2",cursive}.woocommerce-page ul.products li.product .button{align-self:center;margin:0 0 7px!important;background:var(--navy);color:#fff;font-size:15px}.woocommerce-page nav.woocommerce-pagination{margin-top:38px}.woocommerce-page nav.woocommerce-pagination ul{border:0}.woocommerce-page nav.woocommerce-pagination ul li{border:0;margin:0 3px}.woocommerce-page nav.woocommerce-pagination ul li a,.woocommerce-page nav.woocommerce-pagination ul li span{border-radius:6px;border:1px solid #dae0ea;color:var(--navy);font-weight:800}.woocommerce-page nav.woocommerce-pagination ul li span.current{background:var(--navy);color:#fff}.woocommerce-page div.product{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:54px;align-items:start}.woocommerce-page div.product .woocommerce-product-gallery,.woocommerce-page div.product .summary{float:none!important;width:auto!important;margin:0!important}.woocommerce-page div.product .woocommerce-product-gallery__wrapper{border:1px solid #e0e4ea;border-radius:15px;overflow:hidden}.woocommerce-page div.product .woocommerce-product-gallery__image>a{display:block}.woocommerce-page div.product .woocommerce-product-gallery__image img{width:100%;display:block}.woocommerce-page div.product .product_title{margin:0 0 12px;color:var(--navy);font:700 48px/1 "Baloo 2",cursive}.woocommerce-page div.product p.price{margin:0 0 22px;color:var(--pink);font:800 32px/1 "Baloo 2",cursive}.woocommerce-page .woocommerce-info{border-top-color:var(--green);background:#f0f8ea;color:#244825;border-radius:8px}.woocommerce-page .woocommerce-info::before{color:var(--green)}.woocommerce-page div.product form.cart{display:flex;gap:13px;align-items:center;margin:25px 0}.woocommerce-page .quantity .qty{height:48px;border:2px solid #d7dce5;border-radius:7px;color:var(--navy);font-weight:800}.woocommerce-page .single_add_to_cart_button{min-height:48px;border-radius:7px!important;background:var(--pink)!important;color:#fff!important;font-weight:800!important}.woocommerce-page div.product .product_meta{padding-top:19px;border-top:1px solid #e3e6ec;color:#5d6575}.woocommerce-page div.product .product_meta a{color:var(--navy);font-weight:800}.woocommerce-page .related.products{grid-column:1/-1;margin-top:25px}.woocommerce-page .related.products>h2{color:var(--navy);font:700 37px/1 "Baloo 2",cursive}.woocommerce-page .woocommerce-tabs{grid-column:1/-1}.woocommerce-page .woocommerce-tabs ul.tabs{padding:0!important}.woocommerce-page .woocommerce-tabs ul.tabs::before{border-color:#d8dde6}.woocommerce-page .woocommerce-tabs ul.tabs li{border-color:#d8dde6;border-radius:7px 7px 0 0;background:#f7f8fa}.woocommerce-page .woocommerce-tabs ul.tabs li.active{background:#fff;border-bottom-color:#fff}.woocommerce-page .woocommerce-tabs ul.tabs li a{color:var(--navy);font-weight:800}.woocommerce-page .woocommerce-tabs .panel{padding-top:15px;color:#333b4c}@media(max-width:800px){.woocommerce-page .page-title,.woocommerce-page .woocommerce-products-header__title{font-size:40px}.woocommerce-page ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.woocommerce-page div.product{grid-template-columns:1fr;gap:30px}.woocommerce-page .woocommerce-ordering{float:none}.woocommerce-page .woocommerce-result-count{line-height:1;margin-bottom:20px}}@media(max-width:560px){.woocommerce-page{padding-top:38px}.woocommerce-page ul.products{grid-template-columns:1fr}.woocommerce-page .woocommerce-ordering select{width:100%}.woocommerce-page .woocommerce-ordering{width:100%}.woocommerce-page div.product .product_title{font-size:40px}.woocommerce-page div.product form.cart{flex-wrap:wrap}}

.f4s-artwork-approval-required .woocommerce-page div.product form.cart{display:none}.f4s-artwork-approval-cta{margin:24px 0;padding:20px;border:1px solid #b7dca1;border-radius:10px;background:#f0f8ea}.f4s-artwork-approval-cta p{margin:0 0 15px;color:#244825;font-weight:800}.f4s-artwork-approval-cta .button{min-width:190px}

.f4s-artwork-approval-cta .button{display:flex;width:100%;min-height:54px;gap:10px;border:2px solid var(--pink);border-radius:9px;background:var(--pink);box-shadow:0 5px 0 #b80055;font-size:17px}.f4s-artwork-approval-cta .button::after{content:"→";font-size:22px;line-height:.7}.f4s-artwork-approval-cta .button:hover{background:var(--navy);border-color:var(--navy);box-shadow:0 5px 0 #031942}.f4s-artwork-approval-cta .button:active{transform:translateY(3px);box-shadow:0 2px 0 #031942}

.woocommerce .f4s-artwork-approval-cta a.button,.woocommerce-page .f4s-artwork-approval-cta a.button{display:flex!important;width:100%!important;min-height:54px!important;align-items:center!important;justify-content:center!important;gap:10px!important;padding:12px 20px!important;border:2px solid var(--pink)!important;border-radius:9px!important;background:var(--pink)!important;color:#fff!important;box-shadow:0 5px 0 #b80055!important;font-size:17px!important;font-weight:800!important;text-decoration:none!important}.woocommerce .f4s-artwork-approval-cta a.button:hover,.woocommerce-page .f4s-artwork-approval-cta a.button:hover{border-color:var(--navy)!important;background:var(--navy)!important;color:#fff!important;box-shadow:0 5px 0 #031942!important}

/* Signed-out custom-product prompt. */
.f4s-artwork-login-cta{margin:24px 0}.woocommerce .f4s-artwork-login-cta .woocommerce-info,.woocommerce-page .f4s-artwork-login-cta .woocommerce-info{margin:0 0 15px;border-top:0!important}.woocommerce .f4s-artwork-login-cta a.button,.woocommerce-page .f4s-artwork-login-cta a.button{display:flex!important;width:100%!important;min-height:54px!important;align-items:center!important;justify-content:center!important;padding:12px 20px!important;border:2px solid var(--pink)!important;border-radius:9px!important;background:var(--pink)!important;color:#fff!important;font-size:17px!important;font-weight:800!important;line-height:1!important;text-decoration:none!important}.woocommerce .f4s-artwork-login-cta a.button:hover,.woocommerce-page .f4s-artwork-login-cta a.button:hover{border-color:var(--navy)!important;background:var(--navy)!important;color:#fff!important}

.woocommerce-page{padding-top:0;padding-bottom:0}
.woocommerce-page.shell.section{padding-top:54px;padding-bottom:70px}@media(max-width:560px){.woocommerce-page.shell.section{padding-top:38px;padding-bottom:44px}}

.header-tools{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.account-links{display:flex;gap:16px;font-size:13px;font-weight:800;color:var(--navy)}.account-links a{display:inline-flex;align-items:center;gap:5px}.account-links a:hover{text-decoration:none}.account-links a:hover .account-link__text,.account-links a.is-active .account-link__text{text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:4px}.account-links a.is-active{color:inherit;text-decoration:none}.basket-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:50%;background:var(--pink);color:#fff;font-size:11px;line-height:1}@media(max-width:800px){.header-top{gap:12px}.header-tools{display:block;margin-left:auto}.header-tools .header-actions{display:none}.account-links{gap:9px;font-size:12px;white-space:nowrap}.menu-toggle{margin-left:0}}@media(max-width:380px){.brand{font-size:29px}.brand-four{font-size:35px}.brand-heart{font-size:25px}.account-links{font-size:11px;gap:6px}}

.menu-toggle span:not(.visually-hidden){transition:transform .22s ease,opacity .18s ease}.menu-toggle.is-open span:nth-child(2){transform:translateY(8px) rotate(45deg)}.menu-toggle.is-open span:nth-child(3){opacity:0}.menu-toggle.is-open span:nth-child(4){transform:translateY(-8px) rotate(-45deg)}

h1,h2,h3,h4,h5,h6,.brand,.button,.footer-wordmark,.journey-number,.benefit__icon{font-family:var(--heading-font,"Baloo 2",cursive)!important}body,input,select,textarea,button{font-family:var(--body-font,"Nunito Sans",Arial,sans-serif)}

/* Full-height document and My Account */
html{min-height:100%;margin:0;padding:0}body{min-height:100vh;display:flex;flex-direction:column}.site-header,.site-footer{flex:0 0 auto}main#content{flex:1 0 auto}.woocommerce-page>.woocommerce{max-width:100%}.woocommerce-account .woocommerce-page>h2,.woocommerce-account .woocommerce-page>.woocommerce>h2{margin:0 0 24px;color:var(--navy);font:700 45px/1 "Baloo 2",cursive}.woocommerce-account .woocommerce-form{max-width:540px;margin:0 auto;padding:32px;border:1px solid #dfe4ed!important;border-radius:15px!important;background:#fff;box-shadow:0 8px 24px #0d265012}.woocommerce-account .woocommerce-form-login{max-width:540px}.woocommerce-account .woocommerce-form-row{margin:0 0 18px!important}.woocommerce-account .woocommerce-form label{display:block;margin-bottom:7px;color:var(--navy);font-weight:800}.woocommerce-account .woocommerce-form .input-text{width:100%;height:48px;padding:10px 13px;border:2px solid #d9dfe9;border-radius:7px;background:#fff;color:#20293c;font:inherit}.woocommerce-account .woocommerce-form .input-text:focus{border-color:var(--navy);outline:3px solid #a9d8f266}.woocommerce-account .woocommerce-form-login__submit,.woocommerce-account .woocommerce-form button[type=submit]{min-height:46px;border:0;border-radius:7px;background:var(--pink)!important;color:#fff!important;font-weight:800}.woocommerce-account .woocommerce-LostPassword a,.woocommerce-account .f4s-login-register-link a{color:var(--navy);font-weight:800;text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:5px}.woocommerce-account .woocommerce-MyAccount-navigation{float:none!important;width:100%!important;margin:0 0 28px}.woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:9px;margin:0;padding:0;list-style:none}.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0}.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:10px 15px;border:1px solid #dce2eb;border-radius:7px;background:#fff;color:var(--navy);font-weight:800}.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,.woocommerce-account .woocommerce-MyAccount-navigation a:hover{border-color:var(--navy);background:var(--navy);color:#fff}.woocommerce-account .woocommerce-MyAccount-content{float:none!important;width:100%!important;padding:30px;border:1px solid #dfe4ed;border-radius:15px;background:#fff;box-shadow:0 5px 18px #0d26500d}.woocommerce-account .woocommerce-MyAccount-content h2,.woocommerce-account .woocommerce-MyAccount-content h3{margin:0 0 15px;color:var(--navy);font:700 33px/1.1 "Baloo 2",cursive}.woocommerce-account .woocommerce-MyAccount-content a{color:var(--navy);font-weight:800;text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:4px}.woocommerce-account .woocommerce-Address{padding:20px;border-radius:10px;background:#f4f8ff}.woocommerce-account table.shop_table{border:1px solid #dfe4ed;border-radius:9px;border-collapse:separate;border-spacing:0;overflow:hidden}.woocommerce-account table.shop_table th{background:#f4f8ff;color:var(--navy)}.woocommerce-account .woocommerce-Button,.woocommerce-account a.woocommerce-Button{border:0;border-radius:7px;background:var(--navy);color:#fff;text-decoration:none}.woocommerce-account .f4s-customer-artwork>div{border:1px solid #dfe4ed!important;border-radius:10px!important;background:#f9fbff!important}@media(max-width:560px){.woocommerce-account .woocommerce-page>h2,.woocommerce-account .woocommerce-page>.woocommerce>h2{font-size:38px}.woocommerce-account .woocommerce-form,.woocommerce-account .woocommerce-MyAccount-content{padding:20px}.woocommerce-account .woocommerce-MyAccount-navigation ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.woocommerce-account .woocommerce-MyAccount-navigation a{text-align:center;font-size:14px}}

/* Basket and checkout */
.woocommerce-cart .woocommerce-page>h1,.woocommerce-checkout .woocommerce-page>h1{margin-bottom:28px}.woocommerce-cart-form{margin:0}.woocommerce table.shop_table{margin:0;border:1px solid #dfe4ed;border-radius:15px;border-collapse:separate;border-spacing:0;overflow:hidden;background:#fff;box-shadow:0 5px 18px #0d26500d}.woocommerce table.shop_table th{padding:16px 18px;border:0;background:var(--pale);color:var(--navy);font-weight:800}.woocommerce table.shop_table td{padding:18px;border:0;border-top:1px solid #e3e7ee;vertical-align:middle}.woocommerce table.shop_table .product-thumbnail img{width:76px;border-radius:8px}.woocommerce table.shop_table .product-name a{color:var(--navy);font-weight:800}.woocommerce table.shop_table .product-remove a{display:grid!important;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff0f5!important;color:var(--pink)!important;font-size:21px!important}.woocommerce table.shop_table .product-remove a:hover{background:var(--pink)!important;color:#fff!important}.woocommerce table.shop_table .quantity .qty{width:70px;min-height:42px;border:2px solid #d9dfe9;border-radius:7px;color:var(--navy);font-weight:800}.woocommerce table.shop_table .actions{padding:18px;background:#fbfcff}.woocommerce table.shop_table .actions .coupon{display:flex;align-items:center;gap:10px}.woocommerce table.shop_table .actions .coupon .input-text{width:190px!important;height:44px;margin:0!important;padding:8px 12px;border:2px solid #d9dfe9;border-radius:7px;color:var(--ink);font:inherit}.woocommerce .button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{min-height:46px;padding:10px 18px;border:0!important;border-radius:7px!important;background:var(--navy)!important;color:#fff!important;font:800 15px/1 var(--body-font,"Nunito Sans",Arial,sans-serif)!important;transition:transform .2s,box-shadow .2s,background .2s}.woocommerce .button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover{background:var(--pink)!important;color:#fff!important;transform:translateY(-2px)}.woocommerce .button:disabled,.woocommerce .button:disabled[disabled]{padding:10px 18px!important;color:#fff!important;opacity:.55}.woocommerce .button:focus-visible,.woocommerce button.button:focus-visible,.woocommerce input.button:focus-visible,.woocommerce input.input-text:focus-visible,.woocommerce select:focus-visible,.woocommerce textarea:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.woocommerce-cart-form .actions>button[name=update_cart]{float:right}.cart-collaterals{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.52fr);gap:32px;align-items:start;margin-top:32px}.cart-collaterals::before,.cart-collaterals::after{display:none!important}.cart-collaterals .cross-sells{float:none!important;width:auto!important}.cart-collaterals .cross-sells>h2,.cart-collaterals .cart_totals>h2,.woocommerce-checkout #order_review_heading{margin:0 0 18px;color:var(--navy);font:700 34px/1.1 "Baloo 2",cursive}.cart-collaterals .cart_totals{float:none!important;width:auto!important;padding:26px;border:1px solid #dfe4ed;border-radius:15px;background:#fff;box-shadow:0 8px 24px #0d265012}.cart-collaterals .cart_totals table{margin:0 0 20px}.cart-collaterals .cart_totals th,.cart-collaterals .cart_totals td{padding:12px 0;border-top:1px solid #e3e7ee;text-align:left}.cart-collaterals .cart_totals td{text-align:right}.cart-collaterals .cart_totals .order-total th,.cart-collaterals .cart_totals .order-total td{color:var(--navy);font-size:21px}.cart-collaterals .wc-proceed-to-checkout{padding:0!important}.cart-collaterals .wc-proceed-to-checkout a.checkout-button{display:flex!important;align-items:center;justify-content:center;min-height:52px;margin:0!important;border-radius:8px!important;background:var(--pink)!important;font-size:17px!important}.cart-collaterals .wc-proceed-to-checkout a.checkout-button:hover{background:var(--navy)!important}.woocommerce-cart .return-to-shop{margin-top:28px}.woocommerce-cart .cart-empty{margin:0 0 18px;padding:30px!important;border-top:0!important;border-radius:12px;background:var(--pale);color:var(--navy);font-weight:800;text-align:center}.woocommerce-cart .cart-empty::before{display:none}.woocommerce-cart .return-to-shop{text-align:center}.woocommerce-checkout .woocommerce-form-coupon-toggle,.woocommerce-checkout .woocommerce-form-login-toggle{margin-bottom:14px}.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,.woocommerce .woocommerce-error{margin:0 0 18px;border-top:0!important;border-radius:9px;box-shadow:none}.woocommerce .woocommerce-message{background:#f0f8ea;color:#244825}.woocommerce .woocommerce-message::before{color:var(--green)}.woocommerce .woocommerce-error{background:#fff0f4;color:#8b1749}.woocommerce .woocommerce-error::before{color:var(--pink)}.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:34px;align-items:start}.woocommerce-checkout #customer_details{float:none!important;width:auto!important;margin:0;padding:28px;border:1px solid #dfe4ed;border-radius:15px;background:#fff;box-shadow:0 5px 18px #0d26500d}.woocommerce-checkout #customer_details::after{content:"";display:block;clear:both}.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{float:none!important;width:auto!important}.woocommerce-checkout #customer_details .col-2{margin-top:30px;padding-top:25px;border-top:1px solid #e3e7ee}.woocommerce-checkout #customer_details h3{margin:0 0 20px;color:var(--navy);font:700 34px/1 "Baloo 2",cursive}.woocommerce-checkout .form-row{margin:0 0 17px!important}.woocommerce-checkout .form-row label{display:block;margin-bottom:7px;color:var(--navy);font-weight:800}.woocommerce-checkout .form-row .required{color:var(--pink)}.woocommerce-checkout .form-row input.input-text,.woocommerce-checkout .form-row textarea,.woocommerce-checkout .form-row select{width:100%;min-height:48px;padding:10px 13px;border:2px solid #d9dfe9;border-radius:7px;background:#fff;color:var(--ink);font:inherit}.woocommerce-checkout .form-row textarea{min-height:110px;resize:vertical}.woocommerce-checkout .form-row .select2-container--default .select2-selection--single{height:48px;border:2px solid #d9dfe9;border-radius:7px}.woocommerce-checkout .form-row .select2-selection__rendered{padding-left:13px!important;line-height:44px!important}.woocommerce-checkout .form-row .select2-selection__arrow{height:44px!important;right:7px!important}.woocommerce-checkout .woocommerce-checkout-review-order{padding:28px;border:1px solid #dfe4ed;border-radius:15px;background:#fff;box-shadow:0 8px 24px #0d265012}.woocommerce-checkout-review-order-table{margin:0 0 20px!important;border:0!important;border-radius:0!important;box-shadow:none!important}.woocommerce-checkout-review-order-table th,.woocommerce-checkout-review-order-table td{padding:12px 0!important;border:0!important;border-top:1px solid #e3e7ee!important;text-align:left}.woocommerce-checkout-review-order-table td{text-align:right}.woocommerce-checkout-review-order-table .cart_item .product-name{padding-right:15px!important}.woocommerce-checkout-review-order-table .order-total th,.woocommerce-checkout-review-order-table .order-total td{color:var(--navy);font-size:20px}.woocommerce-checkout #payment{border-radius:10px;background:#f4f8ff}.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid #dce4ef;padding:0 18px}.woocommerce-checkout #payment div.payment_box{margin:8px 0 16px;border-radius:7px;background:#fff;color:var(--ink)}.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#fff}.woocommerce-checkout #payment .form-row.place-order{padding:18px;margin:0!important}.woocommerce-checkout #payment #place_order{float:none!important;display:flex;width:100%;min-height:54px;align-items:center;justify-content:center;background:var(--pink)!important;font-size:17px!important}.woocommerce-checkout #payment #place_order:hover{background:var(--navy)!important}.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:14px}.woocommerce-checkout .woocommerce-form-coupon{display:flex;max-width:560px;gap:10px;margin:0 0 26px!important;padding:20px;border:1px solid #dfe4ed;border-radius:10px;background:#fff}.woocommerce-checkout .woocommerce-form-coupon .form-row{float:none!important;width:auto!important;margin:0!important}.woocommerce-checkout .woocommerce-form-coupon .form-row-first{flex:1}.woocommerce-checkout .woocommerce-form-coupon .input-text{width:100%;height:46px;padding:8px 12px;border:2px solid #d9dfe9;border-radius:7px;font:inherit}.woocommerce-checkout .woocommerce-form-coupon .clear{display:none}.woocommerce-checkout .woocommerce-form-login{max-width:540px;margin:0 0 26px!important;padding:24px;border:1px solid #dfe4ed!important;border-radius:12px!important;background:#fff;box-shadow:none}.woocommerce-checkout .woocommerce-form-login .form-row{margin-bottom:16px!important}@media(max-width:800px){.cart-collaterals,.woocommerce-checkout form.checkout{grid-template-columns:1fr}.cart-collaterals .cart_totals{max-width:560px}.woocommerce-checkout .woocommerce-checkout-review-order{order:-1}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:14px}.woocommerce table.shop_table .product-thumbnail img{width:58px}}@media(max-width:560px){.woocommerce-cart .woocommerce-page>h1,.woocommerce-checkout .woocommerce-page>h1{font-size:40px}.woocommerce table.shop_table{border-radius:10px}.woocommerce table.shop_table .product-thumbnail{display:none}.woocommerce table.shop_table .product-price{display:none}.woocommerce table.shop_table .product-subtotal{font-size:0}.woocommerce table.shop_table .product-subtotal .woocommerce-Price-amount{font-size:16px}.woocommerce table.shop_table .actions .coupon{display:grid;grid-template-columns:1fr 1fr}.woocommerce table.shop_table .actions .coupon .input-text{grid-column:1/-1;width:100%!important}.woocommerce-cart-form .actions>button[name=update_cart]{float:none;width:100%;margin-top:12px}.cart-collaterals{gap:24px;margin-top:24px}.cart-collaterals .cart_totals,.woocommerce-checkout #customer_details,.woocommerce-checkout .woocommerce-checkout-review-order{padding:20px}.cart-collaterals .cart_totals>h2,.woocommerce-checkout #customer_details h3,.woocommerce-checkout #order_review_heading{font-size:29px}.woocommerce-checkout .woocommerce-form-coupon{display:grid;grid-template-columns:1fr;padding:16px}.woocommerce-checkout .woocommerce-form-coupon .form-row{width:100%!important}.woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last{float:none!important;width:100%!important}.woocommerce-checkout #payment ul.payment_methods{padding:0 14px}.woocommerce-checkout #payment .form-row.place-order{padding:14px}}

/* WooCommerce Cart and Checkout blocks */
.wc-block-cart .wc-block-components-sidebar-layout{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);align-items:start}.wc-block-cart .wc-block-components-sidebar-layout>.wc-block-components-main,.wc-block-cart .wc-block-components-sidebar-layout>.wc-block-components-sidebar{width:auto!important;margin:0!important}.wc-block-cart .wc-block-components-sidebar-layout>.wc-block-components-main{padding-right:0!important}.wc-block-cart .wc-block-components-sidebar-layout>.wc-block-components-sidebar{padding-left:0!important}
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{container-type:inline-size}.wc-block-components-sidebar-layout{gap:32px}.wc-block-cart__main,.wc-block-checkout__main{padding:28px;border:1px solid #dfe4ed;border-radius:15px;background:#fff;box-shadow:0 5px 18px #0d26500d}.wc-block-cart__sidebar,.wc-block-checkout__sidebar{padding:26px!important;border:1px solid #dfe4ed;border-radius:15px;background:#fff;box-shadow:0 8px 24px #0d265012}.wc-block-cart-items__header{color:var(--navy);font-weight:800}.wc-block-cart-items__row{border-color:#e3e7ee!important}.wc-block-cart-item__image img{border-radius:9px}.wc-block-components-product-name{color:var(--navy)!important;font-weight:800}.wc-block-cart-item__total-price-and-sale-badge-wrapper,.wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-formatted-money-amount{color:var(--navy);font-weight:800}.wc-block-cart-item__remove-link{color:var(--pink)!important;font-weight:800}.wc-block-cart-item__remove-link:hover{text-decoration:underline!important}.wc-block-components-quantity-selector{min-height:42px;border-color:#d9dfe9!important;border-radius:7px}.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{color:var(--navy);font-weight:800}.wc-block-cart__totals-title,.wc-block-components-checkout-order-summary__title,.wc-block-components-checkout-step__title{color:var(--navy)!important;font:700 30px/1.1 "Baloo 2",cursive!important}.wc-block-components-totals-wrapper,.wc-block-components-order-summary{border-color:#e3e7ee!important}.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,.wc-block-components-totals-footer-item .wc-block-formatted-money-amount{color:var(--navy);font-size:20px;font-weight:800}.wc-block-components-button:not(.is-link),.wc-block-cart__submit-button{min-height:52px!important;border:0!important;border-radius:8px!important;background:var(--pink)!important;color:#fff!important;font-weight:800!important}.wc-block-components-button:not(.is-link):hover,.wc-block-cart__submit-button:hover{background:var(--navy)!important;color:#fff!important}.wc-block-components-button:not(.is-link):focus-visible,.wc-block-components-text-input input:focus-visible,.wc-block-components-combobox .wc-block-components-combobox-control input:focus-visible{outline:3px solid var(--yellow)!important;outline-offset:2px}.wc-block-components-totals-coupon-link{color:var(--navy)!important;font-weight:800}.wc-block-components-totals-coupon__form{padding-top:14px}.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input,.wc-block-components-textarea textarea{min-height:48px!important;border:2px solid #d9dfe9!important;border-radius:7px!important;color:var(--ink)!important;font:inherit!important}.wc-block-components-text-input label,.wc-block-components-combobox label,.wc-block-components-checkbox__label{color:var(--navy)!important;font-weight:800}.wc-block-components-checkout-step{margin:0 0 24px!important;padding:0 0 24px!important;border-bottom:1px solid #e3e7ee}.wc-block-components-checkout-step:last-child{border-bottom:0}.wc-block-components-checkout-step__heading{margin-bottom:18px}.wc-block-components-checkout-step__description{color:#59637a}.wc-block-components-radio-control__label{color:var(--navy);font-weight:800}.wc-block-components-checkout-order-summary{border:0!important}.wc-block-components-checkout-order-summary__content{padding-top:12px}.wc-block-components-notice-banner{margin:0 0 18px!important;border-radius:9px!important}.wc-block-components-notice-banner.is-info{border-color:var(--green)!important;background:#f0f8ea!important;color:#244825!important}.wc-block-cart__empty-cart__title{margin:0 0 22px!important;color:var(--navy)!important;font:700 40px/1.1 "Baloo 2",cursive!important}.wp-block-woocommerce-empty-cart-block>h2:not(.wc-block-cart__empty-cart__title){margin:30px 0 18px;color:var(--navy);font:700 32px/1.1 "Baloo 2",cursive}.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.wp-block-woocommerce-empty-cart-block .wc-block-grid__product{max-width:none!important;margin:0!important;padding:12px;border:1px solid #dfe4ed;border-radius:12px;background:#fff}.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img{border-radius:8px}.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{color:var(--navy);font:700 22px/1.1 "Baloo 2",cursive}.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{color:var(--pink);font-weight:800}@media(max-width:700px){.wc-block-components-sidebar-layout{gap:24px}.wc-block-cart__main,.wc-block-checkout__main,.wc-block-cart__sidebar,.wc-block-checkout__sidebar{padding:20px!important}.wc-block-checkout__sidebar{margin-bottom:0!important}.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:460px){.wc-block-cart__main,.wc-block-checkout__main,.wc-block-cart__sidebar,.wc-block-checkout__sidebar{padding:16px!important}.wc-block-cart__totals-title,.wc-block-components-checkout-order-summary__title,.wc-block-components-checkout-step__title{font-size:26px!important}.wc-block-cart__empty-cart__title{font-size:34px!important}.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{grid-template-columns:1fr}}
.wc-block-cart .wc-block-components-sidebar-layout{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);align-items:start}.wc-block-cart .wc-block-components-sidebar-layout>.wc-block-components-main,.wc-block-cart .wc-block-components-sidebar-layout>.wc-block-components-sidebar{width:auto!important;margin:0!important}.wc-block-cart .wc-block-components-sidebar-layout>.wc-block-components-main{padding-right:0!important}.wc-block-cart .wc-block-components-sidebar-layout>.wc-block-components-sidebar{padding-left:0!important}@media(max-width:700px){.wc-block-cart .wc-block-components-sidebar-layout{grid-template-columns:1fr}}
.wc-block-cart .wc-block-components-sidebar-layout{display:flex!important;flex-wrap:nowrap!important;gap:32px!important}.wc-block-cart .wc-block-components-sidebar-layout .wc-block-components-main{box-sizing:border-box!important;flex:1 1 0!important;width:0!important;min-width:0!important;margin:0!important;padding-right:0!important}.wc-block-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{box-sizing:border-box!important;flex:0 0 calc(35% - 16px)!important;width:calc(35% - 16px)!important;min-width:0!important;margin:0!important;padding-left:0!important}@media(max-width:700px){.wc-block-cart .wc-block-components-sidebar-layout{display:block!important}.wc-block-cart .wc-block-components-sidebar-layout .wc-block-components-main,.wc-block-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{width:100%!important}.wc-block-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{margin-top:24px!important}}
.wp-block-woocommerce-cart .wc-block-components-sidebar-layout{display:flex!important;flex-wrap:nowrap!important;gap:32px!important}.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main{box-sizing:border-box!important;flex:1 1 0!important;width:0!important;min-width:0!important;margin:0!important;padding-right:0!important}.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{box-sizing:border-box!important;flex:0 0 calc(35% - 16px)!important;width:calc(35% - 16px)!important;min-width:0!important;margin:0!important;padding-left:0!important}@media(max-width:700px){.wp-block-woocommerce-cart .wc-block-components-sidebar-layout{display:block!important}.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main,.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{width:100%!important}.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{margin-top:24px!important}}
.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main{padding-right:28px!important}.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{padding-left:28px!important}@media(max-width:700px){.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main,.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{padding-left:0!important;padding-right:0!important}}
.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout{display:flex!important;flex-wrap:nowrap!important;gap:32px!important}.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main{box-sizing:border-box!important;flex:1 1 0!important;width:0!important;min-width:0!important;margin:0!important;padding-right:28px!important}.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar{box-sizing:border-box!important;flex:0 0 calc(35% - 16px)!important;width:calc(35% - 16px)!important;min-width:0!important;margin:0!important;padding-left:28px!important}.wp-block-woocommerce-cart .wc-block-cart__submit-button,.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button{background:var(--green)!important}.wp-block-woocommerce-cart .wc-block-cart__submit-button:hover,.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:hover{background:var(--navy)!important}@media(max-width:700px){.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout{display:block!important}.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main,.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar{width:100%!important;padding-left:0!important;padding-right:0!important}.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar{margin-top:24px!important}}

/* Product artwork selector */
.woocommerce-page div.product form.cart{flex-wrap:wrap;column-gap:13px;row-gap:0}.woocommerce-page .f4s-product-artwork-selector{flex:0 0 100%;width:100%;margin:24px 0!important;padding:20px!important;border:1px solid #d9e3f0!important;border-radius:12px!important;background:var(--pale)!important}.woocommerce-page .f4s-product-artwork-selector p{margin:0 0 11px!important;color:var(--navy);font-size:17px;line-height:1.3}.woocommerce-page .f4s-product-artwork-selector p strong{font-weight:800}.woocommerce-page .f4s-product-artwork-selector select{display:block;width:100%!important;max-width:100%!important;min-height:50px;padding:10px 48px 10px 15px;border:2px solid var(--navy)!important;border-radius:8px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3E%3Cpath d='m2 2 6 6 6-6' fill='none' stroke='%23062968' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5'/%3E%3C/svg%3E") right 16px center/16px no-repeat;color:var(--navy);font:800 16px var(--body-font,"Nunito Sans",Arial,sans-serif);appearance:none;cursor:pointer}.woocommerce-page .f4s-product-artwork-selector select:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.woocommerce-page .f4s-product-artwork-selector select:invalid{color:#65718a}.woocommerce-page .f4s-product-artwork-selector .f4s-product-preview{margin-top:18px;border-radius:8px;overflow:hidden}@media(max-width:560px){.woocommerce-page .f4s-product-artwork-selector{padding:16px!important}.woocommerce-page .f4s-product-artwork-selector select{font-size:15px}}
.single-product .woocommerce-page .single_add_to_cart_button,.single-product .woocommerce-page button[name=add-to-cart]{background:var(--pink)!important;color:#fff!important}.single-product .woocommerce-page .single_add_to_cart_button:hover,.single-product .woocommerce-page button[name=add-to-cart]:hover{background:var(--navy)!important}
.woocommerce-page .woocommerce-product-gallery__wrapper .f4s-product-preview--gallery{display:block!important;max-width:none!important;margin:0!important;border-radius:14px;background:#f7f7f7}.woocommerce-page .woocommerce-product-gallery__wrapper .f4s-product-preview--gallery .f4s-product-preview-base,.woocommerce-page .woocommerce-product-gallery__wrapper .f4s-product-preview--gallery .f4s-product-preview-overlay{width:100%!important}.woocommerce-page .woocommerce-product-gallery__wrapper .f4s-product-preview--gallery .f4s-product-preview-artwork{max-width:none!important}
.woocommerce-product-gallery:has(.f4s-product-preview--gallery) .woocommerce-product-gallery__trigger{display:none!important}
.footer-top-border{height:34px;background:#062968 url('img/footer-top.jpg') left bottom/auto 34px repeat-x}
.site-footer{padding:15px 0 42px}
.account-links a:hover{text-decoration:none}.account-links a::before{display:inline-block;margin-top:-4px;font-family:"Font Awesome 6 Free";font-size:14px;font-weight:900;text-decoration:none}.account-links a:first-child::before{content:"\f2bd"}.account-links a:last-child::before{content:"\f07a"}
.benefit__image{display:grid;place-items:center;width:82px;height:82px;margin:0 auto 11px;overflow:hidden;border-radius:50%;background:#e5f0ff}.benefit__image img{width:100%;height:100%;object-fit:cover}@media(max-width:560px){.benefit__image{width:68px;height:68px}}
.product-card>img{height:auto}
@media(max-width:560px){html,body{overflow-x:hidden}.header-top{min-width:0;gap:4px}.brand{flex:0 1 auto;min-width:0;font-size:28px;letter-spacing:-1.5px}.brand-four{font-size:34px}.brand-heart{font-size:25px}.brand .custom-logo{max-width:138px;max-height:52px}.header-tools{flex:0 0 auto;margin-left:auto}.account-links{gap:4px;font-size:0}.account-links a{position:relative;display:grid;width:30px;height:32px;place-items:center;font-size:0}.account-links a.is-active{background:transparent;color:var(--navy);text-decoration:none}.account-links a::before{margin-top:0;font-family:"Font Awesome 6 Free";font-size:18px;font-weight:900}.account-links a:first-child::before{content:"\f2bd"}.account-links a:last-child::before{content:"\f07a"}.account-links .basket-count{position:absolute;top:0;right:-4px;min-width:16px;height:16px;padding:0 3px;font-size:10px}.menu-toggle{flex:0 0 auto;margin:0;padding:6px}.menu-toggle span:not(.visually-hidden){width:25px;margin:5px 3px}}
.single-product .woocommerce-page .single_add_to_cart_button:disabled{border-color:#c9cfda!important;background:#c9cfda!important;color:#fff!important;box-shadow:none!important;cursor:not-allowed;opacity:1}.single-product .woocommerce-page .single_add_to_cart_button:disabled:hover{transform:none;background:#c9cfda!important}
.payments{gap:0}
.faq-accordion{background:#fff}.faq-category{margin:0 0 32px}.faq-category>h3{margin:0 0 12px;color:var(--navy);font:700 29px/1.15 "Baloo 2",cursive}.faq-items{display:grid;gap:10px}.faq-item{border:1px solid #dfe4ed;border-radius:9px;background:#fff}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;color:var(--navy);font-weight:800;cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--pink);color:#fff;font-size:20px;line-height:1}.faq-item[open] summary span{background:var(--navy);font-size:0}.faq-item[open] summary span::after{content:"−";font-size:22px}.faq-answer{padding:0 19px 19px;color:var(--ink)}.faq-answer>*:last-child{margin-bottom:0}.faq-item summary:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
.woocommerce-account .f4s-organisation-card{max-width:100%}.woocommerce-account .f4s-organisation-card>h2{margin:0;color:var(--navy);font:700 45px/1 "Baloo 2",cursive}.woocommerce-account .f4s-organisation-card>h2+p{margin:10px 0 28px}.woocommerce-account .f4s-organisation-card>h2+p a{color:var(--navy);font-weight:800;text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:4px}.woocommerce-account .f4s-organisation-card>h3{margin:30px 0 0;padding:18px 22px;border:1px solid #dfe4ed;border-bottom:0;border-radius:12px 12px 0 0;background:var(--pale);color:var(--navy);font:700 27px/1.1 "Baloo 2",cursive}.woocommerce-account .f4s-organisation-card>h3+form,.woocommerce-account .f4s-organisation-card>h3+table,.woocommerce-account .f4s-organisation-card>h3+p{margin:0 0 30px!important;padding:22px;border:1px solid #dfe4ed;border-radius:0 0 12px 12px;background:#fff;box-shadow:0 5px 18px #0d26500d}.woocommerce-account .f4s-organisation-card>h3+p{color:var(--navy);font-size:18px;font-weight:800}.woocommerce-account .f4s-organisation-card form label{color:var(--navy);font-weight:800}.woocommerce-account .f4s-organisation-card form input[type=text],.woocommerce-account .f4s-organisation-card form select{min-height:46px;padding:9px 12px;border:2px solid #d9dfe9;border-radius:7px;background:#fff;color:var(--ink);font:inherit}.woocommerce-account .f4s-organisation-card form select{width:100%;max-width:560px}.woocommerce-account .f4s-organisation-card form input[type=file]{max-width:100%;padding:11px;border:2px dashed #cbd6e6;border-radius:7px;background:#f9fbff}.woocommerce-account .f4s-organisation-card .shop_table{width:100%;box-shadow:none}.woocommerce-account .f4s-organisation-card .shop_table code{padding:4px 7px;border-radius:5px;background:#f2f5fa;color:var(--navy);font-weight:800}.woocommerce-account .f4s-organisation-card .button-secondary{background:#fff!important;border:2px solid var(--navy)!important;color:var(--navy)!important}.woocommerce-account .f4s-organisation-card .button-secondary:hover{background:var(--navy)!important;color:#fff!important}@media(max-width:700px){.woocommerce-account .f4s-organisation-card>h2{font-size:38px}.woocommerce-account .f4s-organisation-card>h3{padding:16px;font-size:24px}.woocommerce-account .f4s-organisation-card>h3+form,.woocommerce-account .f4s-organisation-card>h3+table,.woocommerce-account .f4s-organisation-card>h3+p{padding:16px}.woocommerce-account .f4s-organisation-card .shop_table{display:block;overflow-x:auto;white-space:nowrap}.woocommerce-account .f4s-organisation-card form select{min-width:0!important}}
.woocommerce button.button.button-secondary,.woocommerce a.button.button-secondary{display:inline-flex!important;align-items:center;justify-content:center;line-height:1.2!important}
.button,.button:hover,.button:focus,.woocommerce-account .woocommerce-MyAccount-content a.button{text-decoration:none!important}
.woocommerce-account .f4s-organisation-code-editor{max-width:760px}.woocommerce-account .f4s-organisation-code-editor__back{margin:0 0 18px}.woocommerce-account .f4s-organisation-code-editor__back a{color:var(--navy);font-weight:800;text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:4px}.woocommerce-account .f4s-organisation-code-editor>h3{margin:0;padding:20px 24px;border-radius:14px 14px 0 0;background:var(--pale);color:var(--navy);font:700 35px/1 "Baloo 2",cursive}.woocommerce-account .f4s-organisation-code-editor>h3+p,.woocommerce-account .f4s-organisation-code-editor>p:not(.f4s-organisation-code-editor__back){margin:0;padding:14px 24px;border-inline:1px solid #dfe4ed;background:#fff}.woocommerce-account .f4s-organisation-code-editor>h3+p{padding-top:20px;color:#59637a}.woocommerce-account .f4s-organisation-code-editor>p:has(.button-secondary){padding-bottom:20px}.woocommerce-account .f4s-organisation-code-editor>form{margin:0;padding:24px;border:1px solid #dfe4ed;border-radius:0 0 14px 14px;background:#fff;box-shadow:0 8px 24px #0d265012}.woocommerce-account .f4s-organisation-code-editor form>p{margin:0 0 18px}.woocommerce-account .f4s-organisation-code-editor form>p:last-child{margin-bottom:0}.woocommerce-account .f4s-organisation-code-editor form input[type=text]{min-height:48px;padding:10px 13px;border:2px solid #d9dfe9;border-radius:7px;font:inherit}.woocommerce-account .f4s-organisation-code-editor form input[type=file]{display:block;width:100%;max-width:420px;margin-top:10px;padding:11px;border:2px dashed #cbd6e6;border-radius:7px;background:#f9fbff}.woocommerce-account .f4s-organisation-code-editor form img{display:block;max-width:280px!important;border:1px solid #d9e1eb!important;border-radius:9px!important;padding:5px!important}.woocommerce-account .f4s-organisation-code-editor form code{padding:4px 7px;border-radius:5px;background:#f2f5fa;color:var(--navy);font-weight:800}@media(max-width:560px){.woocommerce-account .f4s-organisation-code-editor>h3{padding:18px;font-size:30px}.woocommerce-account .f4s-organisation-code-editor>h3+p,.woocommerce-account .f4s-organisation-code-editor>p:not(.f4s-organisation-code-editor__back),.woocommerce-account .f4s-organisation-code-editor>form{padding-left:18px;padding-right:18px}}
.woocommerce button.button.button-primary,.woocommerce a.button.button-primary{display:inline-flex!important;align-items:center;justify-content:center;line-height:1.2!important}.woocommerce-account .f4s-current-organisation{margin:0 0 16px;padding:14px 17px;border-left:4px solid var(--green);border-radius:0 8px 8px 0;background:#f0f8ea;color:#244825}
.woocommerce .woocommerce-message{display:flex;align-items:center;gap:10px}.woocommerce .woocommerce-message::before{position:static!important;flex:0 0 auto;margin:0!important}
.f4s-login-step--send-code,.f4s-login-step--code{margin-top:24px}

/* Organiser login */
.f4s-organisers-login{max-width:580px}.f4s-organisers-login__card{padding:32px;border:1px solid #dfe4ed;border-radius:15px;background:#fff;box-shadow:0 8px 24px #0d265012}.f4s-organisers-login h1{margin:0 0 24px;color:var(--navy);font:700 45px/1 "Baloo 2",cursive}.f4s-organisers-login__form p{margin:0 0 18px}.f4s-organisers-login__form p:last-child{margin:0}.f4s-organisers-login__form label{display:block;margin-bottom:7px;color:var(--navy);font-weight:800}.f4s-organisers-login__form input{width:100%;height:48px;padding:10px 13px;border:2px solid #d9dfe9;border-radius:7px;background:#fff;color:#20293c;font:inherit}.f4s-organisers-login__form input:focus{border-color:var(--navy);outline:3px solid #a9d8f266}.f4s-organisers-login__form .button{display:flex;width:100%;min-height:54px;align-items:center;justify-content:center;border:0}.f4s-organisers-login__error{margin:0 0 18px;padding:14px 17px;border-radius:9px;background:#fff0f4;color:#8b1749;font-weight:800}@media(max-width:560px){.f4s-organisers-login__card{padding:20px}.f4s-organisers-login h1{font-size:38px}}

/* Guest purchase-access screen. */
.f4s-purchase-login{max-width:680px;text-align:center}.f4s-purchase-login__card{padding:42px;border:1px solid #dfe4ed;border-radius:15px;background:#fff;box-shadow:0 8px 24px #0d265012}.f4s-purchase-login h1{margin:0 0 16px;color:var(--navy);font:700 45px/1 "Baloo 2",cursive}.f4s-purchase-login p{max-width:470px;margin:0 auto;color:#4b566b}.f4s-purchase-login__actions{display:flex;justify-content:center;gap:14px;margin-top:28px}.f4s-purchase-login__button{display:inline-flex;min-width:150px;height:48px;padding:0 24px;align-items:center;justify-content:center;border:2px solid transparent;border-radius:7px;font-family:var(--body-font,"Nunito Sans",Arial,sans-serif);font-size:16px;font-weight:800;line-height:1;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s}.f4s-purchase-login__button:hover{transform:translateY(-2px);box-shadow:0 5px 12px #06296825}.f4s-purchase-login__button:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.f4s-purchase-login__button--pink{background:var(--pink);color:#fff}.f4s-purchase-login__button--outline{border-color:var(--pink);background:#fff;color:var(--pink)}@media(max-width:560px){.f4s-purchase-login__card{padding:28px 20px}.f4s-purchase-login h1{font-size:38px}.f4s-purchase-login__actions{flex-direction:column}.f4s-purchase-login__button{width:100%}}
/* Keep the display typeface expressive, but use a lighter, more readable UI weight elsewhere. */
body :is(p,a,li,label,input,select,textarea,button,.button,.price,.woocommerce-Price-amount,.woocommerce-message,.woocommerce-info,.woocommerce-error,.account-links,.utility-menu a,.primary-nav a,.woocommerce table.shop_table th,.woocommerce table.shop_table td,.woocommerce-page .woocommerce-result-count,.woocommerce-page .woocommerce-ordering select,.woocommerce-page .product_meta,.woocommerce-account .woocommerce-MyAccount-navigation a,.woocommerce-account .woocommerce-form label){font-weight:600}body .woocommerce .button,body .woocommerce button.button,body .woocommerce input.button,body .woocommerce #respond input#submit,body .woocommerce-page .single_add_to_cart_button{font-weight:600!important}
button,.button,input[type=button],input[type=submit],input[type=reset]{font-family:var(--body-font,"Nunito Sans",Arial,sans-serif)!important}

/* Uploaded header logos need explicit dimensions; SVGs do not always provide them. */
.brand--logo{display:flex;align-items:center}.brand--logo:before,.brand--logo:after{display:none}.brand--logo .custom-logo-link{display:block;line-height:0}.brand--logo .custom-logo{display:block;width:auto;height:70px;max-width:360px}@media(max-width:560px){.brand--logo .custom-logo{width:min(138px,100%);height:auto;max-height:52px}}

/* Primary navigation uses the regular body weight. */
.primary-nav a{font-weight:400!important}

/* Hand-drawn heading underline. Colour variants use the Customiser palette. */
.hand-underline{position:relative;display:inline-block;isolation:isolate;white-space:nowrap}.hand-underline::after{position:absolute;z-index:-1;right:-.1em;bottom:-.24em;left:-.1em;height:.34em;content:"";background-color:var(--pink);-webkit-mask:url("img/hand-underline.svg") center/100% 100% no-repeat;mask:url("img/hand-underline.svg") center/100% 100% no-repeat;pointer-events:none}.hand-underline-navy::after{background-color:var(--navy)}.hand-underline-pink::after{background-color:var(--pink)}.hand-underline-green::after{background-color:var(--green)}.hand-underline-yellow::after{background-color:var(--yellow)}.hand-underline-light-blue::after{background-color:var(--light-blue)}
.section-title .hand-underline{color:inherit;font-family:inherit;font-size:inherit;vertical-align:baseline}.section-title--has-hand-underline:after,.section-title:has(.hand-underline):after{display:none}

/* Product prices use the selected body typeface. */
.product-card strong{font-family:var(--body-font,"Nunito Sans",Arial,sans-serif);font-weight:600}

/* Benefit card typography. */
.benefit h3{font-size:22px}.benefit p{font-size:12px;font-weight:500!important}

/* Match the journey step typography to the benefit cards. */
.journey-steps h3{font-size:22px}body .parent-journey .journey-steps p{font-size:12px;font-weight:500!important}

/* A hand underline on the whole heading is centred and intentionally compact. */
:is(h1,h2,h3,h4,h5,h6).hand-underline{display:block;white-space:normal}:is(h1,h2,h3,h4,h5,h6).hand-underline::after{right:auto;bottom:-.18em;left:32.5%;width:35%;height:.28em;margin:0}

/* Footer heading underlines use the left-aligned hand-drawn yellow stroke. */
.site-footer h2::after{width:70px;height:8px;margin:5px 0 0;background-color:var(--yellow);-webkit-mask:url("img/hand-underline.svg") left center/100% 100% no-repeat;mask:url("img/hand-underline.svg") left center/100% 100% no-repeat}

/* Footer content is intentionally lighter than its section headings. */
.site-footer :is(p,a,li,span,b,em,strong){font-weight:400!important}

/* Keep hero copy readable when the image sits behind it on smaller screens. */
.hero__title,.hero__copy p{text-shadow:0 0 6px #fff,0 0 13px #fff}.hero__actions .button{box-shadow:0 0 0 3px #fffffff0,0 0 12px 4px #fff}

/* My Account content underlines use the green brand accent. */
.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-Button)::after,.woocommerce-account .woocommerce-LostPassword a::after,.woocommerce-account .f4s-login-register-link a::after,.woocommerce-account .f4s-login__register-link a::after{background-color:var(--green)}

/* Homepage responsive refinements. */
@media (max-width:1024px){
	.hero__copy{width:min(56%,560px)}
	.hero__title{font-size:clamp(48px,6.5vw,62px)}
	.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.product-card__body{height:auto;min-height:260px}
	.benefits__panel{padding:54px max(20px,calc((100vw - min(100vw - 40px,1240px)) / 2 + 20px))}
	.benefits__panel .benefit{padding-inline:18px}
	.benefits__panel .benefit h3{font-size:clamp(23px,2.8vw,28px)}
	.cta--fundraiser .cta__image img{max-width:140px}
	.cta--fundraiser .cta__content{gap:12px 24px}
}

@media (max-width:640px){
	html,body{overflow-x:clip}
	.shell{width:min(calc(100% - 28px),var(--shell))}
	.section{padding-block:42px}
	.f4s-title-decorated{gap:7px}
	.f4s-title-decoration img{max-height:1.5em}
	.hero,.hero__content{min-height:540px}
	.hero{background-position:center center!important}
	.hero__copy{width:100%;max-width:520px;padding:42px 0 58px}
	.hero__title{font-size:clamp(42px,12vw,54px);letter-spacing:-1.5px}
	.hero__copy p{font-size:17px!important;line-height:1.45}
	.hero__actions{gap:12px;margin-top:22px}
	.hero__actions .button{flex:1 1 165px;padding-inline:16px}
	.hero__copy>.hero__actions+.early-bird{left:0;width:min(130px,40vw);font-size:12px}
	.product-grid{grid-template-columns:1fr;gap:18px}
	.product-card{max-width:430px;margin-inline:auto}
	.product-card__body{min-height:0;padding:16px 12px 14px}
	.product-card h3{font-size:26px}
	.products__cta{margin-top:24px}
	.benefits{padding-block:22px 28px}
	.benefits__panel{margin-inline:-14px;padding:46px 14px;background-size:cover}
	.benefits__panel .benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 0}
	.benefits__panel .benefit{padding-inline:10px}
	.benefits__panel .benefit__image,.benefits__panel .benefit__icon{height:64px;margin-bottom:8px}
	.benefits__panel .benefit h3{font-size:21px}
	.benefits__panel .benefit p{font-size:12px;line-height:1.35}
	.benefits__panel .benefit:not(:last-child)::after{width:16px}
	.cta--fundraiser{padding-block:36px;background-size:cover}
	.cta--fundraiser .cta-container{gap:18px}
	.cta--fundraiser .cta__image img{max-width:112px}
	.cta--fundraiser .cta__content{gap:14px}
	.cta--fundraiser h2{font-size:clamp(30px,9vw,40px)}
	.cta--fundraiser .subtitle p,.cta--fundraiser .text p{font-size:16px}
	.cta--fundraiser .cta__button-group{width:100%;flex-wrap:nowrap;justify-content:center}
	.cta--fundraiser .cta__button-group .button{width:auto;flex:0 1 auto;padding-inline:18px}
	.text-slider{padding-block:42px}
	.text-slider .slider{margin-top:24px}
	.text-slider .slide{padding:20px}
	.footer-grid{gap:24px}
}

/* Testimonial cards. */
.testimonials{background:#fff}
.testimonials__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:6px}
.testimonial-card{position:relative;min-height:174px;padding:22px 112px 22px 22px;border:2px solid #7783a7;border-radius:18px;background:#fff;overflow:hidden}
.testimonial-card::after{position:absolute;top:50%;right:24px;width:76px;height:76px;border-radius:50%;background:#ffb717;content:"";transform:translateY(-50%)}
.testimonial-card:nth-child(even)::after{background:var(--pink)}
.testimonial-card__header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:9px}
.testimonial-card__logo{display:grid;place-items:center;width:48px;height:48px;overflow:hidden;border-radius:50%;background:#f4f8ff}
.testimonial-card__logo img{display:block;max-width:42px;max-height:42px;width:auto;height:auto;object-fit:contain}
.testimonial-card h3{margin:0;color:var(--navy);font:700 15px/1.45 "Nunito Sans",Arial,sans-serif}
.testimonial-card__stars{margin:0;color:#ffb717;font-size:21px;line-height:1;letter-spacing:1px;white-space:nowrap}
.testimonial-card__text{margin:0;color:#252a39;font-size:15px;line-height:1.45}
.testimonial-card__text p{display:inline;margin:0}
.testimonial-card__text::before,.testimonial-card__text::after{color:var(--navy);font-size:1.45em;font-weight:800;line-height:0;vertical-align:-.13em}
.testimonial-card__text::before{content:"“";margin-right:.08em}
.testimonial-card__text::after{content:"”";margin-left:.08em}
.testimonial-card__text :first-child{margin-top:0}
.testimonial-card__text :last-child{margin-bottom:0}
@media (max-width:800px){.testimonials__grid{grid-template-columns:1fr}.testimonial-card{max-width:680px;margin-inline:auto;width:100%}}
@media (max-width:480px){.testimonial-card{min-height:0;padding:18px 82px 18px 18px;border-radius:14px}.testimonial-card::after{right:16px;width:52px;height:52px}.testimonial-card__header{grid-template-columns:auto minmax(0,1fr);gap:10px}.testimonial-card__stars{grid-column:2;font-size:18px}.testimonial-card h3{font-size:14px}.testimonial-card__text{font-size:14px}}

/* Keep primary navigation aligned to the header shell and evenly distributed. */
@media (min-width:801px){.primary-nav .shell{display:block}.primary-nav .shell>ul{display:flex;width:100%;justify-content:space-between;gap:0}.primary-nav .shell>ul>li{flex:1 1 0;text-align:center}.primary-nav .shell>ul>li>a{display:inline-block;width:auto}}
.primary-nav .current-menu-item>a::after,.primary-nav a:hover::after{right:auto;width:100%;height:6px;bottom:4px;background-color:var(--pink);-webkit-mask:url("img/hand-underline.svg") center/100% 100% no-repeat;mask:url("img/hand-underline.svg") center/100% 100% no-repeat}
@media (max-width:800px){.primary-nav .shell>ul>li>a{display:inline-block;width:auto}}

/* Campaign Hero flip option: place artwork/media on the left and copy on the right. */
.hero--flipped .hero__copy{margin-left:auto;margin-right:0}
.hero--flipped .hero__video{right:auto;left:0;-webkit-mask-image:linear-gradient(90deg,#fff 0%,transparent 100%);mask-image:linear-gradient(90deg,#fff 0%,transparent 100%)}
.hero--flipped:has(.hero__video)::before{right:auto;left:0;background:linear-gradient(0deg,#fff 0%,#ffff 18%,transparent 100%)}
@media(max-width:800px){.hero--flipped .hero__copy{margin-inline:0}.hero--flipped .hero__video{right:0;left:0;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#fff 38%);mask-image:linear-gradient(90deg,transparent 0%,#fff 38%)}.hero--flipped:has(.hero__video)::before{right:0;left:0}}
@media(min-width:801px){.hero--flipped::after{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(90deg,transparent 0%,transparent 90%,#fff 100%);pointer-events:none}.hero--flipped .hero__content{z-index:2}}
.hero{background-repeat:no-repeat}
@media(max-width:800px){.hero{background-size:cover!important}}

/* Text colour utilities for flexible content and editor-authored HTML. */
.text-navy{color:var(--navy)!important}.text-pink{color:var(--pink)!important}.text-green{color:var(--green)!important}.text-yellow{color:var(--yellow)!important}.text-white{color:#fff!important}.text-ink{color:var(--ink)!important}
.benefit__image img{height:100px;width:auto}
.hero__actions--arrow .button::after{content:"→";display:inline-block;margin-left:10px;font-size:1.15em;line-height:0;transform:translateY(-.02em)}
.cta--fundraiser{background-color:#fff;background-image:var(--cta-background-image,none);background-position:center;background-size:cover;padding:54px 0}.cta--fundraiser .cta-container{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:28px}.cta--fundraiser .cta-container--has-image-before{grid-template-columns:minmax(96px,.28fr) minmax(0,1fr)}.cta--fundraiser .cta-container--has-image-after{grid-template-columns:minmax(0,1fr) minmax(96px,.28fr)}.cta--fundraiser .cta-container--has-image-before.cta-container--has-image-after{grid-template-columns:auto minmax(0,1fr) auto}.cta--fundraiser .cta__image{align-self:stretch;display:flex;align-items:center;justify-content:center}.cta--fundraiser .cta__image--before{grid-column:1}.cta--fundraiser .cta__image--after{grid-column:-1}.cta--fundraiser .cta__image img{display:block;width:100%;max-width:180px;height:auto;object-fit:contain}.cta--fundraiser .cta__content{display:grid;grid-column:1;grid-template-columns:minmax(0,1fr) auto;gap:10px 36px;padding:0;border-radius:0;background:transparent;box-shadow:none}.cta--fundraiser .cta-container--has-image-before .cta__content{grid-column:2}.cta--fundraiser .title{grid-column:1/-1}.cta--fundraiser .subtitle,.cta--fundraiser .text{grid-column:1}.cta--fundraiser .a-button{grid-column:2;grid-row:2/span 2;align-self:center}.cta--fundraiser .cta__button-group{display:flex;align-items:center;gap:12px}.cta--fundraiser .cta__button-icon{display:block;width:auto;max-width:64px;height:auto;max-height:48px;object-fit:contain}.cta--fundraiser h2{margin:0;color:#fff;font:700 clamp(32px,4vw,52px)/1 "Baloo 2",cursive}.cta--fundraiser .subtitle p,.cta--fundraiser .text p{margin:0;color:#fff;font-size:17px}.cta--fundraiser .text{color:#fff;font-size:17px}.cta--fundraiser .button{white-space:nowrap;background:var(--yellow);color:var(--navy)}@media(max-width:800px){.cta--fundraiser{padding:38px 0}.cta--fundraiser .cta-container,.cta--fundraiser .cta-container--has-image-before,.cta--fundraiser .cta-container--has-image-after,.cta--fundraiser .cta-container--has-image-before.cta-container--has-image-after{grid-template-columns:1fr}.cta--fundraiser .cta__image{grid-column:1}.cta--fundraiser .cta__image img{max-width:130px}.cta--fundraiser .cta__content,.cta--fundraiser .cta-container--has-image-before .cta__content{grid-column:1;grid-template-columns:1fr;padding:0}.cta--fundraiser .a-button{grid-column:1;grid-row:auto}.cta--fundraiser .button{width:100%}.cta--fundraiser .cta__button-group{justify-content:center}}
.benefit p{font-weight:400!important}.benefit p strong{font-weight:500!important}
@media(max-width:800px){.benefits .benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.benefits .benefit-grid .benefit:last-child{grid-column:auto}}

/* Flexible-layout title decorations stay no taller than the title itself. */
.f4s-title-decorated{display:inline-flex;align-items:center;justify-content:center;gap:12px;max-width:100%;vertical-align:middle}.f4s-title-decorated>h1,.f4s-title-decorated>h2,.f4s-title-decorated>h3,.f4s-title-decorated>h4,.f4s-title-decorated>h5,.f4s-title-decorated>h6{margin-top:0;margin-bottom:0}.f4s-title-decoration{display:flex;flex:0 0 auto;align-self:center;line-height:0}.f4s-title-decoration--top{align-self:flex-start}.f4s-title-decoration--bottom{align-self:flex-end}.f4s-title-decoration img{display:block;width:auto;max-width:100%;height:auto;max-height:2em;object-fit:contain}.hero .f4s-title-decoration img{max-height:4em;filter:drop-shadow(0 0 5px #fff) drop-shadow(0 0 10px #fff)}
.f4s-title-decorated>.section-title{margin-bottom:34px}.hero__copy>.f4s-title-decorated{margin-bottom:22px}
.f4s-title-decorated:has(>.section-title){display:flex;width:fit-content;margin-inline:auto}
.f4s-title-decorated>:is(h1,h2,h3,h4,h5,h6){width:max-content;max-width:100%;flex:0 1 auto}
.parent-journey .f4s-title-decoration img{max-height:4em}
.parent-journey .f4s-title-decoration--after{margin-top:-2em;margin-left:10px;align-self:flex-start}
.footer-grid>section:last-child{position:relative;isolation:isolate}.footer-grid>section:last-child::after{position:absolute;z-index:0;top:50%;right:-40px;width:5em;height:7em;max-height:7em;content:"";background:var(--footer-decoration) center/contain no-repeat;transform:translateY(-50%);pointer-events:none}.footer-grid>section:last-child>*{position:relative;z-index:1}
.hero__copy>.f4s-title-decorated{display:inline-flex!important;width:fit-content!important;max-width:100%!important;justify-content:flex-start!important;margin-left:0;margin-right:0}.hero__copy>.f4s-title-decorated>:is(h1,h2,h3,h4,h5,h6){width:auto!important;max-width:100%!important;flex:0 1 auto}

.site-footer{background:var(--footer-bg,var(--navy))}

/* Keep inline emphasis within the hero title. */
.hero__title span{display:inline}

.footer-grid>section:last-child::after{right:-80px}
.social-links a{font-size:26px!important;line-height:1;font-weight:400}
.woocommerce-page ul.products li.product .price{font-family:var(--body-font,"Nunito Sans",Arial,sans-serif)!important;font-weight:600!important}
.woocommerce-page ul.products li.product a.button.add_to_cart_button{display:inline-flex;align-items:center;justify-content:center;line-height:1.2}
.woocommerce-page div.product p.price{font-family:var(--body-font,"Nunito Sans",Arial,sans-serif)!important;font-weight:600!important}
.footer-contact-icon--phone{color:var(--pink)}.footer-contact-icon--address{color:var(--green)}
.footer-brand{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.footer-brand>.footer-logo{flex:0 0 auto}.footer-brand>.footer-brand__tagline{flex:1 1 150px;margin:0}.footer-brand>.footer-wordmark{flex:0 0 auto}
@media(max-width:700px){.footer-brand{align-items:flex-start;flex-direction:column;gap:10px}.footer-brand>.footer-brand__tagline{flex-basis:auto}}
.footer-contact-line{display:flex;align-items:flex-start;gap:8px}.footer-contact-line>a{display:flex;align-items:flex-start;gap:8px}.footer-contact-line .footer-contact-icon{flex:0 0 1em;margin-top:.22em}
.footer-logo{display:block;flex:0 0 auto;min-width:220px}.footer-logo__link{display:block;line-height:0}.footer-logo .custom-logo{display:block;width:320px;max-width:100%;height:auto;max-height:100px}
.footer-brand{align-items:flex-start;flex-direction:column}.footer-brand>.footer-brand__tagline{flex-basis:auto}
.footer-brand{gap:5px}
@media(max-width:560px){.brand .custom-logo,.brand--logo .custom-logo{width:min(180px,100%);max-width:180px;max-height:60px}}

/* Keep hero title decorations attached to the title's final line. */
.hero__copy>.f4s-title-decorated{display:block!important;width:auto!important;max-width:100%!important;text-align:left}
.hero__copy>.f4s-title-decorated>:is(h1,h2,h3,h4,h5,h6){display:inline!important;width:auto!important;max-width:none!important}
.hero__copy>.f4s-title-decorated>.f4s-title-decoration{display:inline-flex;vertical-align:top;margin-left:12px}
.hero__copy>.f4s-title-decorated>.f4s-title-decoration:first-child{margin-left:0;margin-right:12px}
.hero{position:relative;overflow:hidden;background-color:#fff}.hero__video{position:absolute;z-index:0;top:0;right:0;bottom:0;left:auto;width:60%;height:100%;object-fit:cover;object-position:var(--hero-video-position,center center);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#fff 48%);mask-image:linear-gradient(90deg,transparent 0%,#fff 48%);pointer-events:none}.hero__content{position:relative;z-index:1}
@media(max-width:800px){.hero__video{width:100%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#fff 38%);mask-image:linear-gradient(90deg,transparent 0%,#fff 38%)}}
.hero{background-image:var(--hero-image,none)}
@media(max-width:800px){.hero{background-image:linear-gradient(90deg,#fff 0%,#fffc 52%,#fff1 100%),var(--hero-mobile-image,var(--hero-image,none))!important}}

.hero{background-image:var(--hero-image,url('img/christmas-hero.jpg'))}
@media(max-width:800px){.hero{background-position:center center!important;background-image:linear-gradient(90deg,#fff 0%,#fffc 52%,#fff1 100%),var(--hero-mobile-image,var(--hero-image,url('img/christmas-hero.jpg')))!important}}

/* No built-in hero artwork: only selected image/video assets are used. */
.hero{background-image:var(--hero-image,none)!important}
@media(max-width:800px){.hero{background-image:linear-gradient(90deg,#fff 0%,#fffc 52%,#fff1 100%),var(--hero-mobile-image,var(--hero-image,none))!important}}
.benefits{background:#fff;padding-top:28px;padding-bottom:34px}.benefits__panel{position:relative;margin:0 calc((100vw - min(100vw - 40px,1240px)) / -2);padding:64px max(20px,calc((100vw - min(100vw - 40px,1240px)) / 2 + 20px));background:var(--green);color:#fff;border-radius:50% / 8%}.benefits__panel .benefit-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.benefits__panel .benefit{position:relative;padding:0 28px}.benefits__panel .benefit:not(:last-child)::after{position:absolute;top:2%;right:0;width:2px;height:96%;content:"";background:#fff;opacity:.9}.benefits__panel .benefit__icon,.benefits__panel .benefit__image{width:78px;height:78px;margin:0 auto 12px;background:transparent;color:#fff;border-radius:0}.benefits__panel .benefit__icon{font-size:54px}.benefits__panel .benefit__image img{filter:brightness(0) invert(1)}.benefits__panel .benefit h3{color:#fff;font-size:25px;font-style:italic}.benefits__panel .benefit h3::after{background:var(--yellow)}.benefits__panel .benefit p{max-width:205px;color:#fff;font-size:15px}.benefits__panel .benefit:nth-child(n) .benefit__icon{background:transparent}
@media(max-width:800px){.benefits__panel{margin-inline:-20px;padding:52px 20px;border-radius:45% / 4%}.benefits__panel .benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 0}.benefits__panel .benefit:nth-child(2)::after{display:none}.benefits__panel .benefit:nth-child(odd)::after{height:100%}.benefits__panel .benefit{padding:0 16px}}
@media(max-width:560px){.benefits__panel{margin-inline:-14px;padding:46px 14px}.benefits__panel .benefit h3{font-size:20px}.benefits__panel .benefit p{font-size:13px}.benefits__panel .benefit__icon,.benefits__panel .benefit__image{width:64px;height:64px}.benefits__panel .benefit__icon{font-size:44px}}
.benefits__panel{background-color:var(--green);background-image:var(--benefits-bg);background-position:center;background-size:100% 100%;background-repeat:no-repeat;border-radius:0}
.benefits__panel .benefit__image{width:auto;height:100px}.benefits__panel .benefit__image img{filter:none}.benefits__panel .benefit h3::after{display:block;width:70px;height:3px;margin:7px auto 0;content:"";background:var(--yellow);border-radius:3px}
.benefits__panel{background-color:transparent}
.benefits__panel .benefit:not(:last-child)::after{width:24px;background:var(--benefits-divider) center/contain no-repeat;opacity:1}
.benefits__panel .benefit h3::after{height:.34em;background-color:var(--yellow);-webkit-mask:url("img/hand-underline.svg") center/100% 100% no-repeat;mask:url("img/hand-underline.svg") center/100% 100% no-repeat}
.benefits__panel .benefit h3{font-size:27px}.benefits__panel .benefit p{font-size:15px;font-weight:400}
.benefits__panel .benefit h3{font-size:30px}.benefits__panel .benefit p{font-size:13px}
.hero:has(.hero__video)::before{position:absolute;z-index:1;right:0;bottom:0;width:60%;height:38%;content:"";background:linear-gradient(0deg,#fff 0%,#ffff 18%,transparent 100%);pointer-events:none}.hero__content{z-index:2}
@media(max-width:800px){.hero:has(.hero__video)::before{width:100%;height:30%}}
.section-title{font-size:42px}@media(max-width:560px){.section-title{font-size:36px}}
.page-header{padding-top:52px;padding-bottom:8px;text-align:left}.page-header__title{margin:0;color:var(--navy);font:700 42px/1.1 "Baloo 2",cursive}@media(max-width:560px){.page-header{padding-top:44px}.page-header__title{font-size:36px}}
.product-card__body .price-prefix{font-size:20px}
.hero__copy>.hero__actions+.early-bird{position:relative;left:10px;bottom:auto;margin-top:0}
.early-bird:before,.early-bird:after{content:"";position:absolute;top:-25px;left:50%;width:2px;height:34px;background:#8c6549;transform-origin:top center}
.early-bird:before{transform:rotate(-55deg)}
.early-bird:after{transform:rotate(55deg)}

/* My Account content links use the pink hand-drawn underline. */
.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-Button),.woocommerce-account .woocommerce-LostPassword a,.woocommerce-account .f4s-login-register-link a,.woocommerce-account .f4s-login__register-link a{position:relative;display:inline-block;text-decoration:none!important;text-decoration-color:transparent!important}.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-Button)::after,.woocommerce-account .woocommerce-LostPassword a::after,.woocommerce-account .f4s-login-register-link a::after,.woocommerce-account .f4s-login__register-link a::after{position:absolute;right:-.08em;bottom:-.24em;left:-.08em;height:.32em;content:"";background-color:var(--pink);-webkit-mask:url("img/hand-underline.svg") center/100% 100% no-repeat;mask:url("img/hand-underline.svg") center/100% 100% no-repeat;pointer-events:none}

.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-Button)::after,.woocommerce-account .woocommerce-LostPassword a::after,.woocommerce-account .f4s-login-register-link a::after,.woocommerce-account .f4s-login__register-link a::after{background-color:var(--green)}

/* Final homepage responsive overrides: kept last to resolve legacy rules above. */
@media (max-width:1024px){
	.benefits__panel{padding:54px max(20px,calc((100vw - min(100vw - 40px,1240px)) / 2 + 20px))}
	.benefits__panel .benefit{padding-inline:18px}
	.benefits__panel .benefit h3{font-size:clamp(23px,2.8vw,28px)}
	.cta--fundraiser .cta__image img{max-width:140px}
	.cta--fundraiser .cta__content{gap:12px 24px}
}

@media (max-width:640px){
	html,body{overflow-x:clip}
	.shell{width:min(calc(100% - 28px),var(--shell))}
	.section{padding-block:42px}
	.f4s-title-decorated{gap:7px}
	.f4s-title-decoration img{max-height:1.5em}
	.hero,.hero__content{min-height:540px}
	.hero{background-position:center center!important}
	.hero__copy{width:100%;max-width:520px;padding:42px 0 58px}
	.hero__title{font-size:clamp(42px,12vw,54px);letter-spacing:-1.5px}
	.hero__copy p{font-size:17px!important;line-height:1.45}
	.hero__actions{gap:12px;margin-top:22px}
	.hero__actions .button{flex:1 1 165px;padding-inline:16px}
	.hero__copy>.hero__actions+.early-bird{left:0;width:min(130px,40vw);font-size:12px}
	.product-grid{grid-template-columns:1fr;gap:18px}
	.product-card{max-width:430px;margin-inline:auto}
	.product-card__body{min-height:0;padding:16px 12px 14px}
	.product-card h3{font-size:26px}
	.products__cta{margin-top:24px}
	.benefits{padding-block:22px 28px}
	.benefits__panel{margin-inline:-14px;padding:46px 14px;background-size:cover}
	.benefits__panel .benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 0}
	.benefits__panel .benefit{padding-inline:10px}
	.benefits__panel .benefit__image,.benefits__panel .benefit__icon{height:64px;margin-bottom:8px}
	.benefits__panel .benefit h3{font-size:21px}
	.benefits__panel .benefit p{font-size:12px;line-height:1.35}
	.benefits__panel .benefit:not(:last-child)::after{width:16px}
	.cta--fundraiser{padding-block:36px;background-size:cover}
	.cta--fundraiser .cta-container{gap:18px}
	.cta--fundraiser .cta__image img{max-width:112px}
	.cta--fundraiser .cta__content{gap:14px}
	.cta--fundraiser h2{font-size:clamp(30px,9vw,40px)}
	.cta--fundraiser .subtitle p,.cta--fundraiser .text p{font-size:16px}
	.cta--fundraiser .cta__button-group{width:100%;flex-wrap:nowrap;justify-content:center}
	.cta--fundraiser .cta__button-group .button{width:auto;flex:0 1 auto;padding-inline:18px}
	.text-slider{padding-block:42px}
	.text-slider .slider{margin-top:24px}
	.text-slider .slide{padding:20px}
	.footer-grid{gap:24px}
}
