:root {
  --mint: #16A37A;
  --deep: #0F8A66;
  --bg: #F5FAF8;
  --ink: #10201B;
  --muted: #687E73;
  --line: #DCECE3;
  --white: #FFFFFF;
  --shadow: 0 20px 56px rgba(38, 133, 98, .09), 0 5px 14px rgba(38, 133, 98, .04);
  --font: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: radial-gradient(circle at -8% 8%, rgba(83, 209, 155, .16), transparent 24%), radial-gradient(circle at 106% 14%, rgba(122, 203, 226, .17), transparent 25%), var(--bg); color: var(--ink); font-family: var(--font); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
a, button { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--mint); outline-offset: 3px; }
::selection { background: #BEF1D5; color: var(--ink); }
.skip-link { position: absolute; top: -100px; left: 12px; z-index: 40; background: var(--deep); color: white; padding: 12px 18px; border-radius: 12px; }
.skip-link:focus { top: 12px; }
.site-shell { min-height: 100vh; }
.site-header, main, .site-footer { max-width: 980px; margin: 0 auto; }
.site-header { height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 22px; position: relative; z-index: 20; }
.brand { flex: none; display: inline-flex; align-items: center; gap: 9px; }
.brand-icon { display: block; width: 30px; height: 30px; flex: none; }
.brand-main { display: block; font-size: 25px; line-height: 1; letter-spacing: -1.6px; font-weight: 850; white-space: nowrap; }
.brand-main span, .footer-brand span { color: var(--mint); }
.primary-nav { display: flex; align-items: center; gap: 23px; margin-left: auto; }
.primary-nav a { color: #53685D; font-size: 13px; font-weight: 650; white-space: nowrap; transition: color .2s; }
.primary-nav a:hover, .primary-nav a.active { color: var(--deep); }
.header-actions { display: flex; align-items: center; gap: 10px; }
.menu-button { display: none; width: 42px; height: 42px; border: 1px solid #CFEADD; border-radius: 13px; background: white; align-items: center; justify-content: center; flex-direction: column; gap: 5px; cursor: pointer; }
.menu-button span { width: 17px; height: 2px; border-radius: 2px; background: var(--deep); }
.page[hidden], .repo-row[hidden], .case-card[hidden] { display: none !important; }

/* Homepage hero */
.hero { min-height: 398px; padding: 52px 0 43px; position: relative; text-align: center; }
.hero-copy { position: relative; z-index: 2; }
.eyebrow, .section-kicker { color: var(--deep); font-size: 11px; letter-spacing: .13em; font-weight: 800; }
.eyebrow { display: flex; align-items: center; justify-content: center; gap: 10px; }
.eyebrow-square { width: 7px; height: 7px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 5px #DCF5E8; }
.hero h1 { font-size: 40px; line-height: 1.25; letter-spacing: -1.8px; font-weight: 800; margin: 19px 0 18px; }
.hero h1 span { color: var(--mint); }
.hero-description { margin: 0 auto; max-width: 650px; font-size: 14px; line-height: 1.85; color: var(--muted); }
.hero-bottom { display: flex; justify-content: center; gap: 10px; margin-top: 25px; }
.primary-button, .secondary-button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 45px; border-radius: 999px; padding: 0 22px; font-size: 13px; font-weight: 750; white-space: nowrap; transition: transform .25s, box-shadow .25s; }
.primary-button { background: linear-gradient(125deg, #20B687, var(--deep)); box-shadow: 0 11px 24px rgba(22, 163, 122, .20); color: white; }
.primary-button span { font-size: 17px; }
.secondary-button { background: white; border: 1px solid #D8ECE1; color: var(--deep); }
.primary-button:hover, .secondary-button:hover { transform: translateY(-4px); box-shadow: 0 17px 30px rgba(22, 163, 122, .13); }
.hero-art { position: absolute; inset: 0; pointer-events: none; }
.clay { position: absolute; display: block; animation: float 5.5s ease-in-out infinite; }
.clay-one { left: -48px; top: 76px; width: 118px; height: 118px; border-radius: 30px; background: linear-gradient(145deg, #EBFFF1 3%, #B6E8D1 54%, #86CDB0 100%); box-shadow: inset 10px 10px 18px rgba(255,255,255,.92), inset -13px -15px 22px rgba(56,135,101,.20), 16px 25px 35px rgba(41,125,93,.15); transform: rotate(-18deg); }
.clay-one:after { content: ""; position: absolute; inset: 29px; border: 11px solid #F5FFF7; border-radius: 21px; box-shadow: inset 4px 5px 9px rgba(23,135,92,.19), 5px 7px 12px rgba(50,132,99,.11); }
.clay-two { right: -26px; top: 68px; width: 86px; height: 86px; border-radius: 50%; background: radial-gradient(circle at 32% 26%, #F9FFEA, #D2F5CE 46%, #98D8B2 84%); box-shadow: inset -11px -15px 19px rgba(47,138,100,.19), 8px 18px 25px rgba(39,136,96,.14); animation-delay: -2s; }
.clay-three { right: 60px; top: 211px; width: 67px; height: 67px; border-radius: 20px; background: linear-gradient(145deg, #EAFBFF, #C9ECF3 55%, #AAD6E2); box-shadow: inset 8px 8px 14px #fff, inset -8px -10px 14px rgba(76,151,174,.16), 12px 17px 25px rgba(36,121,119,.11); transform: rotate(23deg); animation-delay: -3s; }
@keyframes float { 0%, 100% { translate: 0 0; } 50% { translate: 0 -12px; } }
.home-highlight { min-height: 54px; border: 1px solid var(--line); border-radius: 17px; background: rgba(255,255,255,.80); display: flex; align-items: center; gap: 12px; padding: 13px 24px; color: #566F62; font-size: 12px; }
.highlight-dot { width: 6px; height: 6px; border-radius: 50%; background: #21BB87; flex: none; }
.home-highlight strong { color: var(--deep); white-space: nowrap; }
.home-highlight a { color: #86A095; font-size: 11px; margin-left: auto; white-space: nowrap; }
.home-highlight a:hover { color: var(--deep); }

/* Reusable card and section language */
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 22px; margin-bottom: 18px; }
.section-heading h2 { font-size: 22px; line-height: 1.3; letter-spacing: -.7px; margin: 0; font-weight: 800; }
.section-heading p { color: #82978B; font-size: 12px; line-height: 1.7; margin: 7px 0 0; }
.section-kicker { display: block; margin-bottom: 12px; }
.section-kicker span { color: #A6B9AF; }
.period { color: var(--mint); }
.text-link, .strip-heading-end { flex: none; color: var(--deep); font-size: 12px; font-weight: 750; white-space: nowrap; }
.text-link span { margin-left: 5px; }
.text-link:hover { color: #0B6D50; }
.edition-strip { margin-top: 46px; }
.strip-heading { margin-bottom: 18px; }
.strip-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.strip-grid a, .news-lead, .news-briefs, .x-feature, .repo-row, .case-card, .subhero, .article-row, .x-empty { background: white; border: 1px solid rgba(210,232,219,.74); border-radius: 20px; box-shadow: var(--shadow); }
.strip-grid a { min-height: 180px; padding: 21px 19px; position: relative; transition: transform .25s, box-shadow .25s; }
.strip-grid a:hover, .news-lead:hover, .repo-row:hover, .case-card:hover, .article-row:hover { transform: translateY(-5px); box-shadow: 0 24px 60px rgba(38,133,98,.16); }
.strip-icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: #E7F8EF; color: var(--deep); }
.strip-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.strip-index { position: absolute; top: 22px; right: 18px; font-size: 10px; color: #ADC3B8; font-weight: 800; }
.strip-grid strong { display: block; font-size: 16px; margin-top: 22px; }
.strip-grid small { display: block; max-width: 180px; font-size: 11px; line-height: 1.65; color: #7D9187; margin-top: 7px; }
.strip-arrow { position: absolute; right: 18px; bottom: 17px; font-size: 17px; color: var(--mint); }
.home-section { margin-top: 48px; }

/* Try-it-now tools */
.subhero-tools { background: radial-gradient(circle at 88% 18%, #D4F6E8 0, transparent 36%), linear-gradient(120deg, #fff 36%, #EAF9F5); }
.tool-intro { margin: 42px 0 20px; }
.tool-intro h2 { margin: 0; font-size: clamp(22px, 3vw, 34px); letter-spacing: -.04em; }
.tool-intro p { color: #71897C; font-size: 13px; line-height: 1.8; max-width: 700px; }
.tool-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-bottom: 56px; }
.tool-card { overflow: hidden; border: 1px solid rgba(210,232,219,.8); border-radius: 24px; background: #fff; box-shadow: var(--shadow); }
.tool-card-head { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px 0; color: var(--deep); font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.tool-card-mark { font-size: 22px; line-height: 1; }
.tool-card-visual { aspect-ratio: 5 / 2; margin: 16px 24px 0; border-radius: 20px; overflow: hidden; }
.tool-card-visual img { display: block; width: 100%; height: 100%; object-fit: cover; }
.tool-card-upscale .tool-card-visual { background: linear-gradient(130deg, #E7F8EE, #D7F5EF); color: #0B8E6C; }
.tool-card-ocr .tool-card-visual { background: linear-gradient(130deg, #E8F6FA, #E9F8E8); color: #0F826E; }
.tool-card-body { padding: 24px; }
.tool-card-body h2 { margin: 0 0 8px; font-size: 24px; }
.tool-card-body p { min-height: 48px; margin: 0; color: #6E8578; line-height: 1.7; font-size: 13px; }
.tool-facts { display: flex; flex-wrap: wrap; gap: 7px; margin: 20px 0 24px; }
.tool-facts span { border: 1px solid #D7EDE0; border-radius: 999px; padding: 5px 10px; color: #47876E; font-size: 10px; font-weight: 700; }
.tool-card-links { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; }
.tool-card-links .primary-button { min-height: 42px; }
.tool-note { margin: 18px 0 56px; color: #7A9083; font-size: 11px; line-height: 1.7; }

/* News */
.news-layout { display: grid; grid-template-columns: 1.12fr .88fr; gap: 15px; }
.news-lead { display: grid; grid-template-columns: 185px minmax(0,1fr); min-height: 315px; overflow: hidden; transition: transform .25s, box-shadow .25s; }
.news-lead-visual { position: relative; display: grid; place-items: center; min-height: 315px; overflow: hidden; background: radial-gradient(circle at 35% 25%, #EAFFF2, #C4EED8 57%, #AEDCC9); }
.visual-grid { position: absolute; inset: 0; background-image: linear-gradient(#ffffff4d 1px, transparent 1px), linear-gradient(90deg, #ffffff4d 1px, transparent 1px); background-size: 22px 22px; transform: rotate(-12deg) scale(1.25); }
.visual-glyph { position: relative; z-index: 1; color: #0F8A66; font-size: 94px; font-weight: 900; line-height: 1; letter-spacing: -.19em; transform: rotate(-10deg) translateX(-8px); text-shadow: 0 9px 18px rgba(12,114,80,.18); }
.visual-glyph span { color: #72CDA5; }
.visual-caption { position: absolute; bottom: 18px; left: 18px; font-size: 8px; letter-spacing: .07em; color: #36785D; font-weight: 800; }
.news-lead-content { display: flex; flex-direction: column; padding: 24px; min-width: 0; }
.item-meta { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; color: #8CA096; font-size: 10px; }
.news-new { display: inline-flex; align-items: center; padding: 5px 9px; border-radius: 999px; background: #138D69; color: #fff; font-size: 10px; font-weight: 800; white-space: nowrap; }
.news-time, .brief-meta { color: #718A7D; font-size: 11px; font-weight: 650; }
.tag { display: inline-flex; align-items: center; padding: 6px 10px; border-radius: 999px; background: #E7F8EF; color: var(--deep); font-size: 10px; font-weight: 800; white-space: nowrap; }
.news-lead h3 { font-size: 19px; line-height: 1.4; letter-spacing: -.4px; margin: 21px 0 10px; }
.news-lead p { color: #71867B; font-size: 11px; line-height: 1.7; margin: 0; }
.item-end { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: auto; padding-top: 18px; color: var(--deep); font-size: 11px; font-weight: 750; }
.item-end b { font-size: 16px; }
.news-briefs { display: flex; flex-direction: column; padding: 0 22px; }
.briefs-label { display: flex; justify-content: space-between; align-items: center; min-height: 48px; border-bottom: 1px solid var(--line); color: #8CA096; font-size: 10px; }
.briefs-label span:first-child { color: var(--deep); font-weight: 800; }
.brief-row { display: grid; grid-template-columns: 24px 1fr 14px; align-items: start; gap: 10px; padding: 14px 0; border-bottom: 1px solid var(--line); transition: color .2s; }
.brief-row:hover { color: var(--deep); }
.brief-number { color: var(--mint); font-size: 10px; font-weight: 800; }
.brief-body { display: flex; flex-direction: column; gap: 5px; }
.brief-body strong { font-size: 12px; line-height: 1.4; }
.brief-summary { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; color: #71867B; font-size: 11px; line-height: 1.5; }
.brief-arrow { color: var(--mint); font-size: 15px; }
.news-brief-empty { padding: 24px 0; color: #8DA397; font-size: 12px; }
.news-pending { box-shadow: none; }

/* X, repository and case previews */
.x-feature { padding: 28px 32px; margin-top: 48px; background: linear-gradient(120deg, #FFFFFF, #EFFBF4); }
.x-feature-top, .x-feature-bottom { display: flex; align-items: center; justify-content: space-between; color: #8DA397; font-size: 10px; }
.x-feature-top .section-kicker { margin: 0; }
.x-feature-main { display: grid; grid-template-columns: 1.35fr .65fr; gap: 45px; align-items: center; padding: 31px 0; }
.x-feature h2 { font-size: 29px; letter-spacing: -.8px; line-height: 1.35; margin: 0 0 10px; }
.x-feature h2 span { color: var(--mint); }
.x-feature p { font-size: 12px; line-height: 1.75; color: var(--muted); max-width: 540px; margin: 0 0 18px; }
.light-link { display: inline-flex; align-items: center; gap: 7px; color: var(--deep); font-size: 12px; font-weight: 750; }
.x-status { display: flex; flex-direction: column; align-items: flex-start; min-height: 165px; padding: 20px; border: 1px solid #D8EEE0; border-radius: 17px; background: rgba(255,255,255,.84); }
.status-icon { font-size: 22px; line-height: 1; color: var(--mint); }
.x-status>span:nth-child(2) { color: #9BB2A5; font-size: 9px; letter-spacing: .08em; margin-top: 9px; }
.x-status strong { color: var(--deep); font-size: 24px; margin-top: 7px; }
.x-status small { color: #82978B; font-size: 10px; margin-top: 5px; }
.x-feature-bottom { padding-top: 14px; border-top: 1px solid #D9EBDF; }
.repo-list { display: grid; gap: 11px; }
.repo-row { display: grid; grid-template-columns: 42px minmax(0,1fr) 138px 18px; align-items: center; gap: 15px; min-height: 101px; padding: 18px 22px; transition: transform .25s, box-shadow .25s; }
.repo-index { color: var(--mint); font-size: 14px; font-weight: 800; }
.repo-main { min-width: 0; display: flex; flex-direction: column; gap: 5px; }
.repo-main small { color: var(--deep); font-size: 10px; font-weight: 800; }
.repo-main strong { font-size: 16px; letter-spacing: -.35px; overflow-wrap: anywhere; }
.repo-main>span { color: #83978B; font-size: 11px; }
.repo-metric { display: flex; flex-direction: column; gap: 4px; text-align: right; }
.repo-metric strong { font-size: 13px; }
.repo-metric small { color: #9EB2A6; font-size: 9px; }
.repo-main .repo-why { color: #4C7461; }
.github-summary { margin: 27px 0 20px; padding: 23px 28px; border: 1px solid #D7ECDD; border-radius: 20px; background: #F3FBF6; }
.github-summary[hidden] { display: none; }
.github-summary h2 { margin: 0 0 9px; font-size: 20px; }
.github-summary p { margin: 0; color: #557363; font-size: 12px; line-height: 1.8; }
.repo-go { color: var(--mint); font-size: 17px; }
.list-footnote { color: #8DA397; font-size: 10px; margin-top: 13px; }
.repo-placeholder { padding: 30px; border: 1px dashed #C8E4D4; border-radius: 20px; color: #6D8979; background: rgba(255,255,255,.82); font-size: 13px; }
.case-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.case-card { min-width: 0; min-height: 360px; overflow: hidden; display: flex; flex-direction: column; transition: transform .25s, box-shadow .25s; }
.case-card-content { min-width: 0; display: flex; flex: 1; flex-direction: column; }
.case-card-top { display: flex; align-items: center; justify-content: space-between; padding: 21px 22px 0; color: var(--deep); font-size: 11px; font-weight: 800; }
.case-card-top span:last-child { font-size: 18px; }
.case-card-bottom { display: flex; flex-direction: column; flex: 1; padding: 26px 22px 18px; }
.case-card h3 { font-size: 18px; line-height: 1.43; letter-spacing: -.45px; margin: 0 0 15px; }
.case-card p { color: #72877B; font-size: 12px; line-height: 1.7; margin: 0; }
.case-card-result { display: flex; flex-direction: column; gap: 5px; min-height: 103px; margin: 0 16px; border-radius: 15px; background: #EAF8EF; padding: 14px 17px; }
.case-blue .case-card-result { background: #EAF6F8; }.case-lime .case-card-result { background: #F2F7E8; }
.case-card-result span { color: #6E9981; font-size: 10px; font-weight: 750; }.case-card-result strong { color: var(--deep); font-size: 28px; line-height: 1; letter-spacing: -.9px; }.case-card-result small { color: #769486; font-size: 10px; }
.case-read { display: flex; justify-content: space-between; gap: 10px; align-items: center; margin: 15px 22px 19px; color: var(--deep); font-size: 11px; font-weight: 750; }.case-read b { font-size: 17px; font-weight: 500; }
.closing-cta { position: relative; overflow: hidden; margin: 58px 0 66px; padding: 50px 40px 58px; border-radius: 24px; background: linear-gradient(115deg, #DDF8E9, #EAFBF2 70%, #E9F8F9); box-shadow: var(--shadow); text-align: center; }
.closing-cta:before { content: ""; position: absolute; right: 28px; top: 10px; width: 145px; height: 145px; background: url("/assets/hero-spark.svg") center / contain no-repeat; opacity: .09; transform: rotate(-14deg); pointer-events: none; }
.closing-cta>span { position: relative; color: var(--deep); font-size: 11px; letter-spacing: .22em; font-weight: 800; }
.closing-cta h2 { position: relative; width: max-content; max-width: 100%; margin: 23px auto 0; font-family: "Songti SC", "STSong", "Noto Serif CJK SC", "SimSun", serif; font-size: clamp(36px,4.2vw,57px); line-height: 1.28; letter-spacing: -.075em; font-weight: 900; white-space: nowrap; }
.slogan-second { position: relative; color: #0F8A66; }
.slogan-second:after { content: ""; position: absolute; left: 4%; right: 0; bottom: -.12em; height: .12em; border-radius: 50%; background: linear-gradient(90deg,#16A37A66,#16A37ACC,#7BD5A8); transform: rotate(-2deg); }
.site-footer { padding: 25px 0 35px; border-top: 1px solid var(--line); }
.footer-brand { font-size: 24px; font-weight: 850; letter-spacing: -1.4px; }
.footer-brand small { color: #9CAD9F; font-size: 8px; letter-spacing: .1em; font-weight: 700; margin-left: 16px; vertical-align: middle; }
.footer-links { display: flex; flex-wrap: wrap; gap: 12px 23px; margin: 24px 0; color: #5D7367; font-size: 12px; }
.footer-links a:hover { color: var(--deep); }
.footer-bottom { display: flex; justify-content: space-between; gap: 16px; color: #91A99B; font-size: 10px; }

/* Shared inner pages */
.subhero { position: relative; min-height: 280px; padding: 28px 34px 28px; overflow: hidden; margin-top: 25px; background: linear-gradient(125deg, #FFFFFF, #ECFAF2); display: flex; flex-direction: column; }
.subhero-x { background: linear-gradient(125deg,#FFFFFF,#E9F7F8); }.subhero-github { background: linear-gradient(125deg,#FFFFFF,#E9F6EE); }.subhero-cases { background: linear-gradient(125deg,#FFFFFF,#F1F8E9); }
.subhero:after { content: ""; position: absolute; right: 27px; top: 21px; width: 225px; height: 225px; background: url("/assets/hero-spark.svg") center / contain no-repeat; opacity: .075; pointer-events: none; }
.back-link { color: var(--deep); width: fit-content; font-size: 11px; font-weight: 750; margin-bottom: 27px; position: relative; z-index: 2; }
.subhero .section-kicker { position: relative; z-index: 2; margin: 0; }
.subhero h1 { position: relative; z-index: 2; font-family: var(--font); font-size: 40px; font-weight: 800; line-height: 1.2; letter-spacing: -1.5px; margin: 13px 0 11px; }
.subhero p { position: relative; z-index: 2; max-width: 700px; color: var(--muted); font-size: 12px; line-height: 1.75; margin: 0; }
.subhero-footer { position: relative; z-index: 2; display: flex; justify-content: space-between; gap: 20px; margin-top: auto; padding-top: 25px; color: #8DA599; font-size: 10px; }
/* Section illustrations share the site's white cards, mint glow and line icons. */
.subhero-news,.subhero-x,.subhero-github,.subhero-cases,.subhero-tools { min-height: 265px; border-radius: 20px; background: radial-gradient(circle at 85% 46%,#E7F8EE 0,transparent 28%),linear-gradient(120deg,#FFFFFF,#F5FCF8); }
.subhero-news:after,.subhero-x:after,.subhero-github:after,.subhero-cases:after,.subhero-tools:after { content: none; }
.subhero-news p,.subhero-x p,.subhero-github p,.subhero-cases p { max-width: 590px; }
.subhero-x { background: radial-gradient(circle at 86% 41%,#E4F7F7 0,transparent 30%),linear-gradient(120deg,#FFFFFF,#F5FBFA); }
.subhero-github { background: radial-gradient(circle at 85% 45%,#E4F7E9 0,transparent 29%),linear-gradient(120deg,#FFFFFF,#F4FBF6); }
.subhero-cases { background: radial-gradient(circle at 84% 45%,#EDF8DE 0,transparent 30%),linear-gradient(120deg,#FFFFFF,#F8FCF3); }
.subhero-symbol { position: absolute; z-index: 1; top: 57px; right: 75px; width: 146px; height: 146px; display: grid; place-items: center; pointer-events: none; border: 1px solid #DBF1E4; background: linear-gradient(145deg,#F5FFF8,#CBEEDB); box-shadow: inset 11px 11px 23px #FFFFFFCC,inset -10px -12px 18px #4AAE7C22,12px 21px 28px #2E9C6D18; animation: float 6s ease-in-out infinite; }
.subhero-symbol svg { width: 74px; height: 74px; fill: none; stroke: #0F8A66; stroke-width: 3.2; stroke-linecap: round; stroke-linejoin: round; }
.subhero-news .subhero-symbol { border-radius: 28px; transform: rotate(-7deg); }
.subhero-x .subhero-symbol { border-radius: 50%; background: linear-gradient(145deg,#F4FFFC,#CBEDF0); box-shadow: inset 11px 11px 23px #FFFFFFDD,inset -11px -13px 18px #62ADC022,12px 21px 28px #2E9C6D16; animation-delay: -1.5s; }
.subhero-github .subhero-symbol { border-radius: 35px 13px 35px 13px; transform: rotate(8deg); animation-delay: -3s; }
.subhero-cases .subhero-symbol { width: 168px; height: 127px; top: 67px; border-radius: 40px; background: linear-gradient(145deg,#FBFFF3,#DCF0BF); animation-delay: -4.2s; }
.subhero-tools .subhero-symbol { border-radius: 28px; }
.subhero-news .subhero-footer,.subhero-x .subhero-footer,.subhero-github .subhero-footer,.subhero-cases .subhero-footer,.subhero-tools .subhero-footer { border-top: 1px solid #DFEDE4; margin-top: 24px; }
.news-more { display: block; margin: -23px auto 45px; padding: 12px 23px; border: 1px solid #BFE7D0; border-radius: 999px; background: white; color: var(--deep); font-size: 12px; font-weight: 800; cursor: pointer; }
.news-more[hidden] { display: none; }
.news-more:hover { background: #E7F7ED; }
.period-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 28px 0 2px; }
.period-bar>span { margin-right: 8px; color: #7B9386; font-size: 11px; font-weight: 750; }
.period-bar>small { margin-left: auto; color: #8CA79A; font-size: 10px; }
.period-bar .filter { min-width: 71px; text-align: center; }
.period-bar + .page-toolbar { padding-top: 21px; }
.period-bar + .github-summary { margin-top: 17px; }
.period-bar + .filter-bar { padding-top: 7px; }
.archive-entry { display: inline-flex; align-items: center; gap: 6px; margin: 14px 0 0; color: var(--deep); font-size: 12px; font-weight: 750; }
.archive-entry:hover { text-decoration: underline; text-underline-offset: 4px; }
.news-analysis[hidden] { display: none; }
.news-analysis .page-toolbar { padding: 25px 0 0; }
.news-analysis .archive-entry { margin: 0; }
.news-analysis .insight-home-link { margin: 13px 0 0; }
.github-today-tabs[hidden] { display: none !important; }
.github-summary { padding: 20px 24px; }
.github-summary p { font-size: 13px; line-height: 1.6; }
.page-toolbar { display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 35px 0 12px; }
.page-toolbar strong { font-size: 20px; }.page-toolbar span { color: #8FA398; font-size: 11px; }
.article-list { display: grid; gap: 12px; margin-bottom: 45px; }
.article-row { display: grid; grid-template-columns: 36px minmax(0,1fr) 17px; gap: 14px; padding: 23px 24px; transition: transform .25s, box-shadow .25s; }
.article-row > div { min-width: 0; overflow-wrap: anywhere; }
.article-index { color: var(--mint); font-size: 13px; font-weight: 800; }.article-arrow { color: var(--mint); font-size: 18px; }
.article-row h2 { font-size: 18px; line-height: 1.45; margin: 12px 0 7px; }.article-row p { color: var(--muted); font-size: 11px; line-height: 1.7; margin: 0 0 7px; }.article-row small { color: #99AB9F; font-size: 10px; }
.article-meta { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.article-row .article-summary { max-width: 720px; margin: 0 0 9px; color: #62796D; font-size: 13px; line-height: 1.65; }
.x-empty { margin: 28px 0 60px; min-height: 360px; padding: 55px 25px; display: flex; align-items: center; justify-content: center; flex-direction: column; text-align: center; }
.x-empty[hidden], .x-report[hidden] { display: none !important; }
.x-empty-mark { color: var(--mint); font-size: 38px; }.empty-kicker { color: var(--deep); font-size: 10px; letter-spacing: .1em; font-weight: 800; margin-top: 8px; }
.x-empty h2 { font-size: 28px; line-height: 1.35; margin: 14px 0; }.x-empty p { color: var(--muted); max-width: 540px; font-size: 12px; line-height: 1.75; margin: 0; }
.empty-rules { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin-top: 25px; }.empty-rules span { border-radius: 999px; background: #EAF8EF; color: var(--deep); padding: 8px 12px; font-size: 10px; font-weight: 750; }
.x-report { margin: 28px 0 60px; }
.x-report-intro, .x-post-card { border: 1px solid var(--line); border-radius: 20px; background: white; box-shadow: var(--shadow); }
.x-report-intro { padding: 30px 34px; background: linear-gradient(120deg, #FFFFFF, #EFFBF4); }
.x-report-intro h2 { margin: 0 0 12px; font-size: 27px; letter-spacing: -.7px; }
.x-report-intro p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.85; }
.x-post-list { display: grid; gap: 13px; margin-top: 16px; }
.x-post-card { position: relative; padding: 22px 26px; }
.x-post-top { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; color: #82998C; font-size: 11px; }
.x-post-language { margin-left: auto; color: var(--green); font-weight: 700; }
.x-post-rank { color: var(--deep); font-size: 16px; font-weight: 800; }
.x-post-title { display: inline-block; margin-top: 13px; font-size: 19px; line-height: 1.45; font-weight: 800; }
.x-post-title:hover { color: var(--deep); }
.x-post-summary, .x-post-why { color: var(--muted); font-size: 12px; line-height: 1.8; margin: 10px 0 0; }
.x-post-metrics { display: flex; flex-wrap: wrap; gap: 8px 16px; padding-top: 17px; color: var(--deep); font-size: 11px; font-weight: 750; }
.x-post-why { border-top: 1px solid var(--line); padding-top: 12px; }
.x-post-flag { display: inline-block; margin-top: 10px; color: #A26321; background: #FFF4DF; border-radius: 999px; padding: 5px 9px; font-size: 10px; font-weight: 800; }
.x-post-time { display: block; margin-top: 11px; color: #96AA9D; font-size: 10px; }
.filter-bar { display: flex; flex-wrap: wrap; gap: 8px; padding: 29px 0 17px; }
.filter { background: white; border: 1px solid var(--line); border-radius: 999px; padding: 10px 15px; color: #62796A; font-size: 11px; font-weight: 750; cursor: pointer; transition: background .2s,color .2s; }.filter:hover { color: var(--deep); }.filter.active { background: var(--deep); color: white; border-color: var(--deep); }.filter span { margin-left: 3px; }
.case-controls { display: flex; align-items: center; gap: 16px; margin: 27px 0 20px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 18px; background: #FFFFFFD9; box-shadow: 0 10px 28px rgba(38,133,98,.05); }
.case-controls .period-bar { flex: none; flex-wrap: nowrap; gap: 2px; margin: 0; padding: 4px; border-radius: 999px; background: #EBF7F0; }
.case-controls .period-bar .filter { min-width: 0; padding: 8px 12px; border: 0; background: transparent; white-space: nowrap; }
.case-controls .period-bar .filter.active { background: white; color: var(--deep); box-shadow: 0 2px 8px rgba(20,105,72,.10); }
.case-controls .filter-bar { flex: 1; flex-wrap: nowrap; justify-content: flex-end; gap: 2px; padding: 0 0 0 15px; border-left: 1px solid var(--line); }
.case-controls .filter-bar .filter { padding: 8px 10px; border: 0; background: transparent; white-space: nowrap; }
.case-controls .filter-bar .filter.active { background: #DFF5E9; color: var(--deep); }
.repo-list-page, .case-grid-page { margin-bottom: 45px; }.repo-list-page .repo-row { min-height: 110px; }.case-grid-page { margin-top: 0; display: grid; grid-template-columns: 1fr; gap: 12px; }
.case-grid-page .case-card { min-height: 172px; display: grid; grid-template-columns: 155px minmax(0,1fr) 165px; align-items: center; gap: 23px; padding: 23px 26px; }
.case-grid-page .case-card-result { min-height: 0; height: 100%; margin: 0; padding: 7px 22px 7px 0; justify-content: center; border-right: 1px solid var(--line); border-radius: 0; background: transparent; }
.case-grid-page .case-card-result strong { font-family: "Songti SC", "STSong", "Noto Serif CJK SC", serif; font-size: 35px; letter-spacing: -.04em; }
.case-grid-page .case-card-content { align-self: stretch; justify-content: center; }
.case-grid-page .case-card-top { padding: 0; }
.case-grid-page .case-card-top span:last-child { display: none; }
.case-grid-page .case-card-bottom { padding: 13px 0 0; }
.case-grid-page .case-card-bottom h3 { margin-bottom: 8px; }
.case-grid-page .case-read { align-self: stretch; justify-content: flex-end; gap: 8px; margin: 0; font-size: 11px; text-align: right; }
.case-grid-page .case-read b { flex: none; }
.case-card-result.is-method strong { font-family: var(--font); font-size: 24px; letter-spacing: -.04em; }
.case-grid-page .case-card-result.is-method strong { font-family: var(--font); font-size: 24px; }

/* Switch between the latest signals and the case library near the page top. */
.opportunity-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; margin: 25px 0 21px; padding: 7px; border: 1px solid var(--line); border-radius: 24px; background: #FFFFFFC7; box-shadow: 0 12px 32px rgba(38,133,98,.055); }
.opportunity-tab { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 7px; min-width: 0; min-height: 82px; padding: 14px 21px; border: 0; border-radius: 18px; background: transparent; color: var(--ink); font: inherit; text-align: left; cursor: pointer; transition: background .2s, color .2s, transform .2s; }
.opportunity-tab:hover { transform: translateY(-2px); background: #ECFAF3; }
.opportunity-tab[aria-selected="true"], .opportunity-tab[aria-selected="true"]:hover { color: white; background: linear-gradient(110deg,#16A37A,#0F8A66); }
.opportunity-tab:focus-visible { outline: 3px solid #58C9A5; outline-offset: 2px; }
.opportunity-tab span { font-size: 11px; font-weight: 800; letter-spacing: .08em; opacity: .74; }
.opportunity-tab strong { display: flex; align-items: center; gap: 11px; font-size: 21px; line-height: 1.3; letter-spacing: -.04em; }
.opportunity-tab b { font-size: 16px; font-weight: 500; }
.opportunity-panel[hidden] { display: none !important; }
.opportunity-panel .case-list-heading { margin-top: 6px; }

/* The all-post feed shares the WeChat synopsis; the source post stays private. */
.scys-feed { margin: 12px 0 20px; }
.scys-feed .section-heading { align-items: center; }
.scys-feed .section-heading h2 { font-size: 28px; }
.scys-feed .period-bar { margin: 12px 0 18px; }
.scys-feed-count { flex: none; padding: 8px 13px; color: var(--deep); background: #E4F7ED; border-radius: 999px; font-size: 12px; font-weight: 800; }
.scys-feed-list { display: grid; gap: 10px; }
.scys-feed .news-more { margin: 18px auto 0; }
.scys-feed-row { background: #fff; border: 1px solid var(--line); border-radius: 17px; box-shadow: 0 8px 24px rgba(38,133,98,.045); overflow: hidden; }
.scys-feed-row summary { display: grid; grid-template-columns: 126px minmax(0,1fr) 22px; align-items: center; column-gap: 22px; row-gap: 5px; min-height: 100px; padding: 18px 24px; list-style: none; cursor: pointer; }
.scys-feed-row summary::-webkit-details-marker { display: none; }
.scys-feed-row summary:hover { background: #F7FCF9; }
.scys-feed-meta { grid-column: 1; grid-row: 1 / 3; display: grid; gap: 6px; color: #789386; font-size: 11px; }
.scys-feed-meta span:last-child { color: var(--deep); font-weight: 750; }
.scys-feed-row strong { grid-column: 2; grid-row: 1; font-size: 17px; line-height: 1.5; letter-spacing: -.025em; }
.scys-feed-teaser { grid-column: 2; grid-row: 2; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #769184; font-size: 12px; line-height: 1.65; }
.scys-feed-row[open] .scys-feed-teaser { display: block; }
.scys-feed-arrow { grid-column: 3; grid-row: 1 / 3; color: var(--deep); font-size: 23px; text-align: right; }
.scys-feed-row[open] .scys-feed-arrow { transform: rotate(45deg); }
.scys-feed-preview { margin: 0 24px 18px 172px; padding: 12px 19px; background: #F2FAF5; border-radius: 13px; }
.scys-feed-cta { padding: 0; border: 0; background: transparent; color: var(--deep); font-size: 12px; font-weight: 800; cursor: pointer; }
.scys-feed-unlock { display: flex; align-items: center; justify-content: space-between; gap: 26px; margin: 28px 0 62px; padding: 28px 34px; border-radius: 22px; background: linear-gradient(115deg,#E0F8E9,#EAF9F5); box-shadow: var(--shadow); }
.scys-feed-unlock h2 { margin: 10px 0; font-size: 25px; line-height: 1.4; }
.scys-feed-unlock p { margin: 0; color: #638172; font-size: 12px; }
.scys-feed-unlock img { flex: none; width: 150px; height: 150px; padding: 8px; border-radius: 14px; background: white; object-fit: contain; }
.case-list-heading { margin-top: 46px; }
.insight-home-link { display: flex; align-items: center; gap: 17px; margin: 18px 0 17px; padding: 17px 22px; border: 1px solid #BFE8D1; border-radius: 17px; background: linear-gradient(115deg,#E6F9EE,#F5FCF8); }
.insight-home-link > span { flex: none; color: var(--deep); font-size: 10px; font-weight: 850; letter-spacing: .09em; }
.insight-home-link strong { font-size: 14px; line-height: 1.5; }
.insight-home-link b { margin-left: auto; color: var(--deep); font-size: 19px; }
.insight-home-link:hover { border-color: #76D4A3; }
.insight-teasers { display: grid; grid-template-columns: 215px minmax(0,1fr); gap: 19px; margin: 22px 0 22px; padding: 25px; border: 1px solid #D7ECE0; border-radius: 22px; background: linear-gradient(125deg,#EAF9F1,#F6FCF9); }
.insight-teasers-intro > span { color: var(--deep); font-size: 10px; font-weight: 850; letter-spacing: .1em; }
.insight-teasers-intro h3 { margin: 15px 0 20px; font-size: 22px; line-height: 1.35; letter-spacing: -.04em; }
.insight-teasers-intro > a { color: var(--deep); font-size: 12px; font-weight: 800; }
.insight-teasers-links { display: grid; gap: 8px; }
.insight-teasers-links a { display: grid; grid-template-columns: minmax(0,1fr) 18px; gap: 6px; padding: 13px 17px; border: 1px solid #DCECE3; border-radius: 13px; background: white; }
.insight-teasers-links a:hover { border-color: #8AD6AC; }
.insight-teasers-links span { grid-column: 1; color: var(--deep); font-size: 10px; font-weight: 800; }
.insight-teasers-links strong { grid-column: 1; font-size: 13px; line-height: 1.45; }
.insight-teasers-links b { grid-column: 2; grid-row: 1 / 3; align-self: center; color: var(--deep); font-size: 17px; }
.case-outcome { color: var(--deep); font-size: 23px; font-weight: 750; line-height: 1.5; letter-spacing: -.025em; }
.case-result-panel[data-metric-count="0"] { min-height: 290px; }

/* Local case detail: teaser, author-reported results, and experience-card entry. */
.case-detail-hero { background: linear-gradient(120deg, #FFFFFF, #ECFAF2); }
.case-detail-hero h1 { max-width: 860px; font-size: 37px; line-height: 1.33; }
.case-detail-deck { font-size: 13px !important; }
.case-detail-layout { display: grid; grid-template-columns: 1.12fr .88fr; grid-template-areas: "summary results"; gap: 16px; margin-top: 18px; }
.case-summary-panel, .case-result-panel { background: white; border: 1px solid rgba(210,232,219,.74); border-radius: 20px; box-shadow: var(--shadow); padding: 30px; min-height: 270px; }
.case-summary-panel { grid-area: summary; }.case-result-panel { grid-area: results; }
.detail-label { color: var(--deep); font-size: 11px; letter-spacing: .08em; font-weight: 800; }
.case-summary-panel h2 { font-size: 23px; line-height: 1.35; margin: 16px 0 14px; letter-spacing: -.5px; }
.case-summary-panel p { color: #5F7568; font-size: 14px; line-height: 1.95; margin: 0; }
.case-editorial { margin-top: 27px; padding: 23px 24px; border-radius: 17px; background: #F2FAF5; }
.case-editorial h3 { margin: 9px 0 17px; font-size: 18px; line-height: 1.4; }
.case-editorial dl { display: grid; gap: 14px; margin: 0; }
.case-editorial dl div { display: grid; grid-template-columns: 86px minmax(0,1fr); gap: 12px; padding-top: 13px; border-top: 1px solid #DCECE3; }
.case-editorial dt { color: var(--deep); font-size: 11px; font-weight: 800; }
.case-editorial dd { margin: 0; color: #536F60; font-size: 13px; line-height: 1.7; }
.case-questions { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--line); }
.case-questions h3 { margin: 0 0 13px; color: var(--deep); font-size: 16px; }
.case-questions ul { margin: 0; padding-left: 20px; color: #486957; font-size: 13px; line-height: 1.8; }
.case-questions li + li { margin-top: 7px; }
.case-guide-link { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 22px; padding: 13px 17px; border: 1px solid #BFE8D1; border-radius: 12px; background: #F1FBF5; color: var(--deep); font-size: 12px; font-weight: 800; line-height: 1.5; }
.case-guide-link:hover { border-color: #77D4A2; background: #E7F8EE; }
.case-guide-link span { flex: none; font-size: 16px; }
.case-inline-cta { margin-top: 23px; padding: 12px 17px; border: 0; border-radius: 999px; color: white; background: linear-gradient(110deg,#16A37A,#0F8A66); font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; }
.case-inline-cta:hover { transform: translateY(-2px); box-shadow: 0 10px 24px #16A37A33; }
.case-result-panel { position: relative; display: flex; flex-direction: column; overflow: hidden; min-height: 430px; padding: 34px; background: radial-gradient(circle at 84% 12%,#DDF7E8 0,transparent 42%),linear-gradient(145deg,#FFFFFF,#F1FAF5); }
.case-result-panel:after { content: ""; position: absolute; right: -93px; bottom: -141px; width: 280px; height: 280px; border: 1px solid rgba(22,163,122,.12); border-radius: 50%; pointer-events: none; }
.case-result-panel>.detail-label, .result-caveat { position: relative; z-index: 1; }
#case-detail-results { position: relative; z-index: 1; display: flex; flex: 1; flex-direction: column; justify-content: center; margin: 20px 0; }
.case-result { display: flex; flex-direction: column; align-items: flex-start; gap: 13px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.case-result:last-child { border-bottom: 0; }
.case-result strong { display: inline-flex; align-items: baseline; gap: .1em; max-width: 100%; color: var(--deep); font-family: "Songti SC", "STSong", "Noto Serif CJK SC", serif; font-size: clamp(46px,5vw,64px); font-weight: 800; line-height: 1.04; letter-spacing: -.065em; white-space: nowrap; }
.case-result .metric-unit { color: var(--deep); font-family: var(--font); font-size: .48em; font-weight: 750; line-height: 1; letter-spacing: -.04em; }
.case-result span { color: #658273; font-size: 13px; line-height: 1.5; }
.case-result-panel[data-metric-count="1"] .case-result strong { font-size: clamp(58px,6.8vw,82px); }
.case-result-panel[data-metric-count="1"] .case-result { gap: 18px; }
.case-result-panel[data-metric-count="3"] { min-height: 470px; }
.case-result-panel[data-metric-count="3"] #case-detail-results { justify-content: space-around; }
.case-result-panel[data-metric-count="3"] .case-result { padding: 14px 0; }
.result-caveat { color: #819C8B; font-size: 11px; line-height: 1.7; margin: 0; padding-top: 18px; border-top: 1px solid rgba(22,163,122,.16); }
.unlock-section { display: grid; grid-template-columns: minmax(0,1fr) 270px; gap: 32px; align-items: center; margin: 20px 0 64px; padding: 38px 40px; border-radius: 24px; background: linear-gradient(120deg,#DCF8E9,#EAF9F4 64%,#E7F7F7); box-shadow: var(--shadow); }
.unlock-copy h2 { font-size: 34px; line-height: 1.35; letter-spacing: -1px; margin: 18px 0 13px; }
.unlock-copy p { color: #587668; font-size: 13px; line-height: 1.8; margin: 0; }
.unlock-points { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 26px; }
.unlock-points span { padding: 8px 12px; color: var(--deep); background: #FFFFFFA8; border: 1px solid #D7EDDE; border-radius: 999px; font-size: 11px; font-weight: 750; }
.qr-card { display: flex; flex-direction: column; align-items: center; padding: 18px; background: white; border: 1px solid var(--line); border-radius: 20px; box-shadow: 0 15px 36px rgba(38,133,98,.10); }
.qr-viewport, .qr-placeholder { width: 240px; height: 240px; border-radius: 13px; }
.qr-viewport { display: block; overflow: hidden; background: white; }
.qr-viewport img { display: block; width: 100%; height: 100%; object-fit: contain; image-rendering: pixelated; }
.qr-viewport[hidden] { display: none !important; }
.qr-placeholder { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 8px; background: repeating-linear-gradient(45deg,#F1FAF5,#F1FAF5 9px,#E9F7EE 9px,#E9F7EE 18px); border: 1px dashed #A7D8BB; text-align: center; }
.qr-placeholder span { color: var(--mint); font-size: 43px; line-height: 1; }.qr-placeholder strong { color: var(--deep); font-size: 15px; }.qr-placeholder small { color: #8BA89A; font-size: 10px; }
.qr-placeholder[hidden] { display: none !important; }
.qr-card p { color: var(--deep); font-size: 11px; font-weight: 750; margin: 13px 0 0; text-align: center; }
.qr-mobile-guide { display: none; color: #6F8678; font-size: 10px; line-height: 1.6; margin-top: 8px; text-align: center; }

@media (max-width: 1040px) {
  .menu-button { display: flex; }
  .primary-nav { display: none; position: absolute; top: 76px; left: 0; right: 0; padding: 8px 15px 15px; border: 1px solid var(--line); border-radius: 16px; background: white; box-shadow: var(--shadow); flex-direction: column; align-items: stretch; gap: 0; }
  .primary-nav.open { display: flex; }
  .primary-nav a { padding: 13px 3px; border-bottom: 1px solid var(--line); font-size: 14px; }
  .primary-nav a:last-child { border-bottom: 0; }
  .site-header, main, .site-footer { width: calc(100% - 48px); }
  .clay-one { left: -13px; }.clay-two { right: -13px; }
  .strip-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .site-header, main, .site-footer { width: calc(100% - 32px); }
  .site-header { height: 70px; }
  .brand-main { font-size: 23px; }
  .menu-button { display: flex; }
  .primary-nav { display: none; position: absolute; top: 65px; left: 0; right: 0; padding: 8px 15px 15px; border: 1px solid var(--line); border-radius: 16px; background: white; box-shadow: var(--shadow); flex-direction: column; align-items: stretch; gap: 0; }
  .primary-nav.open { display: flex; }.primary-nav a { padding: 13px 3px; border-bottom: 1px solid var(--line); font-size: 14px; }.primary-nav a:last-child { border-bottom: 0; }
  .hero { min-height: 0; padding: 48px 0 33px; }
  .hero-art { display: none; }
  .hero h1 { font-size: 33px; letter-spacing: -1.1px; }
  .hero-description { line-height: 1.75; }.desktop-break { display: none; }
  .hero-bottom { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 24px; }.hero-bottom .primary-button { grid-column: 1/-1; }.primary-button, .secondary-button { padding: 0 10px; }
  .home-highlight { align-items: flex-start; flex-wrap: wrap; padding: 15px 18px; }.home-highlight a { width: 100%; margin-left: 17px; }
  .edition-strip { margin-top: 42px; }.strip-heading-end { display: none; }.strip-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }.strip-grid a { min-height: 172px; padding: 18px 14px; }.strip-grid strong { font-size: 14px; }.strip-grid small { font-size: 10px; }
  .tool-grid { grid-template-columns: 1fr; }
  .section-heading h2 { font-size: 20px; }.section-heading p { font-size: 11px; }.text-link { font-size: 11px; }
  .home-section, .x-feature { margin-top: 42px; }
  .news-layout, .x-feature-main { grid-template-columns: 1fr; }
  .news-lead { grid-template-columns: 120px minmax(0,1fr); min-height: 238px; }.news-lead-visual { min-height: 238px; }.visual-glyph { font-size: 70px; }.news-lead-content { padding: 16px; }.news-lead h3 { font-size: 16px; margin: 12px 0 8px; }.news-lead p { font-size: 10px; }.item-meta { font-size: 9px; }.item-end { padding-top: 10px; }
  .news-briefs { padding: 0 17px; }.x-feature { padding: 22px; }.x-feature-main { gap: 20px; padding: 25px 0; }.x-feature h2 { font-size: 26px; }.x-status { min-height: 0; }
  .x-report-intro { padding: 23px; }.x-report-intro h2 { font-size: 23px; }.x-post-card { padding: 20px; }.x-post-title { font-size: 17px; }
  .repo-row { grid-template-columns: 29px minmax(0,1fr) 15px; gap: 10px; padding: 17px; }.repo-main strong { font-size: 14px; }.repo-main>span { font-size: 10px; }.repo-metric { display: none; }
  .case-grid { grid-template-columns: 1fr; }.case-card { min-height: 310px; }.case-card h3 { font-size: 17px; }.case-card-bottom { padding-top: 19px; }
  .case-grid-page .case-card { min-height: 0; grid-template-columns: 1fr; gap: 12px; padding: 21px; }
  .case-grid-page .case-card-result { border-right: 0; border-bottom: 1px solid var(--line); padding: 0 0 15px; }
  .case-grid-page .case-card-bottom { padding-top: 12px; }
  .case-grid-page .case-read { justify-content: space-between; text-align: left; padding-top: 5px; }
  .opportunity-tabs { gap: 5px; margin: 15px 0 17px; padding: 5px; border-radius: 17px; }
  .opportunity-tab { min-height: 69px; gap: 5px; padding: 11px 12px; border-radius: 13px; }
  .opportunity-tab span { font-size: 9px; }
  .opportunity-tab strong { gap: 5px; font-size: 16px; }
  .opportunity-tab b { font-size: 12px; }
  .scys-feed-row summary { grid-template-columns: 1fr 22px; gap: 7px; min-height: 0; padding: 18px; }
  .scys-feed-meta { grid-column: 1 / 3; grid-row: 1; display: flex; gap: 13px; }
  .scys-feed-row strong { grid-column: 1; grid-row: 2; font-size: 15px; }
  .scys-feed-teaser { grid-column: 1; grid-row: 3; font-size: 11px; }
  .scys-feed-arrow { grid-column: 2; grid-row: 2 / 4; }
  .scys-feed-preview { margin: 0 15px 16px; }
  .scys-feed-unlock { align-items: flex-start; flex-direction: column; padding: 23px; }
  .scys-feed-unlock h2 { font-size: 21px; }
  .scys-feed-unlock img { align-self: center; width: 180px; height: 180px; }
  .closing-cta { margin: 43px 0 56px; padding: 32px 24px 38px; text-align: left; }
  .closing-cta:before { content: none; }
  .closing-cta>span { display: block; font-size: 10px; letter-spacing: .16em; }
  .closing-cta h2 { width: auto; margin: 23px 0 0; font-family: var(--font); font-size: clamp(28px,8vw,36px); font-weight: 850; line-height: 1.32; letter-spacing: -.06em; white-space: normal; }
  .closing-cta h2 span { display: block; white-space: nowrap; }
  .footer-bottom { flex-direction: column; }.footer-brand small { display: block; margin: 6px 0 0; }
  .subhero { margin-top: 12px; padding: 23px; min-height: 310px; }.subhero h1 { font-size: 34px; }.subhero p { font-size: 11px; }.subhero-footer { flex-wrap: wrap; gap: 7px; }.subhero:after { width: 180px; height: 180px; right: -25px; top: 60px; }
  .subhero-news,.subhero-x,.subhero-github,.subhero-cases,.subhero-tools { min-height: 275px; }
  .subhero-symbol { width: 104px; height: 104px; top: 46px; right: 19px; opacity: .36; }
  .subhero-symbol svg { width: 58px; height: 58px; }
  .subhero-cases .subhero-symbol { width: 112px; height: 96px; top: 47px; }
  .subhero-tools .subhero-symbol { width: 78px; height: 78px; top: 54px; border-radius: 20px; opacity: .6; }
  .subhero-tools .subhero-symbol svg { width: 46px; height: 46px; }
  .subhero-news p,.subhero-x p,.subhero-github p,.subhero-cases p { max-width: 100%; }
  .period-bar { gap: 7px; margin-top: 21px; }
  .period-bar>span { width: 100%; margin: 0 0 2px; }
  .period-bar>small { width: 100%; margin: 3px 0 0; }
  .case-controls { align-items: flex-start; flex-direction: column; gap: 10px; padding: 13px; margin-top: 21px; }
  .insight-home-link { align-items: flex-start; flex-wrap: wrap; gap: 8px; padding: 16px 18px; }
  .insight-home-link > span { width: 100%; }
  .insight-home-link strong { max-width: calc(100% - 24px); font-size: 13px; }
  .insight-teasers { grid-template-columns: 1fr; gap: 17px; padding: 20px; }
  .insight-teasers-intro h3 { margin: 10px 0; font-size: 20px; }
  .insight-teasers-intro h3 br { display: none; }
  .insight-teasers-links strong { font-size: 12px; }
  .case-controls .filter-bar { width: 100%; justify-content: flex-start; flex-wrap: wrap; gap: 3px; padding: 10px 0 0; border-left: 0; border-top: 1px solid var(--line); }
  .page-toolbar { flex-direction: column; align-items: flex-start; gap: 5px; }.article-row { padding: 18px; grid-template-columns: 24px minmax(0,1fr) 13px; gap: 9px; }.article-row h2 { font-size: 15px; }.article-row p { font-size: 10px; }
  .case-detail-hero { min-height: 0; }
  .case-detail-hero:after { content: none; }
  .case-detail-hero h1 { font-size: 28px; }.case-detail-layout { grid-template-columns: 1fr; grid-template-areas: "results" "summary"; }.case-summary-panel, .case-result-panel { min-height: 0; padding: 23px; }.case-result-panel { min-height: 315px; }.case-result-panel[data-metric-count="3"] { min-height: 435px; }.case-result-panel[data-metric-count="1"] .case-result strong { font-size: clamp(60px,17vw,72px); }.unlock-section { grid-template-columns: 1fr; padding: 28px 22px; gap: 23px; }.unlock-copy h2 { font-size: 28px; }.qr-card { width: 100%; max-width: 280px; margin: 0 auto; }.qr-mobile-guide { display: block; }
  .case-editorial { padding: 20px; }.case-editorial dl div { grid-template-columns: 1fr; gap: 5px; }
}
@media (max-width: 390px) {
  .hero h1 { font-size: 31px; }.hero-description { font-size: 12px; }.section-heading h2 { font-size: 19px; }.strip-grid a { min-height: 178px; }.strip-grid small { font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; } *, *:before, *:after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
