
:root{
  --cream:#f5ecd8;
  --paper:#fffaf0;
  --brown:#4f382b;
  --green:#69764f;
  --green-dark:#4f5e3c;
  --terracotta:#bd684b;
  --gold:#b98a4f;
  --shadow:0 12px 32px rgba(79,56,43,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--brown);
  background:var(--cream);
  font-family:Georgia,"Times New Roman",serif;
}
a{color:inherit}
.site-bar{
  position:sticky; top:0; z-index:50;
  display:flex; align-items:center; justify-content:space-between; gap:18px;
  padding:10px clamp(14px,3vw,34px);
  background:rgba(245,236,216,.95);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(79,56,43,.12);
}
.brand{
  font-weight:700; letter-spacing:.04em; text-decoration:none; white-space:nowrap;
}
.nav{display:flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:flex-end}
.nav a{
  text-decoration:none;
  padding:9px 14px;
  border-radius:999px;
  font-family:Arial,sans-serif;
  font-size:14px;
}
.nav .ghost{border:1px solid rgba(79,56,43,.22)}
.nav .primary{
  background:var(--green);
  color:#fffaf0;
  border:1px solid var(--green-dark);
}
.hero{position:relative;width:100%;margin:0 auto;line-height:0}
.art{display:block;width:100%;height:auto}
.mobile{display:none}
.email{position:absolute;z-index:5;border-radius:999px}
@media (min-width:701px){
  .desktop{display:block}.mobile{display:none}
  .email{left:34%;top:89.5%;width:32%;height:7%}
}
@media (max-width:700px){
  .hero{width:100vw}
  .desktop{display:none}.mobile{display:block}
  .email{left:17.5%;top:72.2%;width:65%;height:6.2%}
  .site-bar{align-items:flex-start}
  .brand{font-size:14px;padding-top:8px}
  .nav{gap:5px}
  .nav a{font-size:12px;padding:7px 10px}
}
.email:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.home-actions{
  width:min(980px,92vw);
  margin:28px auto 54px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.action-card{
  background:rgba(255,250,240,.8);
  border:1px solid rgba(79,56,43,.12);
  border-radius:22px;
  padding:28px;
  text-align:center;
  box-shadow:var(--shadow);
}
.action-card h2{margin:0 0 10px;font-size:clamp(24px,3vw,38px)}
.action-card p{line-height:1.6;margin:0 0 20px;color:#6b584c}
.button{
  display:inline-block;
  background:var(--green);
  color:#fffaf0;
  text-decoration:none;
  border-radius:999px;
  padding:12px 20px;
  font-family:Arial,sans-serif;
  font-weight:700;
  border:1px solid var(--green-dark);
}
.button.alt{background:transparent;color:var(--brown);border-color:rgba(79,56,43,.35)}
@media(max-width:700px){.home-actions{grid-template-columns:1fr}}
.page-shell{width:min(1180px,92vw);margin:0 auto;padding:50px 0 70px}
.page-title{text-align:center;margin-bottom:38px}
.page-title .eyebrow{
  font-family:Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:12px;
  color:var(--green-dark);
  font-weight:700;
}
.page-title h1{
  margin:10px 0 10px;
  font-size:clamp(38px,6vw,72px);
  font-weight:500;
}
.page-title p{
  max-width:720px;
  margin:0 auto;
  font-size:18px;
  line-height:1.65;
  color:#6b584c;
}
.section-heading{
  display:flex;align-items:end;justify-content:space-between;gap:18px;
  margin:48px 0 18px;
  border-bottom:1px solid rgba(79,56,43,.16);
  padding-bottom:12px;
}
.section-heading h2{margin:0;font-size:clamp(28px,4vw,44px);font-weight:500}
.section-heading p{margin:0;font-family:Arial,sans-serif;color:#7b685a;font-size:14px}
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.card{
  overflow:hidden;
  background:var(--paper);
  border-radius:18px;
  box-shadow:var(--shadow);
  border:1px solid rgba(79,56,43,.10);
}
.card a{display:block;text-decoration:none}
.card img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  display:block;
  transition:transform .25s ease;
}
.card:hover img{transform:scale(1.025)}
.card .caption{padding:14px 16px 17px;line-height:1.3}
.card .caption strong{display:block;font-size:17px;font-weight:600}
.card .caption span{display:block;margin-top:5px;font-family:Arial,sans-serif;font-size:12px;color:#7a695d}
@media(max-width:850px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.gallery-grid{grid-template-columns:1fr}.page-shell{width:min(94vw,1180px);padding-top:34px}}
.support{
  margin-top:60px;
  border-radius:26px;
  padding:34px;
  background:linear-gradient(135deg,rgba(105,118,79,.14),rgba(189,104,75,.11));
  text-align:center;
  border:1px solid rgba(79,56,43,.10);
}
.support h2{margin:0 0 10px;font-size:32px}
.support p{max-width:700px;margin:0 auto 20px;line-height:1.6;color:#6b584c}
.footer{
  padding:28px 20px 40px;
  text-align:center;
  font-family:Arial,sans-serif;
  font-size:13px;
  color:#806f62;
}
