/* ===== Manzanita Resilience Advisors — shared site styles ===== */
:root{
  --green:#19462e;
  --green-deep:#123a25;
  --green-soft:#2c5a40;
  --cream:#f7f5ee;
  --line:rgba(25,70,46,.55);
  --hair:rgba(25,70,46,.22);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'EB Garamond',Georgia,serif;
  color:var(--green);
  min-height:100vh;
  position:relative;
  overflow-x:hidden;
  background:#f4f2ec;
}

/* Background topo map */
.bg{position:fixed;inset:0;background:url('assets/topo-bg.jpg') center center / cover no-repeat;z-index:0;}
.bg::before{content:"";position:absolute;inset:0;background:rgba(246,244,238,.72);}
.bg::after{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(80% 60% at 50% 30%, rgba(246,244,238,.78) 0%, rgba(246,244,238,.42) 50%, rgba(246,244,238,.18) 80%),
    radial-gradient(120% 120% at 50% 50%, rgba(246,244,238,0) 55%, rgba(224,219,206,.42) 100%);
}

.page{position:relative;z-index:1;display:flex;flex-direction:column;min-height:100vh;}

/* ---------- Header ---------- */
header{
  display:flex;align-items:center;justify-content:space-between;
  padding:26px 56px;gap:32px;
  position:sticky;top:0;z-index:20;backdrop-filter:blur(2px);
}
.brand{display:flex;align-items:center;gap:18px;text-decoration:none;}
.brand .lockup{display:flex;flex-direction:column;line-height:1;align-items:center;}
.brand .word{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:30px;letter-spacing:.34em;color:var(--green-deep);padding-left:.34em;}
.brand .sub{display:flex;align-items:center;gap:9px;margin-top:7px;padding-left:.2em;}
.brand .sub span{font-family:'Cormorant Garamond',serif;font-size:11.5px;letter-spacing:.42em;text-transform:uppercase;color:var(--green-soft);padding-left:.42em;}
.brand .sub i{height:1px;width:22px;background:var(--line);display:block;}

nav{display:flex;align-items:center;gap:30px;}
nav a{
  font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--cream);text-decoration:none;position:relative;padding:7px 14px;border-radius:2px;
  background:rgba(25,70,46,.92);transition:background .25s ease;
}
nav a.active{background:var(--green-deep);}
nav a::after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:1.5px;width:0;background:var(--cream);transition:width .3s ease;}
nav a:hover{background:var(--green-deep);}
nav a:hover::after,nav a.active::after{width:calc(100% - 28px);}
.cta{
  font-family:'Cormorant Garamond',serif;font-size:17px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--cream);background:var(--green);border:1px solid var(--green);padding:11px 26px;border-radius:2px;
  text-decoration:none;cursor:pointer;white-space:nowrap;
  transition:background .25s ease,transform .25s ease,box-shadow .25s ease;box-shadow:0 4px 14px rgba(18,58,37,.18);
}
.cta:hover{background:var(--green-deep);transform:translateY(-2px);box-shadow:0 8px 22px rgba(18,58,37,.28);}

/* ---------- Page intro (shared) ---------- */
.intro{text-align:center;padding:64px 24px 30px;max-width:880px;margin:0 auto;}
.eyebrow{
  display:flex;align-items:center;justify-content:center;gap:18px;
  font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:600;
  letter-spacing:.46em;text-transform:uppercase;color:var(--green-soft);padding-left:.46em;margin-bottom:26px;
}
.eyebrow span{white-space:nowrap;}
.eyebrow i{display:block;height:1px;width:54px;background:var(--line);flex:none;}
.intro h1{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(46px,6.4vw,84px);letter-spacing:.04em;line-height:1.02;color:var(--green-deep);}
.intro p{margin:24px auto 0;max-width:660px;font-size:clamp(18px,1.9vw,22px);line-height:1.6;color:var(--green-soft);text-wrap:pretty;}

/* ---------- Footer ---------- */
footer{
  display:flex;align-items:center;justify-content:center;gap:14px;
  padding:40px 20px 34px;margin-top:30px;
  font-family:'Cormorant Garamond',serif;font-size:14px;letter-spacing:.28em;text-transform:uppercase;color:var(--green-soft);
}
footer span{white-space:nowrap;}
footer i{display:block;height:1px;width:30px;background:var(--line);}

@keyframes rise{from{transform:translateY(20px);}to{transform:translateY(0);}}

@media (max-width:880px){
  header{flex-direction:column;gap:18px;padding:22px 24px;position:static;}
  nav{gap:14px;flex-wrap:wrap;justify-content:center;}
  nav a{font-size:18px;}
}
