:root{--pink:#f34779;--ink:#291320;--paper:#fff8f2;--muted:#66525c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px}.page{max-width:1800px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;padding:32px 5%;border-bottom:1px solid #29132022}.wordmark{font-size:32px;letter-spacing:-1.8px;font-weight:900;text-decoration:none;color:var(--ink)}.wordmark span{color:var(--pink);margin-left:3px}.pill{border:1px solid currentColor;border-radius:30px;padding:12px 18px;font-size:12px;font-weight:700;letter-spacing:1.3px}.hero{padding:72px 5% 86px;display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:700;margin:0 0 27px}h1{font-size:clamp(66px,8vw,124px);line-height:.94;letter-spacing:-7px;margin:0;font-weight:800}h1 em{color:var(--pink);font-family:Georgia,serif;font-weight:400;letter-spacing:-6px}.lede{font-size:23px;line-height:1.5;margin:30px 0 25px}.button{display:inline-flex;gap:35px;align-items:center;border-radius:40px;background:var(--ink);color:white;text-decoration:none;padding:19px 24px;font-weight:700}.button:hover{background:#58253d}.button span{font-size:24px;line-height:1}.button:focus-visible,a:focus-visible{outline:3px solid #cf2255;outline-offset:5px}.launch-note{font-size:13px;color:var(--muted);margin-top:17px}.concept{background:var(--pink);border-radius:180px 180px 20px 20px;min-height:610px;position:relative;display:flex;flex-direction:column;align-items:center;padding:45px 30px 25px}.concept-top{display:flex;justify-content:space-between;width:80%;font-size:10px;font-weight:bold;letter-spacing:1px;margin-top:28px}.note{width:78%;padding:25px 27px;box-shadow:0 12px 0 #2913200d;position:relative;border:1px solid #2913201a}.note-one{background:#fff8f2;transform:rotate(-9deg);margin-top:45px;align-self:flex-start;z-index:1}.note-two{background:#e5eb96;transform:rotate(7deg);align-self:flex-end;margin-top:-15px;z-index:2}.note-label{font-size:10px;font-weight:700;letter-spacing:1.4px}.note p{font-family:Georgia,serif;font-size:40px;line-height:1.08;letter-spacing:-1.6px;margin:18px 0 24px}.note-bottom{display:flex;justify-content:space-between;font-size:12px;align-items:center}.note-bottom span{font-size:27px}.match{z-index:3;background:var(--ink);color:white;padding:15px 23px;border-radius:30px;font-size:13px;font-weight:bold;letter-spacing:1px;transform:rotate(-5deg);margin-top:-9px}.match span{color:var(--pink);margin-right:10px}.concept-caption{font-size:12px;margin:29px 0 0}.how{background:#f2e8e4;border-top:1px solid #29132015;padding:66px 5% 72px;display:grid;grid-template-columns:1fr 1.7fr;gap:7%}.section-heading h2{font-size:40px;letter-spacing:-1.8px;line-height:1.08;margin:0}.section-heading .eyebrow{font-size:10px;line-height:1.7}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.number{font-family:Georgia,serif;font-style:italic;font-size:26px;color:#a33c5b}h3{font-size:18px;line-height:1.3;letter-spacing:-.4px;margin:18px 0 12px}.steps p{font-size:15px;line-height:1.6;color:var(--muted);margin:0}.closing{text-align:center;padding:80px 24px 88px}.closing>span:first-child{font-size:48px;color:#c72c59}.closing h2{font-size:52px;line-height:1.07;letter-spacing:-2px;margin:16px 0}.closing p{color:var(--muted);line-height:1.6;margin-bottom:30px}.dark{display:inline-block;font-size:11px}footer{margin:0 5%;padding:27px 0;border-top:1px solid #29132022;display:flex;align-items:center;justify-content:space-between;gap:20px}footer .wordmark{font-size:25px}footer p,footer>span{font-size:12px;color:var(--muted)}@media(min-width:1450px){.hero{gap:9%}.concept{max-width:630px}}@media(max-width:1000px){h1{letter-spacing:-4px}.concept{min-height:560px;padding:30px 22px}.note{width:89%}.note p{font-size:34px}.how{grid-template-columns:1fr;gap:35px}}@media(max-width:650px){header{padding:23px 6%}.wordmark{font-size:28px}header .pill{font-size:9px;padding:9px 10px;letter-spacing:.6px}.hero{grid-template-columns:1fr;padding:45px 6% 45px;gap:35px}h1{font-size:83px;letter-spacing:-4px}h1 em{letter-spacing:-4px}.eyebrow{font-size:10px}.lede{font-size:21px;margin-top:23px}.concept{min-height:555px;border-radius:140px 140px 18px 18px;max-width:430px;width:100%;justify-self:center}.concept-top{font-size:9px}.note{width:82%}.note p{font-size:35px}.concept-caption{font-size:11px}.how{padding:44px 6%}.steps{grid-template-columns:1fr;gap:27px}.steps article{padding-left:48px;position:relative}.number{position:absolute;left:0;top:12px}h3{margin-top:12px}.steps p{font-size:16px}.section-heading h2{font-size:36px}.closing{padding:50px 6%}.closing h2{font-size:40px}footer{flex-wrap:wrap;margin:0 6%}footer p{order:3;flex-basis:100%;margin:0}footer>span{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Keep the headline and secret cards comfortably readable on narrow screens. */
.note-two{margin-top:10px}.concept{padding-bottom:28px}.concept-top{font-size:12px}.note-label{font-size:12px}.section-heading .eyebrow{font-size:12px}.steps p{font-size:16px}@media(max-width:650px){h1{font-size:clamp(58px,15vw,83px);letter-spacing:-3px}.note{width:90%;padding:22px 20px}.note p{font-size:clamp(28px,8vw,35px)}.note-one{transform:rotate(-6deg)}.note-two{transform:rotate(5deg);margin-top:18px}.concept{min-height:560px;padding:25px 20px}.concept-top{font-size:10px;width:85%;gap:10px}.note-label{font-size:10px}.concept-caption{font-size:12px;text-align:center;line-height:1.5}.button{gap:20px}.section-heading .eyebrow{font-size:11px}header{gap:12px}header .pill{max-width:150px;text-align:center}}
.header-tools{display:flex;align-items:center;gap:16px;min-width:0}#language{font:inherit;font-size:14px;font-weight:700;color:var(--ink);background:var(--paper);border:1px solid #29132055;border-radius:24px;padding:12px 30px 12px 15px;max-width:160px;cursor:pointer}#language:focus-visible{outline:3px solid #cf2255;outline-offset:3px}html:not([lang=en]) h1{font-size:clamp(46px,6vw,88px);line-height:1.08;letter-spacing:-3px;overflow-wrap:anywhere}html:not([lang=en]) h1 em{letter-spacing:-2px}html:not([lang=en]) .note p{font-size:clamp(26px,2.5vw,38px);line-height:1.2;letter-spacing:-.6px}html:not([lang=en]) .note-bottom{line-height:1.5}html:not([lang=en]) .concept-top{gap:15px;line-height:1.5}html:not([lang=en]) .concept-top span:last-child{flex-shrink:0}html:not([lang=en]) .match{text-align:center;line-height:1.5}html:not([lang=en]) .concept-caption{text-align:center;line-height:1.5}html:lang(ja) h1,html:lang(ko) h1,html:lang(zh) h1{letter-spacing:-1px;line-height:1.25}html:lang(ja) h1 em,html:lang(ko) h1 em,html:lang(zh) h1 em{font-family:inherit;font-style:normal;font-weight:700;letter-spacing:-1px}html:lang(ko){word-break:keep-all;overflow-wrap:anywhere}@media(max-width:850px){header .pill{display:none}html:not([lang=en]) h1{font-size:clamp(42px,7vw,66px)}}@media(max-width:650px){header{flex-wrap:wrap}.header-tools{margin-left:auto}#language{font-size:14px;padding:10px 24px 10px 12px;max-width:145px}html:not([lang=en]) h1{font-size:clamp(42px,10vw,60px);letter-spacing:-1.5px}html:not([lang=en]) h1 em{letter-spacing:-1px}html:not([lang=en]) .note p{font-size:28px}html:not([lang=en]) .concept{min-height:0}html:not([lang=en]) .concept-top{font-size:11px}html:not([lang=en]) .concept-caption{margin-top:24px}.button{white-space:normal;line-height:1.4}}
h1{white-space:pre-line}
html:lang(ja) body{font-family:Arial,"Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo","Noto Sans CJK JP",sans-serif}html:lang(ko) body{font-family:Arial,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans CJK KR",sans-serif}html:lang(zh-Hans) body{font-family:Arial,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif}html:lang(zh-Hant) body{font-family:Arial,"PingFang TC","Microsoft JhengHei","Noto Sans CJK TC",sans-serif}html:lang(ja) .note p,html:lang(ko) .note p,html:lang(zh) .note p{font-family:inherit}

/* Readability: consistent text sizes across languages and viewport sizes. */
body{font-size:1rem}
.eyebrow,.section-heading .eyebrow{font-size:1rem;line-height:1.6;letter-spacing:.075em}
.intro .eyebrow{font-size:1.0625rem;max-width:36em}
.pill,header .pill,.dark{font-size:.875rem;line-height:1.5;letter-spacing:.06em}
.launch-note{font-size:1rem;line-height:1.6}
.concept-top,html:not([lang=en]) .concept-top{font-size:.875rem;line-height:1.5;letter-spacing:.045em;gap:16px}
.concept-top span:last-child{flex-shrink:0}
.note-label{font-size:.875rem;line-height:1.5;letter-spacing:.065em}
.note-bottom,html:not([lang=en]) .note-bottom{font-size:1rem;line-height:1.6}
.match{font-size:1rem;line-height:1.5;letter-spacing:.045em}
.concept-caption,html:not([lang=en]) .concept-caption{font-size:1rem;line-height:1.6;text-align:center}
.steps p,.closing p{font-size:1.125rem;line-height:1.65}
h3{font-size:1.25rem;line-height:1.4}
footer p,footer>span{font-size:.875rem;line-height:1.6}
#language{font-size:1rem;min-height:44px;max-width:180px}
.button{font-size:1.0625rem;line-height:1.5}
.note-two{margin-top:28px}
.note{min-width:0;overflow-wrap:break-word}
.steps>*{min-width:0}
@media(max-width:1000px){.hero{grid-template-columns:1fr;gap:44px}.intro{max-width:720px}.concept{width:100%;max-width:580px;justify-self:center}.steps{grid-template-columns:1fr}.steps article{max-width:65ch}.how{gap:32px}}
@media(max-width:650px){.intro .eyebrow{font-size:1rem}.concept{padding:28px 24px;max-width:460px}.concept-top{width:90%}.note{width:94%;padding:24px 20px}.note-one{transform:rotate(-4deg)}.note-two{transform:rotate(4deg);margin-top:30px}.match{margin-top:6px}#language{max-width:160px}.steps p,.closing p{font-size:1.0625rem}.section-heading h2,.closing h2{line-height:1.2}.concept-caption{margin-top:25px}}

/* Chinese reading comfort: clear sans-serif glyphs and stronger small text. */
@font-face{font-family:CrushlistSC;src:url('/fonts/noto-sans-sc.woff?v=story-2') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:CrushlistTC;src:url('/fonts/noto-sans-tc.woff?v=story-2') format('woff');font-style:normal;font-weight:400;font-display:swap}
html:lang(zh-Hans) body{font-family:CrushlistSC,"PingFang SC","Microsoft YaHei",sans-serif}
html:lang(zh-Hant) body{font-family:CrushlistTC,"PingFang TC","Microsoft JhengHei",sans-serif}
.intro .eyebrow{font-size:1.25rem;line-height:1.65;letter-spacing:.035em}
.launch-note,.concept-top,html:not([lang=en]) .concept-top,.note-label,.note-bottom,html:not([lang=en]) .note-bottom,.concept-caption,html:not([lang=en]) .concept-caption{font-size:1.125rem;line-height:1.7;letter-spacing:0}
.launch-note{color:var(--ink);font-weight:500}
.note-label,.concept-top{font-weight:700}
html:lang(zh) .eyebrow,html:lang(zh) .pill,html:lang(zh) .note-label,html:lang(zh) .match{letter-spacing:0}
html:lang(zh) .intro .eyebrow{font-size:1.375rem}
html:lang(zh) .launch-note,html:lang(zh) .note-bottom,html:lang(zh) .concept-caption{font-size:1.25rem;line-height:1.8}
html:lang(zh) .concept-top,html:lang(zh) .note-label{font-size:1.25rem;line-height:1.7}
html:lang(zh) .steps p,html:lang(zh) .closing p{font-size:1.25rem;line-height:1.85;color:var(--ink)}
html:lang(zh) footer p,html:lang(zh) footer>span{font-size:1rem;line-height:1.8}
html:lang(zh) .note-one,html:lang(zh) .note-two{transform:none}
html:lang(zh) .note{width:100%;border-radius:8px}
html:lang(zh) .note-two{margin-top:22px}
html:lang(zh) .match{transform:none;margin-top:18px}
html:lang(zh) h1 em{display:block}
html:lang(zh) h1,html:lang(zh) h2,html:lang(zh) h3{letter-spacing:0;line-height:1.35}
html:lang(zh) .concept-top{width:100%;align-items:start}
html:lang(zh) .concept-top span:last-child{font-size:.875rem}
/* Localized explanations need room to breathe, especially in the example cards. */
.lede{max-width:38em;font-size:1.25rem;line-height:1.7}
.note p,html:not([lang=en]) .note p{font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.4;letter-spacing:0}
.note-label{display:block}
.concept-top{width:100%;align-items:start}
.concept-top span:last-child{font-size:.875rem}
.match,html:not([lang=en]) .match{font-size:1rem;text-align:center;overflow-wrap:anywhere}
.steps p{max-width:60ch}
@media(min-width:1001px){.how{grid-template-columns:1fr;gap:36px}.steps{gap:40px}}

/* A quieter, warmer setting for feelings that have not been spoken. */
:root{--pink:#b83755;--paper:#fffaf5;--muted:#604e56}
.hero{align-items:center}.concept{background:#f4dce0;border-radius:100px 100px 24px 24px;min-height:0;padding:36px 30px}.concept-top{margin-top:8px}.note-one{margin-top:32px}.note-two{background:#f7ecd9}.note{border-radius:10px}.match{transform:none;margin-top:22px}.concept-caption{margin-top:20px}
h1,html:not([lang=en]) h1{font-size:clamp(44px,5.2vw,78px);line-height:1.12;letter-spacing:-2px;overflow-wrap:break-word}h1 em,html:not([lang=en]) h1 em{letter-spacing:-1px}.intro .eyebrow{color:#96324a}.lede{font-size:1.25rem}.story{padding:64px 6%;max-width:940px;margin:auto}.story .eyebrow{font-size:1.375rem;letter-spacing:0}.story>p:last-child{font-size:1.25rem;line-height:1.85;margin:0;color:var(--muted)}.closing{background:#f6e9e7}.closing h2{font-size:clamp(32px,4vw,52px)}.closing p{max-width:650px;margin-left:auto;margin-right:auto}
html:lang(zh) h1,html:lang(ja) h1,html:lang(ko) h1{letter-spacing:0;line-height:1.4}html:lang(zh) h1 em,html:lang(ja) h1 em,html:lang(ko) h1 em{letter-spacing:0}
@media(max-width:650px){h1,html:not([lang=en]) h1{font-size:clamp(38px,9vw,56px);letter-spacing:-1px}.concept{border-radius:56px 56px 20px 20px;padding:28px 22px}.note-one,.note-two{transform:none;width:100%}.story{padding:44px 6%}html:lang(zh) h1,html:lang(ja) h1,html:lang(ko) h1{letter-spacing:0}}
h1,html:not([lang=en]) h1{overflow-wrap:anywhere}
