:root{color-scheme:light;--paper:#f6f4ed;--ink:#303e32;--muted:#606956;--line:#a7ae9e;--serif:"Songti SC","STSong","SimSun","Noto Serif CJK SC",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #94583e;outline-offset:6px}button{font-family:inherit;color:inherit;cursor:pointer}::selection{background:#e4cdb7;color:var(--ink)}.page{width:90.6%;max-width:1600px;margin:auto}.header{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{font-size:34px;letter-spacing:.1em;font-weight:600}.header nav{display:flex;gap:64px;font-size:19px;letter-spacing:.15em}.header nav a,.footer a{transition:color .2s}.header nav a:hover,.footer a:hover{color:#94583e}.hero{display:grid;grid-template-columns:.82fr 1fr;gap:40px;align-items:center;padding:35px 0 34px}.hero-copy{padding-bottom:0;animation:arrive 1s ease both}h1{margin:0 0 34px;font-size:clamp(44px,6.1vw,104px);font-weight:600;line-height:1.2;letter-spacing:.01em}h1 span{display:block;white-space:nowrap}h1 .accent{color:#777d4c}.intro{font-size:clamp(18px,1.78vw,29px);line-height:1.75;letter-spacing:.045em;margin:0 0 38px}.tool-link{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--ink);border-radius:99px;padding:17px 47px;font-size:22px;letter-spacing:.06em;transition:background .25s,color .25s,transform .25s}.tool-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.tool-link:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.landscape{overflow:hidden;border-radius:8px;aspect-ratio:10/9;animation:arrive 1.2s .1s ease both}.landscape img{display:block;width:100%;height:100%;object-fit:cover}.daily{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:20% 1fr 12%;align-items:center;min-height:132px;scroll-margin-top:24px;gap:35px;padding:20px 0}.daily h2{text-align:center;font-size:21px;font-weight:400;line-height:50px;margin:0;border-right:1px solid var(--line)}.quote{font-size:clamp(24px,2.5vw,39px);font-weight:500;line-height:1.55;margin:0;letter-spacing:.01em}.daily button{border:0;border-left:1px solid var(--line);background:none;font-size:19px;padding:12px 12px 12px 24px;white-space:nowrap;min-width:66px}.daily button:hover{color:#94583e}.daily button[hidden]{display:none}.quote.changed{animation:quote-in .4s ease}.footer{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:17px;color:var(--muted);letter-spacing:.03em}.footer p{margin:0}.skip-link{position:fixed;top:-100px;left:20px;padding:12px;background:var(--ink);color:white;z-index:10}.skip-link:focus{top:12px}@keyframes arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes quote-in{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(min-width:1700px){.hero{padding:32px 0}.header{height:96px}}
@media(max-width:1100px){.header nav{gap:36px}.intro{letter-spacing:0}.tool-link{font-size:19px;padding:15px 32px}.daily{gap:28px;grid-template-columns:145px 1fr auto}.daily h2{font-size:19px}.footer{font-size:14px}}
@media(max-width:760px){.page{width:88%}.header{height:76px}.brand{font-size:23px}.header nav{font-size:15px;gap:18px;letter-spacing:.03em}.hero{grid-template-columns:1fr;gap:38px;padding:46px 0 32px}.hero-copy{padding:0}h1{font-size:clamp(42px,12vw,74px);letter-spacing:0;margin-bottom:24px;line-height:1.25}.intro{font-size:clamp(15px,3.8vw,21px);line-height:1.95;margin-bottom:28px;letter-spacing:0}.tool-link{font-size:18px;padding:14px 30px}.landscape{border-radius:8px}.daily{grid-template-columns:1fr auto;gap:10px 16px;padding:22px 0 26px}.daily h2{text-align:left;grid-column:1;border:0;font-size:16px;line-height:1.5;color:var(--muted)}.quote{grid-column:1/-1;grid-row:2;font-size:25px;min-height:78px;display:flex;align-items:center}.daily button{border:0;grid-column:2;grid-row:1;font-size:16px;padding:8px;min-height:44px}.footer{align-items:flex-start;flex-direction:column;gap:13px;padding:25px 0 30px;font-size:13px;line-height:1.6}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Footer stays below all content, with the registration on its own centered final row. */
.page{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}.page>main{flex:1}.footer{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:15px;padding:25px 0 22px}.footer .icp{display:block;text-align:center;font-size:14px;line-height:1.6}

/* Remote daily quote: attribution without a manual switch. */
.daily{grid-template-columns:20% minmax(0,1fr)}.quote-content{min-width:0}.quote{overflow-wrap:anywhere}.quote-source{display:block;margin:10px 0 0;font-size:14px;line-height:1.6;color:var(--muted)}.quote-source[hidden]{display:none}@media(max-width:760px){.daily{grid-template-columns:1fr}.quote-content{grid-column:1}.quote{display:block;min-height:0}.quote-source{font-size:13px}}
