@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Noto+Sans+SC:wght@400;500;700;900&display=swap');
:root{--bg:#f8f6f3;--ink:#34413d;--muted:#68726f;--line:#deded9;--soft:#e7eae2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(90deg,rgba(184,207,218,.5),transparent 7%,transparent 93%,rgba(181,220,232,.52)),var(--bg);color:var(--ink);font-family:'Noto Sans SC',sans-serif;font-size:14px}body:before,body:after{content:"";position:fixed;z-index:-1;width:220px;height:520px;filter:blur(35px);opacity:.45}body:before{left:-125px;top:-100px;background:#bdcf6a}body:after{right:-140px;top:-120px;background:#80cbe1}a{color:inherit;text-decoration:none}.wrap{max-width:1400px;margin:auto;padding:0 48px}.header{height:92px;display:flex;justify-content:space-between;align-items:center}.logo,.nav,.eyebrow,.mono{font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.04em}.logo{font-weight:500}.nav{display:flex;gap:29px;height:100%;align-items:center}.nav a{height:100%;padding-top:36px;position:relative}.nav a.active:after{content:"";position:absolute;bottom:26px;left:0;right:0;height:1px;background:var(--ink)}.hero{height:505px;padding-top:0;position:relative;border-bottom:1px solid var(--line)}.eyebrow{color:#5e6965}.hero h1,.page-head h1{font-size:clamp(52px,6.6vw,88px);letter-spacing:-.085em;line-height:1.14;font-weight:900;margin:20px 0 0}.outline{font-size:clamp(145px,18vw,255px);line-height:.72;letter-spacing:-.18em;color:transparent;-webkit-text-stroke:1px #87908c;position:absolute;left:0;top:58px;z-index:-1}.hero-title{margin-left:410px;padding-top:305px;white-space:nowrap}.hero-copy{position:absolute;right:55px;bottom:62px;display:flex;gap:66px;align-items:center;color:var(--muted);line-height:1.8}.circle{width:68px;height:68px;border:1px solid #9ba29f;border-radius:50%;display:grid;place-items:center;text-align:center;font:10px 'IBM Plex Mono';color:var(--ink)}.section{border-bottom:1px solid var(--line);padding:29px 0 62px}.label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.intro{display:grid;grid-template-columns:330px 1fr;padding:0 0 66px}.intro h2{font-size:28px;letter-spacing:-.06em;margin:0;line-height:1.4}.intro p{margin:56px 0 0;color:var(--muted);line-height:1.8}.intro .english{font:11px 'IBM Plex Mono';letter-spacing:.04em}.notes{border-top:1px solid var(--line)}.note{display:grid;grid-template-columns:98px 1fr 210px;gap:0;padding:20px 0;border-bottom:1px solid var(--line);align-items:center}.note strong{font-size:18px;font-weight:700;letter-spacing:-.04em}.note span:last-child{font:11px 'IBM Plex Mono';color:var(--muted)}.explore{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.explore a{min-height:245px;padding:22px;display:flex;flex-direction:column}.explore a+a{border-left:1px solid var(--line)}.explore h3{font-size:27px;letter-spacing:-.06em;margin:43px 0 8px}.explore p{color:var(--muted);line-height:1.7;margin:0;max-width:235px}.explore em{font-style:normal;margin-top:auto;font:11px 'IBM Plex Mono';border-bottom:1px solid var(--ink);width:max-content;padding-bottom:4px}.footer{height:90px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font:11px 'IBM Plex Mono'}
.page-head{padding:95px 0 76px;border-bottom:1px solid var(--line)}.page-head h1{margin-top:18px}.page-head p{color:var(--muted);line-height:1.8;margin:22px 0 0;max-width:330px}.about-main{display:grid;grid-template-columns:460px 1fr;gap:125px;padding:35px 10px 76px;border-bottom:1px solid var(--line)}.profile{height:295px;background:linear-gradient(130deg,#fcfbf3,#e5eee0);border-top:3px solid #bdd472;padding:15px;box-shadow:0 14px 25px #d8ddd690}.profile-top{display:flex;justify-content:space-between;font:10px 'IBM Plex Mono';border-bottom:1px solid #d9ded4;padding-bottom:11px}.avatar{width:130px;height:130px;border-radius:50%;background:radial-gradient(circle at 50% 35%,#d1d3d1 0 28%,#283036 29% 50%,#a9b0af 51%);margin:28px 0 0 14px}.profile-data{float:right;margin-top:-142px;width:230px;text-align:center}.profile-data div{padding:9px;border-bottom:1px solid #d9ded4}.profile-data span{display:block;font:9px 'IBM Plex Mono';color:#89918d;margin-bottom:4px}.about-text{padding-top:12px;background-image:radial-gradient(#d4d8d3 .8px,transparent .8px);background-size:8px 8px}.about-text h2{font:12px 'IBM Plex Mono';font-weight:400;letter-spacing:.08em;margin:0 0 25px}.about-text p{line-height:2.05;margin:0 0 15px;padding-left:18px;position:relative}.about-text p:before{content:'◎';color:#cb8e85;position:absolute;left:0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mini{height:105px;border:1px solid var(--line);padding:12px;display:flex;flex-direction:column;justify-content:space-between}.mini b{font-size:16px}.cover-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.cover{height:260px;padding:14px;display:flex;align-items:end;color:#fff;font-size:22px;font-weight:700;letter-spacing:-.07em}.cover:nth-child(1){background:#f2e6d9;color:#bc8d6c}.cover:nth-child(2){background:#e6513f}.cover:nth-child(3){background:#b9141f}.cover:nth-child(4){background:#e8c53e;color:#5c4c25}.cover:nth-child(5){background:#3973bf}.article-list{border-top:1px solid var(--line)}.article-row{display:grid;grid-template-columns:100px 1fr 180px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}.article-row h2{margin:0;font-size:24px;letter-spacing:-.05em}.article-row p{color:var(--muted);margin:6px 0 0}.project{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.project-art{height:300px;margin:25px 25px 25px 0;display:grid;place-items:center;font:700 52px 'IBM Plex Mono';letter-spacing:-.12em;background:#dbe4de}.project:nth-child(odd) .project-art{background:#37443f;color:#f7f4ed}.project-info{padding:70px 20px;display:flex;flex-direction:column;justify-content:space-between}.project-info h2{font-size:35px;letter-spacing:-.07em;margin:15px 0}.project-info p{color:var(--muted);max-width:300px;line-height:1.8}.project:last-child{border-bottom:1px solid var(--line)}
@media(max-width:720px){.wrap{padding:0 20px}.header{height:70px}.nav{gap:14px;font-size:10px}.nav a{padding-top:27px}.nav a.active:after{bottom:17px}.hero{height:450px;padding-top:120px}.outline{left:0;top:150px}.hero-title{margin-left:0}.hero h1,.page-head h1{font-size:50px}.hero-copy{left:0;right:auto;bottom:35px;gap:18px;font-size:12px}.circle{width:55px;height:55px}.intro{grid-template-columns:1fr;padding-bottom:40px}.intro p{margin-top:20px}.note{grid-template-columns:48px 1fr}.note span:last-child{grid-column:2;margin-top:7px}.explore{grid-template-columns:1fr}.explore a{min-height:190px}.explore a+a{border-left:0;border-top:1px solid var(--line)}.about-main{grid-template-columns:1fr;gap:35px;padding-left:0;padding-right:0}.profile{max-width:420px}.cover-grid{grid-template-columns:repeat(2,1fr)}.cover{height:210px}.article-row{grid-template-columns:70px 1fr}.article-row .mono{grid-column:2;margin-top:9px}.project{grid-template-columns:1fr}.project-art{margin:20px 0 0}.project-info{padding:35px 0}.footer{height:auto;padding:28px 0;gap:12px;flex-wrap:wrap}}

.hero h1{font-size:clamp(70px,8.3vw,118px)}

@media (min-width:721px){.hero-title{margin-left:395px;padding-top:280px}.hero h1{font-size:100px}.hero-copy{right:0;bottom:20px}}

@media (min-width:721px){.hero-title{margin-left:430px}}

.growth{padding-bottom:76px}.growth-grid{display:grid;grid-template-columns:1fr 52px 1fr;gap:0;position:relative}.growth-side{display:flex;flex-direction:column;gap:29px}.timeline{position:relative;display:flex;flex-direction:column;justify-content:space-around;align-items:center}.timeline:before{content:"";position:absolute;top:0;bottom:0;width:2px;background:linear-gradient(#b8cf6c,#9bd1df)}.timeline span{width:12px;height:12px;border-radius:50%;border:1px solid var(--ink);background:var(--bg);z-index:1}.route-item{display:flex;flex-direction:column;gap:29px}.route-card{height:94px;border:1px solid var(--line);border-bottom:2px solid #cbdba6;padding:16px 18px;text-align:right;position:relative}.route-card h3{font-size:18px;letter-spacing:-.05em;margin:9px 0 2px}.route-card p{font-size:11px;color:var(--muted);margin:0}.right .route-card{text-align:left;border-bottom-color:#b7dbe6}.route-photos{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;height:142px}.route-photos i{display:block;border:1px solid var(--line);background:linear-gradient(135deg,#eef0ec,#faf9f6)}.route-photos i:nth-child(2){background:linear-gradient(135deg,#f3f0ea,#e2e9e6)}.route-photos i:nth-child(3){background:linear-gradient(135deg,#f8f5ef,#e9e7df)}.route-photos i:nth-child(4){background:linear-gradient(135deg,#e8f0ef,#f7f4ed)}
@media(max-width:720px){.growth-grid{grid-template-columns:1fr 25px}.growth-side{gap:24px}.growth-side.right{grid-column:1;grid-row:2}.timeline{grid-column:2;grid-row:1 / span 2}.route-item,.route-item.photos-first{gap:18px}.route-card{height:auto;min-height:88px}.route-photos{height:78px;gap:5px}.growth .label-row{gap:15px}.growth .label-row span:last-child{font-size:9px;white-space:nowrap}}
/* About page: reference-style recent and annual modules */
.cards{gap:16px}.mini{height:158px;min-height:158px;padding:17px 20px;border-color:#d5d8d5;position:relative;display:block}.mini-icon{width:37px;height:37px;border:1px solid #5e6965;border-radius:50%;display:grid;place-items:center;font:12px 'IBM Plex Mono';font-style:normal;background:#dceec5;margin-bottom:18px}.mini:nth-child(2) .mini-icon{background:#dce2f1}.mini:nth-child(3) .mini-icon{background:#d6e8e8}.mini:nth-child(4) .mini-icon{background:#eee4ca}.mini>span.mono{font-size:11px;color:var(--muted)}.mini b{display:block;font-size:19px;letter-spacing:-.05em;margin:10px 0 0;border-bottom:2px solid #7c8581;padding-bottom:3px;max-width:calc(100% - 2px)}.mini em{display:block;font:12px 'IBM Plex Mono';font-style:normal;margin-top:8px}.mini-thumb{position:absolute;right:14px;top:28px;width:96px;height:99px;border:1px solid #a9c8c4;background:linear-gradient(135deg,#faf9f5,#e2ece8);box-shadow:7px 7px 0 #d4e1dc}.annual{padding-top:30px}.annual .label-row{margin-bottom:48px}.annual-tabs{display:flex;gap:11px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:29px}.annual-tabs>*{border:1px solid #d7dad7;padding:10px 19px;font-size:14px;font-weight:500}.annual-tabs b{background:var(--ink);color:#fff;border-color:var(--ink)}.annual-books{display:grid;grid-template-columns:repeat(5,1fr);gap:21px}.annual-books article{min-width:0}.annual-books i{display:block;height:315px;border:1px solid #d6d8d5;background:linear-gradient(135deg,#faf9f6,#eaece8);box-shadow:7px 0 0 #f0f1ed}.annual-books p{margin:12px 0 0;font-size:15px;font-weight:700;letter-spacing:-.04em}.annual-books p b{margin-right:9px;font-size:11px}.annual-books article:nth-child(2) i{background:linear-gradient(135deg,#faf9f6,#eee8df)}.annual-books article:nth-child(3) i{background:linear-gradient(135deg,#faf9f6,#e9eceb)}.annual-books article:nth-child(4) i{background:linear-gradient(135deg,#faf9f6,#f0eee4)}.annual-books article:nth-child(5) i{background:linear-gradient(135deg,#faf9f6,#e6f0f3)}
@media(max-width:720px){.cards{grid-template-columns:1fr 1fr;gap:10px}.mini{height:145px;min-height:145px;padding:12px}.mini-thumb{width:48px;height:58px;right:9px;top:20px}.mini b{font-size:15px}.annual .label-row{margin-bottom:25px}.annual-tabs{overflow:auto;white-space:nowrap;margin-bottom:18px}.annual-tabs>*{padding:8px 13px;font-size:12px}.annual-books{grid-template-columns:repeat(2,1fr);gap:15px}.annual-books i{height:225px}.annual-books p{font-size:14px}}
.annual-tabs button{appearance:none;background:transparent;color:var(--ink);font:500 14px 'Noto Sans SC',sans-serif;cursor:pointer}.annual-tabs button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.annual-tabs button:focus-visible{outline:2px solid #8bc3d5;outline-offset:2px}@media(max-width:720px){.annual-tabs button{font-size:12px}}

.article-row{transition:background-color .32s ease,padding-left .32s ease,padding-right .32s ease}.article-row h2,.article-row p,.article-row .mono{transition:transform .32s cubic-bezier(.2,.8,.2,1),color .25s ease,opacity .25s ease}.article-row p{opacity:.72}.article-row:hover{background:rgba(215,232,226,.48);padding-left:18px;padding-right:18px}.article-row:hover h2{transform:translateX(12px);color:#1f544b}.article-row:hover p{transform:translateX(12px);opacity:1}.article-row:hover .mono:last-child{transform:translateX(-10px);color:#1f544b}.article-row:hover .mono:last-child::after{content:' →';font-size:13px}.article-row:focus-within{background:rgba(215,232,226,.48)}@media(prefers-reduced-motion:reduce){.article-row,.article-row h2,.article-row p,.article-row .mono{transition:none}}
.note{transition:background-color .3s ease,padding-left .3s ease,padding-right .3s ease}.note strong,.note span{transition:transform .3s cubic-bezier(.2,.8,.2,1),color .25s ease}.note:hover{background:rgba(215,232,226,.48);padding-left:16px;padding-right:16px}.note:hover strong{transform:translateX(12px);color:#1f544b}.note:hover span:last-child{transform:translateX(-10px);color:#1f544b}.note:hover span:last-child::after{content:' →';font-size:13px}.note:focus-visible{outline:2px solid #8bc3d5;outline-offset:-2px}@media(prefers-reduced-motion:reduce){.note,.note strong,.note span{transition:none}}
@media (min-width:721px){.hero-title{margin-left:235px;padding-top:285px}.hero h1{font-size:54px;letter-spacing:-.075em;line-height:1.18}.hero-copy{bottom:24px}}
@media (max-width:720px){.hero-title{white-space:normal}.hero h1{font-size:30px;line-height:1.35}}
@media (min-width:721px){.hero-title{margin-left:0}}

/* Home introduction editorial treatment */
.intro{position:relative;align-items:stretch}.intro>div:first-child{position:relative;min-height:210px;overflow:hidden}.intro>div:first-child:before{content:'01';position:absolute;left:12px;top:13px;color:#c9d784;font:500 130px/.8 'IBM Plex Mono';letter-spacing:-.15em;opacity:.72}.intro>div:first-child:after{content:'';position:absolute;width:155px;height:155px;border:1px solid #9fb5ac;border-radius:50%;left:112px;bottom:14px;box-shadow:inset 0 0 0 27px rgba(194,217,207,.25),0 0 0 19px rgba(224,232,213,.42)}.intro>div:last-child{border-left:1px solid var(--line);padding:23px 46px 31px;position:relative;background:linear-gradient(90deg,rgba(243,246,239,.72),transparent 75%)}.intro>div:last-child:after{content:'PERSONAL NOTE';position:absolute;right:27px;top:23px;color:#92a09a;font:10px 'IBM Plex Mono';letter-spacing:.1em}.intro h2{max-width:600px;font-size:29px;line-height:1.5;padding-right:100px}.intro p{margin:30px 0 0;max-width:720px;line-height:2;color:#5d6964}.intro .english{display:block;margin-top:12px;padding-top:12px;border-top:1px dashed #cdd4cf;color:#7d8883;line-height:1.65}.intro:after{content:'✦';position:absolute;left:297px;top:44px;color:#d06448;font-size:18px}@media(max-width:720px){.intro>div:first-child{min-height:110px}.intro>div:first-child:before{font-size:85px}.intro>div:first-child:after{width:78px;height:78px;left:115px;bottom:10px;box-shadow:inset 0 0 0 14px rgba(194,217,207,.25),0 0 0 10px rgba(224,232,213,.42)}.intro>div:last-child{border-left:0;border-top:1px solid var(--line);padding:25px 0 15px}.intro>div:last-child:after{right:0}.intro h2{font-size:23px;padding-right:0}.intro:after{left:160px;top:80px}.intro p{margin-top:23px}}
/* Homepage visual enrichment and reading scale */
body{font-size:15px}.hero{overflow:hidden}.hero:before{content:'';position:absolute;right:220px;top:78px;width:132px;height:132px;border:1px dashed #aab8b0;border-radius:50%;opacity:.8;animation:slow-turn 22s linear infinite}.hero:after{content:'✦  ·  ✦';position:absolute;right:265px;top:133px;color:#d3684a;font:16px 'IBM Plex Mono';letter-spacing:.45em;animation:soft-float 5s ease-in-out infinite}.hero .eyebrow{position:relative;z-index:1}.hero-title{position:relative;z-index:1}.hero-copy{z-index:1}.section .label-row{position:relative}.section .label-row:after{content:'';width:38px;height:1px;background:#c9d77d;margin-left:13px;opacity:.8}.notes{position:relative}.notes:before{content:'✦';position:absolute;right:8px;top:-28px;color:#d3684a;font-size:14px}.note strong{font-size:20px;line-height:1.5}.explore h3{font-size:30px}.explore p{font-size:15px;line-height:1.85}.intro p{font-size:16px}.intro .english{font-size:11px}.hero,.intro>div:last-child,.notes,.explore{animation:enter-up .75s cubic-bezier(.2,.8,.2,1) both}.intro>div:last-child{animation-delay:.12s}.notes{animation-delay:.2s}.explore{animation-delay:.28s}.explore a{position:relative;overflow:hidden;transition:background-color .3s ease,transform .3s ease}.explore a:before{content:'';position:absolute;width:88px;height:88px;right:-45px;top:-45px;border:1px solid #c6d7ce;border-radius:50%;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.explore a:hover{background:rgba(226,237,227,.4);transform:translateY(-4px)}.explore a:hover:before{transform:scale(1.7)}@keyframes enter-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes slow-turn{to{transform:rotate(360deg)}}@media(max-width:720px){body{font-size:14px}.hero:before{right:18px;top:63px;width:74px;height:74px}.hero:after{right:26px;top:91px;font-size:10px}.note strong{font-size:18px}.explore h3{font-size:28px}.intro p{font-size:15px}.section .label-row:after{width:20px}}@media(prefers-reduced-motion:reduce){.hero:before,.hero:after,.hero,.intro>div:last-child,.notes,.explore{animation:none}.explore a{transition:none}}
.section .label-row:after{position:absolute;left:145px;right:auto;top:50%;margin:0;transform:translateY(-50%)}@media(max-width:720px){.section .label-row:after{left:125px}}

.header{position:sticky;top:0;z-index:100;background:rgba(248,246,243,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(222,222,217,.78)}

.header{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:0}

.nav a{font-family:'Noto Sans SC',sans-serif;font-weight:700}

.article-row.linked{cursor:pointer}.article-row.linked:focus-visible{outline:2px solid #8bc3d5;outline-offset:-2px}

.nav a{font-size:15px;letter-spacing:.02em}@media(max-width:720px){.nav a{font-size:12px}}

@media(min-width:721px){.hero .outline{font-size:340px;line-height:.78;letter-spacing:-.22em;font-weight:900;-webkit-text-stroke:2px #7f8985;top:25px}}
@media(max-width:720px){.hero .outline{font-size:165px;line-height:.78;letter-spacing:-.2em;font-weight:900;-webkit-text-stroke:1px #7f8985;top:100px}}
@media(min-width:721px){.hero h1{letter-spacing:.02em}}

@media(min-width:721px){.hero .outline{font-size:300px}}

@media(min-width:721px){.hero .outline{top:42px}}

@media(min-width:721px){.intro p{max-width:none}.intro .english{white-space:nowrap}}
@media(max-width:720px){.intro .english{white-space:normal}}

.hero .outline{z-index:2;cursor:pointer;pointer-events:auto;user-select:none}.hero .outline span{display:inline-block;will-change:transform,opacity}.hero .outline:focus-visible{outline:2px solid #d3684a;outline-offset:8px}.hero .outline.burst span:first-child{animation:name-left 1.65s cubic-bezier(.2,.8,.2,1) both}.hero .outline.burst span:last-child{animation:name-right 1.65s cubic-bezier(.2,.8,.2,1) both}.name-particle{position:fixed;z-index:200;pointer-events:none;width:6px;height:6px;border-radius:50%;background:#d3684a;box-shadow:0 0 0 2px rgba(211,104,74,.16),0 0 13px #e5a56d}.name-particle:nth-child(3n){width:4px;height:4px;background:#cbd778}.name-particle:nth-child(4n){width:8px;height:2px;border-radius:0;background:#8abcc9}@keyframes name-left{0%{transform:translate(0,0) rotate(0);opacity:1}18%{transform:translate(-68px,-46px) rotate(-16deg);opacity:.3}76%{transform:translate(-68px,-46px) rotate(-16deg);opacity:.3}100%{transform:translate(0,0) rotate(0);opacity:1}}@keyframes name-right{0%{transform:translate(0,0) rotate(0);opacity:1}18%{transform:translate(78px,52px) rotate(18deg);opacity:.3}76%{transform:translate(78px,52px) rotate(18deg);opacity:.3}100%{transform:translate(0,0) rotate(0);opacity:1}}@media(prefers-reduced-motion:reduce){.hero .outline.burst span{animation:none}.name-particle{display:none}}
.hero .outline.burst span{animation:none!important;opacity:0}.name-fragment{position:fixed;z-index:200;pointer-events:none;display:block;transform-origin:center;box-shadow:0 0 7px rgba(88,103,96,.25)}@media(prefers-reduced-motion:reduce){.hero .outline.burst span{opacity:1}.name-fragment{display:none}}
.hero .outline{cursor:default;pointer-events:none}

.mini em{display:none}.annual .label-row:after{display:none}

.growth .label-row:after{display:none}

.section .label-row .eyebrow{font-weight:700}

/* Profile-card enhancement */
.profile{position:relative;overflow:hidden;box-shadow:12px 14px 0 rgba(210,225,207,.52),0 16px 26px rgba(91,109,99,.13);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease;animation:profile-enter .7s cubic-bezier(.2,.8,.2,1) both}.profile:before{content:'';position:absolute;width:150px;height:150px;border:1px solid rgba(129,153,143,.38);border-radius:50%;right:-68px;bottom:-68px;box-shadow:0 0 0 17px rgba(200,216,153,.15);pointer-events:none}.profile:after{content:'01';position:absolute;left:15px;bottom:10px;color:#bdd271;font:700 38px/.8 'IBM Plex Mono';letter-spacing:-.12em;opacity:.72}.profile-top{position:relative;z-index:1;font-weight:700;letter-spacing:.07em}.profile-data{font-size:16px;font-weight:600}.profile-data div{padding:10px 9px;position:relative;z-index:1}.profile-data span{font-size:10px;font-weight:500;letter-spacing:.1em}.avatar{position:relative;z-index:1;box-shadow:0 0 0 7px rgba(240,244,234,.82);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease}.profile:hover{transform:translateY(-6px) rotate(-.35deg);box-shadow:17px 20px 0 rgba(210,225,207,.6),0 20px 30px rgba(91,109,99,.17)}.profile:hover .avatar{transform:rotate(7deg) scale(1.04);box-shadow:0 0 0 9px rgba(240,244,234,.92)}@keyframes profile-enter{from{opacity:0;transform:translateY(20px) rotate(-1deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@media(prefers-reduced-motion:reduce){.profile{animation:none;transition:none}.avatar{transition:none}}
/* Growth route scroll-reveal */
.growth .route-item{opacity:0;transition:opacity .65s ease,transform .7s cubic-bezier(.2,.8,.2,1)}.growth .left .route-item{transform:translateX(-36px)}.growth .right .route-item{transform:translateX(36px)}.growth .route-item.in-view{opacity:1;transform:translateX(0)}.growth .route-photos i{opacity:0;transform:scale(.92);transition:opacity .45s ease,transform .55s cubic-bezier(.2,.8,.2,1)}.growth .route-item.in-view .route-photos i{opacity:1;transform:scale(1)}.growth .route-item.in-view .route-photos i:nth-child(2){transition-delay:.09s}.growth .route-item.in-view .route-photos i:nth-child(3){transition-delay:.18s}.growth .route-item.in-view .route-photos i:nth-child(4){transition-delay:.27s}.growth .timeline:before{transform:scaleY(0);transform-origin:top;transition:transform 1.25s cubic-bezier(.2,.8,.2,1)}.growth .timeline span{transform:scale(0);transition:transform .35s cubic-bezier(.2,.8,.2,1),background-color .35s ease}.growth .timeline.in-view:before{transform:scaleY(1)}.growth .timeline.in-view span{transform:scale(1);background:#f8f6f3}.growth .timeline.in-view span:nth-child(1){transition-delay:.18s}.growth .timeline.in-view span:nth-child(2){transition-delay:.34s}.growth .timeline.in-view span:nth-child(3){transition-delay:.5s}.growth .timeline.in-view span:nth-child(4){transition-delay:.66s}.growth .timeline.in-view span:nth-child(5){transition-delay:.82s}.growth .timeline.in-view span:nth-child(6){transition-delay:.98s}@media(prefers-reduced-motion:reduce){.growth .route-item,.growth .route-photos i,.growth .timeline:before,.growth .timeline span{opacity:1;transform:none;transition:none}}
/* Life-photo archive */
.photo-head{min-height:475px;padding:108px 0 76px;position:relative;border-bottom:1px solid var(--line);overflow:hidden}.photo-head:before{content:'';position:absolute;width:310px;height:310px;border:1px solid #c9d77f;border-radius:50%;right:105px;top:70px;box-shadow:0 0 0 30px rgba(210,225,190,.12),0 0 0 62px rgba(176,220,230,.09)}.photo-head:after{content:'✦  ·  ✦';position:absolute;right:199px;top:210px;color:#d3684a;font:18px 'IBM Plex Mono';letter-spacing:.5em}.photo-head h1{font-size:clamp(60px,6.8vw,96px);line-height:1.05;letter-spacing:-.09em;margin:20px 0 0;position:relative;z-index:1}.photo-head-note{position:absolute;right:100px;bottom:70px;display:flex;gap:20px;align-items:center;color:var(--muted);line-height:1.9}.photo-head-note p{margin:0;font-size:15px}.stamp{width:47px;height:47px;border:1px solid #8e9d96;border-radius:50%;display:grid;place-items:center;font-size:26px;color:#cf6e55}.photo-gallery-section{padding:31px 0 90px;border-bottom:1px solid var(--line)}.photo-gallery-section .label-row{margin-bottom:31px}.photo-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.photo-card{margin:0;grid-column:span 4}.photo-card.tall{grid-column:span 4}.photo-card.wide{grid-column:span 8}.photo-slot{height:290px;border:1px solid #d4d9d6;background:linear-gradient(135deg,#eef1ed,#faf9f5);display:grid;place-items:center;position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1),background .4s ease}.photo-slot:before,.photo-slot:after{content:'';position:absolute;border:1px solid rgba(138,160,151,.23);border-radius:50%}.photo-slot:before{width:180px;height:180px;right:-52px;top:-50px}.photo-slot:after{width:66px;height:66px;left:18px;bottom:18px}.photo-slot span{font:11px 'IBM Plex Mono';letter-spacing:.12em;color:#82908a;z-index:1}.photo-card.tall .photo-slot{height:430px}.photo-card.wide .photo-slot{height:280px}.photo-card:nth-child(2) .photo-slot{background:linear-gradient(135deg,#f0eee4,#e4eeeb)}.photo-card:nth-child(3) .photo-slot{background:linear-gradient(135deg,#eff2ee,#f8f6f1)}.photo-card:nth-child(4) .photo-slot{background:linear-gradient(135deg,#f2ebe1,#e9f0e8)}.photo-card:nth-child(5) .photo-slot{background:linear-gradient(135deg,#e7eff0,#f8f5ef)}.photo-card:nth-child(6) .photo-slot{background:linear-gradient(135deg,#f3eee5,#edf2e9)}.photo-card figcaption{display:flex;justify-content:space-between;gap:14px;padding-top:11px;border-bottom:1px solid #c9cfcb;padding-bottom:10px}.photo-card figcaption b{font-size:15px;letter-spacing:-.035em}.photo-card figcaption small{font:10px 'IBM Plex Mono';color:var(--muted);padding-top:4px;white-space:nowrap}.photo-card:hover .photo-slot{transform:translateY(-7px);background:#e1ebe4}.photo-closing{padding:100px 0;display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--line);position:relative}.photo-closing p{font-size:38px;line-height:1.32;letter-spacing:-.07em;font-weight:700;margin:0}.photo-closing .mono{color:var(--muted)}@media(max-width:720px){.photo-head{min-height:410px;padding:80px 0 55px}.photo-head:before{width:180px;height:180px;right:-30px;top:90px}.photo-head:after{right:31px;top:168px;font-size:11px}.photo-head h1{font-size:58px}.photo-head-note{left:0;right:auto;bottom:34px}.photo-head-note p{font-size:13px}.photo-grid{grid-template-columns:1fr 1fr;gap:22px 12px}.photo-card,.photo-card.tall,.photo-card.wide{grid-column:span 1}.photo-card:nth-child(2),.photo-card:nth-child(5){grid-column:span 2}.photo-slot,.photo-card.tall .photo-slot,.photo-card.wide .photo-slot{height:210px}.photo-card:nth-child(2) .photo-slot,.photo-card:nth-child(5) .photo-slot{height:220px}.photo-card figcaption{display:block}.photo-card figcaption small{display:block;margin-top:4px}.photo-closing{padding:65px 0;display:block}.photo-closing p{font-size:31px;margin:18px 0 26px}}
/* Photo archive motion */
.photo-head:before{animation:archive-orbit 24s linear infinite}.photo-head:after{animation:archive-spark 3.6s ease-in-out infinite}.photo-head-note{animation:archive-note 5s ease-in-out infinite}.photo-head-note .stamp{animation:archive-stamp 4.2s ease-in-out infinite}.photo-head .eyebrow{display:inline-block;animation:enter-up .65s cubic-bezier(.2,.8,.2,1) both}.photo-head h1{animation:enter-up .8s .1s cubic-bezier(.2,.8,.2,1) both}.photo-gallery-section{animation:enter-up .85s .16s cubic-bezier(.2,.8,.2,1) both}@keyframes archive-orbit{to{transform:rotate(360deg)}}@keyframes archive-spark{0%,100%{transform:scale(1);opacity:.65}50%{transform:scale(1.35);opacity:1}}@keyframes archive-note{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes archive-stamp{0%,100%{transform:rotate(0)}50%{transform:rotate(12deg)}}@media(prefers-reduced-motion:reduce){.photo-head:before,.photo-head:after,.photo-head-note,.photo-head-note .stamp,.photo-head .eyebrow,.photo-head h1,.photo-gallery-section{animation:none}}
/* Profile photo placeholder: preserve all other card styling */
.profile:after{display:none}.profile .avatar{width:142px;height:170px;margin:26px 0 0 14px;border-radius:0;background:linear-gradient(135deg,#f9f8f3,#dfe9e4);border:1px solid #abc6bd;box-shadow:7px 7px 0 #d6e2dc;display:grid;place-items:center}.profile .avatar:before{content:'PHOTO\A PLACEHOLDER';white-space:pre;text-align:center;color:#7f938b;font:10px/1.7 'IBM Plex Mono';letter-spacing:.12em}.profile:hover .avatar{box-shadow:9px 10px 0 #d6e2dc}
.about-title{font-family:'Noto Sans SC',sans-serif!important;font-weight:900!important;letter-spacing:-.12em!important;line-height:1.08!important;position:relative;display:inline-block;text-shadow:3px 3px 0 rgba(207,216,150,.42)}.about-title span{display:block;width:max-content}.about-title span:first-child{color:#d3684a;transform:rotate(-1.2deg) skewX(-3deg);margin-left:-5px}.about-title span:last-child{transform:rotate(.45deg) skewX(-2deg);margin-top:8px}.about-title:after{content:'––––';position:absolute;right:6px;bottom:-25px;color:#c9d77f;font:12px 'IBM Plex Mono';letter-spacing:.22em;transform:rotate(-2deg)}@media(max-width:720px){.about-title{font-size:48px!important;letter-spacing:-.1em!important}.about-title span:last-child{margin-top:4px}.about-title:after{bottom:-18px;font-size:9px}}
.profile{height:350px}@media(max-width:720px){.profile{height:350px}}

.profile .avatar{height:205px}.profile-data{position:absolute;top:76px;right:14px;margin-top:0}@media(max-width:720px){.profile .avatar{height:190px}.profile-data{top:72px;right:12px;width:52%}}
/* About title: manga-inspired but aligned */
.about-head{position:relative;overflow:hidden;background:radial-gradient(circle at 70% 52%,rgba(232,220,134,.18),transparent 23%),repeating-linear-gradient(-18deg,transparent 0 17px,rgba(207,216,150,.11) 18px 19px,transparent 20px 35px)}.about-title{transform:none!important;text-shadow:2px 2px 0 rgba(207,216,150,.38);animation:anime-title-breathe 3.8s ease-in-out infinite}.about-title span,.about-title span:first-child,.about-title span:last-child{transform:none!important;margin-left:0!important;margin-top:0!important}.about-title span:last-child{margin-top:8px!important}.about-title:after{content:'✦  ✦  ✦';right:-100px;bottom:7px;color:#d3684a;font-size:17px;letter-spacing:.18em;animation:anime-sparkle 2.8s ease-in-out infinite}.about-head:before{content:'咸鱼 MODE';position:absolute;right:66px;top:132px;border:2px solid #d3684a;border-radius:50%;color:#d3684a;padding:13px 9px;font:700 10px/1.2 'IBM Plex Mono';letter-spacing:.04em;transform:rotate(11deg);animation:anime-sticker 4s ease-in-out infinite}.about-head:after{content:'✦';position:absolute;right:195px;top:223px;color:#d3684a;font-size:34px;filter:drop-shadow(0 0 6px rgba(211,104,74,.26));animation:anime-sparkle 2.2s ease-in-out infinite reverse}@keyframes anime-title-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.012)}}@keyframes anime-sparkle{0%,100%{opacity:.55;transform:scale(.78) rotate(0)}50%{opacity:1;transform:scale(1.24) rotate(24deg)}}@keyframes anime-sticker{0%,100%{transform:rotate(11deg) translateY(0)}50%{transform:rotate(7deg) translateY(-7px)}}@media(max-width:720px){.about-head:before{right:15px;top:80px;font-size:8px;padding:9px 6px}.about-head:after{right:55px;top:150px;font-size:23px}.about-title:after{right:0;bottom:-12px;font-size:11px}}@media(prefers-reduced-motion:reduce){.about-title,.about-title:after,.about-head:before,.about-head:after{animation:none}}
@keyframes anime-title-breathe{0%,100%{filter:brightness(1)}50%{filter:brightness(1.08)}}

.about-head:before{left:62px;right:auto;top:128px}@media(max-width:720px){.about-head:before{left:18px;right:auto;top:72px}}

.about-head>.eyebrow{position:absolute;left:130px;top:142px;z-index:2}@media(max-width:720px){.about-head>.eyebrow{left:20px;top:80px}}

.about-head:before{display:none}

@media(min-width:721px){.annual-books i{height:280px}}

/* Annual tab switch motion */
.annual-tabs button{transition:transform .22s cubic-bezier(.2,.8,.2,1),background-color .22s ease,color .22s ease}.annual-tabs button:active{transform:scale(.91)}.annual-tabs button.active{animation:tab-pop .38s cubic-bezier(.2,.8,.2,1)}.annual-books.tab-switching article{animation:annual-card-in .48s cubic-bezier(.2,.8,.2,1) both}.annual-books.tab-switching article:nth-child(2){animation-delay:.05s}.annual-books.tab-switching article:nth-child(3){animation-delay:.1s}.annual-books.tab-switching article:nth-child(4){animation-delay:.15s}.annual-books.tab-switching article:nth-child(5){animation-delay:.2s}@keyframes tab-pop{0%{transform:scale(.94)}65%{transform:scale(1.07)}100%{transform:scale(1)}}@keyframes annual-card-in{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.annual-tabs button,.annual-tabs button.active,.annual-books.tab-switching article{animation:none;transition:none}}
.about-head{background:none}.about-head:after,.about-title:after{display:none}

.profile{background:radial-gradient(circle at 86% 12%,rgba(170,218,233,.42),transparent 34%),radial-gradient(circle at 8% 92%,rgba(207,224,139,.38),transparent 45%),linear-gradient(135deg,#fcfbf3 14%,#e5eee0 100%)}

/* Managed photo assets: images appear only after successful loading */
.photo-slot,.profile .avatar{position:relative;overflow:hidden}.photo-slot img,.profile .avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s ease}.photo-slot.has-photo img,.profile .avatar.has-photo img{opacity:1}.photo-slot.has-photo>span,.profile .avatar.has-photo:before{opacity:0}.photo-slot.has-photo:before,.photo-slot.has-photo:after{opacity:0}
.mini-thumb{overflow:hidden}.mini-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.mini:hover .mini-thumb img{transform:scale(1.07)}

.annual-books i{position:relative;overflow:hidden}.annual-books i img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1)}.annual-books i.has-photo img{opacity:1}.annual-books article:hover i.has-photo img{transform:scale(1.045)}
/* Independent annual recommendation collections */
.annual-panel{display:none}.annual-panel.active{display:block;animation:annual-panel-in .48s cubic-bezier(.2,.8,.2,1) both}.annual-panel .annual-books i{height:315px;background:#f6f5f1;box-shadow:none}.annual-panel .annual-books i img{object-fit:contain;padding:7px;background:#f5f3ee}.annual-panel .annual-books article:hover i.has-photo img{transform:scale(1.02)}.annual-panel .annual-games i{aspect-ratio:16/9;height:auto}.annual-panel .annual-podcasts i{aspect-ratio:1/1;height:auto}.annual-panel .annual-games i:after,.annual-panel .annual-podcasts i:after,.annual-panel .annual-posters i:after{content:'待添加封面';color:#96a19c;font:10px 'IBM Plex Mono';letter-spacing:.1em;position:absolute;inset:0;display:grid;place-items:center}.annual-panel .annual-books i.has-photo:after{display:none}@keyframes annual-panel-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(max-width:720px){.annual-panel .annual-books i{height:225px}.annual-panel .annual-games i,.annual-panel .annual-podcasts i{height:auto}}
.growth .route-photos i{overflow:hidden}.growth .route-photos i img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.growth .route-photos i:hover img{transform:scale(1.06)}
.school-route{overflow:visible}.school-route>*:not(.school-logo){position:relative;z-index:1}.school-logo{position:absolute;z-index:0;left:-5%;top:-12%;width:54%;height:98%;object-fit:contain;object-position:left top;filter:brightness(0) saturate(100%) invert(84%) sepia(24%) saturate(660%) hue-rotate(316deg) brightness(94%) contrast(82%);opacity:.22;pointer-events:none}@media(max-width:720px){.school-logo{left:-7%;top:-8%;width:60%;height:90%;opacity:.18}}
.tianjin-school-route{overflow:visible}.tianjin-school-route>*:not(.tianjin-school-logo){position:relative;z-index:1}.tianjin-school-logo{position:absolute;z-index:0;right:-5%;top:-12%;width:26%;height:92%;object-fit:contain;object-position:right top;opacity:.16;filter:saturate(.75);pointer-events:none}@media(max-width:720px){.tianjin-school-logo{right:-7%;top:-8%;width:32%;height:88%;opacity:.13}}
.citic-route{overflow:visible}.citic-route>*:not(.citic-logo){position:relative;z-index:1}.citic-logo{position:absolute;z-index:0;left:-5%;top:-12%;width:49%;height:96%;object-fit:contain;object-position:left top;opacity:.13;filter:grayscale(1) sepia(.35) saturate(.65);pointer-events:none}@media(max-width:720px){.citic-logo{left:-7%;top:-8%;width:56%;height:90%;opacity:.11}}
.bookuu-route{overflow:visible}.bookuu-route>*:not(.bookuu-logo){position:relative;z-index:1}.bookuu-logo{position:absolute;z-index:0;right:-8%;top:-14%;width:44%;height:100%;object-fit:contain;object-position:right top;opacity:.12;filter:grayscale(.8) saturate(.6);pointer-events:none}@media(max-width:720px){.bookuu-logo{right:-10%;top:-10%;width:52%;height:92%;opacity:.1}}
.ronshin-route{overflow:visible}.ronshin-route>*:not(.ronshin-logo){position:relative;z-index:1}.ronshin-logo{position:absolute;z-index:0;left:-8%;top:-14%;width:47%;height:100%;object-fit:contain;object-position:left top;opacity:.13;filter:saturate(.55) brightness(1.08);pointer-events:none}@media(max-width:720px){.ronshin-logo{left:-10%;top:-10%;width:55%;height:92%;opacity:.11}}
.photo-card.portrait-34{grid-column:span 4}.photo-card.portrait-34 .photo-slot{height:auto;aspect-ratio:3/4}@media(max-width:720px){.photo-card.portrait-34{grid-column:span 1}.photo-card.portrait-34 .photo-slot{height:auto;aspect-ratio:3/4}}
.photo-back-top{margin:42px 0 76px;margin-left:auto;width:96px;height:96px;border:1px solid #9ba29f;border-radius:50%;background:transparent;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;transition:transform .3s ease,background .3s ease,color .3s ease}.photo-back-top span{font:20px/1 'IBM Plex Mono';transition:transform .3s ease}.photo-back-top em{font:10px 'IBM Plex Mono';font-style:normal}.photo-back-top:hover{transform:translateY(-6px);background:var(--ink);color:var(--bg)}.photo-back-top:hover span{transform:translateY(-3px)}.photo-back-top:focus-visible{outline:2px solid #b8cf6c;outline-offset:4px}@media(max-width:720px){.photo-back-top{width:82px;height:82px;margin:34px 0 48px auto}}

/* Archive card: contact details and a more prominent portrait. */
.profile{position:relative;height:370px}
.profile .avatar{position:absolute;left:28px;top:50%;width:154px;height:226px;margin:0;transform:translateY(-43%)}
.profile .avatar img{width:100%;height:100%;object-fit:cover;object-position:center}
.profile-data{top:68px;right:14px;width:230px;padding-bottom:42px}
.profile-contact{position:absolute;right:14px;bottom:12px;width:230px;padding-top:8px;border-top:1px solid #d9ded4;text-align:center;color:var(--ink);font-size:13px;font-weight:700;line-height:1.15;letter-spacing:.01em}
.profile-contact span{display:block;margin-bottom:4px;color:#89918d;font:9px 'IBM Plex Mono';letter-spacing:.11em}
.profile-contact a{color:inherit;transition:color .2s ease}
.profile-contact a:hover{color:#34413d}
.profile-data div{padding:6px 9px}
.profile-data span{margin-bottom:2px}
.profile-contact{padding-top:6px}
.profile-contact span{margin-bottom:2px}
.profile .avatar{transition:transform .42s cubic-bezier(.2,.8,.2,1),box-shadow .42s cubic-bezier(.2,.8,.2,1);will-change:transform}
.profile:hover .avatar{transform:translateY(-49%) scale(1.08);box-shadow:12px 15px 0 #d6e2dc}
@media(max-width:720px){.profile{height:370px}.profile .avatar{left:16px;top:53%;width:42%;height:230px}.profile:hover .avatar{transform:translateY(-58%) scale(1.05)}.profile-data{top:70px;right:12px;width:52%;padding-bottom:43px}.profile-contact{right:12px;bottom:13px;width:52%;font-size:11px}}

/* Compact archive-card layout after removing the contact row. */
.profile{height:300px}
.profile .avatar{top:52%;height:190px;transform:translateY(-45%)}
.profile-data{top:55px}
.profile:hover .avatar{transform:translateY(-52%) scale(1.08)}
@media(max-width:720px){.profile{height:315px}.profile .avatar{top:52%;height:195px}.profile-data{top:57px}.profile:hover .avatar{transform:translateY(-54%) scale(1.05)}}

/* Mobile reading layout: keep the oversized editorial type expressive without
   allowing it to escape a phone viewport. */
@media (max-width:720px){
  html,body{max-width:100%;overflow-x:hidden}
  .wrap{width:100%;max-width:100%;padding-left:16px;padding-right:16px}
  .header{min-height:58px;padding:11px 0;gap:8px}
  .logo{font-size:9px;line-height:1.1;white-space:nowrap}
  .nav{gap:9px;white-space:nowrap}
  .nav a{font-size:12px}
  .hero{min-height:0;padding:28px 0 38px;overflow:visible}
  .hero-title{margin:22px 0 0!important;padding:0!important;max-width:100%;white-space:normal!important}
  .hero h1{display:block;max-width:100%;font-size:clamp(30px,9.5vw,44px)!important;line-height:1.24!important;letter-spacing:.015em!important;white-space:normal!important;overflow-wrap:anywhere;text-wrap:balance}
  .hero-copy{position:static!important;max-width:285px;margin:18px 0 0 auto;font-size:13px;line-height:1.75}
  .outline{max-width:100%;overflow:hidden;font-size:clamp(86px,30vw,138px)}
  .intro{grid-template-columns:1fr!important;gap:16px}
  .intro>div:first-child{min-height:155px}
  .intro>div:last-child{padding:22px 18px!important}
  .intro>div:last-child::after{content:none!important;display:none!important}
  .intro h2{font-size:24px;line-height:1.35}
  .english{white-space:normal!important}
  .page-head.about-head{min-height:0!important;padding:88px 0 42px!important}
  .about-title{max-width:100%;font-size:clamp(34px,10.2vw,52px)!important;line-height:1.12!important;letter-spacing:-.045em!important;white-space:normal!important;overflow-wrap:anywhere;text-wrap:balance}
  .about-title span{display:block;max-width:100%}
  .growth-grid{display:flex!important;flex-direction:column!important;gap:16px!important}
  .growth-side{display:contents!important}
  .growth-side.left .route-item:nth-child(1){order:1}
  .growth-side.right .route-item:nth-child(1){order:2}
  .growth-side.left .route-item:nth-child(2){order:3}
  .growth-side.right .route-item:nth-child(2){order:4}
  .growth-side.left .route-item:nth-child(3){order:5}
  .growth-side.right .route-item:nth-child(3){order:6}
  .growth-side .route-item{width:100%!important}
  .growth-grid::before,.growth-grid::after{display:none!important}
}

/* Compact mobile home and article reading flow. */
@media (max-width:720px){
  .hero{padding:12px 0 22px!important}
  .hero .outline{margin-top:7px!important;font-size:clamp(68px,24vw,100px)!important;line-height:.76!important}
  .hero .hero-title{margin-top:10px!important}
  .hero .hero-title h1{font-size:clamp(29px,8.6vw,40px)!important;line-height:1.15!important}
  .hero .hero-copy{margin-top:10px!important;padding:8px 0 0 10px!important;font-size:13px!important;line-height:1.6!important}

  body:has(.article-list) .page-head{min-height:0!important;padding:76px 0 26px!important}
  body:has(.article-list) .page-head h1{margin:12px 0 10px!important;font-size:clamp(38px,11vw,50px)!important;line-height:1.08!important;letter-spacing:-.04em!important}
  body:has(.article-list) .page-head p{max-width:30ch;margin:0!important;font-size:14px!important;line-height:1.7!important}
  body:has(.article-list) .page-head + .section{padding-top:24px!important}
  body:has(.article-list) .label-row{align-items:center;margin-bottom:10px!important}
  body:has(.article-list) .article-list{display:grid!important;gap:10px!important}
  body:has(.article-list) .article-row{display:grid!important;grid-template-columns:auto 1fr!important;grid-template-areas:"date tag" "body body"!important;gap:7px 10px!important;min-height:0!important;padding:16px 14px!important;border:1px solid rgba(38,54,50,.13)!important;border-left:3px solid #d8de79!important;background:rgba(255,255,255,.48)!important}
  body:has(.article-list) .article-row > .mono:first-child{grid-area:date;align-self:center;font-size:10px!important}
  body:has(.article-list) .article-row > div{grid-area:body;min-width:0!important}
  body:has(.article-list) .article-row > div h2{margin:0!important;font-size:20px!important;line-height:1.3!important}
  body:has(.article-list) .article-row > div p{margin:6px 0 0!important;font-size:14px!important;line-height:1.65!important}
  body:has(.article-list) .article-row > .mono:last-child{grid-area:tag;justify-self:end;align-self:center;font-size:11px!important}
  body:has(.article-list) .article-row.linked:active{transform:scale(.985)}
}

/* Mobile home hero: keep the editorial layers readable rather than stacked. */
@media (max-width:720px){
  .hero{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    min-height:0!important;
    padding:20px 0 34px!important;
    overflow:hidden!important;
    isolation:isolate;
  }
  .hero::before,
  .hero::after{display:none!important}
  .hero>.eyebrow{
    position:relative!important;
    inset:auto!important;
    order:0;
    align-self:flex-start;
    margin:0!important;
  }
  .hero .outline{
    position:relative!important;
    inset:auto!important;
    order:1;
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:12px 0 0!important;
    padding:0!important;
    overflow:visible!important;
    font-size:clamp(78px,27vw,116px)!important;
    line-height:.8!important;
    letter-spacing:0!important;
    opacity:.62;
    transform:none!important;
    white-space:nowrap!important;
    z-index:0!important;
  }
  .hero .hero-title{
    position:relative!important;
    inset:auto!important;
    order:2;
    width:100%!important;
    max-width:100%!important;
    margin:18px 0 0!important;
    padding:0!important;
    transform:none!important;
    z-index:1!important;
  }
  .hero .hero-title h1{
    margin:0!important;
    font-size:clamp(32px,9.4vw,44px)!important;
    line-height:1.18!important;
    letter-spacing:.02em!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-wrap:balance;
  }
  .hero .hero-copy{
    position:relative!important;
    inset:auto!important;
    order:3;
    width:auto!important;
    max-width:100%!important;
    margin:18px 0 0!important;
    padding:12px 0 0 14px!important;
    border-left:2px solid #d8de79;
    font-size:14px!important;
    line-height:1.7!important;
    transform:none!important;
    z-index:1!important;
  }
  .hero .hero-copy br{display:none}
}

/* Mobile layout refinements: compact home and readable article cards. */
@media (max-width:720px){
  .hero{padding:12px 0 22px!important}
  .hero .outline{margin-top:7px!important;font-size:clamp(68px,24vw,100px)!important;line-height:.76!important}
  .hero .hero-title{margin-top:10px!important}
  .hero .hero-title h1{font-size:clamp(29px,8.6vw,40px)!important;line-height:1.15!important}
  .hero .hero-copy{margin-top:10px!important;padding:8px 0 0 10px!important;font-size:13px!important;line-height:1.6!important}

  body:has(.article-list) .page-head{min-height:0!important;padding:76px 0 26px!important}
  body:has(.article-list) .page-head h1{margin:12px 0 10px!important;font-size:clamp(38px,11vw,50px)!important;line-height:1.08!important;letter-spacing:-.04em!important}
  body:has(.article-list) .page-head p{max-width:30ch;margin:0!important;font-size:14px!important;line-height:1.7!important}
  body:has(.article-list) .page-head + .section{padding-top:24px!important}
  body:has(.article-list) .article-list{display:grid!important;gap:10px!important}
  body:has(.article-list) .article-row{display:grid!important;grid-template-columns:auto 1fr!important;grid-template-areas:"date tag" "body body"!important;gap:7px 10px!important;min-height:0!important;padding:16px 14px!important;border:1px solid rgba(38,54,50,.13)!important;border-left:3px solid #d8de79!important;background:rgba(255,255,255,.48)!important}
  body:has(.article-list) .article-row > .mono:first-child{grid-area:date;align-self:center;font-size:10px!important}
  body:has(.article-list) .article-row > div{grid-area:body;min-width:0!important}
  body:has(.article-list) .article-row > div h2{margin:0!important;font-size:20px!important;line-height:1.3!important}
  body:has(.article-list) .article-row > div p{margin:6px 0 0!important;font-size:14px!important;line-height:1.65!important}
  body:has(.article-list) .article-row > .mono:last-child{grid-area:tag;justify-self:end;align-self:center;font-size:11px!important}
  body:has(.article-list) .article-row.linked:active{transform:scale(.985)}
}
