:root{--color-bg:#feebef;--color-surface:#fff8f9;--color-paper:#fffdfd;--color-white:#fff;--color-plum:#9f3e8f;--color-plum-deep:#7a2c6e;--color-plum-sheen:#8a2f7c;--color-plum-glow:#c25aa6;--color-plum-glow-bright:#d46ab6;--color-ink:#4e1d47;--color-ink-soft:#6b2f62;--color-on-plum:#fff;--color-rule:#9f3e8f52;--color-dot-off:#9f3e8f4d;--color-glass:#ffffffb8;--color-glow-white:#ffffffe6;--color-glow-none:#fff0;--color-card-top:#ffffffd9;--color-card-bottom:#fff3;--color-focus:#7a2c6e;--gradient-sheen:linear-gradient(90deg, var(--color-plum-sheen), var(--color-plum-glow) 50%, var(--color-plum-sheen));--gradient-sheen-bright:linear-gradient(90deg, var(--color-plum-sheen), var(--color-plum-glow-bright) 50%, var(--color-plum-sheen));--gradient-button:linear-gradient(90deg, var(--color-plum-sheen), #b04c98);--gradient-page-fade:linear-gradient(180deg, #feebef 0%, #fff4f7 22%, #fce3ec 40%, #fff6f9 58%, #fbe0ea 78%, #feebef 100%);--gradient-card:linear-gradient(180deg, var(--color-card-top), var(--color-card-bottom));--gradient-paper-in:linear-gradient(180deg, #fffdfd00 0, var(--color-paper) var(--space-2xl));--gradient-glow:radial-gradient(closest-side, var(--color-glow-white), var(--color-glow-none));--fade-mask:linear-gradient(to bottom, #000 52%, #000000eb 61.6%, #000000a6 73.6%, #0000004d 85.6%, #00000014 95.2%, transparent);--fade-mask-phone:linear-gradient(to bottom, #000 42%, #000000e6 54%, #0009 68%, #00000040 82%, #0000000f 93%, transparent);--fade-mask-side-left:linear-gradient(90deg, transparent, #000);--fade-mask-side-right:linear-gradient(90deg, #000, transparent);--font-script:var(--font-allison-face), cursive;--font-serif:var(--font-playfair-face), georgia, serif;--font-sans:var(--font-montserrat-face), "Segoe UI", system-ui, sans-serif;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--tracking-name:.2em;--tracking-label:.22em;--tracking-phone:.04em;--tracking-small:.06em;--leading-tight:1;--leading-display:1.05;--leading-quote:1.5;--leading-body:1.7;--leading-letter:1.6;--step--1:clamp(.8125rem, .79rem + .1vw, .875rem);--step-0:clamp(1rem, .96rem + .2vw, 1.0625rem);--step-1:clamp(1.125rem, 1.06rem + .3vw, 1.375rem);--step-2:clamp(1.3125rem, 1.2rem + .55vw, 1.6875rem);--step-3:clamp(1.875rem, 1.6rem + 1.2vw, 2.625rem);--step-name:clamp(1.625rem, 1.1rem + 2.4vw, 3.25rem);--step-script-sm:clamp(2.5rem, 2.1rem + 1.6vw, 3.375rem);--step-script-md:clamp(3rem, 2.4rem + 2.4vw, 4.375rem);--step-script-lg:clamp(3.5rem, 2.6rem + 3.6vw, 5.25rem);--step-script-phone:clamp(3.75rem, 2.4rem + 7vw, 4.75rem);--step-script-hero:clamp(5rem, 2.6rem + 10vw, 12.25rem);--step-quote-mark:5rem;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-s:1rem;--space-m:1.5rem;--space-l:2rem;--space-xl:3rem;--space-2xl:4.5rem;--space-3xl:6.5rem;--hero-overlap:calc(-1 * clamp(3.25rem, 1rem + 8vw, 7.5rem));--hero-overlap-phone:calc(-1 * var(--space-l));--hero-overlap-letter:calc(-1 * var(--space-xl));--gutter:1.5rem;--measure:36ch;--measure-wide:62ch;--width-page:70rem;--width-content:47.5rem;--width-cards:67.5rem;--width-photo:27.5rem;--width-photo-phone:20rem;--width-photo-letter:33rem;--width-full:100%;--photo-height:clamp(20rem, 12rem + 26vw, 31rem);--tap-target:2.75rem;--tap-target-lg:3rem;--dot-size:.625rem;--card-min:17.5rem;--rule-width:1px;--rule-width-strong:2px;--radius-paper:6px;--radius-card:2rem;--radius-panel:1.375rem;--radius-pill:999px;--radius-round:50%;--shadow-button:0 .75rem 2rem #8a2f7c42;--shadow-card:0 1.875rem 4.375rem #9f3e8f1a;--shadow-panel:0 1.125rem 2.5rem #9f3e8f12;--shadow-paper:0 2px 0 #9f3e8f14, 0 1.5rem 3.75rem #7a2c6e1f;--shadow-text-glow:0 0 2.5rem #d46ab640;--duration-fast:.15s;--duration-slow:.6s;--ease-out:cubic-bezier(.22, 1, .36, 1);--carousel-interval:7000;--ease-soft:cubic-bezier(.4, 0, .2, 1);--ease-write:cubic-bezier(.45, .05, .55, .95);--swap-out-fade:.42s;--swap-in-fade:.75s;--swap-glide:.45s;--swap-word-out:.26s;--write-word:.65s;--swap-word-in:.52s;--swap-rise:.35em;--swap-drift:6px;--swap-out-letter:.3s;--swap-in-letter:.6s;--write-duration:1s;--menu-bar-width:1.125rem;--menu-bar-shift:calc(var(--space-3xs) + var(--rule-width-strong));--layer-raised:1;--layer-header:10}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--space-3xl);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-height:100vh;font-family:var(--font-sans);font-size:var(--step-0);line-height:var(--leading-body);color:var(--color-ink);background:var(--color-bg);margin:0;overflow-x:clip}body[data-direction=fade]{background:var(--gradient-page-fade)}p,li,blockquote{text-wrap:pretty}img{max-width:var(--width-full);height:auto;display:block}h1,h2,h3,p,blockquote,figure{margin:0}h2{font-family:var(--font-serif);font-weight:var(--weight-medium);font-size:var(--step-3);line-height:var(--leading-display)}a{color:var(--color-plum-deep)}:focus-visible{outline:var(--rule-width-strong) solid var(--color-focus);outline-offset:var(--space-3xs)}.visually-hidden{width:var(--rule-width);height:var(--rule-width);margin:calc(-1 * var(--rule-width));clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--space-s);top:calc(-1 * var(--space-3xl));z-index:var(--layer-header);padding:var(--space-2xs) var(--space-s);background:var(--color-white);border-radius:var(--radius-pill);position:absolute}.skip-link:focus{top:var(--space-s)}.button{min-height:var(--tap-target-lg);padding:var(--space-xs) var(--space-m);border-radius:var(--radius-pill);font-family:var(--font-sans);font-weight:var(--weight-semibold);font-size:var(--step-0);transition:transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.button:hover{transform:translateY(-1px)}.button--primary{color:var(--color-on-plum);background:var(--gradient-button);box-shadow:var(--shadow-button)}.button--quiet{color:var(--color-plum-deep);background:var(--color-glass);letter-spacing:var(--tracking-phone)}.button--small{min-height:var(--tap-target);padding:var(--space-2xs) var(--space-m);font-size:var(--step--1)}.section{padding:var(--space-3xl) var(--gutter)}@media (width<=40rem){.section{padding-block:var(--space-2xl)}}.section__inner{max-width:var(--width-cards);margin:0 auto}.section__title{margin-bottom:var(--space-xl);text-align:center}body[data-direction=letter] .section--alt{background:var(--color-surface)}body[data-direction=letter] .section__inner{max-width:var(--width-content)}body[data-direction=letter] .section__title{text-align:start}.pending-tag{padding:0 var(--space-2xs);border-radius:var(--radius-pill);background:var(--color-dot-off);font-family:var(--font-sans);font-size:var(--step--1);font-style:normal;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-small);color:var(--color-plum-deep);vertical-align:middle;display:inline-block}.script{font-family:var(--font-script);font-weight:var(--weight-regular);line-height:var(--leading-tight);color:var(--color-plum)}.sheen{background:var(--gradient-sheen);color:#0000;-webkit-background-clip:text;background-clip:text}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:0s!important;animation-duration:0s!important}}
