/* V8.9: public contributor directory. No changes to editorial or security flows. */
.author-main{min-height:65vh;font-family:'DM Sans',Arial,sans-serif;color:#183b2e;background:#f8f7ef}
.gk-author-wrap{max-width:1180px;margin-inline:auto;padding-inline:28px}
.gk-author-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(116deg,#103a2e,#124b3b 70%,#246e4c);color:#fff;padding:75px 0 85px}
.gk-author-hero .gk-author-wrap{position:relative;z-index:1}
.gk-author-hero h1{font:700 clamp(36px,5.2vw,68px)/1.09 'DM Sans',Arial,sans-serif;letter-spacing:-.055em;margin:14px 0;max-width:800px}
.gk-author-hero p:not(.gk-author-eyebrow){font-size:clamp(15px,1.6vw,19px);max-width:610px;line-height:1.7;color:#deede3;margin:0}
.gk-author-eyebrow,.gk-author-kicker{font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#376d4e}
.gk-author-eyebrow{color:#dafa71}
.gk-author-hero-decor{position:absolute;width:420px;height:420px;right:-90px;top:-140px;opacity:.23;border:1px solid #dafa71;border-radius:50%;pointer-events:none}
.gk-author-hero-decor span{position:absolute;border:1px solid #dafa71;border-radius:50%;inset:35px}
.gk-author-hero-decor span:nth-child(2){inset:90px}.gk-author-hero-decor span:nth-child(3){inset:155px;background:#dafa71;opacity:.35}
.gk-author-directory{padding-top:56px;padding-bottom:85px}
.gk-author-directory-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}
.gk-author-directory-head h2,.gk-author-section-title h2{font:750 clamp(27px,3vw,39px)/1.15 'DM Sans',Arial,sans-serif;letter-spacing:-.04em;margin:6px 0}
.gk-author-count{margin:4px 0;color:#63766a;font-size:13px}
.gk-author-search-label{display:grid;gap:6px;color:#315a43;font-size:12px;font-weight:750;min-width:min(100%,280px)}
.gk-author-search-label input{padding:12px 14px;border:1px solid #cbd9cd;border-radius:9px;background:#fff;font:inherit;font-size:15px;color:#173d30;min-height:45px}
.gk-author-search-label input:focus-visible,.gk-author-link:focus-visible,.gk-author-card a:focus-visible,.gk-author-profile a:focus-visible{outline:3px solid #7bad46;outline-offset:3px}
.gk-author-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.gk-author-card{background:#fffefa;border:1px solid #dce6d9;border-radius:16px;overflow:hidden;padding:25px;box-shadow:0 9px 28px rgba(24,53,45,.055);min-width:0;transition:transform .2s ease,box-shadow .2s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.gk-author-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(24,53,45,.11)}}
.gk-author-portrait-link{display:inline-block;border-radius:50%;margin-bottom:18px}
.gk-author-photo{display:grid;place-items:center;width:105px;height:105px;border-radius:50%;object-fit:cover;background:#dfeade;color:#275e40;font-size:34px;font-weight:800;border:3px solid #edf3e9}
.gk-author-card h2{font-size:21px;letter-spacing:-.035em;line-height:1.25;margin:7px 0 4px}
.gk-author-card h2 a{text-decoration:none;color:#173f31}.gk-author-card h2 a:hover,.gk-author-link:hover{color:#34744b}
.gk-author-role{font-size:13px;font-weight:650;color:#4b7058;margin:0 0 13px;text-transform:capitalize}
.gk-author-bio{font-size:14px;color:#63766a;line-height:1.7;margin:0 0 17px}
.gk-author-link{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:#14543a}
.gk-author-empty{grid-column:1/-1;border:1px dashed #bacfbd;border-radius:12px;padding:40px 25px;background:#f2f6ec}
.gk-author-empty h3{margin:0 0 6px}.gk-author-empty p{color:#576f60;margin:0}
.gk-author-empty-page{padding-top:80px;padding-bottom:100px;min-height:55vh}
.gk-author-empty-page a{color:#155d3e;text-decoration:underline}
.gk-author-profile-wrap{padding-top:35px;padding-bottom:85px}
.gk-author-back{display:inline-block;font-size:13px;font-weight:750;color:#2c704b;margin-bottom:24px}
.gk-author-profile{display:grid;grid-template-columns:180px minmax(0,1fr);gap:36px;align-items:start;border-radius:20px;background:linear-gradient(120deg,#fffefa,#eef4e9);border:1px solid #dce6d9;padding:40px}
.gk-author-photo-large{width:165px;height:165px;font-size:48px}
.gk-author-profile h1{font:750 clamp(34px,4.5vw,55px)/1.08 'DM Sans',Arial,sans-serif;letter-spacing:-.05em;margin:9px 0 10px}
.gk-author-profile-role{font-size:16px;color:#376d4e;font-weight:700;margin:0 0 20px;text-transform:capitalize}
.gk-author-profile-bio{font-size:16px;line-height:1.8;white-space:pre-line;color:#425b4e;max-width:730px}
.gk-author-website{display:inline-block;margin-top:20px;border:1px solid #26704a;padding:10px 14px;border-radius:8px;color:#195a3b;font-weight:750;font-size:13px}
.gk-author-articles{margin-top:55px}.gk-author-section-title{border-bottom:1px solid #cfdccd;padding-bottom:15px;margin-bottom:21px}
.gk-author-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.gk-author-story{background:#fffefa;border:1px solid #dce6d9;border-radius:12px;padding:23px;min-width:0}
.gk-author-story-topic{text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800;color:#35704c;margin:0 0 10px}
.gk-author-story h3{font:700 19px/1.3 'DM Sans',Arial,sans-serif;margin:0 0 10px}.gk-author-story h3 a{color:#173e31}
.gk-author-story>p:not(.gk-author-story-topic){color:#63776a;font-size:13px;line-height:1.65}.gk-author-story time{font-size:12px;color:#617468}
.author-loading{padding:90px 28px;text-align:center;color:#4c6e5b}
@media(max-width:900px){.gk-author-grid,.gk-author-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gk-author-profile{grid-template-columns:140px minmax(0,1fr);padding:30px}.gk-author-photo-large{width:135px;height:135px}}
@media(max-width:620px){.gk-author-wrap{padding-inline:18px}.gk-author-hero{padding:55px 0 64px}.gk-author-hero-decor{width:260px;height:260px;right:-140px;top:-100px}.gk-author-directory{padding-top:35px;padding-bottom:55px}.gk-author-directory-head{display:block}.gk-author-search-label{margin-top:18px;width:100%}.gk-author-grid,.gk-author-story-grid{grid-template-columns:1fr;gap:14px}.gk-author-card{padding:21px}.gk-author-profile-wrap{padding-top:25px}.gk-author-profile{grid-template-columns:1fr;padding:23px;gap:14px}.gk-author-photo-large{width:120px;height:120px}.gk-author-articles{margin-top:36px}}
@media(prefers-reduced-motion:reduce){.gk-author-card{transition:none}}
