:root{--paper:#f7f1e5;--ink:#343f31;--muted:#676b5c;--orange:#c9592c;--line:#dad7c5;--green:#354b38;--serif:"STKaiti","KaiTi","Songti SC","SimSun",serif;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:24px}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}::selection{background:#f7c181;color:#343f31}.wrap{max-width:1180px;margin-inline:auto;padding-inline:38px}.skip{position:fixed;left:16px;top:-80px;background:var(--green);color:white;padding:12px;z-index:20}.skip:focus{top:12px}.site-header{min-height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;font-weight:800;letter-spacing:1px;font-size:20px}.brand img{border-radius:12px}.brand small{display:block;margin-top:4px;font-size:10px;font-weight:400;letter-spacing:2px;color:var(--muted)}nav{display:flex;gap:30px;align-items:center;font-size:14px}nav a{padding:12px 0}nav a:hover,.text-link:hover{color:var(--orange)}.nav-home{border-bottom:1px solid var(--ink)}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:690px;padding-top:45px;padding-bottom:60px;gap:12px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;line-height:1.8;margin:0 0 24px}.status-dot{display:inline-block;width:7px;height:7px;background:#70845a;border-radius:100%;vertical-align:1px;margin-right:7px}h1,h2,h3,p{overflow-wrap:break-word}h1{font-size:clamp(40px,4.6vw,64px);letter-spacing:-2px;line-height:1.4;margin:0 0 28px;font-weight:900}h1 span{color:var(--orange)}.hero-intro{font-size:16px;line-height:2;color:var(--muted);margin:0 0 30px}.hero-actions{display:flex;align-items:center;gap:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:17px 24px;background:var(--green);border:1px solid var(--green);color:#fff9e9;border-radius:7px;font-size:14px;font-weight:700;box-shadow:0 4px 0 #223427;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 6px 0 #223427}.button:active{transform:translateY(2px);box-shadow:0 2px 0 #223427}.text-link{font-size:13px;padding:14px 0;border-bottom:1px solid #a5a891}.hero-note{font-size:11px;letter-spacing:2px;color:var(--muted);margin-top:24px}.hero-art{height:540px;position:relative;isolation:isolate}.sun-disc{position:absolute;inset:45px 9px 38px;border-radius:48% 48% 43% 43%;background:#f0d2a0;background-image:radial-gradient(ellipse at 60% 30%,#ffe9b6 0,transparent 65%);transform:rotate(5deg);border:1px solid #e2bc81}.sun-disc:after{content:"";position:absolute;inset:14px;border:1px dashed #c79d6460;border-radius:inherit}.hero-cats{position:absolute;width:100%;height:auto;bottom:10px;filter:drop-shadow(0 16px 12px #7e4a2322);transform:rotate(-5deg)}.art-note{position:absolute;background:#fffbef;padding:12px 18px;font-size:14px;box-shadow:0 4px 0 #80582a14;z-index:2;border:1px solid #ded5b9}.note-top{top:43px;left:2px;transform:rotate(-10deg);border-radius:45% 45% 40% 45%;padding:16px 26px}.note-bottom{right:-4px;bottom:26px;transform:rotate(7deg);font-family:var(--serif);font-size:19px}.note-bottom span{color:var(--orange)}.spark{position:absolute;z-index:2;color:var(--orange);line-height:1}.spark-a{font-size:55px;right:10px;top:28px;transform:rotate(12deg)}.spark-b{font-size:45px;left:-12px;bottom:77px}.art-index{position:absolute;bottom:-26px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px;letter-spacing:3px;color:var(--muted)}.ribbon{display:flex;justify-content:center;align-items:center;gap:clamp(20px,4vw,68px);min-height:72px;border-block:1px solid #dcd8be;background:#e8e9d9;font-family:var(--serif);font-weight:700;font-size:17px;letter-spacing:2px;padding:18px 24px}.ribbon b{font-size:22px;color:#88916a}.section{padding-top:96px;padding-bottom:96px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:54px}.section-heading .eyebrow,.feature-copy .eyebrow{color:var(--orange);margin-bottom:18px}h2{font-size:36px;line-height:1.5;letter-spacing:-1px;margin:0;font-weight:800}.section-heading>p{color:var(--muted);font-size:14px;line-height:2;margin:0 0 6px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.step-art{height:225px;position:relative;isolation:isolate;border-bottom:1px solid #d5c5a7;background:#efe2cb;border-radius:48% 48% 4px 4px;overflow:hidden;margin-bottom:28px}.step:nth-child(2) .step-art{background:#e4e8d7}.step:nth-child(3) .step-art{background:#f0dcca}.drop-art img{position:absolute;width:116px;height:116px;object-fit:contain;left:calc(50% - 58px);top:57px;transform:rotate(-12deg)}.drop-line{position:absolute;left:50%;height:65px;border-left:2px dashed #a8987b}.tap-mark{position:absolute;bottom:12px;right:23%;font-size:12px;color:#796440;transform:rotate(-7deg)}.stack-base{position:absolute;width:210px;height:auto;bottom:16px;left:calc(50% - 105px)}.stack-top{position:absolute;width:138px;height:auto;bottom:94px;left:calc(50% - 65px);transform:rotate(8deg)}.balance-mark{position:absolute;top:30px;left:25px;font-size:12px;transform:rotate(-15deg)}.match-art{display:flex;align-items:center;justify-content:center;gap:0;padding:14px}.match-art img{width:31%;height:auto;transform:rotate(-12deg)}.match-art img:nth-of-type(2){transform:translateY(-18px) rotate(7deg)}.match-art img:nth-of-type(3){transform:rotate(15deg)}.match-label{position:absolute;bottom:24px;font-size:12px;letter-spacing:3px;color:#9f4b2b}.match-spark{position:absolute;top:12px;right:23%;font-size:36px;color:#ae673f}.step-label{display:flex;align-items:center;gap:13px}.step-label>span{color:var(--orange);font-size:13px;font-weight:700}.step h3{font-size:20px;margin:0}.step p{font-size:14px;color:var(--muted);line-height:1.9;margin-bottom:0}.cat-section{background:var(--green);color:#fff4dc;position:relative}.cat-section .eyebrow{color:#eeb37b}.cat-section .section-heading>p{color:#cdd4be}.cat-explorer{display:grid;grid-template-columns:44% 1fr;gap:80px;align-items:center}.cat-portrait{position:relative;aspect-ratio:1;background:#ece7d3;border-radius:50% 50% 8px 8px;color:var(--green);display:flex;align-items:center;justify-content:center;isolation:isolate}.cat-portrait:after{content:"";position:absolute;border:1px dashed #a2a788;inset:14px;border-radius:inherit;z-index:-1}.cat-portrait>img{width:66%;height:65%;object-fit:contain;filter:drop-shadow(0 12px 5px #5c54331a)}.portrait-label{position:absolute;top:33px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:12px;letter-spacing:4px}.portrait-star{position:absolute;right:25px;top:22%;font-size:32px;color:var(--orange)}.portrait-caption{position:absolute;bottom:30px;font-family:var(--serif);font-size:16px}.cat-tag{font-size:11px;letter-spacing:2px;color:#f0bf88;margin:0 0 10px}.cat-details h3{font-size:42px;letter-spacing:2px;margin:0 0 12px}.cat-quote{font-family:var(--serif);font-size:22px;line-height:1.6;margin:0 0 14px}.cat-details #cat-description{font-size:14px;line-height:1.9;color:#e0e3d3;margin:0;min-height:54px}.cat-tip{border-top:1px solid #758069;padding-top:16px;margin-top:20px;display:flex;flex-direction:column;gap:7px;font-size:12px;line-height:1.8;color:#e0e3d3;min-height:77px}.cat-tip>span:first-child{color:#f0bf88;letter-spacing:2px;font-size:10px}.cat-picker{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:25px}.cat-picker button{padding:8px 2px 7px;min-width:0;border:1px solid #85927880;border-radius:7px;background:transparent;color:#fff4dc;cursor:pointer;transition:background .18s,border-color .18s}.cat-picker img{width:100%;height:50px;object-fit:contain;margin-bottom:7px}.cat-picker span{font-size:10px;white-space:nowrap}.cat-picker button[aria-pressed=true]{background:#f8e8bd;color:#354b38;border-color:#f8e8bd}.cat-picker button:hover{border-color:#f0bf88}.cat-picker button:focus-visible{outline-color:#f7be82}.together{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.feature-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:2;margin:24px 0 0}.feature-tag{display:inline-block;font-size:12px;border-bottom:1px solid #a4ab8c;padding-bottom:10px;margin-top:28px;letter-spacing:2px}.duo-art{height:400px;position:relative;background:#ece7d5;border-radius:44% 48% 8px 8px;isolation:isolate}.duo-ground{position:absolute;bottom:75px;left:8%;width:84%;height:28px;border-radius:50%;background:#c6c9a2;z-index:-1}.duo-long{position:absolute;width:62%;height:auto;left:5%;bottom:88px;transform:rotate(-6deg)}.duo-clingy{position:absolute;width:42%;height:auto;right:2%;bottom:105px;transform:rotate(8deg)}.bubble{position:absolute;background:#fff9eb;border:1px solid #c7cbb3;border-radius:18px 18px 18px 2px;padding:13px 17px;font-size:13px;z-index:1}.bubble-one{top:63px;left:16px;transform:rotate(-8deg)}.bubble-two{top:111px;right:-7px;transform:rotate(6deg);border-radius:18px 18px 2px 18px}.duo-caption{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);font-family:var(--serif);white-space:nowrap;font-size:19px}.home-section{background:#ede4d3;border-block:1px solid #ded2b9}.home-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.home-tags{display:flex;gap:10px;margin-top:30px}.home-tags span{font-size:11px;border:1px solid #aaa88d;padding:7px 12px;border-radius:20px}.home-picture{margin:0;background:#fff8e7;padding:13px 13px 0;transform:rotate(3deg);box-shadow:0 10px 22px #5c412017;border:1px solid #d9c9ae;position:relative}.home-picture:before{content:"";position:absolute;left:calc(50% - 50px);top:-17px;width:100px;height:35px;background:#c1c79dc9;transform:rotate(-8deg);z-index:2}.room-scene{position:relative;overflow:hidden;aspect-ratio:1}.room-background{width:100%;height:100%;object-fit:cover}.room-bed{position:absolute;width:64%;height:auto;left:18%;bottom:7%}.room-cat{position:absolute;width:48%;height:auto;left:26%;bottom:22%;transform:rotate(-4deg)}figcaption{display:flex;justify-content:space-between;padding:20px 8px;font-family:var(--serif);font-size:18px;line-height:1.5}figcaption span{color:var(--orange)}.closing{text-align:center;padding-block:90px 78px;position:relative}.closing-flower{font-size:44px;color:var(--orange);margin-bottom:16px}.closing .eyebrow{margin-bottom:16px}.closing h2{font-size:38px}.closing>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:2;margin:22px 0 28px}.closing .release-note{font-size:11px!important;margin:23px 0 0!important;letter-spacing:1px}.mobile-break{display:none}.site-footer{border-top:1px solid var(--line)}.footer-inner{min-height:115px;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-brand{font-size:17px}.footer-meta{font-size:11px;color:var(--muted);line-height:1.8}.footer-meta p{margin:0 0 4px}.footer-meta a:hover{text-decoration:underline}.back-top{font-size:12px;padding:12px 0}
@media(min-width:761px){.hero-cats{animation:cat-sway 7s ease-in-out infinite}@keyframes cat-sway{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-7px) rotate(-3deg)}}}
@media(max-width:1000px) and (min-width:761px){.wrap{padding-inline:30px}.hero{min-height:620px}.hero-art{height:440px}.hero-actions{gap:14px;flex-wrap:wrap}.cat-explorer{gap:40px}.cat-picker{gap:4px}.together,.home-layout{gap:45px}.steps{gap:22px}.step-art{height:210px}}
@media(max-width:760px){.wrap{padding-inline:24px}.site-header{min-height:83px;gap:10px;margin-inline:0}.brand{font-size:17px;gap:9px;letter-spacing:0}.brand img{width:35px;height:35px;border-radius:9px}.brand small{font-size:9px;letter-spacing:1px}nav{gap:16px;font-size:12px}.nav-home{display:none}.hero{grid-template-columns:1fr;gap:0;padding-top:41px;padding-bottom:43px;min-height:0}.eyebrow{font-size:10px;letter-spacing:1.6px;margin-bottom:18px}h1{font-size:43px;letter-spacing:-1.6px;line-height:1.38;margin-bottom:22px}.hero-intro{font-size:14px;line-height:1.95;margin-bottom:24px}.hero-actions{gap:21px}.button{font-size:13px;padding:15px 18px;gap:14px}.text-link{font-size:12px}.hero-note{font-size:10px;letter-spacing:1px;margin-top:20px}.hero-art{height:355px;margin-top:10px;margin-inline:10px}.sun-disc{inset:25px 8px 12px}.hero-cats{height:355px;width:100%;object-fit:contain;bottom:-7px}.note-top{font-size:12px;top:22px;left:-6px;padding:13px 19px}.note-bottom{bottom:2px;right:-9px;font-size:16px;padding:10px 14px}.spark-a{font-size:38px;top:12px;right:6px}.spark-b{font-size:30px;bottom:52px}.art-index{bottom:-30px;font-size:9px;letter-spacing:2px}.ribbon{gap:14px;font-size:12px;letter-spacing:1px;min-height:56px;padding-inline:18px}.ribbon span:last-child,.ribbon b:last-of-type{display:none}.ribbon b{font-size:18px}.section{padding-block:62px}.section-heading{display:block;margin-bottom:33px}h2{font-size:29px;line-height:1.5;letter-spacing:-.6px}.section-heading .eyebrow,.feature-copy .eyebrow{margin-bottom:13px}.section-heading>p{font-size:13px;line-height:1.9;margin-top:20px}.steps{display:block}.step{display:grid;grid-template-columns:135px 1fr;column-gap:20px;padding-block:25px;border-top:1px solid var(--line)}.step:first-child{padding-top:0;border:0}.step:last-child{padding-bottom:0}.step-art{grid-row:1/3;height:151px;margin:0;align-self:center}.step-label{align-self:end;gap:8px}.step-label>span{font-size:11px}.step h3{font-size:17px}.step p{font-size:12px;line-height:1.85;margin:10px 0 0}.drop-art img{width:77px;height:77px;left:calc(50% - 38px);top:37px}.drop-line{height:40px}.tap-mark{bottom:6px;right:16%;font-size:10px}.stack-base{width:112px;bottom:13px;left:calc(50% - 56px)}.stack-top{width:80px;bottom:53px;left:calc(50% - 38px)}.balance-mark{font-size:10px;top:18px;left:15px}.match-art{padding:5px}.match-art img{width:35%}.match-label{font-size:10px;letter-spacing:1px;bottom:21px}.match-spark{font-size:24px;top:15px}.cat-explorer{grid-template-columns:1fr;gap:31px}.cat-portrait{width:80%;margin-inline:auto;max-width:330px}.portrait-label{font-size:10px;top:23px;letter-spacing:3px}.portrait-caption{font-size:13px;bottom:19px}.portrait-star{font-size:26px;right:20px}.cat-details h3{font-size:32px}.cat-quote{font-size:20px;min-height:32px}.cat-details #cat-description{font-size:13px;min-height:50px}.cat-tip{margin-top:15px;padding-top:12px;font-size:11px;min-height:69px}.cat-picker{gap:7px;margin-top:20px;grid-template-columns:repeat(3,1fr)}.cat-picker button{padding:8px;display:flex;align-items:center;gap:5px}.cat-picker img{width:35px;height:35px;margin:0}.cat-picker span{font-size:11px}.together{grid-template-columns:1fr;gap:32px}.together .feature-copy{grid-row:1}.feature-copy>p:not(.eyebrow){font-size:13px;margin-top:19px}.feature-tag{font-size:11px;margin-top:20px}.duo-art{height:300px;margin-top:4px;margin-inline:8px}.duo-long{bottom:75px}.duo-clingy{bottom:87px}.duo-ground{bottom:63px}.bubble{font-size:11px;padding:11px 13px}.bubble-one{top:30px;left:8px}.bubble-two{top:73px;right:-5px}.duo-caption{font-size:17px;bottom:22px}.home-layout{grid-template-columns:1fr;gap:43px}.home-tags{margin-top:23px}.home-tags span{font-size:10px}.home-picture{margin:0 5px;padding:9px 9px 0;transform:rotate(2deg)}figcaption{font-size:16px;padding:16px 8px}.closing{padding-block:57px}.closing h2{font-size:29px}.mobile-break{display:block}.closing>p:not(.eyebrow){font-size:12px;margin:18px 0 25px}.closing-flower{font-size:36px}.footer-inner{padding-block:26px;display:grid;grid-template-columns:1fr auto;gap:20px}.footer-brand{font-size:16px}.footer-meta{grid-row:2;grid-column:1/3;font-size:10px}.back-top{font-size:11px}.footer-brand img{width:30px;height:30px}}
.nav-novel{color:var(--orange);font-weight:700;white-space:nowrap}
@media(max-width:760px){.site-header{flex-wrap:wrap;padding-block:17px 8px;row-gap:8px}.site-header nav{width:100%;justify-content:space-between;gap:12px}.site-header .nav-novel{border-bottom:1px solid var(--orange);padding-block:9px}.site-header nav a{padding-block:9px}}
.skip{top:12px;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;padding:0}.skip:focus{width:auto;height:auto;overflow:visible;clip-path:none;padding:12px}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
