

.quiet,
.doors,
.closing {
	background: var(--logo-purple);
	color: var(--white);
}

.scene { background: var(--logo-purple); }

.scene {
	position: relative;
	
	min-height: clamp(460px, 74svh, 720px);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: clamp(30px, 6vh, 64px) clamp(22px, 7vw, 90px);
}

.scene__in {
	width: 100%;
	max-width: 44rem;
	text-align: center;
}

.over {
	font-family: var(--font-head);
	font-weight: 400;
	font-size: clamp(0.832rem, 2.99vw, 0.888rem);
	letter-spacing: .42em;
	text-indent: .42em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0 0 clamp(2.4rem, 8vh, 4.6rem);
}

.name {
	
	display: block;
	width: min(88%, 640px);
	height: auto;
	margin: 0 auto;
}

.claim {
	font-family: var(--font-head);
	font-weight: 200;
	font-size: clamp(1.5rem, 7vw, 3.6rem);
	letter-spacing: .06em;
	text-transform: uppercase;
	line-height: 1.32;
	margin: 0;
}

.under {
	font-family: var(--font-warm);
	font-style: italic;
	font-weight: 400;
	font-size: clamp(1.176rem, 4.7vw, 1.5rem);
	line-height: 1.5;
	color: var(--lilac);
	max-width: 26ch;
	margin: clamp(2.2rem, 7vh, 3.6rem) auto 0;
}

.doors {
	display: grid;
	grid-template-columns: 1fr;
	border-top: 1px solid rgba(222, 208, 242, .22);
}

@media (min-width: 880px) {
	.doors { grid-template-columns: 1fr 1fr; }
}

.door {
	position: relative;
	background: var(--door-ground);
	transition: background .18s ease;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 0;
	padding: clamp(2.8rem, 7vh, 4rem) clamp(24px, 7vw, 4rem);
	color: var(--white);
	border-bottom: 1px solid rgba(222, 208, 242, .22);
}

@media (min-width: 880px) {
	.door + .door { border-left: 1px solid rgba(222, 208, 242, .22); }
}

.door__over {
	font-family: var(--font-head);
	font-size: clamp(0.806rem, 2.86vw, 0.84rem);
	letter-spacing: .36em;
	text-indent: .36em;
	text-transform: uppercase;
	color: var(--lilac);
}

.door--pro { --door-ground: #3A0066; --door-lit: #571098; }
.door--her { --door-ground: #59119B; --door-lit: #7222C4; }

.door:hover,
.door:focus-visible { background: var(--door-lit); }

.door--pro .door__say {
	font-family: var(--font-head);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: clamp(1.4rem, 5.6vw, 1.9rem);
	line-height: 1.5;
	margin-top: clamp(1.8rem, 5vh, 2.6rem);
}

.door--her .door__say {
	font-family: var(--font-warm);
	font-style: italic;
	font-weight: 400;
	font-size: clamp(1.7rem, 7vw, 2.8rem);
	line-height: 1.28;
	margin-top: clamp(1.6rem, 4.6vh, 2.4rem);
}

.door__logo {
	display: block;
	width: min(78%, 290px);
	height: auto;
	margin: clamp(1.4rem, 4vh, 2rem) auto 0;
}

.door__go {
	font-family: var(--font-head);
	font-size: clamp(0.806rem, 2.86vw, 0.884rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--lilac);
	margin-top: clamp(2.2rem, 6vh, 3.2rem);
	padding: 10px 18px;
	border-bottom: 1px solid rgba(222, 208, 242, .4);
	transition: border-color .16s ease, color .16s ease, letter-spacing .16s ease, background .16s ease;
}

.door:hover .door__go,
.door:focus-visible .door__go {
	color: var(--purple-deep);
	background: var(--white);
	border-color: var(--white);
	letter-spacing: .38em;
	text-indent: .38em;
}

@media (prefers-reduced-motion: reduce) {
	.door__go { transition: none; }
	.door:hover .door__go { letter-spacing: .34em; text-indent: .34em; }
}

.closing {
	text-align: center;
	padding: clamp(4.5rem, 14vh, 9rem) clamp(24px, 7vw, 4rem);
}

.closing__line {
	font-family: var(--font-head);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .18em;
	text-indent: .18em;
	font-size: clamp(1.128rem, 4.56vw, 1.4rem);
	line-height: 1.9;
	color: var(--lilac);
	margin: 0;
}

.home .site-footer {
	background: var(--logo-purple);
	border-top: 1px solid rgba(222, 208, 242, .22);
}

.home .footer__mark { color: var(--white); }
.home .footer__tag,
.home .footer__copy { color: rgba(255, 255, 255, .6); }
.home .footer__links a { color: var(--lilac); }

.quiet.is-settled [data-rise],
.no-js .quiet [data-rise] { opacity: 1 !important; }

.scene,
.quiet,
.doors,
.closing { overflow-x: hidden; }

body { overflow-x: hidden; }

.four {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 3px;
	background: var(--logo-purple);
	padding: 3px 0;
}

@media (min-width: 620px) { .four { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 900px) { .four { grid-template-columns: repeat(4, 1fr); } }

.four img {
	display: block;
	width: 100%;

	
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: 50% 40%;
}

.hold,
.give {
	background: var(--logo-purple);
	color: var(--white);
	text-align: center;
	padding: clamp(4rem, 12vh, 7rem) clamp(24px, 7vw, 4rem);
}

.hold__eyebrow,
.give__eyebrow {
	font-family: var(--font-head);
	font-size: clamp(0.806rem, 2.86vw, 0.84rem);
	letter-spacing: .36em;
	text-indent: .36em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0;
}

.hold__head {
	font-family: var(--font-head);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .12em;
	text-indent: .12em;
	font-size: clamp(2rem, 9vw, 3.6rem);
	line-height: 1.1;
	margin: .5em 0 0;
}

.hold__body,
.give__body {
	font-family: var(--font-util);
	font-size: clamp(1.152rem, 4.32vw, 1.176rem);
	line-height: 1.85;
	color: rgba(255, 255, 255, .82);
	max-width: 46ch;
	margin: 1.6em auto 0;
}

.give__head {
	font-family: var(--font-head);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .3em;
	text-indent: .3em;
	font-size: clamp(1.8rem, 8vw, 3rem);
	margin: .5em 0 0;
}

.give__go {
	display: inline-block;
	margin-top: clamp(2rem, 6vh, 3rem);
	font-family: var(--font-head);
	font-size: clamp(0.806rem, 2.86vw, 0.884rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--lilac);
	border: 1px solid rgba(222, 208, 242, .4);
	padding: 12px 20px;
	transition: background .16s ease, color .16s ease, border-color .16s ease;
}

.give__go:hover,
.give__go:focus-visible {
	background: var(--white);
	color: var(--logo-purple);
	border-color: var(--white);
}

.give { border-top: 1px solid rgba(222, 208, 242, .22); }

.lead,
.steps,
.price,
.ask {
	background: var(--logo-purple);
	color: var(--white);
}

.lead {
	text-align: center;
	padding: clamp(3.4rem, 10vh, 5.5rem) clamp(24px, 7vw, 4rem) clamp(2.8rem, 8vh, 4rem);
}

.lead__over,
.price__over,
.ask__over {
	font-family: var(--font-head);
	font-size: clamp(0.806rem, 2.86vw, 0.864rem);
	letter-spacing: .36em;
	text-indent: .36em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0;
}

.lead__head {
	font-family: var(--font-head);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .07em;
	font-size: clamp(1.7rem, 7.4vw, 3.6rem);
	line-height: 1.34;
	margin: .7em 0 0;
}

.lead__under {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.176rem, 4.7vw, 1.5rem);
	line-height: 1.5;
	color: var(--lilac);
	max-width: 28ch;
	margin: 1.4em auto 0;
}

.steps {
	display: grid;
	grid-template-columns: 1fr;
	border-top: 1px solid rgba(222, 208, 242, .22);
}

@media (min-width: 900px) { .steps { grid-template-columns: repeat(3, 1fr); } }

.step {
	padding: clamp(2.8rem, 8vh, 4.5rem) clamp(24px, 6vw, 3rem);
	text-align: center;
	border-bottom: 1px solid rgba(222, 208, 242, .22);
}

@media (min-width: 900px) { .row + .step { border-left: 1px solid rgba(222, 208, 242, .22); } }

.step__n {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.4rem, 5vw, 1.8rem);
	color: var(--lilac);
	margin: 0;
}

.step__head {
	font-family: var(--font-head);
	font-weight: 300;
	text-transform: uppercase;
	letter-spacing: .13em;
	font-size: clamp(1.08rem, 4.08vw, 1.12rem);
	line-height: 1.5;
	margin: 1.2em 0 0;
}

.step__body {
	font-family: var(--font-util);
	font-size: clamp(1.08rem, 4.08vw, 1.152rem);
	line-height: 1.8;
	color: rgba(255, 255, 255, .78);
	margin: 1em 0 0;
}

.price {
	text-align: center;
	padding: clamp(4rem, 12vh, 7rem) clamp(24px, 7vw, 4rem);
}

.price__figure {
	font-family: var(--font-head);
	font-weight: 200;
	font-size: clamp(3.4rem, 16vw, 7rem);
	line-height: 1;
	margin: .35em 0 0;
}

.price__note {
	font-family: var(--font-head);
	font-size: clamp(0.858rem, 3.12vw, 0.888rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 1.2em 0 0;
}

.price__packs {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	max-width: 34rem;
	margin: clamp(2.6rem, 8vh, 3.6rem) auto 0;
}

@media (min-width: 700px) { .price__packs { grid-template-columns: repeat(2, 1fr); } }

.price__packs span {
	font-family: var(--font-util);
	font-size: clamp(1.032rem, 3.84vw, 1.128rem);
	letter-spacing: .04em;
	color: rgba(255, 255, 255, .84);
	border: 1px solid rgba(222, 208, 242, .26);
	padding: 14px 10px;
}

.price__packs b { font-weight: 600; }

.price__small {
	font-family: var(--font-util);
	font-size: clamp(0.936rem, 3.6vw, 1.008rem);
	color: rgba(255, 255, 255, .6);
	margin: 2em auto 0;
}

.ask {
	text-align: center;
	padding: clamp(4rem, 12vh, 7rem) clamp(24px, 7vw, 4rem);
	border-top: 1px solid rgba(222, 208, 242, .22);
}

.ask__head {
	font-family: var(--font-head);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: clamp(1.4rem, 6vw, 2.4rem);
	line-height: 1.5;
	margin: .6em 0 0;
}

.ask__go {
	display: inline-block;
	margin-top: clamp(2.2rem, 6vh, 3rem);
	font-family: var(--font-head);
	font-size: clamp(0.806rem, 2.86vw, 0.884rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--logo-purple);
	background: var(--white);
	padding: 15px 26px;
	transition: background .16s ease, color .16s ease;
}

.ask__go:hover,
.ask__go:focus-visible { background: var(--lilac); }

.esm-rise .rise,
.esm-rise .four.rise img {
	transition: opacity 1.05s cubic-bezier(.16,.72,.28,1), transform 1.15s cubic-bezier(.16,.72,.28,1);
}

.esm-rise .four__rail { transition: none; }

@media (prefers-reduced-motion: reduce) {
	.esm-rise .rise,
	.esm-rise .four.rise img { transition: none; }
}

.two {
	display: grid;
	grid-template-columns: 1fr;
	background: var(--logo-purple);
	border-top: 1px solid rgba(222, 208, 242, .22);
}

@media (min-width: 880px) { .two { grid-template-columns: 1fr 1fr; } }

.seek {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	
	min-height: 0;
	padding: clamp(2.6rem, 6vh, 3.4rem) clamp(24px, 5vw, 2.6rem);
	color: var(--white);
	border-bottom: 1px solid rgba(222, 208, 242, .22);
	background: var(--seek-ground);
	transition: background .16s ease;
}

@media (min-width: 880px) { .seek + .seek { border-left: 1px solid rgba(222, 208, 242, .22); } }

.seek--home { --seek-ground: #3A0066; --seek-lit: #571098; }
.seek--her  { --seek-ground: #59119B; --seek-lit: #7222C4; }

.seek:hover, .seek:focus-visible { background: var(--seek-lit); }

.seek__over {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.884rem);
	letter-spacing: .36em;
	text-indent: .36em;
	text-transform: uppercase;
	color: var(--lilac);
}

.seek--home .seek__head {
	font-family: var(--font-head);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .12em;
	font-size: clamp(1.3rem, 5.4vw, 2rem);
	margin-top: 1em;
}

.seek--her .seek__head {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.7rem, 7vw, 2.5rem);
	margin-top: .7em;
}

.seek__say {
	font-family: var(--font-util);
	font-size: clamp(1.08rem, 4.08vw, 1.152rem);
	line-height: 1.75;
	color: rgba(255, 255, 255, .8);
	max-width: 30ch;
	margin-top: 1.2em;
}

.seek__go {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.858rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--lilac);
	border-bottom: 1px solid rgba(222, 208, 242, .45);
	padding: 10px 16px;
	margin-top: clamp(1.8rem, 5vh, 2.4rem);
	transition: color .16s ease, background .16s ease, border-color .16s ease;
}

.seek:hover .seek__go { color: var(--logo-purple); background: var(--white); border-color: var(--white); }

.doorway {
	background: var(--logo-purple);
	text-align: center;
	padding: clamp(3rem, 8vh, 4.5rem) clamp(24px, 7vw, 4rem);
	border-top: 1px solid rgba(222, 208, 242, .22);
}

.doorway__over {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.884rem);
	letter-spacing: .36em;
	text-indent: .36em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0;
}

.doorway__card {
	display: block;
	max-width: 42rem;
	margin: clamp(2rem, 6vh, 3rem) auto 0;
	padding: clamp(2.4rem, 8vw, 3.6rem) clamp(1.6rem, 6vw, 3rem);
	border: 1px solid rgba(222, 208, 242, .3);
	color: var(--white);
	transition: border-color .16s ease, background .16s ease;
}

.doorway__card:hover,
.doorway__card:focus-visible { border-color: rgba(222, 208, 242, .7); background: rgba(255, 255, 255, .04); }

.doorway__ask {
	display: block;
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.5rem, 6.4vw, 2.4rem);
	line-height: 1.3;
}

.doorway__go {
	display: inline-block;
	margin-top: clamp(1.6rem, 5vh, 2.2rem);
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.858rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--lilac);
}

.doorway__note {
	font-family: var(--font-util);
	font-size: clamp(1.008rem, 3.84vw, 1.08rem);
	line-height: 1.8;
	color: rgba(255, 255, 255, .68);
	max-width: 44ch;
	margin: clamp(2rem, 6vh, 2.8rem) auto 0;
}

.free {
	background: var(--logo-purple);
	color: var(--white);
	text-align: center;
	padding: clamp(3.5rem, 10vh, 5.5rem) clamp(24px, 7vw, 4rem);
	border-top: 1px solid rgba(222, 208, 242, .22);
}

.free__head {
	font-family: var(--font-head);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .24em;
	text-indent: .24em;
	font-size: clamp(1.232rem, 5.15vw, 1.7rem);
	margin: 0;
}

.free__body {
	font-family: var(--font-util);
	font-size: clamp(1.08rem, 4.08vw, 1.176rem);
	line-height: 1.85;
	color: rgba(255, 255, 255, .78);
	max-width: 46ch;
	margin: 1.4em auto 0;
}

.find {
	background: var(--logo-purple);
	border-top: 1px solid rgba(222, 208, 242, .22);
	padding: clamp(2rem, 6vh, 3rem) clamp(24px, 7vw, 4rem);
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	max-width: 46rem;
	margin-inline: auto;
	width: 100%;
}

@media (min-width: 700px) { .find { grid-template-columns: 1fr auto; align-items: end; } }

.find__label {
	grid-column: 1 / -1;
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.858rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--lilac);
}

.find__where {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.232rem, 5.15vw, 1.5rem);
	color: var(--white);
	background: transparent;
	border: 0;
	border-bottom: 1px solid rgba(222, 208, 242, .45);
	padding: 12px 2px;
	width: 100%;
}

.find__where::placeholder { color: rgba(255, 255, 255, .45); }
.find__where:focus { outline: 0; border-bottom-color: var(--white); }

.find__go {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.858rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--logo-purple);
	background: var(--white);
	border: 0;
	padding: 15px 26px;
	cursor: pointer;
	transition: background .16s ease;
}

.find__go:hover { background: var(--lilac); }

.none {
	background: var(--logo-purple);
	color: var(--white);
	text-align: center;
	padding: clamp(4rem, 12vh, 7rem) clamp(24px, 7vw, 4rem);
}

.none__over {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.884rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0 0 1.4em;
}

.none__head {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.6rem, 7vw, 2.8rem);
	line-height: 1.3;
	margin: 0;
}

.none__body {
	font-family: var(--font-util);
	font-size: clamp(1.104rem, 4.2vw, 1.12rem);
	line-height: 1.85;
	color: rgba(255, 255, 255, .78);
	max-width: 42ch;
	margin: 1.5em auto 0;
}

.none__go {
	display: inline-block;
	margin-top: clamp(2rem, 6vh, 2.8rem);
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.858rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--lilac);
	border: 1px solid rgba(222, 208, 242, .4);
	padding: 14px 22px;
	transition: background .16s ease, color .16s ease, border-color .16s ease;
}

.none__go:hover,
.none__go:focus-visible { background: var(--white); color: var(--logo-purple); border-color: var(--white); }

.drawing {
	background: #2A0050;
	color: var(--lilac);
	text-align: center;
	font-family: var(--font-head);
	font-size: clamp(0.76rem, 2.88vw, 0.858rem);
	letter-spacing: .26em;
	text-indent: .26em;
	text-transform: uppercase;
	margin: 0;
	padding: 14px 18px;
}

.her,
.says,
.days,
.mine,
.room { background: var(--logo-purple); color: var(--white); }

.her {
	display: grid;
	grid-template-columns: 1fr;
	align-items: center;
	gap: 0;
}

@media (min-width: 860px) { .her { grid-template-columns: 1fr 1fr; } }

.her__pic { margin: 0; line-height: 0; }

.her__pic img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: 50% 34%;
}

.her__say {
	padding: clamp(3rem, 9vh, 5rem) clamp(24px, 6vw, 3.5rem);
	text-align: center;
}

@media (min-width: 860px) { .her__say { text-align: left; } }

.her__over {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.884rem);
	letter-spacing: .36em;
	text-indent: .36em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0;
}

.her__name {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(2.6rem, 12vw, 4.6rem);
	line-height: 1;
	margin: .3em 0 0;
}

.her__where {
	font-family: var(--font-head);
	font-size: clamp(0.84rem, 3.36vw, 0.984rem);
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 1em 0 0;
}

.her__line {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.232rem, 4.93vw, 1.5rem);
	line-height: 1.5;
	color: rgba(255, 255, 255, .9);
	max-width: 26ch;
	margin: 1.5em auto 0;
}

@media (min-width: 860px) { .her__line { margin-left: 0; } }

.says {
	padding: clamp(3.5rem, 10vh, 6rem) clamp(24px, 6vw, 4rem);
	border-top: 1px solid rgba(222, 208, 242, .22);
}

.says__over {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.884rem);
	letter-spacing: .36em;
	text-indent: .36em;
	text-transform: uppercase;
	color: var(--lilac);
	text-align: center;
	margin: 0 0 clamp(2.4rem, 7vh, 3.4rem);
}

.says__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1px;
	max-width: 62rem;
	margin-inline: auto;
	background: rgba(222, 208, 242, .22);
	border: 1px solid rgba(222, 208, 242, .22);
}

@media (min-width: 780px) { .says__grid { grid-template-columns: 1fr 1fr; } }

.said {
	background: var(--logo-purple);
	padding: clamp(1.8rem, 5vw, 2.6rem);
}

.said__ask {
	font-family: var(--font-head);
	font-size: clamp(0.858rem, 3.25vw, 0.864rem);
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0;
}

.said__gave {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.288rem, 4.93vw, 1.4rem);
	line-height: 1.55;
	margin: 1em 0 0;
}

.days {
	display: grid;
	grid-template-columns: 1fr;
	border-top: 1px solid rgba(222, 208, 242, .22);
}

@media (min-width: 900px) { .days { grid-template-columns: repeat(3, 1fr); } }

.days__col {
	padding: clamp(2.6rem, 8vh, 4rem) clamp(24px, 5vw, 2.6rem);
	border-bottom: 1px solid rgba(222, 208, 242, .22);
	text-align: center;
}

@media (min-width: 900px) { .days__col + .days__col { border-left: 1px solid rgba(222, 208, 242, .22); } }

.days__over {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.884rem);
	letter-spacing: .32em;
	text-indent: .32em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0 0 1.4em;
}

.days__body {
	font-family: var(--font-util);
	font-size: clamp(1.104rem, 4.08vw, 1.176rem);
	line-height: 1.85;
	color: rgba(255, 255, 255, .82);
	margin: 0;
}

.days__list { list-style: none; margin: 0; padding: 0; }

.days__list li {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.176rem, 4.48vw, 1.344rem);
	line-height: 2.1;
	color: rgba(255, 255, 255, .92);
}

.mine {
	padding: clamp(3.5rem, 10vh, 6rem) clamp(24px, 6vw, 4rem);
	text-align: center;
	border-top: 1px solid rgba(222, 208, 242, .22);
}

.mine__over {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.884rem);
	letter-spacing: .36em;
	text-indent: .36em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0;
}

.mine__head {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.5rem, 6.4vw, 2.4rem);
	margin: .5em 0 0;
}

.mine__rows {
	max-width: 34rem;
	margin: clamp(2.2rem, 7vh, 3rem) auto 0;
	text-align: left;
}

.mine__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	font-family: var(--font-util);
	font-size: clamp(1.08rem, 4.08vw, 1.176rem);
	padding: 15px 0;
	border-bottom: 1px solid rgba(222, 208, 242, .2);
	margin: 0;
}

.mine__row b { font-weight: 400; color: rgba(255, 255, 255, .92); }

.mine__row span {
	font-family: var(--font-head);
	font-size: clamp(0.76rem, 2.88vw, 0.832rem);
	letter-spacing: .2em;
	text-transform: uppercase;
	padding: 7px 12px;
	white-space: nowrap;
}

.mine__row .on { background: var(--white); color: var(--logo-purple); }
.mine__row .off { border: 1px solid rgba(222, 208, 242, .45); color: var(--lilac); }

.mine__note {
	font-family: var(--font-util);
	font-size: clamp(1.008rem, 3.84vw, 1.08rem);
	line-height: 1.8;
	color: rgba(255, 255, 255, .68);
	max-width: 44ch;
	margin: 2em auto 0;
}

.room {
	padding: clamp(3.5rem, 10vh, 6rem) clamp(24px, 6vw, 4rem) clamp(4rem, 12vh, 7rem);
	text-align: center;
	border-top: 1px solid rgba(222, 208, 242, .22);
}

.room__over {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.884rem);
	letter-spacing: .36em;
	text-indent: .36em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 0;
}

.room__head {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.5rem, 6.4vw, 2.4rem);
	margin: .5em 0 0;
}

.room__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	max-width: 62rem;
	margin: clamp(2.4rem, 7vh, 3.4rem) auto 0;
}

@media (min-width: 860px) { .room__grid { grid-template-columns: repeat(3, 1fr); } }

.card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: clamp(190px, 26vw, 240px);
	padding: clamp(1.8rem, 5vw, 2.4rem);
	color: var(--white);
	border: 1px solid rgba(222, 208, 242, .3);
	transition: border-color .16s ease, background .16s ease;
}

.card:hover, .card:focus-visible { border-color: rgba(222, 208, 242, .75); background: rgba(255, 255, 255, .05); }

.card__n {
	font-family: var(--font-head);
	font-weight: 200;
	font-size: clamp(2rem, 8vw, 2.8rem);
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: .1em;
}

.card__say {
	font-family: var(--font-util);
	font-size: clamp(1.056rem, 3.96vw, 1.128rem);
	line-height: 1.7;
	color: rgba(255, 255, 255, .8);
	margin-top: .9em;
	max-width: 22ch;
}

.card__ask {
	font-family: var(--font-warm);
	font-style: italic;
	font-size: clamp(1.232rem, 4.93vw, 1.35rem);
	line-height: 1.45;
	max-width: 22ch;
}

.card__go {
	font-family: var(--font-head);
	font-size: clamp(0.76rem, 2.88vw, 0.832rem);
	letter-spacing: .32em;
	text-indent: .32em;
	text-transform: uppercase;
	color: var(--lilac);
	margin-top: 1.6em;
	border-bottom: 1px solid rgba(222, 208, 242, .45);
	padding-bottom: 6px;
}

.room__note {
	font-family: var(--font-util);
	font-size: clamp(1.008rem, 3.84vw, 1.08rem);
	line-height: 1.8;
	color: rgba(255, 255, 255, .66);
	max-width: 46ch;
	margin: clamp(2.2rem, 6vh, 3rem) auto 0;
}

.js-entrance .quiet.entrance,
.js-entrance .entrance {
	height: clamp(460px, 74svh, 720px);
	max-height: 720px;
}

.js-entrance .entrance .hero,
.js-entrance .entrance .scene {
	min-height: clamp(460px, 74svh, 720px);
	max-height: 720px;
}

.lead--warm .lead__head {
	font-family: var(--font-warm);
	font-style: italic;
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
	font-size: clamp(2.2rem, 10vw, 4rem);
	line-height: 1.15;
}

.prose {
	background: var(--logo-purple);
	color: var(--white);
	padding: clamp(3rem, 9vh, 5.5rem) clamp(24px, 7vw, 4rem);
}

.prose > * { max-width: 42rem; margin-inline: auto; }

.prose p {
	font-family: var(--font-util);
	font-size: clamp(1.152rem, 4.32vw, 1.176rem);
	line-height: 1.95;
	color: rgba(255, 255, 255, .84);
	margin: 0 0 1.5em;
}

.prose h2 {
	font-family: var(--font-head);
	font-weight: 300;
	text-transform: uppercase;
	letter-spacing: .16em;
	font-size: clamp(1.08rem, 4.32vw, 1.176rem);
	line-height: 1.6;
	color: var(--lilac);
	margin: 2.6em auto 1em;
}

.prose h2:first-child { margin-top: 0; }

.prose strong { font-weight: 600; color: #FFFFFF; }

.prose a { color: var(--lilac); text-decoration: underline; text-underline-offset: .2em; }

.prose em {
	font-family: var(--font-warm);
	font-size: 1.08em;
	color: rgba(255, 255, 255, .7);
}

.lead,
.hold,
.steps,
.price,
.ask,
.give,
.doors,
.two,
.doorway,
.free,
.find,
.none,
.prose,
.moments,
.her,
.says,
.days,
.mine,
.room {
	background: var(--logo-purple);
	color: var(--white);
}

.four,
.strip,
.plate { background: var(--paper); }

.four,
.strip { gap: 8px; padding: 8px; }

.plate { padding: 8px 8px 0; }

.found {
	background: var(--logo-purple);
	padding: clamp(2.4rem, 7vw, 4rem) clamp(20px, 6vw, 3.4rem) clamp(3rem, 8vw, 4.6rem);
	border-top: 1px solid var(--rule);
}

.found__over {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.884rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--accent, var(--lilac));
	text-align: center;
	margin: 0 0 clamp(1.8rem, 5vw, 2.8rem);
}

.found__list {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(16px, 3.4vw, 26px);
	max-width: 62rem;
	margin: 0 auto;
}

@media (min-width: 720px) { .found__list { grid-template-columns: 1fr 1fr; } }

.home-card {
	display: block;
	padding: clamp(1.5rem, 4.6vw, 2.1rem);
	border: 1px solid var(--rule);
	border-radius: 3px;
	background: rgba(255, 255, 255, .035);
	color: var(--ink);
	text-decoration: none;
	transition: border-color .35s ease, background .35s ease, transform .35s ease;
}

.home-card:hover,
.home-card:focus-visible {
	border-color: var(--accent, var(--lilac));
	background: rgba(255, 255, 255, .07);
	transform: translateY(-2px);
}

.home-card__where {
	font-family: var(--font-head);
	font-size: clamp(0.72rem, 2.6vw, 0.79rem);
	letter-spacing: .28em;
	text-indent: .28em;
	text-transform: uppercase;
	color: var(--accent, var(--lilac));
	margin: 0;
}

.home-card__head {
	font-family: var(--font-head);
	font-weight: 200;
	font-size: clamp(1.24rem, 4.4vw, 1.5rem);
	letter-spacing: .04em;
	line-height: 1.3;
	margin: .55em 0 0;
}

.home-card__say {
	font-size: clamp(1.03rem, 3.8vw, 1.1rem);
	line-height: 1.68;
	color: var(--ink-soft, rgba(255, 255, 255, .84));
	margin: .8em 0 0;
}

.home-card__week {
	font-family: var(--font-head);
	font-size: clamp(1.06rem, 3.9vw, 1.16rem);
	letter-spacing: .05em;
	margin: .9em 0 0;
}

.home-card__go {
	display: inline-block;
	margin-top: 1.1em;
	font-family: var(--font-head);
	font-size: clamp(0.76rem, 2.8vw, 0.84rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	color: var(--accent, var(--lilac));
	border-bottom: 1px solid currentColor;
	padding-bottom: .35em;
}

@media (prefers-reduced-motion: reduce) {
	.home-card { transition: none; }
	.home-card:hover, .home-card:focus-visible { transform: none; }
}

.moments__word {
	margin: 0;
	padding: clamp(1.1rem, 3.6vw, 1.5rem) clamp(20px, 6vw, 3rem);
	background: rgba(255, 255, 255, .07);
	border-bottom: 1px solid var(--rule);
	font-size: clamp(1.03rem, 3.8vw, 1.12rem);
	line-height: 1.62;
	text-align: center;
	color: var(--ink);
}

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

.told {
	padding: clamp(2.6rem, 8vw, 4.4rem) clamp(22px, 7vw, 4rem);
	border-top: 1px solid var(--rule);
	max-width: 46rem;
	margin: 0 auto;
}

.told--warm { background: rgba(255, 255, 255, .045); }

.told--hers {
	border-top: 0;
	padding-top: clamp(1.6rem, 5vw, 2.4rem);
}

.told__over {
	font-family: var(--font-head);
	font-size: clamp(0.76rem, 2.8vw, 0.84rem);
	letter-spacing: .32em;
	text-indent: .32em;
	text-transform: uppercase;
	color: var(--accent, var(--lilac));
	margin: 0 0 clamp(1rem, 3vw, 1.5rem);
}

.told__say {
	font-size: clamp(1.16rem, 4.4vw, 1.42rem);
	line-height: 1.66;
	margin: 0;
	color: var(--ink);
}

.told__part {
	font-size: clamp(1.04rem, 3.9vw, 1.14rem);
	line-height: 1.7;
	margin: 0 0 1.5em;
	color: var(--ink);
}

.told__part:last-child { margin-bottom: 0; }

.told__was {
	display: block;
	font-family: var(--font-head);
	font-size: clamp(0.74rem, 2.7vw, 0.8rem);
	letter-spacing: .26em;
	text-indent: .26em;
	text-transform: uppercase;
	color: var(--accent-deep, var(--lilac));
	margin-bottom: .5em;
}

.told__promise {
	font-family: var(--font-body);
	font-style: italic;
	font-size: clamp(1rem, 3.7vw, 1.08rem);
	line-height: 1.7;
	text-align: center;
	color: var(--ink-soft, rgba(255, 255, 255, .8));
	margin: 0;
}

.back {
	padding: clamp(2.4rem, 7vw, 3.6rem) clamp(22px, 7vw, 4rem) clamp(3.4rem, 9vw, 5rem);
	text-align: center;
	border-top: 1px solid var(--rule);
}

.back__go {
	font-family: var(--font-head);
	font-size: clamp(0.8rem, 2.9vw, 0.88rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	color: var(--accent, var(--lilac));
	border-bottom: 1px solid currentColor;
	padding-bottom: .4em;
	text-decoration: none;
}

.made__hand {
	font-family: var(--font-body);
	font-size: clamp(1.2rem, 4.4vw, 1.42rem);
	font-style: italic;
	line-height: 1.62;
	margin: 1.4em 0 0;
	padding-top: 1.3em;
	border-top: 1px solid var(--rule);
	color: var(--ink);
}

.moment { position: relative; overflow: hidden; }

.moment__pic {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	opacity: .62;
	z-index: 0;
	pointer-events: none;
	transform: scale(1.04);
	animation: esm-breathe 26s ease-in-out infinite alternate;
}

.moment__pic::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse at 50% 42%, rgba(58, 0, 102, .48) 0%, rgba(45, 0, 84, .78) 58%, rgba(38, 0, 74, .93) 100%);
}

@keyframes esm-breathe {
	from { transform: scale(1.04); }
	to   { transform: scale(1.11); }
}

.moment__in { position: relative; z-index: 1; }

.open__over {
	font-family: var(--font-head);
	font-size: clamp(0.8rem, 2.9vw, 0.9rem);
	letter-spacing: .38em;
	text-indent: .38em;
	text-transform: uppercase;
	color: #F9C4D6;
	margin: 0 0 clamp(1.2rem, 4vw, 1.8rem);
}

.open__head {
	font-family: var(--font-head);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .06em;
	font-size: clamp(1.9rem, 8.2vw, 3.6rem);
	line-height: 1.28;
	margin: 0;
}

.open__say {
	font-size: clamp(1.1rem, 4.1vw, 1.24rem);
	line-height: 1.7;
	max-width: 30rem;
	margin: clamp(1.3rem, 4.4vw, 2rem) auto 0;
	color: var(--ink);
}

.open__go {
	appearance: none;
	display: inline-block;
	margin: clamp(1.8rem, 5.5vw, 2.6rem) 0 0;
	padding: .95em 3.1em;
	font-family: var(--font-head);
	font-size: clamp(0.86rem, 3.1vw, 0.95rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: #FFFFFF;
	cursor: pointer;
	border: 0;
	border-radius: 3px;
	background: linear-gradient(150deg, #F4B0C8 0%, #C86FA8 34%, #8A2E96 72%, #5A0F92 100%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .34),
		inset 0 0 0 1px #F4B0C8,
		0 8px 18px -10px rgba(20, 0, 40, .6);
	transition: transform .3s ease, box-shadow .3s ease;
}

.open__go:hover,
.open__go:focus-visible {
	transform: translateY(-2px);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .4),
		inset 0 0 0 1px #F9C4D6,
		0 12px 26px -12px rgba(20, 0, 40, .7);
}

.open__note {
	font-size: clamp(0.94rem, 3.5vw, 1rem);
	line-height: 1.66;
	color: var(--ink-soft, rgba(255, 255, 255, .8));
	margin: clamp(1.1rem, 3.6vw, 1.5rem) 0 0;
}

.moment__out {
	position: absolute;
	z-index: 2;
	top: clamp(14px, 3.4vw, 22px);
	right: clamp(14px, 3.4vw, 22px);
	font-family: var(--font-head);
	font-size: clamp(0.76rem, 2.8vw, 0.82rem);
	letter-spacing: .26em;
	text-indent: .26em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .72);
	text-decoration: none;
	padding: .55em .9em;
	border: 1px solid rgba(255, 255, 255, .26);
	border-radius: 2px;
	transition: color .3s ease, border-color .3s ease;
}

.moment__out:hover,
.moment__out:focus-visible { color: #FFFFFF; border-color: #F4B0C8; }

.map {
	position: relative;
	max-width: 44rem;
	margin: clamp(1.8rem, 5vw, 2.6rem) auto 0;
	padding-left: clamp(16px, 4.4vw, 26px);
	text-align: left;
}

.map::before {
	content: "";
	position: absolute;
	left: clamp(6px, 1.6vw, 10px);
	top: clamp(2.4rem, 7vw, 3.2rem);
	bottom: 1.4rem;
	width: 2px;
	background: linear-gradient(to bottom, #F4B0C8 0%, rgba(244, 176, 200, .28) 100%);
	border-radius: 2px;
}

.map__heart {
	position: relative;
	display: inline-block;
	margin: 0 0 clamp(1.4rem, 4vw, 2rem) -0.4rem;
	padding: .6em 1.5em;
	font-family: var(--font-head);
	font-size: clamp(1rem, 3.6vw, 1.14rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: #FFFFFF;
	border-radius: 999px;
	background: linear-gradient(150deg, #F4B0C8 0%, #C86FA8 46%, #8A2E96 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .34), 0 8px 18px -12px rgba(20, 0, 40, .7);
}

.map__branch {
	position: relative;
	margin: 0 0 clamp(1.3rem, 4vw, 1.9rem);
	padding: 0 0 0 clamp(18px, 4.6vw, 28px);
}

.map__branch::before {
	content: "";
	position: absolute;
	left: 0;
	top: .95em;
	width: clamp(12px, 3.4vw, 20px);
	height: 2px;
	background: rgba(244, 176, 200, .62);
	border-radius: 2px;
}

.map__branch::after {
	content: "";
	position: absolute;
	left: clamp(11px, 3.2vw, 19px);
	top: calc(.95em - 3px);
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #F4B0C8;
}

.map__was {
	font-family: var(--font-head);
	
	font-size: clamp(1rem, 3.7vw, 1.08rem);
	letter-spacing: .1em;
	text-indent: 0;
	text-transform: none;
	color: #F9C4D6;
	margin: 0 0 .5em;
}

.map__said {
	font-size: clamp(1.24rem, 4.6vw, 1.42rem);
	line-height: 1.62;
	color: var(--ink);
	margin: 0;
}

.map__branch:has( .map__said:empty ) { display: none; }

@media (min-width: 820px) {
	.map { padding-left: clamp(30px, 4vw, 44px); }
	.map__branch { max-width: 34rem; }
	.map__branch:nth-child(even) { margin-left: clamp(40px, 7vw, 90px); }
}

@media (prefers-reduced-motion: reduce) {
	.moment__pic { animation: none; transform: none; }
	.open__go { transition: none; }
	.open__go:hover, .open__go:focus-visible { transform: none; }
}

.letter {
	background: linear-gradient(168deg, #3A0A72 0%, #23054A 100%);
	padding: clamp(2.6rem, 8vw, 5.5rem) clamp(18px, 5vw, 3rem) clamp(3.4rem, 9vw, 6rem);
}

.letter__card {
	position: relative;
	max-width: 40rem;
	margin: 0 auto;
	padding: clamp(2.4rem, 8vw, 4.4rem) clamp(22px, 7vw, 4rem);
	background: linear-gradient(168deg, rgba(255, 255, 255, .085) 0%, rgba(255, 255, 255, .045) 100%);
	border: 1px solid rgba(244, 176, 200, .42);
	border-radius: 3px;
	box-shadow: 0 26px 60px -34px rgba(12, 0, 28, .9);
}

.letter__card::before {
	content: "";
	position: absolute;
	inset: clamp(8px, 2vw, 13px);
	border: 1px solid rgba(244, 176, 200, .22);
	border-radius: 2px;
	pointer-events: none;
}

.letter__mark {
	display: block;
	width: clamp(140px, 34vw, 190px);
	height: auto;
	margin: 0 auto clamp(2rem, 6vw, 3rem);
}

.letter__open {
	font-family: var(--font-body);
	font-style: italic;
	font-size: clamp(1.26rem, 4.8vw, 1.56rem);
	line-height: 1.5;
	color: #F9C4D6;
	margin: 0 0 clamp(1.3rem, 4vw, 1.8rem);
}

.letter__say p {
	font-size: clamp(1.1rem, 4.1vw, 1.2rem);
	line-height: 1.82;
	color: var(--ink);
	margin: 0 0 1.15em;
}

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

.letter__given {
	font-family: var(--font-head);
	font-size: clamp(1.06rem, 3.9vw, 1.2rem);
	letter-spacing: .06em;
	line-height: 1.6;
	text-align: center;
	color: var(--ink);
	margin: clamp(1.8rem, 5.5vw, 2.6rem) 0;
	padding: clamp(1.1rem, 3.6vw, 1.5rem) clamp(1rem, 3vw, 1.6rem);
	border-top: 1px solid rgba(244, 176, 200, .34);
	border-bottom: 1px solid rgba(244, 176, 200, .34);
}

.letter__close {
	font-family: var(--font-body);
	font-style: italic;
	font-size: clamp(1.14rem, 4.3vw, 1.3rem);
	line-height: 1.5;
	color: var(--ink);
	margin: clamp(1.8rem, 5.5vw, 2.4rem) 0 0;
}

.letter__from {
	font-family: var(--font-body);
	font-style: italic;
	font-size: clamp(1.5rem, 6.2vw, 2.1rem);
	line-height: 1.3;
	color: #F9C4D6;
	margin: .35em 0 0;
}

.letter__for {
	max-width: 40rem;
	margin: clamp(1.4rem, 4.4vw, 2rem) auto 0;
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.86rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	text-align: center;
	color: rgba(255, 255, 255, .68);
}

.letter__acts {
	display: grid;
	gap: 12px;
	max-width: 26rem;
	margin: clamp(2.4rem, 7vw, 3.4rem) auto 0;
}

.letter__go {
	display: block;
	text-align: center;
	padding: 17px 26px;
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.858rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	color: #FFFFFF;
	text-decoration: none;
	border-radius: 3px;
	border: 1px solid #F4B0C8;
	background: linear-gradient(150deg, #F4B0C8 0%, #C86FA8 34%, #8A2E96 72%, #5A0F92 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .32), 0 8px 18px -12px rgba(20, 0, 40, .6);
	transition: transform .3s ease;
}

.letter__go--quiet {
	background: transparent;
	border-color: rgba(222, 208, 242, .45);
	box-shadow: none;
}

.letter__go:hover,
.letter__go:focus-visible { transform: translateY(-2px); }

@media (prefers-reduced-motion: reduce) {
	.letter__go { transition: none; }
	.letter__go:hover, .letter__go:focus-visible { transform: none; }
}

.ways {
	display: grid;
	gap: clamp(16px, 3.4vw, 26px);
	max-width: 62rem;
	margin: 0 auto;
	padding: clamp(2.4rem, 7vw, 4rem) clamp(20px, 6vw, 3.4rem) clamp(3rem, 8vw, 4.6rem);
}

@media (min-width: 880px) { .ways { grid-template-columns: 1fr 1fr; } .way--say { grid-column: 1 / -1; } }

.way {
	position: relative;
	display: block;
	overflow: hidden;
	border: 1px solid var(--rule);
	border-radius: 3px;
	color: var(--ink);
	text-decoration: none;
	background: rgba(255, 255, 255, .04);
	transition: border-color .35s ease, transform .35s ease;
}

a.way:hover,
a.way:focus-visible { transform: translateY(-3px); }

.way--pro { border-top: 2px solid #8A3BD6; }
.way--her { border-top: 2px solid #F4B0C8; }
.way--say { border-top: 2px solid var(--rule); }

a.way--pro:hover, a.way--pro:focus-visible { border-color: #8A3BD6; }
a.way--her:hover, a.way--her:focus-visible { border-color: #F4B0C8; }

.way__pic {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	opacity: .34;
	z-index: 0;
}

.way__pic::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(168deg, rgba(45, 0, 84, .82) 0%, rgba(35, 0, 68, .94) 100%);
}

.way__in {
	position: relative;
	z-index: 1;
	display: block;
	padding: clamp(1.7rem, 5vw, 2.4rem);
}

.way__over {
	display: block;
	font-family: var(--font-head);
	font-size: clamp(0.76rem, 2.8vw, 0.84rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	margin-bottom: .7em;
}

.way--pro .way__over { color: #C99BF0; }
.way--her .way__over { color: #F9C4D6; }
.way--say .way__over { color: var(--lilac); }

.way__head {
	display: block;
	font-family: var(--font-head);
	font-weight: 200;
	font-size: clamp(1.42rem, 5.2vw, 1.8rem);
	letter-spacing: .04em;
	line-height: 1.28;
}

.way__say {
	display: block;
	font-size: clamp(1.04rem, 3.9vw, 1.12rem);
	line-height: 1.7;
	color: var(--ink-soft, rgba(255, 255, 255, .84));
	margin-top: .8em;
}

.way__go {
	display: inline-block;
	margin-top: 1.2em;
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.86rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	border-bottom: 1px solid currentColor;
	padding-bottom: .35em;
}

.way--pro .way__go { color: #C99BF0; }
.way--her .way__go { color: #F9C4D6; }

.note { margin-top: 1.4em; }

.note__label {
	display: block;
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.86rem);
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: 1.3em 0 .5em;
}

.note__say,
.note__back {
	width: 100%;
	font-family: var(--font-body);
	font-size: clamp(1.06rem, 3.9vw, 1.14rem);
	line-height: 1.7;
	color: var(--ink);
	background: rgba(255, 255, 255, .06);
	border: 1px solid var(--rule);
	border-radius: 3px;
	padding: .85em 1em;
}

.note__say:focus,
.note__back:focus { outline: 2px solid #F4B0C8; outline-offset: 2px; }

.note__go {
	appearance: none;
	margin-top: 1.4em;
	padding: 16px 34px;
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.858rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	color: #FFFFFF;
	cursor: pointer;
	border: 1px solid #F4B0C8;
	border-radius: 3px;
	background: linear-gradient(150deg, #F4B0C8 0%, #C86FA8 34%, #8A2E96 72%, #5A0F92 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .32), 0 8px 18px -12px rgba(20, 0, 40, .6);
}

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

@media (prefers-reduced-motion: reduce) {
	.way { transition: none; }
	a.way:hover, a.way:focus-visible { transform: none; }
}

.all {
	max-width: 60rem;
	margin: 0 auto;
	padding: clamp(2.4rem, 7vw, 4rem) clamp(20px, 6vw, 3.4rem) clamp(3.4rem, 9vw, 5rem);
}

.all__over {
	font-family: var(--font-head);
	font-size: clamp(0.82rem, 3vw, 0.92rem);
	letter-spacing: .34em;
	text-indent: .34em;
	text-transform: uppercase;
	color: var(--lilac);
	margin: clamp(2.4rem, 7vw, 3.4rem) 0 clamp(1.1rem, 3.4vw, 1.6rem);
	padding-bottom: .7em;
	border-bottom: 1px solid var(--rule);
}

.all__over:first-child { margin-top: 0; }
.all__over--her { color: #F9C4D6; border-bottom-color: rgba(244, 176, 200, .45); }
.all__over--pro { color: #C99BF0; border-bottom-color: rgba(138, 59, 214, .5); }

.all__list {
	display: grid;
	gap: clamp(12px, 2.6vw, 18px);
}

@media (min-width: 760px) { .all__list { grid-template-columns: 1fr 1fr; } }

.all__one {
	display: block;
	padding: clamp(1.2rem, 3.6vw, 1.6rem);
	border: 1px solid var(--rule);
	border-left: 3px solid var(--rule);
	border-radius: 3px;
	background: rgba(255, 255, 255, .04);
	color: var(--ink);
	text-decoration: none;
	transition: background .3s ease, border-color .3s ease, transform .3s ease;
}

a.all__one:hover,
a.all__one:focus-visible {
	background: rgba(255, 255, 255, .08);
	transform: translateY(-2px);
}

.all__one--her { border-left-color: #F4B0C8; }
.all__one--pro { border-left-color: #8A3BD6; }
.all__one--wait { border-left-color: var(--lilac); background: rgba(255, 255, 255, .02); }

.all__head {
	display: block;
	font-family: var(--font-head);
	font-size: clamp(1.14rem, 4.2vw, 1.3rem);
	font-weight: 200;
	letter-spacing: .04em;
	line-height: 1.3;
}

.all__say {
	display: block;
	font-size: clamp(1rem, 3.7vw, 1.08rem);
	line-height: 1.66;
	color: var(--ink-soft, rgba(255, 255, 255, .82));
	margin-top: .55em;
}

@media (prefers-reduced-motion: reduce) {
	.all__one { transition: none; }
	a.all__one:hover, a.all__one:focus-visible { transform: none; }
}

.around {
	max-width: 46rem;
	margin: 0 auto;
	padding: clamp(1.8rem, 5.5vw, 2.6rem) clamp(20px, 6vw, 3rem);
	text-align: center;
	border-top: 1px solid var(--rule);
	border-bottom: 1px solid var(--rule);
}

.around__head {
	font-family: var(--font-head);
	font-weight: 200;
	font-size: clamp(1.24rem, 4.6vw, 1.5rem);
	letter-spacing: .04em;
	line-height: 1.34;
	color: var(--ink);
	margin: 0;
}

.around__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .5em .6em;
	margin: clamp(1rem, 3.4vw, 1.4rem) 0 0;
}

.around__one {
	font-family: var(--font-head);
	font-size: clamp(0.84rem, 3.1vw, 0.92rem);
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--ink);
	padding: .5em 1em;
	border: 1px solid rgba(244, 176, 200, .42);
	border-radius: 999px;
	background: rgba(255, 255, 255, .05);
}

.around__say {
	font-size: clamp(1rem, 3.7vw, 1.08rem);
	line-height: 1.66;
	color: var(--ink-soft, rgba(255, 255, 255, .82));
	margin: clamp(.9rem, 3vw, 1.2rem) 0 0;
}

.seen {
	border: 0;
	margin: clamp(2rem, 6vw, 2.8rem) 0 0;
	padding: clamp(1.4rem, 4.4vw, 2rem) 0 0;
	border-top: 1px solid var(--rule);
	text-align: left;
}

.seen__over {
	font-family: var(--font-head);
	font-size: clamp(0.82rem, 3vw, 0.9rem);
	letter-spacing: .32em;
	text-indent: .32em;
	text-transform: uppercase;
	color: #F9C4D6;
	padding: 0;
	margin: 0 0 .5em;
}

.seen__note {
	font-size: clamp(1rem, 3.7vw, 1.06rem);
	line-height: 1.66;
	color: var(--ink-soft, rgba(255, 255, 255, .82));
	margin: 0 0 clamp(1.1rem, 3.4vw, 1.5rem);
}

.seen__one {
	display: flex;
	gap: .9em;
	align-items: flex-start;
	padding: clamp(1rem, 3.2vw, 1.3rem);
	margin-bottom: 10px;
	border: 1px solid var(--rule);
	border-radius: 3px;
	background: rgba(255, 255, 255, .035);
	cursor: pointer;
	transition: border-color .3s ease, background .3s ease;
}

.seen__one:hover { background: rgba(255, 255, 255, .07); }

.seen__one:has( input:checked ) {
	border-color: #F4B0C8;
	background: rgba(244, 176, 200, .12);
}

.seen__one:has( input:focus-visible ) {
	outline: 2px solid #F9C4D6;
	outline-offset: 2px;
}

.seen__one input {
	flex: 0 0 auto;
	width: 1.25em;
	height: 1.25em;
	margin-top: .25em;
	accent-color: #F4B0C8;
}

.seen__head {
	display: block;
	font-family: var(--font-head);
	font-size: clamp(1.06rem, 3.9vw, 1.16rem);
	letter-spacing: .03em;
	line-height: 1.34;
	color: var(--ink);
}

.seen__say {
	display: block;
	font-size: clamp(1rem, 3.7vw, 1.06rem);
	line-height: 1.66;
	color: var(--ink-soft, rgba(255, 255, 255, .82));
	margin-top: .4em;
}

@media (prefers-reduced-motion: reduce) {
	.seen__one { transition: none; }
}

.letter__card--draft {
	max-width: none;
	margin: clamp(1.4rem, 4.4vw, 2rem) 0 0;
	text-align: left;
}

.letter__card--draft .letter__say p:empty { display: none; }

.site-header__mark img {
	display: block;
	width: clamp(118px, 30vw, 168px);
	height: auto;
}

.site-open {
	display: none;
	appearance: none;
	align-items: center;
	padding: .68em 1.5em;
	border: 0;
	border-radius: 999px;
	cursor: pointer;

	
	background: linear-gradient(178deg, #FBD3E2 0%, #F4B0C8 46%, #E695B4 100%);

	color: #3A0066;
	font-family: var(--font-head);
	font-size: clamp(0.82rem, 3.1vw, 0.9rem);
	letter-spacing: .24em;
	text-indent: .24em;
	text-transform: uppercase;

	box-shadow:
		
		0 2px 0 0 #C0739A,
		
		0 0 0 1.5px #6E1BA8,
		inset 0 1px 0 rgba(255, 255, 255, .68),
		0 8px 18px -12px rgba(20, 0, 40, .55);

	transition: transform .28s ease, box-shadow .28s ease;
}

.site-open:hover,
.site-open:focus-visible {
	transform: translateY(-1px);
	box-shadow:
		0 3px 0 0 #C0739A,
		0 0 0 1.5px #8A3BD6,
		inset 0 1px 0 rgba(255, 255, 255, .78),
		0 12px 22px -12px rgba(20, 0, 40, .6);
}

.site-open:active {
	transform: translateY(1px);
	box-shadow:
		0 1px 0 0 #C0739A,
		0 0 0 1.5px #6E1BA8,
		inset 0 1px 0 rgba(255, 255, 255, .5);
}

.site-open[aria-expanded="true"] [data-word] { visibility: hidden; }

.site-open[aria-expanded="true"] [data-word]::after {
	content: "Close";
	visibility: visible;
	position: absolute;
	left: 0;
	right: 0;
	text-align: center;
}

.site-open [data-word] { position: relative; display: block; }

@media (max-width: 860px) {

	.site-header {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		flex-wrap: wrap;
	}

	
	.site-header__mark { order: 1; }
	.site-open { display: flex; order: 2; margin-left: auto; }
	.esm-folds .site-nav { order: 3; }

	
	.site-header__mark { display: block; }

	
	.esm-folds .site-nav {
		display: none;
		width: 100%;
		order: 3;
		flex-direction: column;
		align-items: flex-start;
		gap: .1rem;
		margin-top: 1rem;
		padding-top: 1rem;
		border-top: 1px solid var(--rule);
	}

	.esm-folds .site-nav.is-open { display: flex; }

	.site-nav > li { width: 100%; }

	.site-nav a {
		display: block;
		padding: .72em 0;
		font-size: 1.06rem;
		letter-spacing: .04em;
	}

	.site-nav .sub-menu {
		padding: 0 0 .4rem 1rem;
		margin: 0;
		border-left: 1px solid var(--rule);
	}

	.site-nav .sub-menu a { font-size: .98rem; opacity: .78; }
}

@media (prefers-reduced-motion: reduce) {
	.site-open__lines span { transition: none; }
}

@media (max-width: 619px) {

	
	.four {
		display: block;
		grid-template-columns: none;
		gap: 0;
		padding: 3px 0 16px;
		overflow-x: hidden;
		overflow-y: hidden;
	}

	.four img {
		flex: 0 0 74vw;
		width: 74vw;
		border-radius: 3px;
		aspect-ratio: 4 / 5;
	}
}

@media (min-width: 620px) {
	.four__rail {
		display: contents;
		animation: none;
	}

	
	.four__rail img[aria-hidden="true"] { display: none; }
}

@media (max-width: 619px) {

	
	.bloom {
		gap: 12px;
		padding: 18px 30px 34px;
	}

	
	.petal__say {
		font-size: clamp(0.8rem, 3.1vw, 0.9rem);
		letter-spacing: .14em;
		line-height: 1.42;
	}

	.petal__under {
		font-size: clamp(0.62rem, 2.4vw, 0.7rem);
		letter-spacing: .2em;
		margin-top: .35em;
	}
}

@keyframes esm-drift {
	from { transform: translate3d(0, 0, 0); }
	to   { transform: translate3d(-50%, 0, 0); }
}

.four__rail {
	display: flex;
	gap: 10px;
	width: max-content;
	animation: esm-drift 46s linear infinite;
	will-change: transform;
}

.four:hover .four__rail,
.four:focus-within .four__rail,
.four.is-held .four__rail {
	animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
	.four__rail { animation: none; }
}

@media (min-width: 620px) {
	.four__rail {
		display: contents;
		animation: none;
	}

	
	.four__rail img[aria-hidden="true"] { display: none; }
}

.room {
	max-width: 46rem;
	margin: 0 auto;
	padding: clamp(2.4rem, 7vw, 3.6rem) clamp(22px, 6vw, 3rem);
	border-top: 1px solid var(--rule);
}

.room__over {
	font-family: var(--font-head);
	font-size: clamp(0.96rem, 3.5vw, 1.06rem);
	letter-spacing: .2em;
	text-indent: .2em;
	text-transform: uppercase;
	color: #F9C4D6;
	margin: 0 0 clamp(1.1rem, 3.4vw, 1.6rem);
}

.room__head {
	font-family: var(--font-head);
	font-weight: 200;
	font-size: clamp(1.42rem, 5.2vw, 1.9rem);
	line-height: 1.3;
	letter-spacing: .03em;
	margin: 0 0 .6em;
	color: var(--ink);
}

.room__say,
.room__note {
	font-size: clamp(1.16rem, 4.3vw, 1.26rem);
	line-height: 1.75;
	color: var(--ink-soft, rgba(255, 255, 255, .84));
	margin: 0;
}

.room__note { margin-top: clamp(1.2rem, 3.6vw, 1.6rem); }

.room__go {
	display: inline-block;
	margin-top: clamp(1.3rem, 4vw, 1.8rem);
	padding: 15px 30px;
	font-family: var(--font-head);
	font-size: clamp(0.8rem, 2.9vw, 0.88rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	color: #FFFFFF;
	text-decoration: none;
	border-radius: 3px;
	border: 1px solid #F4B0C8;
	background: linear-gradient(150deg, #F4B0C8 0%, #C86FA8 34%, #8A2E96 72%, #5A0F92 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .32), 0 8px 18px -12px rgba(20, 0, 40, .6);
}

.room__quiet {
	font-family: var(--font-head);
	font-size: clamp(0.78rem, 2.86vw, 0.86rem);
	letter-spacing: .28em;
	text-indent: .28em;
	text-transform: uppercase;
	color: var(--ink-soft, rgba(255, 255, 255, .7));
	border-bottom: 1px solid currentColor;
	padding-bottom: .35em;
	text-decoration: none;
}

.room--out { text-align: center; padding-bottom: clamp(3rem, 9vw, 5rem); }

.posts { display: grid; gap: clamp(14px, 3vw, 20px); }

.post {
	padding: clamp(1.3rem, 4vw, 1.8rem);
	border: 1px solid var(--rule);
	border-left: 3px solid #F4B0C8;
	border-radius: 3px;
	background: rgba(255, 255, 255, .04);
}

.post__where {
	font-family: var(--font-head);
	font-size: clamp(1.14rem, 4.2vw, 1.3rem);
	font-weight: 200;
	letter-spacing: .04em;
	margin: 0;
	color: var(--ink);
}

.post__when {
	font-size: clamp(1.04rem, 3.8vw, 1.1rem);
	color: rgba(255, 255, 255, .62);
	margin: .3em 0 0;
}

.post__said {
	font-size: clamp(1.16rem, 4.3vw, 1.24rem);
	line-height: 1.74;
	color: var(--ink);
	margin: .9em 0 0;
}

.post__waiting {
	font-family: var(--font-body);
	font-style: italic;
	font-size: clamp(1.12rem, 4.1vw, 1.2rem);
	line-height: 1.66;
	color: var(--ink-soft, rgba(255, 255, 255, .78));
	margin: 1em 0 0;
}

.post__back {
	margin-top: 1.2em;
	padding-top: 1.2em;
	border-top: 1px solid rgba(244, 176, 200, .38);
}

.post__over {
	font-family: var(--font-head);
	font-size: clamp(0.76rem, 2.8vw, 0.84rem);
	letter-spacing: .28em;
	text-indent: .28em;
	text-transform: uppercase;
	color: #F9C4D6;
	margin: 0;
}

.key {
	display: grid;
	gap: clamp(18px, 4vw, 28px);
	max-width: 52rem;
	margin: 0 auto;
	padding: clamp(2.4rem, 7vw, 3.6rem) clamp(22px, 6vw, 3rem) clamp(3.4rem, 9vw, 5rem);
}

@media (min-width: 820px) { .key { grid-template-columns: 1fr 1fr; align-items: start; } }

.key__one {
	padding: clamp(1.6rem, 4.6vw, 2.2rem);
	border: 1px solid var(--rule);
	border-top: 2px solid #F4B0C8;
	border-radius: 3px;
	background: rgba(255, 255, 255, .05);
}

.key__one--back { border-top-color: var(--rule); background: rgba(255, 255, 255, .025); }

.key__over {
	font-family: var(--font-head);
	font-size: clamp(0.8rem, 2.9vw, 0.88rem);
	letter-spacing: .3em;
	text-indent: .3em;
	text-transform: uppercase;
	color: #F9C4D6;
	margin: 0 0 .4em;
}

.key__one--back .key__over { color: var(--lilac); }

.key__hint {
	font-size: clamp(0.98rem, 3.6vw, 1.04rem);
	line-height: 1.62;
	color: var(--ink-soft, rgba(255, 255, 255, .74));
	margin: .5em 0 0;
}

.key__hint a { color: #F9C4D6; }

.note__go--quiet {
	background: transparent;
	border-color: rgba(222, 208, 242, .45);
	box-shadow: none;
}

.seen__note--held {
	padding: .85em 1em;
	border-left: 3px solid #F4B0C8;
	background: rgba(244, 176, 200, .12);
	border-radius: 0 3px 3px 0;
}

.seen__own {
	display: block;
	margin: clamp( 0.9rem, 2.4vh, 1.3rem ) 0 0;
}

.seen__own-head {
	display: block;
	font-family: var( --font-head );
	font-size: clamp( 0.7rem, 2.5vw, 0.78rem );
	letter-spacing: .26em;
	text-indent: .26em;
	text-transform: uppercase;
	color: var( --ink-soft );
	margin: 0 0 .55rem;
}

.seen__own-say {
	width: 100%;
	box-sizing: border-box;
	font-family: var( --font-body );
	font-size: clamp( 1rem, 3.4vw, 1.06rem );
	line-height: 1.5;
	color: var( --ink );
	background: var( --paper );
	border: 0;
	border-bottom: 1px solid var( --rule );
	border-radius: 0;
	padding: .6rem .1rem;
	appearance: none;
}

.seen__own-say::placeholder { color: var( --ink-soft ); opacity: .72; }

.seen__own-say:focus-visible {
	outline: 0;
	border-bottom-color: var( --ink );
}

.room__under {
	font-family: var( --font-body );
	font-style: italic;
	font-size: clamp( 1rem, 3.4vw, 1.12rem );
	line-height: 1.5;
	color: var( --ink-soft );
	margin: -.2rem 0 clamp( 1.2rem, 3vh, 1.7rem );
}

.half__atelier {
	margin: clamp( 1.3rem, 3.4vh, 1.9rem ) 0 0;
	padding: clamp( 1rem, 3vh, 1.4rem ) 0 0;
	border-top: 1px solid var( --rule );
	font-family: var( --font-body );
	font-size: clamp( 0.98rem, 3.3vw, 1.05rem );
	line-height: 1.6;
	color: var( --ink-soft );
}

.half__atelier-head {
	display: block;
	font-family: var( --font-head );
	font-size: clamp( 0.72rem, 2.6vw, 0.8rem );
	letter-spacing: .28em;
	text-indent: .28em;
	text-transform: uppercase;
	color: var( --ink );
	margin: 0 0 .5rem;
}

.half__atelier-go {
	display: inline;
	margin-left: .35rem;
	color: var( --ink );
	text-decoration: underline;
	text-underline-offset: .22em;
	text-decoration-thickness: 1px;
}

.half__atelier-go:hover { text-decoration-thickness: 2px; }

.half__share {
	margin: clamp( 1.3rem, 3.4vh, 1.9rem ) 0 0;
	padding: clamp( 1rem, 3vh, 1.4rem ) 0 0;
	border-top: 1px solid var( --rule );
	font-family: var( --font-body );
	font-size: clamp( 0.98rem, 3.3vw, 1.05rem );
	line-height: 1.6;
	color: var( --ink-soft );
}

.half__share-head {
	display: block;
	font-family: var( --font-head );
	font-size: clamp( 0.72rem, 2.6vw, 0.8rem );
	letter-spacing: .28em;
	text-indent: .28em;
	text-transform: uppercase;
	color: var( --ink );
	margin: 0 0 .5rem;
}

.half__share-go {
	display: inline;
	margin-left: .35rem;
	color: var( --ink );
	text-decoration: underline;
	text-underline-offset: .22em;
	text-decoration-thickness: 1px;
}

.half__share-go:hover { text-decoration-thickness: 2px; }

.said {
	max-width: 34ch;
	margin: clamp( 1rem, 3vh, 1.5rem ) auto 0;
	padding: 0 clamp( 1.1rem, 5vw, 2rem );
	font-family: var( --font-body );
	font-size: clamp( 1rem, 3.4vw, 1.08rem );
	line-height: 1.55;
	color: var( --ink );
	text-align: center;
}

.ways__mark {
	max-width: 34ch;
	margin: clamp( 2.2rem, 6vh, 3.4rem ) auto clamp( 0.7rem, 2vh, 1rem );
	padding: 0 clamp( 1.1rem, 5vw, 2rem );
	font-family: var( --font-head );
	font-size: clamp( 0.72rem, 2.6vw, 0.8rem );
	letter-spacing: .22em;
	text-indent: .22em;
	text-transform: uppercase;
	color: var( --ink-soft );
	text-align: center;
}

.post__pact { margin: 1.2em 0 0; }

.post__pact-go {
	font-family: var(--font-head);
	font-size: clamp(0.76rem, 2.8vw, 0.84rem);
	letter-spacing: .24em;
	text-transform: uppercase;
	color: var(--accent, #F4B0C8);
	text-decoration: underline;
	text-underline-offset: .45em;
	text-decoration-thickness: 1px;
}

.post__pact-go:hover { text-decoration-thickness: 2px; }
