:root{--dark:#071824;--blue:#0b3d66;--green:#80bd43;--mint:#6ad5bf;--white:#fff;--text:#dce9ef;--card:#0d2734}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#071824;color:#fff}a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:20;background:rgba(7,24,36,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}.navbar{max-width:1180px;margin:auto;padding:14px 22px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center}.brand-mark{background:linear-gradient(135deg,var(--green),var(--mint));color:#071824;font-weight:900;border-radius:12px;padding:10px}.brand small{display:block;color:#aab8bf}.nav-links{display:flex;gap:18px;align-items:center;list-style:none;margin:0;padding:0;font-size:14px}.nav-cta,.btn{border-radius:999px;padding:11px 18px;font-weight:700}.nav-cta,.btn.primary{background:linear-gradient(135deg,var(--green),var(--mint));color:#071824}.btn.secondary{border:1px solid rgba(255,255,255,.55)}.menu-toggle{display:none}.image-bg,.call-image,.card-image,.image-card{background-size:cover;background-position:center;background-repeat:no-repeat}.hero{min-height:88vh;display:flex;align-items:center;position:relative;padding:120px 24px}.overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,12,20,.76),rgba(2,12,20,.25))}.overlay.soft{background:rgba(3,17,26,.42)}.hero-content,.section-heading,.call-grid,.program-grid,.why-grid,.community-grid,.editorial-grid,.footer,.split{max-width:1180px;margin:auto;position:relative}.hero-content{width:100%}.eyebrow,.kicker,.tag{color:var(--mint);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.hero h1{font-size:clamp(52px,8vw,104px);line-height:.9;margin:14px 0}.hero h2{font-size:clamp(24px,4vw,48px);max-width:850px}.hero p{max-width:760px;color:var(--text);font-size:18px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:86px 24px}.section-heading{text-align:center;margin-bottom:36px}.section-heading.wide{max-width:900px}.section-heading h2{font-size:clamp(32px,5vw,58px);margin:10px 0}.section-heading p{color:#b8c8ce;font-size:18px}.call-grid.three-calls,.program-grid,.editorial-grid,.community-grid,.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.call-card,.program-card,.why-grid article,.community-grid article,.editorial-grid article,.content-card,.involve-grid article{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:26px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.2)}.call-image{height:240px}.call-body,.program-card div:not(.card-image),.why-grid article,.community-grid article,.editorial-grid article{padding:24px}.call-body h3,.program-card h3{font-size:26px;margin:10px 0}.call-body p,.program-card p,.why-grid p,.community-grid p,.editorial-grid p{color:#c7d4da}.call-meta{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.call-meta span{font-size:12px;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 10px}.magazine-hero,.community-banner,.partner-panel,.get-involved{position:relative;border-radius:32px;overflow:hidden;min-height:520px;max-width:1180px;margin:auto;padding:56px;display:flex;align-items:center}.magazine-copy{position:relative;max-width:600px}.magazine-copy h2{font-size:72px;margin:10px 0}.issue-cover{position:relative;margin-left:auto;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:32px;min-width:260px}.intro .domains-grid{max-width:1000px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.domains-grid article{background:rgba(255,255,255,.06);padding:18px;border-radius:18px}.split{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.image-card{min-height:520px;border-radius:32px}.content-card{padding:42px}.dark-card{background:#081f2d}.program-grid{grid-template-columns:repeat(4,1fr)}.card-image{height:180px}.community-banner,.partner-panel{min-height:360px}.community-banner>div:not(.overlay),.partner-panel p{position:relative}.partner-panel p{font-size:24px;max-width:820px}.logo-wall,.involve-grid{max-width:1180px;margin:28px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.logo-wall span{background:rgba(255,255,255,.08);padding:22px;border-radius:18px;text-align:center}.involve-grid article{padding:24px}.involve-grid a{color:var(--mint);font-weight:800}.footer{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px;padding:50px 24px;color:#b8c8ce}.footer a{display:block;margin:8px 0}.hero-bg{background-image:url('images/hero.jpg')}.urbanism-img{background-image:url('images/urbanism-workshop.png')}.prototype-img{background-image:url('images/prototype-demo.png')}.huatulco-img{background-image:url('images/huatulco-demo.png')}.perspectives-img{background-image:url('images/perspectives.jpg')}.about-img{background-image:url('images/about-network.png')}.programs-img{background-image:url('images/programs.png')}.community-img{background-image:url('images/community.jpg')}.world-map-img{background-image:url('images/world-map.jpg')}.partners-img{background-image:url('images/partners.jpg')}.join-img{background-image:url('images/join.jpg')}@media(max-width:900px){.nav-links{display:none}.menu-toggle{display:block}.call-grid.three-calls,.program-grid,.editorial-grid,.community-grid,.why-grid,.split,.logo-wall,.involve-grid,.intro .domains-grid,.footer{grid-template-columns:1fr}.magazine-hero{display:block}.issue-cover{margin:24px 0 0}.hero{min-height:760px}.section{padding:60px 18px}}
.sric-hero{
    background:
        radial-gradient(circle at top right,
            rgba(74,144,226,.18),
            transparent 45%),
        radial-gradient(circle at bottom left,
            rgba(0,200,255,.10),
            transparent 35%),
        linear-gradient(135deg,
            #06142E 0%,
            #0B2557 55%,
            #123C7A 100%);
}
/* SRIC landing page fixes */
.sric-hero{
  min-height: calc(100vh - 64px);
  padding: 110px 24px 82px;
  align-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at top right, rgba(74,144,226,.22), transparent 42%),
    radial-gradient(circle at bottom left, rgba(0,200,255,.12), transparent 38%),
    linear-gradient(135deg, #06142E 0%, #0B2557 55%, #123C7A 100%);
}
.sric-hero .overlay{display:none;}
.sric-hero .hero-content{max-width:1080px;}
.sric-hero h1{
  max-width:980px;
  font-size:clamp(42px,6.2vw,78px);
  line-height:1.02;
  letter-spacing:-0.045em;
  margin:18px 0 22px;
}
.sric-hero h2{
  max-width:860px;
  font-size:clamp(22px,3.1vw,40px);
  line-height:1.12;
  letter-spacing:-0.02em;
  margin:0 0 18px;
}
.sric-hero p{color:rgba(255,255,255,.86);}
.sric-hero .btn.secondary{
  background:rgba(255,255,255,.08);
  color:#fff;
}
@media(max-width:700px){
  .sric-hero{min-height:auto;padding:92px 20px 64px;}
  .sric-hero h1{font-size:42px;line-height:1.05;}
  .sric-hero h2{font-size:24px;}
}


/* ===============================
   SRIC microsite additions
   =============================== */
.sric-hero{
  min-height: calc(100vh - 64px);
  padding: 110px 24px 82px;
  align-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at top right, rgba(74,144,226,.22), transparent 42%),
    radial-gradient(circle at bottom left, rgba(0,200,255,.12), transparent 38%),
    linear-gradient(135deg, #06142E 0%, #0B2557 55%, #123C7A 100%);
}
.sric-hero .overlay{display:none;}
.sric-hero .hero-content{max-width:1080px;}
.sric-hero h1{
  max-width:980px;
  font-size:clamp(42px,6.2vw,78px);
  line-height:1.02;
  letter-spacing:-0.045em;
  margin:18px 0 22px;
}
.sric-hero h2{
  max-width:860px;
  font-size:clamp(22px,3.1vw,40px);
  line-height:1.12;
  letter-spacing:-0.02em;
  margin:0 0 18px;
}
.sric-hero p{color:rgba(255,255,255,.86);}
.sric-hero .btn.secondary{background:rgba(255,255,255,.08);color:#fff;}
.sric-mini-nav{
  max-width:1180px;
  margin:0 auto;
  padding:18px 24px 0;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:center;
}
.sric-mini-nav a{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  color:#dce9ef;
  padding:10px 14px;
  border-radius:999px;
  font-weight:700;
  font-size:14px;
}
.sric-mini-nav a:hover{border-color:rgba(106,213,191,.7);color:#fff;}
.track-grid{
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.track-grid article{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:24px;
  min-height:180px;
}
.track-grid h3{margin:0 0 10px;font-size:22px;}
.track-grid p{color:#c7d4da;margin:0;}
.gallery-preview{text-align:center;}
.gallery-coming{
  max-width:850px;
  margin:40px auto 0;
  padding:60px;
  border-radius:30px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 24px 70px rgba(0,0,0,.18);
}
.gallery-icon{font-size:72px;margin-bottom:18px;}
.gallery-coming h3{font-size:42px;margin:0 0 18px;}
.gallery-coming p{max-width:650px;margin:0 auto 28px;color:#cfd8dd;}
.submit-panel{
  max-width:980px;
  margin:0 auto;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:30px;
  padding:34px;
  box-shadow:0 24px 70px rgba(0,0,0,.18);
}
.form-embed{
  margin-top:24px;
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  min-height:760px;
}
.form-embed iframe{display:block;width:100%;height:1500px;border:0;background:#fff;}
.resource-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:24px;
}
.resource-list a,
.resource-list div{
  display:block;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  padding:20px;
  color:#dce9ef;
}
.resource-list strong{display:block;color:#fff;margin-bottom:6px;}
@media(max-width:900px){
  .track-grid,.resource-list{grid-template-columns:1fr;}
  .gallery-coming{padding:34px 22px;}
}
@media(max-width:700px){
  .sric-hero{min-height:auto;padding:92px 20px 64px;}
  .sric-hero h1{font-size:42px;line-height:1.05;}
  .sric-hero h2{font-size:24px;}
  .form-embed iframe{height:1700px;}
}
