:root {
	--t0: clamp(34px, 11.08vw, 56px);    
	--t1: clamp(28px, 8.71vw, 40px);     
	--t2: clamp(25px, 7.65vw, 34px);     
	--t3: clamp(21px, 6.33vw, 30px);     
	--t4: clamp(18.5px, 5.41vw, 24px);   
	--t5: clamp(17.5px, 4.9vw, 20px);   
	--t6: clamp(15.5px, 4.2vw, 17px); 
	
	--tw: clamp(22px, 6.81vw, 30px);     
	
	--t8: 12.5px;

	--t7: 14.5px;                          
}

body {
	background:
		radial-gradient(120% 60% at 50% 106%, rgba(255,252,246,.85), transparent 60%),
		radial-gradient(88% 44% at 50% -6%, rgba(255,255,255,.95), transparent 64%),
		linear-gradient(to bottom, #FAFCFC 0%, #F1F5F6 54%, #E8EEF0 100%);
	color: #1B1F21;
	font-family: var(--font-util);
}

.sec { overflow: visible; padding-inline: clamp(26px, 7vw, 72px); }
.sec::before { content: none; }

.la-pane { position: fixed; inset: 0; z-index: 0; pointer-events: none; }
.la-pane::before,
.la-pane::after {
	content: '';
	position: absolute; left: 0; right: 0; height: 1px;
	background: linear-gradient(to right, transparent, rgba(255,255,255,.95) 12%, rgba(163,183,189,.5) 50%, rgba(255,255,255,.95) 88%, transparent);
}
.la-pane::before { top: clamp(16px, 3.4vw, 28px); }
.la-pane::after  { bottom: clamp(16px, 3.4vw, 28px); }
.la-pane i {
	position: absolute; top: 0; bottom: 0; width: 1px;
	background: linear-gradient(to bottom, transparent, rgba(255,255,255,.95) 12%, rgba(163,183,189,.45) 50%, rgba(255,255,255,.95) 88%, transparent);
}
.la-pane i:first-child { left: clamp(16px, 3.4vw, 28px); }
.la-pane i:last-child  { right: clamp(16px, 3.4vw, 28px); }

.la-vault {
	position: relative;
	z-index: 1;
	
	min-height: 100svh;
	padding-block: 0;
}

.la-under-the-stars {
	position: relative;
	z-index: 1;
	padding-block: 0 0;
	text-align: center;
}
.la-under-the-stars .la-name { padding-top: 0; }
.la-under-the-stars .la-says { margin-inline: auto; }

.la-held {
	position: absolute;
	inset: 106px 0 0;
	overflow: hidden;
	pointer-events: none;
}

.la-seal {
	position: absolute;
	border-radius: 50%;
	background: #790506;
}

.la-seal span {
	position: absolute;
	left: 50%;
	top: calc(100% + 7px);
	transform: translateX(-50%);
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .16em;
	color: #7E8D91;
	white-space: nowrap;
}

.la-says {
	position: relative;
	z-index: 2;
	max-width: 20ch;
	margin: 0;
	font-family: var(--font-head);
	font-size: var(--t1);
	line-height: 1.06;
	letter-spacing: -.024em;
	color: #1B1F21;
	text-wrap: balance;
}

.la-under {
	position: relative;
	z-index: 2;
	margin: clamp(22px, 4.6vw, 34px) 0 0;
	max-width: 30ch;
	font: 400 clamp(15.5px, 4.1vw, 17.5px)/1.72 var(--font-util);
	letter-spacing: 0;
	text-transform: none;
	color: #6B787C;
}

.la-mark {
	position: absolute;
	z-index: 2;
	top: clamp(30px, 6vw, 48px);
	left: clamp(26px, 7vw, 72px);
	margin: 0;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .38em;
	text-transform: uppercase;
	color: #556064;
}

.la-below { position: relative; z-index: 1; max-width: 33rem; margin-inline: auto; }

.la-line {
	margin: 0;
	padding-top: 8rem;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.24;
	letter-spacing: -.014em;
	text-wrap: balance;
}

.la-body {
	margin: 0;
	padding-top: 2rem;
	font-size: var(--t5);
	line-height: 1.7;
	max-width: 34ch;
	color: #3C474A;
}

.la-tiers { padding-top: 8rem; }

.la-tier {
	display: block;
	padding: 26px 0;
	text-align: center;
	border-bottom: 1px solid rgba(27,31,33,.14);
}

.la-tier-name  { display: block; }
.la-tier-price { display: block; margin-top: .7rem; }
.la-tier-who   { display: block; margin-top: .5rem; }
.la-tier:first-of-type { border-top: 1px solid rgba(27,31,33,.14); }

.la-tier-name { font: 400 var(--t3)/1.14 var(--font-head); letter-spacing: .01em; text-transform: none; }
.la-tier-price { font-size: var(--t4); white-space: nowrap; }
.la-tier-price small { font-size: var(--t7); color: #7E8D91; }
.la-tier-who { font-size: var(--t5); color: #7E8D91; }

.la-beyond { margin: 20px 0 0; font-size: var(--t5); line-height: 1.66; max-width: 34ch; color: #7E8D91; }

.la-end { padding: 8rem 0 9rem; text-align: center; }

.la-end p {
	margin: 0 auto;
	max-width: 24ch;
	font-family: var(--font-head);
	font-size: var(--t2);
	line-height: 1.24;
	letter-spacing: -.008em;
	color: var(--ink);
	text-wrap: balance;
}
.la-end small {
	display: block; margin-top: 18px;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .3em; text-transform: uppercase; color: #556064;
}

.foot { background: transparent; }

@media (min-width: 900px) {
	.la-below { max-width: 38rem; }
	.la-line, .la-tiers { padding-top: 10rem; }
}

.la-waiting { color: #5A6569; }

.la-gap {
	display: block;
	height: 1px;
	max-width: 26ch;
	margin: 0 0 14px;
	background: linear-gradient(to right, var(--wax), rgba(208,23,48,.12));
}

.la-waiting em {
	font-style: normal;
	font-size: var(--t6);
	color: var(--wax);
}

.la-comes {
	opacity: 0;
	
	
	animation:
		la-grow 1900ms cubic-bezier(.22,.68,.28,1) both,
		la-twinkle 6.5s ease-in-out infinite both;
}

.la-comes:nth-of-type(3n)   { animation-duration: 1900ms, 8.3s; }
.la-comes:nth-of-type(4n)   { animation-duration: 1900ms, 11.1s; }
.la-comes:nth-of-type(5n+2) { animation-duration: 1900ms, 14.7s; }
.la-comes:nth-of-type(7n+3) { animation-duration: 1900ms, 19.3s; }

.la-seal {  }

@keyframes la-grow {
	0%   { opacity: 0; transform: scale(0) translateY(7px); }
	22%  { opacity: .55; }
	100% { opacity: 1; transform: scale(1) translateY(0); }
}

@keyframes la-twinkle {
	0%, 100% { filter: brightness(1) opacity(1); }
	50%      { filter: brightness(1.34) opacity(.88); }
}

.la-seal span {
	opacity: 0;
	animation: la-when 900ms ease both;
	animation-delay: inherit;
}
@keyframes la-when { 0%, 34% { opacity: 0 } 100% { opacity: 1 } }

.la-last {
	opacity: 0;
	animation: la-after 1600ms cubic-bezier(.22,.61,.36,1) both;
	animation-delay: 1400ms;
}
.la-says.la-last  { animation-delay: 1700ms; }
.la-under.la-last { animation-delay: 2100ms; }

html:not(.js-arriving) .la-under-the-stars .la-last,
html:not(.js-arriving) .la-under-the-stars .la-says.la-last {
	opacity: 1;
}

.la-under-the-stars .la-last,
.la-under-the-stars .la-says.la-last {
	animation: none;

	
	opacity: 1;
}

.is-past-the-moment .la-under-the-stars .la-last,
.is-past-the-moment .la-under-the-stars .la-says.la-last {
	animation-delay: 0ms;
	animation-duration: 500ms;
}

@keyframes la-after {
	from { opacity: 0; transform: translateY(10px); }
	to   { opacity: 1; transform: none; }
}

.la-star.la-soon { animation: none;  }

.la-star, .la-star.la-comes {  }

.la-moments { padding-top: 8rem; }

.la-moment {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0 18px;
	align-items: start;
	padding: 26px 0;
	border-top: 1px solid rgba(27,31,33,.14);
}
.la-moment:last-of-type { border-bottom: 1px solid rgba(27,31,33,.14); }

.la-moment .m-seal {
	width: 15px; height: 15px; border-radius: 50%; margin-top: 9px;
	background: #790506;
}
.la-moment .m-seal.is-heart { background: none; }
.la-moment .m-seal.is-heart img { width: 22px; height: 22px; display: block; margin: -4px 0 0 -4px; }

.la-moment p { margin: 0; font-size: var(--t5); line-height: 1.7; }
.la-moment .m-when {
	display: block; margin-top: 8px;
	font-size: var(--t6); letter-spacing: .16em; text-transform: uppercase; color: #5A6569;
}

.la-name {
	position: relative; z-index: 2;
	margin: 0; padding-top: 3rem;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .42em; text-transform: uppercase; color: #5A6569;
}

.la-crest { position: relative; z-index: 2; padding-top: 2.4rem; }

.la-crest { margin-inline: calc(50% - 50vw); width: 100vw; }
.la-crest img { display: block; width: 100%; height: auto; margin: 0; }

.la-argument { padding-top: 6rem; }

.la-beat {
	margin: 0;
	font-family: var(--font-head);
	font-size: var(--t1);
	line-height: 1.1;
	letter-spacing: -.024em;
	text-wrap: balance;
}
.la-beat + .la-beat { margin-top: 1.1em; }
.la-beat .q { color: var(--wax); }

.la-against {
	margin: 0; padding-top: 9rem;
	font-family: var(--font-head);
	font-size: var(--t2);
	line-height: 1.2; letter-spacing: -.018em;
	text-wrap: balance; color: var(--wax);
}

.la-imagine { padding-top: 9rem; }
.la-imagine p { margin: 0; font-size: var(--t4); line-height: 1.62; max-width: 30ch; }
.la-imagine p + p { margin-top: 1.2em; }
.la-imagine b {
	font-weight: 400; font-family: var(--font-head);
	font-size: 1.24em; color: var(--wax);
}

.la-omoi { padding-top: 9rem; }

.o-word {
	margin: 0;
	font-family: var(--font-head);
	font-size: var(--t3);
	letter-spacing: .04em;
	color: var(--wax);
}
.o-word span {
	display: inline-block; margin-left: .6em;
	font-family: var(--font-small);
	font-size: var(--t6); letter-spacing: .2em; color: #5A6569;
}
.o-said { margin: .7em 0 0; font-size: var(--t5); line-height: 1.66; max-width: 32ch; }
.o-her  { margin: .55em 0 0; font-size: var(--t5); line-height: 1.66; color: #6B787C; }
.o-word + .o-said + .o-her + .o-word,
.o-said + .o-word { margin-top: 2.6em; }

.la-seal.at-right span { left: auto; right: 0; transform: none; text-align: right; }
.la-seal.at-left  span { left: 0; right: auto; transform: none; text-align: left; }

.la-room { max-width: 34rem; margin-inline: auto; padding: 6rem 0 8rem; }

.la-room-to {
	margin: 0 0 clamp(20px, 4vw, 30px);
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .36em; text-transform: uppercase; color: #5A6569;
}

.la-glasswrite {
	min-height: 9em;
	outline: 0;
	font-family: var(--font-head);
	font-size: var(--tw);
	line-height: 1.4;
	letter-spacing: -.014em;
	color: #171C1E;
	text-shadow: 0 1px 0 rgba(255,255,255,.95), 0 -1px 0 rgba(120,148,156,.14);
	caret-color: var(--wax);
}
.la-glasswrite.is-empty::before {
	content: attr(data-placeholder);
	color: #BCC8CC;
	pointer-events: none;
}

.la-sealing { margin: 5rem 0 0; }

.la-field { display: block; margin: 0 0 2.2rem; }
.la-field > span {
	display: block; margin-bottom: 10px;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .28em; text-transform: uppercase; color: #5A6569;
}
.la-field input {
	width: 100%; border: 0; border-bottom: 1px solid var(--rule);
	background: transparent; padding: 8px 0;
	font: 400 clamp(18px, 4.8vw, 22px)/1.5 var(--font-util);
	color: #171C1E;
}
.la-field input:focus { outline: 0; border-bottom-color: var(--wax); }
.la-field em {
	display: block; margin-top: 10px; font-style: normal;
	font-size: var(--t6); line-height: 1.6; color: #5A6569;
}

.la-seal-it {
	appearance: none; background: none; border: 0; padding: 16px 0; cursor: pointer;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .34em; text-transform: uppercase; color: var(--wax);
}

.la-promise { margin: 1.6rem 0 0; font-size: var(--t6); line-height: 1.7; color: #5A6569; max-width: 34ch; }

.la-your-vault { max-width: 34rem; margin-inline: auto; padding: 6rem 0 8rem; }

.la-holding, .la-first {
	margin: 0;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.2; letter-spacing: -.016em;
}
.la-first-under { margin: .5em 0 2rem; font-size: var(--t5); color: #6B787C; }

.la-begin-link {
	display: inline-block; padding: 14px 0;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .34em; text-transform: uppercase;
	color: var(--wax); text-decoration: none;
	border-bottom: 1px solid currentColor;
}

.la-held-letter {
	display: grid; grid-template-columns: auto 1fr; gap: 0 18px;
	align-items: start; padding: 26px 0;
	border-bottom: 1px solid rgba(27,31,33,.14);
}
.la-held-letter:first-of-type { border-top: 1px solid rgba(27,31,33,.14); margin-top: 2rem; }
.la-held-seal {
	width: 15px; height: 15px; border-radius: 50%; margin-top: 8px;
	background: #790506;
}
.la-held-for  { margin: 0; font-size: var(--t4); }
.la-held-when { margin: 6px 0 0; font-size: var(--t6); letter-spacing: .16em; text-transform: uppercase; color: #5A6569; }
.la-held-from { margin: 4px 0 0; font-size: var(--t6); color: #5A6569; }
.la-held-open {
	display: inline-block; margin-top: 12px;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .28em; text-transform: uppercase;
	color: var(--wax); text-decoration: none;
}

.la-vault-note { margin: 2.4rem 0 0; font-size: var(--t6); line-height: 1.7; color: #5A6569; max-width: 36ch; }

.la-doorway { max-width: 34rem; margin-inline: auto; padding: 8rem 0; }

.la-page { padding-inline: clamp(26px, 7vw, 72px); }
.la-page-in { max-width: 34rem; margin-inline: auto; }

.la-reading { max-width: 34rem; margin-inline: auto; padding: 7rem 0 9rem; }

.la-reading-to {
	margin: 0 0 clamp(28px, 6vw, 44px);
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .36em; text-transform: uppercase; color: #5A6569;
}

.la-reading-words p {
	margin: 0 0 1.1em;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.48;
	letter-spacing: -.012em;
	color: #171C1E;
}
.la-reading-words p:last-child { margin-bottom: 0; }

.la-reading-foot {
	margin: 5rem 0 0; padding-top: 2rem;
	border-top: 1px solid var(--rule);
	font-size: var(--t6); line-height: 1.8; color: #5A6569;
}
.la-reading-foot p { margin: 0; }
.la-reading-yours { margin-top: 1.2em !important; color: var(--wax); }

.la-step {
	text-align: center;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 1100ms cubic-bezier(.22,.61,.36,1), transform 1400ms cubic-bezier(.16,.72,.24,1);
}
.la-step.is-in { opacity: 1; transform: none; }
.la-step[hidden] { display: none; }

.la-said-it {
	margin: 0;
	font-family: var(--font-head);
	font-size: var(--t2);
	line-height: 1.14; letter-spacing: -.02em;
}
.la-said-under { margin: 1em 0 0; font-size: var(--t5); line-height: 1.66; color: #6B787C; max-width: 32ch; }

.la-ask {
	margin: 0 0 1.4rem;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.2; letter-spacing: -.016em;
}

.la-sealing input[type="text"],
.la-sealing input[type="email"],
.la-sealing input[type="date"] {
	width: 100%; border: 0; border-bottom: 1px solid var(--rule);
	background: transparent; padding: 10px 0;
	font: 400 clamp(20px, 5.2vw, 26px)/1.5 var(--font-util);
	color: #171C1E;
}
.la-sealing input:focus { outline: 0; border-bottom-color: var(--wax); }

.la-on {
	appearance: none; background: none; border: 0; padding: 20px 0 0; cursor: pointer;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .34em; text-transform: uppercase; color: var(--wax);
}

.la-aside { margin: 1rem 0 0; }
.la-aside button, .la-aside-choice button {
	appearance: none; background: none; border: 0; padding: 8px 0; cursor: pointer;
	font: 400 var(--t6)/1.6 var(--font-util); color: #5A6569;
	border-bottom: 1px solid rgba(138,146,150,.4);
}
.la-aside-choice { margin: 1.2rem 0 0; }
.la-aside-note { margin: 1rem 0 0; font-size: var(--t6); line-height: 1.6; color: #5A6569; max-width: 34ch; }

.la-two { display: flex; flex-direction: column; gap: 1.1rem; align-items: flex-start; margin: 0; }
.la-choose {
	appearance: none; background: none; border: 0; padding: 0; cursor: pointer; text-align: left;
	font-family: var(--font-head);
	font-size: var(--t4); line-height: 1.24; color: var(--wax);
}

.la-ways {
	max-width: var(--measure);
	margin: 0 auto;
	padding: 7rem 1.6rem 2rem;
}

.la-ways-head {
	margin: 0 0 3.4rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .38em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-movement { margin: 0 0 3.6rem; }

.la-movement-name {
	margin: 0 0 1.5rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t3);
	line-height: 1.18;
	letter-spacing: .004em;
	color: var(--ink);
	text-wrap: balance;
}

.la-way {
	display: flex;
	gap: 1.1rem;
	padding: 1.35rem 0;
	border-top: 1px solid rgba(42,74,69,.13);
}

.la-way:first-of-type { border-top: 1px solid rgba(42,74,69,.22); }

.la-way-seal {
	flex: 0 0 auto;
	width: 9px;
	height: 9px;
	margin-top: .58em;
	border-radius: 50%;
	background: var(--wax);
}

.la-way p {
	margin: 0;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.38;
	color: var(--ink);
	text-wrap: pretty;
}

.la-way-when {
	display: block;
	margin-top: .6rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .28em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-ways-foot {
	margin: 1.9rem 0 0;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.42;
	color: var(--wax);
	text-wrap: balance;
}

@media (min-width: 34rem) {
	.la-way p { display: flex; align-items: baseline; gap: 1.2rem; }
	.la-way-when { margin-top: 0; flex: 0 0 auto; white-space: nowrap; }
}

.la-doorway {
	max-width: 30rem;
	margin: 0 auto;
	padding: 5.5rem 1.6rem 6rem;
	text-align: center;
}

.la-door-mark {
	width: 34px;
	height: 34px;
	margin: 0 auto 2.4rem;
	border-radius: 50%;
	background: var(--wax);
}

.la-door-head {
	margin: 0 0 1.8rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t2);
	line-height: 1.16;
	letter-spacing: .004em;
	color: var(--ink);
	text-wrap: balance;
}

.la-door-line {
	margin: 0 0 1.15rem;
	font-family: var(--font-util);
	font-size: var(--t5);
	line-height: 1.72;
	color: var(--ink);
	text-wrap: pretty;
}

.la-door-when {
	margin: 2rem 0 1.6rem;
	font-family: var(--font-head);
	font-size: var(--t1);
	line-height: 1.1;
	color: var(--wax);
}

.la-door-under {
	margin: 0;
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.7;
	color: var(--soft);
	text-wrap: pretty;
}

.la-door-us {
	margin: 3.4rem 0 0;
	padding-top: 2.2rem;
	border-top: 1px solid rgba(42,74,69,.16);
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.75;
	color: var(--soft);
	text-wrap: pretty;
}

.la-door-in {
	display: inline-block;
	margin-top: .7rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--wax);
	text-decoration: none;
	border-bottom: 1px solid rgba(208,23,48,.34);
	padding-bottom: .18em;
}

.la-door-in:hover,
.la-door-in:focus-visible { border-bottom-color: var(--wax); }

.la-waiting .la-door-mark { width: 44px; height: 44px; }

.la-door-date {
	margin: -.9rem 0 1.7rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--soft);
}

html { background: var(--ground); }

body { min-height: 100svh; }

@supports not (height: 100svh) {
	body { min-height: 100vh; }
}

.la-seal-mark {
	position: fixed;
	top: 1.15rem;
	right: 1.15rem;
	z-index: 60;
	display: block;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	cursor: pointer;
	border-radius: 50%;
	transition: transform 420ms var(--float-ease);

	
	background: radial-gradient(
		circle at center,
		var(--ground) 56%,
		color-mix(in srgb, var(--ground) 70%, transparent) 76%,
		transparent 88%
	);
	background-size: 210% 210%;
	background-position: center;
	background-repeat: no-repeat;
}

.la-seal-mark img { display: block; width: 44px; height: 44px; }

.la-seal-mark:hover { transform: scale(1.06); }

.la-seal-mark:focus-visible {
	outline: 2px solid var(--wax);
	outline-offset: 5px;
}

.la-panel[hidden] { display: none !important; }

.la-panel {
	position: fixed;
	inset: 0;
	z-index: 55;
	display: flex;
	align-items: center;
	justify-content: center;
	
	background: rgba(240, 246, 245, .988);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	opacity: 0;
	transition: opacity 300ms var(--float-ease);
}

.la-panel-open .la-panel { opacity: 1; }

.la-panel-in {
	width: 100%;
	max-width: 24rem;
	padding: 2rem 1.6rem;
	text-align: center;
}

.la-roads { display: block; }

.la-roads a {
	display: block;
	padding: .82rem 0;
	color: var(--ink);
	text-decoration: none;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 460ms var(--float-ease), transform 460ms var(--float-ease), color 260ms;
}

.la-panel-open .la-roads a { opacity: 1; transform: none; }

.la-panel-open .la-roads a:nth-child(1) { transition-delay: 60ms; }
.la-panel-open .la-roads a:nth-child(2) { transition-delay: 130ms; }
.la-panel-open .la-roads a:nth-child(3) { transition-delay: 200ms; }
.la-panel-open .la-roads a:nth-child(4) { transition-delay: 270ms; }

.la-roads a:hover,
.la-roads a:focus-visible { color: var(--wax); }

.la-panel-begin {
	margin: 2.2rem 0 0;
	opacity: 0;
	transition: opacity 460ms var(--float-ease) 340ms;
}

.la-panel-open .la-panel-begin { opacity: 1; }

.la-panel-begin a {
	display: inline-block;
	padding: .78em 2.2em;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--crown);
	background: var(--wax);
	text-decoration: none;
	border-radius: 999px;
}

.la-panel-begin a:hover { background: #B7132A; }

.la-panel-foot {
	margin: 1.7rem 0 0;
	opacity: 0;
	transition: opacity 460ms var(--float-ease) 400ms;
}

.la-panel-open .la-panel-foot { opacity: 1; }

.la-panel-foot a {
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--soft);
	text-decoration: none;
	border-bottom: 1px solid rgba(88,117,113,.3);
	padding-bottom: .16em;
}

.la-panel-foot a:hover,
.la-panel-foot a:focus-visible { color: var(--wax); border-bottom-color: var(--wax); }

.la-scale, .la-words {
	max-width: var(--measure);
	margin: 0 auto;
	padding: 5rem 1.6rem 6rem;
}

.la-scale-over, .la-words-over {
	margin: 0 0 1.6rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .38em;
	text-transform: uppercase;
	color: var(--wax);
	text-align: center;
}

.la-scale-head, .la-words-head {
	margin: 0 0 1rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t2);
	line-height: 1.14;
	color: var(--ink);
	text-align: center;
	text-wrap: balance;
}

.la-scale-under {
	margin: 0 0 3.6rem;
	font-family: var(--font-util);
	font-size: var(--t5);
	line-height: 1.7;
	color: var(--soft);
	text-align: center;
	text-wrap: pretty;
}

.la-room {
	padding: 2.6rem 0;
	border-top: 1px solid rgba(42,74,69,.14);
	text-align: center;
}

.la-room:first-of-type { border-top: 1px solid rgba(42,74,69,.24); }

.la-room-mark {
	width: 10px;
	height: 10px;
	margin: 0 auto 1.5rem;
	border-radius: 50%;
	background: var(--wax);
}

.la-room-your-circle .la-room-mark { width: 16px; height: 16px; }
.la-room-your-world  .la-room-mark { width: 24px; height: 24px; }

.la-room-name {
	margin: 0 0 .45rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t2);
	line-height: 1.16;
	color: var(--ink);
}

.la-room-beneath {
	margin: 0 0 1.5rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-room-price { margin: 0; }

.la-room-dollars {
	font-family: var(--font-head);
	font-size: var(--t0);
	line-height: 1;
	color: var(--wax);
}

.la-room-month {
	display: block;
	margin-top: .5rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-room-beyond {
	margin: 1.5rem auto 0;
	max-width: 26ch;
	font-family: var(--font-util);
	font-size: var(--t6);
	line-height: 1.68;
	color: var(--ink);
	text-wrap: pretty;
}

.la-scale-truths {
	margin: 3.4rem 0 0;
	padding-top: 2.6rem;
	border-top: 1px solid rgba(42,74,69,.14);
}

.la-scale-truths p {
	margin: 0 0 1.15rem;
	padding-left: 1.5rem;
	position: relative;
	font-family: var(--font-util);
	font-size: var(--t5);
	line-height: 1.72;
	color: var(--ink);
	text-wrap: pretty;
}

.la-scale-truths p::before {
	content: "";
	position: absolute;
	left: 0;
	top: .72em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--wax);
}

.la-room-in { margin: 1.8rem 0 0; }

.la-room-in a {
	display: inline-block;
	padding: .84em .2em;
	font-family: var(--font-util);
	font-size: var(--t6);
	line-height: 1.4;
	color: var(--wax);
	text-decoration: none;
	border-bottom: 1px solid rgba(208,23,48,.34);
	transition: border-color 220ms ease;
}

.la-room-in a:hover,
.la-room-in a:focus-visible { border-bottom-color: var(--wax); }

.la-scale-ready {
	margin: 3.4rem 0 0;
	text-align: center;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.25;
	color: var(--ink);
}

.la-scale-in { margin: 1.4rem 0 0; text-align: center; }

.la-scale-in a {
	display: inline-block;
	max-width: 100%;
	padding: .82em 2.2em;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--crown);
	background: var(--wax);
	text-decoration: none;
	border-radius: 999px;
	
	line-height: 1.7;
}

.la-scale-in a:hover,
.la-scale-in a:focus-visible { background: #B7132A; }

.la-word {
	margin-top: 3.8rem;
	padding-top: 3rem;
	border-top: 1px solid rgba(42,74,69,.14);
	text-align: center;
}

.la-word:first-of-type { border-top: 0; padding-top: 1rem; }

.la-word-kanji {
	margin: 0 0 .55rem;
	font-size: 36px;
	line-height: 1.1;
	color: var(--wax);
}

.la-word-roman {
	margin: 0 0 1.5rem;
	font-family: var(--font-small);
	font-weight: 400;
	font-size: var(--t7);
	letter-spacing: .42em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-word-first {
	margin: 0 0 1.2rem;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.34;
	color: var(--ink);
	text-wrap: balance;
}

.la-word-line {
	margin: 0 auto 1.1rem;
	max-width: 30ch;
	font-family: var(--font-util);
	font-size: var(--t5);
	line-height: 1.74;
	color: var(--ink);
	text-wrap: pretty;
}

.la-words-close {
	margin: 3.6rem 0 0;
	padding-top: 2.4rem;
	border-top: 1px solid rgba(42,74,69,.14);
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--wax);
	text-align: center;
}

.la-doorstep {
	max-width: 27rem;
	margin: 0 auto;
	padding: 5rem 1.6rem 6rem;
	text-align: center;
}

.la-doorstep-head {
	margin: 0 0 1.5rem;
	font-family: var(--font-head);
	font-weight: 300;
	font-size: var(--t2);
	line-height: 1.1;
	letter-spacing: -.008em;
	color: var(--ink);
	text-wrap: balance;
}

.la-doorstep-line {
	margin: 0 auto 2.9rem;
	max-width: 26ch;
	font-family: var(--font-small);
	font-size: var(--t4);
	line-height: 1.72;
	color: var(--ink);
	text-wrap: pretty;
}

.la-doorstep-again {
	margin: -1.4rem 0 2.2rem;
	font-family: var(--font-util);
	font-size: var(--t6);
	line-height: 1.7;
	color: var(--wax);
}

.la-doorstep-form { display: block; text-align: left; }

.la-doorstep-label {
	display: block;
	margin: 0 0 .5rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-doorstep-field {
	display: block;
	width: 100%;
	margin: 0 0 2rem;
	padding: .55em 0;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.4;
	color: var(--ink);
	background: none;
	border: 0;
	border-bottom: 1px solid var(--rule);
	border-radius: 0;
	caret-color: var(--wax);
	-webkit-appearance: none;
	appearance: none;
}

.la-doorstep-field:focus {
	outline: 0;
	border-bottom-color: var(--wax);
}

.la-doorstep-on {
	display: inline-block;
	width: 100%;
	margin-top: .4rem;
	padding: 1em 2em;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--crown);
	background: var(--wax);
	border: 0;
	border-radius: 999px;
	cursor: pointer;
	text-decoration: none;
	text-align: center;
}

.la-doorstep-on:hover { background: #B7132A; }

.la-doorstep-on:focus-visible {
	outline: 2px solid var(--wax);
	outline-offset: 4px;
}

.la-doorstep-quiet {
	margin: 2.6rem auto 0;
	max-width: 24ch;
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.75;
	letter-spacing: .012em;
	color: var(--soft);
	text-wrap: pretty;
}

.la-steps { display: block; }

.la-steps .la-step {
	display: none;
	text-align: center;
}

.la-steps .la-step.is-here {
	display: block;
	animation: la-arrive 620ms cubic-bezier(.22,.61,.36,1) both;
}

@keyframes la-arrive {
	from { opacity: 0; transform: translateY(12px); }
	to   { opacity: 1; transform: none; }
}

.la-steps .la-step .la-ask {
	margin: 0 0 2.2rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--tw);
	line-height: 1.2;
	color: var(--ink);
	text-wrap: balance;
}

.la-steps .la-step .la-line::placeholder {
	font-family: var(--font-util);
	font-size: .56em;
	letter-spacing: .02em;
	color: rgba(42,74,69,.34);
}
.la-steps .la-step .la-line::-webkit-input-placeholder {
	font-family: var(--font-util);
	font-size: .56em;
	color: rgba(42,74,69,.34);
}

.la-steps .la-step .la-line {
	display: block;
	width: 100%;
	margin: 0 0 2.6rem;
	padding: .5em 0;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.35;
	text-align: center;
	color: var(--ink);
	background: none;
	border: 0;
	border-bottom: 1px solid var(--rule);
	border-radius: 0;
	caret-color: var(--wax);
	-webkit-appearance: none;
	appearance: none;
}

.la-step .la-line:focus { outline: 0; border-bottom-color: var(--wax); }

.la-step .la-on {
	display: inline-block;
	margin-top: .4rem;
	padding: .5em 0;
	font-family: var(--font-small);
	font-size: var(--t6);
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--wax);
	background: none;
	border: 0;
	border-bottom: 1px solid var(--wax);
	border-radius: 0;
	cursor: pointer;
	transition: opacity 320ms ease;
}

.la-step .la-on:hover { opacity: .68; background: none; }

.la-step .la-on:focus-visible { outline: 2px solid var(--wax); outline-offset: 6px; }

.la-doorstep-kept {
	margin: 0 0 1.6rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .28em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-step .la-aside { margin: 1.5rem 0 0; }

.la-step .la-skip {
	padding: 0;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .28em;
	text-transform: uppercase;
	color: var(--soft);
	background: none;
	border: 0;
	border-bottom: 1px solid rgba(88,117,113,.3);
	cursor: pointer;
}

.la-step .la-skip:hover { color: var(--wax); border-bottom-color: var(--wax); }

.la-part { margin: 0 0 3.6rem; }

.la-part-name {
	margin: 0 0 .4rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t3);
	line-height: 1.16;
	color: var(--ink);
	text-wrap: balance;
}

.la-part-under {
	margin: 0 0 1.6rem;
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.68;
	color: var(--soft);
	text-wrap: pretty;
}

.la-row {
	display: grid;
	grid-template-columns: 26px 1fr auto;
	gap: .2rem .9rem;
	align-items: baseline;
	padding: 1.15rem 0;
	border-top: 1px solid rgba(42,74,69,.13);
}

.la-row:first-of-type { border-top: 1px solid rgba(42,74,69,.24); }
.la-part:last-of-type .la-row:last-of-type { border-bottom: 1px solid rgba(42,74,69,.13); }

.la-row-seal {
	grid-row: 1 / span 2;
	width: 13px;
	height: 13px;
	margin-top: .3em;
	border-radius: 50%;
	background: var(--wax);
}

.la-row-seal.is-given {
	width: 26px;
	height: 26px;
	margin-top: 0;
	border-radius: 0;
	background: url('../img/seal-open.svg') center / 26px 26px no-repeat;
}

.la-row-who {
	grid-column: 2;
	margin: 0;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.3;
	color: var(--ink);
}

.la-row-when {
	grid-column: 2;
	margin: .18rem 0 0;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .28em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-row-open {
	grid-column: 3;
	grid-row: 1 / span 2;
	align-self: center;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .26em;
	text-transform: uppercase;
	color: var(--soft);
	text-decoration: none;
	border-bottom: 1px solid rgba(88,117,113,.32);
	padding-bottom: .16em;
	white-space: nowrap;
}

.la-row-open:hover,
.la-row-open:focus-visible { color: var(--wax); border-bottom-color: var(--wax); }

.la-invite {
	max-width: var(--measure);
	margin: 0 auto;
	padding: 5rem 1.6rem 1.4rem;
	text-align: center;
}

.la-invite-head {
	margin: 0 0 1.1rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t2);
	line-height: 1.14;
	color: var(--ink);
	text-wrap: balance;
}

.la-invite-line {
	margin: 0 auto;
	max-width: 32ch;
	font-family: var(--font-util);
	font-size: var(--t5);
	line-height: 1.74;
	color: var(--soft);
	text-wrap: pretty;
}

.la-heart {
	max-width: var(--measure);
	margin: 0 auto;
	padding: 6rem 1.6rem 5rem;
	text-align: center;
}

.la-heart-ask {
	margin: 0 auto .8rem;
	max-width: 26ch;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.32;
	color: var(--ink);
	text-wrap: balance;
}

.la-heart-lead {
	margin: 3rem auto 2.2rem;
	max-width: 30ch;
	font-family: var(--font-small);
	font-size: var(--t4);
	line-height: 1.72;
	letter-spacing: .04em;
	color: var(--soft);
	text-wrap: pretty;
}

.la-heart-said {
	margin: 0 auto 2.6rem;
	max-width: 24ch;
	font-family: var(--font-head);
	font-size: var(--t2);
	line-height: 1.24;
	color: var(--wax);
	text-wrap: balance;
}

.la-heart-said:last-of-type { margin-bottom: 0; }

.la-build-note {
	margin: 2.6rem auto 1rem;
	max-width: 30ch;
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.7;
	color: var(--soft);
	text-wrap: pretty;
}

.la-build-in a {
	display: inline-block;
	padding: .8em 2.2em;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .32em;
	text-transform: uppercase;
	color: var(--crown);
	background: var(--ink);
	text-decoration: none;
	border-radius: 999px;
}

.la-build-in a:hover { background: var(--wax); }

.la-world {
	max-width: var(--measure);
	margin: 0 auto;
	padding: 4.5rem 1.6rem 5rem;
}

.la-world-over {
	margin: 0 0 .7rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .38em;
	text-transform: uppercase;
	color: var(--wax);
	text-align: center;
}

.la-world-head {
	margin: 0 0 2rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t2);
	line-height: 1.12;
	color: var(--ink);
	text-align: center;
}

.la-sky-field {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1.06;
	margin: 0 0 3.4rem;
}

@supports not (aspect-ratio: 1) {
	.la-sky-field { height: 0; padding-bottom: 106%; }
}

.la-star {
	position: absolute;
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	text-decoration: none;
	color: inherit;
}

.la-star-seal {
	display: block;
	border-radius: 50%;
	background: #790506;
	transition: transform 300ms var(--float-ease);
}

.la-star:hover .la-star-seal,
.la-star:focus-visible .la-star-seal { transform: scale(1.12); }

.la-star-open {
	position: absolute;
	top: -6px;
	right: -13px;
	width: 20px;
	height: 20px;
	background: url('../img/seal-open.svg') center / 20px 20px no-repeat;
}

.la-star-name {
	margin-top: .55rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .16em;
	color: var(--soft);
	white-space: nowrap;
}

.la-star:hover .la-star-name,
.la-star:focus-visible .la-star-name { color: var(--wax); }

.la-star:focus-visible { outline: 2px solid var(--wax); outline-offset: 6px; border-radius: 4px; }

.la-world-row {
	display: grid;
	grid-template-columns: 14px 1fr;
	gap: .2rem .9rem;
	align-items: baseline;
	padding: 1.1rem 0;
	border-top: 1px solid rgba(42,74,69,.13);
	text-decoration: none;
	color: inherit;
}

.la-world-row:first-of-type { border-top: 1px solid rgba(42,74,69,.24); }
.la-world-row:last-of-type { border-bottom: 1px solid rgba(42,74,69,.13); }

.la-world-row .la-row-seal { grid-row: 1 / span 2; width: 11px; height: 11px; margin-top: .35em; }

.la-world-who {
	grid-column: 2;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.3;
	color: var(--ink);
}

.la-world-count {
	grid-column: 2;
	margin-top: .16rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-world-row:hover .la-world-who { color: var(--wax); }

.la-reading.la-sealed .la-reading-to,
.la-reading.la-sealed .la-reading-words,
.la-reading.la-sealed .la-reading-foot { display: none; }

.la-breaking {
	padding: 4.5rem 0 5rem;
	text-align: center;
}

.la-breaking-from {
	margin: 0 0 2.4rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-wax {
	position: relative;
	display: block;
	width: 132px;
	height: 132px;
	margin: 0 auto;
	padding: 0;
	border: 0;
	background: none;
	cursor: pointer;
}

.la-wax-whole,
.la-wax-left,
.la-wax-right {
	position: absolute;
	inset: 0;
	background: url('../img/seal-wax.png?v=2') center / 132px 132px no-repeat;
}

.la-wax-left  { clip-path: inset(0 51% 0 0); opacity: 0; }
.la-wax-right { clip-path: inset(0 0 0 49%); opacity: 0; }

.la-wax:hover .la-wax-whole { transform: scale(1.03); }
.la-wax-whole { transition: transform 420ms var(--float-ease); }

.la-wax:focus-visible { outline: 2px solid var(--wax); outline-offset: 8px; border-radius: 50%; }

.is-breaking .la-wax-whole { opacity: 0; transition: opacity 90ms linear; }

.is-breaking .la-wax-left {
	opacity: 1;
	animation: la-break-left 620ms cubic-bezier(.3,.7,.4,1) forwards;
}

.is-breaking .la-wax-right {
	opacity: 1;
	animation: la-break-right 620ms cubic-bezier(.3,.7,.4,1) forwards;
}

@keyframes la-break-left {
	0%   { transform: none; opacity: 1; }
	100% { transform: translate(-26px, 16px) rotate(-13deg); opacity: 0; }
}

@keyframes la-break-right {
	0%   { transform: none; opacity: 1; }
	100% { transform: translate(26px, 18px) rotate(11deg); opacity: 0; }
}

.la-breaking-say {
	margin: 2.4rem 0 0;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--wax);
}

.is-breaking .la-breaking-say { opacity: 0; transition: opacity 200ms linear; }

.la-reading.is-open .la-reading-to,
.la-reading.is-open .la-reading-words,
.la-reading.is-open .la-reading-foot {
	animation: la-arrive 700ms cubic-bezier(.22,.61,.36,1) both;
}

.la-reading.is-open .la-reading-words { animation-delay: 90ms; }
.la-reading.is-open .la-reading-foot  { animation-delay: 200ms; }

.la-breaking {
	overflow: hidden;
	max-height: 60rem;
	transition: max-height 620ms cubic-bezier(.22,.61,.36,1),
	            opacity 320ms linear,
	            padding 620ms cubic-bezier(.22,.61,.36,1);
}

.la-reading.is-open .la-breaking {
	max-height: 0;
	padding-top: 0;
	padding-bottom: 0;
	opacity: 0;
}

.la-hers {
	grid-column: 2;
	margin-top: .7rem;
}

.la-hers summary {
	display: inline-block;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .26em;
	text-transform: uppercase;
	color: var(--soft);
	cursor: pointer;
	list-style: none;
	border-bottom: 1px solid rgba(88,117,113,.28);
	padding-bottom: .16em;
}

.la-hers summary::-webkit-details-marker { display: none; }

.la-hers summary:hover,
.la-hers[open] summary { color: var(--wax); border-bottom-color: var(--wax); }

.la-hers-do {
	display: block;
	margin: .9rem 0 0;
	padding: 0;
	font-family: var(--font-util);
	font-size: var(--t6);
	line-height: 1.5;
	color: var(--ink);
	background: none;
	border: 0;
	border-bottom: 1px solid var(--rule);
	cursor: pointer;
	text-align: left;
}

.la-hers-do:hover { color: var(--wax); border-bottom-color: var(--wax); }

.la-hers-note {
	margin: 1rem 0 0;
	font-family: var(--font-small);
	font-size: var(--t7);
	line-height: 1.65;
	color: var(--soft);
	text-wrap: pretty;
}

.js-float .la-way.float,
.js-float .la-beat.float,
.js-float .la-heart-said.float,
.js-float .la-heart-ask.float,
.js-float .la-moment.float,
.js-float .la-tier.float {
	transform: translateY(46px);
}

.js-float .la-way.float.is-in,
.js-float .la-beat.float.is-in,
.js-float .la-heart-said.float.is-in,
.js-float .la-heart-ask.float.is-in,
.js-float .la-moment.float.is-in,
.js-float .la-tier.float.is-in {
	transform: none;
}

.js-float .la-heart-said.float:nth-of-type(2) { transition-delay: 140ms; }
.js-float .la-heart-said.float:nth-of-type(3) { transition-delay: 280ms; }
.js-float .la-beat.float:nth-of-type(2)       { transition-delay: 160ms; }
.js-float .la-beat.float:nth-of-type(3)       { transition-delay: 320ms; }

.la-voice {
	margin: 3.4rem 0 0;
	padding-top: 2.4rem;
	border-top: 1px solid rgba(42,74,69,.14);
	text-align: center;
}

.la-voice-or {
	margin: 0 0 1.5rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-voice-begin,
.la-voice-stop,
.la-voice-again {
	display: inline-flex;
	align-items: center;
	gap: .7rem;
	padding: .8em 1.9em;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--ink);
	background: none;
	border: 1px solid var(--rule);
	border-radius: 999px;
	cursor: pointer;
}

.la-voice-begin:hover,
.la-voice-again:hover { border-color: var(--wax); color: var(--wax); }

.la-voice-begin:focus-visible,
.la-voice-stop:focus-visible,
.la-voice-again:focus-visible { outline: 2px solid var(--wax); outline-offset: 4px; }

.la-voice-mark {
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: var(--wax);
}

.la-voice-mark.is-on { animation: la-listening 1600ms ease-in-out infinite; }

@keyframes la-listening {
	0%, 100% { transform: scale(1); }
	50%      { transform: scale(1.34); }
}

.la-voice-clock {
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .12em;
	color: var(--soft);
}

.la-voice-stop,
.la-voice-again,
.la-voice-heard { display: none; }

.la-voice.is-speaking .la-voice-begin { display: none; }
.la-voice.is-speaking .la-voice-stop  { display: inline-flex; }

.la-voice.is-heard .la-voice-begin { display: none; }
.la-voice.is-heard .la-voice-heard { display: block; margin: 1.5rem auto 1.2rem; width: 100%; max-width: 22rem; }
.la-voice.is-heard .la-voice-again { display: inline-flex; }

.la-voice-say {
	margin: 1.3rem 0 0;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.4;
	color: var(--wax);
	min-height: 1.4em;
}

.la-voice-note {
	margin: 1rem auto 0;
	max-width: 30ch;
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.7;
	color: var(--soft);
	text-wrap: pretty;
}

.la-voice-cannot .la-voice-begin { display: none; }

.la-voice-cannot::after {
	content: "Your writing is here, and it is every bit as much yours.";
	display: block;
	font-family: var(--font-util);
	font-size: var(--t6);
	line-height: 1.7;
	color: var(--soft);
}

.la-heard-in {
	margin: 0 0 2.2rem;
	padding: 1.6rem 0;
	border-top: 1px solid rgba(42,74,69,.14);
	border-bottom: 1px solid rgba(42,74,69,.14);
	text-align: center;
}

.la-heard-say {
	margin: 0 0 1rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-heard-play { width: 100%; max-width: 22rem; }

.la-voice-said {
	max-width: var(--measure);
	margin: 0 auto;
	padding: 6rem 1.6rem 5rem;
	text-align: center;
}

.la-voice-said-head {
	margin: 0 0 .5rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t2);
	line-height: 1.16;
	color: var(--ink);
	text-wrap: balance;
}

.la-voice-said-turn {
	margin: 0 0 3.2rem;
	font-family: var(--font-head);
	font-size: var(--t2);
	line-height: 1.16;
	color: var(--wax);
	text-wrap: balance;
}

.la-voice-said-line {
	margin: 0 auto 1.4rem;
	max-width: 22ch;
	font-family: var(--font-util);
	font-size: var(--t4);
	line-height: 1.6;
	color: var(--ink);
}

.js-float .la-voice-said-line.float:nth-of-type(2) { transition-delay: 180ms; }
.js-float .la-voice-said-line.float:nth-of-type(3) { transition-delay: 360ms; }
.js-float .la-voice-said-foot.float { transition-delay: 560ms; }

.la-voice-said-foot {
	margin: 2.6rem auto 0;
	max-width: 28ch;
	font-family: var(--font-small);
	font-size: var(--t5);
	line-height: 1.72;
	color: var(--soft);
	text-wrap: pretty;
}

.la-moment .m-seal:not(.is-heart),
.la-way-seal,
.la-room-mark,
.la-row-seal:not(.is-given),
.la-voice-mark {
	position: relative;
	background: none;
	border-radius: 0;
	color: var(--wax);
}

.la-moment .m-seal:not(.is-heart)::before,
.la-way-seal::before,
.la-room-mark::before,
.la-row-seal:not(.is-given)::before,
.la-voice-mark::before {
	content: '';
	position: absolute;
	inset: 0;
	background: currentColor;
	-webkit-mask-image: url('../img/seal.svg');
	mask-image: url('../img/seal.svg');
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}

.la-scale-truths p::before {
	background: var(--wax);
	border-radius: 0;
	-webkit-mask-image: url('../img/seal.svg');
	mask-image: url('../img/seal.svg');
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.la-scale-truths p::before { width: 9px; height: 9px; top: .64em; }
.la-way-seal { width: 11px; height: 11px; }

.la-door-mark,
.la-star-seal,
.la-room-your-world .la-room-mark {
	background: url('../img/seal-wax.png?v=2') center / contain no-repeat !important;
	border-radius: 0;
}

.la-room-your-world .la-room-mark { width: 30px; height: 30px; }
.la-door-mark { width: 40px; height: 40px; }
.la-waiting .la-door-mark { width: 52px; height: 52px; }

.la-star:hover .la-star-seal,
.la-star:focus-visible .la-star-seal { transform: scale(1.1); }

@supports not (mask-image: url('#')) {
	
	.la-seal, .la-moment .m-seal, .la-way-seal, .la-room-mark,
	.la-row-seal, .la-voice-mark, .la-held-seal {
		background: url('../img/seal.svg') center / contain no-repeat !important;
	}
}

.la-seal {
	border-radius: 50% !important;
	background: currentColor;
}

.la-star.la-far .la-seal,
.la-afar .la-seal {
	-webkit-mask-image: none !important;
	mask-image: none !important;
}

.la-star.la-far .la-seal::before,
.la-afar .la-seal::before { content: none !important; }

.la-seal:not(.la-far) {
	background: #790506;
}

.la-road-name {
	display: block;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.18;
	text-wrap: balance;
}

.la-road-says {
	display: block;
	margin: .3rem auto 0;
	max-width: 30ch;
	font-family: var(--font-small);
	font-size: var(--t5);
	line-height: 1.6;
	color: var(--soft);
	text-wrap: pretty;
}

.la-roads a:hover .la-road-says,
.la-roads a:focus-visible .la-road-says { color: var(--ink); }

.la-panel-in { max-width: 27rem; }

@font-face { font-family: "LA Flowing";  src: url("../fonts/allura.woff2") format("woff2");              font-weight: 400; font-display: swap; }
@font-face { font-family: "LA Casual";   src: url("../fonts/marck-script.woff2") format("woff2");        font-weight: 400; font-display: swap; }
@font-face { font-family: "LA Real";     src: url("../fonts/nothing-you-could-do.woff2") format("woff2");font-weight: 400; font-display: swap; }
@font-face { font-family: "LA Spare";    src: url("../fonts/sacramento.woff2") format("woff2");          font-weight: 400; font-display: swap; }
@font-face { font-family: "LA Quick";    src: url("../fonts/caveat.woff2") format("woff2");              font-weight: 500; font-display: swap; }
@font-face { font-family: "LA Everyday"; src: url("../fonts/shadows-into-light.woff2") format("woff2");  font-weight: 400; font-display: swap; }
@font-face { font-family: "LA Precise";  src: url("../fonts/architects-daughter.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "LA Scribble"; src: url("../fonts/reenie-beanie.woff2") format("woff2");       font-weight: 400; font-display: swap; }
@font-face { font-family: "LA Tall";     src: url("../fonts/amatic-sc.woff2") format("woff2");           font-weight: 400; font-display: swap; }
@font-face { font-family: "LA Trailing"; src: url("../fonts/licorice.woff2") format("woff2");            font-weight: 400; font-display: swap; }
@font-face { font-family: "LA Sweeping"; src: url("../fonts/oooh-baby.woff2") format("woff2");           font-weight: 400; font-display: swap; }

.la-hands { max-width: 34rem; margin-inline: auto; }

.la-hands-over {
	margin: 0; text-align: center;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .38em; text-transform: uppercase; color: var(--wax);
}

.la-hands-head {
	margin: 1rem 0 0; text-align: center;
	font-family: var(--font-head);
	font-size: var(--t2); line-height: 1.14; color: var(--ink);
}

.la-hands-under {
	margin: 1rem auto 0; max-width: 30ch; text-align: center;
	font-family: var(--font-util);
	font-size: var(--t5); line-height: 1.7; color: var(--ink);
}

.la-hands-kept {
	margin: 1.6rem auto 0; padding: .9rem 1.2rem; max-width: 30ch;
	text-align: center; border: 1px solid rgba(208,23,48,.28); border-radius: 4px;
	font-family: var(--font-util); font-size: var(--t6); color: var(--wax);
}

.la-hands-label {
	display: block; margin: 3rem 0 .7rem;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .3em; text-transform: uppercase; color: #5A6569;
}

.la-hands-words {
	display: block; width: 100%; box-sizing: border-box;
	padding: 1.1rem 1.2rem;
	background: #FCFEFE; border: 1px solid rgba(42,74,69,.2); border-radius: 3px;
	font-family: var(--font-util);
	font-size: var(--t5); 
	line-height: 1.7; color: var(--ink); resize: vertical;
}

.la-hands-words:focus { outline: 0; border-color: var(--wax); }

.la-hands-whose {
	margin: .7rem 0 0;
	font-family: var(--font-util); font-size: var(--t6); line-height: 1.6; color: #5A6569;
}

.la-hand { margin: 3.4rem 0 0; padding-top: 2.6rem; border-top: 1px solid rgba(42,74,69,.14); }

.la-hand-named {
	margin: 0 0 1.4rem;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .3em; text-transform: uppercase; color: #5A6569;
}

.la-hand-page {
	padding: 1.6rem 1.4rem;
	background: linear-gradient(180deg, #FCFEFE, #F4F8F8);
	border: 1px solid rgba(42,74,69,.12); border-radius: 3px;
	color: var(--ink);
	white-space: pre-wrap; word-break: break-word;
}

.la-hand-flowing  .la-hand-page { font-family: "LA Flowing", "Snell Roundhand", cursive; font-size: 27px; line-height: 1.62; }
.la-hand-casual   .la-hand-page { font-family: "LA Casual", "Bradley Hand", cursive;     font-size: 23px; line-height: 1.72; }
.la-hand-real     .la-hand-page { font-family: "LA Real", "Bradley Hand", cursive;       font-size: 23px; line-height: 1.74; }
.la-hand-spare    .la-hand-page { font-family: "LA Spare", "Snell Roundhand", cursive;   font-size: 27px; line-height: 1.56; }
.la-hand-quick    .la-hand-page { font-family: "LA Quick", "Bradley Hand", cursive;      font-size: 25px; line-height: 1.62; font-weight: 500; }
.la-hand-everyday .la-hand-page { font-family: "LA Everyday", "Bradley Hand", cursive;   font-size: 22px; line-height: 1.72; }
.la-hand-precise  .la-hand-page { font-family: "LA Precise", "Chalkboard", sans-serif;   font-size: 19px; line-height: 1.84; }
.la-hand-scribble .la-hand-page { font-family: "LA Scribble", "Bradley Hand", cursive;   font-size: 27px; line-height: 1.5; }
.la-hand-tall     .la-hand-page { font-family: "LA Tall", "Chalkboard", sans-serif;      font-size: 30px; line-height: 1.4; }
.la-hand-trailing .la-hand-page { font-family: "LA Trailing", "Snell Roundhand", cursive;font-size: 42px; line-height: 1.28; }
.la-hand-sweeping .la-hand-page { font-family: "LA Sweeping", "Snell Roundhand", cursive;font-size: 26px; line-height: 1.6; }

.la-hand-said {
	margin: 1.3rem 0 0;
	padding: 0;
	border: 0;
	display: flex;
	gap: .5rem;
}

.la-said { flex: 1; }
.la-said input { position: absolute; opacity: 0; pointer-events: none; }

.la-said span {
	display: block;
	
	padding: 1.35em .4em;
	text-align: center;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .24em;
	text-transform: uppercase;
	color: #5A6569;
	border: 1px solid rgba(42,74,69,.2);
	border-radius: 999px;
	cursor: pointer;
	transition: background 200ms ease, color 200ms ease, border-color 200ms ease;
}

.la-said input:checked + span { color: var(--crown); background: var(--wax); border-color: var(--wax); }
.la-said input:focus-visible + span { outline: 2px solid var(--wax); outline-offset: 2px; }

.la-hand.is-marked .la-hand-named { color: var(--wax); }
.la-hand.said-no .la-hand-page { opacity: .5; }
.la-hand.said-yes { border-top-color: rgba(208,23,48,.4); }

.la-hand-count {
	display: inline-block;
	min-width: 2.2em;
	color: rgba(42,74,69,.4);
}

.la-hands-save { margin: 3.4rem 0 0; text-align: center; }

.la-hands-save button {
	display: inline-block;
	max-width: 100%;
	padding: .9em 2.4em;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .32em;
	text-transform: uppercase;
	line-height: 1.7;
	color: var(--crown);
	background: var(--wax);
	border: 0;
	border-radius: 999px;
	cursor: pointer;
}

.la-hands-save button:hover { background: #B7132A; }

.la-hands-quiet {
	margin: 3rem 0 0; text-align: center;
	font-family: var(--font-util); font-size: var(--t6); color: #5A6569;
}

.la-hands-tally {
	margin: 1.4rem 0 0;
	text-align: center;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .26em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-pile { margin: 3.6rem 0 0; }
.la-pile[hidden] { display: none; }

.la-pile-name {
	margin: 0 0 .4rem;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.2;
	color: var(--ink);
}

.la-pile-no .la-pile-name { color: #5A6569; }

.la-pile-no .la-hand-page { opacity: .55; }
.la-pile-yes .la-hand { border-top-color: rgba(208,23,48,.4); }

.la-hands-held {
	display: block;
	margin: 1rem 0 0;
	font-family: var(--font-util);
	font-size: var(--t6);
	color: #5A6569;
}

.la-part {
	margin: 7rem 0 2.6rem;
	padding-top: 2.4rem;
	border-top: 1px solid rgba(42,74,69,.13);
	font-family: var(--font-small);
	font-size: var(--t5);
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--ink);
}

.la-below > .la-part:first-of-type { margin-top: 5rem; }

.la-self { max-width: 34rem; margin-inline: auto; text-align: center; }

.la-self-over {
	margin: 0;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .38em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-self-word {
	margin: 2.4rem 0 0;
	font-family: var(--font-head);
	font-size: var(--t1);
	line-height: 1.1;
	letter-spacing: .06em;
	color: var(--ink);
}

.la-self-kanji { margin-left: .18em; font-size: .82em; color: var(--wax); }

.la-self-say {
	display: block;
	margin-top: .7rem;
	font-family: var(--font-util);
	font-size: var(--t6);
	font-style: italic;
	letter-spacing: .04em;
	color: #5A6569;
}

.la-self-is {
	margin: .5rem 0 0;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .26em;
	text-transform: uppercase;
	color: #5A6569;
}

.la-self-hers {
	margin: 2.6rem auto 0;
	max-width: 30ch;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.44;
	color: var(--ink);
	text-wrap: pretty;
}

.la-self-three {
	margin: 4rem 0 0;
	padding: 2.8rem 0;
	border-top: 1px solid rgba(42,74,69,.14);
	border-bottom: 1px solid rgba(42,74,69,.14);
}

.la-self-three p {
	margin: 0 0 1.5rem;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.36;
	color: var(--wax);
	text-wrap: balance;
}

.la-self-three p:last-child { margin-bottom: 0; }

.la-self-gift {
	margin: 2.4rem auto 0;
	max-width: 32ch;
	font-family: var(--font-util);
	font-size: var(--t6);
	line-height: 1.7;
	color: #7E8D91;
}

.la-self-in { margin: 3rem 0 0; }

.la-self-in a {
	display: inline-block;
	max-width: 100%;
	padding: .9em 2.4em;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .32em;
	text-transform: uppercase;
	line-height: 1.7;
	color: var(--crown);
	background: var(--wax);
	text-decoration: none;
	border-radius: 999px;
}

.la-self-in a:hover,
.la-self-in a:focus-visible { background: #B7132A; }

.la-press {
	--deep: 0;
	--wax-colour: #C4142E;
	--wax-silver: #DCE3E6;
	
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.4rem;
	margin: 3rem 0 0;
}

.la-press-on {
	position: relative;
	display: inline-grid;
	place-items: center;
	width: 148px;
	height: 148px;
	padding: 0;
	background: none;
	border: 0;
	border-radius: 50%;
	cursor: pointer;
	touch-action: none;          
	-webkit-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
}

.la-press-on:focus-visible { outline: 2px solid var(--wax); outline-offset: 6px; }

.la-press-pool {
	grid-area: 1 / 1;
	width: 148px;
	height: 148px;
	border-radius: 50%;
	background:
		radial-gradient(circle at 38% 32%,
			color-mix(in srgb, var(--wax-colour) 82%, #FFFFFF),
			var(--wax-colour) 54%,
			color-mix(in srgb, var(--wax-colour) 62%, #000000) 100%);
	transform: scale(calc(.34 + (.66 * var(--deep))));
	opacity: calc(.28 + (.72 * var(--deep)));
	box-shadow: 0 calc(2px + (6px * var(--deep))) calc(10px + (22px * var(--deep))) rgba(20, 4, 8, calc(.10 + (.2 * var(--deep))));
	transition: transform 260ms ease-out, opacity 260ms ease-out;
}

.la-press-on::before {
	content: "";
	grid-area: 1 / 1;
	width: 148px;
	height: 148px;
	border-radius: 50%;
	border: 1px dashed rgba(196, 20, 46, .34);
	opacity: calc(1 - var(--deep));
	transition: opacity 260ms ease-out;
}

.la-press-mark {
	grid-area: 1 / 1;
	font-family: var(--font-head);
	font-size: var(--t0);
	line-height: 1;
	letter-spacing: .04em;
	color: var(--wax-silver);
	text-shadow: 0 1px 0 rgba(0, 0, 0, .32);
	opacity: calc(var(--deep) * var(--deep));
	transform: scale(calc(.86 + (.14 * var(--deep))));
	pointer-events: none;
}

.la-press.la-hand-flowing  .la-press-mark { font-family: "LA Flowing", cursive; font-size: 52px; }
.la-press.la-hand-casual   .la-press-mark { font-family: "LA Casual", cursive; }
.la-press.la-hand-real     .la-press-mark { font-family: "LA Real", cursive; }
.la-press.la-hand-spare    .la-press-mark { font-family: "LA Spare", cursive; font-size: 52px; }
.la-press.la-hand-quick    .la-press-mark { font-family: "LA Quick", cursive; }
.la-press.la-hand-everyday .la-press-mark { font-family: "LA Everyday", cursive; }
.la-press.la-hand-precise  .la-press-mark { font-family: "LA Precise", sans-serif; font-size: 34px; }
.la-press.la-hand-scribble .la-press-mark { font-family: "LA Scribble", cursive; font-size: 48px; }
.la-press.la-hand-tall     .la-press-mark { font-family: "LA Tall", sans-serif; font-size: 50px; }
.la-press.la-hand-trailing .la-press-mark { font-family: "LA Trailing", cursive; font-size: 64px; }
.la-press.la-hand-sweeping .la-press-mark { font-family: "LA Sweeping", cursive; font-size: 50px; }

.la-press[data-colour="silver"] { --wax-colour: #B9C3C7; }
.la-press[data-colour="silver"] .la-press-mark {
	color: #8A979C;
	text-shadow: 0 1px 0 rgba(255, 255, 255, .55), 0 -1px 1px rgba(0, 0, 0, .3);
}

.la-press-word {
	margin: 0;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .32em;
	text-transform: uppercase;
	color: var(--wax);
	opacity: calc(1 - var(--deep));
	transition: opacity 200ms ease-out;
}

.la-press.is-set .la-press-word { opacity: 1; color: #5A6569; }

.la-press-says {
	margin: 0;
	max-width: 24ch;
	text-align: center;
	font-family: var(--font-util);
	font-size: var(--t6);
	line-height: 1.6;
	color: #5A6569;
}

.la-press.is-set .la-press-pool {
	transform: scale(1);
	opacity: 1;
	box-shadow: 0 6px 26px rgba(20, 4, 8, .3), inset 0 0 0 1px rgba(255, 255, 255, .14);
}

.la-arriving {
	--theirs: #C4142E;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2.4rem;
	min-height: 62svh;
	padding: 3rem 0 2rem;
}

.la-faraway {
	position: absolute;
	inset: 106px 0 0;
	overflow: hidden;
	pointer-events: none;
}

.la-afar {
	position: absolute;
	border-radius: 50%;
	background: var(--theirs);
	opacity: .5;
	animation: la-afar-breathe 7s ease-in-out infinite both;
}

.la-afar.is-silver { background: #B9C6CB; opacity: .62; }

@keyframes la-afar-breathe {
	0%, 100% { opacity: .28; }
	50%      { opacity: .72; }
}

.la-wax.la-coming {
	animation: la-coming-in 2600ms cubic-bezier(.22,.68,.28,1) both;
}

@keyframes la-coming-in {
	0%   { opacity: 0; transform: scale(.06); filter: blur(1.5px); }
	38%  { opacity: 1; }
	100% { opacity: 1; transform: scale(1); filter: blur(0); }
}

.la-wax-name {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1;
	color: #E6EDEF;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .34);
	pointer-events: none;
	animation: la-name-arrives 1200ms ease-out 1500ms both;
}

@keyframes la-name-arrives { from { opacity: 0 } to { opacity: 1 } }

.la-arriving.la-hand-flowing  .la-wax-name { font-family: "LA Flowing", cursive; }
.la-arriving.la-hand-casual   .la-wax-name { font-family: "LA Casual", cursive; }
.la-arriving.la-hand-real     .la-wax-name { font-family: "LA Real", cursive; }
.la-arriving.la-hand-spare    .la-wax-name { font-family: "LA Spare", cursive; }
.la-arriving.la-hand-quick    .la-wax-name { font-family: "LA Quick", cursive; }
.la-arriving.la-hand-everyday .la-wax-name { font-family: "LA Everyday", cursive; }
.la-arriving.la-hand-precise  .la-wax-name { font-family: "LA Precise", sans-serif; }
.la-arriving.la-hand-scribble .la-wax-name { font-family: "LA Scribble", cursive; }
.la-arriving.la-hand-tall     .la-wax-name { font-family: "LA Tall", sans-serif; }
.la-arriving.la-hand-trailing .la-wax-name { font-family: "LA Trailing", cursive; }
.la-arriving.la-hand-sweeping .la-wax-name { font-family: "LA Sweeping", cursive; }

.la-arriving .la-breaking-say {
	margin: 0;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: #5A6569;
	animation: la-name-arrives 1200ms ease-out 2000ms both;
}

.la-arriving .la-wax-whole,
.la-arriving .la-wax-left,
.la-arriving .la-wax-right {
	background:
		radial-gradient(circle at 36% 30%,
			color-mix(in srgb, var(--theirs) 84%, #FFFFFF),
			var(--theirs) 52%,
			color-mix(in srgb, var(--theirs) 58%, #000000) 100%);
	border-radius: 50%;
	box-shadow: 0 6px 24px rgba(20, 4, 8, .26), inset 0 0 0 1px rgba(255, 255, 255, .12);
}

@supports not (color: color-mix(in srgb, red 50%, white)) {
	.la-arriving .la-wax-whole,
	.la-arriving .la-wax-left,
	.la-arriving .la-wax-right { background: var(--theirs); }
}

.la-arriving .la-wax-whole,
.la-arriving .la-wax-left,
.la-arriving .la-wax-right {
	-webkit-mask-image: url('../img/seal.svg');
	mask-image: url('../img/seal.svg');
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	border-radius: 0;
	box-shadow: none;
}

.la-arriving .la-wax-name {
	padding: 0 16px;
	line-height: 1.1;
	white-space: nowrap;
	font-size: var(--name-size, 26px);
	text-shadow: 0 1px 3px rgba(0, 0, 0, .42);
}

.la-arriving.la-hand-flowing  .la-wax-name,
.la-arriving.la-hand-spare    .la-wax-name,
.la-arriving.la-hand-sweeping .la-wax-name {; }
.la-arriving.la-hand-trailing .la-wax-name {; }
.la-arriving.la-hand-tall     .la-wax-name {; }

.la-below .la-says,

.la-below .la-beat,
.la-below q { font-size: var(--t2); line-height: 1.16; }

.la-below .la-against,
.la-below .la-invite-head,
.la-below .la-voice-said-head,
.la-below .la-voice-said-turn,
.la-below .la-heart-said,
.la-below .la-heart-ask,
.la-below .la-line { font-size: var(--t3); line-height: 1.28; }

.la-below .la-ways-foot,
.la-below .la-voice-said-line,
.la-below .la-invite-line,
.la-below .la-tier-who,
.la-below .o-said,
.la-below .o-her,
.la-below .la-imagine p,
.la-below .la-way p { font-size: var(--t5); line-height: 1.68; }

.la-below .la-beyond,
.la-below .la-voice-said-foot,
.la-below .la-heart-lead { font-size: var(--t5); line-height: 1.7; }

.la-below .la-part,
.la-below .la-name,
.la-below .la-tier-name,
.la-below .la-way-when,
.la-under-the-stars .la-name,
.la-below .la-tier-price small,
.la-below .o-word span { font-size: var(--t7); }

.la-below b,
.la-below strong { font-size: inherit; line-height: inherit; }

.la-away {
	max-width: 30rem;
	margin-inline: auto;
	padding-block: clamp(4rem, 18vh, 9rem);
	text-align: center;
}

.la-away-mark {
	width: 44px;
	height: 44px;
	margin: 0 auto 2.4rem;
	background: url('../img/seal-wax.png?v=2') center / 44px 44px no-repeat;
}

.la-away-head {
	margin: 0;
	font-family: var(--font-head);
	font-size: var(--t1);
	line-height: 1.14;
	color: var(--ink);
	text-wrap: balance;
}

.la-away-line {
	margin: 1.6rem auto 0;
	max-width: 26ch;
	font-family: var(--font-util);
	font-size: var(--t5);
	line-height: 1.68;
	color: var(--ink);
}

.la-away-in { margin: 3rem 0 0; }

.la-away-in a {
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .3em;
	text-transform: uppercase;
	color: var(--wax);
	text-decoration: none;
	border-bottom: 1px solid rgba(208,23,48,.34);
	padding-bottom: .4em;
}

.la-away-in a:hover,
.la-away-in a:focus-visible { border-bottom-color: var(--wax); }

.la-room { position: relative; }

.la-quill {
	position: absolute;
	top: 0;
	left: 0;
	width: 56px;
	height: 56px;
	
	margin: -52px 0 0 -4px;
	opacity: 0;
	pointer-events: none;
	transform-origin: 12% 88%;
	transition: transform 340ms cubic-bezier(.22,.68,.28,1), opacity 420ms ease;
	will-change: transform;
	z-index: 3;
}

.la-room.is-writing .la-quill { opacity: .92; }

.la-quill.is-moving { animation: la-quill-rock 260ms ease-in-out; }

@keyframes la-quill-rock {
	0%   { rotate: 0deg; }
	40%  { rotate: -2.4deg; }
	100% { rotate: 0deg; }
}

.la-star {
	position: absolute;
	display: block;
}

.la-star .la-seal {
	display: block;
	position: static;
	border-radius: 50%;
}

.la-star .la-when {
	position: absolute;
	left: 50%;
	top: calc(100% + 7px);
	transform: translateX(-50%);
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .16em;
	color: #5A6569;
	white-space: nowrap;
	opacity: 0;
	animation: la-when 900ms ease both;
	animation-delay: inherit;
}

.la-star.at-right .la-when { left: auto; right: 0; transform: none; text-align: right; }

.la-star.at-left  .la-when { left: 50%; right: auto; transform: none; text-align: left; }

.la-star.la-comes {
	opacity: 1;
	animation: la-grow 1900ms cubic-bezier(.22,.68,.28,1) both;
}

.la-star.la-comes .la-seal {
	
	animation-delay: inherit;
}

.la-star.la-comes:nth-of-type(3n)   .la-seal { animation-duration: 1900ms, 7.3s; }
.la-star.la-comes:nth-of-type(4n)   .la-seal { animation-duration: 1900ms, 9.1s; }
.la-star.la-comes:nth-of-type(5n+2) .la-seal { animation-duration: 1900ms, 11.7s; }
.la-star.la-comes:nth-of-type(7n+3) .la-seal { animation-duration: 1900ms, 14.3s; }

.la-star .la-seal {
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .42),
		inset 0 -1px 0 rgba(90, 6, 20, .40),
		inset 1px 0 0 rgba(255, 255, 255, .16),
		inset -1px 0 0 rgba(90, 6, 20, .22);
	background-image:
		var(--satin),
		linear-gradient(var(--wax), var(--wax));
	background-size: 100% 260%, 100% 100%;
	background-position: 0 0, 0 0;
	background-repeat: no-repeat;
}

.la-star.la-comes:not(.la-far) .la-seal,
.la-star.la-soon .la-seal {
	background-image:
		linear-gradient(115deg,
			rgba(255,255,255,0) 34%,
			rgba(255,255,255,.62) 50%,
			rgba(255,255,255,0) 66%),
		var(--satin),
		url("../img/seal-mark.png");
	background-size: 260% 100%, 100% 260%, 100% 100%;
	background-repeat: no-repeat;
	

	animation-delay: inherit, 0s;
}

.la-star.la-soon:nth-of-type(1)  .la-seal { animation-delay: inherit, 0s; }
.la-star.la-soon:nth-of-type(2)  .la-seal { animation-delay: inherit, -2.2s; }
.la-star.la-soon:nth-of-type(3)  .la-seal { animation-delay: inherit, -4.4s; }
.la-star.la-soon:nth-of-type(4)  .la-seal { animation-delay: inherit, -6.6s; }
.la-star.la-soon:nth-of-type(5)  .la-seal { animation-delay: inherit, -8.8s; }
.la-star.la-soon:nth-of-type(6)  .la-seal { animation-delay: inherit, -11s; }
.la-star.la-soon:nth-of-type(7)  .la-seal { animation-delay: inherit, -13.2s; }
.la-star.la-soon:nth-of-type(8)  .la-seal { animation-delay: inherit, -15.4s; }
.la-star.la-soon:nth-of-type(9)  .la-seal { animation-delay: inherit, -17.6s; }
.la-star.la-soon:nth-of-type(10) .la-seal { animation-delay: inherit, -19.8s; }

.la-star.la-soon:nth-of-type(3n)   .la-seal { transform: rotate(-9deg); }
.la-star.la-soon:nth-of-type(4n+1) .la-seal { transform: rotate(14deg); }
.la-star.la-soon:nth-of-type(5n+2) .la-seal { transform: rotate(-21deg); }
.la-star.la-soon:nth-of-type(7n+3) .la-seal { transform: rotate(6deg); }

.la-star.la-soon .la-seal { position: relative; }

.la-star.la-far .la-seal {
	box-shadow: none;
	animation:
		la-grow 1900ms cubic-bezier(.22,.68,.28,1) both,
		la-twinkles 17s ease-in-out infinite both;   
	animation-delay: inherit;
}

.la-star.is-going {
	animation: la-goes-gently 4200ms cubic-bezier(.36,.03,.4,1) both;
}

@keyframes la-goes-gently {
	0%   { opacity: 1; transform: translate(0, 0) scale(1); filter: brightness(1); }
	14%  { transform: translate(0, 0) scale(1.14); filter: brightness(1.3); }
	100% {
		opacity: 0;
		transform: translate(calc(var(--away, 1) * 40px), -96px) scale(.82);
		filter: brightness(1.1);
	}
}

.la-star.la-arriving-late {
	opacity: 0;
	transform: translateY(9px) scale(.86);
}

.la-star.la-arriving-late.is-here {
	opacity: 1;
	transform: none;
	
	transition:
		opacity 3400ms ease,
		transform 3400ms cubic-bezier(.22,.68,.28,1);
}
.la-star.la-arriving-late .la-seal {
	animation: la-twinkles 15s ease-in-out infinite both;
}
.la-star.la-arriving-late .la-when { opacity: 1; animation: none; }

.la-below .o-said,
.la-below .o-her {
	margin-inline: auto;
	max-width: 30ch;
	text-align: center;
}

.la-under-the-stars .la-name {
	color: var(--wax);
	font-size: var(--t6);
	letter-spacing: .34em;
}

.la-under-the-stars .la-says {
	max-width: 15ch;
}

.la-crest {
	max-width: min(100%, 1040px);
	margin: 3.4rem auto 0;
}

.la-crest picture,
.la-crest img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 6px;
	opacity: 1;
}

.la-under-the-stars .la-says { padding-right: 3.4rem; }

.la-vault {
	height: 100dvh;
	min-height: 100dvh;
}

.la-under-the-stars {
	padding-block: 3.4rem 1rem;
}

.la-under-the-stars .la-says {
	max-width: 18ch;
	margin-inline: auto;
	padding-right: 0;
	
	font-size: clamp(34px, 9.6vw, 58px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.005em;
}

.la-crest { max-width: 100%; margin-top: 2rem; }

.la-below .la-against,
.la-below .la-line {
	max-width: 22ch;
	margin-inline: auto;
}

@media (max-width: 520px) {
	.la-below .la-against,
	.la-below .la-line { font-size: var(--t4); max-width: 26ch; }
}

.la-crest {
	max-width: 100% !important;
	width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	margin-top: 2rem !important;
}

.la-crest picture,
.la-crest img { border-radius: 0 !important; }

.la-crest picture,
.la-crest img {
	-webkit-mask-image: none;
	mask-image: none;
	opacity: 1;
}

.la-tier-in { display: block; margin-top: 1rem; }

.la-tier-in a {
	font-family: var(--font-util);
	font-size: var(--t6);
	color: var(--wax);
	text-decoration: none;
	border-bottom: 1px solid rgba(208,23,48,.34);
	padding-bottom: .35em;
}

.la-tier-in a:hover,
.la-tier-in a:focus-visible { border-bottom-color: var(--wax); }

.la-below *,
.la-under-the-stars * {
	text-align: center;
}

.la-below .la-way,
.la-below .la-way p,
.la-below .la-way-when {
	text-align: center;
}

.la-scale-truths p { text-align: left; }

.la-under-the-stars { padding-bottom: 3.4rem; }

.la-way {
	display: block;
	text-align: center;
	
	padding: 1.35rem 0;
	margin-bottom: 0;

	
	break-inside: avoid;
	-webkit-column-break-inside: avoid;
}

.la-way-seal {
	display: block;
	margin: 0 auto .9rem;
	width: 7px;
	height: 7px;
}

.la-way p { margin: 0 0 .35rem; font-size: var(--t3); line-height: 1.34; }

.la-way .la-way-when {
	margin: 0;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .22em;
	text-transform: none;
	color: var(--ink);
	opacity: .74;
}

@media (min-width: 900px) {
	.la-below { max-width: min(96vw, 1240px) !important; }

	
	.la-below .la-beat,
	.la-below .la-against,
	.la-below .la-invite-line,
	.la-below .la-voice-said-line,
	.la-below .o-said,
	.la-below .o-her,
	.la-below .la-imagine p,
	.la-below .la-heart-said,
	.la-below .la-end p { max-width: 34ch; margin-inline: auto; }

	.la-ways { max-width: 100%; columns: 2; column-gap: 4rem; }
	
	.la-tiers { max-width: 40ch; margin-inline: auto; }
}

@media (min-width: 1180px) {
	.la-ways { columns: 3; column-gap: 4.4rem; }
}

@media (max-width: 720px) {
	.la-crest {
		max-width: 100% !important;
		width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
	}
	.la-crest picture,
	.la-crest img { border-radius: 0; }
}

.js-arriving .la-arrives {
	opacity: 0;
	transform: translateY(14px);
	transition:
		opacity 900ms cubic-bezier(.22,.61,.36,1),
		transform 900ms cubic-bezier(.22,.61,.36,1);
	transition-delay: calc(var(--step, 0) * 110ms);
}

.js-arriving .la-arrives.is-here {
	opacity: 1;
	transform: none;
}

.la-crest { margin-bottom: 0; }
.la-under-the-stars { padding-bottom: 1.4rem; }
.la-below > .la-part:first-of-type { margin-top: 3.2rem; }

.la-bureau {
	max-width: 34rem;
	margin-inline: auto;
	text-align: center;
}

.la-desk-part {
	padding: 3.2rem 0 2.8rem;
	border-top: 1px solid rgba(42, 74, 69, .13);
}

.la-desk-part:first-child { border-top: 0; padding-top: 1.4rem; }

.la-desk-name {
	margin: 0 0 .5rem;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t3);
	line-height: 1.16;
	color: var(--ink);
}

.la-desk-under {
	margin: 0 auto;
	max-width: 30ch;
	font-size: var(--t5);
	line-height: 1.62;
	color: var(--soft);
}

.la-desk-waiting {
	margin: 1.4rem auto 0;
	max-width: 30ch;
	font-size: var(--t5);
	line-height: 1.62;
	color: var(--soft);
	opacity: .72;
}

.la-slots {
	margin: 1.8rem 0 0;
	padding: 0;
	list-style: none;
}

.la-slot { border-top: 1px solid rgba(42, 74, 69, .1); }
.la-slot:first-child { border-top: 0; }

.la-slot-in {
	display: block;
	padding: 1.15rem .4rem;
	text-decoration: none;
	color: inherit;
	transition: background-color 320ms ease;
}

.la-slot-in:hover,
.la-slot-in:focus-visible { background-color: rgba(208, 23, 48, .045); }

.la-slot-seal {
	display: block;
	width: 11px;
	height: 11px;
	margin: 0 auto .55rem;
	border-radius: 50%;
	background: #C4142E;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .42),
		inset 0 -1px 0 rgba(90, 6, 20, .40);
}

.la-slot-seal.is-given {
	background: url('../img/seal-open.svg') center / 13px 13px no-repeat;
	box-shadow: none;
}

.la-slot-said {
	display: block;
	font-size: var(--t4);
	line-height: 1.3;
}

.la-slot-day {
	display: block;
	margin-top: .3rem;
	font: 400 var(--t7)/1.4 var(--font-small);
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-bureau-shut {
	max-width: 26ch;
	margin: 4rem auto;
	text-align: center;
	font-size: var(--t3);
	font-family: var(--font-head);
	color: var(--ink);
}

@media (min-width: 900px) {
	.la-bureau { max-width: 42rem; }
}

.la-desk-pigeonholes .la-slots {
	display: block;

	
}

.la-desk-pigeonholes .la-slot {
	border-top: 0;
	border-radius: 1px;
	background: #F2EFEA;
	box-shadow:
		
		0 0 0 3px #C2B8AD,
		0 1px 2px 3px rgba(42, 74, 69, .14),
		
		inset 0 7px 9px -6px rgba(52, 38, 30, .55),
		inset 0 -1px 0 rgba(255, 255, 255, .75),
		inset 2px 0 4px -3px rgba(52, 38, 30, .30),
		inset -2px 0 4px -3px rgba(52, 38, 30, .30);
}

.la-desk-pigeonholes .la-slot-in {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 96px;
	padding: 1.1rem .6rem .95rem;
	border-radius: 1px;
}

.la-desk-pigeonholes .la-slot-said { font-size: var(--t5); }

.la-desk-tray .la-slots {
	max-width: 26rem;
	margin-inline: auto;
	padding: 6px;
	border-radius: 2px;

	
	background: #EFECE6;
	box-shadow:
		inset 0 3px 5px -3px rgba(52, 38, 30, .34),
		inset 0 -1px 0 rgba(255, 255, 255, .7);
}

.la-desk-tray .la-slot {
	border-top: 0;
	margin-top: -8px;
	border-radius: 2px;
	background: #FCFAF7;
	box-shadow: 0 2px 4px -2px rgba(52, 38, 30, .30);
}

.la-desk-tray .la-slot:first-child { margin-top: 0; }

.la-desk-treasure {
	margin-top: .6rem;
	padding: 3.6rem 1.15rem 3.4rem;
	border-top: 0;
	border-radius: 4px;
	
	background:
		linear-gradient(180deg, rgba(208, 23, 48, .07), rgba(208, 23, 48, 0) 58%),
		#F6F1EC;
	box-shadow:
		inset 0 16px 20px -14px rgba(52, 26, 24, .60),
		inset 0 -2px 0 rgba(255, 255, 255, .7),
		inset 4px 0 10px -8px rgba(52, 26, 24, .40),
		inset -4px 0 10px -8px rgba(52, 26, 24, .40);
}

.la-desk-drawer .la-slots {
	max-width: 26rem;
	margin-inline: auto;
	padding: 10px 8px 12px;
	border-radius: 2px;
	background: #F1EEE8;
	box-shadow:
		inset 0 9px 12px -8px rgba(52, 38, 30, .48),
		inset 0 -3px 0 rgba(255, 255, 255, .85),
		0 1px 0 rgba(42, 74, 69, .10);
}

.la-desk-drawer .la-slot { border-top-color: rgba(42, 74, 69, .14); }

.la-desk-treasure .la-desk-name { font-size: var(--t2); }
.la-desk-treasure .la-slot-said { font-size: var(--t3); }
.la-desk-treasure .la-slot-in   { padding-block: 1.5rem; }

.la-rack { margin: 1.8rem 0 0; }

.la-rack-art,
.la-rack-art img {
	display: block;
	width: 100%;
	height: auto;
}

@media (min-width: 820px) {

	
	.la-rack { position: relative; }

	.la-desk-pigeonholes .la-slots {
		position: absolute;
		inset: 0;
		display: block;
		gap: 0;
		padding: 0;
	}

	
	.la-desk-pigeonholes .la-slot {
		position: absolute;
		width: 10.2%;
		height: 9%;
		margin: 0;
		border-radius: 0;
		background: none;
		box-shadow: none;
	}

	.la-desk-pigeonholes .la-slot:nth-child(-n+6)  { top: 14.5%; }
	.la-desk-pigeonholes .la-slot:nth-child(n+7)   { top: 29.9%; }

	.la-desk-pigeonholes .la-slot:nth-child(6n+1) { left: 16.9%; }
	.la-desk-pigeonholes .la-slot:nth-child(6n+2) { left: 27.9%; }
	.la-desk-pigeonholes .la-slot:nth-child(6n+3) { left: 38.9%; }
	.la-desk-pigeonholes .la-slot:nth-child(6n+4) { left: 50.0%; }
	.la-desk-pigeonholes .la-slot:nth-child(6n+5) { left: 61.0%; }
	.la-desk-pigeonholes .la-slot:nth-child(6n+6) { left: 72.0%; }

	.la-desk-pigeonholes .la-slot-in {
		display: flex;
		flex-direction: column;
		justify-content: center;
		min-height: 0;
		height: 100%;
		padding: 0 .2rem;
		border-radius: 0;
	}

	
	.la-desk-pigeonholes .la-slot-said {
		font-size: clamp(11px, 1.15vw, 15px);
		line-height: 1.25;
		color: #FCEFEF;
	}

	.la-desk-pigeonholes .la-slot-day {
		margin-top: .12rem;
		font-size: clamp(8px, .82vw, 11px);
		letter-spacing: .12em;
		color: rgba(255, 236, 236, .78);
	}

	.la-desk-pigeonholes .la-slot-seal {
		width: 7px;
		height: 7px;
		margin-bottom: .22rem;
		background: #FBF3F2;
		box-shadow: none;
	}

	.la-desk-pigeonholes .la-slot-in:hover,
	.la-desk-pigeonholes .la-slot-in:focus-visible {
		background-color: rgba(255, 255, 255, .10);
	}

	
	.la-desk-pigeonholes .la-slot:nth-child(n+13) { display: none; }
}

.la-page-in:has(> .la-bureau),
.la-page-in:has(> .la-room),
.la-page-in:has(> .la-world),
.la-page-in:has(> .la-doorstep),
.la-page-in:has(> .la-doorway),
.la-page-in:has(> .la-vault-in),
.la-page-in:has(> .la-self),
.la-page-in:has(> .la-hands),
.la-page-in:has(> .la-away),
.la-page-in:has(> .la-scale) {
	max-width: min(94vw, 1180px);
}

.la-page-in:has(> .la-room) .la-say,
.la-page-in:has(> .la-room) .la-said,
.la-page-in:has(> .la-world) p,
.la-page-in:has(> .la-doorstep) p,
.la-page-in:has(> .la-doorway) p,
.la-page-in:has(> .la-away) p,
.la-page-in:has(> .la-self) > p,
.la-page-in:has(> .la-scale) > .la-scale > p {
	max-width: 34rem;
	margin-inline: auto;
}

.la-below > *,
.la-below .la-part,
.la-below .la-way,
.la-below .la-moment,
.la-below .la-tier,
.la-below .la-beat,
.la-below .la-heart-said,
.la-below .la-heart-ask,
.la-below .la-line,
.la-below .la-against,
.la-below .la-invite-head,
.la-below .la-invite-line,
.la-below .la-voice-said-head,
.la-below .la-end,
.la-below .la-beyond,
.la-below .la-tiers {
	max-width: 28rem !important;
	margin-inline: auto !important;
}

@media (min-width: 900px) {
	.la-below > *,
	.la-below .la-part,
	.la-below .la-way,
	.la-below .la-moment,
	.la-below .la-tier,
	.la-below .la-tiers {
		max-width: 34rem !important;
	}

	.la-ways { columns: auto !important; }
}

.js-arriving .la-arrives {
	
	transition:
		opacity 3000ms cubic-bezier(.22,.61,.36,1),
		transform 3000ms cubic-bezier(.22,.61,.36,1);
	transition-delay: calc(var(--step, 0) * 460ms);
}

.is-past-the-moment .la-under-the-stars .la-last,
.is-past-the-moment .la-under-the-stars .la-says.la-last {
	animation-delay: 0ms;
	animation-duration: 1800ms;
}

.la-desk-pigeonholes .la-slots,
.la-desk-tray .la-slots,
.la-desk-drawer .la-slots,
.la-desk-treasure .la-slots,
.la-desk-flown .la-slots {
	display: block !important;
	max-width: 30rem;
	margin-inline: auto;
}

.la-bureau .la-desk-part:not(.la-desk-pigeonholes) .la-slot {
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 10px 0 0 !important;
	left: auto !important;
	top: auto !important;
}

.la-bureau .la-desk-part:not(.la-desk-pigeonholes) .la-slot-in {
	min-height: 0 !important;
	height: auto !important;
	padding: 1.5rem 1rem !important;
}

.la-bureau .la-desk-part:not(.la-desk-pigeonholes) .la-slot:nth-child(n+13) { display: block !important; }

.la-star.la-far .la-seal {
	position: relative;
	animation:
		la-grow 1900ms cubic-bezier(.22,.68,.28,1) both,
		la-twin-a 12.5s ease-in-out infinite both;
	animation-delay: inherit, 0s;
}

.la-star .la-seal { position: relative; }

	87%           { opacity: 1;   scale: 1.3; }

.la-scale-what {
	max-width: 34rem;
	margin: 2.6rem auto 3.4rem;
	text-align: center;
}

.la-scale-what p {
	margin: 0 0 1.1rem;
	font-size: var(--t5);
	line-height: 1.7;
	color: var(--ink);
}

.la-scale-what-lead {
	font-family: var(--font-head);
	font-size: var(--t3) !important;
	line-height: 1.3 !important;
	margin-bottom: 1.6rem !important;
}

.la-scale-what p:last-child { color: var(--soft); }

.la-star .la-seal {
	
	opacity: calc(.34 + var(--near, .5) * .66);
}

	91%           { opacity: 1; scale: 1; }

.la-star .la-seal { overflow: visible; }

.la-foot-roads {
	display: flex;
	flex-wrap: wrap;
	gap: .4rem 1.6rem;
	justify-content: center;
	padding: 2.6rem 1.15rem 3.4rem;
	border-top: 1px solid rgba(42, 74, 69, .12);
}

.la-foot-roads a {
	font: 400 var(--t7)/1.6 var(--font-small);
	letter-spacing: .12em;
	color: var(--soft);
	text-decoration: none;
}

.la-foot-roads a:hover,
.la-foot-roads a:focus-visible { color: var(--wax); }

.la-home-mark {
	position: fixed;
	top: 1.6rem;
	left: 1.15rem;
	z-index: 60;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--ink);
	text-decoration: none;
	padding: .5rem .6rem;
	margin: -.5rem -.6rem;
	border-radius: 3px;
	background: radial-gradient(ellipse at center,
		var(--ground) 62%,
		color-mix(in srgb, var(--ground) 70%, transparent) 84%,
		transparent 100%);
}

.la-home-mark:hover,
.la-home-mark:focus-visible { color: var(--wax); }

.js-arriving .la-arrives.la-arrives-slowly {
	
	transform: translateY(26px);
	transition:
		opacity 3600ms cubic-bezier(.22,.61,.36,1),
		transform 3600ms cubic-bezier(.22,.61,.36,1);
	transition-delay: 900ms !important;
	transition-delay: 0ms;
}

.la-star.la-comes .la-seal {
	animation:
		la-grow 1900ms cubic-bezier(.22,.68,.28,1) both,
		la-twinkles calc(13s + var(--near, .5) * 7s) ease-in-out infinite both;
	animation-delay: inherit, 0s;
}

@keyframes la-twinkles {
	0%, 100% { filter: brightness(1);    scale: 1; }
	28%      { filter: brightness(1.22); scale: 1.05; }
	54%      { filter: brightness(.92);  scale: .97; }
	76%      { filter: brightness(1.14); scale: 1.03; }
}

.la-star.la-comes:nth-of-type(3n)   .la-seal { animation-delay: inherit, -3.7s; }
.la-star.la-comes:nth-of-type(4n+1) .la-seal { animation-delay: inherit, -8.2s; }
.la-star.la-comes:nth-of-type(5n+2) .la-seal { animation-delay: inherit, -12.6s; }
.la-star.la-comes:nth-of-type(7n+3) .la-seal { animation-delay: inherit, -16.1s; }

.js-arriving .la-arrives:not(.is-here) {
	opacity: 0;
}

.js-arriving .la-arrives.is-here {
	opacity: 1;
}

.la-below .la-invite-line {
	font-size: var(--t4) !important;
	line-height: 1.62 !important;
	color: var(--ink) !important;
}

.la-below .la-part {
	color: var(--wax) !important;
}

.la-below .la-way-when {
	color: var(--wax) !important;
	text-transform: capitalize !important;
}

.la-below .la-against {
	text-transform: uppercase !important;
	font-style: normal !important;
	letter-spacing: .1em !important;
	line-height: 1.34 !important;
}

.la-below .la-way-when {
	font-variant-caps: all-small-caps !important;
	text-transform: none !important;
	font-size: var(--t4) !important;
	letter-spacing: .12em !important;
}

.la-inks {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	margin: 1.6rem 0 0;
	padding: 0;
	border: 0;
}

.la-inks-say {
	float: left;
	width: 100%;
	margin: 0 0 .9rem;
	padding: 0;
	text-align: center;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-ink {
	position: relative;
	display: block;
	cursor: pointer;
	line-height: 0;
}

.la-ink input {
	position: absolute;
	opacity: 0;
	inset: 0;
	margin: 0;
	cursor: pointer;
}

.la-ink-name {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

.la-ink-mark {
	display: block;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .34),
		inset 0 -1px 0 rgba(0, 0, 0, .22);
	transition: transform 320ms var(--float-ease), box-shadow 320ms ease;
}

:root {
	--ink-wax:    #D2042D;
	--ink-black:  #1C1C1C;
	--ink-purple: #9B1B9B;
	--ink-pink:   #E0218A;
	--ink-sage:   #6E8B72;
}

.la-ink-wax    .la-ink-mark { background: var(--ink-wax); }
.la-ink-black  .la-ink-mark { background: var(--ink-black); }
.la-ink-purple .la-ink-mark { background: var(--ink-purple); }
.la-ink-pink   .la-ink-mark { background: var(--ink-pink); }
.la-ink-sage   .la-ink-mark { background: var(--ink-sage); }

.la-ink:hover .la-ink-mark { transform: scale(1.1); }

.la-ink input:checked + .la-ink-mark {
	transform: scale(1.14);
	box-shadow:
		0 0 0 2px var(--ground),
		0 0 0 4px var(--wax),
		inset 0 1px 0 rgba(255, 255, 255, .34),
		inset 0 -1px 0 rgba(0, 0, 0, .22);
}

.la-ink input:focus-visible + .la-ink-mark {
	outline: 2px solid var(--wax);
	outline-offset: 6px;
}

.la-said[data-ink="wax"],    .la-letter[data-ink="wax"]    { color: var(--ink-wax); }
.la-said[data-ink="black"],  .la-letter[data-ink="black"]  { color: var(--ink-black); }
.la-said[data-ink="purple"], .la-letter[data-ink="purple"] { color: var(--ink-purple); }
.la-said[data-ink="pink"],   .la-letter[data-ink="pink"]   { color: var(--ink-pink); }
.la-said[data-ink="sage"],   .la-letter[data-ink="sage"]   { color: var(--ink-sage); }

.la-inside {
	max-width: 34rem;
	margin: 0 auto;
	padding-top: 2rem;
	text-align: center;
}

.la-inside-desk,
.la-inside-desk img {
	display: block;
	width: 100vw;
	max-width: 100vw;
	height: auto;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.la-inside-desk { margin-bottom: 0; }

.la-inside-frame {
	position: relative;
	margin: 1.8rem calc(50% - 50vw) 2.4rem;
	width: 100vw;
	max-width: 100vw;
}

.la-inside-rack {
	position: relative;
	width: 100%;
	margin: 0;
}

.la-inside-rack .la-inside-desk,
.la-inside-rack .la-inside-desk img {
	width: 100%;
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
}

.la-inside-rack .la-slots {
	position: absolute;
	inset: 0;
	display: block;
	margin: 0;
	padding: 0;
	gap: 0;
	list-style: none;
}

.la-inside-rack .la-slots {
	position: static;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: .5rem;
	margin: 1.4rem 0 0;
	padding: 0 1.1rem;
}

.la-inside-rack .la-slot {
	position: static;
	width: auto;
	height: auto;
	margin: 0;
	padding: .85rem .6rem 1rem;
	border: 0;
	border-radius: 3px;
	background: #FFFDFB;
	box-shadow: 0 1px 10px rgba(42, 74, 69, .07);
	text-align: center;
}

@media (min-width: 820px) {

	
	.la-inside-rack .la-slots {
		position: absolute;
		inset: 0;
		display: block;
		margin: 0;
		padding: 0;
	}

	.la-inside-rack .la-slot {
		position: absolute;
		top: 14.5%;
		width: 10.2%;
		height: 9%;
		padding: 0;
		background: none;
		box-shadow: none;
		border-radius: 0;
	}
}

.la-inside-rack .la-slot:nth-child(1) { left: 16.9%; }
.la-inside-rack .la-slot:nth-child(2) { left: 27.9%; }
.la-inside-rack .la-slot:nth-child(3) { left: 38.9%; }
.la-inside-rack .la-slot:nth-child(4) { left: 50.0%; }

.la-inside-rack .la-slot-in {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
	min-height: 0;
	padding: 0 .2rem;
	border-radius: 0;
	background: none;
}

.la-inside-rack .la-slot-said {
	font-size: var(--t5);
	line-height: 1.25;
	color: var(--ink);
}

.la-inside-rack .la-slot-day {
	margin-top: .25em;
	font-size: var(--t7);
	letter-spacing: .1em;
	color: var(--soft);
}

.la-inside-rack .la-slot-seal {
	width: 1.1vw;
	height: 1.1vw;
	min-width: 4px;
	min-height: 4px;
	margin: 0 0 .8vw;
}

@media (min-width: 820px) {

	
	.la-inside-rack {
		width: 100%;
		margin: 0;
	}

	.la-inside-rack .la-slot-said { font-size: clamp(11px, 1.15vw, 15px); color: #FCEFEF; }
	.la-inside-rack .la-slot-day  { font-size: clamp(8px, .82vw, 11px); color: rgba(255, 236, 236, .78); }
	.la-inside-rack .la-slot-seal { width: 7px; height: 7px; margin-bottom: .22rem; }
}

.la-inside p {
	margin-inline: auto;
	margin-block: 0 2.4rem;
	max-width: 28ch;
	line-height: 1.62;
}

.la-inside p:last-child { margin-bottom: 0; }

.la-inside-room {
	margin-block: 0 1.6rem;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.34;
	color: var(--ink);
}

.la-inside-act {
	margin-block: 0 1.6rem;
	font-size: var(--t4);
	line-height: 1.6;
	color: var(--wax);
}

.la-inside-wait {
	margin-block: 0 2.2rem;
	font-size: var(--t4);
	line-height: 1.66;
	color: var(--ink);
}

.la-inside-keep {
	margin-block: 0 .7rem;
	font-family: var(--font-head);
	font-size: var(--t2);
	line-height: 1.28;
	color: var(--ink);
	max-width: 24ch !important;
}

.la-inside-signed {
	margin-block: 0 1rem;
	font: 400 var(--t6)/1.6 var(--font-small);
	letter-spacing: .1em;
	text-transform: none;
	color: var(--soft);
}

.la-loves {
	max-width: 34rem;
	margin-inline: auto;
	text-align: center;
}

.la-love { border-top: 1px solid rgba(42, 74, 69, .13); }
.la-love:first-child { border-top: 0; }

.la-love-in {
	display: block;
	padding: 2.8rem .4rem 2.6rem;
	text-decoration: none;
	color: inherit;
	transition: background-color 340ms ease;
}

.la-love-in:hover,
.la-love-in:focus-visible { background-color: rgba(208, 23, 48, .04); }

.la-love-seal {
	display: block;
	width: 9px;
	height: 9px;
	margin: 0 auto 1rem;
	border-radius: 50%;
	background: var(--wax);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .42),
		inset 0 -1px 0 rgba(90, 6, 20, .40);
}

.la-love-name {
	margin: 0;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: var(--t2);
	line-height: 1.22;
	color: var(--ink);
}

.la-love-under {
	margin: .8rem auto 0;
	max-width: 30ch;
	font-size: var(--t5);
	line-height: 1.62;
	color: var(--soft);
}

.la-page-in .la-love-under {
	margin: 0 auto 2.2rem;
	font-size: var(--t4);
	color: var(--wax);
	text-align: center;
}

.la-loves-waiting {
	margin: 4rem auto;
	max-width: 26ch;
	font-family: var(--font-head);
	font-size: var(--t3);
	color: var(--soft);
	text-align: center;
}

.la-crest {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

.la-crest picture,
.la-crest img {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	border-radius: 0 !important;
}

.la-below .la-part {
	font-size: 15px !important;
	letter-spacing: .32em !important;
}

.la-below .la-way p {
	font-size: var(--t3) !important;
	line-height: 1.42 !important;
}

.la-below .la-way p {
	max-width: none !important;
	width: 100% !important;
	text-align: center !important;
}

.la-below .la-way-when {
	display: block !important;
	width: 100% !important;
	margin: .8rem auto 0 !important;
	text-align: center !important;
}

.la-rack-chest,
.la-rack-quill {
	position: absolute;
	display: block;
	border-radius: 4px;
	transition: box-shadow 420ms ease, background-color 420ms ease;
}

.la-rack-chest { left: 50.5%; width: 11.5%; top: 54%; height: 18%; }
.la-rack-quill { left: 70.5%; width: 10.5%; top: 53%; height: 18%; }

.la-rack-chest:hover,
.la-rack-chest:focus-visible,
.la-rack-quill:hover,
.la-rack-quill:focus-visible {
	background-color: rgba(255, 255, 255, .09);
	box-shadow: 0 0 22px 6px rgba(255, 255, 255, .16);
	outline: none;
}

@media (max-width: 819px) {

	
	.la-rack-chest,
	.la-rack-quill { display: none; }
}

.la-yours-seal {
	display: block;
	width: 10px;
	height: 10px;
	margin: 0 auto 1.3rem;
	border-radius: 50%;
	background: var(--wax, #790506);
}

.la-mine { margin: 3.4rem 0 0; }

.la-mine-hands {
	margin: 1.6rem 0 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: .7rem;
}

.la-mine-hand {
	display: block;
	padding: 1.1rem 1.2rem 1.3rem;
	background: #FFFDFB;
	border-radius: 6px;
	cursor: pointer;
	box-shadow: 0 1px 12px rgba(42, 74, 69, .07);
	transition: box-shadow 320ms ease;
}

.la-mine-hand input { position: absolute; opacity: 0; pointer-events: none; }

.la-mine-hand:has(input:checked) { box-shadow: 0 0 0 2px var(--wax, #790506); }

.la-mine-named {
	display: block;
	margin: 0 0 .5rem;
	font-size: var(--t8);
	letter-spacing: 2.2px;
	text-transform: uppercase;
	color: var(--soft, #587571);
}

.la-mine-line {
	display: block;
	font-size: var(--t3);
	line-height: 1.4;
}

.la-mine-keep { margin: 1.6rem 0 0; text-align: center; }

.la-mine-hand.la-hand-real .la-mine-line { font-family: "LA Real", cursive; }
.la-mine-hand.la-hand-spare .la-mine-line { font-family: "LA Spare", cursive; }
.la-mine-hand.la-hand-quick .la-mine-line { font-family: "LA Quick", cursive; }
.la-mine-hand.la-hand-everyday .la-mine-line { font-family: "LA Everyday", cursive; }
.la-mine-hand.la-hand-precise .la-mine-line { font-family: "LA Precise", cursive; }
.la-mine-hand.la-hand-scribble .la-mine-line { font-family: "LA Scribble", cursive; }
.la-mine-hand.la-hand-tall .la-mine-line { font-family: "LA Tall", cursive; }
.la-mine-hand.la-hand-trailing .la-mine-line { font-family: "LA Trailing", cursive; }
.la-mine-hand.la-hand-sweeping .la-mine-line { font-family: "LA Sweeping", cursive; }

.la-yours-go {
	display: inline-block;
	font-family: var(--font-head, Didot, Georgia, serif);
	font-size: var(--t3);
	line-height: 1.3;
	color: var(--wax, #790506);
	text-decoration: none;
	border-bottom: 1px solid rgba(208, 23, 48, .3);
	padding-bottom: .12em;
	transition: border-color 380ms ease;
}

.la-yours-go:hover,
.la-yours-go:focus-visible { border-bottom-color: var(--wax, #790506); }

.la-slot-invite .la-slot-said { line-height: 1.3; }

@media (min-width: 820px) {

	.la-desk-pigeonholes .la-slot-invite {
		left: 18%;
		top: 43.4%;
		width: 10.2%;
		height: 7.4%;
	}

	.la-desk-pigeonholes .la-slot-invite .la-slot-in {
		height: 100%;
		padding: .5rem .55rem;
		background: linear-gradient(158deg, #FFFDF7, #F4EEE2);
		border-radius: 2px;
		box-shadow:
			0 1px 0 rgba(255, 255, 255, .7) inset,
			0 6px 14px rgba(60, 8, 14, .34);
		transform: rotate(-1.3deg);
		transition: transform 460ms cubic-bezier(.22,.61,.36,1), box-shadow 460ms ease;
	}

	.la-desk-pigeonholes .la-slot-invite:hover .la-slot-in,
	.la-desk-pigeonholes .la-slot-invite:focus-within .la-slot-in {
		transform: rotate(-1.3deg) translateY(-3px);
		box-shadow: 0 10px 20px rgba(60, 8, 14, .4);
	}

	
	.la-desk-pigeonholes .la-slot-invite .la-slot-said {
		font-size: clamp(8px, .92vw, 12px);
		line-height: 1.26;
		color: #2A4A45;
	}

	.la-desk-pigeonholes .la-slot-invite .la-slot-seal {
		width: 5px;
		height: 5px;
		margin-bottom: .3rem;
		background: var(--wax, #790506);
	}
}

.la-arriving { padding: 0; }

.la-step {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 88vh;
	max-width: 34rem;
	margin: 0 auto;
	padding: 3rem 1.2rem;
	text-align: center;
	animation: la-step-in 1600ms cubic-bezier(.22,.61,.36,1) both;
}

.la-stamp {
	display: block;
	margin: 0 auto 2rem;
	padding: 0;
	border: 0;
	background: none;
	cursor: pointer;
	transition: transform 520ms cubic-bezier(.22,.61,.36,1), filter 520ms ease;
}

.la-stamp img {
	display: block;
	width: clamp(120px, 34vw, 168px);
	height: auto;
}

.la-stamp:hover,
.la-stamp:focus-visible {
	transform: scale(1.05);
	filter: drop-shadow(0 10px 26px rgba(208, 23, 48, .3));
	outline: none;
}

.la-stamp:active { transform: scale(.94); }

@keyframes la-step-in {
	from { opacity: 0; transform: translateY(18px); }
	to   { opacity: 1; transform: none; }
}

.la-step-desk,
.la-step-desk img {
	display: block;
	width: 100vw;
	max-width: 100vw;
	height: auto;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.la-step-desk { margin-bottom: 2rem; }

.la-step-quill {
	display: block;
	width: 120px;
	height: auto;
	margin: 0 auto 1.6rem;
}

.la-step-head {
	margin: 0 0 1rem;
	font-family: var(--font-head, Didot, Georgia, serif);
	font-weight: 400;
	font-size: var(--t2);
	line-height: 1.2;
}

.la-step-said {
	margin: 0 auto 2rem;
	max-width: 28ch;
	font-size: var(--t5);
	line-height: 1.66;
}

.la-step .la-part { margin-bottom: 1.4rem; }

.la-step-on { margin: 2.2rem 0 0; }

.la-arriving .la-mine-hands { text-align: left; }
.la-arriving .la-inks { justify-content: center; }

.la-arriving .la-step .la-on,
.la-giving .la-step .la-on,
.la-sealed-gift .la-step .la-on {
	display: inline-block;
	padding: .9rem;
	border: 0;
	border-radius: 0;
	background: none;
	background-color: transparent;
	box-shadow: none;
	color: inherit;
	cursor: pointer;
	line-height: 0;
	min-width: 0;
	letter-spacing: normal;
}

.la-on-mark {
	display: block;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: var(--wax, #790506);
	transition: transform 520ms cubic-bezier(.22,.61,.36,1), box-shadow 520ms ease;
}

.la-on:hover .la-on-mark,
.la-on:focus-visible .la-on-mark {
	transform: scale(1.35);
	box-shadow: 0 0 0 7px rgba(208, 23, 48, .12);
}

.la-on:focus-visible { outline: none; }

.la-keeping {
	margin: 3.2rem auto 0;
	padding: 2.4rem 1.4rem 0;
	max-width: 34rem;
	text-align: center;
	border-top: 1px solid rgba(42, 74, 69, .1);
}

.la-keeping-head {
	margin: 0 0 1.6rem;
	font-family: var(--font-head, Didot, Georgia, serif);
	font-weight: 400;
	font-size: var(--t3);
	line-height: 1.25;
}

.la-keeping-two {
	display: flex;
	flex-wrap: wrap;
	gap: .9rem;
	justify-content: center;
	margin: 0;
}

.la-go-quiet {
	background: transparent;
	color: var(--wax, #790506);
	box-shadow: 0 0 0 1px rgba(208, 23, 48, .4) inset;
}

.la-go.is-kept { box-shadow: 0 0 0 2px var(--wax, #790506); }

.la-giving,
.la-sealed-gift { padding: 0; }

.la-gift-break { cursor: pointer; }

.la-gift-shut.is-broken .la-stamp img {
	animation: la-wax-gives 900ms cubic-bezier(.34,.9,.3,1) both;
}

.la-gift-shut.is-broken .la-step-head {
	animation: la-wax-fades 700ms ease both;
}

@keyframes la-wax-gives {
	0%   { transform: scale(1) rotate(0); opacity: 1; }
	22%  { transform: scale(.9) rotate(-2deg); }
	58%  { transform: scale(1.16) rotate(3deg); opacity: 1; filter: drop-shadow(0 14px 30px rgba(208, 23, 48, .34)); }
	100% { transform: scale(1.9) rotate(6deg); opacity: 0; }
}

@keyframes la-wax-fades {
	from { opacity: 1; }
	to   { opacity: 0; }
}

.la-gift-said {
	margin: 0 auto 1.8rem;
	max-width: 26ch;
	font-family: var(--font-head, Didot, Georgia, serif);
	font-size: var(--t3);
	line-height: 1.42;
}

.la-field {
	display: grid;
	gap: .5rem;
	width: 100%;
	max-width: 22rem;
	margin: 0 auto 1.3rem;
	text-align: left;
}

.la-field label {
	font-size: var(--t8);
	letter-spacing: 2.2px;
	text-transform: uppercase;
	color: var(--soft, #587571);
}

.la-field input,
.la-field textarea {
	width: 100%;
	padding: .85rem .9rem;
	font-family: var(--font-head, Didot, Georgia, serif);
	font-size: var(--t4);
	line-height: 1.45;
	color: var(--ink, #2A4A45);
	background: #FFFDFB;
	border: 1px solid rgba(42, 74, 69, .18);
	border-radius: 3px;
}

.la-field input:focus,
.la-field textarea:focus {
	outline: none;
	border-color: var(--wax, #790506);
	box-shadow: 0 0 0 3px rgba(208, 23, 48, .11);
}

.la-gift-rooms {
	display: grid;
	gap: .7rem;
	width: 100%;
	max-width: 22rem;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

.la-gift-room {
	display: block;
	padding: 1.1rem 1.2rem;
	background: #FFFDFB;
	border-radius: 4px;
	cursor: pointer;
	box-shadow: 0 1px 12px rgba(42, 74, 69, .07);
	text-align: left;
}

.la-gift-room input { position: absolute; opacity: 0; pointer-events: none; }
.la-gift-room:has(input:checked) { box-shadow: 0 0 0 2px var(--wax, #790506); }

.la-gift-room-name {
	display: block;
	font-family: var(--font-head, Didot, Georgia, serif);
	font-size: var(--t3);
	line-height: 1.2;
}

.la-gift-room-under {
	display: block;
	margin-top: .25rem;
	font-size: var(--t6);
	color: var(--soft, #587571);
}

.la-gift-here { margin-top: 3.4rem; }

.la-doorstep-at {
	margin: -1.6rem auto 0;
	font-family: var(--font-head, Didot, Georgia, serif);
	font-size: var(--t5);
	line-height: 1.4;
	letter-spacing: .01em;
	color: var(--wax, #790506);
	overflow-wrap: anywhere;
}

.la-doorstep-mend {
	display: inline-block;
	margin-left: .35em;
	color: var(--soft, #587571);
	text-decoration: none;
	border-bottom: 1px solid rgba(88, 117, 113, .4);
}

.la-doorstep-mend:hover,
.la-doorstep-mend:focus-visible { color: var(--wax, #790506); border-bottom-color: var(--wax, #790506); }

.la-rack-letter {
	position: absolute;
	left: 37.2%;
	bottom: 29.7%;
	width: 8.8%;
	aspect-ratio: 3 / 2;
	display: block;
	border-radius: 2px;
	background: linear-gradient(152deg, #FFFDF6 0%, #F6EFE1 62%, #EADFCB 100%);
	transform: rotate(-7deg);
	transform-origin: bottom left;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, .8) inset,
		-1px 5px 10px rgba(60, 8, 14, .26);
	transition: transform 620ms cubic-bezier(.22,.61,.36,1), box-shadow 620ms ease;
}

.la-rack-letter::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 2px;
	background:
		linear-gradient(to bottom right, transparent 49.4%, rgba(190, 172, 140, .5) 49.6%, transparent 50.2%),
		linear-gradient(to bottom left,  transparent 49.4%, rgba(190, 172, 140, .5) 49.6%, transparent 50.2%);
}

.la-rack-letter-wax {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 34%;
	aspect-ratio: 1;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: radial-gradient(circle at 34% 30%, #E8324B 0%, var(--wax, #790506) 46%, #8E0E20 100%);
	box-shadow: 0 1px 3px rgba(60, 8, 14, .5);
}

.la-rack-letter:hover,
.la-rack-letter:focus-visible {
	transform: rotate(-7deg) translateY(-4px);
	box-shadow:
		0 1px 0 rgba(255, 255, 255, .85) inset,
		-1px 9px 15px rgba(60, 8, 14, .32);
	outline: none;
}

@media (max-width: 819px) {

	
	.la-rack-letter { display: none; }
}

.la-keeper { margin: 3.4rem 0 0; }

.la-keeper-is {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .6rem;
	margin: 1.6rem 0 1.8rem;
	font-family: var(--font-head, Didot, Georgia, serif);
	font-size: var(--t2);
	line-height: 1.2;
}

.la-keeper-seal {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--wax, #790506);
	flex: none;
}

.la-keeper-form { margin: 1.4rem 0 0; }
.la-keeper-go { margin: 1.4rem 0 0; text-align: center; }

.la-yours-quick,
.la-yours-card {
	width: 100%;
	max-width: 22rem;
	margin: 0 auto;
}

.la-yours-quick { margin-bottom: 1.4rem; }

.la-yours-card {
	padding: 1.5rem 1.3rem 1.6rem;
	background: linear-gradient(180deg, #FFFDFB, #FBF7F3);
	border: 0;
	border-top: 2px solid var(--wax, #790506);
	border-radius: 0 0 4px 4px;
	box-shadow: 0 2px 26px rgba(42, 74, 69, .09);
}

.la-yours-seal {
	display: block;
	margin: 0 auto 1.8rem;
	width: 88px;
	height: auto;
}

.la-yours-kept {
	margin: 0 auto 2rem;
	max-width: 26ch;
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.7;
	color: var(--soft);
	text-align: center;
}

.la-yours-quiet {
	margin: 1.6rem auto 0;
	max-width: 24ch;
	font-family: var(--font-small);
	font-size: var(--t7);
	line-height: 1.7;
	letter-spacing: .01em;
	color: var(--soft);
	text-align: center;
}

.la-yours-or {
	margin: 1.2rem auto;
	max-width: 22rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .16em;
	text-transform: lowercase;
	color: var(--soft);
	text-align: center;
}

.la-yours-go { margin: 1.6rem 0 0; text-align: center; }

.la-pay-trouble {
	margin: 1rem auto 0;
	max-width: 24ch;
	font-family: var(--font-small);
	font-size: var(--t7);
	line-height: 1.7;
	color: var(--wax);
	text-align: center;
}

@media (min-width: 900px) {

	
	.la-page-in:has( .la-yours ) { max-width: 62rem; }

	.la-yours .la-step {
		display: grid;
		grid-template-columns: 1fr 1fr;
		
		align-items: start;
		
		gap: 0 clamp(3rem, 6vw, 6rem);
		max-width: 62rem;
		padding: 4rem 2.5rem;
		text-align: left;
	}

	
	.la-yours #la-pay {
		grid-column: 2;
		grid-row: 1 / -1;
	}

	
	.la-yours .la-part,
	.la-yours .la-step-head,
	.la-yours .la-step-said,
	.la-yours-kept,
	.la-yours-seal {
		grid-column: 1;
		margin-left: 0;
		margin-right: 0;
		text-align: left;
		max-width: 24ch;
	}

	.la-yours-seal { margin-bottom: 2rem; }

	.la-yours .la-step-head { font-size: clamp(30px, 3.4vw, 44px); }

	
	.la-yours #la-pay {
		grid-column: 2;
		grid-row: 1 / -1;
		align-self: center;
		width: 100%;
		max-width: 26rem;
	}

	.la-yours .la-yours-quick,
	.la-yours .la-yours-card,
	.la-yours .la-yours-or { max-width: none; }

	.la-yours .la-yours-go,
	.la-yours .la-pay-trouble { text-align: left; }

	.la-yours .la-pay-trouble { margin-left: 0; max-width: 30ch; }

	.la-yours .la-yours-quiet {
		grid-column: 2;
		margin: 1.4rem 0 0;
		max-width: 26rem;
		text-align: left;
	}
}

.la-go {
	display: inline-block;
	padding: .92em 2.4em;
	font-family: var(--font-small);
	font-size: var(--t7);
	font-weight: 400;
	letter-spacing: .28em;
	text-transform: uppercase;
	color: #FFFFFF;
	background: var(--wax, #790506);
	border: 0;
	border-radius: 999px;
	cursor: pointer;
	text-decoration: none;
	line-height: 1;
	transition: background-color 420ms ease, transform 420ms cubic-bezier(.22,.61,.36,1);
}

.la-go:hover,
.la-go:focus-visible {
	background: #B7132A;
	transform: translateY(-2px);
	color: #FFFFFF;
	outline: none;
}

.la-go:active { transform: translateY(0); }

.la-password-form {
	display: flex;
	flex-direction: column;
	gap: 1.9rem;
	text-align: left;
}

.la-password-at,
.la-password-new { display: block; }

.la-password-at .la-ask,
.la-password-new .la-ask {
	display: block;
	margin: 0 0 .7rem;
	font-size: var(--t5);
}

.la-password-at .la-line {
	color: var(--soft);
	cursor: default;
}

.la-password-form .la-doorstep-quiet {
	margin: -1rem 0 0;
	max-width: none;
	text-align: left;
}

.la-ask-under { margin-top: 2.2rem; }

.la-doorstep-or {
	margin: 1rem auto 0;
	max-width: 30ch;
}

.la-on-mark { margin-inline: auto; }

.la-on-word {
	display: block;
	margin-top: .85rem;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .34em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-on:hover .la-on-word,
.la-on:focus-visible .la-on-word { text-decoration: underline; text-underline-offset: .38em; }

.la-gift-field label,
.la-gift-line label { display: block; margin-bottom: .55rem; }

.la-keep {
	position: fixed;
	left: 50%;
	bottom: 1rem;
	transform: translateX(-50%);
	z-index: 40;
	width: min(23rem, calc(100vw - 2rem));
	padding: 1.5rem 1.4rem 1.2rem;
	background: #FFFDFB;
	border: 1px solid rgba(42, 74, 69, .12);
	border-radius: 4px;
	box-shadow: 0 12px 40px rgba(42, 74, 69, .13);
	text-align: center;
}

.la-keep[hidden] { display: none; }

.la-keep-seal { display: block; margin: 0 auto .9rem; width: 52px; height: 52px; }

.la-keep-said {
	margin: 0 0 .6rem;
	font-family: var(--font-head, Didot, Georgia, serif);
	font-size: var(--t4);
	line-height: 1.3;
	color: var(--ink, #2A4A45);
	text-wrap: balance;
}

.la-keep-how {
	margin: 0;
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.65;
	color: var(--soft, #587571);
	text-wrap: pretty;
}

.la-keep-go {
	appearance: none;
	margin: 1.1rem 0 0;
	padding: .8rem 1.6rem;
	background: var(--wax, #790506);
	border: 0;
	border-radius: 3px;
	cursor: pointer;
	font: 400 var(--t7)/1 var(--font-small);
	letter-spacing: .28em;
	text-transform: uppercase;
	color: #FFFDFB;
}

.la-keep-go[hidden] { display: none; }

.la-keep-away {
	appearance: none;
	display: block;
	margin: .9rem auto 0;
	padding: 4px 0;
	background: none;
	border: 0;
	cursor: pointer;
	font: 400 var(--t7)/1 var(--font-util);
	letter-spacing: .1em;
	color: var(--soft, #587571);
	border-bottom: 1px solid rgba(88, 117, 113, .35);
}

.la-keep { animation: la-keep-in 900ms cubic-bezier(.16,.72,.24,1) both; }

@keyframes la-keep-in {
	from { opacity: 0; transform: translate(-50%, 14px); }
	to   { opacity: 1; transform: translate(-50%, 0); }
}

.foot { text-align: center; }

.foot p {
	margin: 0;
	font-family: var(--font-head, Didot, "Bodoni 72", Baskerville, Georgia, serif);
	font-weight: 400;
	font-size: clamp(19px, 2.4vw, 25px);
	line-height: 1.3;
	letter-spacing: 0;
	text-transform: none;
	color: var(--ink, #2A4A45);
}

.la-back {
	appearance: none;
	padding: 4px 0;
	background: none;
	border: 0;
	border-bottom: 1px solid rgba(88, 117, 113, .3);
	cursor: pointer;
	font-family: var(--font-util);
	font-size: var(--t7);
	letter-spacing: .1em;
	color: var(--soft, #587571);
	transition: color 300ms ease, border-color 300ms ease;
}

.la-back:hover { color: var(--wax); border-bottom-color: var(--wax); }
.la-back[hidden] { display: none; }

.la-step[data-step="joining"] .la-field {
	display: block;
	width: 100%;
	max-width: 24rem;
	margin: 0 auto 1.7rem;
	text-align: left;
	aspect-ratio: auto;
	position: static;
}

.la-step[data-step="joining"] .la-field .la-ask {
	display: block;
	margin: 0 0 .5rem;
	font-size: var(--t6);
	letter-spacing: .01em;
}

.la-step[data-step="joining"] .la-line { width: 100%; }

.la-step[data-step="joining"] .la-doorstep-quiet {
	max-width: 24rem;
	margin: -.4rem auto 2.1rem;
	text-align: left;
}

.la-speak {
	margin: 2.4rem auto 0;
	max-width: 24rem;
	text-align: center;
}

.la-speak-go {
	appearance: none;
	display: inline-flex;
	align-items: center;
	gap: .8rem;
	padding: .6em 0;
	background: none;
	border: 0;
	border-bottom: 1px solid var(--wax);
	cursor: pointer;
	font-family: var(--font-small);
	font-size: var(--t6);
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-speak-mark {
	display: block;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: var(--wax, #790506);
}

.la-speak.is-taping .la-speak-mark { background: var(--wax); }

@keyframes la-speak-beat {
	0%, 100% { transform: scale(1); opacity: 1; }
	50%      { transform: scale(1.45); opacity: .55; }
}

.la-speak-said {
	margin: .9rem 0 0;
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.65;
	color: var(--soft, #587571);
	text-wrap: pretty;
}

.la-speak-back { display: block; width: 100%; margin: 1.1rem auto 0; }

.la-steps .la-step.is-here {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 74svh;
}

.la-steps .la-step.is-here { position: relative; }

.la-steps .la-step.is-here .la-aside {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0;
}

@media (max-width: 640px) {
	.la-doorstep { padding: 1.6rem 1.5rem 3rem; }

	.la-steps .la-step.is-here { min-height: 78svh; }

	
	.la-doorstep-head {
		font-size: clamp(26px, 7.4vw, 32px);
		margin-bottom: 1.1rem;
		max-width: 15ch;
		margin-inline: auto;
	}

	.la-doorstep-kept { margin-bottom: 1.1rem; }

	.la-step .la-ask { margin-bottom: .9rem; }

	
	.la-steps .la-step { padding-top: 1rem; }

	
	.la-steps .la-line { padding-top: 1.4rem; }
}

.la-landing-seal { display: block; margin: 0 auto 1.6rem; width: 76px; height: 76px; }

.la-whole {
	margin: 4.6rem auto 0;
	max-width: 30ch;
	text-align: center;
}

.la-whole-one {
	margin: 0 0 .9rem;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.4;
	color: var(--soft, #587571);
	text-wrap: balance;
}

.la-whole-all {
	margin: 0;
	font-family: var(--font-head);
	font-size: var(--t2);
	line-height: 1.22;
	letter-spacing: -.008em;
	color: var(--wax);
	text-wrap: balance;
}

.la-speak-sound { margin: 0 0 1.4rem; }
.la-speak-sound[hidden] { display: none; }

.la-speak-wave {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 3px;
	height: 54px;
}

.la-speak-wave span {
	display: block;
	width: 3px;
	height: 100%;
	border-radius: 2px;
	background: var(--wax, #790506);
	transform: scaleY(.06);
	transform-origin: center;
	transition: transform 70ms linear;
}

.la-speak-clock {
	margin: .7rem 0 0;
	font-family: var(--font-util);
	font-size: var(--t6);
	font-variant-numeric: tabular-nums;
	letter-spacing: .08em;
	color: var(--soft, #587571);
}

.la-speak-back { margin: 1.3rem 0 0; }
.la-speak-back[hidden] { display: none; }

.la-speak-hear,
.la-speak-hear-kept { display: block; width: 100%; margin: 0 auto .9rem; }

.la-speak-choose {
	display: flex;
	gap: 1.6rem;
	justify-content: center;
	margin: 0;
}

.la-speak-keep,
.la-speak-again {
	appearance: none;
	padding: .5em 0;
	background: none;
	border: 0;
	border-bottom: 1px solid currentColor;
	cursor: pointer;
	font-family: var(--font-small);
	font-size: var(--t6);
	letter-spacing: .18em;
	text-transform: uppercase;
}

.la-speak-keep  { color: var(--wax, #790506); }
.la-speak-again { color: var(--soft, #587571); }

.la-speak-kept { margin: 1.3rem 0 0; }

.la-speak-hers {
	margin: 0 0 .6rem;
	font-family: var(--font-small);
	font-size: var(--t6);
	color: var(--soft, #587571);
}

.la-inside-in { margin: 3rem 0 0; text-align: center; }

.la-inside-in a {
	display: inline-block;
	padding: .5em 0;
	font-family: var(--font-small);
	font-size: var(--t6);
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--wax);
	text-decoration: none;
	border-bottom: 1px solid var(--wax);
	transition: opacity 320ms ease;
}

.la-inside-in a:hover { opacity: .68; }

@media (max-width: 640px) {
	:root {
		--t4: clamp(21px, 6.33vw, 30px);
		--t5: clamp(21px, 6.33vw, 30px);
	}
}

.la-inside-signed { font-size: var(--t3); }

.la-way em,
.la-ways em,
.la-invite em {
	display: inline;
	font-style: italic;
}

.la-holds {
	margin: 2.4rem auto 0;
	max-width: 34ch;
	font-family: var(--font-small);
	font-size: var(--t6);
	line-height: 1.72;
	color: var(--soft, #587571);
	text-align: center;
	text-wrap: pretty;
}

.la-holds-quiet { margin-top: .7rem; }

.la-below .la-part {
	font-size: 18px !important;
	letter-spacing: .18em !important;
	margin: 9rem 0 3.6rem !important;
	padding-top: 3rem !important;
}

.la-below > .la-part:first-of-type { margin-top: 5.5rem !important; }

.la-heart { padding: 7.5rem 1.6rem 6.5rem; }
.la-heart-ask { margin-bottom: 1.5rem; }
.la-heart-lead { margin: 4.2rem auto 3.2rem; }

.o-word {
	display: block;
}

.o-word span {
	display: block;
	margin: .34em 0 0;
	white-space: nowrap;
}

@media (max-width: 640px) {
	.la-below .o-word span {
		font-size: 13.5px !important;
		letter-spacing: .12em !important;
	}
}

.la-below .la-part + * { padding-top: 0 !important; }

.la-welcome {
	max-width: 34ch;
	margin: 0 auto;
	padding: 0 1.6rem;
	text-align: center;
}

.la-welcome-line {
	margin: 0 auto 1.5rem;
	font-family: var(--font-small);
	font-size: var(--t5);
	line-height: 1.72;
	color: var(--ink);
	text-wrap: pretty;
}

.la-welcome-close {
	margin: 2.8rem auto 0;
	max-width: 24ch;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.3;
	color: var(--wax);
	text-wrap: balance;
}

.js-float .float {
	transform: translateY(46px);
	transition:
		opacity 3000ms cubic-bezier(.22,.61,.36,1),
		transform 3000ms cubic-bezier(.22,.61,.36,1);
}

.js-float .float.is-in { transform: none; }

.js-float .la-way.float,
.js-float .la-beat.float,
.js-float .la-heart-said.float,
.js-float .la-heart-ask.float,
.js-float .la-moment.float,
.js-float .la-tier.float {
	transform: translateY(46px);
}

.js-float .la-way.float.is-in,
.js-float .la-beat.float.is-in,
.js-float .la-heart-said.float.is-in,
.js-float .la-heart-ask.float.is-in,
.js-float .la-moment.float.is-in,
.js-float .la-tier.float.is-in {
	transform: none;
}

.js-float .la-argument.float,
.js-float .la-invite.float,
.js-float .la-ways.float,
.js-float .la-voice-said.float,
.js-float .la-heart.float,
.js-float .la-omoi.float,
.js-float .la-imagine.float,
.js-float .la-welcome.float,
.js-float .la-tiers.float,
.js-float .la-end.float {
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}

.js-arriving .la-arrives { transform: translateY(46px); }
.js-arriving .la-arrives.is-here { transform: none; }

.js-float .float:not(.la-arrives),
.js-float .float.is-in:not(.la-arrives) {
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}

.js-arriving .la-arrives {
	transform: translateY(46px);
	transition:
		opacity 3000ms cubic-bezier(.22,.61,.36,1),
		transform 3000ms cubic-bezier(.22,.61,.36,1);
	transition-delay: calc(var(--step, 0) * 460ms);
}

.js-arriving .la-arrives.is-here { transform: none; }

.la-below .la-part {
	margin-top: 7rem !important;
	padding-top: 2.2rem !important;
}

.la-beat + .la-beat { margin-top: 1.5em; }
.la-heart-said { margin-bottom: 3.4rem; }
.la-heart-ask { margin-bottom: 2.1rem; }
.la-heart-lead { margin: 5rem auto 4rem; }
.la-welcome-line { margin-bottom: 2rem; }
.o-said { margin-top: 1em; }
.o-word + .o-said + .o-her + .o-word,
.o-said + .o-word { margin-top: 3.6em; }
.la-voice-said-line + .la-voice-said-line { margin-top: 1.5em; }

.js-arriving .la-arrives:not(.is-here):not(.is-in) {
	opacity: 0 !important;
	transform: translateY(46px) !important;
}

.js-arriving .la-arrives.is-here,
.js-arriving .la-arrives.is-in {
	opacity: 1 !important;
	transform: none !important;
}

.la-pulling {
	position: fixed;
	top: 8px;
	left: 50%;
	z-index: 60;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--wax, #C41E3A);
	box-shadow: 0 1px 8px rgba(42,74,69,.22);
	opacity: 0;
	transform: translate(-50%, 0);
	pointer-events: none;
	transition: opacity 220ms ease, transform 220ms ease;
}

.la-pulling.is-turning { opacity: 1; }

.la-below .la-tier .la-tier-name {
	font-family: var(--font-head) !important;
	font-size: clamp(28px, 8.2vw, 34px) !important;
	font-weight: 400 !important;
	line-height: 1.14 !important;
	letter-spacing: .01em !important;
	text-transform: none !important;
	color: var(--ink) !important;
}

.la-below .la-tier .la-tier-price {
	margin-top: 1rem !important;
	font-family: var(--font-head) !important;
	font-size: clamp(21px, 6.2vw, 26px) !important;
	color: var(--wax) !important;
}

.la-below .la-tier .la-tier-price small {
	font-size: clamp(14px, 4vw, 16px) !important;
	letter-spacing: .04em;
	color: #7E8D91 !important;
}

.la-below .la-tier .la-tier-who {
	margin-top: .8rem !important;
	font-family: var(--font-small) !important;
	font-size: clamp(16px, 4.6vw, 18px) !important;
	line-height: 1.55 !important;
	letter-spacing: .02em;
	color: #6F8083 !important;
}

.la-below .la-tier .la-tier-in { margin-top: 1.6rem; }

.la-below .la-tier { padding: 3.4rem 0 !important; }

.la-below .la-tiers { padding-top: 3.4rem !important; }

.la-welcome-close {
	font-size: clamp(26px, 7.6vw, 32px);
	line-height: 1.26;
}

.la-below .la-beyond,
.la-below .la-holds {
	font-size: clamp(16px, 4.6vw, 18px) !important;
	line-height: 1.66 !important;
	color: #6F8083 !important;
}

.la-below .la-beyond { margin-top: 2.4rem !important; }

.la-coming {
	margin: 0 0 2.2rem;
	padding: 0 .2rem;
	font-family: var(--font-small);
	font-size: clamp(16px, 4.4vw, 18px);
	line-height: 1.72;
	color: var(--soft, #587571);
	text-wrap: pretty;
}

.la-coming-line { display: block; }
.la-coming-line:first-child { color: var(--wax); }

.la-move { margin: .5rem 0 0; }

.la-move-open {
	display: inline-block;
	font-family: var(--font-util);
	font-size: 13px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--wax);
	border-bottom: 1px solid rgba(208, 23, 48, .34);
	padding-bottom: .25em;
	cursor: pointer;
	list-style: none;
}

.la-move-open::-webkit-details-marker { display: none; }
.la-move-open::marker { content: ''; }
.la-move-open:hover,
.la-move-open:focus-visible { border-bottom-color: var(--wax); }

.la-move-form {
	display: flex;
	flex-direction: column;
	gap: .75rem;
	margin-top: 1.1rem;
	padding: 1.2rem 1.1rem 1.3rem;
	background: #FFFDFB;
	border-radius: 3px;
	box-shadow: 0 1px 10px rgba(42, 74, 69, .07);
	text-align: left;
}

.la-move-say {
	font-family: var(--font-util);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #6F8083;
}

.la-move-day {
	width: 100%;
	padding: .6em .7em;
	font-family: var(--font-small);
	font-size: 17px;
	color: var(--ink);
	background: #fff;
	border: 1px solid rgba(42, 74, 69, .2);
	border-radius: 3px;
}

.la-move-day:focus-visible { outline: 2px solid var(--wax); outline-offset: 1px; }

.la-move-go,
.la-move-now {
	align-self: flex-start;
	padding: 0 0 .3em;
	font-family: var(--font-util);
	font-size: 14px;
	letter-spacing: .04em;
	color: var(--wax);
	background: none;
	border: 0;
	border-bottom: 1px solid rgba(208, 23, 48, .34);
	cursor: pointer;
}

.la-move-now { color: #6F8083; border-bottom-color: rgba(42, 74, 69, .22); }

.la-move-go:hover, .la-move-go:focus-visible { border-bottom-color: var(--wax); }
.la-move-now:hover, .la-move-now:focus-visible { border-bottom-color: #6F8083; }

.la-see {
	max-width: 34rem;
	margin: 0 auto;
	padding: 4rem 1.6rem 5rem;
	text-align: center;
}

.la-see-screen { margin: 0 0 5rem; }

.la-see.is-walking .la-see-screen {
	margin: 0;
	min-height: 62vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	opacity: 0;
	transition: opacity 700ms cubic-bezier(.22, .61, .36, 1);
}

.la-see.is-walking .la-see-screen.is-here { opacity: 1; }

.la-see.is-walking .la-see-screen.is-leaving {
	opacity: 0;
	transition: opacity 700ms cubic-bezier(.4, 0, .7, .2);
	pointer-events: none;
}

.la-see-part {
	margin: 0 0 1.6rem;
	font-family: var(--font-small);
	font-size: 14px;
	letter-spacing: .24em;
	text-transform: uppercase;
	color: var(--wax);
}

.la-see-head {
	margin: 0 auto 2rem;
	max-width: 22ch;
	font-family: var(--font-head);
	font-weight: 400;
	font-size: clamp(28px, 8vw, 40px);
	line-height: 1.16;
	color: var(--ink);
	text-wrap: balance;
}

.la-see-head:focus-visible { outline: none; }

.la-see-line {
	margin: 0 auto;
	max-width: 32ch;
	font-family: var(--font-small);
	font-size: clamp(17px, 4.8vw, 20px);
	line-height: 1.74;
	color: var(--soft, #587571);
	text-wrap: pretty;
}

.la-see-sample {
	margin: 1.4rem auto 2.2rem;
	max-width: 24ch;
	color: var(--ink);
	transition: color 420ms ease;
}

.la-see.is-ink-wax    .la-see-sample { color: var(--ink-wax); }
.la-see.is-ink-black  .la-see-sample { color: var(--ink-black); }
.la-see.is-ink-purple .la-see-sample { color: var(--ink-purple); }
.la-see.is-ink-pink   .la-see-sample { color: var(--ink-pink); }
.la-see.is-ink-sage   .la-see-sample { color: var(--ink-sage); }

.la-see-hands,
.la-see-inks {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .7rem;
	margin: 0 auto 2.4rem;
	padding: 0;
	list-style: none;
}

.la-see-hand {
	padding: .5em .9em;
	font-family: var(--font-util);
	font-size: 13px;
	letter-spacing: .04em;
	color: #6F8083;
	background: #FFFDFB;
	border: 1px solid rgba(42, 74, 69, .16);
	border-radius: 2px;
	cursor: pointer;
	transition: border-color 260ms ease, color 260ms ease;
}

.la-see-hand.is-chosen { color: var(--wax); border-color: rgba(208, 23, 48, .5); }

.la-see-ink {
	width: 26px;
	height: 26px;
	padding: 0;
	border: 1px solid rgba(42, 74, 69, .18);
	border-radius: 50%;
	cursor: pointer;
	transition: transform 260ms ease, box-shadow 260ms ease;
}

.la-see-ink.la-ink-wax    { background: var(--ink-wax); }
.la-see-ink.la-ink-black  { background: var(--ink-black); }
.la-see-ink.la-ink-purple { background: var(--ink-purple); }
.la-see-ink.la-ink-pink   { background: var(--ink-pink); }
.la-see-ink.la-ink-sage   { background: var(--ink-sage); }

.la-see-ink.is-chosen { transform: scale(1.22); box-shadow: 0 0 0 1px #FBFBF9, 0 0 0 2px currentColor; }

.la-see-seal {
	display: block;
	width: 96px;
	height: auto;
	margin: 2.4rem auto 0;
}

.la-see-on { margin: 2.6rem 0 0; }

.la-see-go,
.la-see-in {
	display: inline-block;
	padding: 0 0 .35em;
	font-family: var(--font-util);
	font-size: 16px;
	letter-spacing: .04em;
	color: var(--wax);
	background: none;
	border: 0;
	border-bottom: 1px solid rgba(208, 23, 48, .34);
	text-decoration: none;
	cursor: pointer;
}

.la-see-go:hover, .la-see-go:focus-visible,
.la-see-in:hover, .la-see-in:focus-visible { border-bottom-color: var(--wax); }

.la-see-aside { margin: 2.2rem 0 0; }

.la-see-back {
	padding: 0 0 .3em;
	font-family: var(--font-util);
	font-size: 13px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #6F8083;
	background: none;
	border: 0;
	border-bottom: 1px solid rgba(42, 74, 69, .2);
	cursor: pointer;
}

.la-welcome-see { margin: 2.4rem auto 0; }

.la-welcome-see a {
	font-family: var(--font-util);
	font-size: clamp(15px, 4.2vw, 17px);
	letter-spacing: .04em;
	color: var(--wax);
	text-decoration: none;
	border-bottom: 1px solid rgba(208, 23, 48, .34);
	padding-bottom: .35em;
}

.la-welcome-see a:hover,
.la-welcome-see a:focus-visible { border-bottom-color: var(--wax); }

.la-see.is-walking .la-see-screen[hidden] { display: none !important; }

.la-see { scroll-margin-top: 6rem; }

.la-see-ink.la-ink-wax    { color: var(--ink-wax); }
.la-see-ink.la-ink-black  { color: var(--ink-black); }
.la-see-ink.la-ink-purple { color: var(--ink-purple); }
.la-see-ink.la-ink-pink   { color: var(--ink-pink); }
.la-see-ink.la-ink-sage   { color: var(--ink-sage); }

.la-again {
	margin: 0;
	min-height: 100vh;
	display: grid;
	place-items: center;
	padding: 2rem 1.5rem;
}

.la-again-room {
	max-width: 34rem;
	text-align: center;
}

.la-again-said {
	font-size: clamp( 1.6rem, 4.6vw, 2.3rem );
	line-height: 1.25;
	margin: 0 0 1rem;
}

.la-again-more {
	font-size: 1.05rem;
	line-height: 1.7;
	margin: 0 0 2rem;
}

.la-again-go {
	background: none;
	border: 0;
	border-bottom: 1px solid currentColor;
	padding: 0 0 .2rem;
	font: inherit;
	font-size: 1.05rem;
	cursor: pointer;
	color: inherit;
}

.la-scale-lead {
	max-width: 30rem;
	margin: 0 auto 1.5rem;
	font-family: var(--font-head);
	font-size: var(--t3);
	line-height: 1.3;
	color: var(--ink);
	text-align: center;
	text-wrap: balance;
}

.la-scale-imagine {
	max-width: 32rem;
	margin: 0 auto 3rem;
	font-size: var(--t5);
	line-height: 1.62;
	color: var(--ink);
	text-align: center;
	text-wrap: pretty;
}

.la-scale-under {
	margin: 0 0 1.4rem;
}

.la-scale-why {
	max-width: 34rem;
	margin: 3rem auto 0;
	text-align: center;
}

.la-scale-why p {
	margin: 0 0 1.15rem;
	font-size: var(--t5);
	line-height: 1.62;
	color: var(--ink);
	text-wrap: pretty;
}

.la-scale-why-last {
	color: var(--soft);
}

@media (min-width: 48rem) {
	.la-scale-imagine { margin-bottom: 3.6rem; }
	.la-scale-why     { margin-top: 3.6rem; }
}

.la-page .la-scale,
.la-page .la-words {
	padding-inline: 0;
}

#la-pay .la-pay-go {
	display: inline-block;
	padding: 0 0 .22em;
	background: none;
	border: 0;
	border-bottom: 1px solid var(--wax, #790506);
	border-radius: 0;
	color: var(--wax, #790506);
	font-family: var(--font-util);
	font-size: var(--t4);
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.25;
	text-decoration: none;
	cursor: pointer;
	transition: color 320ms ease, border-color 320ms ease;
}

#la-pay .la-pay-go:hover,
#la-pay .la-pay-go:focus-visible {
	color: #B7132A;
	border-bottom-color: #B7132A;
}

#la-pay .la-pay-go:focus-visible {
	outline: 2px solid var(--wax, #790506);
	outline-offset: 6px;
}

.la-yours-go { margin: 1.6rem 0 0; }

.la-yours-waiting {
	margin: 0;
	font-family: var(--font-util);
	font-size: var(--t6);
	line-height: 1.55;
	color: var(--soft);
	text-align: center;
}

.la-yours-waiting-long {
	text-align: left;
	color: var(--ink);
}

.la-page .la-step {
	padding-inline: 0;
}

.la-go,
.la-scale-in a {
	display: inline-block;
	max-width: 100%;
	padding: 0 0 .22em;
	background: none;
	border: 0;
	border-bottom: 1px solid var(--wax, #790506);
	border-radius: 0;
	color: var(--wax, #790506);
	font-family: var(--font-util);
	font-size: var(--t4);
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.25;
	text-decoration: none;
	cursor: pointer;
	transition: color 320ms ease, border-color 320ms ease;
}

.la-go:hover,
.la-go:focus-visible,
.la-scale-in a:hover,
.la-scale-in a:focus-visible {
	color: #B7132A;
	border-bottom-color: #B7132A;
	background: none;
}

.la-go:focus-visible,
.la-scale-in a:focus-visible {
	outline: 2px solid var(--wax, #790506);
	outline-offset: 6px;
}

.la-another {
	max-width: 30rem;
	margin: 0 auto 2.8rem;
	padding: 1.6rem 1.4rem 1.7rem;
	background: linear-gradient(180deg, #FFFDFB, #FBF7F3);
	border-top: 2px solid var(--wax, #790506);
	border-radius: 0 0 4px 4px;
	box-shadow: 0 2px 26px rgba(42, 74, 69, .09);
	text-align: center;
}

.la-another-said {
	margin: 0 0 .7rem;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.32;
	color: var(--ink);
	text-wrap: balance;
}

.la-another-more {
	margin: 0 0 1.3rem;
	font-size: var(--t6);
	line-height: 1.6;
	color: var(--soft);
	text-wrap: pretty;
}

.la-another-go { margin: 0; }

.la-another-go a {
	display: inline-block;
	padding: 0 0 .22em;
	border-bottom: 1px solid var(--wax, #790506);
	color: var(--wax, #790506);
	font-family: var(--font-util);
	font-size: var(--t5);
	text-decoration: none;
	transition: color 320ms ease, border-color 320ms ease;
}

.la-another-go a:hover,
.la-another-go a:focus-visible {
	color: #B7132A;
	border-bottom-color: #B7132A;
}

.la-folk {
	max-width: 28rem;
	margin: 0 auto;
	text-align: left;
}

.la-folk-one {
	margin: 0 0 1.1rem;
	padding: 1.15rem 1.2rem 1.25rem;
	background: linear-gradient(180deg, #FFFDFB, #FBF7F3);
	border-top: 2px solid var(--wax, #790506);
	border-radius: 0 0 4px 4px;
	box-shadow: 0 2px 22px rgba(42, 74, 69, .08);
}

.la-folk-one label {
	display: block;
	margin: 0 0 .75rem;
}

.la-folk-one label:last-child { margin-bottom: 0; }

.la-folk-one label span {
	display: block;
	margin: 0 0 .3rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-folk-one input {
	width: 100%;
	padding: .35em 0 .4em;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.3;
	color: var(--ink);
	background: none;
	border: 0;
	border-bottom: 1px solid rgba(42, 74, 69, .18);
	border-radius: 0;
	transition: border-color 320ms ease;
}

.la-folk-one input::placeholder {
	font-family: var(--font-util);
	font-size: var(--t6);
	color: var(--soft);
	opacity: .75;
}

.la-folk-one input:focus {
	outline: none;
	border-bottom-color: var(--wax, #790506);
}

.la-folk-add { margin: .3rem 0 0; text-align: center; }

.la-folk-another,
.la-people-go .la-go {
	background: none;
	border: 0;
	border-bottom: 1px solid var(--wax, #790506);
	border-radius: 0;
	padding: 0 0 .22em;
	font-family: var(--font-util);
	font-size: var(--t5);
	line-height: 1.25;
	color: var(--wax, #790506);
	cursor: pointer;
	transition: color 320ms ease, border-color 320ms ease;
}

.la-folk-another:hover,
.la-folk-another:focus-visible,
.la-people-go .la-go:hover,
.la-people-go .la-go:focus-visible {
	color: #B7132A;
	border-bottom-color: #B7132A;
}

.la-folk-full {
	margin: .6rem 0 0;
	font-size: var(--t6);
	line-height: 1.55;
	color: var(--soft);
	text-align: center;
}

.la-people { max-width: 34rem; margin: 0 auto; text-align: center; }

.la-people-said {
	max-width: 30rem;
	margin: 0 auto 2.2rem;
	font-size: var(--t5);
	line-height: 1.62;
	color: var(--ink);
	text-wrap: pretty;
}

.la-people-kept {
	margin: 0 0 1.2rem;
	font-family: var(--font-head);
	font-size: var(--t4);
	color: var(--wax, #790506);
}

.la-people-go { margin: 1.6rem 0 0; text-align: center; }

.la-people-holds {
	margin: 1.8rem 0 0;
	font-size: var(--t6);
	color: var(--soft);
}

.la-step-folk .la-folk { margin-top: 1.6rem; }

.la-drawer-head {
	margin: 0 0 .4rem;
	font-family: var(--font-head);
	font-size: var(--t4);
	line-height: 1.3;
	color: var(--ink);
}

.la-drawer-said {
	margin: 0 0 .9rem;
	font-size: var(--t6);
	line-height: 1.55;
	color: var(--soft);
}

.la-drawer-back { text-align: center; color: var(--wax, #790506); }

.la-drawer-go { margin: 0 0 1.2rem; }

.la-drawer-go a {
	color: var(--wax, #790506);
	border-bottom: 1px solid var(--wax, #790506);
	text-decoration: none;
	font-size: var(--t6);
	padding-bottom: .18em;
}

.la-drawer-mine { margin: 0; }
.la-drawer-keep { margin: .9rem 0 0; }

.la-drawer-keep .la-go { font-size: var(--t6); }

.la-panel-sent { margin: 1.1rem 0 0; }

.la-panel-sent a {
	color: var(--wax, #790506);
	border-bottom: 1px solid var(--wax, #790506);
	text-decoration: none;
	padding-bottom: .18em;
}

.la-doorstep .la-steps .la-step .la-ask,
.la-doorstep .la-ask {
	margin: 0 0 .5rem;
	font-family: var(--font-small);
	font-size: var(--t7);
	line-height: 1.4;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--soft);
}

.la-doorstep .la-doorstep-line {
	max-width: 26rem;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 2.6rem;
	font-size: var(--t5);
	line-height: 1.52;
	text-wrap: pretty;
}

.la-doorstep .la-line {
	margin-bottom: 2rem;
	font-size: var(--t4);
}

.la-doorstep .la-line::placeholder {
	font-family: var(--font-util);
	font-size: var(--t6);
	color: var(--soft);
	opacity: .8;
}

.la-doorstep .la-doorstep-quiet {
	margin-top: .4rem;
	font-size: var(--t7);
	line-height: 1.6;
}

.la-doorstep .la-doorstep-head { margin-bottom: 1.1rem; }

.la-drawer-card {
	margin: 1.8rem 0 0;
	padding: 1.4rem 0 0;
	border-top: 1px solid rgba(42, 74, 69, .12);
}

.la-see-bureau,
.la-doorstep-bureau{
	display:block;
	width:100%;
	max-width:520px;
	height:auto;
	margin:1.6rem auto 1.9rem;
	border-radius:2px;
}
.la-doorstep-bureau{ margin-top:1.9rem; }

.la-shelf{ margin:3.2rem 0 0; }
.la-shelf-head{
	font-family:Didot,'Bodoni 72',Baskerville,Georgia,serif;
	font-weight:400; font-size:1.2rem; line-height:1.3;
	color:var(--ink,#2A4A45); margin:0 0 1.3rem;
}
.la-shelf-frames{
	list-style:none; margin:0 0 1.6rem; padding:0;
	display:flex; flex-wrap:wrap; gap:18px 16px; align-items:flex-end;
}
.la-frame{
	position:relative; width:130px;
	background:#fff; padding:8px 8px 10px;
	border:1px solid rgba(0,0,0,.07);
	box-shadow:0 1px 3px rgba(42,74,69,.09), 0 6px 14px rgba(42,74,69,.05);
}
.la-frame:nth-child(odd){ transform:rotate(-.7deg); }
.la-frame:nth-child(even){ transform:rotate(.6deg); }
.la-frame-in{ display:block; width:100%; height:112px; object-fit:cover; }
.la-frame-off{ margin:.45rem 0 0; text-align:center; }
.la-frame-off button{
	background:none; border:0; padding:0; cursor:pointer;
	font-family:Helvetica,Arial,sans-serif; font-size:9px; letter-spacing:.16em;
	text-transform:uppercase; color:var(--soft,#587571);
}
.la-frame-off button:hover,
.la-frame-off button:focus-visible{ color:var(--wax,#790506); }

.la-shelf-add{ display:flex; align-items:center; gap:1.1rem; flex-wrap:wrap; }
.la-shelf-choose{ cursor:pointer; }
.la-shelf-choose input{ position:absolute; width:1px; height:1px; opacity:0; }
.la-shelf-choose span{
	font-family:Helvetica,Arial,sans-serif; font-size:11px; letter-spacing:.2em;
	text-transform:uppercase; color:var(--wax,#790506);
	border-bottom:1px solid var(--wax,#790506); padding-bottom:2px;
}
.la-shelf-choose input:focus-visible + span{ outline:2px solid var(--wax,#790506); outline-offset:4px; }
.la-shelf-go{
	background:none; border:0; padding:0; cursor:pointer;
	font-family:Helvetica,Arial,sans-serif; font-size:11px; letter-spacing:.2em;
	text-transform:uppercase; color:var(--soft,#587571);
}
.la-shelf-go:hover{ color:var(--wax,#790506); }
.la-shelf-said{
	margin:1rem 0 0; font-family:Didot,Georgia,serif; font-size:.98rem;
	color:var(--soft,#587571);
}
@media (max-width:420px){ .la-frame{ width:calc(50% - 8px); } .la-frame-in{ height:104px; } }

.la-mine-too{ text-align:center; }
.la-mine-too-line{
	font-family:Didot,'Bodoni 72',Baskerville,Georgia,serif;
	font-size:1.22rem; line-height:1.5; color:var(--ink,#2A4A45);
	margin:0 0 1rem; max-width:24em; margin-inline:auto;
}

.la-labels{
	display:flex; flex-wrap:wrap; gap:.45rem .5rem;
	margin:0 0 2.2rem; padding:0;
}
.la-label{
	font-family:Helvetica,Arial,sans-serif;
	font-size:10px; letter-spacing:.2em; text-transform:uppercase;
	color:var(--soft,#587571); text-decoration:none;
	padding:.5rem .85rem;
	border:1px solid var(--rule,#C4DCD8); border-radius:2px;
	background:rgba(255,255,255,.55);
	transition:color .2s, border-color .2s;
}
.la-label:hover,
.la-label:focus-visible{
	color:var(--wax,#790506); border-color:var(--wax,#790506);
}
@media (max-width:420px){ .la-label{ font-size:9.5px; padding:.45rem .7rem; letter-spacing:.16em; } }

#la-desk, #la-your-people, #la-photographs, #the-keeper, #la-give{ scroll-margin-top:1.4rem; }

.la-page-in pre{
	max-width:100%;
	overflow-x:auto;
	-webkit-overflow-scrolling:touch;
	font-size:.86rem;
	line-height:1.7;
	white-space:pre;
	padding-bottom:.4rem;
}
@media (max-width:460px){ .la-page-in pre{ font-size:.78rem; } }

.la-shelf-go,
.la-shelf-choose span,
.la-go,
.la-on,
.la-label,
.la-drawer-go,
.la-yours-go,
.la-frame-off button,
.card__open,
.la-speak-go{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
}
.la-shelf-go,
.card__open,
.la-frame-off button,
.la-drawer-go{ padding-block:.7rem; }
.la-label{ padding-block:.75rem; }

.la-page-in p a,
.la-room a,
.la-foot a{ min-height:0; display:inline; }

.la-star.la-comes:not(.la-far) .la-seal,
.la-star.la-soon .la-seal{
	background-image:
		var(--satin),
		url("../img/seal-mark.png");
	background-size: 100% 260%, 100% 100%;
}
@keyframes la-grow {
	0%   { opacity: 0; transform: scale(0) translateY(7px); }
	22%  { opacity: .35; }
	100% { opacity: var(--lit, 1); transform: scale(1) translateY(0); }
}
.la-star.la-far .la-seal{ --lit: calc(.22 + var(--near, .1) * 2.2); }
