@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap');
:root{color-scheme:dark;--bg:#0c0c0c;--panel:#151515;--panel-2:#1b1b1b;--text:#f3f0eb;--muted:#a5a19b;--orange:#FF7900;--line:#35322f;--focus:#ffd1ad;--max:1160px;--mono:'IBM Plex Mono',monospace;--sans:'Archivo',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 var(--sans)}
a{color:inherit}a:hover{color:var(--orange)}
:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.skip-link{position:absolute;left:1rem;top:-5rem;background:var(--orange);color:#111;padding:.7rem 1rem;z-index:20}
.skip-link:focus{top:1rem}
.site-header{min-height:82px;padding:1.1rem max(5vw,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:#0c0c0cf2;backdrop-filter:blur(14px);z-index:10}
.brand{display:inline-flex;align-items:center;text-decoration:none;font:800 .96rem var(--sans);letter-spacing:.12em;line-height:1.2}
.brand small{display:block;color:var(--muted);font:500 .62rem var(--mono);letter-spacing:.17em;margin-top:.35rem}
nav{display:flex;align-items:center;gap:1.5rem;font:500 .8rem var(--mono);letter-spacing:.03em}
nav a{text-decoration:none;color:#d0ccc6}nav a:hover{color:var(--orange)}
.nav-cta{border:1px solid var(--orange);padding:.55rem .9rem;color:var(--orange)}
.hero,.section,footer{max-width:var(--max);margin:auto;padding-left:5vw;padding-right:5vw}
.hero{min-height:570px;display:grid;grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:3rem;padding-top:5rem;padding-bottom:5rem;border-bottom:1px solid var(--line)}
.hero-copy{max-width:850px}
.hero-index,.eyebrow{font:500 .7rem var(--mono);color:var(--orange);letter-spacing:.14em;text-transform:uppercase;margin:0 0 1.1rem}
.hero h1,h2,h3{font-family:var(--sans);line-height:1.04}
.hero h1{font-size:clamp(4rem,10vw,8.5rem);font-weight:800;letter-spacing:-.085em;line-height:.91;margin:.2rem 0 1.2rem;max-width:900px;overflow-wrap:anywhere}
.hero-tagline{font-size:clamp(1.45rem,3vw,2.15rem);font-weight:600;letter-spacing:-.045em;color:var(--orange);margin:.4rem 0 1rem}
.hero-bio{font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.7;color:#c8c3bc;max-width:650px}
.chips{display:flex;flex-wrap:wrap;gap:.55rem;margin:1.7rem 0}
.chips span{border:1px solid #48433e;padding:.35rem .7rem;font:500 .68rem var(--mono);letter-spacing:.04em;text-transform:uppercase;color:#d8d2ca}
.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.8rem}
.button{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:.75rem 1.1rem;text-decoration:none;font:600 .78rem var(--mono);letter-spacing:.02em;text-transform:uppercase;transition:background .18s ease,border-color .18s ease,color .18s ease}
.primary{background:var(--orange);border:1px solid var(--orange);color:#111}
.primary:hover{background:#ff9133;border-color:#ff9133;color:#111}
.secondary{border:1px solid #625c55;color:var(--text)}.secondary:hover{border-color:var(--orange)}
.hero-side{height:260px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1.1rem;border-left:1px solid var(--line);padding-left:1.5rem}
.side-number{font:500 .8rem var(--mono);color:var(--orange)}
.side-rule{width:42px;height:2px;background:var(--orange)}
.side-label{font:500 .63rem/1.9 var(--mono);letter-spacing:.1em;color:var(--muted)}
.section{padding-top:5.5rem;padding-bottom:5.5rem}
.section-alt{max-width:none;background:#121212;padding-left:max(5vw,calc((100vw - var(--max))/2));padding-right:max(5vw,calc((100vw - var(--max))/2));border-top:1px solid #24211e;border-bottom:1px solid #24211e}
.section-heading{margin-bottom:2.2rem}
.section-heading h2,.contact-panel h2{font-size:clamp(2.2rem,5vw,4rem);font-weight:700;letter-spacing:-.07em;margin:.2rem 0 .7rem}
.muted{color:var(--muted)}
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem}
.large-copy{font-size:clamp(1.45rem,3vw,2.25rem);font-weight:500;line-height:1.4;letter-spacing:-.045em;max-width:680px;margin:0}
.info-panel,.pillar-card,.partner-card{background:var(--panel);border:1px solid var(--line);padding:1.5rem}
.info-panel h3,.history-wrap h3{font-size:1.05rem;margin:0 0 1rem;letter-spacing:-.02em}
.link-list{display:flex;flex-wrap:wrap;gap:.8rem 1rem}
.link-list a{color:var(--orange);font:500 .8rem var(--mono);text-decoration:none}.link-list a:hover{text-decoration:underline}
.info-panel .muted{font-size:.85rem;margin-bottom:0}
.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.pillar-card{background:var(--bg);border:0;min-height:190px;position:relative;padding:1.5rem}
.pillar-card:before{content:"";display:block;width:28px;height:3px;background:var(--orange);margin-bottom:1.4rem}
.pillar-card h3{font-size:1.2rem;letter-spacing:-.04em;margin:.2rem 0 .7rem}
.pillar-card p,.partner-card p{color:var(--muted);font-size:.92rem;margin:0}
.metrics-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem}
.month-label{display:grid;gap:.35rem;font:500 .7rem var(--mono);color:var(--muted);min-width:190px;text-transform:uppercase}
select,input,textarea{font:inherit;color:var(--text);background:#111;border:1px solid #514b45;padding:.7rem;min-height:44px;border-radius:0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.stat-card{background:var(--bg);padding:1.35rem;min-height:125px}
.stat-card strong{display:block;color:var(--orange);font:700 clamp(1.7rem,4vw,2.7rem)/1.2 var(--sans);letter-spacing:-.06em;overflow-wrap:anywhere}
.stat-card span{display:block;color:var(--muted);font:500 .68rem var(--mono);letter-spacing:.03em;margin-top:.65rem}
.metric-note{color:var(--muted);font-size:.9rem;margin-top:1rem}
.history-wrap{margin-top:2.5rem}.history-list{display:flex;flex-wrap:wrap;gap:.6rem}
.history-list button{background:transparent;border:1px solid #514b45;color:var(--text);padding:.55rem .8rem;font:500 .7rem var(--mono);cursor:pointer}
.history-list button[aria-pressed=true]{border-color:var(--orange);color:var(--orange)}
.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.partner-card{background:var(--bg);border:0;min-height:150px}
.partner-card h3{font-size:1.25rem;letter-spacing:-.04em;margin:.3rem 0 .55rem}
.partner-type{font:500 .65rem var(--mono);letter-spacing:.08em;color:var(--orange);text-transform:uppercase}
.partner-card a{display:inline-block;color:var(--orange);font:500 .7rem var(--mono);margin-top:1rem}
.contact-panel{margin-top:3rem;background:#17110c;border:1px solid #63350f;padding:2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.contact-panel h2{font-size:clamp(1.8rem,3.5vw,3rem);max-width:650px}
.contact-panel p{margin:.4rem 0}
footer{border-top:1px solid var(--line);padding-top:1.5rem;padding-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
footer p,footer>a:last-child{font:500 .68rem var(--mono);color:var(--muted)}
footer>a:last-child{color:var(--orange);text-decoration:none}
.admin-shell{max-width:950px;margin:3rem auto;padding:0 1.2rem 4rem}
.admin-top{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.admin-top h1{font:700 2rem var(--sans);letter-spacing:-.05em}
.admin-card{background:var(--panel);border:1px solid var(--line);padding:1.4rem;margin:1.2rem 0}
.admin-card h2{font:600 1.25rem var(--sans);margin-top:0}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.field{display:grid;gap:.35rem}.field label{font:500 .75rem var(--mono);color:#ddd}
.field input,.field textarea{width:100%}.field.full{grid-column:1/-1}
.admin-actions{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin-top:1rem}
.admin-button{border:1px solid #666;background:#222;color:#fff;padding:.65rem 1rem;min-height:44px;font:600 .8rem var(--mono);cursor:pointer}
.admin-button.primary{background:var(--orange);border-color:var(--orange);color:#111}
.status{min-height:1.5rem;color:var(--orange);font:500 .75rem var(--mono)}
.table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.85rem}
.admin-table th,.admin-table td{text-align:left;padding:.65rem;border-bottom:1px solid var(--line);white-space:nowrap}
.admin-table th{color:var(--muted);font:500 .68rem var(--mono)}
.danger{color:#ff9b9b}.admin-note{color:var(--muted);font-size:.85rem}
@media(max-width:760px){
 .site-header{align-items:flex-start;flex-direction:column;padding:1rem 5vw;position:static}
 nav{width:100%;overflow-x:auto;gap:1rem;padding:.25rem 0 .4rem}nav a{white-space:nowrap}
 .hero{grid-template-columns:1fr;gap:2rem;padding-top:3.5rem;padding-bottom:3.5rem;min-height:unset}
 .hero h1{font-size:clamp(3.7rem,15vw,6.5rem)}
 .hero-side{height:auto;display:grid;grid-template-columns:auto 42px 1fr;align-items:center;border-left:0;border-top:1px solid var(--line);padding:1rem 0 0;gap:1rem}
 .side-rule{width:100%}.side-label br{display:none}
 .about-grid{grid-template-columns:1fr;gap:1.5rem}
 .pillar-grid,.partner-grid{grid-template-columns:1fr}
 .stats-grid{grid-template-columns:repeat(2,1fr)}
 .metrics-heading{align-items:flex-start;flex-direction:column}.month-label{width:100%}
 .contact-panel{align-items:flex-start;flex-direction:column}
 .section{padding-top:3.5rem;padding-bottom:3.5rem}
 .form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}
}
@media(max-width:380px){.stats-grid{grid-template-columns:1fr}.hero h1{font-size:3.3rem}.hero-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Social media bar */
.social-section{padding-top:4.5rem;padding-bottom:4.5rem}
.social-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.social-link{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:.9rem;align-items:center;min-height:105px;padding:1.15rem 1.25rem;background:var(--bg);text-decoration:none;transition:background .18s ease}
.social-link:hover{background:#19130e;color:var(--text)}
.social-index{grid-row:1/3;color:var(--orange);font:500 .65rem var(--mono);align-self:start;padding-top:.25rem}
.social-name{font:700 1.1rem var(--sans);letter-spacing:-.03em}
.social-handle{font:500 .67rem var(--mono);color:var(--muted);overflow-wrap:anywhere}
.social-arrow{grid-column:3;grid-row:1/3;color:var(--orange);font-size:1.2rem}
@media(max-width:760px){.social-bar{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.social-bar{grid-template-columns:1fr}}

/* Admin dashboard refinement */
.admin-shell{max-width:1080px;padding:2.5rem 1.5rem 5rem}
.admin-top{padding:1.25rem 0 1.5rem;border-bottom:1px solid var(--line)}
.admin-top h1{font-size:clamp(2rem,5vw,3.2rem);margin:.25rem 0}
.admin-top .muted{margin:.35rem 0}
.admin-card{padding:clamp(1.1rem,3vw,2rem);margin:1.25rem 0 1.75rem;border-radius:4px}
.admin-card>h2,.admin-card-heading h2{font-size:1.45rem;margin:.1rem 0 .4rem;letter-spacing:-.04em}
.admin-card-heading{margin-bottom:1.4rem}
.admin-fieldset{border:1px solid var(--line);padding:1.2rem;margin:0 0 1rem;min-width:0;background:#101010}
.admin-fieldset legend{padding:0 .55rem;color:var(--orange);font:600 .7rem var(--mono);letter-spacing:.1em;text-transform:uppercase}
.admin-fieldset .form-grid{gap:1rem}
.admin-editor>.admin-actions{position:sticky;bottom:0;padding:1rem;background:#111e;border-top:1px solid var(--line);backdrop-filter:blur(10px);z-index:2}
.admin-editor textarea{resize:vertical;min-height:88px}
.admin-card .admin-note{line-height:1.6}
.admin-table td{max-width:300px;overflow-wrap:anywhere;white-space:normal}
.admin-table th{white-space:nowrap}
.admin-button{transition:background .15s ease,border-color .15s ease}
.admin-button:hover{border-color:var(--orange)}
@media(max-width:640px){
 .admin-shell{padding:1.2rem 1rem 3rem}
 .admin-top{align-items:flex-start;flex-direction:column}
 .admin-top .button{width:100%}
 .admin-fieldset{padding:.9rem}
 .admin-editor>.admin-actions .admin-button{width:100%}
}
