

:root{--paper:#f4f0e6;--white:#fffdf8;--ink:#181815;--muted:#6e6b63;--line:rgba(24,24,21,.18);--red:#e7492f;--yellow:#f0c841;--blue:#2d5eaa;--sage:#9dac8d;--peach:#f0a26f}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC","Microsoft YaHei",Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}::selection{background:var(--yellow);color:var(--ink)}
.site-header{position:sticky;top:0;z-index:50;min-height:88px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:rgba(255,253,248,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand{width:138px;display:flex;flex-direction:column;line-height:1}.brand-mark{font-family:"KaiTi","STKaiti",serif;font-weight:900;font-size:36px;transform:rotate(-4deg);transform-origin:left center;letter-spacing:-.12em}.brand-sub{margin-top:8px;font-size:8px;font-weight:800;letter-spacing:.22em}.main-nav{display:flex;align-items:center;gap:clamp(18px,2.4vw,38px);font-size:13px;font-weight:800}.main-nav>a{position:relative}.main-nav>a:not(.nav-cta)::after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--red);transition:width .25s ease}.main-nav>a:hover::after{width:100%}.nav-dropdown{position:relative}.nav-dropdown-trigger{padding:24px 0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.nav-dropdown-menu{position:absolute;top:100%;left:50%;width:190px;max-height:min(520px,calc(100vh - 110px));padding:8px 0;display:block;overflow-y:auto;background:var(--white);border:1px solid var(--ink);box-shadow:6px 6px 0 rgba(24,24,21,.16);opacity:0;visibility:hidden;transform:translate(-50%,-8px);transition:opacity .2s ease,transform .2s ease,visibility .2s}.nav-dropdown.is-open .nav-dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}.nav-dropdown-menu a{display:block;padding:11px 18px;border-bottom:1px solid var(--line);white-space:nowrap}.nav-dropdown-menu a:last-child{border-bottom:0}.nav-dropdown-menu a:hover{color:var(--white);background:var(--ink)}.nav-dropdown-menu::-webkit-scrollbar{width:6px}.nav-dropdown-menu::-webkit-scrollbar-thumb{background:var(--red)}.nav-cta{padding:12px 18px;border:1px solid var(--ink)}.nav-cta:hover{color:var(--white);background:var(--ink)}.menu-button{display:none;padding:9px 12px;border:1px solid var(--ink);background:transparent;font-size:12px;font-weight:800}
.shell{width:min(1220px,92vw);margin:0 auto}.section{padding-top:112px;padding-bottom:112px}.eyebrow{margin:0 0 18px;color:var(--red);font-size:11px;font-weight:900;letter-spacing:.22em;text-transform:uppercase}.button{min-height:48px;padding:13px 22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);font-size:13px;font-weight:900;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-3px)}.button-dark{color:var(--white);background:var(--ink)}.button-outline{background:transparent}.button-outline:hover{color:var(--white);background:var(--ink)}.text-link{display:inline-block;padding-bottom:4px;border-bottom:1px solid;font-size:14px;font-weight:900}
.hero-carousel{position:relative;width:100%;aspect-ratio:1.9;min-height:540px;max-height:820px;overflow:hidden;border-bottom:1px solid var(--ink);background:#e9dec6}.hero-slides,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;pointer-events:none;transition:opacity .65s ease}.hero-slide.is-active{z-index:1;opacity:1;pointer-events:auto}.hero-slide img{width:100%;height:100%;display:block;object-fit:cover}.hero-slide-town img{object-position:center}.hero-slide-brand img{object-position:center}.hero-overlay{position:absolute;z-index:2;top:0;left:0;width:min(610px,47vw);height:100%;padding:clamp(44px,6vw,105px) 5vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:linear-gradient(90deg,rgba(255,250,237,.96) 0%,rgba(255,250,237,.84) 68%,rgba(255,250,237,0) 100%)}.hero-overlay h1{margin:0;font-family:"STSong","SimSun",serif;font-size:clamp(54px,6.2vw,108px);font-weight:900;line-height:.93;letter-spacing:-.08em}.hero-overlay h1 em{color:var(--red);font-family:"KaiTi","STKaiti",serif;font-style:normal;white-space:nowrap}.hero-overlay>p:not(.eyebrow){max-width:450px;margin:28px 0 30px;font-size:clamp(14px,1.15vw,18px);line-height:1.8}.hero-actions{display:flex;align-items:center;gap:26px}.carousel-arrow{position:absolute;z-index:4;top:50%;width:46px;height:46px;display:grid;place-items:center;color:var(--ink);background:rgba(255,253,248,.88);border:1px solid var(--ink);border-radius:50%;cursor:pointer;transform:translateY(-50%);transition:color .2s ease,background .2s ease}.carousel-arrow:hover{color:var(--white);background:var(--ink)}.carousel-prev{left:22px}.carousel-next{right:22px}.carousel-dots{position:absolute;z-index:4;left:50%;bottom:22px;display:flex;gap:8px;transform:translateX(-50%)}.carousel-dots button{width:34px;height:4px;padding:0;background:rgba(24,24,21,.3);border:0;cursor:pointer}.carousel-dots button.is-active{background:var(--red)}
.section-title h2{margin:0;font-family:"STSong","SimSun",serif;font-size:clamp(38px,5vw,72px);line-height:1.05;letter-spacing:-.05em}.split-title{margin-bottom:54px;display:grid;grid-template-columns:1.35fr .65fr;align-items:end;gap:48px}.split-title>p{margin:0;color:var(--muted);font-size:16px;line-height:1.85}.centered-title{max-width:720px;margin:0 auto 56px;text-align:center}.centered-title>p:last-child{margin-top:20px;color:var(--muted)}
.series-grid{display:grid;grid-template-columns:repeat(10,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.series-card{min-height:410px;padding:24px;display:flex;flex-direction:column;grid-column:span 2;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);transition:transform .25s ease,box-shadow .25s ease}.series-card:hover{z-index:2;transform:translateY(-8px);box-shadow:8px 8px 0 var(--ink)}.series-card>span{font-size:10px;font-weight:900;letter-spacing:.15em}.series-card>p{margin:44px 0 8px;font-size:11px;font-weight:900;letter-spacing:.14em}.series-card h3{margin:0;font-family:"STSong",serif;font-size:29px}.series-sample{min-height:110px;margin:auto 0 24px;display:flex;align-items:center;font-size:clamp(28px,2.4vw,38px);font-weight:900;line-height:1.25}.series-card small{min-height:66px;color:rgba(24,24,21,.73);line-height:1.65}.series-card b{margin-top:18px;font-size:12px}.peach{background:#f3b487}.ink{color:var(--white);background:#262523}.ink small{color:rgba(255,255,255,.7)}.blue{color:var(--white);background:#4b71b0}.blue small{color:rgba(255,255,255,.72)}.red{background:#ef6248}.sage{background:#b8c1ab}
.latest-section{background:var(--white);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.font-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:46px 24px}.font-card{min-width:0}.font-visual{position:relative;aspect-ratio:1.17;padding:22px;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--ink)}.font-visual::after{content:"";position:absolute;right:-16%;bottom:-38%;width:65%;aspect-ratio:1;border:1px solid currentColor;border-radius:50%;opacity:.23}.font-card:hover .font-visual{box-shadow:7px 7px 0 var(--ink);transform:translate(-3px,-3px);transition:.25s ease}.font-tone-travel .font-visual,.font-tone-travel.tester-panel{color:var(--white);background:var(--blue)}.font-tone-food .font-visual,.font-tone-food.tester-panel{background:var(--red)}.font-tone-cute .font-visual,.font-tone-cute.tester-panel{background:var(--peach)}.font-tone-dark .font-visual,.font-tone-dark.tester-panel{color:var(--white);background:var(--ink)}.font-tone-diary .font-visual,.font-tone-diary.tester-panel{background:var(--sage)}.card-badges{display:flex;align-items:center;justify-content:space-between;font-size:9px;font-weight:900;letter-spacing:.15em}.card-badges strong{padding:5px 7px;color:var(--ink);background:var(--yellow)}.font-sample{position:relative;z-index:1;margin:auto 0;font-size:clamp(34px,3.4vw,58px);font-weight:900;line-height:1.12;letter-spacing:-.08em}.sample-style-0{font-family:"KaiTi","STKaiti",serif;transform:rotate(-2deg)}.sample-style-1{font-family:"STSong","SimSun",serif;font-weight:900}.sample-style-2{font-family:"Microsoft YaHei",sans-serif;font-weight:900;letter-spacing:-.1em}.sample-style-3{font-family:"FangSong","STFangsong",serif;font-weight:900;transform:skew(-5deg)}.font-english{font-family:Georgia,serif;font-size:11px;font-style:italic;letter-spacing:.08em}.font-meta{padding:18px 3px 0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.font-meta h3{margin:0 0 8px;font-family:"STSong",serif;font-size:20px}.font-meta p{margin:0;color:var(--muted);font-size:11px}.font-price{font-family:Georgia,serif;font-size:18px}.center-action{margin-top:54px;text-align:center}
.tester-panel{padding:clamp(22px,2.6vw,36px);border:1px solid var(--ink);transition:background .25s ease}.tester-heading{display:grid;grid-template-columns:1fr .6fr;align-items:end;gap:26px}.tester-heading h2{margin:0;font-family:"STSong",serif;font-size:clamp(28px,3.6vw,44px)}.tester-heading>p{margin:0;font-size:13px;line-height:1.7;opacity:.75}.tester-controls{margin-top:26px;display:grid;grid-template-columns:1.5fr .75fr .75fr;gap:14px}.tester-controls.is-fixed{grid-template-columns:1.5fr .75fr}.tester-controls label{font-size:10px;font-weight:900;letter-spacing:.1em}.tester-controls input,.tester-controls select{width:100%;height:44px;margin-top:7px;padding:0 12px;color:var(--ink);background:var(--white);border:1px solid var(--ink);border-radius:0}.tester-controls input[type="range"]{padding:0 8px}.tester-output{min-height:160px;padding:34px 0;display:flex;align-items:center;justify-content:center;text-align:center;overflow-wrap:anywhere;line-height:1.25}.tester-footer{padding-top:14px;display:flex;justify-content:space-between;border-top:1px solid currentColor;font-size:12px;font-weight:800}.tester-footer a{border-bottom:1px solid}.detail-tester-section{padding-bottom:0}
.poster-showcase{display:grid;grid-template-columns:minmax(0,.92fr) minmax(280px,.68fr);align-items:start;gap:clamp(42px,7vw,100px)}.poster-column{min-width:0}.poster-section-title{width:fit-content;margin:0 auto 30px;padding:12px 32px;color:var(--ink);border:1px solid var(--ink);font-family:"STSong","SimSun",serif;font-size:clamp(22px,2.5vw,34px);font-weight:900;line-height:1;letter-spacing:.14em;text-align:center}.font-poster,.poster-placeholder{width:100%;display:block;border:1px solid var(--ink)}.font-poster{height:auto}.poster-placeholder{aspect-ratio:9/16;padding:clamp(24px,4vw,52px);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}.poster-placeholder span,.poster-placeholder small{font-size:10px;font-weight:900;letter-spacing:.14em}.poster-placeholder strong{font-family:"KaiTi","STKaiti",serif;font-size:clamp(42px,5vw,74px);line-height:1.05;writing-mode:vertical-rl}.poster-copy{position:sticky;top:130px;padding-top:18px;border-top:1px solid var(--ink)}.poster-copy h2{margin:0;font-family:"STSong","SimSun",serif;font-size:clamp(38px,4.6vw,66px);line-height:1.08}.poster-copy>p:last-child{max-width:460px;margin:26px 0 0;color:var(--muted);font-size:15px;line-height:1.9}
.custom-section{display:grid;grid-template-columns:.95fr 1.05fr;gap:7vw;align-items:stretch}.custom-copy{padding:clamp(44px,6vw,78px);background:var(--yellow);border:1px solid var(--ink)}.custom-copy h2{margin:0;font-family:"STSong",serif;font-size:clamp(42px,5vw,72px);line-height:1.08;letter-spacing:-.06em}.custom-copy>p:not(.eyebrow){margin:30px 0;color:#454136;font-size:15px;line-height:1.9}.custom-list{border-top:1px solid var(--ink)}.custom-list>div{min-height:155px;padding:28px 4px;display:grid;grid-template-columns:52px 1fr;column-gap:16px;border-bottom:1px solid var(--ink)}.custom-list span{grid-row:1/3;color:var(--red);font:italic 17px Georgia,serif}.custom-list h3{margin:0 0 10px;font-family:"STSong",serif;font-size:28px}.custom-list p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.benefits{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.benefit-item{min-height:255px;padding:34px 3.3vw;border-right:1px solid var(--ink)}.benefit-item:last-child{border-right:0}.benefit-item span{color:var(--red);font:italic 16px Georgia,serif}.benefit-item h3{margin:44px 0 14px;font-family:"STSong",serif;font-size:23px}.benefit-item p{margin:0;color:var(--muted);font-size:13px;line-height:1.75}
.story-band{min-height:620px;display:grid;grid-template-columns:1.06fr .94fr;background:var(--ink);color:var(--white)}.story-visual{position:relative;min-height:500px;display:grid;place-items:center;background:var(--blue);overflow:hidden}.story-visual::before,.story-visual::after{content:"";position:absolute;bottom:-2%;width:56%;height:55%;background:var(--red);clip-path:polygon(0 30%,20% 30%,20% 0,53% 19%,53% 45%,72% 45%,72% 18%,100% 38%,100% 100%,0 100%)}.story-visual::before{left:-5%}.story-visual::after{right:-12%;bottom:-13%;background:var(--yellow);transform:scale(.9)}.story-sun{position:absolute;top:18%;left:18%;width:130px;aspect-ratio:1;border-radius:50%;background:var(--yellow)}.story-visual span{position:relative;z-index:2;color:var(--white);font-family:"KaiTi",serif;font-size:clamp(40px,5vw,78px);font-weight:900;transform:rotate(-6deg);text-shadow:3px 3px 0 var(--ink)}.story-copy{padding:clamp(70px,9vw,145px) 8vw;display:flex;flex-direction:column;justify-content:center}.story-copy h2{margin:0;font-family:"STSong",serif;font-size:clamp(38px,4.4vw,68px);line-height:1.18}.story-copy>p:not(.eyebrow){margin:30px 0;color:rgba(255,255,255,.7);line-height:2}
.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.note-card{min-height:330px;padding:28px;display:flex;flex-direction:column;border:1px solid var(--ink);transition:transform .2s ease}.note-card:hover{transform:rotate(-1.2deg) translateY(-6px)}.note-card span{font-size:10px;font-weight:900;letter-spacing:.12em}.note-card h3{margin:auto 0;font-family:"STSong",serif;font-size:clamp(27px,2.5vw,40px);line-height:1.3}.note-card b{font-size:12px}.note-red{background:var(--red)}.note-blue{color:var(--white);background:var(--blue)}.note-yellow{background:var(--yellow)}
.site-footer{padding:90px 5vw 28px;color:var(--white);background:var(--ink);border-top:1px solid rgba(255,255,255,.2)}.footer-lead{max-width:790px;margin-bottom:72px}.footer-lead h2{margin:0;font-family:"STSong",serif;font-size:clamp(42px,6vw,82px);line-height:1.05}.footer-lead>p:last-child{max-width:630px;margin-top:24px;color:rgba(255,255,255,.65);line-height:1.8}.footer-grid{display:grid;grid-template-columns:1.05fr .72fr .72fr 1.55fr;gap:4vw;padding:42px 0;border-top:1px solid rgba(255,255,255,.2)}.footer-grid>div{display:flex;min-width:0;flex-direction:column;gap:12px}.footer-grid h3{margin:0 0 12px;color:var(--yellow);font-size:12px;letter-spacing:.12em}.footer-grid a,.footer-grid span{color:rgba(255,255,255,.7);font-size:13px}.footer-grid a:hover{color:var(--white)}.footer-brand{align-items:flex-start}.footer-logo{width:122px;color:var(--white)}.footer-logo .brand-mark{font-size:34px}.footer-brand p{margin:10px 0 0;color:rgba(255,255,255,.48);font-size:11px;line-height:1.7}.footer-contact-lines{margin-bottom:8px;display:flex;flex-direction:column;gap:7px}.footer-contact-lines span{color:rgba(255,255,255,.86)}.qr-list{display:flex;gap:14px}.qr-item{width:118px}.qr-image-frame{aspect-ratio:1;padding:6px;background:var(--white);border:1px solid rgba(255,255,255,.3)}.qr-image{width:100%;height:100%;display:block;object-fit:contain}.qr-item p{margin:7px 0 0;color:rgba(255,255,255,.62);font-size:10px;text-align:center}.footer-bottom{padding-top:24px;display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.45);font-size:10px;letter-spacing:.08em}
.site-footer.is-compact{padding-top:28px}.site-footer.is-compact .footer-grid{padding-top:34px}
.page-hero{padding:110px 4vw 78px;border-bottom:1px solid var(--ink);background:var(--yellow)}.page-hero .eyebrow{color:var(--ink)}.page-hero h1{max-width:1000px;margin:0;font-family:"STSong",serif;font-size:clamp(58px,9vw,132px);line-height:.98;letter-spacing:-.08em}.page-hero p:last-child{max-width:680px;margin:30px 0 0;font-size:18px;line-height:1.8}.page-shell{width:min(1120px,92vw);margin:0 auto;padding:90px 0 120px}.prose{max-width:760px}.prose h2{margin:68px 0 18px;font-family:"STSong",serif;font-size:40px}.prose h2:first-child{margin-top:0}.prose p,.prose li{color:#49473f;font-size:16px;line-height:2}.prose strong{color:var(--ink)}.prose ul{padding-left:20px}
.shop-toolbar{margin-bottom:44px;display:flex;align-items:center;justify-content:space-between;gap:20px}.filter-list{display:flex;flex-wrap:wrap;gap:8px}.filter-list button{padding:10px 14px;border:1px solid var(--ink);background:transparent;font-size:12px;font-weight:800;cursor:pointer}.filter-list button.active,.filter-list button:hover{color:var(--white);background:var(--ink)}.shop-count{color:var(--muted);font-size:12px}.empty-state{grid-column:1/-1;padding:80px 20px;text-align:center;border:1px solid var(--ink)}.contact-detail{margin-top:72px;display:grid;grid-template-columns:1fr auto;gap:70px;align-items:start}.contact-detail .prose h2{margin-top:0}.contact-detail>.qr-list{padding:24px;background:var(--ink);border:1px solid var(--ink)}
.font-shop-page{padding-top:58px}.font-shop-heading{margin-bottom:42px;padding-bottom:26px;border-bottom:1px solid var(--ink)}.font-shop-heading .eyebrow{margin-bottom:12px}.font-shop-heading h1{margin:0;font-family:"STSong","SimSun",serif;font-size:clamp(42px,5vw,68px);line-height:1}
.detail-hero{display:grid;grid-template-columns:1.05fr .95fr;border-bottom:1px solid var(--ink)}.detail-visual{min-height:630px;padding:6vw;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--ink)}.detail-visual .detail-sample{margin:auto 0;font-size:clamp(55px,7vw,108px);font-weight:900;line-height:1.12}.detail-info{padding:7vw 6vw;display:flex;flex-direction:column;justify-content:center}.detail-info h1{max-width:100%;margin:0;font-family:"STSong",serif;font-size:clamp(34px,4vw,58px);line-height:1.15;white-space:nowrap}.detail-info h1.web-font-active{line-height:1.18;overflow-wrap:normal}.detail-info .detail-en{margin:15px 0 34px;color:var(--muted);font:italic 18px Georgia,serif}.detail-info>p{font-size:16px;line-height:1.9}.detail-price{margin:32px 0;font:32px Georgia,serif}.detail-actions{display:flex;flex-wrap:wrap;gap:12px}.use-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.use-grid span{padding:30px 18px;text-align:center;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);font-weight:800}.contact-panels{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.contact-panel{min-height:260px;padding:30px;display:flex;flex-direction:column;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.contact-panel span{color:var(--red);font:italic 16px Georgia,serif}.contact-panel h3{margin:48px 0 14px;font-family:"STSong",serif;font-size:28px}.contact-panel p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.journal-list{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.journal-item{min-height:350px;padding:34px;display:flex;flex-direction:column;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.journal-item span{font-size:10px;font-weight:900;letter-spacing:.12em}.journal-item h2{margin:auto 0 22px;font-family:"STSong",serif;font-size:clamp(30px,3.5vw,52px);line-height:1.25}.journal-item p{margin:0;color:var(--muted);line-height:1.8}
.detail-poster-visual{padding:0;overflow:hidden;background:#7a3e1c}.detail-poster-visual::after{display:none}.detail-poster-visual img{width:100%;height:100%;display:block;object-fit:cover}
@media(max-width:1100px){.footer-grid{grid-template-columns:1fr 1fr}.footer-contact{grid-column:auto}}
@media(max-width:960px){.site-header{min-height:74px}.menu-button{display:block}.main-nav{position:absolute;left:0;top:74px;width:100%;padding:26px 4vw;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--white);border-bottom:1px solid var(--ink)}.main-nav.is-open{display:flex}.main-nav a{padding:14px 0;border-bottom:1px solid var(--line)}.nav-cta{margin-top:12px;text-align:center}.hero-carousel{aspect-ratio:1.45;min-height:560px}.hero-overlay{width:62vw}.series-grid{grid-template-columns:repeat(2,1fr)}.series-card{grid-column:span 1}.series-card:last-child{grid-column:span 2;min-height:330px}.font-grid{grid-template-columns:repeat(2,1fr)}.custom-section{grid-template-columns:1fr;gap:44px}.benefits{grid-template-columns:repeat(2,1fr)}.benefit-item:nth-child(2){border-right:0}.benefit-item:nth-child(-n+2){border-bottom:1px solid var(--ink)}.story-band{grid-template-columns:1fr}.detail-hero{grid-template-columns:1fr}.detail-visual{border-right:0;border-bottom:1px solid var(--ink)}.poster-showcase{grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);gap:42px}.poster-copy{top:104px}.contact-panels{grid-template-columns:1fr}.contact-detail{grid-template-columns:1fr;gap:36px}}
@media(max-width:680px){.brand-mark{font-size:30px}.brand-sub{font-size:7px}.hero-carousel{min-height:580px;aspect-ratio:auto}.hero-slide-town img{object-position:66% center}.hero-slide-brand img{object-position:center;height:100%;object-fit:cover}.hero-overlay{top:auto;bottom:0;width:100%;height:auto;min-height:58%;padding:50px 7vw 66px;background:linear-gradient(0deg,rgba(255,250,237,.98) 0%,rgba(255,250,237,.91) 77%,rgba(255,250,237,0) 100%)}.hero-overlay h1{font-size:clamp(52px,17vw,76px)}.hero-overlay>p:not(.eyebrow){margin:20px 0}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.carousel-arrow{top:36%;width:39px;height:39px}.carousel-prev{left:12px}.carousel-next{right:12px}.carousel-dots{bottom:18px}.section{padding-top:76px;padding-bottom:76px}.split-title{grid-template-columns:1fr;gap:22px}.series-grid{grid-template-columns:1fr}.series-card,.series-card:last-child{min-height:340px;grid-column:span 1}.font-grid{grid-template-columns:1fr;gap:42px}.font-visual{aspect-ratio:1.08}.font-sample{font-size:13vw}.custom-copy{padding:44px 7vw}.benefits{grid-template-columns:1fr}.benefit-item{min-height:220px;border-right:0;border-bottom:1px solid var(--ink)}.benefit-item:last-child{border-bottom:0}.story-copy{padding:75px 7vw}.notes-grid,.footer-grid,.journal-list{grid-template-columns:1fr}.note-card{min-height:270px}.footer-grid{gap:36px}.footer-contact{grid-column:auto}.qr-list{flex-wrap:wrap}.footer-bottom{align-items:flex-start;flex-direction:column;gap:10px}.shop-toolbar{align-items:flex-start;flex-direction:column}.detail-visual{min-height:480px}.poster-showcase{grid-template-columns:1fr}.poster-copy{position:static;order:-1;padding-top:0;border-top:0}.poster-placeholder strong{font-size:15vw}.detail-actions{flex-direction:column}.detail-actions .button{text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.detail-visual.font-tone-travel{color:var(--white);background:var(--blue)}
.detail-visual.font-tone-food{background:var(--red)}
.detail-visual.font-tone-cute{background:var(--peach)}
.detail-visual.font-tone-dark{color:var(--white);background:var(--ink)}
.detail-visual.font-tone-diary{background:var(--sage)}
.font-detail-link{flex:0 0 auto;padding-bottom:3px;border-bottom:1px solid;font-size:12px;font-weight:900}

/* Cover crops keep each font poster's main title in view. */
.font-card-image,.detail-poster-visual img{object-position:center top}

/* Brand artwork supplied by Xiaocheng Type */
.site-header{padding-top:5px;padding-bottom:5px}.brand{width:112px;display:block;line-height:0}.brand-logo{display:block;width:104px;height:auto}.footer-logo{width:132px;height:auto;margin:0 0 28px;filter:brightness(0) invert(1);opacity:.94}

/* Home hero carousel */
.hero-carousel{isolation:isolate;touch-action:pan-y}.hero-carousel-track,.hero-slide{position:absolute;inset:0}.hero-slide{z-index:0;overflow:hidden;opacity:0;visibility:hidden;transform:scale(1.025);transition:opacity .65s ease,transform 1.2s ease,visibility 0s linear .65s}.hero-slide.is-active{z-index:1;opacity:1;visibility:visible;transform:scale(1);transition-delay:0s}.hero-slide-town{color:var(--white);background-image:linear-gradient(90deg,rgba(15,30,58,.13),rgba(15,30,58,.2)),url("../../../plugins/xiaocheng-library/assets/hero-town.png");background-size:cover;background-position:center}.hero-slide-cute{color:var(--ink);background:#f3b487}.hero-slide-dark{color:var(--white);background:#1d1b1b}.hero-slide-food{color:var(--ink);background:#f0c841}.hero-slide-decoration{position:absolute;inset:0;pointer-events:none}.hero-slide-cute .hero-slide-decoration{background:radial-gradient(circle at 18% 18%,rgba(255,253,248,.9) 0 5px,transparent 6px),radial-gradient(circle at 75% 32%,rgba(231,73,47,.65) 0 10px,transparent 11px);background-size:90px 90px,140px 140px;opacity:.72}.hero-slide-dark .hero-slide-decoration{inset:-15%;background:repeating-linear-gradient(105deg,transparent 0 58px,rgba(231,73,47,.55) 59px 63px,transparent 64px 118px);transform:rotate(-3deg)}.hero-slide-food .hero-slide-decoration{background:linear-gradient(90deg,transparent 0 69%,rgba(231,73,47,.92) 69% 83%,transparent 83%),repeating-linear-gradient(0deg,transparent 0 54px,rgba(24,24,21,.1) 55px 56px)}.hero-slide-display{position:absolute;top:4%;right:-4%;font-family:"KaiTi","STKaiti",serif;font-size:clamp(145px,18vw,310px);font-weight:900;line-height:.85;letter-spacing:-.18em;white-space:nowrap;opacity:.12;transform:rotate(-9deg);user-select:none}.hero-slide-dark .hero-slide-display{color:var(--red);opacity:.44;right:6%}.hero-slide-food .hero-slide-display{top:16%;right:-8%;color:var(--red);opacity:.36}.hero-slide-stamp{position:absolute;z-index:2;top:8%;right:8%;width:88px;height:88px;display:grid;place-items:center;border:2px solid currentColor;border-radius:50%;font-family:"KaiTi",serif;font-weight:900;line-height:1.2;text-align:center;transform:rotate(9deg);background:rgba(255,255,255,.1)}.hero-slide-copy{position:absolute;z-index:2;left:8%;right:8%;bottom:9%;max-width:500px;text-shadow:1px 2px 12px rgba(0,0,0,.22)}.hero-slide-cute .hero-slide-copy,.hero-slide-food .hero-slide-copy{text-shadow:none}.hero-slide-copy>span{font-size:10px;font-weight:900;letter-spacing:.2em}.hero-slide-copy strong{margin-top:13px;display:block;font-family:"KaiTi","STKaiti",serif;font-size:clamp(39px,4.2vw,68px);line-height:1.02;transform:rotate(-2deg)}.hero-slide-copy p{max-width:390px;margin:18px 0 0;font-size:13px;font-weight:700;line-height:1.7}.hero-carousel-controls{position:absolute;z-index:5;right:5%;bottom:5%;min-height:38px;padding:5px 7px;display:flex;align-items:center;gap:10px;color:var(--white);background:rgba(24,24,21,.55);border:1px solid rgba(255,255,255,.48);backdrop-filter:blur(8px)}.hero-carousel-controls button{width:28px;height:28px;padding:0;display:grid;place-items:center;color:inherit;background:transparent;border:0;cursor:pointer}.hero-carousel-controls>button:hover{color:var(--yellow)}.hero-carousel-count{font:italic 10px Georgia,serif;letter-spacing:.08em}.hero-carousel-dots{display:flex;align-items:center;gap:6px}.hero-carousel-dots button{width:7px;height:7px;border:1px solid currentColor;border-radius:50%}.hero-carousel-dots button.is-active{background:var(--yellow);border-color:var(--yellow)}

@media(max-width:680px){.brand{width:88px}.brand-logo{width:82px}.footer-logo{width:116px}.hero-slide-stamp{width:72px;height:72px;font-size:13px}.hero-slide-copy{bottom:16%;}.hero-slide-copy strong{font-size:clamp(39px,12vw,58px)}.hero-slide-copy p{font-size:12px}.hero-carousel-controls{right:auto;left:7%;bottom:5%}.hero-slide-display{font-size:48vw}}
@media(prefers-reduced-motion:reduce){.hero-slide{transform:none;transition:none}}
.hero-slide-town{background:#e9dec6}

.web-font-active{font-weight:400!important;font-style:normal!important;letter-spacing:normal!important;transform:none!important}
.font-tone-childlike .font-visual,.font-tone-childlike.tester-panel{background:var(--peach)}
.font-tone-time .font-visual,.font-tone-time.tester-panel{background:var(--sage)}
.font-tone-work .font-visual,.font-tone-work.tester-panel{background:var(--yellow)}
.font-tone-literary .font-visual,.font-tone-literary.tester-panel{background:#d7cfc3}
.font-tone-cool .font-visual,.font-tone-cool.tester-panel{color:var(--white);background:var(--ink)}
.font-tone-fantasy .font-visual,.font-tone-fantasy.tester-panel{color:var(--white);background:#665484}
.font-tone-douyoumi .font-visual,.font-tone-douyoumi.tester-panel{background:#d9aa45}
.font-tone-huangcao .font-visual,.font-tone-huangcao.tester-panel{color:var(--white);background:#56634b}
.font-tone-english .font-visual,.font-tone-english.tester-panel{color:var(--white);background:#385983}
.detail-visual.font-tone-childlike{background:var(--peach)}
.detail-visual.font-tone-time{background:var(--sage)}
.detail-visual.font-tone-work{background:var(--yellow)}
.detail-visual.font-tone-literary{background:#d7cfc3}
.detail-visual.font-tone-cool{color:var(--white);background:var(--ink)}
.detail-visual.font-tone-fantasy{color:var(--white);background:#665484}
.detail-visual.font-tone-douyoumi{background:#d9aa45}
.detail-visual.font-tone-huangcao{color:var(--white);background:#56634b}
.detail-visual.font-tone-english{color:var(--white);background:#385983}
.yellow{background:var(--yellow)}.lavender{color:var(--white);background:#665484}.lavender small{color:rgba(255,255,255,.72)}.gold{background:#d9aa45}.moss{color:var(--white);background:#56634b}.moss small{color:rgba(255,255,255,.72)}
@media(max-width:960px){.main-nav>.nav-dropdown{border-bottom:1px solid var(--line)}.nav-dropdown-trigger{width:100%;padding:14px 0;display:flex;align-items:center;justify-content:space-between}.nav-dropdown-menu{position:static;width:100%;max-height:0;padding:0;overflow:hidden;border:0;box-shadow:none;opacity:1;visibility:visible;transform:none;transition:max-height .25s ease}.nav-dropdown.is-open .nav-dropdown-menu{max-height:430px;overflow-y:auto;border-top:1px solid var(--line);transform:none}.nav-dropdown-menu a{padding:12px 18px;background:#f7f3e9}}
.detail-specs{margin:38px 0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.detail-specs div{padding:17px 14px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.detail-specs dt{margin-bottom:9px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.12em}.detail-specs dd{margin:0;font-size:14px;font-weight:800;line-height:1.45}.detail-actions .button{min-width:150px;text-align:center}@media(max-width:680px){.detail-specs{grid-template-columns:1fr;margin:30px 0}.detail-actions .button{width:100%}}
.font-visual.has-card-image{padding:0;background:#7a3e1c}.font-visual.has-card-image::after{display:none}.font-card-image{width:100%;height:100%;display:block;object-fit:cover}.card-badges-overlay{position:absolute;z-index:1;top:22px;right:22px;left:22px;color:var(--white);text-shadow:0 1px 5px rgba(0,0,0,.75)}.card-badges-overlay strong{text-shadow:none}.poster-showcase{display:block}.poster-showcase .poster-column{width:min(100%,720px)}



.font-tone-unclassified .font-visual,.font-tone-unclassified.tester-panel{background:#ded8ca}.detail-visual.font-tone-unclassified{background:#ded8ca}



/* 2026 experience improvements */
.main-nav{gap:clamp(14px,1.85vw,30px);font-size:12.5px}
.hero-intro{position:absolute;z-index:3;top:clamp(26px,4vw,58px);left:4vw;width:min(430px,43vw);padding:clamp(24px,3vw,40px);background:rgba(255,253,248,.94);border:1px solid var(--ink);box-shadow:8px 8px 0 rgba(24,24,21,.2);backdrop-filter:blur(10px)}
.hero-intro .eyebrow{margin-bottom:12px}.hero-intro h1{margin:0;font-family:"STSong","SimSun",serif;font-size:clamp(34px,4.2vw,64px);line-height:1.04;letter-spacing:-.06em}.hero-intro>p:not(.eyebrow){margin:20px 0 24px;font-size:15px;line-height:1.75}.hero-intro-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.carousel-dots{align-items:center}.carousel-pause{width:auto!important;height:auto!important;margin-left:8px;padding:4px 7px!important;color:var(--ink);background:rgba(255,253,248,.88)!important;border:1px solid var(--ink)!important;font-size:10px;font-weight:900;line-height:1.2}
.font-card{content-visibility:auto;contain-intrinsic-size:420px 500px}.card-statuses{display:flex;align-items:center;gap:6px}.card-badges .free-badge{color:var(--white);background:var(--red)}.font-free-note{display:inline-flex;margin-top:10px;padding:4px 7px;color:var(--ink);background:var(--yellow);border:1px solid var(--ink);font-size:10px;font-weight:900;line-height:1}
.font-search-row{margin-bottom:18px;padding:18px;display:grid;grid-template-columns:minmax(260px,1fr) 190px;gap:12px;background:var(--white);border:1px solid var(--ink)}.font-search-row label{display:flex;flex-direction:column;gap:8px}.font-search-row label>span{font-size:12px;font-weight:900;letter-spacing:.08em}.font-search-row input,.font-search-row select{width:100%;height:48px;padding:0 14px;color:var(--ink);background:var(--paper);border:1px solid var(--ink);border-radius:0;font-size:15px}.font-search-row input:focus,.font-search-row select:focus{outline:3px solid var(--yellow);outline-offset:1px}.shop-toolbar{align-items:flex-start}.shop-count{padding-top:11px;white-space:nowrap}
.detail-status-row{margin-top:22px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.detail-status-row>*{padding:6px 9px;border:1px solid var(--ink);font-size:11px;font-weight:900}.detail-status-row strong{color:var(--white);background:var(--red)}.detail-license-note{max-width:560px;margin:18px 0 0!important;color:var(--muted);font-size:14px!important;line-height:1.75!important}.detail-info .detail-actions{margin-top:24px}.detail-info .detail-specs{margin:30px 0 0}.detail-specs-five div:last-child{grid-column:span 2}.detail-poster-visual{padding:0}.detail-poster-visual img{width:100%;height:100%;display:block;object-fit:cover}.detail-actions .button-outline{background:var(--white)}
.license-highlight{margin-bottom:72px;padding:clamp(28px,5vw,52px);background:var(--yellow);border:1px solid var(--ink);scroll-margin-top:110px}.license-highlight>span,.inquiry-card>span{font-size:11px;font-weight:900;letter-spacing:.18em}.license-highlight h2{margin:14px 0 18px!important}.license-highlight .button{margin-top:10px}
.inquiry-card{margin-bottom:62px;padding:clamp(28px,5vw,50px);background:var(--blue);color:var(--white);border:1px solid var(--ink);scroll-margin-top:110px}.inquiry-card h2{margin:14px 0 16px;font-family:"STSong","SimSun",serif;font-size:clamp(30px,4vw,48px);line-height:1.15}.inquiry-card p{max-width:720px;font-size:15px;line-height:1.8}.inquiry-card pre{max-width:720px;margin:24px 0;padding:20px;overflow:auto;color:var(--ink);background:var(--white);border:1px solid var(--ink);font:14px/1.9 "Noto Sans SC","Microsoft YaHei",sans-serif;white-space:pre-wrap}.inquiry-card .button-dark{background:var(--ink)}
.journal-item{color:var(--ink);transition:transform .2s ease,box-shadow .2s ease}.journal-item:hover{z-index:1;transform:translate(-4px,-4px);box-shadow:7px 7px 0 var(--ink)}.journal-item b{margin-top:24px;font-size:13px}.journal-item.note-blue{color:var(--white)}.journal-item.note-blue p{color:rgba(255,255,255,.78)}
.article-page{background:var(--white)}.article-hero{padding:clamp(70px,9vw,130px) max(4vw,calc((100vw - 980px)/2));border-bottom:1px solid var(--ink)}.article-back{display:inline-block;margin-bottom:54px;padding-bottom:4px;border-bottom:1px solid;font-size:13px;font-weight:900}.article-hero>p{margin:0 0 18px;font-size:12px;font-weight:900;letter-spacing:.14em}.article-hero h1{max-width:920px;margin:0;font-family:"STSong","SimSun",serif;font-size:clamp(48px,7vw,96px);line-height:1.08;letter-spacing:-.06em}.article-hero>strong{max-width:720px;margin-top:32px;display:block;font-size:18px;line-height:1.8}.article-body{width:min(780px,90vw);margin:0 auto;padding:90px 0 120px}.article-body section{margin-bottom:64px}.article-body h2,.article-cta h2{margin:0 0 20px;font-family:"STSong","SimSun",serif;font-size:clamp(32px,4vw,44px);line-height:1.2}.article-body p{margin:0;color:#49473f;font-size:17px;line-height:2}.article-cta{margin-top:90px;padding:clamp(28px,5vw,50px);background:var(--paper);border:1px solid var(--ink)}.article-cta p{margin-bottom:24px}.article-cta .text-link{margin-left:24px}

@media(max-width:960px){
  .detail-info{order:-1;padding:54px 6vw 48px}.detail-visual{min-height:0;aspect-ratio:1.17}.detail-poster-visual img{height:100%;object-fit:cover}.detail-info h1{font-size:clamp(34px,7vw,56px)}
}
@media(max-width:680px){
  .hero-carousel{min-height:650px}.hero-intro{top:22px;left:5vw;width:90vw;padding:22px;box-shadow:5px 5px 0 rgba(24,24,21,.2)}.hero-intro h1{font-size:clamp(31px,10vw,44px)}.hero-intro>p:not(.eyebrow){margin:14px 0 18px;font-size:14px}.hero-intro-actions{gap:14px}.hero-intro-actions .button{min-height:44px;padding:11px 15px}.carousel-arrow{top:67%}.carousel-dots{bottom:16px;width:90%;justify-content:center}
  .font-search-row{grid-template-columns:1fr;padding:14px}.filter-list{width:100%;padding-bottom:8px;display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.filter-list button{flex:0 0 auto}.shop-count{padding-top:0}.font-shop-heading{margin-bottom:28px}
  .detail-info{padding:42px 6vw 38px}.detail-info h1{font-size:clamp(32px,10vw,44px)}.detail-info .detail-actions{display:grid;grid-template-columns:1fr;margin-top:22px}.detail-info .detail-actions .button{width:100%}.detail-specs{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-top:26px!important}.detail-specs-five div:last-child{grid-column:span 2}.detail-specs div{min-width:0;padding:15px 12px}.detail-specs dd{overflow-wrap:anywhere;font-size:13px}.detail-visual{min-height:0!important;aspect-ratio:1.08}.detail-license-note{font-size:13px!important}
  .article-hero{padding:54px 6vw}.article-back{margin-bottom:38px}.article-hero h1{font-size:clamp(40px,12vw,58px)}.article-hero>strong{font-size:16px}.article-body{padding:64px 0 84px}.article-body section{margin-bottom:52px}.article-body p{font-size:16px}.article-cta{margin-top:64px}.article-cta .text-link{margin:20px 0 0;display:block;width:fit-content}
}
