:root{
  --amphi-green:#0e7a0d;--amphi-green-600:#096407;--black:#000;--white:#fff;
  --gray-50:#fbfcfd;--gray-100:#f6f7f8;--gray-300:#d7dbe0;--gray-700:#3f4954;
  --radius:14px;--shadow-1:0 8px 24px rgba(0,0,0,.12);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial;
  color:var(--black);background:linear-gradient(180deg,#f9fffa 0%,#f3fff4 60%,#fff 100%);
}
.theme-amphi a{color:var(--amphi-green-600)}
header,footer{padding:14px 20px}

/* ---------- Header (sticky, mobile menu ready) ---------- */
.sitebar{
  position:-webkit-sticky;position:sticky;top:0;z-index:200; /* iOS + desktop */
  border-bottom:1px solid var(--gray-300);
  background:rgba(255,255,255,.95);backdrop-filter:saturate(1.1) blur(4px);
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;
}
.brand-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.brand__logo-img{width:42px;height:42px;border-radius:50%;object-fit:cover;background:#fff;border:2px solid var(--black)}
.brand__name{font-weight:800;letter-spacing:.5px;font-size:1.1rem;line-height:1.1}
.nav{display:flex;gap:12px;flex-wrap:wrap;justify-self:end}
.nav a{text-decoration:none;padding:8px 12px;border-radius:10px;font-weight:600;color:var(--black)}
.nav a:hover{background:var(--gray-100)}
.menu-toggle{display:none;border:2px solid var(--black);background:var(--white);border-radius:10px;padding:6px 8px;box-shadow:var(--shadow-1)}
.menu-toggle__bar{display:block;width:22px;height:2px;background:#000;margin:4px 0}

/* ---------- Splash / hero ---------- */
.splash .hero{text-align:center;padding:clamp(32px,4.5vw,72px) 20px}
.hero--compact .hero__title{margin-bottom:6px}
.hero__badge{display:inline-block;background:var(--black);color:var(--white);padding:6px 12px;border-radius:999px;font-size:.875rem}
.hero__title{font-size:clamp(2.2rem,6vw,3.4rem);margin:10px 0 6px;line-height:1.05;font-weight:800}
.hero__sub{color:var(--gray-700);margin:0 0 8px}
.hero__panther{filter:drop-shadow(0 3px 0 rgba(0,0,0,.12))}

/* ---------- Feature grid (near-square cards) ---------- */
.feature-grid{
  display:grid;gap:16px;grid-template-columns:repeat(2,minmax(220px,1fr));
  max-width:1024px;margin:0 auto;padding:0 20px;
}
@media (min-width:1000px){.feature-grid{grid-template-columns:repeat(4,1fr)}}
.feature-card{
  background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);box-shadow:var(--shadow-1);
  padding:16px;display:grid;grid-template-rows:auto 1fr;align-items:start;aspect-ratio:1/1.05;min-height:220px;
}
.feature-desc{margin:10px 4px 0;color:var(--gray-700);font-size:.98rem;line-height:1.3}
.cta-btn--block{width:100%}

/* ---------- Buttons ---------- */
.cta-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:12px 16px;border-radius:var(--radius);
  font-weight:800;text-decoration:none;border:2px solid var(--black);box-shadow:var(--shadow-1);
  transition:transform .06s ease,box-shadow .2s ease,background .2s ease,color .2s ease;
}
.cta-btn:hover{transform:translateY(-2px)}
.cta-btn--primary{background:var(--amphi-green);color:var(--white)}
.cta-btn--primary:visited,.cta-btn--primary:hover,.cta-btn--primary:focus,
.cta-btn--primary:active,.cta-btn--primary:focus-visible{
  color:var(--white);background:var(--amphi-green-600);outline:3px solid rgba(14,122,13,.25);outline-offset:2px;
}
.cta-btn--outline{background:var(--white);color:var(--black)}
.cta-btn--ghost{background:#f0f0f0;color:#666;cursor:default}

/* Compact utility buttons (Send to App) */
.btn-sm{
  display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;
  font-weight:700;font-size:.875rem;line-height:1;min-height:34px;padding:6px 10px;
  border-radius:10px;border:2px solid var(--black);background:var(--white);
  transition:transform .06s ease,background .2s ease,color .2s ease;
}
.btn-sm:hover{transform:translateY(-1px)}
.btn-sm--primary{background:var(--amphi-green);color:var(--white);border-color:var(--black)}
.btn-sm--primary:hover{background:var(--amphi-green-600);color:var(--white)}

/* ---------- Content pages ---------- */
.page{padding:24px 20px 80px;max-width:1024px;margin:0 auto}
.page--content h1{font-size:clamp(1.8rem,4vw,2.6rem);margin:6px 0 14px}
.lede{color:var(--gray-700)}
.card{background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);padding:16px;margin:18px 0;box-shadow:var(--shadow-1)}
.card--accent{border-color:var(--amphi-green)}

/* Lists */
.link-list{list-style:none;padding:0;margin:0}
.link-list li{margin:8px 0}

/* Poster sizing */
.poster-wrap{max-width:760px;margin:0 auto}
.poster-img{width:100%;height:auto;border-radius:var(--radius);border:2px solid var(--black);box-shadow:var(--shadow-1);background:#eee;display:block;margin:0 auto}
.poster-img--constrained{max-height:72vh;object-fit:contain}

/* Responsive embeds */
.embed-16x9{position:relative;width:100%;padding-top:56.25%;border:1.5px solid var(--black);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-1);background:#fff}
.embed-16x9>iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Scholarship / Event items */
.status{color:var(--gray-700)}
.card-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.card-list .item{background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);padding:14px;display:grid;gap:6px}
.item h3{margin:0;font-size:1.05rem}
.item .meta{font-size:.9rem;color:var(--gray-700)}
.item .desc{color:#222}
.item .actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:6px}

/* Back to Top (fixed, iOS safe area) */
.fab-top{
  position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));
  background:var(--amphi-green);color:var(--white);border:2px solid var(--black);border-radius:999px;
  padding:10px 14px;font-weight:800;box-shadow:var(--shadow-1);cursor:pointer;
  opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:220;
}
.fab-top.show{opacity:1;transform:translateY(0);pointer-events:auto}
.fab-top:focus-visible{outline:3px solid rgba(14,122,13,.35);outline-offset:2px}

/* Footer / crumbs */
.crumbs{font-size:.9rem;margin-bottom:8px}
.crumbs a{text-decoration:none}
footer{border-top:1px solid var(--gray-300);background:var(--white)}
footer .links{display:flex;gap:10px;flex-wrap:wrap}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.footer-inner small{color:var(--gray-700)}

/* ---------- Mobile tweaks ---------- */
@media (max-width:700px){
  .sitebar{grid-template-columns:auto auto 1fr}
  .brand__name{font-size:1rem}
  .nav{
    display:none;position:absolute;top:100%;left:10px;right:10px;background:var(--white);
    border:1px solid var(--gray-300);border-radius:12px;padding:8px;gap:4px;z-index:230;
    box-shadow:0 10px 20px rgba(0,0,0,.12)
  }
  .nav.open{display:flex;flex-direction:column}
  .nav a{padding:10px 12px;border-radius:8px}
  .menu-toggle{display:inline-flex;justify-self:end}
  body.nav-open{overflow:hidden}

  .feature-grid{grid-template-columns:1fr;gap:12px}
  .feature-card{aspect-ratio:auto;min-height:170px;padding:14px}
  .feature-desc{font-size:1rem;line-height:1.35}
  .cta-btn{min-height:48px;padding:10px 12px;font-size:1rem}

  .item .actions{gap:6px}
  .fab-top{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));padding:9px 12px}
}
