@import url("https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=IBM+Plex+Mono:wght@400;500;600&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#08080a;--surface:#111114;--card:#16161a;--card-hover:#1c1c21;--border:#25252b;--border-subtle:#1c1c22;--text:#e4e2dd;--text-2:#9a9a9f;--text-3:#5c5c63;--gold:#e8b931;--gold-dim:#c49a1e;--gold-glow:rgba(232,185,49,0.12);--gold-glow-strong:rgba(232,185,49,0.25);--open:#34d399;--closing:#fbbf24;--closed:#f87171;--awarded:#818cf8;--danger:#f87171;--success:#34d399;--type-grant:#34d399;--type-rfp:#60a5fa;--type-bounty:#fbbf24;--type-fellowship:#c084fc;--type-hackathon:#fb923c;--font-display:"Instrument Serif",Georgia,serif;--font-mono:"IBM Plex Mono","SF Mono","Fira Code",monospace;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--radius:4px;--radius-lg:8px;--max-width:1100px;--transition:0.2s cubic-bezier(0.4,0,0.2,1);color-scheme:dark}@media (prefers-color-scheme:light){:root{--bg:#f6f5f1;--surface:#eceae4;--card:#ffffff;--card-hover:#faf9f6;--border:#dbd8d0;--border-subtle:#e8e5dd;--text:#1a1916;--text-2:#6b6860;--text-3:#9e9b93;--gold:#a67c00;--gold-dim:#8a6600;--gold-glow:rgba(166,124,0,0.08);--gold-glow-strong:rgba(166,124,0,0.15);--open:#16a34a;--closing:#d97706;--closed:#dc2626;--awarded:#6366f1;--danger:#dc2626;--success:#16a34a;--type-grant:#16a34a;--type-rfp:#2563eb;--type-bounty:#d97706;--type-fellowship:#9333ea;--type-hackathon:#ea580c;color-scheme:light}}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-mono);font-size:.875rem;line-height:1.65;background:var(--bg);color:var(--text);min-height:100vh}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px}a{color:var(--gold);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--text)}img{max-width:100%;display:block}::selection{background:var(--gold);color:var(--bg)}h1,h2,h3{font-family:var(--font-display);font-weight:400;letter-spacing:-.01em;line-height:1.15}h1{font-size:clamp(2rem,5vw,3.25rem)}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:1.35rem}input,select,textarea{width:100%;padding:.6rem .75rem;font-family:var(--font-mono);font-size:.8125rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition),box-shadow var(--transition);-webkit-appearance:none;-moz-appearance:none;appearance:none}select{background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%239a9a9f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow),0 0 20px var(--gold-glow)}input::placeholder,textarea::placeholder{color:var(--text-3)}label{display:block;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:var(--space-lg)}label input,label select,label textarea{margin-top:var(--space-xs)}.btn,button{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.5rem;font-family:var(--font-mono);font-size:.8rem;font-weight:500;letter-spacing:.02em;border:1px solid var(--gold);border-radius:var(--radius);background:transparent;color:var(--gold);cursor:pointer;transition:all var(--transition);text-decoration:none}.btn:hover,button:hover{background:var(--gold);color:var(--bg);text-decoration:none}button:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-solid{background:var(--gold);color:var(--bg)}.btn-solid:hover{background:var(--gold-dim);border-color:var(--gold-dim)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:var(--bg);border-bottom:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:color-mix(in srgb,var(--bg) 85%,transparent)}.site-header nav{gap:var(--space-lg);max-width:var(--max-width);margin:0 auto;padding:var(--space-md) var(--space-xl);height:3.5rem}.logo,.site-header nav{display:flex;align-items:center}.logo{gap:.6rem;font-family:var(--font-mono);font-weight:600;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text)!important;margin-right:auto}.logo:before{content:"";display:inline-block;width:8px;height:8px;background:var(--gold);border-radius:1px;transform:rotate(45deg)}.logo:hover{text-decoration:none!important}.site-header nav a:not(.logo){font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);transition:color var(--transition)}.site-header nav a:not(.logo):hover{color:var(--text);text-decoration:none}.site-main{padding:var(--space-xl);min-height:calc(100vh - 3.5rem - 4rem)}.site-footer,.site-main{max-width:var(--max-width);margin:0 auto}.site-footer{border-top:1px solid var(--border-subtle);padding:var(--space-lg) var(--space-xl)}.site-footer-inner{display:flex;align-items:center;justify-content:space-between;font-size:.7rem;color:var(--text-3);letter-spacing:.04em;text-transform:uppercase}.site-footer-links{display:flex;gap:var(--space-lg)}.site-footer a{color:var(--text-3)}.site-footer a:hover{color:var(--gold)}.hero{margin-bottom:var(--space-2xl)}.hero h1{font-style:italic;color:var(--text);margin-bottom:var(--space-sm)}.hero h1 em{font-style:normal;color:var(--gold)}.hero-sub{font-size:.8rem;color:var(--text-3);max-width:520px}.search-bar{display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--space-sm);margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border-subtle)}.search-bar input[type=search]{flex:1 1;min-width:200px;font-size:.75rem}.search-bar button{padding:.6rem 1.25rem;white-space:nowrap;font-size:.75rem}.filters{display:contents}.filters input,.filters select{width:auto;min-width:130px;font-size:.75rem}.result-meta{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-md);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.feed{display:flex;flex-direction:column;gap:1px}.feed-item{position:relative;display:grid;grid-template-columns:4px 1fr auto;grid-gap:0 var(--space-lg);gap:0 var(--space-lg);padding:var(--space-lg);background:var(--card);border:1px solid var(--border-subtle);border-radius:var(--radius);transition:all var(--transition);animation:feed-in .4s ease both}.feed-item:hover{background:var(--card-hover);border-color:var(--border)}@keyframes feed-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.feed-item:first-child{animation-delay:0s}.feed-item:nth-child(2){animation-delay:.03s}.feed-item:nth-child(3){animation-delay:.06s}.feed-item:nth-child(4){animation-delay:.09s}.feed-item:nth-child(5){animation-delay:.12s}.feed-item:nth-child(6){animation-delay:.15s}.feed-item:nth-child(7){animation-delay:.18s}.feed-item:nth-child(8){animation-delay:.21s}.feed-item:nth-child(9){animation-delay:.24s}.feed-item:nth-child(10){animation-delay:.27s}.feed-item+.feed-item{margin-top:var(--space-sm)}.feed-accent{width:4px;border-radius:2px;align-self:stretch}.feed-accent[data-type=grant]{background:var(--type-grant)}.feed-accent[data-type=rfp]{background:var(--type-rfp)}.feed-accent[data-type=bounty]{background:var(--type-bounty)}.feed-accent[data-type=fellowship]{background:var(--type-fellowship)}.feed-accent[data-type=hackathon]{background:var(--type-hackathon)}.feed-body{min-width:0}.feed-title{font-family:var(--font-display);font-size:1.15rem;line-height:1.3;margin-bottom:.35rem}.feed-title a{color:var(--text)}.feed-title a:hover{color:var(--gold);text-decoration:none}.feed-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.feed-summary{font-size:.8rem;color:var(--text-2);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.feed-aside{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;font-size:.75rem;color:var(--text-3);white-space:nowrap;gap:var(--space-sm)}.feed-budget{font-family:var(--font-mono);font-weight:600;font-size:.9rem;color:var(--text)}.feed-date{font-size:.7rem}.tag{display:inline-block;padding:.15rem .45rem;font-family:var(--font-mono);font-size:.65rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;border-radius:2px;border:1px solid var(--border);color:var(--text-2);background:transparent}.tag-type{border-color:transparent}.tag-type[data-type=grant]{background:color-mix(in srgb,var(--type-grant) 15%,transparent);color:var(--type-grant)}.tag-type[data-type=rfp]{background:color-mix(in srgb,var(--type-rfp) 15%,transparent);color:var(--type-rfp)}.tag-type[data-type=bounty]{background:color-mix(in srgb,var(--type-bounty) 15%,transparent);color:var(--type-bounty)}.tag-type[data-type=fellowship]{background:color-mix(in srgb,var(--type-fellowship) 15%,transparent);color:var(--type-fellowship)}.tag-type[data-type=hackathon]{background:color-mix(in srgb,var(--type-hackathon) 15%,transparent);color:var(--type-hackathon)}.tag-status{border-color:transparent}.tag-status[data-status=open]{background:color-mix(in srgb,var(--open) 12%,transparent);color:var(--open)}.tag-status[data-status=closing_soon]{background:color-mix(in srgb,var(--closing) 12%,transparent);color:var(--closing)}.tag-status[data-status=closed]{background:color-mix(in srgb,var(--closed) 12%,transparent);color:var(--closed)}.tag-status[data-status=awarded]{background:color-mix(in srgb,var(--awarded) 12%,transparent);color:var(--awarded)}.pagination{display:flex;gap:var(--space-sm);align-items:center;justify-content:center;margin-top:var(--space-xl);font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.pagination a{padding:.4rem .85rem;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-2);transition:all var(--transition)}.pagination a:hover{border-color:var(--gold);color:var(--gold);text-decoration:none}.pagination .current{padding:.4rem .85rem;color:var(--text-3)}.empty{text-align:center;padding:var(--space-2xl) var(--space-md)}.empty h2{font-style:italic;color:var(--text-2);margin-bottom:var(--space-sm)}.empty p{color:var(--text-3);font-size:.8rem}.detail-back{display:inline-block;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:var(--space-lg);transition:color var(--transition)}.detail-back:hover{color:var(--gold);text-decoration:none}.detail-header{margin-bottom:var(--space-xl);padding-bottom:var(--space-xl);border-bottom:1px solid var(--border-subtle)}.detail-header h1{font-style:italic;margin-bottom:var(--space-md);max-width:700px}.detail-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:var(--space-md)}.detail-budget-row{display:flex;align-items:center;gap:var(--space-lg);flex-wrap:wrap}.detail-budget-amount{font-family:var(--font-display);font-size:1.75rem;color:var(--gold)}.detail-deadline{font-size:.75rem;color:var(--text-2)}.detail-body{display:grid;grid-template-columns:1fr 280px;grid-gap:var(--space-2xl);gap:var(--space-2xl)}.detail-content{white-space:pre-wrap;line-height:1.8;font-size:.85rem;color:var(--text-2)}.detail-content h2{color:var(--text);margin:var(--space-xl) 0 var(--space-md);font-size:1.5rem;font-style:italic}.detail-sidebar{display:flex;flex-direction:column;gap:var(--space-lg)}.detail-sidebar-section h3{font-size:.65rem;font-family:var(--font-mono);font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:var(--space-sm);padding-bottom:var(--space-xs);border-bottom:1px solid var(--border-subtle)}.detail-sidebar-tags{display:flex;flex-wrap:wrap;gap:.3rem}.detail-sidebar-value{font-size:.8rem;color:var(--text-2);word-break:break-all}.detail-sidebar-value a{font-size:.75rem}.detail-apply{margin-top:var(--space-lg)}.detail-apply .btn-solid{width:100%;justify-content:center;padding:.8rem;font-size:.8rem}.submit-layout{max-width:620px}.submit-layout h1{font-style:italic;margin-bottom:var(--space-sm)}.submit-intro{color:var(--text-3);font-size:.8rem;margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border-subtle)}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 var(--space-md);gap:0 var(--space-md)}.form-full{grid-column:1/-1}.form-error{padding:var(--space-md);background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);border-radius:var(--radius);color:var(--danger);font-size:.8rem;margin-bottom:var(--space-lg)}.form-submit-row{grid-column:1/-1;padding-top:var(--space-md);border-top:1px solid var(--border-subtle);margin-top:var(--space-sm)}.success-state{text-align:center;padding:var(--space-2xl) var(--space-md)}.success-state h1{font-style:italic;color:var(--success);margin-bottom:var(--space-sm)}.success-state p{color:var(--text-2);font-size:.85rem;margin-bottom:var(--space-lg)}.error-view{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-2xl) var(--space-md);min-height:50vh}.error-code{font-family:var(--font-display);font-size:clamp(5rem,12vw,10rem);font-style:italic;line-height:1;color:var(--border);margin-bottom:var(--space-md)}.error-view h1{font-style:italic;font-size:1.75rem;margin-bottom:var(--space-sm)}.error-view p{color:var(--text-3);font-size:.85rem;margin-bottom:var(--space-xl);max-width:400px}@media (max-width:768px){.site-main{padding:var(--space-lg) var(--space-md)}.site-header nav{padding:var(--space-md)}.search-bar{flex-direction:column}.search-bar input[type=search]{min-width:0}.filters input,.filters select{width:100%;min-width:0}.feed-item{grid-template-columns:4px 1fr;gap:0 var(--space-md)}.feed-aside{grid-column:2;flex-direction:row;align-items:center;justify-content:flex-start;margin-top:var(--space-sm)}.detail-body{gap:var(--space-xl)}.detail-body,.form-grid{grid-template-columns:1fr}.site-footer-inner{flex-direction:column;gap:var(--space-sm)}h1{font-size:1.75rem}}@media (max-width:480px){.hero h1{font-size:1.65rem}.detail-budget-amount{font-size:1.35rem}}