:root{--ink:#252b27;--sage:#7e9178;--sage-dark:#53604f;--paper:#f4f0e6;--bg:#fbfaf7;--white:#fff;--muted:#737873;--line:rgba(37,43,39,.14);--shadow:0 20px 60px rgba(34,41,36,.08);--radius:24px;--container:min(1280px,calc(100% - 48px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}.container{width:var(--container);margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(251,250,247,.88);backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:.25s}.site-header.scrolled{border-color:var(--line)}.nav-wrap{height:82px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand-mark{width:40px;height:40px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-family:serif}.brand strong,.brand small{display:block}.brand strong{font-size:15px;letter-spacing:.08em}.brand small{font-size:9px;letter-spacing:.16em;color:var(--muted)}.main-nav{display:flex;gap:26px;font-size:14px}.main-nav a,.nav-actions a{transition:.2s}.main-nav a:hover,.nav-actions>a:first-child:hover{color:var(--sage-dark)}.nav-actions{display:flex;align-items:center;gap:18px;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 22px;border:1px solid var(--ink);transition:.25s}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(37,43,39,.16)}.btn-outline:hover{background:var(--paper)}.btn-sm{padding:10px 17px;font-size:13px}.menu-toggle{display:none;border:0;background:none;font-size:24px}
.hero{padding:88px 0 70px}
.hero {
    position: relative;
    min-height: 680px;

    background-image:
        linear-gradient(
            90deg,
            rgba(248, 246, 240, 0.94) 0%,
            rgba(248, 246, 240, 0.88) 38%,
            rgba(248, 246, 240, 0.45) 68%,
            rgba(248, 246, 240, 0.08) 100%
        ),
        url("/jianxin/assets/images/slides/hero-banner.png");

    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    display: flex;
    align-items: center;
}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end}.eyebrow{font-size:12px;letter-spacing:.22em;font-weight:700;color:var(--sage-dark);text-transform:uppercase}
.hero h1{font-family:"Noto Serif TC",serif;font-size:clamp(46px,6vw,82px);line-height:1.15;letter-spacing:-.04em;margin:18px 0 26px;font-weight:600}.hero-lead{font-size:18px;color:#5c625d;max-width:620px}.hero-actions{display:flex;gap:12px;margin-top:34px;flex-wrap:wrap}.hero-note{padding:34px;border-top:1px solid var(--ink);background:linear-gradient(145deg,transparent,var(--paper))}.hero-note strong{display:block;font-size:23px;font-family:serif;margin:10px 0}.section{padding:100px 0}.section-muted{background:var(--paper)}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:44px}.section-head h2{font-size:clamp(32px,4vw,52px);font-family:serif;margin:7px 0 0;font-weight:500}.section-head p{max-width:520px;color:var(--muted)}.problem-grid,.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.problem-card,.card{background:var(--white);border:1px solid var(--line);padding:30px;border-radius:var(--radius);transition:.25s}.problem-card:hover,.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.problem-card span{font-size:12px;color:var(--sage-dark);letter-spacing:.15em}.problem-card h3{font-size:24px;margin:18px 0 12px}.problem-card p,.card p{color:var(--muted);margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.statement{font-size:clamp(34px,5vw,64px);font-family:serif;line-height:1.35;margin:0}.steps{counter-reset:step}.step{display:grid;grid-template-columns:70px 1fr;padding:24px 0;border-top:1px solid var(--line)}.step:before{counter-increment:step;content:"0" counter(step);font-size:12px;letter-spacing:.18em;color:var(--sage-dark)}.step h3{margin:0 0 5px}.step p{margin:0;color:var(--muted)}.work-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.work-card{min-height:360px;border-radius:var(--radius);padding:34px;background:#dfe5da;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;position:relative}.work-card:nth-child(2){background:#ede4d8}.work-card:nth-child(3){background:#e3ddd3}.work-card:nth-child(4){background:#d8e0df}.work-card:before{content:"";position:absolute;width:210px;height:210px;border:1px solid rgba(37,43,39,.22);border-radius:50%;right:-20px;top:-40px}.work-card small,.work-card h3,.work-card p{position:relative}.work-card h3{font-size:32px;margin:5px 0}.journal-grid,.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.journal-card,.shop-card{border-top:1px solid var(--ink);padding-top:18px}.journal-card h3,.shop-card h3{font-size:22px;line-height:1.45}.meta{font-size:12px;color:var(--muted);letter-spacing:.08em}.cta{padding:90px 0}.cta-box{background:var(--ink);color:white;border-radius:32px;padding:65px;display:flex;justify-content:space-between;align-items:end;gap:30px}.cta-box h2{font-family:serif;font-size:clamp(34px,5vw,58px);margin:10px 0}.cta-box p{color:#cfd5d0}.cta-box .btn{border-color:white}.site-footer{padding:70px 0 25px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-grid p{max-width:420px;color:var(--muted)}.footer-grid h4{font-size:12px;letter-spacing:.16em}.footer-grid a,.footer-grid span{display:block;color:var(--muted);margin:6px 0}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:50px;color:var(--muted);font-size:12px}.page-hero{padding:70px 0 50px}.page-hero h1{font-family:serif;font-size:clamp(42px,6vw,70px);margin:10px 0}.page-hero p{max-width:720px;color:var(--muted);font-size:18px}.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:36px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:700}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:#fbfbf9;border-radius:14px;padding:14px 16px;outline:none}.field textarea{min-height:120px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--sage)}.notice{padding:15px 18px;border-radius:14px;background:#edf1e9;margin-bottom:20px}.table-wrap{overflow:auto;background:#fff;border-radius:18px;border:1px solid var(--line)}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:15px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:12px;letter-spacing:.08em;background:#f6f4ee}.product-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px}.product-image{aspect-ratio:1;background:var(--paper);border-radius:28px;display:grid;place-items:center;font-family:serif;font-size:60px}.price{font-size:28px;font-weight:700}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.chip{border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:white}.pagination{display:flex;gap:8px;margin-top:35px}.pagination a{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.pagination a.active{background:var(--ink);color:white}.dashboard{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.admin-side{background:var(--ink);color:white;padding:30px 20px}.admin-side a{display:block;padding:10px 12px;color:#d4d9d5;border-radius:9px}.admin-side a:hover{background:rgba(255,255,255,.08)}.admin-main{padding:38px;background:#f6f5f0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.stat strong{font-size:28px;display:block}.ai-fab{position:fixed;left:22px;bottom:22px;z-index:70;border:0;background:var(--ink);color:white;border-radius:999px;padding:13px 18px;box-shadow:var(--shadow);cursor:pointer}.ai-panel{position:fixed;left:22px;bottom:80px;width:min(380px,calc(100vw - 44px));height:520px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.18);z-index:80;display:none;overflow:hidden}.ai-panel.open{display:flex;flex-direction:column}.ai-head{padding:18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.ai-head small,.ai-head strong{display:block}.ai-head button{border:0;background:none;font-size:24px}.ai-body{flex:1;padding:18px;overflow:auto;background:#f8f7f3}.ai-message{max-width:85%;padding:12px 14px;border-radius:16px;margin:8px 0;font-size:14px}.ai-message.bot{background:white;border:1px solid var(--line)}.ai-message.user{background:var(--ink);color:white;margin-left:auto}.ai-form{display:flex;padding:12px;border-top:1px solid var(--line);gap:8px}.ai-form input{flex:1;border:1px solid var(--line);border-radius:999px;padding:11px 14px}.ai-form button{border:0;border-radius:999px;background:var(--ink);color:white;padding:0 16px}.reveal{opacity:0;transform:translateY(18px);transition:.7s}.reveal.visible{opacity:1;transform:none}@media(max-width:920px){.main-nav,.nav-actions{display:none}.menu-toggle{display:block}.main-nav.open{display:flex;position:absolute;top:82px;left:0;right:0;background:var(--bg);padding:20px 24px;border-bottom:1px solid var(--line);flex-direction:column}.hero-grid,.split,.product-layout{grid-template-columns:1fr}.problem-grid,.card-grid,.journal-grid,.shop-grid{grid-template-columns:1fr 1fr}.work-grid{grid-template-columns:1fr}.dashboard{grid-template-columns:1fr}.admin-side{display:none}.stats{grid-template-columns:1fr 1fr}}@media(max-width:620px){:root{--container:min(100% - 30px,1180px)}.nav-wrap{height:70px}.main-nav.open{top:70px}.hero{padding-top:55px}.hero h1{font-size:48px}.section{padding:70px 0}.problem-grid,.card-grid,.journal-grid,.shop-grid,.form-grid,.footer-grid,.stats{grid-template-columns:1fr}.section-head,.cta-box{display:block}.cta-box{padding:38px 28px}.cta-box .btn{margin-top:20px}.footer-bottom{gap:20px;flex-direction:column}.field.full{grid-column:auto}}

img.logo {
    width: 4.1vw;
    height: auto;
    display: block;
}
/* Admin v2 */
.admin-auth{min-height:100vh;display:grid;place-items:center;background:var(--paper);padding:24px}.admin-login-card{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:28px;padding:42px;box-shadow:var(--shadow)}.admin-login-card h1{font-family:serif;font-size:42px;margin:8px 0 24px}.admin-login-card .field{margin:14px 0}.admin-help{font-size:13px;color:var(--muted);margin-top:22px}.admin-brand{margin:0 0 24px;color:#fff}.admin-side{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:100}.admin-nav{display:flex;flex-direction:column;gap:3px}.admin-nav a.active{background:rgba(255,255,255,.13);color:#fff}.admin-side-bottom{margin-top:auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);font-size:12px}.admin-side-bottom span{display:block;padding:0 12px 8px;color:#fff}.admin-main{min-width:0}.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.admin-top h1{font-family:serif;font-weight:500;font-size:38px;margin:4px 0}.admin-menu-btn{display:none;border:1px solid var(--line);background:white;border-radius:12px;padding:8px 12px;font-size:20px}.admin-alert{background:#e8efe5;border:1px solid #cbd9c7;border-radius:14px;padding:13px 16px;margin:0 0 22px}.admin-alert.error{background:#f7e9e6;border-color:#e7c8c1}.admin-grid-2{display:grid;grid-template-columns:1.35fr .65fr;gap:18px;margin-top:20px}.admin-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px}.admin-card-head,.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.admin-card-head h2{font-size:19px;margin:0}.admin-card-head a,.table-action{font-size:13px;text-decoration:underline;text-underline-offset:3px}.admin-toolbar p{margin:0;color:var(--muted)}.rank-row{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.rank-row span{color:var(--muted);font-size:13px}.muted{color:var(--muted)}.status-pill{display:inline-flex;padding:4px 9px;border-radius:999px;background:var(--paper);font-size:11px;letter-spacing:.04em}.inline-form,.row-actions{display:flex;align-items:center;gap:8px}.inline-form select{border:1px solid var(--line);border-radius:8px;padding:7px 9px;background:#fff}.mini-btn{border:0;background:var(--ink);color:#fff;border-radius:8px;padding:8px 10px;cursor:pointer}.check{font-size:12px;display:inline-flex;gap:6px;align-items:center}.link-danger{border:0;background:none;color:#9c4f44;text-decoration:underline;cursor:pointer;padding:0;font-size:13px}.admin-form-card{max-width:980px}.admin-form .field{margin-bottom:16px}.admin-form textarea{min-height:140px}.form-actions{display:flex;gap:10px;margin-top:22px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;background:var(--paper);padding:20px;border-radius:16px;margin-bottom:24px}.detail-grid>div{background:rgba(255,255,255,.55);padding:13px;border-radius:12px}.detail-grid .full{grid-column:1/-1}.detail-grid small,.detail-grid strong{display:block}.detail-grid small{color:var(--muted);font-size:11px;margin-bottom:4px}.detail-grid p{margin:5px 0}.check-row{display:flex;gap:24px;justify-content:flex-start}.admin-main table td{vertical-align:middle}.admin-main table small{color:var(--muted)}
@media(max-width:1100px){.admin-grid-2{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:920px){.dashboard{display:block}.admin-side{display:flex;position:fixed;left:-260px;top:0;width:240px;transition:.25s}.admin-side.open{left:0;box-shadow:20px 0 60px rgba(0,0,0,.2)}.admin-main{padding:24px}.admin-menu-btn{display:block}.admin-top{margin-bottom:18px}}
@media(max-width:620px){.admin-main{padding:18px 14px}.admin-top h1{font-size:30px}.admin-login-card{padding:28px 22px}.admin-toolbar,.admin-card-head{align-items:flex-start;flex-direction:column}.detail-grid{grid-template-columns:1fr}.detail-grid .full{grid-column:auto}.inline-form{min-width:280px}.form-actions{flex-wrap:wrap}}

/* Journal V2.2 */
.journal-search{display:flex;gap:10px;align-items:center;margin:0 0 22px;max-width:720px}.journal-search input{flex:1;min-width:0;border:1px solid var(--line);border-radius:999px;padding:12px 18px;background:#fff;outline:none}.journal-search input:focus{border-color:var(--sage)}.chip{transition:.2s;display:inline-flex;gap:7px;align-items:center}.chip:hover,.chip.active{background:var(--ink);border-color:var(--ink);color:#fff}.chip small{opacity:.6}.journal-result-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:10px 0 26px;color:var(--muted);font-size:13px}.journal-grid-rich{align-items:stretch}.journal-grid-rich .journal-card{padding-top:0;border-top:0;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff;transition:.25s}.journal-grid-rich .journal-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.journal-card-link{height:100%;display:flex;flex-direction:column;padding:26px}.journal-thumb{margin:-26px -26px 22px;aspect-ratio:16/9;background:var(--paper);overflow:hidden}.journal-thumb img{width:100%;height:auto;object-fit:cover}.journal-grid-rich .journal-card h2{font-family:serif;font-size:26px;line-height:1.45;margin:12px 0}.journal-grid-rich .journal-card p{color:var(--muted);margin:0 0 24px}.journal-more{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-size:13px;display:flex;justify-content:space-between}.pagination{align-items:center;flex-wrap:wrap}.pagination span{padding:0 3px;color:var(--muted)}.journal-empty{text-align:center;border:1px solid var(--line);border-radius:28px;background:#fff;padding:70px 28px}.journal-empty h1,.journal-empty h2{font-family:serif;font-size:clamp(32px,4vw,48px);font-weight:500}.journal-empty p{color:var(--muted);max-width:650px;margin:0 auto 24px}.journal-article-head{padding:75px 0 42px}.article-container{max-width:820px}.journal-back{display:inline-block;margin-bottom:45px;color:var(--muted);font-size:13px}.journal-article-head h1{font-family:serif;font-size:clamp(40px,6vw,68px);line-height:1.3;font-weight:500;letter-spacing:-.025em;margin:15px 0 24px}.article-summary{font-size:20px;color:var(--muted);line-height:1.8}.article-image{max-width:1120px;margin-bottom:55px}.article-image img{width:100%;max-height:680px;object-fit:cover;border-radius:26px}.article-body{font-family:"Noto Serif TC",serif;font-size:18px;line-height:2.05;padding-bottom:55px}.article-body h2{font-size:32px;line-height:1.45;margin:2.2em 0 .7em}.article-body h3{font-size:24px;margin:2em 0 .6em}.article-body p{margin:0 0 1.6em}.article-body blockquote{border-left:3px solid var(--sage);margin:2em 0;padding:10px 0 10px 26px;font-size:22px;color:#4f5c51}.article-body a{text-decoration:underline;text-underline-offset:4px}.article-body li{margin:.5em 0}.article-end{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:28px 0;margin-bottom:10px}.article-end span{font-size:11px;letter-spacing:.2em;color:var(--sage-dark)}.article-end p{font-family:serif;font-size:20px;margin:8px 0}.article-nav{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:35px 0 85px}.article-nav>div{min-width:0}.article-nav .next{text-align:right}.article-nav small{display:block;color:var(--muted);margin-bottom:6px}.article-nav a{font-family:serif;font-size:18px}.article-nav a:hover{color:var(--sage-dark)}
@media(max-width:620px){.journal-search{align-items:stretch;flex-wrap:wrap}.journal-search input{flex-basis:100%}.journal-result-head{display:block}.journal-grid-rich .journal-card h2{font-size:23px}.journal-article-head{padding-top:50px}.journal-back{margin-bottom:32px}.article-summary{font-size:18px}.article-body{font-size:17px}.article-nav{grid-template-columns:1fr;gap:26px}.article-nav .next{text-align:left}}

/* V4 brand identity */
.brand-logo{width:52px;height:36px;object-fit:contain;object-position:left center;flex:0 0 auto}.footer-brand .brand-logo{width:62px;height:44px}.brand-mark{display:none}.hero-note{border-radius:0 0 24px 0}.main-nav a{position:relative}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--sage);transition:.25s}.main-nav a:hover:after{right:0}.problem-card h3{font-family:"Noto Serif TC",serif;font-weight:500}.work-card{transition:transform .3s,box-shadow .3s}.work-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}@media(max-width:620px){.brand-logo{width:46px;height:32px}.brand small{display:none}}

/* V4 case visuals */
.work-card{padding:0;background:var(--white)!important;justify-content:flex-start;min-height:0;border:1px solid var(--line)}
.work-card:before{display:none}
.work-image{
    /* aspect-ratio:1/1; */
    overflow:hidden;
    background:#eee;
}
.work-image img{width:100%;height:auto;display:block;object-fit:cover;transition:transform .55s ease}
.work-card:hover .work-image img{transform:scale(1.025)}
.work-copy{padding:25px 28px 28px}
.work-copy small{display:block;color:var(--sage-dark);letter-spacing:.13em}
.work-copy h3{font-family:"Noto Serif TC",serif;font-size:30px;margin:7px 0 4px;font-weight:500}
.work-copy p{margin:0;color:var(--muted)}
@media(max-width:620px){.work-copy{padding:21px 22px 24px}.work-copy h3{font-size:27px}}
