[hidden]{display:none!important}:root{--ink:#17221d;--muted:#657069;--line:#d9ddd3;--paper:#f8f7f1;--green:#d9f868;--deep:#1b2a22;--white:#fff;--radius:19px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans SC","Microsoft YaHei",sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.site-header{border-bottom:1px solid var(--line);background:rgba(248,247,241,.95);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.03em;font-size:18px;white-space:nowrap}.brand-mark{width:32px;height:32px;display:grid;place-items:center;background:var(--green);border:1px solid var(--ink);border-radius:10px;font-size:22px;line-height:1}.brand-en{color:#778078;font-size:11px;font-weight:700;letter-spacing:.08em}.site-header nav{display:flex;gap:32px;font-size:14px;font-weight:700}.site-header nav a:hover,.footer-links a:hover,.text-link:hover{color:#57712e}.hero{min-height:630px;display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;padding-top:75px;padding-bottom:88px}.eyebrow,.kicker,.section-number{font-size:12px;letter-spacing:.14em;font-weight:800;text-transform:uppercase}.eyebrow{display:inline-flex;align-items:center;gap:9px}.live-dot{width:8px;height:8px;border-radius:50%;background:#8db732;box-shadow:0 0 0 4px #e6f2c4}.hero h1,.page-hero h1{font-size:clamp(52px,6.5vw,94px);line-height:1.1;letter-spacing:-.075em;margin:27px 0 28px;font-weight:850}.hero h1 em,.page-hero h1 em{font-style:normal;color:#618035}.hero-lead{font-size:18px;color:#526057;max-width:540px;line-height:1.9}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:32px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:12px 21px;border-radius:10px;font-size:14px;font-weight:800;transition:transform .15s,box-shadow .15s}.button:hover{transform:translateY(-2px);box-shadow:0 6px 0 rgba(23,34,29,.13)}.button-dark{background:var(--ink);color:white}.button-light{background:var(--green);color:var(--ink)}.text-link{font-size:14px;font-weight:800}.hero-art{height:440px;position:relative;display:grid;place-items:center}.hero-art:before{content:"";position:absolute;width:88%;height:92%;background:var(--green);border-radius:50%;filter:blur(1px);transform:rotate(-14deg)}.art-window{width:88%;background:#f9fbf8;border:2px solid var(--ink);border-radius:20px;position:relative;box-shadow:16px 18px 0 #26342b;transform:rotate(4deg);overflow:hidden}.art-toolbar{height:39px;border-bottom:2px solid var(--ink);display:flex;align-items:center;gap:6px;padding:0 14px}.art-toolbar i{width:8px;height:8px;background:#d8dfd6;border:1px solid var(--ink);border-radius:50%}.art-toolbar span{margin-left:auto;font-size:9px;letter-spacing:.15em;font-weight:800}.art-image{height:230px;background:#a6c5d8;position:relative;overflow:hidden}.art-sun{width:75px;height:75px;background:#f7da79;border-radius:50%;position:absolute;left:56%;top:25px}.art-mountain{position:absolute;width:0;height:0;border-left:230px solid transparent;border-right:230px solid transparent;border-bottom:270px solid #376b68;bottom:-130px}.m1{left:-90px}.m2{left:140px;border-bottom-color:#1f4b4e;bottom:-165px}.art-frame{position:absolute;inset:22px;border:2px dashed rgba(255,255,255,.8);color:white;font-size:11px;padding:5px}.art-track{display:flex;gap:7px;padding:17px}.art-track div{height:20px;border-radius:4px;background:#bad4c1;flex:1}.art-track div:nth-child(2){background:#f5bd96;flex:1.8}.art-track div:nth-child(3){background:#d5dfc9;flex:.7}.art-caption{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:12px 18px;font-size:12px;font-weight:800}.art-caption strong{font-size:20px}.art-sticker{position:absolute;background:#fff;border:2px solid var(--ink);padding:9px 13px;border-radius:7px;font-size:13px;font-weight:900;box-shadow:5px 5px 0 var(--ink)}.sticker-one{left:0;top:70px;transform:rotate(-12deg)}.sticker-two{right:0;bottom:44px;transform:rotate(11deg)}.value-strip{background:var(--deep);color:#e7ede5}.value-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:11px;font-weight:800;letter-spacing:.1em}.catalog{padding:96px 0 105px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px}.section-head h2,.guide-promo h2,.related h2{font-size:clamp(34px,4.5vw,55px);letter-spacing:-.06em;line-height:1.15;margin:15px 0}.section-head p{color:var(--muted);max-width:620px;margin:0}.count-badge{display:flex;align-items:center;gap:13px;border-left:1px solid var(--line);padding-left:25px}.count-badge strong{font-size:62px;line-height:1;letter-spacing:-.08em}.count-badge span{font-size:12px;line-height:1.4;font-weight:700;color:var(--muted)}.catalog-tools{margin-top:42px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.search-box{height:50px;width:330px;display:flex;align-items:center;gap:10px;background:white;border:1px solid var(--line);border-radius:10px;padding:0 16px}.search-box span{font-size:25px;line-height:1;color:#536558}.search-box input{width:100%;border:0;outline:0;background:transparent;font-size:14px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:transparent;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:750;cursor:pointer}.filter:hover,.filter.active{background:var(--ink);border-color:var(--ink);color:white}.result-line{font-size:12px;color:var(--muted);margin:25px 0 15px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.project-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:23px;min-height:260px;display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}.project-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(21,38,26,.08)}.card-top{display:flex;justify-content:space-between;align-items:start;gap:10px}.project-glyph{width:48px;height:48px;border:1px solid var(--ink);border-radius:12px;display:grid;place-items:center;font-size:24px;font-weight:900;box-shadow:3px 3px 0 var(--ink)}.mint{background:#c7edcc}.violet{background:#d9d0f3}.peach{background:#ffd2b4}.blue{background:#c8e4f4}.yellow{background:#f3e49d}.pink{background:#f3d3d5}.card-area{font-size:11px;color:var(--muted);font-weight:750;text-align:right}.project-card h3{font-size:24px;letter-spacing:-.04em;margin:19px 0 5px}.project-card h3 a:hover{text-decoration:underline;text-decoration-color:#8fab52}.project-card p{font-size:14px;line-height:1.75;color:#56645b;margin:0 0 24px}.card-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:13px;display:flex;justify-content:space-between;font-size:12px;font-weight:800}.card-bottom span{color:#7d8c80}.card-bottom a{color:var(--ink)}.empty-state{text-align:center;padding:75px 10px}.empty-state strong{font-size:24px}.empty-state p{color:var(--muted)}.empty-state button{border:0;background:var(--ink);color:white;border-radius:8px;padding:10px 18px;cursor:pointer}.guide-promo{background:#dfeecb;padding:70px 0}.guide-promo-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center}.guide-promo h2{margin-bottom:0}.guide-promo p{color:#485c4a;line-height:1.9;margin-bottom:25px}.site-footer{background:#17231c;color:#e8eee8;padding:55px 0 20px}.footer-grid{display:flex;justify-content:space-between;gap:30px}.site-footer .brand-mark{color:var(--ink)}.footer-grid p{color:#a8b5a9;font-size:13px}.footer-links{display:flex;gap:25px;font-size:13px}.footnote{border-top:1px solid #435046;color:#95a296;margin-top:45px;padding-top:20px;font-size:11px}.page-hero{padding:80px 0 55px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(45px,6vw,75px);margin:18px 0}.page-hero p{max-width:680px;color:#556359;font-size:17px;line-height:1.9}.article-layout{display:grid;grid-template-columns:minmax(0,700px) minmax(230px,1fr);gap:80px;padding:60px 0 110px}.longform section{padding-bottom:35px;margin-bottom:35px;border-bottom:1px solid var(--line)}.longform h2,.detail-content h2{font-size:30px;letter-spacing:-.05em;margin:10px 0 12px}.longform p,.detail-content p{line-height:1.95;color:#526056;font-size:16px}.article-aside{background:#edf2e3;border-radius:16px;padding:25px;height:max-content;position:sticky;top:105px}.article-aside strong{font-size:18px}.article-aside ol{padding-left:21px;color:#58665a;line-height:2}.article-cta{background:#e4efcf;border-radius:16px;padding:26px}.article-cta h3{margin:0;font-size:23px}.article-cta p{margin:8px 0 20px}.detail{padding-top:35px;padding-bottom:95px}.back-link{font-size:13px;font-weight:800;color:#5a6a5f}.back-link:hover{text-decoration:underline}.detail-hero{padding:62px 0 42px;display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid var(--line)}.detail-hero h1{font-size:clamp(52px,7vw,88px);letter-spacing:-.075em;line-height:1;margin:14px 0 20px}.detail-lead{max-width:670px;font-size:21px;line-height:1.7;color:#566359}.detail-glyph{width:115px;height:115px;border-radius:26px;font-size:65px;box-shadow:8px 8px 0 var(--ink);flex:none}.detail-tags{display:flex;gap:8px;flex-wrap:wrap}.detail-tags span{border:1px solid var(--line);padding:6px 11px;border-radius:99px;font-size:12px;font-weight:750}.detail-layout{display:grid;grid-template-columns:minmax(0,670px) minmax(270px,1fr);gap:75px;padding:54px 0}.detail-content section{margin-bottom:38px}.detail-content h2{margin:8px 0}.detail-content p{margin-top:0}.repo-panel{border:1px solid var(--ink);border-radius:17px;padding:25px;align-self:start;background:#ecf3dc;position:sticky;top:105px}.repo-panel h2{font-size:25px;letter-spacing:-.05em;margin:13px 0 8px}.repo-panel p{font-size:13px;line-height:1.7;color:#596657}.repo-id{font:13px/1.6 ui-monospace,Consolas,monospace;padding:16px 0;border-block:1px solid #b3c1ac;margin:22px 0;overflow-wrap:anywhere}.repo-panel .button{width:100%}.repo-panel small{display:block;margin-top:13px;color:#647160}.editorial-note{border-left:4px solid #99ba60;background:#edf2e3;padding:18px 22px}.editorial-note p{font-size:13px;margin:6px 0 0}.related{padding-top:15px;border-top:1px solid var(--line)}.related .project-grid{margin-top:25px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:0;padding-top:60px}.hero-art{height:370px}.project-grid{grid-template-columns:repeat(2,1fr)}.article-layout,.detail-layout{gap:35px}.guide-promo-inner{gap:35px}}@media(max-width:650px){.wrap{width:min(100% - 30px,1180px)}.header-inner{height:65px}.brand-en{display:none}.site-header nav{gap:13px;font-size:11px}.hero{padding-top:48px;padding-bottom:55px;gap:12px}.hero h1{font-size:53px}.hero-lead{font-size:16px}.hero-art{height:300px}.art-window{width:86%}.art-image{height:150px}.art-mountain{transform:scale(.8);transform-origin:bottom left}.art-sticker{font-size:10px}.value-inner{min-height:70px;display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:10px 0;font-size:9px}.catalog{padding:65px 0}.count-badge{display:none}.catalog-tools{margin-top:25px}.search-box{width:100%}.project-grid{grid-template-columns:1fr}.project-card{min-height:225px}.guide-promo{padding:55px 0}.guide-promo-inner,.article-layout,.detail-layout{grid-template-columns:1fr}.page-hero{padding:60px 0 40px}.article-layout{padding:40px 0 70px}.article-aside,.repo-panel{position:static}.detail-hero{padding:40px 0 30px}.detail-glyph{width:70px;height:70px;border-radius:17px;font-size:39px;box-shadow:4px 4px 0 var(--ink)}.detail-hero h1{font-size:49px}.detail-lead{font-size:17px}.detail-layout{padding:35px 0}.footer-grid{flex-direction:column}.footer-links{flex-wrap:wrap}.footnote{margin-top:30px}}
.skip-link{position:fixed;left:16px;top:12px;z-index:1000;transform:translateY(-150%);padding:10px 14px;border-radius:8px;background:#111b14;color:#fff;font-size:13px;font-weight:800;box-shadow:0 6px 20px rgba(0,0,0,.2)}.skip-link:focus{transform:translateY(0)}.contact-address{display:inline-block;font-size:clamp(22px,3vw,34px);font-weight:800;letter-spacing:-.03em;overflow-wrap:anywhere}.not-found{min-height:65vh;display:flex;flex-direction:column;justify-content:center}.not-found-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.not-found-actions .button{border:1px solid var(--ink)}
.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-top:36px}.category-card{position:relative;display:flex;flex-direction:column;min-height:242px;padding:20px;border:1px solid var(--line);border-radius:18px;background:white;transition:transform .18s,box-shadow .18s}.category-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(21,38,26,.09)}.category-symbol{width:39px;height:39px;border:1px solid var(--ink);border-radius:10px;display:grid;place-items:center;font-size:20px;font-weight:900;box-shadow:3px 3px 0 var(--ink)}.category-index{position:absolute;right:18px;top:23px;color:#7b887d;font-size:10px;font-weight:800;letter-spacing:.08em}.category-card h3{font-size:19px;line-height:1.2;letter-spacing:-.04em;margin:23px 0 5px}.category-card p{font-size:12px;color:#657169;line-height:1.55;margin:0 0 15px}.category-arrow{margin-top:auto;font-size:20px;font-weight:800}.directory-band{background:#eef0e7}.directory-band .catalog{padding-top:87px}.select-label select{height:50px;min-width:220px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink);padding:0 14px;font-size:13px;font-weight:750;cursor:pointer}.category-page{padding-top:35px;padding-bottom:100px}.category-hero{padding:65px 0 58px;border-bottom:1px solid var(--line)}.category-hero h1{font-size:clamp(48px,6vw,76px);letter-spacing:-.07em;line-height:1.08;margin:16px 0 20px}.category-intro{font-size:19px;line-height:1.85;max-width:790px;color:#56645b}.category-question{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px}.category-question span{font-size:11px;font-weight:900;letter-spacing:.1em;color:#69786b}.category-question strong{background:var(--green);border-radius:8px;padding:9px 13px;font-size:14px}.category-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:30px;padding-top:55px}.category-layout .project-grid{grid-template-columns:repeat(2,1fr);margin-top:25px}.category-layout .article-aside ul{padding-left:20px;line-height:1.8;color:#58665a}.category-layout .article-aside a{text-decoration:underline;font-weight:800}.category-layout .article-aside p{font-size:13px;line-height:1.65}.category-layout .article-aside small{color:#647160;font-size:11px;line-height:1.6;display:block}.category-next{background:#dfeecb;margin-top:65px;border-radius:18px;padding:30px}.category-next h2{font-size:28px;letter-spacing:-.04em;margin:0}.category-next p{color:#536457}.category-next .button{margin-top:7px}.card-area:hover{text-decoration:underline}.site-footer .footer-links a:hover{color:var(--green)}@media(max-width:1080px){.category-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.category-layout{grid-template-columns:1fr}.category-layout .article-aside{position:static}}@media(max-width:650px){.category-grid{grid-template-columns:repeat(2,1fr);gap:10px}.category-card{min-height:200px;padding:15px}.category-card h3{font-size:16px;margin-top:19px}.category-card p{font-size:11px}.category-index{font-size:8px;right:12px}.category-page{padding-bottom:70px}.category-hero{padding:47px 0 37px}.category-intro{font-size:16px}.category-layout{padding-top:40px}.category-layout .project-grid{grid-template-columns:1fr}.select-label,.select-label select{width:100%}.site-header nav{gap:11px;font-size:10px}.header-inner .brand{font-size:15px}.header-inner .brand-mark{width:28px;height:28px;font-size:19px}.hero h1{font-size:49px}.hero-art{height:290px}}

.pd-byline{margin:13px 0 0;color:#69768b;font-size:12px;font-weight:700;letter-spacing:.01em}.pd-article--research>section{padding:42px 0;border-bottom:1px solid #e4e9f0}.pd-article--research>section:last-child{border-bottom:0}.pd-section-label{display:block;margin-bottom:10px;color:#35517c;font-size:10px;font-weight:900;letter-spacing:.14em}.pd-section-top{display:flex;align-items:center;justify-content:space-between;gap:18px}.pd-section-top a{font-size:12px;font-weight:800;color:#315de6;text-decoration:underline;text-underline-offset:3px}.pd-decision{padding-top:11px!important}.pd-decision .pd-lead{max-width:650px;margin-bottom:0}.pd-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:25px}.pd-decision-grid>div{position:relative;min-height:156px;padding:19px 20px;border:1px solid #dfe6ee;border-radius:14px;background:#f8fafc}.pd-decision-grid>div:nth-child(1){background:#f0f8e9;border-color:#d7e8c9}.pd-decision-grid>div:nth-child(3){background:#fff7ee;border-color:#f1dcc6}.pd-decision-grid strong,.pd-ownership-grid strong{display:block;margin-bottom:8px;color:#24354f;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.pd-decision-grid p,.pd-ownership-grid p{margin:0;font-size:14px;line-height:1.65}.pd-verdict{display:grid;grid-template-columns:108px 1fr;gap:16px;margin-top:13px;padding:16px 19px;border-radius:12px;background:#1c2b43;color:#fff}.pd-verdict strong{font-size:11px;letter-spacing:.1em;text-transform:uppercase}.pd-verdict p{margin:0!important;color:#dfe7f3!important;font-size:13px!important;line-height:1.65!important}.pd-source-section>ul{padding-left:21px;line-height:1.72}.pd-source-section li+li{margin-top:7px}.pd-evidence-note{margin-top:21px;padding:16px 18px;border-left:3px solid #86a846;background:#f5f8f1}.pd-evidence-note strong{font-size:12px;color:#34443a}.pd-evidence-note p{margin:5px 0 0!important;font-size:13px!important;line-height:1.65!important}.pd-source-chips,.pd-repo-topics>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.pd-source-chips span,.pd-repo-topics span{display:inline-flex;padding:7px 10px;border:1px solid #d4dce7;border-radius:999px;background:#f8fafc;color:#526078;font-size:11px;font-weight:750}.pd-trial-steps{display:grid;gap:0;margin:24px 0 0;padding:0;list-style:none;counter-reset:none}.pd-trial-steps>li{display:grid;grid-template-columns:45px 1fr;gap:15px;padding:21px 0;border-top:1px solid #e4e9f0}.pd-trial-steps>li:last-child{border-bottom:1px solid #e4e9f0}.pd-trial-steps>li>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#eaf0ff;color:#2458e9;font-size:11px;font-weight:900}.pd-trial-steps>li>div>strong{display:block;margin-bottom:7px;color:#22334d;font-size:15px}.pd-trial-steps p{margin:0!important}.pd-checklist{display:grid;gap:7px;padding:0;list-style:none}.pd-checklist li{position:relative;padding:9px 12px 9px 32px;border-radius:8px;background:#f2f6ed;line-height:1.5;font-size:13px}.pd-checklist li:before{content:'✓';position:absolute;left:12px;top:9px;color:#4d7427;font-weight:900}.pd-ownership-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}.pd-ownership-grid>div{padding:17px 18px;border:1px solid #e0e6ee;border-radius:12px;background:#fff}.pd-signal-note{margin-top:18px!important;padding:14px 17px;border-radius:10px;background:#f6f7f9;color:#66758a!important;font-size:12px!important;line-height:1.65!important}.pd-repo-topics{margin-top:20px;padding:17px;border-left:3px solid #9bbc5e;background:#f7f9f4}.pd-repo-topics>strong{font-size:12px;color:#3f4e43}.pd-compare-grid{display:grid;gap:12px;margin-top:20px}.pd-compare-card{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:18px;border:1px solid #dfe6ee;border-radius:13px;background:#fff;transition:border-color .16s,box-shadow .16s}.pd-compare-card:hover{border-color:#bcccf3;box-shadow:0 8px 24px rgba(28,54,105,.06)}.pd-compare-card h3{margin:0 0 6px;font-size:18px}.pd-compare-card p{margin:0 0 7px;font-size:13px;line-height:1.55}.pd-compare-card small{display:block;color:#6f7c90;line-height:1.5}.pd-compare-card div>a{display:inline-block;margin-top:9px;color:#2458e9;font-size:12px;font-weight:850}.pd-method{background:#f3f6fa;margin:0 -24px;padding-left:24px!important;padding-right:24px!important}.pd-source-register{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:20px 0}.pd-source-register>a,.pd-source-register>div{display:flex;flex-direction:column;min-height:135px;padding:15px;border:1px solid #dce4ed;border-radius:11px;background:#fff}.pd-source-register>a:hover{border-color:#9fb7ef}.pd-source-register span{color:#77859a;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.pd-source-register strong{margin:13px 0 6px;color:#22334d;font-size:13px;overflow-wrap:anywhere}.pd-source-register small{margin-top:auto;color:#718095;font-size:10px;line-height:1.5}.pd-method>p{font-size:12px!important;color:#6f7d90!important}.pd-method>p a{text-decoration:underline;text-underline-offset:2px}.pd-side-check{border:1px solid #dfe5ee;border-radius:10px;background:#1c2b43;color:#fff;padding:20px}.pd-side-check>span{font-size:10px;letter-spacing:.13em;color:#b9cae7;font-weight:850}.pd-side-check h2{margin:8px 0 13px;font-size:17px;letter-spacing:-.02em}.pd-side-check ol{display:grid;gap:10px;margin:0;padding-left:19px;color:#dfe7f3;font-size:12px;line-height:1.5}.pd-sidebar{position:sticky;top:92px}.pd-aside-note{background:#fff}@media(max-width:900px){.pd-sidebar{position:static}.pd-source-register{grid-template-columns:1fr}}@media(max-width:650px){.pd-decision-grid,.pd-ownership-grid{grid-template-columns:1fr}.pd-decision-grid>div{min-height:0}.pd-verdict{grid-template-columns:1fr;gap:6px}.pd-section-top{align-items:flex-start;flex-direction:column}.pd-source-register>a,.pd-source-register>div{min-height:112px}.pd-method{margin:0 -16px;padding-left:16px!important;padding-right:16px!important}.pd-trial-steps>li{grid-template-columns:38px 1fr;gap:11px}.pd-trial-steps>li>span{width:32px;height:32px}}
/* OpenAtlas explorer design */
:root{--ink:#101c37;--muted:#66738d;--line:#e1e8f2;--paper:#fbfcff;--green:#d9f868;--deep:#101c37;--blue:#2458e9;--soft-blue:#edf3ff}
html{scroll-padding-top:82px}
body{background:var(--paper);color:var(--ink);font:15px/1.55 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.sr-only{left:0;top:0;margin:-1px;padding:0;white-space:nowrap;border:0;clip-path:inset(50%)}
a,button,select,input{outline-offset:3px}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #85a6ff}
.wrap{width:min(1380px,calc(100% - 48px))}
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.header-inner{height:68px}
.brand{color:#0f1b36;font-size:19px;gap:10px}
.brand-mark{width:34px;height:34px;background:#d9f868;border:0;border-radius:9px;box-shadow:none;font-size:0}
.brand-mark img{width:21px;height:21px;display:block}
.brand-en{color:#8b96a9;font-size:11px;font-weight:650}
.site-header nav{gap:34px;color:#1d2b48;font-size:13px;font-weight:650}
.site-header nav a:hover{color:var(--blue)}
.explorer-hero{padding-top:27px;padding-bottom:24px;text-align:center}
.explorer-hero .eyebrow{font-size:11px;letter-spacing:.18em;color:#485c85;justify-content:center}
.explorer-hero h1{font-size:clamp(38px,4.3vw,56px);line-height:1.1;letter-spacing:-.06em;margin:12px 0 8px;font-weight:800}
.explorer-hero h1 em{font-style:normal;color:var(--blue)}
.explorer-hero>p{font-size:17px;line-height:1.5;color:#6e7a94;margin:0 auto 25px;max-width:900px}
.hero-search{display:flex;align-items:center;gap:8px;background:white;border:1px solid #d9e3f0;border-radius:12px;max-width:930px;height:61px;padding:6px 7px 6px 20px;margin:auto;box-shadow:0 8px 22px rgba(24,51,107,.06)}
.hero-search:before{content:"";background:url('/assets/ui/search.svg') center/20px no-repeat;width:21px;height:21px;flex:none;opacity:.72}
.hero-search input{min-width:0;flex:1;border:0;background:transparent;outline:0;font-size:16px;color:var(--ink)}
.hero-search input::placeholder{color:#96a2b6}
.hero-search button{height:46px;border:0;border-radius:8px;background:var(--blue);color:#fff;padding:0 25px;font-size:14px;font-weight:750;cursor:pointer}
.hero-search button:hover{background:#1544ca}
.quick-filters{display:flex;align-items:center;justify-content:center;gap:9px;margin:16px 0 0;flex-wrap:wrap}
.quick-filter,.kind-filter select{height:36px;border:1px solid #dce4ef;border-radius:8px;background:white;color:#42516e;padding:0 13px;font-size:13px;font-weight:600;cursor:pointer}
.quick-filter:hover,.quick-filter.active{background:var(--soft-blue);border-color:#c9dcff;color:#1450d3}
.kind-filter select{max-width:180px;padding-right:27px}
.mobile-category{display:none}
.explorer-shell{display:grid;grid-template-columns:244px minmax(0,1fr) 258px;gap:12px;align-items:start;padding-top:0;padding-bottom:62px}
.category-rail,.results-panel,.curation-panel{background:#fff;border:1px solid var(--line);border-radius:11px;min-width:0}
.category-rail{padding:12px 0 16px;position:sticky;top:82px}
.category-rail h2{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#8b98ae;margin:17px 18px 8px}
.category-rail ul{list-style:none;margin:0;padding:0}
.category-filter{width:100%;min-height:39px;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:8px;padding:8px 16px;border:0;background:transparent;color:#455571;font-size:13px;font-weight:600;cursor:pointer}
.category-filter small{color:#9aa8bc;font-size:12px;font-weight:650}
.category-filter:hover{background:#f5f8fe;color:#1b56d7}
.category-filter.active{background:#edf3ff;color:#2057d4;font-weight:750}
.category-filter.active small{color:#2057d4}
.rail-link{display:flex;justify-content:space-between;margin:14px 16px 0;padding-top:14px;border-top:1px solid var(--line);font-size:12px;font-weight:700;color:#295bd8}
.results-panel{overflow:hidden}
.results-head{min-height:65px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line)}
.results-head h2{font-size:16px;line-height:1.2;margin:0 0 2px;letter-spacing:-.02em}
.results-head p{font-size:11px;color:#8b99af;margin:0}
.sort-label{display:flex;align-items:center;gap:7px;white-space:nowrap;color:#66728a;font-size:12px}
.sort-label select{height:32px;border:1px solid var(--line);border-radius:7px;padding:0 24px 0 10px;background:#fff;color:#35435c;font-size:12px;cursor:pointer}
.project-row{min-height:104px;display:grid;grid-template-columns:56px minmax(130px,185px) minmax(0,1fr) 126px;align-items:center;column-gap:16px;padding:16px 20px;border-bottom:1px solid var(--line)}
.project-row:last-child{border-bottom:0}
.project-row:hover{background:#fafdff}
.row-logo{width:56px;height:56px;display:flex;align-items:center;justify-content:center;flex:none}
.project-logo{width:56px;height:56px;object-fit:contain;border-radius:12px;background:#fff}
.row-name{min-width:0}
.row-name h3{font-size:16px;line-height:1.3;letter-spacing:-.025em;margin:0 0 3px;font-weight:750}
.row-name h3 a:hover{color:var(--blue);text-decoration:underline}
.row-name>a{font-size:11px;line-height:1.3;color:#8694aa}
.row-name>a:hover{text-decoration:underline}
.project-row p{font-size:14px;line-height:1.45;color:#5d6c86;margin:0;max-width:430px}
.row-action{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;font-size:12px;font-weight:750;color:var(--blue);white-space:nowrap;text-align:right}
.row-action:hover{text-decoration:underline}
.row-action span{padding-left:2px}
.curation-panel{padding:19px 17px;position:sticky;top:82px}
.curation-panel h2{font-size:17px;letter-spacing:-.035em;margin:0 0 11px}
.curation-panel>p{font-size:13px;line-height:1.6;color:#6f7d94;margin:0 0 18px}
.curation-panel ul{list-style:none;margin:0;padding:0}
.curation-panel li{position:relative;padding:0 0 16px 25px}
.curation-panel li:before{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;background:url('/assets/ui/check-circle.svg') center/16px no-repeat}
.curation-panel li strong,.curation-panel li span{display:block}
.curation-panel li strong{font-size:12px;color:#263452}
.curation-panel li span{font-size:11px;line-height:1.4;color:#8390a4;margin-top:2px}
.curation-panel>a{display:block;border:1px solid var(--line);border-radius:7px;padding:9px 10px;text-align:center;font-size:11px;font-weight:750;color:#324362}
.curation-panel>a:hover{border-color:#9cbbff;color:var(--blue)}
.empty-state{padding:80px 20px}
.empty-state button{background:var(--blue)}
.category-section{padding:0 0 95px}
.category-section .section-head{border-top:1px solid var(--line);padding-top:36px}
.category-section .section-head h2{font-size:32px;margin:8px 0}
.category-section .section-head p{font-size:13px}
.category-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:23px}
.category-card{--cat:#3262db;--cat-tint:#edf3ff;min-height:220px;border-radius:12px;padding:18px;box-shadow:none;overflow:hidden;gap:0;transition:border-color .18s,box-shadow .18s,transform .18s}
.category-card[data-tone="violet"]{--cat:#7555cb;--cat-tint:#f3efff}
.category-card[data-tone="mint"]{--cat:#157e71;--cat-tint:#e7f7f3}
.category-card[data-tone="peach"]{--cat:#b9673e;--cat-tint:#fff0e7}
.category-card[data-tone="blue"]{--cat:#3262db;--cat-tint:#edf3ff}
.category-card[data-tone="yellow"]{--cat:#9d721a;--cat-tint:#fff6dd}
.category-card[data-tone="pink"]{--cat:#b04d83;--cat-tint:#fff0f6}
.category-card:hover{transform:translateY(-3px);border-color:#b8cfff;box-shadow:0 12px 28px rgba(31,69,141,.09)}
.category-card:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.category-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.category-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:var(--cat-tint);color:var(--cat);flex:none}
.category-icon svg{display:block;width:24px;height:24px}
.category-index{position:static;display:inline-flex;align-items:center;border:1px solid #e4eaf3;border-radius:999px;padding:4px 7px;color:#62718a;font-size:10px;font-weight:750;letter-spacing:0;text-transform:none;white-space:nowrap}
.category-card-copy{margin-top:21px}
.category-card h3{font-size:16px;line-height:1.3;letter-spacing:-.025em;margin:0 0 6px}
.category-card p{font-size:11px;line-height:1.5;color:#697992;margin:0}
.category-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:18px;color:var(--blue);font-size:11px;font-weight:750}
.category-arrow{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#edf3ff;font-size:15px;line-height:1;color:var(--blue)}
.category-card:hover .category-arrow{background:var(--blue);color:#fff}
.site-footer{background:#111e39;color:#e9f0ff;padding:42px 0 20px}
.site-footer .brand-mark{color:inherit}
.site-footer .footer-links a:hover{color:#a8c2ff}
.footnote{border-color:#34415d}
.page-hero,.category-hero,.detail-hero{border-color:var(--line)}
.page-hero h1 em{color:var(--blue)}
.category-page{padding-top:25px}
.category-hero{padding:42px 0 38px}
.category-hero h1{font-size:clamp(38px,4.5vw,58px);margin:13px 0 12px}
.category-intro{font-size:16px;line-height:1.7;max-width:850px}
.category-question{margin-top:22px}
.category-question strong{background:#edf3ff;color:#1b56d7;font-size:13px}
.category-layout{padding-top:38px}
.category-layout .section-head h2{font-size:34px;margin:8px 0}
.category-layout .section-head p{font-size:13px}
.article-aside,.repo-panel,.editorial-note,.category-next{background:#f0f5ff;border-color:var(--line)}
.repo-panel{border:1px solid var(--line)}
.detail-hero{padding:45px 0 35px}
.detail-hero h1{font-size:clamp(44px,5.4vw,70px)}
.detail-lead{font-size:18px}
.detail-glyph{width:96px;height:96px;box-shadow:none;border:none;background:#fff;border-radius:18px}
.project-card{min-height:230px;border-radius:11px;box-shadow:none}
.project-card:hover{transform:none;border-color:#b8cfff;box-shadow:0 6px 18px rgba(31,69,141,.05)}
.project-card h3{font-size:20px}
.project-card p{font-size:13px;line-height:1.6}
.card-bottom a:hover{color:var(--blue)}
.button-dark{background:var(--blue);color:#fff}
.button-dark:hover{background:#1544ca}
.guide-promo{background:#f0f5ff}
@media(max-width:1180px){.explorer-shell{grid-template-columns:215px minmax(0,1fr)}.curation-panel{grid-column:2;position:static}.project-row{grid-template-columns:50px minmax(115px,160px) minmax(0,1fr) 108px;gap:12px}.project-logo,.row-logo{width:50px;height:50px}.category-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.explorer-shell{grid-template-columns:1fr}.category-rail{position:static;display:none}.mobile-category{display:block}.mobile-category select{height:36px;border:1px solid #dce4ef;border-radius:8px;background:#fff;color:#42516e;padding:0 12px;font-size:13px}.curation-panel{grid-column:auto}.project-row{grid-template-columns:52px minmax(120px,185px) minmax(0,1fr) 110px}.explorer-hero h1{font-size:46px}.explorer-hero>p{font-size:16px}.category-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.wrap{width:min(100% - 28px,1380px)}.header-inner{height:61px}.brand{font-size:16px}.brand-mark{width:30px;height:30px}.brand-mark img{width:18px;height:18px}.site-header nav{gap:13px;font-size:11px}.site-header nav a:nth-child(3){display:none}.explorer-hero{padding-top:34px;padding-bottom:22px;text-align:left}.explorer-hero .eyebrow{justify-content:flex-start;font-size:10px}.explorer-hero h1{font-size:38px;line-height:1.12;margin:14px 0 12px}.explorer-hero>p{font-size:14px;line-height:1.55;margin-bottom:23px}.hero-search{height:56px;padding-left:13px}.hero-search input{font-size:13px}.hero-search button{height:42px;padding:0 15px;font-size:12px}.quick-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;overflow:visible;margin-top:12px}.quick-filter{display:none}.kind-filter,.kind-filter select,.mobile-category,.mobile-category select{width:100%;max-width:none}.explorer-shell{gap:13px;padding-bottom:45px}.results-head{padding:14px}.results-head p{max-width:205px}.project-row{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"logo name link" "logo summary summary";column-gap:11px;row-gap:5px;padding:15px 14px;min-height:96px}.row-logo{grid-area:logo;align-self:start;width:44px;height:44px}.project-logo{width:44px;height:44px}.row-name{grid-area:name}.row-name h3{font-size:15px}.project-row p{grid-area:summary;font-size:12px;line-height:1.4}.row-action{grid-area:link;font-size:11px;align-self:start}.row-action span{font-size:14px}.curation-panel{padding:17px}.category-section{padding-bottom:65px}.category-section .section-head h2{font-size:27px}.category-grid{gap:9px}.category-card{min-height:155px;padding:13px}.category-index{font-size:8px;right:11px;top:11px}.category-card h3{font-size:14px}.category-card p{font-size:10px}.footer-grid{gap:17px}}
@media(max-width:360px){.site-header nav a:last-child{display:none}.results-head p{display:none}.results-head h2{white-space:nowrap}.sort-label{gap:4px}}

/* Project pages: editorial two-column directory profile */
.project-detail{background:#fff}
.pd-wrap{max-width:1100px;padding-bottom:84px}
.pd-breadcrumb{display:flex;align-items:center;gap:9px;padding:27px 0 30px;color:#8994a6;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pd-breadcrumb a:hover{color:var(--blue);text-decoration:underline}
.pd-breadcrumb span[aria-current]{color:#3b4a64;overflow:hidden;text-overflow:ellipsis}
.pd-layout{display:grid;grid-template-columns:minmax(0,690px) minmax(285px,315px);justify-content:space-between;align-items:start;gap:40px}
.pd-primary{min-width:0}
.pd-hero{padding:8px 0 37px}
.pd-heading{display:flex;align-items:center;gap:16px;min-width:0}
.pd-logo{width:60px;height:60px;object-fit:contain;flex:none;border-radius:13px;background:#fff}
.pd-heading h1{font-size:clamp(34px,3.6vw,47px);line-height:1.08;letter-spacing:-.055em;margin:0 0 6px;color:#121c31}
.pd-type-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:#68768f;font-size:11px;font-weight:700}
.pd-type-line a,.pd-type-line span{background:#f3f6fb;border:1px solid #e5ebf5;padding:3px 8px;border-radius:5px}
.pd-type-line a:hover{color:var(--blue);border-color:#b9ceff}
.pd-summary{font-size:20px;line-height:1.48;letter-spacing:-.015em;color:#536179;margin:21px 0 0;max-width:680px}
.pd-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:27px}
.pd-primary-button,.pd-copy{height:43px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:0 16px;font-size:13px;font-weight:750;line-height:1}
.pd-primary-button{background:#2458e9;color:#fff;box-shadow:0 4px 10px rgba(36,88,233,.11)}
.pd-primary-button img{filter:brightness(0) invert(1)}
.pd-primary-button:hover{background:#1644c5}
.pd-copy{border:1px solid #dfe6f0;background:#fff;color:#41516b;cursor:pointer}
.pd-copy:hover{border-color:#b9ceff;color:var(--blue)}
.pd-copy.copied{border-color:#a6d9bd;background:#eaf9f0;color:#197047}
.pd-preview{margin:0 0 39px}
.pd-preview a{display:block;overflow:hidden;border:1px solid #e0e6ef;border-radius:11px;background:#f8fafc}
.pd-preview a:hover{border-color:#b3c8fb;box-shadow:0 8px 26px rgba(29,61,118,.07)}
.pd-preview img{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover}
.pd-preview figcaption{font-size:11px;color:#8994a8;margin-top:8px}
.pd-preview figcaption a{text-decoration:underline;text-underline-offset:2px}
.pd-preview--screenshot a{background:#f1f4f7}
.pd-preview--screenshot img{aspect-ratio:16/10;object-fit:contain;background:#f1f4f7}
.pd-article{font-size:15px;line-height:1.8;color:#46546c}
.pd-intro{background:#f5f8ff;border:1px solid #e5ecf8;border-radius:10px;padding:19px 22px;margin-bottom:35px}
.pd-intro span,.pd-aside-note>span,.pd-related-head span,.pd-facts-head span{font-size:10px;letter-spacing:.13em;color:#62769a;font-weight:850}
.pd-intro p{font-size:17px;line-height:1.6;color:#273954;font-weight:600;margin:8px 0 0}
.pd-article section{margin-bottom:32px}
.pd-article h2{font-size:23px;line-height:1.25;letter-spacing:-.035em;color:#18233a;margin:0 0 10px}
.pd-article section p{margin:0;color:#526078;font-size:15px;line-height:1.8}
.pd-editorial{border-top:1px solid #e2e9f2;margin-top:40px;padding-top:22px}
.pd-editorial strong{font-size:13px;color:#263855}
.pd-editorial p{font-size:12px;line-height:1.7;color:#7b899e;margin:5px 0 0}
.pd-sidebar{display:grid;gap:17px;padding-top:8px}
.pd-facts,.pd-aside-note{border:1px solid #dfe5ee;border-radius:10px;background:#fff;padding:20px}
.pd-facts-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e9edf3;padding-bottom:17px}
.pd-facts-head img{opacity:.55}
.pd-facts dl{margin:3px 0 0}
.pd-facts dl div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;border-bottom:1px solid #edf1f6;font-size:12px}
.pd-facts dt{color:#8290a4;flex:none}
.pd-facts dd{margin:0;color:#263650;text-align:right;font-weight:700;overflow-wrap:anywhere;max-width:170px}
.pd-facts dd a:hover{color:var(--blue);text-decoration:underline}
.pd-facts>p{font-size:11px;line-height:1.55;color:#8b98a8;margin:15px 0 0}
.pd-aside-note{background:#f7f9fd}
.pd-aside-note h2{font-size:17px;line-height:1.3;letter-spacing:-.025em;margin:12px 0 8px;color:#233451}
.pd-aside-note p{font-size:12px;line-height:1.65;color:#6d7b91;margin:0 0 14px}
.pd-aside-note a{color:var(--blue);font-size:12px;font-weight:750}
.pd-aside-note a:hover{text-decoration:underline}
.pd-related{border-top:1px solid #e2e9f2;margin-top:65px;padding-top:37px}
.pd-related-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.pd-related-head h2{font-size:30px;letter-spacing:-.045em;line-height:1.2;margin:6px 0 0}
.pd-related-head>a{font-size:12px;font-weight:750;color:var(--blue);white-space:nowrap}
.pd-related-head>a:hover{text-decoration:underline}
.pd-related .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.pd-related .project-card{min-height:225px}
@media(max-width:900px){.pd-layout{grid-template-columns:minmax(0,1fr) 280px;gap:26px}.pd-related .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.pd-wrap{padding-bottom:62px}.pd-breadcrumb{padding:19px 0 22px;font-size:11px}.pd-layout{display:flex;flex-direction:column;gap:27px}.pd-primary,.pd-sidebar{width:100%}.pd-sidebar{padding-top:0;grid-template-columns:1fr}.pd-hero{padding:8px 0 30px}.pd-heading{gap:12px}.pd-logo{width:48px;height:48px}.pd-heading h1{font-size:31px}.pd-summary{font-size:18px;line-height:1.55;margin-top:20px}.pd-actions{margin-top:22px}.pd-primary-button,.pd-copy{height:42px}.pd-primary-button{flex:1}.pd-preview{margin-bottom:29px}.pd-article{font-size:14px}.pd-intro{padding:17px;margin-bottom:28px}.pd-intro p{font-size:15px}.pd-article h2{font-size:21px}.pd-article section p{font-size:14px}.pd-related{margin-top:45px;padding-top:30px}.pd-related-head h2{font-size:24px}.pd-related .project-grid{grid-template-columns:1fr}.pd-related .project-card{min-height:195px}}
@media(max-width:390px){.pd-primary-button{font-size:12px;padding:0 12px}.pd-copy{font-size:12px;padding:0 10px}.pd-heading h1{font-size:29px}}

/* Firecrawl-inspired detail refinements: topic discovery and dated source facts */
.pd-wrap{max-width:1030px}
.pd-breadcrumb{padding:20px 0 19px}
.pd-layout{grid-template-columns:minmax(0,665px) minmax(285px,315px);gap:50px;justify-content:normal}
.pd-hero{padding-top:0}
.pd-heading{gap:10px}
.pd-logo{width:34px;height:34px;border-radius:7px}
.pd-heading h1{font-size:38px;line-height:1.1;margin-bottom:5px}
.pd-topic-preview{margin-top:25px}
.pd-topic-preview>span{display:block;color:#7a8799;font-size:12px;margin-bottom:9px}
.pd-topic-preview>div,.pd-topic-list{display:flex;gap:7px;flex-wrap:wrap}
.pd-topic-preview a,.pd-topic-list a{display:inline-flex;align-items:center;min-height:28px;border:1px solid #e4e9f0;border-radius:6px;background:#fafbfe;padding:3px 9px;color:#5c687e;font-size:11px;font-weight:650}
.pd-topic-preview a:hover,.pd-topic-list a:hover{border-color:#b5c8f4;color:var(--blue)}
.pd-hero{padding-bottom:43px}
.pd-actions{margin-top:29px}
.pd-stars{display:flex;align-items:baseline;gap:7px;margin:18px 0 0;color:#17253c}
.pd-stars strong{font-size:31px;line-height:1;letter-spacing:-.06em;font-weight:780}
.pd-stars span{font-size:13px;color:#6d7a8c}
.pd-snapshot-date{display:inline-block;margin:8px 0 13px;padding:3px 8px;border-radius:5px;background:#f1f6fc;color:#687a94;font-size:10px;font-weight:700}
.pd-facts dl{margin-top:1px}
.pd-facts dl div{padding:10px 0}
.pd-facts>p{margin-top:12px}
.pd-aside-note{background:#fff}
.pd-aside-note h2{margin:7px 0 8px}
.pd-side-projects{border-top:1px solid #ecf0f5}
.pd-side-project{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #ecf0f5}
.pd-side-logo{width:30px;height:30px;object-fit:contain;border-radius:6px;flex:none}
.pd-side-project span:nth-child(2){display:block;min-width:0;flex:1}
.pd-side-project strong,.pd-side-project small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pd-side-project strong{font-size:12px;line-height:1.3;color:#283850}
.pd-side-project small{font-size:10px;line-height:1.4;color:#93a0b1;margin-top:2px}
.pd-side-project>span:last-child{font-size:13px;color:#a0adbe}
.pd-side-project:hover strong,.pd-side-project:hover>span:last-child{color:var(--blue)}
.pd-side-all{display:block;margin-top:14px}
.pd-article .pd-lead{font-size:17px;line-height:1.75;color:#39485f;margin:0 0 30px;max-width:685px}
.pd-article section{margin-bottom:27px}
.pd-article h2{font-size:20px;margin-bottom:8px}
.pd-article section p{line-height:1.75}
.pd-classification{border-top:1px solid #e5ebf2;padding-top:20px;margin-top:37px;display:grid;gap:18px}
.pd-classification>div{display:grid;grid-template-columns:100px 1fr;gap:12px;align-items:start}
.pd-classification strong{font-size:12px;color:#66758d}
.pd-classification a{font-size:12px;color:var(--blue);font-weight:700}
.pd-classification>a:hover{text-decoration:underline}
.pd-classification .pd-topic-list a{color:#5c687e;font-size:11px}
.pd-editorial{margin-top:28px}
@media(max-width:900px){.pd-layout{grid-template-columns:minmax(0,1fr) 280px;gap:25px}}
@media(max-width:680px){.pd-layout{display:flex;flex-direction:column;gap:27px}.pd-breadcrumb{padding:19px 0 22px}.pd-heading h1{font-size:30px}.pd-logo{width:38px;height:38px}.pd-topic-preview{margin-top:23px}.pd-topic-preview>div{gap:6px}.pd-topic-preview a{font-size:10px;padding:3px 7px;min-height:26px}.pd-hero{padding-bottom:35px}.pd-stars strong{font-size:29px}.pd-article .pd-lead{font-size:15px;line-height:1.7;margin-bottom:26px}.pd-article h2{font-size:19px}.pd-classification>div{grid-template-columns:1fr;gap:7px}}

@media(max-width:600px){.category-card{min-height:210px;padding:13px}.category-card-copy{margin-top:17px}.category-card h3{font-size:14px;margin:0 0 5px}.category-card p{font-size:10px;line-height:1.4}.category-icon{width:36px;height:36px}.category-icon svg{width:21px;height:21px}.category-index{font-size:9px;padding:3px 5px}.category-card-footer{font-size:10px;padding-top:12px}.category-arrow{width:23px;height:23px}}
.pd-article .pd-maintainer{background:#f7f9fc;border:1px solid #dfe8f2;border-radius:18px;padding:25px 27px;margin:0 0 31px}
.pd-maintainer-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.pd-maintainer-head span{font-size:10px;font-weight:850;letter-spacing:.12em;color:#35517c}
.pd-maintainer-head a{font-size:12px;font-weight:750;color:#315de6;text-decoration:none}
.pd-maintainer-head a:hover{text-decoration:underline}
.pd-article .pd-maintainer h2{margin:0 0 11px;font-size:21px}
.pd-article .pd-maintainer p{margin:0 0 12px;color:#40516d}
.pd-maintainer ul{margin:0 0 17px;padding-left:19px;color:#40516d;line-height:1.7}
.pd-maintainer li+li{margin-top:5px}
.pd-maintainer small{display:block;border-top:1px solid #e1e8f1;padding-top:13px;font-size:11px;line-height:1.55;color:#7c8ba2}
@media(max-width:680px){.pd-article .pd-maintainer{padding:21px 19px}.pd-maintainer-head{align-items:flex-start;flex-direction:column;gap:5px}.pd-article .pd-maintainer h2{font-size:19px}}
/* A calmer, shorter homepage directory. Detail and category pages retain their layout. */
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.008em}
.wrap{width:min(1180px,calc(100% - 48px))}
.site-header nav{font-weight:600}
.explorer-hero{padding:67px 0 43px;text-align:center}
.explorer-hero .eyebrow{font-size:11px;letter-spacing:.11em;font-weight:700;color:#6f7d93}
.explorer-hero h1{max-width:850px;margin:20px auto 17px;font-size:clamp(38px,4vw,52px);font-weight:550;letter-spacing:-.055em;line-height:1.1}
.explorer-hero h1 em{color:#2859bf}
.explorer-hero>p{max-width:680px;margin:0 auto 28px;color:#647187;font-size:17px;line-height:1.65}
.hero-search{max-width:830px;height:60px;box-shadow:0 8px 24px rgba(30,50,83,.045)}
.hero-search button{font-weight:650}
.quick-filters{gap:8px;margin-top:15px}
.quick-filter,.kind-filter select,.mobile-category select{height:35px;border-radius:7px;font-weight:550}
.mobile-category{display:block}
.mobile-category select{border:1px solid #dce4ef;background:white;color:#42516e;padding:0 28px 0 12px;font-size:13px;cursor:pointer}
.explorer-shell{display:block;padding:0 0 66px}
.results-panel{border:0;border-radius:0;background:transparent;overflow:visible}
.results-head{min-height:auto;padding:0 0 19px;border:0;align-items:end}
.results-head .kicker{color:#72809a;font-size:10px;letter-spacing:.13em}
.results-head h2{font-size:27px;line-height:1.18;font-weight:650;letter-spacing:-.04em;margin:6px 0 5px}
.results-head p{font-size:12px;color:#8893a5}
.sort-label{font-size:12px}
.sort-label select{height:37px;font-weight:550}
.project-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.project-row{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;min-height:260px;padding:21px;background:#fff;border:1px solid #e1e7ef;border-radius:12px;transition:border-color .18s,box-shadow .18s,transform .18s}
.project-row:last-child{border-bottom:1px solid #e1e7ef}
.project-row:hover{background:#fff;border-color:#baccef;box-shadow:0 10px 30px rgba(28,54,94,.07);transform:translateY(-2px)}
.row-top{display:flex;align-items:center;gap:13px;min-height:47px}
.row-logo,.project-logo{width:45px;height:45px}
.row-name h3{margin:0 0 2px;font-size:17px;font-weight:650;line-height:1.2}
.row-name>a{font-size:11px;color:#8590a3}
.project-row p{margin:17px 0 0;max-width:none;min-height:44px;color:#5e6b80;font-size:14px;line-height:1.55}
.row-facts{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;margin-top:17px;color:#7b879a;font-size:11px}
.row-facts span+span{position:relative}
.row-facts span+span:before{content:"";position:absolute;width:3px;height:3px;border-radius:50%;background:#aab6c7;left:-10px;top:7px}
.row-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:19px}
.row-bottom>span{display:inline-block;padding:5px 8px;border-radius:5px;background:#f3f5f9;color:#607089;font-size:11px;font-weight:550}
.row-action{font-size:12px;font-weight:650}
.project-pagination{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:28px;min-height:40px}
.project-pagination button{min-width:35px;height:35px;border:1px solid #dbe3ed;border-radius:7px;background:#fff;color:#35445e;font:600 12px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.project-pagination button:hover{border-color:#9ab3e9;color:var(--blue)}
.project-pagination button[aria-current="page"]{background:#eaf1ff;border-color:#b9cbf2;color:#2458ce}
.project-pagination button:disabled{color:#aab4c4;cursor:default;background:#fafbfe}
.project-pagination .page-nav{padding:0 13px;width:auto}
.empty-state{border:1px solid var(--line);border-radius:12px;background:#fff}
.category-section{padding-bottom:84px}
.category-section .section-head{padding-top:41px}
.category-section .section-head h2{font-size:27px;font-weight:650;letter-spacing:-.04em}
.category-section .section-head p{font-size:13px}
.category-grid{margin-top:24px}
.category-card{min-height:205px}
.category-card h3{font-weight:650}
.category-card p{font-size:12px;line-height:1.45}

@media(max-width:1000px){
  .project-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:650px){
  .wrap{width:min(100% - 28px,1180px)}
  .explorer-hero{padding:45px 0 35px;text-align:left}
  .explorer-hero .eyebrow{justify-content:flex-start;font-size:10px}
  .explorer-hero h1{margin:15px 0 13px;font-size:38px;line-height:1.12;letter-spacing:-.05em}
  .explorer-hero>p{margin:0 0 24px;font-size:14px;line-height:1.6}
  .hero-search{height:56px}
  .quick-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .quick-filter{display:none}
  .mobile-category,.mobile-category select,.kind-filter,.kind-filter select{display:block;width:100%;max-width:none}
  .results-head{align-items:end;padding-bottom:17px}
  .results-head h2{font-size:23px}
  .results-head p{font-size:10px;max-width:225px}
  .sort-label{font-size:0}
  .sort-label select{font-size:11px;max-width:112px}
  .project-list{grid-template-columns:1fr;gap:11px}
  .project-row{min-height:215px;padding:17px}
  .row-top{gap:12px}
  .row-logo,.project-logo{width:42px;height:42px}
  .project-row p{font-size:13px;min-height:0;margin-top:13px}
  .row-facts{margin-top:12px}
  .row-bottom{padding-top:16px}
  .row-action{font-size:12px}
  .row-action span{font-size:13px}
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:370px){
  .explorer-hero h1{font-size:34px}
  .mobile-category select,.kind-filter select{font-size:11px;padding-left:8px;padding-right:20px}
  .project-pagination{gap:4px}
  .project-pagination button{min-width:25px;height:30px;font-size:10px}
  .project-pagination .page-nav{padding:0 6px}
}
/* OpenAtlas editorial homepage: formal type, search first, concise browsing. */
@font-face{font-family:Inter;src:url('/assets/fonts/inter-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:0;background:#fcfcfa;color:#151b18}
.wrap{width:min(1366px,calc(100% - 72px))}
.site-header{background:#fff;border-bottom:1px solid #e2e5df}
.header-inner{height:72px}
.brand{color:#171e1a;font-weight:650;letter-spacing:-.035em}
.brand-en{font-family:inherit;font-size:10px;font-weight:500;letter-spacing:.08em;color:#808883}
.site-header nav{font-size:14px;font-weight:500;color:#202722;gap:32px}
.site-header nav a:hover,.oa-section-top>a:hover,.oa-featured-open:hover{color:#54783b}
.oa-hero{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(400px,.9fr);align-items:center;gap:46px;padding-top:46px;padding-bottom:38px}
.oa-hero-copy{min-width:0}
.oa-eyebrow,.oa-label{font-family:inherit;font-size:10px;line-height:1.4;font-weight:650;letter-spacing:.13em;color:#4d5950}
.oa-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.oa-eyebrow span{width:7px;height:7px;border-radius:50%;background:#87af57;box-shadow:0 0 0 3px #eaf2e0}
.oa-hero h1{font-size:clamp(46px,4.25vw,61px);font-weight:550;line-height:1.1;letter-spacing:-.032em;margin:0;color:#111713}
.oa-hero h1 em{font-style:normal;color:#56763f;font-weight:550}
.oa-hero-copy>p{max-width:690px;margin:20px 0 26px;color:#646d67;font-size:17px;line-height:1.65;font-weight:400}
.oa-hero .hero-search{max-width:none;width:100%;height:58px;margin:0;border:1px solid #d2d8d1;border-radius:7px;box-shadow:none;padding:5px 6px 5px 17px}
.oa-hero .hero-search:before{width:20px;height:20px;background-size:19px;opacity:.58}
.oa-hero .hero-search input{font-family:inherit;font-size:15px;font-weight:400;color:#222b24}
.oa-hero .hero-search input::placeholder{color:#8a938e}
.oa-hero .hero-search button{height:46px;border-radius:5px;background:#597740;color:#fff;font-family:inherit;font-size:14px;font-weight:600;padding:0 27px}
.oa-hero .hero-search button:hover{background:#3d5c2d}
.oa-hero .hero-search:focus-within{outline:2px solid #8fb573;outline-offset:2px}
.oa-search-suggestions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:14px;color:#808a83;font-size:12px}
.oa-search-suggestions button{border:0;border-radius:999px;background:#f0f2ee;padding:6px 11px;color:#68736b;font:500 12px Inter,Arial,sans-serif;cursor:pointer}
.oa-search-suggestions button:hover{background:#e2ebd9;color:#3f6231}
.oa-hero-image{height:435px;overflow:hidden;border-radius:4px;background:#e8e8df}
.oa-hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.oa-shortcuts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid #dfe3dc;border-bottom:1px solid #dfe3dc;padding-top:24px;padding-bottom:24px}
.oa-shortcut{display:flex;gap:10px;align-items:flex-start;min-width:0;padding:4px 13px 4px 17px;border-left:1px solid #e6e9e3;position:relative}
.oa-shortcut:first-child{border-left:0;padding-left:0}
.oa-shortcut>img{width:23px;height:23px;flex:none;opacity:.9;margin-top:1px}
.oa-shortcut-number{font:500 11px Inter,Arial,sans-serif;color:#729252;margin-top:2px}
.oa-shortcut strong,.oa-shortcut small{display:block}
.oa-shortcut strong{color:#202a22;font-size:13px;line-height:1.3;font-weight:600}
.oa-shortcut small{color:#8a948d;font-size:11px;line-height:1.35;margin-top:5px}
.oa-shortcut-arrow{margin-left:auto;color:#9da9a0;font-size:13px}
.oa-shortcut:hover strong,.oa-shortcut:hover .oa-shortcut-arrow{color:#567b3d}
.oa-featured{padding-top:39px;padding-bottom:50px}
.oa-section-top{display:flex;align-items:end;justify-content:space-between;gap:28px}
.oa-section-top h2{font-size:30px;line-height:1.2;letter-spacing:-.025em;font-weight:600;margin:8px 0 7px;color:#151b17}
.oa-section-top p{font-size:14px;line-height:1.55;color:#777f79;margin:0}
.oa-section-top>a{font-size:13px;font-weight:600;white-space:nowrap;padding-bottom:9px;color:#202820}
.oa-featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:28px}
.oa-featured-project{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;padding:10px 20px;border-left:1px solid #e4e8e1;min-height:184px}
.oa-featured-project:first-child{border-left:0;padding-left:0}
.oa-featured-logo img{width:55px;height:55px;object-fit:contain;border-radius:10px}
.oa-featured-project h3{font-size:18px;line-height:1.2;letter-spacing:-.02em;font-weight:600;margin:2px 0 7px}
.oa-featured-project h3 a:hover{text-decoration:underline}
.oa-featured-project p{font-size:13px;line-height:1.5;color:#6a746c;min-height:58px;margin:0 0 9px}
.oa-featured-category{display:table;border-radius:999px;padding:4px 8px;background:#edf2e6;color:#607650;font-size:11px;line-height:1.15}
.oa-featured-open{display:table;margin-top:15px;color:#202820;font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.oa-directory{scroll-margin-top:90px;border-top:1px solid #e0e5de;padding-top:40px;padding-bottom:58px}
.oa-directory-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:22px 0 20px}
.oa-directory-controls label{display:grid;gap:6px;color:#6f7a71;font-size:11px;font-weight:600}
.oa-directory-controls select{height:40px;min-width:180px;max-width:270px;background:#fff;border:1px solid #d9e0d7;border-radius:6px;padding:0 12px;color:#304034;font:500 13px Inter,Arial,sans-serif;cursor:pointer}
.oa-result-count{font-size:13px;color:#78847a;padding-bottom:8px}
.oa-directory .project-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.oa-directory .project-row{min-height:242px;border-color:#dfe5dd;border-radius:7px;box-shadow:none}
.oa-directory .project-row:hover{border-color:#aabda4;transform:none;box-shadow:0 7px 18px rgba(34,53,39,.045)}
.oa-directory .row-action,.oa-directory .row-name h3 a:hover{color:#557740}
.oa-directory .project-pagination button[aria-current="page"]{background:#ecf2e6;color:#557740;border-color:#b9cba9}
.oa-all-categories{scroll-margin-top:90px;border-top:1px solid #e0e5de;padding-top:40px;padding-bottom:82px}
.oa-category-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:30px;margin-top:25px;border-top:1px solid #e2e7e0}
.oa-category-list a{display:flex;justify-content:space-between;gap:10px;padding:13px 1px;border-bottom:1px solid #e2e7e0;color:#28332a;font-size:13px;font-weight:600}
.oa-category-list a:hover{color:#54783b}
.oa-category-list small{flex:none;font-size:11px;font-weight:400;color:#8c978e}
.site-footer{background:#18251c}
.site-footer .brand{color:#f7faf4}
.page-hero h1,.category-hero h1,.pd-heading h1{font-weight:600;letter-spacing:-.04em}
.longform h2,.pd-article h2{font-weight:600;letter-spacing:-.025em}
@media(max-width:1100px){.oa-hero{grid-template-columns:1fr 42%;gap:28px}.oa-hero-image{height:360px}.oa-shortcuts{grid-template-columns:repeat(3,1fr);row-gap:16px}.oa-shortcut:nth-child(4){border-left:0;padding-left:0}.oa-featured-grid{grid-template-columns:repeat(2,1fr);row-gap:24px}.oa-featured-project:nth-child(3){border-left:0;padding-left:0}.oa-category-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.wrap{width:calc(100% - 34px)}.header-inner{height:62px}.site-header nav{gap:14px;font-size:11px}.site-header nav a:nth-child(3){display:none}.brand-en{display:none}.oa-hero{grid-template-columns:1fr;gap:24px;padding-top:40px}.oa-hero h1{font-size:clamp(39px,9vw,58px)}.oa-hero-copy>p{font-size:15px}.oa-hero-image{height:280px}.oa-shortcuts{grid-template-columns:repeat(2,1fr);padding-top:17px;padding-bottom:17px;row-gap:12px}.oa-shortcut{border-left:0;padding:4px 8px 4px 0}.oa-shortcut:nth-child(even){border-left:1px solid #e6e9e3;padding-left:12px}.oa-featured{padding-top:32px}.oa-section-top{align-items:start}.oa-section-top h2{font-size:26px}.oa-section-top>a{font-size:11px}.oa-featured-grid{grid-template-columns:1fr 1fr}.oa-featured-project{grid-template-columns:44px 1fr;gap:9px;padding:10px}.oa-featured-project:nth-child(odd){border-left:0;padding-left:0}.oa-featured-logo img{width:42px;height:42px}.oa-featured-project h3{font-size:15px}.oa-featured-project p{font-size:12px;min-height:0}.oa-featured-category{font-size:10px}.oa-directory .project-list{grid-template-columns:repeat(2,1fr)}.oa-category-list{grid-template-columns:repeat(2,1fr);column-gap:17px}}
@media(max-width:520px){.site-header nav a:nth-child(4){display:none}.oa-hero{padding-top:32px}.oa-eyebrow{font-size:9px;margin-bottom:16px}.oa-hero h1{font-size:40px;letter-spacing:-.045em}.oa-hero-copy>p{margin:15px 0 20px;font-size:14px}.oa-hero .hero-search{height:54px}.oa-hero .hero-search button{height:42px;padding:0 15px}.oa-search-suggestions{gap:5px}.oa-hero-image{height:220px}.oa-shortcut{min-height:53px}.oa-shortcut strong{font-size:11px}.oa-shortcut small{font-size:10px}.oa-shortcut-number{font-size:9px}.oa-shortcut-arrow{display:none}.oa-section-top{display:block}.oa-section-top>a{display:inline-block;margin-top:12px}.oa-featured-grid{grid-template-columns:1fr}.oa-featured-project,.oa-featured-project:nth-child(3){border-left:0;border-top:1px solid #e4e8e1;padding:16px 0;min-height:0;grid-template-columns:50px 1fr}.oa-featured-project:first-child{border-top:0}.oa-featured-logo img{width:48px;height:48px}.oa-featured-project p{max-width:400px}.oa-directory-controls{display:grid;grid-template-columns:1fr 1fr}.oa-directory-controls label:first-child{grid-column:1/-1}.oa-directory-controls select{min-width:0;width:100%}.oa-directory .project-list{grid-template-columns:1fr}.oa-directory .project-row{min-height:215px}.oa-category-list{grid-template-columns:1fr}.oa-all-categories{padding-bottom:55px}}
@media(max-width:520px){.oa-hero h1{letter-spacing:-.03em}}
/* Editorial topic directory and topic landing pages. */
.topic-index,.topic-detail{max-width:1240px;padding-bottom:90px}
.topic-breadcrumb{display:flex;align-items:center;gap:10px;padding:28px 0 0;color:#849088;font-size:12px}
.topic-breadcrumb a:hover{color:#4f7340}
.topic-index-hero{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:70px;align-items:end;padding:70px 0 48px;border-bottom:1px solid #dfe5dd}
.topic-index-hero h1{max-width:760px;margin:14px 0 17px;font-size:clamp(42px,5vw,64px);line-height:1.08;letter-spacing:-.04em;font-weight:550;color:#151b18}
.topic-index-hero p{max-width:710px;margin:0;color:#626e65;font-size:17px;line-height:1.7}
.topic-index-stat{border-left:1px solid #dfe5dd;padding-left:27px;padding-bottom:8px;display:grid;gap:3px}
.topic-index-stat strong{font-size:62px;line-height:1;letter-spacing:-.06em;font-weight:550;color:#53723e}
.topic-index-stat span{font-size:14px;font-weight:600;color:#263027}
.topic-index-stat small{font-size:12px;color:#819086}
.topic-toolbar{display:flex;align-items:center;gap:14px;padding:26px 0 17px}
.topic-toolbar label{font-size:13px;font-weight:600;white-space:nowrap}
.topic-toolbar input{width:min(440px,100%);height:44px;background:#fff;border:1px solid #d5ded5;border-radius:7px;padding:0 15px;color:#202b22;font:400 14px Inter,Arial,sans-serif}
.topic-toolbar input:focus{outline:2px solid #9aba7d;outline-offset:2px}
.topic-toolbar #topic-count{margin-left:auto;color:#8b978e;font-size:12px;white-space:nowrap}
.topic-group-nav{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:22px;border-bottom:1px solid #e4e9e3}
.topic-group-nav a{border:1px solid #dce5da;background:#f8faf6;border-radius:999px;padding:7px 12px;color:#52634f;font-size:12px;font-weight:600}
.topic-group-nav a:hover{border-color:#93b184;background:#edf4e8}
.topic-group{scroll-margin-top:95px;padding-top:48px}
.topic-group-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}
.topic-group-head h2{font-size:29px;line-height:1.16;letter-spacing:-.03em;font-weight:600;margin:7px 0 5px}
.topic-group-head p{margin:0;color:#758078;font-size:14px}
.topic-group-head>span{font-size:12px;color:#89968b;white-space:nowrap}
.topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.topic-card{display:flex;flex-direction:column;min-height:215px;padding:21px 22px;background:#fff;border:1px solid #dce4da;border-radius:8px;transition:border-color .16s,box-shadow .16s,transform .16s}
.topic-card:hover{border-color:#9eb897;box-shadow:0 7px 20px rgba(38,58,41,.07);transform:translateY(-2px)}
.topic-card-top{display:flex;justify-content:space-between;color:#7e8b7f;font-size:10px;font-weight:650;letter-spacing:.09em}
.topic-card-top>span:last-child{font-size:14px;letter-spacing:0}
.topic-card h3{font-size:20px;line-height:1.24;font-weight:600;letter-spacing:-.026em;margin:25px 0 7px;color:#18231a}
.topic-card p{color:#758078;font-size:13px;line-height:1.5;margin:0 0 18px}
.topic-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;color:#53723e;font-size:12px;font-weight:600}
.topic-mini-logos{display:flex;align-items:center;padding-left:4px}
.topic-mini-logo{width:25px;height:25px;border-radius:7px;border:2px solid #fff;background:#fff;object-fit:contain;margin-left:-5px}
.topic-index-note{margin:49px 0 0;border-top:1px solid #e4e9e3;padding-top:18px;color:#89958a;font-size:12px;line-height:1.6}
.topic-empty{padding:55px 10px;text-align:center;color:#76857a;font-size:15px}
.topic-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:60px;align-items:end;padding:63px 0 54px;border-bottom:1px solid #dfe5dd}
.topic-detail-hero h1{font-size:clamp(45px,5.3vw,69px);font-weight:550;letter-spacing:-.04em;line-height:1.08;margin:15px 0 19px;color:#171d18}
.topic-detail-hero p{max-width:760px;color:#5f6c62;font-size:17px;line-height:1.7;margin:0}
.topic-detail-hero aside{display:grid;gap:10px;padding:20px 22px;background:#edf4e9;border:1px solid #dce9d7;border-radius:8px}
.topic-detail-hero aside>span{font-size:10px;font-weight:650;letter-spacing:.12em;color:#68805f}
.topic-detail-hero aside strong{font-size:16px;line-height:1.5;font-weight:600;color:#2d442d}
.topic-detail-hero aside a{margin-top:7px;padding-top:12px;border-top:1px solid #d3e1cf;color:#507047;font-size:12px;font-weight:600}
.topic-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:35px;padding-top:42px}
.topic-projects-head h2{font-size:30px;font-weight:600;letter-spacing:-.03em;margin:7px 0 5px}
.topic-projects-head p{color:#77827a;font-size:14px;margin:0 0 23px}
.topic-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.topic-project-grid .project-card{min-height:244px;border-radius:8px}
.topic-side{display:grid;align-content:start;gap:22px}
.topic-side section{background:#f5f8f3;border:1px solid #e0e8dd;border-radius:8px;padding:18px}
.topic-side h2{margin:0 0 13px;font-size:15px;font-weight:600;letter-spacing:-.02em}
.topic-side ul{padding-left:18px;margin:0;color:#657469;font-size:13px;line-height:1.75}
.topic-side-links{display:grid}
.topic-side-links a{padding:9px 0;border-top:1px solid #e3e9df;display:flex;justify-content:space-between;gap:10px;color:#4e624f;font-size:12px;font-weight:600}
.topic-side-links a:hover{color:#50743e}
.topic-detail-foot{display:flex;justify-content:space-between;gap:30px;align-items:center;border-top:1px solid #dfe5dd;margin-top:55px;padding-top:23px}
.topic-detail-foot p{max-width:750px;color:#839087;font-size:12px;line-height:1.6;margin:0}
.topic-detail-foot a{flex:none;color:#50743e;font-size:13px;font-weight:600}
@media(max-width:900px){.topic-index-hero{grid-template-columns:1fr;gap:30px}.topic-index-stat{display:flex;align-items:baseline;gap:10px;padding:0;border:0}.topic-index-stat strong{font-size:35px}.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-detail-hero{grid-template-columns:1fr;gap:25px}.topic-detail-layout{grid-template-columns:1fr}.topic-side{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.site-header nav a:nth-child(3){display:inline}}
@media(max-width:600px){.topic-index,.topic-detail{padding-bottom:60px}.topic-breadcrumb{padding-top:20px}.topic-index-hero{padding:43px 0 32px}.topic-index-hero h1{font-size:43px}.topic-index-hero p,.topic-detail-hero p{font-size:15px}.topic-toolbar{display:grid;grid-template-columns:1fr auto;gap:8px;padding:22px 0 15px}.topic-toolbar label{grid-column:1/-1}.topic-toolbar input{width:100%}.topic-group-nav{gap:6px}.topic-group-nav a{font-size:11px;padding:6px 9px}.topic-group{padding-top:36px}.topic-group-head h2{font-size:25px}.topic-grid{grid-template-columns:1fr}.topic-card{min-height:190px;padding:18px}.topic-card h3{margin-top:19px}.topic-detail-hero{padding:43px 0 35px}.topic-detail-hero h1{font-size:43px}.topic-project-grid{grid-template-columns:1fr}.topic-side{grid-template-columns:1fr}.topic-detail-foot{display:block}.topic-detail-foot a{display:inline-block;margin-top:13px}}
@media(max-width:520px){.site-header nav{gap:10px}.site-header nav a:nth-child(4){display:none}}
@media(max-width:350px){.site-header nav a:first-child{display:none}.topic-index-hero h1,.topic-detail-hero h1{font-size:38px}}
