*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'DM Sans',sans-serif;color:#1a1a1a;background:#fff;line-height:1.6}
:root{
  --red:#c41230;--red-light:#e8192c;--red-pale:#fdf2f4;--red-mid:#a50e26;
  --dark:#0d0d0d;--dark2:#111b12;--green-dark:#0d2b12;
  --gray:#6b7280;--light:#f5f4f2;--border:#e5e5e5;--white:#fff;
  --serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',sans-serif;
  --nav-h:60px;--bot-h:64px;
}

h1,h2,h3,h4{font-family:var(--serif);line-height:1.15}
h1{font-size:clamp(2rem,5vw,4.2rem);font-weight:700}
h2{font-size:clamp(1.6rem,3vw,2.8rem);font-weight:700}
h3{font-size:clamp(1.15rem,2vw,1.65rem);font-weight:600}
h4{font-size:1rem;font-weight:600}
p{line-height:1.75;color:#4a4a4a}
a{color:inherit;text-decoration:none}
button{cursor:pointer;border:none;font-family:var(--sans)}
input,select,textarea{font-family:var(--sans)}
img{display:block;width:100%;object-fit:cover}

.container{max-width:1160px;margin:0 auto;padding:0 1.5rem}
.section{padding:5rem 0}
main{padding-top:var(--nav-h);padding-bottom:calc(var(--bot-h) + .5rem)}

/*  BUTTONS  */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font-size:.8rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;padding:.85rem 1.8rem;border-radius:5px;transition:all .2s;cursor:pointer;border:none;font-family:var(--sans)}
.btn-red{background:var(--red);color:#fff}
.btn-red:hover{background:var(--red-mid);transform:translateY(-1px)}
.btn-white{background:#fff;color:var(--dark)}
.btn-white:hover{background:var(--light)}
.btn-outline-red{background:transparent;color:var(--red);border:1.5px solid var(--red)}
.btn-outline-red:hover{background:var(--red-pale)}
.btn-outline-w{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.45)}
.btn-outline-w:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-full{width:100%}
.btn-lg{padding:1rem 2.2rem;font-size:.85rem;border-radius:8px}
.btn-pill{border-radius:100px}

/*  UTILS  */
.sec-label{font-size:.62rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin-bottom:.7rem}
.divider-red{width:3rem;height:2.5px;background:var(--red);margin:1rem 0}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s}
.reveal.visible{opacity:1;transform:none}
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.fi{animation:fadeUp .65s ease both}
.fi-2{animation:fadeUp .65s .12s ease both}
.fi-3{animation:fadeUp .65s .24s ease both}

/*  SHARED GRIDS  */
.eco-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.ec{border:1.5px solid var(--border);padding:2rem 1.5rem;border-radius:6px;transition:all .25s}
.ec:hover{border-color:var(--red);box-shadow:0 6px 22px rgba(196,18,48,.1);transform:translateY(-3px)}
.ec-ico{width:38px;height:38px;background:var(--red-pale);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem;margin-bottom:1rem}
.ec h4{font-family:var(--sans);font-weight:600;font-size:.88rem;color:#1a1a1a;margin-bottom:.5rem}
.ec p{font-size:.8rem;color:var(--gray)}

.rband{background:var(--red);padding:4.5rem 0;text-align:center;color:#fff}
.rband h2{font-style:italic;margin-bottom:.8rem}
.rband p{color:rgba(255,255,255,.78);max-width:460px;margin:0 auto 2rem}
.rband-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}

/*  PROGRAMS PAGE  */
.prog-hero{
  background-color:var(--dark);
  background-image:linear-gradient(rgba(12,13,14,.72),rgba(12,13,14,.72)),url("../assets/images/programs.jpg");
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  padding:5rem 2rem 4rem;
  min-height:60vh;
  display:flex;
  align-items:flex-end;
}
.prog-hero .sec-label{color:rgba(255,255,255,.4)}
.prog-hero h1{color:#fff;font-style:italic;margin-bottom:.8rem}
.prog-hero p{color:rgba(255,255,255,.68)}

.prog-detail-block{padding:4rem 0;border-bottom:1px solid var(--border)}
.prog-detail-block:last-child{border-bottom:none}
.pdb-inner{display:grid;grid-template-columns:1fr 2fr;gap:4rem;align-items:start}
.pdb-sticky{position:sticky;top:80px}
.pdb-sticky h2{font-size:1.7rem;margin-bottom:.7rem}
.pdb-sticky p{color:var(--gray);font-size:.85rem;margin-bottom:1.2rem}
.pdb-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.5rem}

.ct{margin-top:1rem}
.ct-item{padding-left:2rem;position:relative;margin-bottom:1.8rem}
.ct-item::before{content:'';position:absolute;left:.5rem;top:1.4rem;bottom:-1rem;width:2px;background:var(--border)}
.ct-dot{width:10px;height:10px;background:var(--red);border-radius:50%;position:absolute;left:.3rem;top:.2rem}
.ct-item h4{font-family:var(--sans);font-weight:700;font-size:.92rem;margin-bottom:.4rem}
.ct-item p{font-size:.82rem;color:var(--gray)}
.ct-del{background:var(--light);padding:1rem;border-radius:6px;margin-top:.7rem}
.ct-del-lbl{font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin-bottom:.4rem}
.ct-del-item{font-size:.78rem;color:#444;margin-bottom:.4rem}

.ptag{background:var(--red-pale);color:var(--red);font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.22rem .55rem;border-radius:3px}

.tool-list{display:grid;gap:.8rem;margin-top:1rem}
.tl-row{display:flex;gap:.8rem;align-items:center;background:var(--light);border-radius:8px;padding:1rem}
.tl-ico{width:34px;height:34px;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem}
.tl-name{font-size:.85rem;font-weight:700}
.tl-desc{font-size:.76rem;color:var(--gray)}

/*  HOW IT WORKS PAGE  */
.how-hero{position:relative;min-height:70vh;display:flex;align-items:flex-end}
/* TODO: Replace hero image: assets/images/farm.jpg */
.how-hero-img{position:absolute;inset:0;background:url('../assets/images/\ How\ it\ work.jpg') center/cover no-repeat}
.how-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.25),rgba(0,0,0,.75))}
.how-hero-content{position:relative;color:#fff;padding:4rem 1.5rem}
.tag-red{display:inline-block;background:var(--red);color:#fff;padding:.4rem .7rem;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border-radius:4px;cursor:pointer}
.how-sub{font-size:1rem;color:#444;max-width:800px;margin:0 auto 2.5rem;text-align:center}

.lifecycle{display:flex;flex-direction:column;gap:1rem}
.lc-item{display:grid;grid-template-columns:120px 1fr;gap:1rem;align-items:start;background:var(--light);padding:1.5rem;border-radius:8px}
.lc-num{font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.lc-content h4{font-family:var(--sans);font-size:.95rem;margin-bottom:.4rem}
.lc-content p{font-size:.82rem;color:var(--gray)}

.tech-layer{background:var(--dark);color:#fff;border-radius:10px;padding:2.5rem;margin-top:3rem}
.tech-layer h3{color:#fff;margin-bottom:.8rem}
.tech-row{display:grid;grid-template-columns:1fr 2fr;gap:1rem;padding:1rem 0;border-top:1px solid rgba(255,255,255,.1)}
.tech-row:first-of-type{border-top:none}
.tr-key{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.tr-val{font-size:.82rem;color:rgba(255,255,255,.7)}

.re-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.re{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 14px rgba(0,0,0,.06)}
.re-img{height:180px;background:#ccc}
.re-body{padding:1.3rem}
.re-body h4{font-family:var(--sans);font-size:.9rem;margin-bottom:.4rem}
.re-body p{font-size:.8rem;color:var(--gray)}
.re-link{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--red);margin-top:.8rem}

/*  ENTERPRISE LAB PAGE  */
.lab-hero{position:relative;min-height:65vh;display:flex;align-items:flex-end}
/* TODO: Replace hero image: assets/images/lab.jpg */
.lab-hero-img{position:absolute;inset:0;background:url('../assets/images/lab.jpg') center/cover no-repeat}
.lab-hero-ov{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.2),rgba(0,0,0,.78))}
.lab-hero-content{position:relative;color:#fff;padding:4rem 1.5rem}
.lab-badge{display:inline-block;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);padding:.4rem .8rem;border-radius:100px;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:1rem}
.lab-intro{font-size:1rem;color:#444;max-width:700px}
.lab-photo-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.lpc{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,.07)}
.lpc-img{height:200px;object-fit:cover}
.lpc-body{padding:1.4rem}
.lpc-body h3{font-family:var(--sans);font-size:1rem;margin-bottom:.5rem}
.lpc-body p{font-size:.82rem;color:var(--gray);margin-bottom:1rem}
.lpc-tags{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}
.lpc-tag{font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:var(--light);padding:.2rem .5rem;border-radius:4px}

/*  PARTNERSHIPS PAGE  */
.sponsor-hero{position:relative;min-height:70vh;display:flex;align-items:flex-end}
/* TODO: Replace hero image: assets/images/hero.jpg */
.sponsor-hero-img{position:absolute;inset:0;background:url('../assets/images/\ AgroMarker.jpg') center/cover no-repeat}
.sponsor-hero-ov{position:absolute;inset:0;background:linear-gradient(to bottom,rgba
  (0,0,0,.2),rgba(0,0,0,.75))}
.sponsor-hero-content{position:relative;color:#fff;padding:4rem 1.5rem}
.mission-quote{font-family:var(--serif);font-size:1.2rem;font-style:italic;text-align:center;max-width:760px;margin:0 auto 1.5rem;color:#333}
.st-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.st{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.st-top{background:var(--light);padding:1.3rem}
.st-top h3{font-family:var(--sans);font-size:.95rem;margin-bottom:.3rem}
.st-price{font-size:1.3rem;font-weight:700;color:var(--red)}
.st-body{padding:1.3rem}
.st-body p{font-size:.82rem;color:var(--gray);margin-bottom:1rem}
.st-features{list-style:none;display:grid;gap:.5rem}
.st-feat-ico{color:var(--red);font-weight:700;margin-right:.4rem}
.partner-types-full{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.ptf{background:var(--light);border-radius:8px;padding:1.2rem;border-left:3px solid var(--red)}
.ptf-ico{font-size:1.2rem;margin-bottom:.6rem}
.ptf h4{font-family:var(--sans);font-size:.9rem;margin-bottom:.4rem}
.ptf p{font-size:.8rem;color:var(--gray)}
.ptf-sub{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin:.9rem 0 .6rem}
.partner-list{list-style:none;display:grid;gap:.5rem;margin:0}
.partner-list li{font-size:.78rem;color:var(--gray);position:relative;padding-left:1rem}
.partner-list li::before{content:'•';position:absolute;left:0;color:var(--red)}
.partner-note{font-size:.82rem;color:#444;font-style:italic;margin-top:1.5rem;max-width:820px}

/*  ABOUT PAGE  */
.about-hero{position:relative;min-height:65vh;display:flex;align-items:flex-end}
/* TODO: Replace hero image: assets/images/farm.jpg */
.about-hero-img{
  position:absolute;
  inset:0;
  background:center/cover no-repeat;
  animation:aboutHeroSlides 18s infinite;
}
.about-hero-ov{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.2),rgba(0,0,0,.7))}
.about-hero-content{position:relative;color:#fff;padding:4rem 1.5rem}
.about-hero-quote{font-family:var(--serif);font-style:italic;color:rgba(255,255,255,.8);max-width:520px;margin-top:1rem}

@keyframes aboutHeroSlides{
  0%{background-image:url("../assets/images/\ About\ slide\ 1.png")}
  33%{background-image:url("../assets/images/\ \ About\ slide\ 3.jpg")}
  66%{background-image:url("../assets/images/\ About\ slide\ 4.jpg")}
  100%{background-image:url("../assets/images/\ About\ slide\ 2.jpg")}
}
.mission-block{background:var(--light);padding:2rem;border-radius:8px}
.mission-block p{font-size:.9rem;color:#444}
.sig-line{margin:2rem 0;font-family:var(--serif);font-style:italic;color:#333;font-size:1.05rem}
.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.mv{background:#fff;border:1px solid var(--border);border-radius:8px;padding:1.8rem}
.agrotech-box{background:var(--dark);color:#fff;border-radius:10px;padding:2rem;margin-top:2rem}
.agrotech-box h3{color:#fff}
.founder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}
.fc{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden}
/* TODO: Replace founder photos in assets/images/ */
.fc-photo{
  width:100%;
  max-width:400px;
  aspect-ratio:1/1;
  height:auto;
  object-fit:cover;
  object-position:center 15%;
  background:var(--light);
  display:block;
  margin:0 auto;
  border-radius:50%;
}
.fc-top{padding:1.2rem 1.5rem;border-bottom:1px solid var(--border)}
.fc-role{font-size:.75rem;color:var(--gray)}
.fc-body{padding:1.2rem 1.5rem}
.founder-socials{display:flex;gap:.5rem;margin-top:1rem}
.soc{width:32px;height:32px;border-radius:50%;background:var(--light);display:flex;align-items:center;justify-content:center;font-size:.8rem}

/*  APPLY PAGE  */
.apply-page{background:var(--light);min-height:100vh}
.apply-back{position:absolute;left:1.2rem;color:var(--red);font-size:1rem;background:none;border:none;cursor:pointer}
.apply-wrap{max-width:520px;margin:0 auto;padding:2rem 1.5rem}
.apply-step{display:none}
.apply-step.active{display:block}
.step-prog{margin-bottom:1.5rem}
.sp-row{display:flex;justify-content:space-between;font-size:.72rem;color:var(--gray);margin-bottom:.5rem}
.sp-bar{height:6px;background:#e9e9e9;border-radius:100px;overflow:hidden}
.sp-fill{height:100%;background:var(--red)}
.form-g{margin-bottom:1.1rem}
.form-lbl{display:block;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gray);margin-bottom:.4rem}
.form-in{width:100%;padding:.9rem 1rem;border:1px solid var(--border);border-radius:6px;font-size:.9rem;background:#fff}
.form-in:focus{outline:2px solid rgba(196,18,48,.15);border-color:var(--red)}
.qd{
  position:relative;
  background:#fff;
  border:1px solid var(--border);
  border-radius:10px;
  padding:1.2rem;
  margin-top:2rem;
  overflow:hidden;
}
.qd::before{
  content:"";
  position:absolute;
  inset:0;
  background:url("../assets/images/\ insight.jpg") center 85%/70% no-repeat;
  opacity:.22;
  pointer-events:none;
}
.qd > *{position:relative}
.qd-title{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--red);margin-bottom:1rem}
.qd-row{display:flex;gap:.8rem;margin-bottom:.8rem}
.qd-ico{width:30px;height:30px;background:var(--red-pale);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.85rem}
.qd-key{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gray);display:block}
.qd-val{font-size:.85rem;color:#333}

.track-opt{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--border);border-radius:10px;padding:1.1rem;margin-bottom:.8rem;cursor:pointer;transition:all .2s}
.track-opt.sel{border-color:var(--red);box-shadow:0 8px 24px rgba(196,18,48,.08)}
.to-text .tn{font-weight:700;font-size:.9rem;margin-bottom:.2rem}
.to-text .ts{font-size:.78rem;color:var(--gray)}
.to-radio{width:22px;height:22px;border-radius:50%;border:2px solid var(--border)}
.track-opt.sel .to-radio{border-color:var(--red);background:var(--red)}

.step-btns{display:flex;gap:.8rem;margin-top:1.5rem}

.rv-card{background:#fff;border-radius:10px;border:1px solid var(--border);padding:1.2rem;margin-bottom:1.2rem}
.rv-row{display:flex;justify-content:space-between;border-bottom:1px dashed var(--border);padding:.6rem 0}
.rv-row:last-child{border-bottom:none}
.rv-k{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gray)}
.rv-v{font-size:.82rem;color:#333}
.checklist{list-style:none;display:grid;gap:.6rem;margin-bottom:1rem}
.checklist li{display:flex;gap:.6rem;align-items:flex-start;background:#fff;border:1px solid var(--border);padding:.8rem;border-radius:8px}
.cl-chk{width:22px;height:22px;border-radius:50%;background:var(--red-pale);display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--red)}
.cert{display:flex;gap:.8rem;align-items:flex-start;background:#fff;border:1px solid var(--border);padding:1rem;border-radius:10px;margin-bottom:1rem}
.cert-box{width:22px;height:22px;border:2px solid var(--border);border-radius:4px;cursor:pointer}
.cert-box.chk{background:var(--red);border-color:var(--red);position:relative}
.cert-box.chk::after{content:'✓';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem}
.what-next{background:#fff;border:1px solid var(--border);border-radius:10px;padding:1rem}
.wn-title{font-size:.75rem;color:var(--gray);margin-bottom:.6rem}
.wn-item{display:flex;gap:.6rem;margin-bottom:.5rem}
.wn-num{width:22px;height:22px;background:var(--red-pale);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--red)}

.apply-success{display:none}
.apply-success.active{display:block}
.success-body{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1rem}
.success-ico{width:80px;height:80px;background:rgba(34,197,94,.2);border:2px solid rgba(34,197,94,.5);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.2rem;margin:0 auto 1.8rem;color:rgba(34,197,94,.9)}
.success-body h1{color:#fff;font-size:clamp(1.6rem,4vw,2.5rem);margin-bottom:.8rem}
.success-body>p{color:rgba(255,255,255,.65);font-size:.9rem;max-width:380px}
.success-ns{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.8rem;margin:2rem 0;text-align:left;width:100%}
.sns-label{font-size:.62rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(34,197,94,.9);margin-bottom:1rem}
.sns-item{display:flex;gap:.8rem;margin-bottom:.8rem;align-items:flex-start}
.sns-num{width:24px;height:24px;background:rgba(34,197,94,.25);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:rgba(34,197,94,.9);flex-shrink:0}
.sns-item p{font-size:.85rem;color:rgba(255,255,255,.75);margin:0}
.success-btns{display:flex;flex-direction:column;gap:.8rem;width:100%}
.btn-green-fill{background:rgba(34,197,94,.85);color:#fff;font-size:.88rem;font-weight:700;padding:1.1rem;border-radius:100px;border:none;cursor:pointer;transition:all .2s;font-family:var(--sans);letter-spacing:.04em}
.btn-green-fill:hover{background:rgba(34,197,94,1)}
.btn-green-outline{background:transparent;color:rgba(34,197,94,.9);font-size:.88rem;font-weight:700;padding:1.1rem;border-radius:100px;border:1.5px solid rgba(34,197,94,.35);cursor:pointer;transition:all .2s;font-family:var(--sans);letter-spacing:.04em}
.btn-green-outline:hover{border-color:rgba(34,197,94,.7)}

/*  CONTACT PAGE  */
.contact-page{background:var(--light);min-height:100vh}
.contact-topbar{display:flex;align-items:center;justify-content:center;background:#fff;border-bottom:1px solid var(--border);padding:1rem 1.5rem;position:relative}
.contact-topbar h2{font-family:var(--sans);font-weight:600;font-size:.95rem;color:#1a1a1a}
.contact-back{position:absolute;left:1.2rem;color:var(--red);font-size:1.2rem;cursor:pointer;background:none;border:none;font-family:var(--sans)}
.contact-body{max-width:520px;margin:0 auto;padding:2rem 1.5rem}
.contact-h{margin-bottom:2rem}
.contact-h h1{font-size:clamp(1.8rem,4vw,2.8rem);margin-bottom:.5rem}
.contact-h p{font-size:.88rem;color:var(--gray);font-style:italic;font-family:var(--serif)}
.c-btn-row{display:flex;flex-direction:column;gap:.7rem;margin-bottom:2.5rem}
.c-btn{display:flex;align-items:center;justify-content:space-between;padding:1.05rem 1.4rem;border-radius:7px;font-size:.88rem;font-weight:600;cursor:pointer;border:none;font-family:var(--sans);transition:all .2s}
.c-btn-red{background:var(--red);color:#fff}
.c-btn-red:hover{background:var(--red-mid)}
.c-btn-pale{background:var(--red-pale);color:var(--red);border:1.5px solid rgba(196,18,48,.15)}
.c-btn-pale:hover{background:rgba(196,18,48,.12)}
.c-detail{display:flex;gap:1rem;margin-bottom:2rem;align-items:flex-start}
.c-ico{width:38px;height:38px;background:var(--red-pale);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}
.c-key{font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red);display:block;margin-bottom:.2rem}
.c-val{font-size:.9rem;font-weight:500;color:#1a1a1a}
.c-sub{font-size:.78rem;color:var(--gray)}
/* TODO: Replace campus image: assets/images/farm.jpg */
.c-campus-img{
  width:100%;
  height:260px;
  border-radius:0;
  background:url('../assets/images/logo.png') center/contain no-repeat;
  margin-top:2rem;
  display:block;
  filter:none;
  mix-blend-mode:multiply;
  opacity:.95;
}

/*  INSIGHTS PAGE  */
.insights-hero{
  background-color:var(--dark);
  background-image:
    linear-gradient(rgba(12,13,14,.45),rgba(12,13,14,.7)),
    url("../assets/images/support.png");
  background-position:center top;
  background-size:cover;
  background-repeat:no-repeat;
  min-height:60vh;
  padding:6rem 2rem 4rem;
}
.insights-hero .sec-label{color:rgba(255,255,255,.4)}
.insights-hero h1{color:#fff;font-style:italic;margin-bottom:.6rem}
.insights-hero p{color:rgba(255,255,255,.62)}
.insights-layout{display:grid;grid-template-columns:2fr 1fr;gap:3rem;align-items:start}
.story-tag{font-size:.6rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-bottom:.5rem}
.story-h{font-style:italic;margin-bottom:.4rem}
.story-by{font-size:.78rem;color:var(--gray);font-style:italic;margin-bottom:2rem}
.story-txt p{color:#444;font-size:.93rem;line-height:1.9;margin-bottom:1.3rem}
.story-quote{border-left:3px solid var(--red);padding-left:1.4rem;margin:1.8rem 0;font-family:var(--serif);font-style:italic;font-size:1rem;color:var(--red);line-height:1.65}
.story-sidebar{position:sticky;top:80px}
.ss-card{background:var(--light);border-radius:6px;padding:1.4rem;margin-bottom:1rem;cursor:pointer;transition:all .2s;border-left:3px solid transparent}
.ss-card:hover{background:var(--red-pale);border-left-color:var(--red)}
.ss-card .ss-tag{font-size:.58rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gray);margin-bottom:.35rem}
.ss-card h4{font-family:var(--serif);font-size:.88rem;color:#1a1a1a;line-height:1.3}

/*  SEARCH PANEL  */
.search-panel{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:1000;align-items:center;justify-content:center;padding:1.5rem}
.search-panel.active{display:flex}
.search-box{background:#fff;border-radius:10px;max-width:520px;width:100%;padding:1.5rem;border:1px solid var(--border)}
.search-box h3{font-family:var(--sans);font-size:1rem;margin-bottom:.6rem}
.search-box input{width:100%;padding:.9rem 1rem;border:1px solid var(--border);border-radius:6px;font-size:.9rem}
.search-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}

/*  PRINT HELPERS  */
.hidden{display:none !important}
