/* spring specific styles */

/* colors  */

:root {
	--spring-green: #70c26b;
	--spring-dark-green: #248564;
	--spring-pink: #f598b7;
}
.spring-camp-section {
	background-color: var(--spring-dark-green);
}

.c-copy p,
.c-copy + p {
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0;
}

.text-b {
	font-weight: bold;
}

.hero-hold .clusterdate {
	bottom: -40px;
	right: -110px;
}

.slug-dot {
	background-color: var(--spring-pink);
}

.hero-hold .clusterdate .o-30 {
	opacity: 1;
}

.faq-minus {
	display: none;
}

.faq-open .faq-minus {
	display: block;
}

.faq-open .faq-plus {
	display: none;
}
#faqs a:not(.btn) {
	border: none;
	text-decoration: underline;
	color: var(--spring-pink);
}

/* Color Themes */
.color-pink {
	color: var(--spring-pink);
}

.color-bg-pink {
	background-color: var(--spring-pink);
	color: #252328 !important;
}

.color-bg-pink .color-bg-ui-primary {
	color: #252328;
	background-color: var(--spring-pink);
	box-shadow: inset 0 0 0 2px var(--spring-pink);
}

.color-bg-pink .color-bg-ui-primary span,
.color-bg-pink .color-bg-ui-primary:hover {
	color: #252328 !important;
	box-shadow: inset 0 0 0 2px var(--spring-pink);
}

/* Sessions */
.author-image img {
	width: 215px;
	height: 215px;
	object-fit: cover;
	object-position: center center;
}

.author-image img.dual-image {
	height: 150px;
	object-fit: cover;
	object-position: center center;
	flex: 0 0 100%;
	display: flex;
}

/* Ticker */

.tick {
	background-color: rgba(36, 133, 100, 0.8);
}

.ticker,
.ticker__list {
	display: flex;
}

.ticker__item,
.ticker__item.social {
	width: 120px;
	flex: none;
	align-self: start;
}

.ticker__item.social {
	height: 120px;
	padding: 0 15px;
}

.ticker-item {
	display: flex;
	align-content: center;
	align-items: center;
	align-self: center;
}

.ticker__list {
	margin: 30px 0;
}

.ticker__item svg {
	display: block;
	margin: 0 auto;
	width: 100%;
	height: auto;
	max-height: 30px;
	max-width: 100px;
}

.ticker__item img {
	display: block;
	margin: 0 auto;
	width: 100%;
	height: auto;
	object-fit: contain;
	max-width: 140px;
	max-height: none;
}

/* Misc */
.tick-flip-card,
.tick-flip-panel-front,
.tick-flip-panel-back,
.tick-flip-shadow-top,
.tick-flip-shadow-bottom,
.tick-flip-card-shadow {
	display: none;
}

.tick-flip-spacer {
	visibility: visible;
	font-weight: 100;
	letter-spacing: normal;
	width: 45px;
}

.tick-group {
	margin-left: 20px;
}

.tick-flip {
	margin-left: 0;
	margin-right: 0;
	min-width: 0;
	letter-spacing: 0;
	text-indent: 10px;
}

.tick {
	margin-left: -80px;
}

.tick [data-view] {
	text-align: right;
	margin-top: 0;
	font-weight: normal;
}

.tick [data-layout~='horizontal'][data-layout~='fit'] {
	font-size: 4.875rem !important;
	display: flex;
	flex-wrap: nowrap;
	align-content: center;
	white-space: nowrap;
	justify-content: center;
}

.summit-form h1 {
	font-size: 5.625rem;
	font-style: normal;
	font-weight: 600;
}

.summit-form p {
	line-height: normal;
	letter-spacing: -1px;
	color: #252328;
}

.summit-form form p {
	line-height: normal;
	letter-spacing: -0.5px;
}

.summit-form button .color-bg-ui-primary {
	background-color: #2a282f !important;
}

.summit-form .c-form__content + .c-copy a {
	color: #51505a;
	text-decoration: underline;
	border: none;
}

.summit-form .c-asset-svg-wrap-inherit-color svg path {
	fill: #000000 !important;
}

.summit-form .c-asset-svg-wrap-inherit-color .color-text-grey-5 {
	color: #000000 !important;
}
.navigation-container {
	top: 50%;
	transform: translateY(123%);
	display: block;
	width: 110%;
	height: 50px;
	left: -5%;
}

.navigation-container #prev {
	left: -30px;
	position: absolute;
}

.navigation-container #next {
	right: -30px;
	position: absolute;
}

.navigation-container .c-btn {
	border-radius: 9999px !important;
}

::selection {
	background: var(--spring-pink);
	color: #2a282f;
}

::-moz-selection {
	background: var(--spring-pink);
	color: #2a282f;
}

#x-client-nav-wrapper li .u-onHover-reveal__target .c-heading {
	color: #303138;
}

#x-client-nav-wrapper li .u-onHover-reveal__target .c-heading p {
	color: #868690;
}

#x-sticky-nav-wrapper,
#x-client-nav-wrapper {
	display: none;
}

.c-navsite--logo {
	height: 30px;
}

.top-nav ul {
	display: inline-flex;
	align-items: center;
}

.top-nav ul li {
	margin-left: 25px;
}

.top-nav ul li a:not(.c-btn) {
	color: #ffffff;
	text-decoration: none;
	border: none;
}
.top-nav ul li a:not(.c-btn):hover {
	color: var(--spring-pink);
}

.top-nav ul li .c-btn {
	text-decoration: none;
	border: none;
}

@media (min-width: 75em) {
	.f16-lg {
		font-size: 8.875rem;
	}
}

#wpadminbar {
	display: none;
}

#hero {
	background-color: var(--spring-dark-green);
}
#hero h1 {
	line-height: 120px;
}
#hero h1 span {
	background-color: var(--spring-green);
	color: #ffffff;
}

#hero button.c-btn {
	background-color: #303139;
	box-shadow: inset 0 0 0 1px #868690;
}

#hero button.c-btn:hover {
	background-color: #303139;
	box-shadow: inset 0 0 0 1px #c6c7cc;
}

.outer-button-holder {
	display: inline-block;
	margin: 0 auto;
	width: 100%;
}
.outer-button-holder .button-holder {
	padding: 0;
	margin: 0;
}
.hero-content {
	padding-left: 0;
	padding-right: 0;
}

.hero-hold .clusterdate {
	bottom: -40px;
	right: -110px;
}
.date-div {
	padding: 1rem 0 1rem 0 !important;
}

@media (max-width: 768px) {
	.tick {
		margin-left: 0;
	}
	.hero-hold h1 {
		font-size: 7rem;
	}

	.hero-hold h1.thankyou {
		font-size: 4rem;
	}
	#hero {
		height: auto;
	}
	.tick [data-layout~='horizontal'][data-layout~='fit'] {
		letter-spacing: 2px !important;
		text-align: center;
	}

	.tick-group {
		margin-left: 15px;
	}

	.tick-label {
		text-align: right;
		font-size: 12px;
	}
}

@media (max-width: 414px) {
	.tick {
		margin-left: 0;
	}
	.ticker__list {
		margin: 0;
	}

	.tick [data-layout~='horizontal'][data-layout~='fit'] {
		font-size: 45px !important;
		letter-spacing: 2px !important;
		width: auto;
		text-align: center;
		margin-left: -20px;
	}
}
@media screen and (max-width: 415px) {
	.tick {
		margin-left: 0;
	}
	.tick [data-layout~='horizontal'][data-layout~='fit'] {
		font-size: 3.3rem !important;
	}
	.tick-flip-spacer {
		width: 34px;
	}
}

@media screen and (min-width: 416px) and (max-width: 915px) {
	.tick {
		margin-left: 0;
	}
	.tick [data-layout~='horizontal'][data-layout~='fit'] {
		font-size: 3.5rem !important;
	}
	.tick-flip-spacer {
		width: 30px;
	}
	.hero-hold .clusterdate {
		bottom: -30px;
		right: -110px;
		font-size: 2.5rem;
	}
	#hero {
		height: unset;
	}
}

.watch-btn {
	padding: 12px 18px;
	font-size: 16px;
	margin-top: 20px;
}

.watch-btn svg {
	width: 10px;
	height: 10px;
	margin-left: 10px;
}

@media screen and (max-width: 599px) {
	#hero.hero-thankyou {
		height: auto;
	}
	.hero-hold h1.thankyou {
		font-size: 4rem;
	}
}

@media screen and (max-width: 375px) {
	#hero.hero-thankyou {
		height: auto;
	}

	.hero-hold h1.thankyou {
		font-size: 4rem;
	}
}

@media screen and (min-width: 600px) and (max-width: 768px) {
	#hero.hero-thankyou {
		height: auto;
	}
	.hero-hold h1.thankyou {
		font-size: 4rem;
	}
}

/* Class for text color using the summer-blue variable */
.text-spring-green,
.color-text-summer-yellow {
	color: var(--spring-green);
}

.text-spring-dark-green {
	color: var(--spring-dark-green);
}

.text-summer-blue {
	color: var(--spring-pink);
}

/* Class for background color using the spring-blue variable */
.color-bg-spring-green,
.color-bg-summer-yellow,
.color-bg-summer-blue {
	background-color: var(--spring-green);
}
.color-bg-spring-pink,
.color-bg-ui-primary {
	background-color: var(--spring-pink);
}

.color-bg-spring-dark-green {
	background-color: var(--spring-dark-green);
}

section.spring-camp-section span.summer-span {
	font-size: 71.04px;
	color: 70c26b !important;
}

section.spring-camp-section h1.summer-h1 {
	font-size: 147.96px;
}
section.spring-camp-section h1.summer-h1 span {
	background-color: var(--spring-green);
	line-height: normal;
	padding-right: 8px;
}

.color-bg-summer-yellow .color-bg-grey-8,
.color-bg-summer-yellow .color-bg-ui-primary,
.color-bg-summer-yellow div span {
	background-color: var(--spring-pink);
	color: black;
}
.color-bg-summer-yellow .color-bg-grey-8:hover,
.color-bg-summer-yellow .color-bg-ui-primary:hover,
.color-bg-summer-yellow div span:hover {
	box-shadow: inset 0 0 0 2px var(--spring-pink);
	text-shadow: 0 0 1px #0003;
}

.sessions-section span.sessions-heading {
	font-size: 96px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}
.author-container {
	display: inline-flex;
	align-items: stretch;
	align-content: stretch;
	flex-wrap: wrap;
}
.sessions-section .star-holder svg {
	position: absolute;
	margin-left: -35px;
	width: 68px;
	margin-top: -15px;
	z-index: -9999;
}

section.color-bg-summer-blue button.c-btn.c-btn--primary-ui .c-btn__color-mix {
	background-color: var(--spring-pink) !important;
}
section.color-bg-summer-blue button.c-btn.c-btn--primary-ui .c-btn__color {
	background-color: var(--spring-pink) !important;
}
section.color-bg-summer-blue button.c-btn.c-btn--primary-ui .relative {
	color: #252328;
}

.color-bg-summer-blue h1 span {
	background-color: var(--spring-pink) !important;
	padding-right: 8px;
}
.faq-row {
	background-color: #f9f9f9;
	transition: background-color 0.3s ease;
}

.faq-row .button-faq:hover {
	background-color: #eee;
}
.faq-para {
	cursor: auto;
	width: 100%;
}

/** hero animations **/

@keyframes rock {
	0% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(-15deg);
	}
	100% {
		transform: rotate(0deg);
	}
}

@keyframes wiggle {
	0% {
		transform: translate(0, 0) scale(1);
	}
	20% {
		transform: translate(-8px, -8px) rotate(-10deg) scale(0.8);
	}
	40% {
		transform: translate(16px, -18px) rotate(10deg) scale(0.6);
	}
	60% {
		transform: translate(-12px, -28px) rotate(-20deg) scale(0.4);
	}
	80% {
		transform: translate(10px, -38px) rotate(3deg) scale(0.2);
	}
	100% {
		transform: translate(-8px, -50px) rotate(-1deg) scale(0);
	}
}

.swirl-outer {
	position: absolute;
	width: fit-content;
	height: fit-content;
	pointer-events: none;
	z-index: -100;
}
.swirl-outer .swirl-inner {
	position: absolute;
	will-change: transform;
	display: inline-block;
}
.swirl-outer.first {
	bottom: 13%;
	left: -14%;
}
.swirl-outer.second {
	right: 46%;
	top: -31%;
}
.swirl-outer.second .swirl-inner {
	scale: 1.5;
}

@keyframes flash {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes flash-blue {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes flash-orange {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes flash-yellow {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.container-mobile {
	display: inline-block;
	position: absolute;
	width: 100px;
	height: auto;
}
.container-mobile svg {
	width: 100%;
	height: 100%;
}
.container-mobile #buttons-blue,
.container-mobile #buttons-orange,
.container-mobile #buttons-yellow {
	-webkit-animation: none;
	animation: none;
}
.container-mobile:hover #buttons-blue,
.container-mobile:hover #buttons-orange,
.container-mobile:hover #buttons-yellow,
.container-mobile.hover #buttons-blue,
.container-mobile.hover #buttons-orange,
.container-mobile.hover #buttons-yellow {
	-webkit-animation: flash 1s infinite;
	animation: flash 1s infinite;
}

.container-mobile:hover #buttons-blue,
.container-mobile.hover #buttons-blue {
	-webkit-animation: flash-blue 1s infinite;
	animation: flash-blue 1s infinite;
}
.container-mobile:hover #buttons-orange,
.container-mobile.hover #buttons-orange {
	-webkit-animation: flash-orange 1s infinite 0.5s;
	animation: flash-orange 1s infinite 0.5s;
}
.container-mobile:hover #buttons-yellow,
.container-mobile.hover #buttons-yellow {
	-webkit-animation: flash-yellow 1s infinite 1s;
	animation: flash-yellow 1s infinite 1s;
}

./* -------------------------------------------------- */
/*   Keep your existing CSS for initial (page-load)   */
/* -------------------------------------------------- */
/* e.g. on page load, these run once and stay at final state (forwards) */
.tulip-stem-bottom {
	animation: grow-stem-bottom 1.5s ease forwards;
	transform-origin: center bottom;
	animation-delay: 0s;
	opacity: 0;
}
.tulip-stem-trunk {
	animation: grow-stem-bottom 1.5s ease forwards;
	transform-origin: center bottom;
	animation-delay: 0.5s;
	opacity: 0;
}
.tulip-petals {
	transform: scale(0);
	animation: bloom-flower 1.5s ease forwards;
	transform-origin: center center;
	animation-delay: 1s;
	opacity: 0;
}
.tulip-main {
	transform: scale(0);
	animation: bloom-flower 1.5s ease forwards;
	transform-origin: center center;
	animation-delay: 1.5s;
	opacity: 0;
}

/* Your existing keyframes */
@keyframes grow-stem-bottom {
	0% {
		transform: scaleY(0);
		opacity: 0;
	}
	100% {
		transform: scaleY(1);
		opacity: 1;
	}
}

@keyframes grow-stem-trunk {
	0% {
		transform: scaleY(0);
		opacity: 0;
	}
	100% {
		transform: scaleY(1);
		opacity: 1;
	}
}

@keyframes bloom-flower {
	0% {
		transform: scale(0);
		opacity: 0;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}

@keyframes grow-stem-bottom-hover {
	0% {
		transform: scaleY(0);
		opacity: 0;
	}
	100% {
		transform: scaleY(1);
		opacity: 1;
	}
}
@keyframes grow-stem-trunk-hover {
	0% {
		transform: scaleY(0);
		opacity: 0;
	}
	100% {
		transform: scaleY(1);
		opacity: 1;
	}
}
@keyframes bloom-flower-hover {
	0% {
		transform: scale(0);
		opacity: 0;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}

.container-tulip:hover .tulip-stem-bottom,
.container-tulip.hover .tulip-stem-bottom {
	animation: none; /* forces a reset so it can restart */
	animation: grow-stem-bottom-hover 1.5s ease forwards;
	animation-delay: 0s;
	transform-origin: center bottom;
}

.container-tulip:hover .tulip-stem-trunk,
.container-tulip.hover .tulip-stem-trunk {
	animation: none;
	animation: grow-stem-bottom-hover 1.5s ease forwards;
	animation-delay: 0.5s;
	transform-origin: center bottom;
}

.container-tulip:hover .tulip-petals,
.container-tulip.hover .tulip-petals {
	animation: none;
	animation: bloom-flower-hover 1.5s ease forwards;
	animation-delay: 1s;
	transform-origin: center center;
}

.container-tulip:hover .tulip-main,
.container-tulip.hover .tulip-main {
	animation: none;
	animation: bloom-flower-hover 1.5s ease forwards;
	animation-delay: 1.5s;
	transform-origin: center center;
}

.e-tulip {
	top: -53px;
	left: 71%;
}

.container-tulip {
	display: inline-block;
	position: absolute;
	width: 100px;
	height: auto;
}
.container-tulip svg {
	width: 100%;
	height: 100%;
}

.container-tulip .cls-1 {
	fill: #86d72f;
}
.container-tulip .cls-2 {
	fill: #f70a8d;
}
.container-tulip .cls-3 {
	fill: #ff6dc6;
}

.e-thumb {
	top: -85px;
	left: 50%;
}
.container-thumb {
	width: 64px;
	height: auto;
}
.container-thumb svg {
	width: 100%;
	height: 100%;
	transition: transform 0.5sease-in-out;
}
.e-blossom {
	transform: scale(0.55);
}
.container-blossom {
	top: -580px;
	left: 90%;
}
.container-blossom svg {
	width: 100%;
	height: 100%;
}

.container-laptop {
	position: absolute;
	width: 30px;
	height: auto;
}
.container-laptop svg {
	width: 100%;
	height: 100%;
	transform: scale(1.3);
}
.container-laptop #screen {
	transition: fill 0.5s ease-in-out;
}
.container-laptop:hover #screen,
.container-laptop.hover #screen {
	-webkit-animation: flash 1s infinite;
	animation: flash 1s infinite;
}

.container-glasses {
	position: absolute;
	width: 70px;
	height: auto;
}
.container-glasses svg {
	width: 100%;
	height: 100%;
}
.container-glasses #glasses {
	transition: transform 0.5s ease-in-out;
}
.container-glasses:hover #glasses,
.container-glasses.hover #glasses {
	transform: translate(-8px, 20px);
}

.container-sundate {
	display: inline-block;
	position: absolute;
	width: 200px;
	height: auto;
}

.container-sundate svg {
	width: 200px;
	height: 200px;
}
.sunburst {
	transform-origin: center;
	animation: sunburst-load 2s linear forwards;
}

@keyframes sunburst-load {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

svg:hover .sunburst {
	animation: none;
	animation: sunburst-hover 2s linear forwards;
}

@keyframes sunburst-hover {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

.year {
	transform: none;
}

.container-thumb {
	position: absolute;
	width: 64px;
	height: auto;
}
.container-thumb svg {
	width: 100%;
	height: 100%;
	transition: transform 0.5s ease-in-out;
}
.emoji.container-thumb:hover svg,
.emoji.container-thumb.hover svg {
	animation: waggle 0.5s infinite alternate;
}
@keyframes waggle {
	0% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(-10deg);
	}
	100% {
		transform: rotate(10deg);
	}
}

/** parallax **/

.emoji-wrapper {
	position: absolute;
	width: fit-content;
	height: fit-content;
}

.emoji {
	position: absolute;
	will-change: transform;
}

@keyframes float1 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(-5px) translateX(5px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

@keyframes float2 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(-7.5px) translateX(-7.5px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

@keyframes float3 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(4px) translateX(4px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

@keyframes float4 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(6px) translateX(-6px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

@keyframes float5 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(2.5px) translateX(2.5px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

@keyframes float6 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(10px) translateX(-10px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

@keyframes float7 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(-9px) translateX(9px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

@keyframes float8 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(4px) translateX(-6px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

@keyframes float9 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(-4px) translateX(4px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

@keyframes float10 {
	0% {
		transform: translateY(0) translateX(0);
	}
	50% {
		transform: translateY(7px) translateX(-7px);
	}
	100% {
		transform: translateY(0) translateX(0);
	}
}

.e-clap {
	left: 42%;
}
.emoji.container-clap {
	animation: float1 6.5s ease-in-out infinite;
}
.e-glasses {
	top: -20px;
	left: 119%;
}
.emoji.container-glasses {
	animation: float2 5.5s ease-in-out infinite;
}
.e-hearts {
	top: -80px;
	left: 11%;
}
.emoji.container-hearts {
	animation: float3 6s ease-in-out infinite;
}
.e-icecream {
	top: 130px;
	left: 109%;
}
.emoji.container-icecream {
	animation: float4 4.5s ease-in-out infinite;
}
.e-laptop {
	bottom: -4%;
	right: -33%;
}
.emoji.container-laptop {
	animation: float1 5.5s ease-in-out infinite;
}
.e-mobile {
	top: -53px;
	left: 71%;
}
.emoji.container-mobile {
	animation: float4 6.5s ease-in-out infinite;
}

.e-sun {
	top: -60px;
	left: 65%;
}
.emoji.container-sun {
	animation: float2 4.5s ease-in-out infinite;
}
.e-thumb {
	top: 2px;
	left: 58%;
}
.emoji.container-thumb {
	animation: float3 5.5s ease-in-out infinite;
}
.container-sundate {
	position: absolute;
	top: -57px;
	left: 100%;
	animation: float1 5s ease-in-out infinite;
}
.e-sunflower {
	bottom: -21px;
	left: -10%;
}

.e-seedling {
	top: -105px;
	left: 8%;
}

.container-seedling .cls-2 {
	fill: #86d72f !important;
}

.container-seedling .root,
.container-seedling .stem,
.container-seedling .leaves {
	opacity: 0;
}

/* These run automatically on page load. */
.container-seedling .root {
	animation: grow-sprout 1.5s ease forwards;
	transform-origin: center bottom;
	animation-delay: 0s;
}

.container-seedling .stem {
	animation: grow-sprout 1.5s ease forwards;
	transform-origin: center bottom;
	animation-delay: 0.5s;
}

.container-seedling .leaves {
	animation: grow-sprout 1.5s ease forwards;
	transform-origin: center bottom;
	animation-delay: 1s;
}

@keyframes grow-sprout {
	0% {
		transform: scaleY(0);
		opacity: 0;
	}
	100% {
		transform: scaleY(1);
		opacity: 1;
	}
}

.emoji.container-seedling:hover svg,
.emoji.container-seedling.hover svg {
	animation: waggle 0.5s infinite alternate;
}

@keyframes grow-sprout-hover {
	0% {
		transform: scaleY(0);
		opacity: 0;
	}
	100% {
		transform: scaleY(1);
		opacity: 1;
	}
}

.container-seedling:hover .root,
.container-seedling.hover .root {
	animation: none;
	animation: grow-sprout-hover 1.5s ease forwards;
	animation-delay: 0s;
	transform-origin: center bottom;
}

.container-seedling:hover .stem,
.container-seedling.hover .stem {
	animation: none;
	animation: grow-sprout-hover 1.5s ease forwards;
	animation-delay: 0.5s;
	transform-origin: center bottom;
}

.container-seedling:hover .leaves,
.container-seedling.hover .leaves {
	animation: none;
	animation: grow-sprout-hover 1.5s ease forwards;
	animation-delay: 1s;
	transform-origin: center bottom;
}

@keyframes waggle {
	0% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(-10deg);
	}
	100% {
		transform: rotate(10deg);
	}
}

.e-rainbow {
	top: -100px;
	right: 1%;
}
.e-mobile {
	bottom: -40px;
	left: 30%;
}
.e-hatching {
	bottom: -80px;
	right: 10%;
}

/* Wing Left: always flaps from page load. */
.container-hatching .wing-left {
	animation: flap 0.4s ease-in-out infinite alternate;
}

/* Wing Right: always flaps from page load. */
.container-hatching .wing-right {
	animation: flap 0.4s ease-in-out infinite alternate-reverse;
}

/* Chick Body: always bounces from page load. */
.container-hatching .chick-body {
	animation: chick-bounce 0.5s ease-in-out infinite;
}

/* Egg Shell: always shakes from page load. */
.container-hatching .egg-shell {
	animation: chick-shake 0.4s ease-in-out infinite;
}

/* The keyframes stay the same */
@keyframes flap {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(-10deg);
	}
}
@keyframes chick-bounce {
	0%,
	100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-5px);
	}
}
@keyframes chick-shake {
	0%,
	100% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(3deg);
	}
}

/* Positioning (unchanged) */
.e-chick {
	bottom: -40px;
	right: 48%;
}
svg.chick {
	width: 140px;
	height: auto;
}

.e-white-flower {
	bottom: 52%;
	right: -36%;
}

.piece {
	opacity: 1;
	transform: none;
}

.piece {
	opacity: 1;
	transform: none;
}

.piece-2 {
	transform-origin: 44px 44px;
	animation: spin-flower 1.2s forwards ease-out;
}

/* Adjust transform-origin dynamically if needed */
.flower-head {
	transform-origin: center center;
}

@keyframes spin-flower {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@keyframes spin-flower-hover {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

.emoji.container-white-flower:hover .piece-2,
.emoji.container-white-flower.hover .piece-2,
.emoji.container-sunflower:hover .piece-2,
.emoji.container-sunflower.hover .piece-2 {
	animation: none;
	animation: spin-flower-hover 1.2s forwards ease-out;
}

.emoji.container-white-flower:hover svg,
.emoji.container-white-flower.hover svg,
.emoji.container-sunflower:hover svg,
.emoji.container-sunflower.hover svg {
	animation: waggle 0.5s infinite alternate;
}

.sun-glasses {
	transform: translateY(-50px);
	opacity: 0;
	animation: sunflower-glasses-drop 1.2s ease-in-out;
}

@keyframes sunflower-glasses-drop {
	0% {
		transform: translateY(-50px);
		opacity: 0;
	}
	30% {
		transform: translateY(0);
		opacity: 1;
	}
	70% {
		transform: translateY(0);
		opacity: 1;
	}
	100% {
		transform: translateY(0);
		opacity: 0; /* Hide again at the end */
	}
}

@keyframes sunflower-glasses-drop-hover {
	0% {
		transform: translateY(-50px);
		opacity: 0;
	}
	30% {
		transform: translateY(0);
		opacity: 1;
	}
	70% {
		transform: translateY(0);
		opacity: 1;
	}
	100% {
		transform: translateY(0);
		opacity: 0; /* Hide again at the end */
	}
}

.emoji.container-sunflower:hover .sun-glasses,
.emoji.container-sunflower.hover .sun-glasses {
	animation: none;
	animation: sunflower-glasses-drop-hover 1.2s ease-in-out;
}

.emoji-wrapper-summer,
.summer-footer {
	position: absolute;
}

.summer-footer.e-clap {
	bottom: 10px;
	left: 170px;
	top: auto;
}
.summer-footer .emoji.container-clap {
	animation: float1 6.5s ease-in-out infinite;
}

.summer-footer .emoji.container-clap svg {
	transform: scale(1.2);
}

.summer-footer.e-glasses {
	top: 443px;
	left: 650px;
}
.summer-footer .emoji.container-glasses {
	animation: float2 5.5s ease-in-out infinite;
}

.summer-footer .emoji.container-glasses svg {
	transform: scale(1.5);
}

.summer-footer.e-hearts {
	top: 300px;
	left: 470px;
}
.summer-footer .emoji.container-hearts {
	animation: float3 6s ease-in-out infinite;
}

.summer-footer .emoji.container-hearts svg {
	transform: scale(1.3);
}

.summer-footer.e-icecream {
	top: 309px;
	left: 1%;
}
.summer-footer .emoji.container-icecream {
	animation: float4 4.5s ease-in-out infinite;
}
.summer-footer.e-laptop {
	bottom: 150px;
	left: 550px;
	top: auto;
}
.summer-footer .emoji.container-laptop {
	animation: float1 5.5s ease-in-out infinite;
}

.summer-footer .emoji.container-laptop svg {
	transform: scale(1.9);
}

.summer-footer.e-mobile {
	top: 40px;
	left: 250px;
	transform: scale(0.8);
}
.summer-footer .emoji.container-mobile {
	animation: float4 6.5s ease-in-out infinite;
}
.summer-footer.e-sun {
	top: 67px;
	left: 580px;
}
.summer-footer .container-sun {
	width: 50px;
	height: auto;
}
.summer-footer .emoji.container-sun {
	animation: float2 4.5s ease-in-out infinite;
}
.summer-footer .emoji.container-sun svg {
	transform: scale(1.5);
}
.summer-footer.e-thumb {
	top: 50px;
	left: 120px;
}
.summer-footer .emoji.container-thumb {
	animation: float3 5.5s ease-in-out infinite;
}
.summer-footer .emoji.container-thumb svg {
	transform: scale(1.5);
}
.summer-footer.e-rainbow {
	top: 290px;
	left: 10px;
}

.summer-footer .emoji.container-rainbow {
	animation: float3 5.5s ease-in-out infinite;
}

.summer-footer .container-sundate {
	position: absolute;
	top: -10px;
	left: 83%;
	animation: float1 5s ease-in-out infinite;
}

.summer-footer.e-chick {
	bottom: -80px;
	right: 38%;
}

.summer-footer.e-seedling {
	top: 100px;
	right: 0;
	left: auto;
}

.emoji.container-seedling {
	animation: float2 4.5s ease-in-out infinite;
}

.summer-footer.e-tulip {
	top: 50px;
	left: 70%;
}

.summer-footer.e-sunflower {
	bottom: -21px;
	left: 0%;
}

.emoji.container-tulip {
	animation: float1 6.5s ease-in-out infinite;
}
@media (max-width: 1199px) {
	.summer-footer.e-mobile {
		top: 160px;
	}
	.summer-footer.e-icecream {
		top: 459px;
		left: 14%;
	}
	.summer-footer.e-clap {
		bottom: 200px;
	}
	.summer-footer.e-glasses {
		top: 483px;
		left: 470px;
	}
}

@media (max-width: 899px) {
	.emoji-wrapper,
	.summer-footer {
		display: none;
	}
	.container-sundate-wrapper {
		transform: scale(0.55);
	}
	.container-sundate {
		top: -380px;
		left: 107%;
	}
}

/** ribbons **/
.streamer {
	position: absolute;
}

@media (max-width: 899px) {
	.streamer {
		display: none;
	}
}
.ribbon-1 {
	left: 0px;
	top: -50px;
	transform: scale(0.8);
}
.ribbon-2 {
	left: -30px;
	top: 80px;
	transform: scale(0.8);
}
.ribbon-3 {
	left: -10px;
	bottom: -10px;
	transform: scale(0.8);
}
.ribbon-4 {
	left: 186px;
	top: -16px;
	transform: rotate(275deg) scale(0.8);
}
.ribbon-5 {
	left: 34%;
	top: -60px;
	transform: rotate(38deg) scale(0.8);
}
.ribbon-6 {
	left: 92%;
	top: -80px;
	transform: rotateZ(207deg) scaleX(-1) scale(0.8);
}
.ribbon-7 {
	right: -36%;
	top: -33%;
	transform: rotateZ(124deg) scale(0.8);
}
.ribbon-8 {
	left: 70%;
	top: 39px;
	transform: scale(0.8);
}

.ribbon-9 {
	top: 190px;
	left: 100%;
	transform: rotateZ(114deg) scale(0.8);
}

.ribbon-10 {
	top: 250px;
	left: 110%;
	transform: rotateZ(280deg) scaleX(-1) scale(0.8);
}
.ribbon-11 {
	top: 290px;
	left: 104%;
	transform: rotateZ(312deg) scaleX(-1) scale(0.8);
}

.ribbon-12 {
	top: 330px;
	left: 84%;
	transform: rotateZ(37deg) scaleX(-1) scale(0.8);
}

.ribbon-13 {
	top: 310px;
	left: 64%;
	transform: rotateZ(37deg) scale(0.8);
}

.ribbon-14 {
	top: 293px;
	left: 27%;
	transform: rotateZ(121deg) scaleX(-1) scale(0.8);
}

.ribbon-15 {
	top: 333px;
	left: 37%;
	transform: scale(0.8);
}

.ribbon-16 {
	left: 40px;
	top: 210px;
	transform: scale(1) rotate(299deg);
}

.ribbon-17 {
	left: 220px;
	top: 330px;
	transform: scale(1) rotate(299deg);
}

.ribbon-18 {
	left: 380px;
	top: 110px;
	transform: scale(1.2) rotate(299deg);
}

.ribbon-19 {
	left: 520px;
	top: 210px;
	transform: scale(1.2) rotate(5deg);
}

.ribbon-20 {
	left: 710px;
	top: 80px;
	transform: scale(1.2) rotate(109deg);
}

.ribbon-21 {
	left: 710px;
	top: 290px;
	transform: scale(1.2) rotate(216deg) scaleX(-1);
}

.ribbon-22 {
	left: 590px;
	top: 420px;
	transform: scale(1) rotate(245deg) scaleX(-1);
}

.ribbon-23 {
	left: 600px;
	top: 550px;
	transform: scale(0.8) rotate(181deg) scaleY(-1);
}

.ribbon-24 {
	left: 470px;
	bottom: 140px;
	transform: scale(0.8) rotate(48deg) scaleY(-1);
}

.ribbon-25 {
	left: 360px;
	bottom: 170px;
	transform: scale(0.8) rotate(167deg) scaleY(-1);
}

.ribbon-26 {
	left: 80px;
	bottom: 30px;
	transform: scale(1) rotate(126deg) scaleY(-1);
}

.ribbon-27 {
	left: 64px;
	bottom: 310px;
	transform: scale(1) rotate(187deg) scaleY(-1);
}

@media (min-width: 1201px) {
	.ribbon-13 {
		top: 350px;
	}
	.ribbon-12 {
		top: 350px;
	}
	.ribbon-14 {
		top: 342px;
	}
}
@media (min-width: 1451px) {
	.ribbon-13 {
		top: 380px;
	}
	.ribbon-12 {
		top: 380px;
	}
	.ribbon-14 {
		top: 390px;
	}
	.ribbon-15 {
		top: 413px;
	}
}

.hero-emoji-bg {
	top: 55px;
	left: -45%;
}

.hero-emoji-bg svg {
	width: 140%;
}

@media screen and (min-width: 401px) and (max-width: 600px) {
	.hero-emoji-bg {
		top: 75px;
		left: -45%;
	}
	.hero-emoji-bg svg {
		width: 170%;
	}
}

@media screen and (min-width: 601px) and (max-width: 900px) {
	.hero-emoji-bg {
		top: 115px;
		left: 0;
	}
	.hero-emoji-bg svg {
		width: 100%;
	}
}

.emoji-bg svg {
	width: 100%;
	position: absolute;
	top: -230px;
}

@media (max-width: 900px) {
	.summit-form h1 {
		font-size: 4.625rem;
	}
	.faq-section {
		margin-top: -65px;
	}
}

#book-a-demo {
	z-index: 1;
}
::selection {
	background: #303138;
	color: white;
}

#js-faq-accordion-1::selection {
	background: #303138;
	color: white;
}

.od-form-header h1 {
	font-size: 70px;
}

.od-form-header h1 span.c-heading--light-bold-optic-correction {
	background-color: transparent !important;
	line-height: normal;
}

.od-form-header h1 span.c-heading--light-bold-optic-correction span {
	background-color: var(--spring-pink) !important;
	padding-right: 8px;
}

.c-navsite--logo svg g.color-fill-grey-10 {
	fill: #ffffff;
}

.main-spring-css {
	position: absolute;
	top: -175px;
	right: -200px;
	transform: rotate(342deg);
	z-index: -1;
}

.draw-animation {
	animation: draw 2s linear forwards;
}

@keyframes draw {
	from {
		stroke-dashoffset: 2500;
	}

	to {
		stroke-dashoffset: 0;
	}
}
@media screen and (max-width: 1450px) {
	section.spring-camp-section span.summer-span {
		font-size: 62.61px;
	}
	section.spring-camp-section h1.summer-h1 {
		font-size: 130.41px;
	}
	#hero h1 {
		line-height: normal;
	}
	.swirl-outer.first {
		bottom: 18%;
		left: -24%;
	}
	.e-chick {
		bottom: -10px;
		right: 46%;
	}
}
@media screen and (min-width: 1053px) and (max-width: 1295px) {
	span.f9-lg.text-spring-blue {
		font-size: 2.1rem;
	}
}

@media screen and (max-width: 1200px) {
	section.spring-camp-section-section span.summer-span {
		font-size: 54.86px;
	}
	section.spring-camp-section h1.summer-h1 {
		font-size: 114.27px;
	}
	.sessions-section span.sessions-heading {
		font-size: 76px;
		font-style: normal;
		font-weight: 400;
		line-height: 150%;
	}
	.swirl-outer {
		display: none;
	}
}
@media screen and (min-width: 963px) and (max-width: 1052px) {
	span.f9-lg.text-summer-blue {
		font-size: 1.8rem;
	}
}
@media screen and (min-width: 900px) and (max-width: 962px) {
	span.f9-lg.text-summer-blue {
		font-size: 1.59rem;
	}
}

@media screen and (max-width: 900px) {
	section.spring-camp-section span.summer-span {
		font-size: 33.71px;
	}
	section.spring-camp-section h1.summer-h1 {
		font-size: 70.2px;
	}
	.sessions-section span.sessions-heading {
		font-size: 40px;
		font-style: normal;
		font-weight: 400;
		line-height: 112%;
	}
	.sessions-section .star-holder svg {
		margin-left: -25px;
	}
}

@media screen and (max-width: 600px) {
	section.spring-camp-sectionn span.summer-span {
		font-size: 31.01px;
	}
	section.spring-camp-sectionn h1.summer-h1 {
		font-size: 73.59px;
	}
}

@media screen and (max-width: 480px) {
	section.spring-camp-section span.summer-span {
		font-size: 19.53px;
	}
	section.spring-camp-section h1.summer-h1 {
		font-size: 50px;
	}
	/* .author-container {
		  flex-direction: column;
	  } */
	/* .author-image,
	  .session-bio {
		  width: 100%;
	  } */
}
@media screen and (max-width: 380px) {
	.tick-group {
		margin-left: 0px;
	}
	.tick-flip-spacer {
		width: 34px;
		font-size: 2.5rem;
	}
	.top-nav ul li {
		margin-left: unset;
	}
}
@media screen and (max-width: 345px) {
	.top-nav ul li {
		margin-left: -25px;
	}
}
@media screen and (max-width: 324px) {
	span.c-heading.f9.ttu.text-summer-blue {
		font-size: 2.3rem;
	}
}
@media screen and (min-width: 900px) {
	.bt-xs {
		border-top-style: none;
		border-top-width: unset;
	}
	.w-md-offset {
		width: unset !important;
	}
}
@media screen and (max-width: 400px) {
	.container-sundate {
		top: -234px;
		left: 78%;
	}
}
