:root { --ink:#1b2923; --muted:#66736d; --linen:#fbfaf7; --leaf:#c8eb59; --mint:#c4efdb; --rose:#ffd1ca; --sky:#c7e5f5; --line:rgba(27,41,35,.13); --serif:"Fraunces", Georgia, serif; --sans:"DM Sans", Arial, sans-serif; --mono:"DM Mono", monospace; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--ink); background:var(--linen); font-family:var(--sans); } a { color:inherit; } button,input { font:inherit; } button { cursor:pointer; }
.container { width:min(1180px, calc(100% - 64px)); margin-inline:auto; }.hero-section { background:linear-gradient(180deg,#fbfaf7 0%,#f7f6ee 100%); overflow:hidden; }.site-header { height:94px; display:flex; align-items:center; justify-content:space-between; }.wordmark { display:inline-flex; align-items:center; gap:9px; font-weight:700; font-size:22px; letter-spacing:-1.25px; text-decoration:none; }.wordmark-mark { position:relative; display:inline-flex; align-items:flex-end; gap:2px; width:20px; height:20px; transform:rotate(-8deg); }.wordmark-mark i { display:block; width:5px; background:var(--ink); border-radius:8px; }.wordmark-mark i:nth-child(1){height:11px}.wordmark-mark i:nth-child(2){height:17px}.wordmark-mark i:nth-child(3){height:8px}.primary-nav { display:flex; gap:32px; margin-left:120px; }.primary-nav a,.header-login,.footer-links a { text-decoration:none; font-size:14px; font-weight:500; }.primary-nav a:hover,.footer-links a:hover { text-decoration:underline; text-underline-offset:4px; }.header-login { border:1px solid var(--ink); border-radius:999px; padding:11px 16px; }.header-login span { margin-left:8px; }.hero { min-height:580px; display:grid; grid-template-columns:1.04fr .96fr; align-items:center; gap:32px; padding:56px 0 70px; }.eyebrow { font-family:var(--mono); font-size:11px; letter-spacing:.9px; line-height:1.3; font-weight:500; margin:0 0 20px; }.eyebrow-dot { display:inline-block; width:8px; height:8px; border-radius:50%; background:#ff8067; margin-right:8px; }.hero h1,.section-heading h2,.preview-copy h2,.employer-card h2,.login-form-wrap h2 { letter-spacing:-.055em; line-height:.97; margin:0; }.hero h1 { font-size:clamp(52px,6vw,80px); max-width:680px; }.hero h1 em,.aside-message h1 em { font-family:var(--serif); font-weight:500; }.hero-description { max-width:500px; font-size:18px; line-height:1.55; color:var(--muted); margin:25px 0 30px; }.hero-actions { display:flex; align-items:center; gap:23px; }.button { display:inline-flex; align-items:center; justify-content:center; gap:16px; text-decoration:none; border:none; border-radius:999px; padding:15px 20px; font-size:14px; font-weight:600; }.button-dark { color:white; background:var(--ink); }.button-dark:hover { background:#31453b; }.text-button { border:0; background:none; color:var(--ink); font-size:14px; padding:8px 0; border-bottom:1px solid var(--ink); }.text-button span { padding-left:7px; }.member-proof { display:flex; align-items:center; gap:11px; color:var(--muted); font-size:12px; margin-top:44px; }.proof-avatars { display:flex; }.proof-avatars b { width:25px; height:25px; border-radius:50%; color:white; display:grid; place-items:center; font-size:9px; margin-right:-7px; border:2px solid #f7f6ee; }.proof-avatars b:nth-child(1){background:#d98475}.proof-avatars b:nth-child(2){background:#547b6e}.proof-avatars b:nth-child(3){background:#c6a947}
.hero-art { height:440px; position:relative; overflow:hidden; border-radius:260px 260px 24px 24px; background:#e2f4d8; isolation:isolate; }.sun-disc { position:absolute; height:325px; width:325px; background:#ffe7a7; border-radius:50%; left:50%; top:44px; transform:translateX(-50%); }.orbit { position:absolute; border-radius:50%; border:1px solid rgba(27,41,35,.15); }.orbit-one { width:370px; height:370px; left:50%; top:24px; transform:translateX(-50%); }.orbit-two { width:480px; height:200px; left:24px; top:178px; transform:rotate(-16deg); }.person { position:absolute; left:50%; bottom:39px; width:156px; height:294px; transform:translateX(-50%); }.person-head { width:67px; height:75px; border-radius:45% 45% 47% 45%; position:absolute; background:#9d613e; left:44px; top:0; z-index:3; }.person-hair { width:85px; height:59px; background:#263b31; position:absolute; left:36px; top:-9px; z-index:4; border-radius:60% 45% 50% 45%; }.person-body { height:151px; width:122px; background:#ff8268; border-radius:56px 56px 13px 13px; position:absolute; top:67px; left:17px; z-index:2; }.person-arm { width:37px; height:145px; position:absolute; background:#9d613e; z-index:1; border-radius:22px; top:83px; }.arm-left { left:3px; transform:rotate(24deg); }.arm-right { right:3px; transform:rotate(-24deg); }.person-leg { height:98px; width:48px; position:absolute; background:#546f61; bottom:0; border-radius:15px 15px 3px 3px; }.leg-left{left:27px}.leg-right{right:25px}.art-baseline { width:346px; height:18px; border-radius:50%; background:rgba(46,93,65,.17); position:absolute; bottom:28px; left:50%; transform:translateX(-50%); }.plant { position:absolute; bottom:37px; right:54px; height:103px; width:70px; z-index:3; }.plant i { position:absolute; width:34px; height:48px; background:#295e4d; bottom:0; left:19px; clip-path:polygon(15% 0,85% 0,100% 100%,0 100%); }.plant span { position:absolute; width:42px; height:62px; background:#54a47c; border-radius:100% 0 100% 0; bottom:35px; }.plant span:nth-child(1){left:4px;transform:rotate(-48deg)}.plant span:nth-child(2){right:0;transform:rotate(50deg)}.plant span:nth-child(3){left:25px;bottom:56px;transform:rotate(3deg);background:#82bd63}.art-label { position:absolute; z-index:5; display:flex; align-items:center; gap:7px; background:#fffdfa; border:1px solid rgba(27,41,35,.08); box-shadow:0 8px 20px rgba(41,67,53,.1); border-radius:13px; padding:10px 12px; font-size:11px; font-weight:600; }.art-label span { width:19px; height:19px; border-radius:50%; display:grid; place-items:center; background:var(--leaf); font-size:11px; }.label-visit { left:28px; top:140px; }.label-heart { right:18px; top:93px; }.label-heart span { background:var(--rose); color:#a5483d; }.ticker { min-width:max-content; height:55px; background:var(--ink); color:#f7f6ee; display:flex; justify-content:center; align-items:center; gap:30px; padding:0 28px; font:12px var(--mono); letter-spacing:.5px; }.ticker i { width:6px; height:6px; border-radius:50%; background:var(--leaf); }
.path-section { padding:136px 0; }.section-heading { margin-bottom:47px; }.section-heading h2 { font-size:clamp(38px,4.7vw,60px); max-width:540px; }.section-heading > p:last-child { color:var(--muted); line-height:1.55; font-size:16px; max-width:470px; margin:24px 0 0; }.path-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.feature-card { min-height:390px; padding:25px; border-radius:20px; position:relative; display:flex; flex-direction:column; align-items:flex-start; }.feature-lime { background:#d8ef78; }.feature-rose { background:#ffc7be; }.feature-blue { background:#c4e6f7; }.card-number { font:11px var(--mono); margin:0; }.feature-card h3 { font-size:27px; letter-spacing:-1px; margin:auto 0 12px; }.feature-card > p:not(.card-number) { color:#405149; line-height:1.48; margin:0; font-size:14px; max-width:280px; }.feature-card a { margin-top:auto; font-weight:600; font-size:13px; text-decoration:none; border-bottom:1px solid var(--ink); padding-bottom:4px; }.feature-card a span { padding-left:7px; }
.member-preview { background:#234237; color:white; padding:112px 0; overflow:hidden; }.preview-layout { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center; }.preview-copy h2 { font-size:clamp(40px,4.4vw,60px); max-width:560px; }.preview-copy { display:flex; align-items:center; justify-content:space-between; gap:40px; }.preview-copy-text { min-width:0; }.preview-copy .button-light { flex:0 0 auto; }.preview-copy-text > p:not(.eyebrow) { max-width:470px; line-height:1.55; color:#d1ded8; margin:27px 0 0; }.button-light { background:#eff6df; color:var(--ink); }.app-window { background:#f8f6ef; color:var(--ink); border-radius:22px; padding:14px; width:100%; max-width:440px; justify-self:end; box-shadow:22px 24px 0 #a9d975; transform:rotate(2deg); }.app-topbar { height:43px; display:flex; align-items:center; gap:9px; border-bottom:1px solid var(--line); font-size:11px; font-weight:600; }.app-topbar button { margin-left:auto; border:0; background:none; font-size:19px; }.mini-logo { width:21px; height:21px; background:var(--ink); color:var(--leaf); border-radius:50%; display:grid; place-items:center; font-weight:700; }.app-content { padding:25px 11px 12px; }.app-kicker { margin:0; font:9px var(--mono); color:#79857e; letter-spacing:.8px; }.app-content h3 { font-size:27px; letter-spacing:-1.3px; margin:9px 0 20px; }.checkin-row { padding:14px; border-radius:13px; background:#d9ed89; display:flex; align-items:center; gap:11px; }.checkin-icon { width:35px; height:35px; border-radius:50%; background:#fcfcf6; display:grid; place-items:center; }.checkin-row div:nth-child(2) { display:grid; gap:3px; }.checkin-row strong { font-size:12px; }.checkin-row small { font-size:10px; color:#536653; }.checkin-row > span { margin-left:auto; }.app-row { margin-top:23px; display:grid; gap:7px; font-size:11px; }.app-row span,.progress-label { color:#6d7b74; }.app-row strong { color:var(--ink); font-size:13px; }.progress-label { display:flex; justify-content:space-between; margin-top:26px; font-size:10px; }.progress-label b { color:var(--ink); }.progress-bar { display:flex; gap:5px; margin-top:8px; }.progress-bar i { width:100%; height:7px; background:#d8dfd7; border-radius:8px; }.progress-bar i:nth-child(-n+3){background:#ff8169}.employer-section { padding:105px 0; }.employer-card { background:#f5b94c; border-radius:20px; padding:47px 52px; display:grid; grid-template-columns:1fr .7fr; gap:80px; }.employer-card h2 { font-size:43px; max-width:460px; }.employer-card > div:last-child { align-self:end; }.employer-card > div:last-child p { font-size:15px; line-height:1.5; margin:0 0 24px; }.employer-card a { font-size:14px; font-weight:600; }.quote-section { text-align:center; padding:50px 0 125px; }.quote-mark { font:82px var(--serif); height:47px; margin:0; color:#ff8067; }.quote-section blockquote { font:500 clamp(30px,4vw,52px)/1.1 var(--serif); letter-spacing:-1.8px; max-width:850px; margin:0 auto 28px; }.quote-credit { display:inline-flex; align-items:center; gap:10px; text-align:left; }.quote-avatar { height:33px;width:33px;border-radius:50%;background:#c9866c;color:#fff;display:grid;place-items:center;font-size:12px; }.quote-credit div { display:grid; gap:2px; }.quote-credit strong { font-size:11px; }.quote-credit small { font-size:10px;color:var(--muted); }.site-footer { border-top:1px solid var(--line); }.footer-inner { min-height:105px; display:flex; align-items:center; gap:26px; }.footer-mark { font-size:20px; }.footer-inner > p { color:var(--muted); font-size:13px; }.footer-links { margin-left:auto; display:flex; gap:20px; }.copyright { font-size:11px;color:var(--muted); }
.login-page { min-height:100vh; display:grid; grid-template-columns:42% 58%; grid-template-rows:1fr auto; background:var(--linen); }.login-page > .site-footer { grid-column:1 / -1; }.login-aside { min-height:0; background:#d7eb78; position:relative; overflow:hidden; padding:34px clamp(32px,5vw,76px); display:flex; flex-direction:column; justify-content:center; }.login-aside:before { content:""; position:absolute; width:530px; height:530px; border:1px solid rgba(27,41,35,.12); border-radius:50%; right:-180px; bottom:-45px; }.login-wordmark { position:absolute; top:34px; left:clamp(32px,5vw,76px); z-index:2; }.aside-message { position:relative; z-index:2; margin:0 0 35px; max-width:420px; }.aside-message h1 { font-size:clamp(47px,5vw,70px); letter-spacing:-.06em; line-height:.96; margin:0; }.aside-message > p:last-child { max-width:320px; font-size:16px; line-height:1.5; margin:23px 0 0; }.aside-illustration { position:absolute; width:360px; height:280px; right:4%; bottom:75px; }.aside-moon { width:246px; height:246px; background:#fff0b7; border-radius:50%; position:absolute; left:47px; top:18px; }.aside-person { width:93px; height:168px; position:absolute; bottom:0; left:132px; background:#ee806b; border-radius:52px 52px 9px 9px; }.aside-person:before { content:""; position:absolute; width:54px; height:59px; border-radius:48% 48% 43% 47%; background:#8a5135; top:-45px; left:20px; box-shadow:5px -11px 0 4px #233e34; }.aside-person:after { content:""; position:absolute; width:149px; height:21px; border-radius:50%; background:rgba(34,80,53,.17); bottom:-9px; left:-27px; }.aside-leaf { position:absolute; width:75px;height:115px;background:#367458;border-radius:100% 0 100% 0; }.leaf-a { left:15px;bottom:20px;transform:rotate(-37deg); }.leaf-b { right:1px;bottom:11px;transform:rotate(38deg);background:#65975d; }.aside-caption { position:relative; z-index:2; margin:0; font:11px var(--mono); }.login-panel { min-height:0; position:relative; display:flex; justify-content:center; align-items:center; padding:65px 32px 80px; }.back-home { position:absolute; top:37px; left:48px; background:none; border:0; font-size:13px; color:#56645d; }.back-home span { font-size:18px; padding-right:7px; vertical-align:-1px; }.login-form-wrap { width:min(405px,100%); }.login-form-wrap .eyebrow { margin-bottom:15px; }.login-form-wrap h2 { font-size:52px; }.login-subtitle { color:var(--muted); margin:13px 0 35px; }.login-form-wrap form { display:grid; }.login-form-wrap label { display:flex; justify-content:space-between; font-size:12px; font-weight:600; margin:0 0 8px; }.login-form-wrap label a { color:#4e6358; font-weight:500; }.login-form-wrap input { width:100%; height:52px; border:1px solid #cbd1cc; border-radius:9px; padding:0 15px; background:#fff; outline-color:#466c5a; margin-bottom:20px; font-size:14px; }.password-field { position:relative; }.password-field input { padding-right:48px; }.password-field button { position:absolute; right:9px; top:9px; width:34px; height:34px; border:0; background:none; color:#78847e; }.form-message { color:#ab463d; font-size:12px; margin:-8px 0 13px; min-height:0; }.form-message:not(:empty) { min-height:18px; }.form-submit { width:100%; margin-top:2px; min-height:53px; }.form-divider { height:1px; background:var(--line); margin:26px 0; position:relative; }.form-divider span { position:absolute; left:50%; transform:translate(-50%,-50%); padding:0 12px; background:var(--linen); color:var(--muted); font-size:11px; }.sso-button { height:51px; width:100%; border:1px solid #cbd1cc; border-radius:9px; background:#fff; font-size:13px; font-weight:600; }.sso-mark { color:#4285f4;font-size:16px; margin-right:8px; }.new-member { font-size:13px;text-align:center;margin-top:27px;color:var(--muted); }.new-member a,.login-help a { color:var(--ink); font-weight:600; }.login-help { position:absolute; bottom:26px; font-size:12px; color:var(--muted); }
@media (max-width:800px){ .container { width:min(100% - 40px, 600px); }.site-header{height:75px}.primary-nav{display:none}.header-login{font-size:12px;padding:9px 12px}.hero{grid-template-columns:1fr;padding:47px 0 56px;gap:44px}.hero h1{font-size:55px}.hero-art{height:380px;max-width:530px;width:100%;margin:auto}.section-heading{display:block}.section-heading > p:last-child{margin-top:18px}.path-section{padding:88px 0}.path-grid{grid-template-columns:1fr}.feature-card{min-height:320px}.preview-layout,.employer-card{grid-template-columns:1fr;gap:36px}.app-window{justify-self:center}.member-preview{padding:78px 0}.employer-section{padding:75px 0}.employer-card{padding:35px 28px}.footer-inner{min-height:142px; flex-wrap:wrap; gap:12px}.footer-links{margin-left:0;width:100%;order:3}.copyright{margin-left:auto}.login-page{grid-template-columns:1fr;grid-template-rows:auto}.login-aside{min-height:320px;padding:29px 28px}.login-wordmark{top:29px;left:28px}.aside-message{margin:0}.aside-message h1{font-size:45px;max-width:380px}.aside-message>p:last-child,.aside-illustration,.aside-caption{display:none}.login-panel{min-height:640px;padding:88px 27px 78px}.back-home{left:24px;top:25px}.login-form-wrap h2{font-size:46px} }
@media (max-width:450px){.hero h1{font-size:48px}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.hero-art{height:340px}.label-visit{left:14px}.label-heart{right:8px;top:73px}.art-baseline{width:290px}.app-window{box-shadow:12px 14px 0 #a9d975}.employer-card h2{font-size:37px}.footer-inner>p{width:100%}.copyright{margin-left:0}.ticker{justify-content:flex-start}.login-aside{min-height:295px}}

/* Editorial home additions */
.editorial-art { background:#d8ebba; padding:30px; border-radius:28px; }.editorial-sun { position:absolute; width:290px; height:290px; border-radius:50%; background:#f9df9c; right:-44px; top:-53px; }.editorial-grid { position:absolute; inset:0; opacity:.38; background-image:linear-gradient(rgba(35,66,55,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(35,66,55,.2) 1px,transparent 1px); background-size:33px 33px; mask-image:linear-gradient(145deg,#000 30%,transparent 85%); }.featured-card { position:relative; z-index:2; display:flex; flex-direction:column; justify-content:space-between; height:100%; background:#fffdf9; border:1px solid rgba(27,41,35,.12); border-radius:17px; padding:28px; box-shadow:12px 14px 0 rgba(35,66,55,.13); }.article-meta { margin:0; font:10px var(--mono); letter-spacing:.7px; color:#6e7b73; }.article-meta span { color:#b2c95b; padding:0 4px; }.featured-card h2 { font:500 35px/1.02 var(--serif); letter-spacing:-1.6px; margin:27px 0 12px; max-width:340px; }.featured-card > p:not(.article-meta) { font-size:13px; line-height:1.55; color:#5f6c65; max-width:330px; margin:0; }.article-author { display:flex; align-items:center; gap:10px; margin-top:25px; padding-top:18px; border-top:1px solid var(--line); }.author-avatar { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#e7a286; color:#fff; font-size:10px; font-weight:700; }.article-author span:nth-child(2) { display:grid; gap:3px; font-size:10px; }.article-author small { color:#738078; }.article-author i { width:20px; height:20px; margin-left:auto; border-radius:50%; display:grid; place-items:center; background:#d9ed89; font-style:normal; font-size:11px; }.verified-stamp { position:absolute; z-index:3; right:-3px; top:40px; background:var(--ink); color:white; border-radius:10px; padding:10px 15px 10px 10px; display:grid; grid-template-columns:25px auto; column-gap:8px; box-shadow:0 8px 15px rgba(27,41,35,.18); }.verified-stamp span { grid-row:1 / 3; height:25px; width:25px; display:grid; place-items:center; border-radius:50%; color:var(--ink); background:var(--leaf); font-size:13px; }.verified-stamp b { font-size:10px; }.verified-stamp small { font-size:9px; opacity:.67; }
.topic-list { border-top:1px solid rgba(255,255,255,.27); }.topic-list a { min-height:68px; border-bottom:1px solid rgba(255,255,255,.27); text-decoration:none; display:grid; grid-template-columns:48px 1fr 25px; align-items:center; transition:padding .2s, background .2s; }.topic-list a:hover { padding-left:12px; background:rgba(255,255,255,.06); }.topic-list span { font:10px var(--mono); color:#b6c6be; }.topic-list b { font-size:21px; letter-spacing:-.6px; }.topic-list i { font-style:normal; color:var(--leaf); }.quote-section > .eyebrow { margin-bottom:0; }.quote-avatar { font-size:9px; }
a.text-button { border-bottom:0; text-decoration:none; }
@media (max-width:800px){.featured-card h2{font-size:30px}.topic-list{max-width:540px;width:100%}}

/* Articles page */
.articles-head { padding:56px 0 48px; }.articles-head h1 { font-size:clamp(52px,6vw,80px); letter-spacing:-.055em; line-height:.97; margin:0; }.articles-head .hero-description { margin:22px 0 0; }.articles-section { padding:25px 0 136px; }
.article-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }.article-card { background:#fffdf9; border:1px solid var(--line); border-radius:20px; overflow:hidden; display:flex; flex-direction:column; box-shadow:0 10px 24px rgba(27,41,35,.05); }.article-thumb { position:relative; display:block; aspect-ratio:16/10; overflow:hidden; }.article-thumb:before { content:""; position:absolute; width:180px; height:180px; border-radius:50%; background:rgba(255,255,255,.5); right:-46px; top:-58px; }.article-thumb:after { content:""; position:absolute; inset:0; opacity:.4; background-image:linear-gradient(rgba(35,66,55,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(35,66,55,.22) 1px,transparent 1px); background-size:26px 26px; mask-image:linear-gradient(140deg,#000 25%,transparent 82%); }.article-thumb .thumb-topic { position:absolute; left:14px; bottom:14px; z-index:2; background:rgba(27,41,35,.86); color:#fff; font:10px var(--mono); letter-spacing:.6px; padding:6px 11px; border-radius:999px; }.thumb-preventive { background:#d8ef78; }.thumb-movement { background:#ffc7be; }.thumb-mental { background:#c4efdb; }.thumb-sleep { background:#c7e5f5; }.thumb-nutrition { background:#f9df9c; }
.article-card-body { padding:20px 22px 24px; display:flex; flex-direction:column; gap:11px; flex:1; }.article-card .card-number { font:10px var(--mono); letter-spacing:.6px; color:#6e7b73; margin:0; }.article-card h3 { font-size:22px; letter-spacing:-.9px; line-height:1.12; margin:0; }.article-card h3 a { text-decoration:none; }.article-card h3 a:hover { text-decoration:underline; text-underline-offset:3px; }.article-card .article-summary { margin:0; color:var(--muted); font-size:14px; line-height:1.5; }.article-card .article-author { margin-top:auto; padding-top:16px; }
@media (max-width:980px){ .article-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:800px){ .primary-nav { display:flex; margin-left:0; }.articles-head { padding:40px 0 36px; }.articles-section { padding:25px 0 88px; }.article-grid { grid-template-columns:1fr; } }

/* Article reading page */
.article-read { max-width:760px; padding:36px 0 96px; }.article-back { display:inline-block; font:12px var(--mono); text-decoration:none; color:var(--muted); margin-bottom:24px; }.article-back:hover { color:var(--ink); }.article-read-thumb { height:210px; border-radius:22px; position:relative; overflow:hidden; margin-bottom:34px; }.article-read-thumb:before { content:""; position:absolute; width:230px; height:230px; border-radius:50%; background:rgba(255,255,255,.5); right:-30px; top:-80px; }.article-read-thumb:after { content:""; position:absolute; inset:0; opacity:.4; background-image:linear-gradient(rgba(35,66,55,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(35,66,55,.22) 1px,transparent 1px); background-size:30px 30px; mask-image:linear-gradient(140deg,#000 25%,transparent 82%); }
.article-read-meta { font:11px var(--mono); letter-spacing:.7px; color:#6e7b73; margin:0 0 16px; text-transform:uppercase; }.article-read h1 { font-size:clamp(38px,5vw,58px); letter-spacing:-.05em; line-height:1; margin:0; }.article-read-lede { font-size:19px; line-height:1.55; color:var(--muted); margin:20px 0 26px; }.article-read-author { display:flex; align-items:center; gap:10px; padding:18px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.article-read-author > span:nth-child(2) { display:grid; gap:3px; font-size:11px; }.article-read-author small { color:#738078; }.article-read-author i { width:20px; height:20px; margin-left:auto; border-radius:50%; display:grid; place-items:center; background:#d9ed89; font-style:normal; font-size:11px; }
.article-read-body { margin-top:34px; }.article-read-body h2 { font:500 30px/1.12 var(--serif); letter-spacing:-1.2px; margin:36px 0 14px; }.article-read-body h3 { font-size:19px; letter-spacing:-.4px; margin:28px 0 10px; }.article-read-body p { font-size:16px; line-height:1.72; color:#31403a; margin:0 0 18px; }.article-read-about { margin-top:46px; padding:24px; border-radius:16px; background:#f2f1e8; }.article-read-about h4 { margin:0 0 8px; font:12px var(--mono); letter-spacing:.6px; text-transform:uppercase; color:#6e7b73; }.article-read-about p { margin:0; font-size:14px; line-height:1.6; color:#4a5751; }
@media (max-width:800px){ .article-read { padding:24px 0 72px; }.article-read-thumb { height:160px; }.article-read-body h2 { font-size:25px; } }
.header-login { display:inline-flex; align-items:center; gap:8px; }
.header-login .header-login-icon { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; border-radius:50%; background:var(--ink); color:var(--leaf); margin:0; }
.header-login .header-login-icon svg { width:12px; height:12px; }

/* Article filters */
.article-filters { display:flex; flex-wrap:wrap; align-items:flex-end; gap:14px; margin-bottom:30px; }
.filter-field { display:flex; flex-direction:column; gap:7px; }.filter-field label { font:10px var(--mono); letter-spacing:.7px; text-transform:uppercase; color:#6e7b73; }
.filter-field input, .filter-field select { font:14px var(--sans); color:var(--ink); background:#fffdf9; border:1px solid var(--line); border-radius:999px; padding:12px 18px; outline:none; }.filter-field input:focus, .filter-field select:focus { border-color:var(--ink); }
.filter-search { flex:0 1 400px; }.filter-search input { width:100%; }.filter-topic select { cursor:pointer; appearance:none; -webkit-appearance:none; min-width:190px; padding-right:44px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231b2923' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 18px center; }
.filter-submit { border:0; background:var(--ink); color:#fff; border-radius:999px; padding:13px 24px; font-size:14px; font-weight:600; cursor:pointer; }.filter-submit:hover { background:#2c4238; }
.filter-empty { display:none; margin:0 0 24px; color:var(--muted); font-size:15px; }.filter-empty.is-visible { display:block; }
.article-card[hidden] { display:none; }

/* Experts page */
.experts-section { padding:25px 0 136px; }.expert-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }.expert-card { background:#fffdf9; border:1px solid var(--line); border-radius:20px; padding:26px; box-shadow:0 10px 24px rgba(27,41,35,.05); display:flex; flex-direction:column; gap:15px; }
.expert-head { display:flex; align-items:center; gap:14px; }.expert-avatar { display:grid; place-items:center; width:52px; height:52px; border-radius:50%; background:#e7a286; color:#fff; font-size:15px; font-weight:700; flex:0 0 auto; }.expert-head h3 { margin:0 0 3px; font-size:20px; letter-spacing:-.6px; }.expert-role { margin:0; color:var(--muted); font-size:13px; line-height:1.4; }.expert-check { margin-left:auto; width:22px; height:22px; border-radius:50%; display:grid; place-items:center; background:#d9ed89; font-style:normal; font-size:12px; flex:0 0 auto; }
.expert-did { margin:0; font:10px var(--mono); color:#6e7b73; word-break:break-all; }.expert-bio { margin:0; color:#4a5751; font-size:14px; line-height:1.6; }.expert-specialty { margin:auto 0 0; padding-top:14px; border-top:1px solid var(--line); font-size:13px; color:var(--ink); }.expert-specialty span { display:block; font:10px var(--mono); letter-spacing:.6px; text-transform:uppercase; color:#6e7b73; margin-bottom:5px; }
@media (max-width:800px){ .expert-grid { grid-template-columns:1fr; }.experts-section { padding:25px 0 88px; } }

/* Topics page */
.topics-index-section { padding:25px 0 136px; }.topic-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }.topic-card { display:flex; flex-direction:column; gap:12px; background:#fffdf9; border:1px solid var(--line); border-radius:20px; padding:28px; text-decoration:none; box-shadow:0 10px 24px rgba(27,41,35,.05); transition:transform .2s, box-shadow .2s; }.topic-card:hover { transform:translateY(-3px); box-shadow:0 16px 32px rgba(27,41,35,.1); }.topic-card-top { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }.topic-card h3 { margin:0; font-size:24px; letter-spacing:-.8px; }.topic-count { font:10px var(--mono); letter-spacing:.6px; text-transform:uppercase; color:#6e7b73; }.topic-card p { margin:0; color:var(--muted); font-size:14px; line-height:1.55; }.topic-cta { margin-top:auto; padding-top:14px; font-size:13px; font-weight:600; color:var(--ink); }
@media (max-width:800px){ .topic-grid { grid-template-columns:1fr; }.topics-index-section { padding:25px 0 88px; } }

/* My library page */
.library-section { padding:25px 0 136px; }.library-empty { background:#fffdf9; border:1px solid var(--line); border-radius:22px; padding:56px 32px; max-width:640px; margin:0 auto; display:flex; flex-direction:column; align-items:center; text-align:center; gap:14px; box-shadow:0 10px 24px rgba(27,41,35,.05); }.library-empty-mark { display:grid; place-items:center; width:54px; height:54px; border-radius:50%; background:#d9ed89; color:var(--ink); }.library-empty h2 { margin:0; font-size:26px; letter-spacing:-.8px; }.library-empty p { margin:0; color:var(--muted); font-size:15px; line-height:1.6; max-width:440px; }.library-empty a { color:var(--ink); font-weight:600; }
@media (max-width:800px){ .library-section { padding:25px 0 88px; }.library-empty { padding:44px 24px; } }

/* Front page topic cards */
.topics-section .preview-layout { grid-template-columns:1fr; gap:46px; align-items:start; }
.topic-cards { display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.topic-card-dark { --accent:#c8eb59; display:flex; flex-direction:column; gap:8px; padding:22px; border-radius:16px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.16); text-decoration:none; transition:background .2s, transform .2s, border-color .2s; }
.topic-card-dark:hover { background:rgba(255,255,255,.14); transform:translateY(-2px); border-color:var(--accent); }
.topic-card-dark b { font-size:19px; letter-spacing:-.5px; color:#fff; }
.topic-card-dark small { font-size:13px; line-height:1.5; color:#c8d6cf; }
.tc-mental { --accent:#c4efdb; }.tc-movement { --accent:#ffc7be; }.tc-nutrition { --accent:#d8ef78; }.tc-preventive { --accent:#c7e5f5; }.tc-sleep { --accent:#f9df9c; }
@media (max-width:980px){ .topic-cards { grid-template-columns:repeat(3,1fr); } }
@media (max-width:800px){ .preview-copy { flex-direction:column; align-items:flex-start; gap:26px; }.topic-cards { grid-template-columns:repeat(2,1fr); } }
@media (max-width:450px){ .topic-cards { grid-template-columns:1fr; } }
