/* ShadowGrid Theme — bronze/copper on black with tungsten headers */
:root{
  --bg:#0A0A0A;          /* background */
  --panel:#121212;       /* panel black */
  --ink:#F5F5F5;         /* body text */
  --muted:#A7A7A7;       /* secondary text */
  --line:#262626;        /* hairlines */
  --tungsten:#4D4F53;    /* header gray */
  --bronze:#B87333;      /* accent 1 */
  --copper:#B86B00;      /* accent 2 */
  --radius:12px;
  --shadow:0 10px 24px rgba(0,0,0,.35);
}

*{box-sizing:border-box}
html,body{
  margin:0;height:100%;
  background:var(--bg);color:var(--ink);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;
  -webkit-text-size-adjust:100%;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}

/* Header */
header{
  position:sticky;top:0;z-index:100;
  background:linear-gradient(180deg,#0c0c0c,var(--bg));
  border-bottom:2px solid var(--copper);
  box-shadow:var(--shadow);
}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
.bar{display:flex;align-items:center;gap:10px;padding:14px 0}
.brand{
  font-weight:800;letter-spacing:.4px;line-height:1;
  font-size:clamp(1.1rem,2.4vw,1.35rem);
  background:linear-gradient(90deg,var(--bronze),var(--copper));
  -webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap
}
.brand small{display:block;font-weight:600;letter-spacing:.2px;color:var(--ink);opacity:.85;font-size:.85em;-webkit-background-clip:initial}
.spacer{flex:1}
.hamburger{background:var(--panel);border:1px solid var(--bronze);border-radius:var(--radius);padding:12px 14px;cursor:pointer;color:var(--ink)}

/* Menu overlay */
.menu{
  position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.72);
  -webkit-backdrop-filter:saturate(120%) blur(6px);backdrop-filter:saturate(120%) blur(6px);
  display:none
}
.menu.open{display:block}
body.menu-open{overflow:hidden}
.menu-panel{
  position:absolute;right:0;top:0;height:100%;width:min(86%,380px);
  background:var(--panel);border-left:2px solid var(--bronze);
  padding:max(18px,env(safe-area-inset-top)) 18px 18px 18px;
  display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow)
}
.menu h3{margin:6px 0 8px;font-size:1rem;color:var(--muted);font-weight:600}
.menu a{display:block;padding:14px 12px;border-radius:var(--radius);border:1px solid var(--line);background:#0f0f0f}
.menu a:hover{border-color:var(--bronze)}
.menu-close{all:unset;position:absolute;top:12px;right:14px;cursor:pointer;font-size:22px;line-height:1.2;padding:8px;border-radius:10px}

/* Hero */
.hero{
  min-height:52vh;display:grid;place-items:center;padding:40px 0;border-bottom:1px solid var(--line);
  background:radial-gradient(1200px 400px at 50% -200px, rgba(184,135,51,0.08), transparent 60%)
}
.hero-inner{max-width:900px;text-align:center;padding:0 16px}
.kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:var(--muted)}
h1{margin:.5rem 0 0;font-size:clamp(1.9rem,6vw,3.2rem);line-height:1.12;color:var(--tungsten);text-shadow:0 1px 0 rgba(0,0,0,.4)}
.motto{margin-top:16px;font-weight:800;font-size:clamp(1.2rem,4vw,1.6rem);letter-spacing:.02em}
.motto-underline{width:min(220px,44%);height:3px;margin:10px auto 0;background:linear-gradient(90deg,var(--bronze),var(--copper));border-radius:3px}
.subtitle{color:var(--muted);margin-top:16px;max-width:70ch;margin-left:auto;margin-right:auto;font-size:clamp(1rem,3.6vw,1.1rem)}

/* Main content scaffolding */
.section{padding:28px 0;border-bottom:1px solid var(--line)}
.section .wrap{max-width:1100px;margin:0 auto;padding:0 16px}
h2{color:var(--tungsten);font-size:clamp(1.3rem,3.4vw,1.8rem);margin:0 0 10px}
.lead{color:var(--muted);max-width:70ch}

/* Card */
.card{border:2px solid var(--bronze);border-radius:16px;padding:18px;background:#101010;box-shadow:var(--shadow)}

/* Logo wrappers (header/footer or any section) */
.logo-wrap{
  display:inline-block;
  border:2px solid var(--bronze);     /* single copper frame */
  border-radius:14px;
  background:transparent;             /* no panel behind PNG */
  padding:10px 16px;
  text-align:center;
  margin:0 auto;
}
.logo-wrap img{
  display:block;margin:0 auto;
  max-width:260px;                    /* natural visual size for your logo */
  height:auto;background:transparent;
}

/* Footer */
footer{
  border-top:1px solid var(--line);
  padding:24px 0 32px;
  color:var(--muted);
  text-align:center;
  position:relative;z-index:1;
}
.footer-logo{ text-align:center; margin:18px 0 10px; }
.footer-logo .logo-wrap{ display:inline-block; } /* inherit styles above */
.footer-logo img{ display:block;margin:0 auto; }
.legal{font-size:.9rem;color:#9a9a9a}

/* Small screens */
@media (max-width:480px){
  .bar{padding:12px 0}
  .menu-panel{width:min(90%,360px)}
}

/* Center paragraphs in main content sections */
.section .wrap p,
.section .wrap .lead{
  text-align:center;
  margin-left:auto;margin-right:auto;
}
