@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500;700&display=swap');

:root{
  --navy:#0E1A33;
  --navy-2:#152444;
  --volt:#F5C400;
  --volt-2:#FFDA33;
  --volt-dark:#8A6800;
  --volt-tint:#FFF6D6;
  --arc:#2F6FED;
  --paper:#FFFDF6;
  --graphite:#2C303A;
  --steel:#75705A;
  --line:#EDE3C0;
  --radius:10px;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Inter', sans-serif;
  background:var(--paper);
  color:var(--graphite);
  line-height:1.6;
}
h1,h2,h3,h4{font-family:'Space Grotesk', sans-serif; font-weight:700; color:var(--navy); line-height:1.15;}
.mono{font-family:'JetBrains Mono', monospace;}
a{color:inherit;}
img{max-width:100%; display:block;}
.wrap{max-width:1120px; margin:0 auto; padding:0 28px;}
.eyebrow{
  font-family:'JetBrains Mono', monospace;
  font-size:12px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--volt-dark); font-weight:700;
  display:flex; align-items:center; gap:8px; margin-bottom:14px;
}
.eyebrow::before{content:""; width:16px; height:2px; background:var(--volt-dark); display:inline-block;}
.eyebrow.on-dark{color:var(--volt);}
.eyebrow.on-dark::before{background:var(--volt);}

/* ===== NAV ===== */
header{
  position:sticky; top:0; z-index:50;
  background:rgba(14,26,51,0.97);
  border-bottom:3px solid var(--volt);
}
nav{max-width:1120px; margin:0 auto; padding:14px 28px; display:flex; align-items:center; justify-content:space-between;}
.brand{display:flex; align-items:center; gap:10px; text-decoration:none;}
.brand img{height:34px; width:auto;}
.brand-text{color:#fff; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:16px;}
.brand-text span{color:var(--volt);}
.navlinks{display:flex; gap:24px; list-style:none;}
.navlinks a{color:#C9CEDC; text-decoration:none; font-size:14px; font-weight:500; transition:color .15s; padding-bottom:2px;}
.navlinks a:hover, .navlinks a.active{color:var(--volt); border-bottom:2px solid var(--volt);}
.navtoggle{display:none; background:none; border:none; color:#fff; font-size:24px; cursor:pointer;}
@media(max-width:820px){
  .navlinks{position:absolute; top:64px; left:0; right:0; background:var(--navy); flex-direction:column; gap:0; display:none; border-bottom:3px solid var(--volt);}
  .navlinks.open{display:flex;}
  .navlinks a{display:block; padding:14px 28px; border-top:1px solid rgba(255,255,255,0.08);}
  .navtoggle{display:block;}
}

/* ===== PAGE HERO (for interior pages) ===== */
.pagehero{
  background:var(--volt);
  padding:56px 0 40px;
  border-bottom:1px solid var(--line);
}
.pagehero .eyebrow{color:var(--navy); opacity:.7;}
.pagehero .eyebrow::before{background:var(--navy);}
.pagehero h1{font-size:clamp(30px,4.4vw,46px); color:var(--navy);}
.pagehero p{color:#4A3F00; max-width:56ch; margin-top:12px; font-size:15.5px;}

.btn{
  display:inline-flex; align-items:center; gap:8px; padding:13px 24px; border-radius:8px;
  font-weight:600; font-size:14px; text-decoration:none; cursor:pointer; border:1px solid transparent;
  transition:transform .15s, background .15s, border-color .15s;
}
.btn:hover{transform:translateY(-1px);}
.btn-navy{background:var(--navy); color:#fff;}
.btn-navy:hover{background:var(--navy-2);}
.btn-ghost-navy{border-color:rgba(14,26,51,0.35); color:var(--navy);}
.btn-ghost-navy:hover{border-color:var(--navy); background:rgba(14,26,51,0.06);}
.btn-ghost{border-color:rgba(255,255,255,0.3); color:#fff;}
.btn-ghost:hover{border-color:var(--volt); color:var(--volt);}

/* ===== ZIGZAG DIVIDER ===== */
.bolt-divider{
  height:20px; width:100%; background-color:var(--paper);
  clip-path:polygon(0% 0%,4% 100%,8% 0%,12% 100%,16% 0%,20% 100%,24% 0%,28% 100%,32% 0%,36% 100%,40% 0%,44% 100%,48% 0%,52% 100%,56% 0%,60% 100%,64% 0%,68% 100%,72% 0%,76% 100%,80% 0%,84% 100%,88% 0%,92% 100%,96% 0%,100% 100%,100% 0%,0% 0%);
}
.bolt-divider.flip{transform:rotate(180deg);}
.bolt-divider.on-volt{background-color:var(--volt);}
.bolt-divider.on-navy{background-color:var(--navy);}

section{padding:68px 0;}
.section-head{max-width:640px; margin-bottom:40px;}
.section-head h2{font-size:clamp(24px,3.2vw,34px); margin-bottom:12px;}
.section-head p{color:var(--steel); font-size:15.5px;}

/* Cards / grids reused across pages */
.card{background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:18px;}
.value-card .k{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--volt-dark); font-weight:700; margin-bottom:6px;}
.value-card h4{font-size:15px; margin-bottom:6px;}
.value-card p{font-size:13.5px; color:var(--steel); margin:0;}

.goals-box{background:var(--navy); color:#fff; border-radius:14px; padding:28px 30px; margin-top:26px;}
.goals-box ul{list-style:none; margin-top:10px;}
.goals-box li{display:flex; gap:10px; padding:9px 0; border-top:1px solid rgba(255,255,255,0.08); font-size:14.5px; color:#D9DCE6;}
.goals-box li:first-child{border-top:none;}
.goals-box li::before{content:"→"; color:var(--volt); font-weight:700;}

.team-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:18px;}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.team-grid{grid-template-columns:1fr;}}
.member{background:#fff; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; transition:transform .15s, box-shadow .15s;}
.member:hover{transform:translateY(-4px); box-shadow:0 14px 30px -18px rgba(14,26,51,0.25);}
.member-photo{aspect-ratio:1/1; background:linear-gradient(160deg,var(--volt),var(--volt-2)); display:flex; align-items:center; justify-content:center; position:relative;}
.member-photo .init{font-family:'Space Grotesk'; font-size:34px; color:var(--navy); font-weight:700; opacity:.8;}
.member-photo .role-tag{position:absolute; top:10px; right:10px; background:var(--navy); color:var(--volt); font-family:'JetBrains Mono'; font-size:10px; font-weight:700; padding:3px 7px; border-radius:5px;}
.member-body{padding:14px 15px 18px;}
.member-body h4{font-size:15px; margin-bottom:2px;}
.member-body .role{font-size:12px; color:var(--arc); font-weight:600; margin-bottom:8px;}
.member-body p{font-size:12.5px; color:var(--steel);}

.robot-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:48px; align-items:center;}
@media(max-width:880px){.robot-grid{grid-template-columns:1fr;}}
.robot-photo{border-radius:14px; overflow:hidden; border:1px solid var(--line); background:#fff;}
.robot-photo img{width:100%; object-fit:cover;}
.spec-list{margin-top:20px; border-top:1px solid var(--line);}
.spec-row{display:flex; justify-content:space-between; padding:12px 0; border-bottom:1px solid var(--line); font-size:14px;}
.spec-row .k{color:var(--steel);}
.spec-row .v{font-family:'JetBrains Mono'; font-weight:500; color:var(--navy);}
.status-pill{display:inline-flex; align-items:center; gap:7px; background:rgba(14,26,51,0.06); border:1px solid rgba(14,26,51,0.25); color:var(--navy); font-family:'JetBrains Mono'; font-size:12px; font-weight:700; padding:6px 12px; border-radius:999px; margin-bottom:18px;}
.status-pill .dot{width:6px; height:6px; background:var(--navy); border-radius:50%;}

.outreach-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
@media(max-width:820px){.outreach-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.outreach-grid{grid-template-columns:1fr;}}
.op-card{border-radius:12px; overflow:hidden; border:1px solid var(--line); background:#fff;}
.op-card .ph{aspect-ratio:4/3; overflow:hidden;}
.op-card .ph img{width:100%; height:100%; object-fit:cover; transition:transform .3s;}
.op-card:hover .ph img{transform:scale(1.05);}
.op-card .cap{padding:12px 14px;}
.op-card .cap p{font-size:13px; color:var(--steel);}
.impact-row{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:36px;}
@media(max-width:700px){.impact-row{grid-template-columns:1fr 1fr;}}
.impact{background:var(--navy); border-radius:12px; padding:22px; text-align:center;}
.impact .num{font-family:'JetBrains Mono'; font-size:28px; color:var(--volt); font-weight:700;}
.impact .lbl{font-size:12px; color:#B8BECF; margin-top:4px;}

.gallery{column-count:3; column-gap:14px;}
@media(max-width:820px){.gallery{column-count:2;}}
@media(max-width:520px){.gallery{column-count:1;}}
.gallery img{width:100%; border-radius:10px; margin-bottom:14px; border:1px solid var(--line);}
.gallery figure{margin-bottom:14px; break-inside:avoid;}
.gallery figcaption{font-size:12px; color:var(--steel); margin-top:6px;}

.blog-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
@media(max-width:820px){.blog-grid{grid-template-columns:1fr;}}
.post{border:1px solid var(--line); border-radius:12px; padding:20px; background:#fff;}
.post .tag{font-family:'JetBrains Mono'; font-size:10px; color:var(--arc); font-weight:700; letter-spacing:.06em; text-transform:uppercase; margin-bottom:10px; display:block;}
.post h4{font-size:16px; margin-bottom:8px;}
.post-image{display:block; width:100%; aspect-ratio:16/10; object-fit:cover; object-position:center; border-radius:8px; margin:0 0 14px; border:1px solid var(--line);}
.post-image-rankings{aspect-ratio:1/1; object-fit:contain; object-position:center bottom; background:#fff;}
.post p{font-size:13.5px; color:var(--steel); margin-bottom:12px;}
.post .date{font-size:11.5px; color:var(--steel); font-family:'JetBrains Mono';}
.post-empty{border:1px dashed var(--line); border-radius:12px; padding:26px; text-align:center; color:var(--steel); font-size:13.5px; grid-column:1/-1;}

.accomplishment-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
@media(max-width:820px){.accomplishment-grid{grid-template-columns:1fr;}}
.accomplishment-card{background:#fff; border:1px solid var(--line); border-radius:12px; padding:26px 24px;}
.accomplishment-card.highlight{background:var(--navy); border-color:var(--navy);}
.accomplishment-year{font-family:'JetBrains Mono',monospace; color:var(--volt-dark); font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; margin-bottom:14px;}
.highlight .accomplishment-year{color:var(--volt);}
.accomplishment-card h3{font-size:20px; margin-bottom:12px;}
.highlight h3{color:#fff;}
.accomplishment-card p{color:var(--steel); font-size:13.5px;}
.highlight p{color:#C9CEDC;}
.accomplishment-stat{font-family:'Space Grotesk',sans-serif; color:var(--volt); font-size:48px; font-weight:700; line-height:1; margin-top:24px;}
.accomplishment-stat span{font-size:21px;}
.accomplishment-stat small{display:block; color:#C9CEDC; font-family:'Inter',sans-serif; font-size:12px; font-weight:400; line-height:1.4; margin-top:5px;}
.accomplishment-cta{background:var(--navy); padding:48px 0;}
.accomplishment-cta .wrap{display:flex; align-items:center; justify-content:space-between; gap:22px;}
.accomplishment-cta h2{color:#fff; font-size:clamp(24px,3.2vw,34px);}
@media(max-width:560px){.accomplishment-cta .wrap{align-items:flex-start; flex-direction:column;}}

.sponsor-row{display:flex; gap:16px; flex-wrap:wrap;}
.sponsor-slot{flex:1; min-width:150px; height:84px; border:1px dashed rgba(255,255,255,0.3); border-radius:10px; display:flex; align-items:center; justify-content:center; color:#C9CEDC; font-size:12.5px;}

.contact-card{background:var(--navy); color:#fff; border-radius:18px; padding:52px 44px; display:grid; grid-template-columns:1fr 1fr; gap:40px;}
@media(max-width:820px){.contact-card{grid-template-columns:1fr; padding:36px 26px;}}
.contact-card h2{color:#fff;}
.contact-card p{color:#C9CEDC; font-size:14.5px; margin-top:12px;}
.contact-links{list-style:none; margin-top:22px;}
.contact-links li{padding:10px 0; border-top:1px solid rgba(255,255,255,0.1); font-size:14px; display:flex; gap:10px;}
.contact-links li:first-child{border-top:none;}
.contact-links .k{color:#9CA3B8; min-width:80px; font-family:'JetBrains Mono'; font-size:12px;}
.form-card{background:var(--volt); border-radius:12px; padding:26px; color:var(--navy);}
.form-card h4{font-size:15px; margin-bottom:16px; color:var(--navy);}
.form-row{margin-bottom:14px;}
.form-row label{font-size:12.5px; color:#4A3F00; display:block; margin-bottom:6px;}
.form-row input, .form-row select, .form-row textarea{width:100%; border:1px solid rgba(14,26,51,0.25); border-radius:7px; padding:10px 12px; font-size:14px; font-family:'Inter'; background:#fff;}
.form-row textarea{resize:vertical; min-height:70px;}

footer{background:var(--navy); color:#8C93A8; padding:32px 0; border-top:3px solid var(--volt);}
.foot-inner{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; font-size:13px;}
.foot-inner .brand-text{color:#fff;}
.foot-links{display:flex; gap:18px; list-style:none;}
.foot-links a{text-decoration:none; color:#8C93A8; font-size:13px;}
.foot-links a:hover{color:var(--volt);}
