.ct{background:var(--ink)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ct-hero{min-height:100svh;padding:120px var(--gutter) 7vh;background:radial-gradient(70% 60% at 100% 0%, #a8164a47, transparent 60%), var(--ink);grid-template-rows:auto 1fr auto;display:grid;position:relative}.ct-hero-top{border-bottom:1px solid var(--line);color:var(--paper-dim);justify-content:space-between;padding-bottom:14px;display:flex}.ct-hero-top>:last-child{color:var(--blossom);font-variant-numeric:tabular-nums}.ct-title{letter-spacing:-.055em;align-self:center;margin:4vh 0;font-size:clamp(80px,min(21vw,27vh),420px);line-height:.82}.ct-title-line{margin:0 -.06em;padding:0 .06em .06em;display:block;overflow:hidden}.ct-title-line--us{text-align:right;color:var(--blossom);letter-spacing:-.02em}.ct-title-inner{display:block}.ct-hero-bottom{grid-template-columns:1fr 1.6fr;align-items:end;gap:6vw;display:grid}.ct-sub{letter-spacing:-.025em;max-width:18ch;font-size:clamp(24px,2.4vw,40px);line-height:1.1}.ct-routes{grid-template-columns:1.4fr 1fr 1.1fr;gap:24px;list-style:none;display:grid}.ct-routes li{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding-top:14px;display:flex}.ct-routes li>.mono-label{color:var(--paper-dim)}.ct-route-pair{gap:18px;display:flex}.ct-route-link{color:var(--paper);font:inherit;letter-spacing:-.01em;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:baseline;gap:10px;padding:0;font-size:clamp(15px,1.2vw,20px);transition:color .3s;display:inline-flex}.ct-route-link:hover,.ct-route-hint{color:var(--blossom)}.ct-letter{min-height:100svh;padding:120px var(--gutter) 10vh;background:var(--paper);color:var(--ink);--line-ink:#0d0b0c24;position:relative;overflow:hidden}.ct-letter-top{border-bottom:1px solid var(--line-ink);color:#0d0b0c8c;justify-content:space-between;gap:24px;padding-bottom:14px;display:flex}.ct-form{max-width:1400px;margin-top:8vh}.ct-line{letter-spacing:-.035em;font-size:clamp(30px,min(4.6vw,8vh),80px);line-height:1.3}.ct-line+.ct-line{margin-top:1.5vh}.ct-field{vertical-align:baseline;display:inline-block;position:relative}.ct-field input,.ct-field textarea{font:inherit;letter-spacing:inherit;color:var(--crimson);caret-color:var(--crimson);field-sizing:content;background:0 0;border:0;border-bottom:2px solid #0d0b0c33;border-radius:0;outline:none;min-width:4.5em;max-width:100%;padding:0 .1em;transition:border-color .3s}.ct-field input[type=email]{min-width:7em}.ct-field input::placeholder,.ct-field textarea::placeholder{color:#0d0b0c38;font-family:var(--font-serif), Georgia, serif;letter-spacing:-.01em;font-style:italic}.ct-field input:focus,.ct-field textarea:focus{border-bottom-color:var(--crimson)}.ct-field input:focus:placeholder-shown,.ct-field textarea:focus:placeholder-shown{animation:1.1s ease-in-out infinite ct-ready}@keyframes ct-ready{0%,to{border-bottom-color:var(--crimson)}50%{border-bottom-color:#a8164a40}}@media (prefers-reduced-motion:reduce){.ct-field input:focus:placeholder-shown,.ct-field textarea:focus:placeholder-shown{animation:none}}.ct-field.has-error input,.ct-field.has-error textarea{border-bottom-color:var(--petal)}.ct-error{white-space:nowrap;color:var(--petal);letter-spacing:.06em;margin-top:6px;line-height:1.2;position:absolute;top:100%;left:.1em}.ct-line--message{flex-direction:column;gap:.2em;display:flex}.ct-field--message{display:block}.ct-field--message textarea{resize:none;width:100%;min-height:2.6em;line-height:1.3;display:block}.ct-submit{font-size:inherit;align-items:center;gap:32px;display:flex;margin-top:8vh!important}.ct-send{aspect-ratio:1;background:var(--crimson);color:#fff;width:clamp(140px,13vw,200px);font:inherit;letter-spacing:-.02em;cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;gap:14px;font-size:clamp(20px,1.8vw,28px);transition:background .3s;display:inline-flex;box-shadow:0 30px 60px -20px #a8164a8c}.ct-send:hover{background:var(--ink)}.ct-send:disabled{opacity:.7;cursor:progress}.ct-send-arrow{transition:transform .5s var(--ease-out)}.ct-send:hover .ct-send-arrow{transform:translate(6px)rotate(-45deg)}.ct-submit-error{letter-spacing:0;max-width:40ch;color:var(--petal);font-size:15px;line-height:1.5}.ct-submit-error a{border-bottom:1px solid}.ct-thanks{z-index:1;max-width:1200px;margin-top:12vh;position:relative}.ct-thanks>.mono-label{color:var(--crimson)}.ct-thanks h2{letter-spacing:-.045em;margin-top:3vh;font-size:clamp(48px,min(7vw,13vh),130px);line-height:.95}.ct-thanks h2 em{color:var(--crimson);letter-spacing:-.02em;display:block}.ct-thanks-body{color:#0d0b0cb8;max-width:44ch;margin-top:4vh;font-size:18px;line-height:1.55}.ct-again{border:0;border-bottom:1px solid var(--ink);font:inherit;cursor:pointer;background:0 0;margin-top:4vh;padding:0 0 4px;font-size:16px}.ct-again:hover{color:var(--crimson);border-color:var(--crimson)}.ct-petals{pointer-events:none;position:absolute;inset:0;overflow:hidden}.ct-petal{background:linear-gradient(135deg, #f7c6d3, var(--blossom) 60%, #e48aa3);opacity:.9;border-radius:100% 0;width:18px;height:14px;position:absolute;top:0;left:0}@media (max-width:899px){.ct-hero{padding-top:100px}.ct-hero-bottom,.ct-routes{grid-template-columns:1fr}.ct-hero-bottom{gap:32px}.ct-routes{gap:18px}.ct-letter{padding-top:96px}.ct-letter-top>:last-child{display:none}.ct-line{font-size:clamp(26px,7.4vw,40px)}.ct-submit{flex-direction:column;align-items:flex-start}}
