.wp-block-gentleland-gentle-hero.glhero {
	--glhero-pointer-x: 0;
	--glhero-pointer-y: 0;
	--glhero-scroll: 0;
	position: relative;
	isolation: isolate;
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	min-width: 0;
	min-height: var(--glhero-min-height, 780px);
	margin-block: 0;
	overflow: hidden;
	color: var(--glhero-title-color, #fff);
	background: #87b8da;
	container-type: inline-size;
}

.glhero *, .glhero *::before, .glhero *::after { box-sizing: border-box; }
.glhero--viewport { height: 100svh; }
.glhero--fixed { height: var(--glhero-fixed-height, 820px); }
.glhero--content { height: auto; }

.glhero__layer,
.glhero__character-stage,
.glhero__light,
.glhero__shade,
.glhero__grain,
.glhero__motes {
	position: absolute;
	inset: -4%;
	width: 108%;
	height: 108%;
	pointer-events: none;
}

.glhero__layer {
	display: block;
	max-width: none;
	object-fit: cover;
	will-change: transform;
	backface-visibility: hidden;
}

.glhero__layer--sky {
	z-index: 0;
	object-position: var(--glhero-sky-x, 50%) var(--glhero-sky-y, 50%);
	transform: translate3d(
		calc(var(--glhero-pointer-x) * var(--glhero-sky-pointer-x, -5px)),
		calc(var(--glhero-pointer-y) * var(--glhero-sky-pointer-y, -3px) + var(--glhero-scroll) * var(--glhero-sky-scroll, 105px)),
		0
	) scale(var(--glhero-sky-scale, 1.075));
}

.glhero__cloud-stage {
	position: absolute;
	z-index: 1;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
	transform: translate3d(
		calc(var(--glhero-pointer-x) * -4px),
		calc(var(--glhero-pointer-y) * -2px + var(--glhero-scroll) * 78px),
		0
	);
	will-change: transform;
}

.glhero__cloud {
	position: absolute;
	top: var(--glhero-cloud-top, 17%);
	left: var(--glhero-cloud-left, 35%);
	width: clamp(360px, var(--glhero-cloud-width, 42vw), 790px);
	aspect-ratio: 3.2 / 1;
	opacity: var(--glhero-cloud-opacity, .34);
	background:
		radial-gradient(ellipse at 15% 68%, rgba(255,255,255,.82) 0 17%, transparent 48%),
		radial-gradient(ellipse at 34% 43%, rgba(255,255,255,.94) 0 23%, transparent 53%),
		radial-gradient(ellipse at 56% 57%, rgba(255,252,242,.84) 0 26%, transparent 57%),
		radial-gradient(ellipse at 79% 67%, rgba(255,247,229,.7) 0 19%, transparent 50%);
	filter: blur(2px);
	animation: glhero-cloud var(--glhero-cloud-speed, 15.5s) ease-in-out infinite alternate;
	will-change: transform, opacity;
}

.glhero:not(.has-cloud) .glhero__cloud-stage { display: none; }

.glhero__layer--world {
	z-index: 2;
	object-position: var(--glhero-world-x, 50%) var(--glhero-world-y, 55%);
	opacity: var(--glhero-world-opacity, 1);
	transform: translate3d(
		calc(var(--glhero-pointer-x) * var(--glhero-world-pointer-x, -10px)),
		calc(var(--glhero-pointer-y) * var(--glhero-world-pointer-y, -6px) + var(--glhero-scroll) * var(--glhero-world-scroll, 48px)),
		0
	) scale(var(--glhero-world-scale, 1.065));
	filter: saturate(1.025) contrast(1.015);
}

.glhero__character-stage {
	z-index: 5;
	transform: translate3d(
		calc(var(--glhero-pointer-x) * var(--glhero-foreground-pointer-x, -18px)),
		calc(var(--glhero-pointer-y) * var(--glhero-foreground-pointer-y, -9px) + var(--glhero-scroll) * var(--glhero-foreground-scroll, -34px)),
		0
	) scale(var(--glhero-foreground-scale, 1.075));
	will-change: transform;
	backface-visibility: hidden;
}

.glhero__character-stage .glhero__layer--foreground {
	inset: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	object-position: var(--glhero-foreground-x, 67%) var(--glhero-foreground-y, 53%);
	opacity: var(--glhero-foreground-opacity, 1);
	filter: drop-shadow(0 28px 38px rgba(42,44,54,.2));
}

.glhero__light {
	z-index: 3;
	inset: 0;
	width: 100%;
	height: 100%;
	background:
		radial-gradient(circle at 73% 39%, var(--glhero-warm-light, rgba(255,248,198,.35)), transparent 23%),
		radial-gradient(circle at 70% 78%, rgba(255,215,143,.16), transparent 26%);
	mix-blend-mode: screen;
	opacity: calc(.7 - var(--glhero-scroll) * .22);
}

.glhero__shade {
	z-index: 6;
	inset: 0;
	width: 100%;
	height: 100%;
	background:
		linear-gradient(90deg, var(--glhero-overlay, rgba(28,54,79,.58)) 0%, var(--glhero-overlay-soft, rgba(31,64,93,.34)) 31%, transparent 60%),
		linear-gradient(180deg, rgba(31,70,105,.16), transparent 28%, transparent 68%, var(--glhero-bottom-shade, rgba(38,35,39,.21))),
		radial-gradient(ellipse at center, transparent 52%, rgba(35,55,77,.18) 118%);
}

.glhero__grain {
	z-index: 8;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: var(--glhero-grain-opacity, .13);
	background-image:
		repeating-radial-gradient(circle at 22% 31%, rgba(255,255,255,.28) 0 .45px, transparent .65px 3px),
		repeating-linear-gradient(121deg, rgba(38,55,70,.18) 0 .5px, transparent .7px 4px);
	background-size: 7px 7px, 9px 9px;
	mix-blend-mode: soft-light;
}

.glhero__motes {
	z-index: 7;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.glhero:not(.has-motes) .glhero__motes { display: none; }

.glhero__motes i {
	--size: 4px;
	--x: 50%;
	--y: 60%;
	--drift: 30px;
	--duration: 9s;
	--delay: -3s;
	position: absolute;
	left: var(--x);
	top: var(--y);
	width: var(--size);
	height: var(--size);
	border-radius: 50%;
	background: var(--glhero-mote-color, rgba(255,250,217,.78));
	box-shadow: 0 0 3px rgba(255,255,242,.9), 0 0 11px color-mix(in srgb, var(--glhero-mote-color, #fffad9) 48%, transparent);
	opacity: 0;
	animation: glhero-mote var(--duration) ease-in-out var(--delay) infinite;
}

.glhero__motes i:nth-child(1) { --x: 8%; --y: 73%; --size: 3px; --drift: 34px; --duration: 11s; --delay: -2s; }
.glhero__motes i:nth-child(2) { --x: 17%; --y: 46%; --size: 5px; --drift: 44px; --duration: 13s; --delay: -8s; }
.glhero__motes i:nth-child(3) { --x: 31%; --y: 66%; --size: 3px; --drift: 30px; --duration: 10s; --delay: -4s; }
.glhero__motes i:nth-child(4) { --x: 42%; --y: 34%; --size: 4px; --drift: 52px; --duration: 14s; --delay: -11s; }
.glhero__motes i:nth-child(5) { --x: 56%; --y: 57%; --size: 3px; --drift: 35px; --duration: 9s; --delay: -6s; }
.glhero__motes i:nth-child(6) { --x: 68%; --y: 24%; --size: 5px; --drift: 48px; --duration: 15s; --delay: -5s; }
.glhero__motes i:nth-child(7) { --x: 78%; --y: 62%; --size: 3px; --drift: 42px; --duration: 12s; --delay: -9s; }
.glhero__motes i:nth-child(8) { --x: 88%; --y: 42%; --size: 4px; --drift: 38px; --duration: 10s; --delay: -1s; }
.glhero__motes i:nth-child(9) { --x: 93%; --y: 76%; --size: 3px; --drift: 46px; --duration: 13s; --delay: -7s; }
.glhero__motes i:nth-child(10) { --x: 24%; --y: 82%; --size: 4px; --drift: 42px; --duration: 12s; --delay: -10s; }
.glhero__motes i:nth-child(11) { --x: 63%; --y: 70%; --size: 3px; --drift: 37px; --duration: 11s; --delay: -3.5s; }
.glhero__motes i:nth-child(12) { --x: 83%; --y: 28%; --size: 5px; --drift: 50px; --duration: 14s; --delay: -6.5s; }

.glhero__content {
	position: relative;
	z-index: 10;
	display: flex;
	align-items: var(--glhero-vertical-align, center);
	justify-content: var(--glhero-horizontal-align, flex-start);
	width: min(var(--glhero-content-width, 1480px), 100%);
	height: 100%;
	min-height: inherit;
	margin: 0 auto;
	padding: var(--glhero-top-padding, 155px) var(--glhero-side-padding, 96px) var(--glhero-bottom-padding, 120px);
	text-align: var(--glhero-text-align, left);
}

.glhero__copy {
	width: min(var(--glhero-copy-width, 680px), 100%);
	transform: translate3d(0, calc(var(--glhero-scroll) * var(--glhero-copy-scroll, 58px)), 0);
	opacity: calc(1 - var(--glhero-scroll) * var(--glhero-copy-fade, 1.18));
	will-change: transform, opacity;
	text-shadow: 0 3px 28px rgba(23,55,84,.31);
}

.glhero__title {
	max-width: 100%;
	margin: 0;
	color: var(--glhero-title-color, #fff);
	font-family: var(--glhero-title-font, Arial, Helvetica, sans-serif);
	font-size: clamp(3.5rem, 6.25vw, var(--glhero-title-size, 100px));
	font-style: normal;
	font-weight: var(--glhero-title-weight, 800);
	line-height: var(--glhero-title-line-height, .87);
	letter-spacing: var(--glhero-title-letter-spacing, -.06em);
	text-transform: uppercase;
	text-wrap: balance;
}

.glhero__title-soft {
	display: block;
	margin-top: .08em;
	color: var(--glhero-soft-color, #fffdf5);
	font-family: var(--glhero-soft-font, Georgia, "Times New Roman", serif);
	font-size: var(--glhero-soft-size, .72em);
	font-style: italic;
	font-weight: 400;
	letter-spacing: -.045em;
	line-height: .95;
	text-transform: none;
	text-shadow: 0 1px 0 rgba(255,255,255,.5), 0 4px 28px rgba(34,60,82,.35);
}

.glhero__magic-title {
	position: relative;
	z-index: 0;
	display: block;
	isolation: isolate;
	outline: none;
}

.glhero__magic-copy { position: relative; z-index: 1; }

.glhero.has-title-glow .glhero__magic-title::before {
	content: attr(data-text);
	position: absolute;
	z-index: -1;
	inset: 0;
	color: var(--glhero-glow-color, #fffffa);
	opacity: var(--glhero-glow-strength, .78);
	filter: blur(4px);
	text-shadow: 0 0 5px var(--glhero-glow-color, #fffffa), 0 0 12px color-mix(in srgb, var(--glhero-glow-color, #fffffa) 52%, transparent), 0 0 23px rgba(255,247,190,.24);
	transform: scale(1.012);
	pointer-events: none;
}

.glhero__title-particles {
	position: absolute;
	z-index: 3;
	inset: -10px -18px;
	overflow: visible;
	pointer-events: none;
}

.glhero:not(.has-title-particles) .glhero__title-particles { display: none; }

.glhero__title-particles i {
	--dx: 0px;
	--dy: -30px;
	--delay: 0s;
	--hover-delay: 0s;
	position: absolute;
	width: var(--glhero-particle-size, 5px);
	height: var(--glhero-particle-size, 5px);
	border-radius: 50%;
	opacity: 0;
	background: var(--glhero-particle-color, #fffde2);
	box-shadow: 0 0 3px rgba(255,255,255,.95), 0 0 10px color-mix(in srgb, var(--glhero-particle-color, #fffde2) 68%, transparent);
	animation: glhero-title-particle var(--glhero-particle-speed, 2.9s) ease-out var(--delay) infinite;
	will-change: transform, opacity;
}

.glhero__title-particles i:nth-child(1) { left: 4%; top: 70%; --dx: -18px; --dy: -35px; --delay: 0s; --hover-delay: -.1s; }
.glhero__title-particles i:nth-child(2) { left: 17%; top: 28%; --dx: -8px; --dy: -42px; --delay: .32s; --hover-delay: -.72s; }
.glhero__title-particles i:nth-child(3) { left: 31%; top: 78%; --dx: 7px; --dy: -39px; --delay: .68s; --hover-delay: -1.18s; }
.glhero__title-particles i:nth-child(4) { left: 46%; top: 18%; --dx: -4px; --dy: -34px; --delay: 1.05s; --hover-delay: -.42s; width: calc(var(--glhero-particle-size, 5px) + 1px); height: calc(var(--glhero-particle-size, 5px) + 1px); }
.glhero__title-particles i:nth-child(5) { left: 59%; top: 72%; --dx: 12px; --dy: -45px; --delay: .18s; --hover-delay: -1.5s; }
.glhero__title-particles i:nth-child(6) { left: 73%; top: 32%; --dx: 10px; --dy: -38px; --delay: .84s; --hover-delay: -.92s; }
.glhero__title-particles i:nth-child(7) { left: 87%; top: 76%; --dx: 20px; --dy: -42px; --delay: .47s; --hover-delay: -.25s; width: calc(var(--glhero-particle-size, 5px) + 1px); height: calc(var(--glhero-particle-size, 5px) + 1px); }
.glhero__title-particles i:nth-child(8) { left: 98%; top: 40%; --dx: 21px; --dy: -31px; --delay: 1.18s; --hover-delay: -1.7s; }
.glhero__title-particles i:nth-child(9) { left: 12%; top: 48%; --dx: -15px; --dy: -47px; --delay: .92s; --hover-delay: -.52s; }
.glhero__title-particles i:nth-child(10) { left: 40%; top: 62%; --dx: 4px; --dy: -51px; --delay: .42s; --hover-delay: -1.32s; }
.glhero__title-particles i:nth-child(11) { left: 68%; top: 82%; --dx: 15px; --dy: -49px; --delay: 1.28s; --hover-delay: -.82s; }
.glhero__title-particles i:nth-child(12) { left: 93%; top: 20%; --dx: 24px; --dy: -40px; --delay: .58s; --hover-delay: -1.58s; }

.glhero__magic-title:hover .glhero__title-particles i,
.glhero__magic-title:focus-visible .glhero__title-particles i {
	box-shadow: 0 0 4px rgba(255,255,255,1), 0 0 13px color-mix(in srgb, var(--glhero-particle-color, #fffde2) 90%, transparent), 0 0 22px rgba(255,237,160,.5);
	filter: brightness(1.18);
	animation: glhero-title-particle-intense var(--glhero-hover-particle-speed, 1.85s) ease-out var(--hover-delay) infinite;
}

.glhero__magic-title:focus-visible { border-radius: 8px; box-shadow: 0 0 0 2px rgba(255,255,255,.65); }

.glhero__summary {
	max-width: min(var(--glhero-body-width, 550px), 100%);
	margin: 27px 0 0;
	color: var(--glhero-body-color, #fff);
	font-family: var(--glhero-body-font, Arial, Helvetica, sans-serif);
	font-size: var(--glhero-body-size, 18px);
	font-weight: 600;
	line-height: var(--glhero-body-line-height, 1.65);
	text-shadow: 0 1px 2px rgba(15,36,54,.78), 0 3px 15px rgba(20,45,65,.68), 0 0 26px rgba(25,56,82,.5);
}

.glhero__actions,
.glhero__actions > .wp-block-buttons {
	display: flex;
	align-items: center;
	justify-content: var(--glhero-actions-align, flex-start);
	flex-wrap: wrap;
	gap: 18px 24px;
}

.glhero__actions { margin-top: 34px; }
.glhero__actions > * { margin-block: 0; }

.glhero .wp-block-button.is-style-gentle-hero-primary .wp-block-button__link,
.glhero .wp-block-button.is-style-gentleland-apply .wp-block-button__link {
	position: relative;
	isolation: isolate;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 174px;
	min-height: 40px;
	padding: 7px 20px;
	border: 2px solid transparent;
	border-radius: var(--glhero-button-radius, 9px);
	color: var(--glhero-button-text, #543a2d);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: .035em;
	line-height: 1.35;
	text-transform: uppercase;
	text-decoration: none;
	text-shadow: none;
	background:
		linear-gradient(180deg, var(--glhero-button-top, #fffaf0) 0%, color-mix(in srgb, var(--glhero-button-top, #fffaf0) 62%, var(--glhero-button-bottom, #efe1ce)) 58%, var(--glhero-button-bottom, #efe1ce) 100%) padding-box,
		linear-gradient(180deg, #fff2bd 0%, #efd283 14%, var(--glhero-button-border, #c18a38) 68%, #a96e29 100%) border-box;
	box-shadow: 0 0 0 1px color-mix(in srgb, var(--glhero-button-border, #c18a38) 88%, transparent), 0 4px 9px rgba(72,45,27,.18), 0 1px 2px rgba(72,45,27,.2), inset 0 1px rgba(255,255,255,.92), inset 0 -1px rgba(165,118,66,.12);
	transition: color 280ms, border-color 280ms, transform 240ms cubic-bezier(.2,.75,.25,1), filter 280ms, box-shadow 280ms, background 280ms;
}

.glhero .wp-block-button.is-style-gentle-hero-primary .wp-block-button__link:hover,
.glhero .wp-block-button.is-style-gentle-hero-primary .wp-block-button__link:focus-visible,
.glhero .wp-block-button.is-style-gentleland-apply .wp-block-button__link:hover,
.glhero .wp-block-button.is-style-gentleland-apply .wp-block-button__link:focus-visible {
	outline: 1px solid rgba(255,250,190,.72);
	outline-offset: 2px;
	border-color: color-mix(in srgb, var(--glhero-button-glow, #fffffa) 88%, transparent);
	color: var(--glhero-button-text, #543a2d);
	box-shadow: 0 0 0 1px color-mix(in srgb, var(--glhero-button-glow, #fffffa) 82%, transparent), 0 7px 15px rgba(48,48,58,.18), 0 0 8px color-mix(in srgb, var(--glhero-button-glow, #fffffa) 42%, transparent), 0 0 16px rgba(255,247,180,.2), inset 0 1px rgba(255,255,255,.88);
	filter: brightness(1.01) drop-shadow(0 0 2px color-mix(in srgb, var(--glhero-button-glow, #fffffa) 62%, transparent)) drop-shadow(0 0 7px color-mix(in srgb, var(--glhero-button-glow, #fffffa) 28%, transparent));
	transform: translateY(-1px) scale(1.015);
}

.glhero .wp-block-button.is-style-gentle-hero-secondary .wp-block-button__link {
	position: relative;
	padding: 7px 0;
	border: 0;
	border-radius: 0;
	color: var(--glhero-title-color, #fff);
	font-family: var(--glhero-body-font, Arial, sans-serif);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: .025em;
	text-decoration: none;
	text-shadow: 0 2px 12px rgba(26,52,74,.4);
	background: transparent;
}

.glhero .wp-block-button.is-style-gentle-hero-secondary .wp-block-button__link::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2px;
	height: 1px;
	background: rgba(255,247,211,.72);
	box-shadow: 0 0 7px rgba(255,240,180,.42);
	transform: scaleX(.36);
	transform-origin: left;
	transition: transform 260ms cubic-bezier(.2,.75,.25,1);
}

.glhero .wp-block-button.is-style-gentle-hero-secondary .wp-block-button__link:hover::after,
.glhero .wp-block-button.is-style-gentle-hero-secondary .wp-block-button__link:focus-visible::after { transform: scaleX(1); }

.glhero__button-particles {
	position: absolute;
	z-index: 2;
	inset: -8px;
	overflow: visible;
	pointer-events: none;
}

.glhero__button-particles i {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	opacity: 0;
	background: var(--glhero-button-glow, #fffffa);
	box-shadow: 0 0 4px var(--glhero-button-glow, #fffffa), 0 0 10px color-mix(in srgb, var(--glhero-button-glow, #fffffa) 54%, transparent);
}

.glhero .wp-block-button.is-style-gentle-hero-primary .wp-block-button__link:hover .glhero__button-particles i,
.glhero .wp-block-button.is-style-gentle-hero-primary .wp-block-button__link:focus-visible .glhero__button-particles i { animation: glhero-button-particle 2.4s ease-out infinite; }
.glhero__button-particles i:nth-child(1) { left: 5%; top: 72%; animation-delay: -.3s !important; --bdx: -12px; --bdy: -24px; }
.glhero__button-particles i:nth-child(2) { left: 20%; top: 15%; animation-delay: -1.1s !important; --bdx: -6px; --bdy: -20px; }
.glhero__button-particles i:nth-child(3) { left: 38%; top: 84%; animation-delay: -1.7s !important; --bdx: 2px; --bdy: -25px; }
.glhero__button-particles i:nth-child(4) { left: 56%; top: 12%; animation-delay: -.65s !important; --bdx: 5px; --bdy: -22px; }
.glhero__button-particles i:nth-child(5) { left: 72%; top: 78%; animation-delay: -1.35s !important; --bdx: 9px; --bdy: -26px; }
.glhero__button-particles i:nth-child(6) { left: 91%; top: 28%; animation-delay: -2s !important; --bdx: 13px; --bdy: -21px; }
.glhero__button-particles i:nth-child(7) { left: 48%; top: 92%; animation-delay: -.9s !important; --bdx: 3px; --bdy: -28px; }
.glhero__button-particles i:nth-child(8) { left: 82%; top: 8%; animation-delay: -1.55s !important; --bdx: 11px; --bdy: -19px; }

.glhero__scroll {
	position: absolute;
	z-index: 10;
	left: var(--glhero-side-padding, 96px);
	bottom: 28px;
	display: flex;
	align-items: center;
	gap: 11px;
	color: rgba(255,255,255,.78);
	font: 700 10px/1 var(--glhero-body-font, Arial, sans-serif);
	letter-spacing: .2em;
	text-transform: uppercase;
	text-decoration: none;
}

.glhero__scroll-line { position: relative; width: 1px; height: 42px; overflow: hidden; background: rgba(255,255,255,.26); }
.glhero__scroll-line::after { content: ""; position: absolute; inset: -55% 0 auto; height: 55%; background: #fff; box-shadow: 0 0 7px rgba(255,246,194,.65); animation: glhero-scroll-line 2.2s ease-in-out infinite; }

@keyframes glhero-mote {
	0% { opacity: 0; transform: translate3d(0,18px,0) scale(.45); }
	18% { opacity: .66; }
	72% { opacity: .22; }
	100% { opacity: 0; transform: translate3d(calc(var(--drift) * .35), calc(var(--drift) * -1), 0) scale(.15); }
}

@keyframes glhero-cloud {
	0% { opacity: var(--glhero-cloud-opacity-low, .25); transform: translate3d(var(--glhero-cloud-start, -38px),4px,0) scale(.98); }
	45% { opacity: var(--glhero-cloud-opacity-high, .4); }
	100% { opacity: var(--glhero-cloud-opacity-end, .29); transform: translate3d(var(--glhero-cloud-end, 54px),-6px,0) scale(1.04); }
}

@keyframes glhero-title-particle {
	0% { opacity: 0; transform: translate3d(0,5px,0) scale(.35); }
	16% { opacity: .78; transform: translate3d(0,0,0) scale(.85); }
	70% { opacity: .28; }
	100% { opacity: 0; transform: translate3d(var(--dx),var(--dy),0) scale(.18); }
}

@keyframes glhero-title-particle-intense {
	0% { opacity: 0; transform: translate3d(0,6px,0) scale(.45); }
	12% { opacity: 1; transform: translate3d(0,0,0) scale(var(--glhero-hover-particle-intensity, 1.3)); }
	64% { opacity: .52; }
	100% { opacity: 0; transform: translate3d(var(--dx),var(--dy),0) scale(.3); }
}

@keyframes glhero-button-particle {
	0% { opacity: 0; transform: translate3d(0,4px,0) scale(.35); }
	18% { opacity: .72; transform: translate3d(0,0,0) scale(.85); }
	100% { opacity: 0; transform: translate3d(var(--bdx),var(--bdy),0) scale(.2); }
}

@keyframes glhero-scroll-line {
	0% { transform: translateY(0); opacity: 0; }
	25%, 75% { opacity: 1; }
	100% { transform: translateY(280%); opacity: 0; }
}

@media (max-width: 900px) {
	.glhero__layer, .glhero__character-stage { inset: -5%; width: 110%; height: 110%; }
	.glhero__content { align-items: flex-start; padding-inline: max(26px, var(--glhero-mobile-side-padding, 20px)); }
	.glhero__copy { width: min(var(--glhero-copy-width, 680px), 88vw); }
}

@media (max-width: 600px) {
	.wp-block-gentleland-gentle-hero.glhero { min-height: var(--glhero-mobile-min-height, 680px); }
	.glhero--viewport { height: 100svh; max-height: 900px; }
	.glhero--fixed { height: max(var(--glhero-mobile-min-height, 680px), min(var(--glhero-fixed-height, 820px), 900px)); }
	.glhero__layer, .glhero__character-stage { inset: -6%; width: 112%; height: 112%; }
	.glhero__layer--sky {
		object-position: var(--glhero-mobile-sky-x, 63%) var(--glhero-mobile-sky-y, 50%);
		transform: translate3d(calc(var(--glhero-pointer-x) * -3px), calc(var(--glhero-scroll) * 65px), 0) scale(1.08);
	}
	.glhero__cloud { top: 20%; left: 8%; width: 480px; }
	.glhero__layer--world {
		object-position: var(--glhero-mobile-world-x, 58%) var(--glhero-mobile-world-y, 56%);
		transform: translate3d(calc(var(--glhero-pointer-x) * -5px), calc(var(--glhero-scroll) * 30px), 0) scale(1.075);
	}
	.glhero__character-stage {
		transform: translate3d(
			calc(var(--glhero-mobile-foreground-offset-x-v2, -20px) + var(--glhero-pointer-x) * -7px),
			calc(var(--glhero-mobile-foreground-offset-y-v2, 260px) + var(--glhero-scroll) * -18px),
			0
		) scale(var(--glhero-mobile-foreground-scale-v2, 1.26));
	}
	.glhero__character-stage .glhero__layer--foreground { object-position: var(--glhero-mobile-foreground-x, 68%) var(--glhero-mobile-foreground-y, 58%); }
	.glhero__light { background: radial-gradient(circle at 72% 43%, var(--glhero-warm-light, rgba(255,244,187,.29)), transparent 28%); }
	.glhero__shade { background: linear-gradient(180deg, var(--glhero-mobile-overlay, rgba(31,68,102,.4)) 0%, var(--glhero-mobile-overlay-soft, rgba(31,68,102,.13)) 20%, transparent 38%, transparent 74%, var(--glhero-mobile-bottom-shade, rgba(31,35,43,.26)) 100%), radial-gradient(ellipse at 31% 18%, rgba(23,61,94,.3), transparent 43%); }
	.glhero__content {
		align-items: flex-start;
		justify-content: center;
		padding: var(--glhero-mobile-top-padding, 108px) var(--glhero-mobile-side-padding, 20px) var(--glhero-mobile-bottom-padding, 82px);
		text-align: center;
	}
	.glhero__copy { width: 100%; }
	.glhero__title { margin-inline: auto; font-size: var(--glhero-mobile-title-size, 58px); line-height: .89; }
	.glhero__title-soft { margin-top: .12em; font-size: calc(var(--glhero-soft-size, .72em) * .97); }
	.glhero__summary { max-width: min(var(--glhero-body-width, 550px), 380px); margin: 18px auto 0; font-size: var(--glhero-mobile-body-size, 15px); line-height: 1.55; }
	.glhero__actions, .glhero__actions > .wp-block-buttons { justify-content: center; gap: 14px 17px; }
	.glhero__actions { margin-top: 24px; }
	.glhero .wp-block-button.is-style-gentle-hero-primary .wp-block-button__link { min-width: 150px; min-height: 44px; padding-inline: 18px; font-size: 14px; }
	.glhero .wp-block-button.is-style-gentle-hero-secondary .wp-block-button__link { font-size: 14px; }
	.glhero__scroll { left: 50%; bottom: 17px; gap: 8px; transform: translateX(-50%); }
	.glhero__scroll-line { height: 28px; }
}

@media (max-width: 390px) {
	.glhero__summary { display: none; }
	.glhero__content { padding-top: min(var(--glhero-mobile-top-padding, 108px), 92px); }
	.glhero__actions { margin-top: 21px; }
}

@media (prefers-reduced-motion: reduce) {
	.glhero__cloud-stage,
	.glhero__copy { transform: none !important; }
	.glhero__layer--sky { transform: scale(var(--glhero-sky-scale, 1.075)) !important; }
	.glhero__layer--world { transform: scale(var(--glhero-world-scale, 1.065)) !important; }
	.glhero__character-stage { transform: scale(var(--glhero-foreground-scale, 1.075)) !important; }
	.glhero__cloud,
	.glhero__title-particles i,
	.glhero__button-particles i,
	.glhero__motes i,
	.glhero__scroll-line::after { animation: none !important; }
	.glhero__motes i { opacity: .24; }
}

@media (max-width: 600px) and (prefers-reduced-motion: reduce) {
	.glhero__layer--sky { transform: scale(1.08) !important; }
	.glhero__layer--world { transform: scale(1.075) !important; }
	.glhero__character-stage { transform: translate3d(var(--glhero-mobile-foreground-offset-x-v2, -20px), var(--glhero-mobile-foreground-offset-y-v2, 260px), 0) scale(var(--glhero-mobile-foreground-scale-v2, 1.26)) !important; }
}
