@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Dancing+Script:wght@700&family=Barlow:ital,wght@0,300;0,400;0,500;0,600;1,300&display=swap');
*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --g1:#0b2d1a;--g2:#1a5c3a;--g3:#2e8c58;--g4:#4ab87a;
  --cream:#fafaf5;--gold:#c8a84b;--gold2:#e8c96a;--white:#fff;--text:#1a2e1f;
}
html{scroll-behavior:smooth;}
body{background:var(--cream);font-family:'Barlow',sans-serif;overflow-x:hidden;color:var(--text);}

/* LEAF DECORATIONS */
.lc{position:fixed;pointer-events:none;z-index:0;}
.lc.tl{top:-20px;left:-20px;width:280px;opacity:0.13;}
.lc.tr{top:-10px;right:-30px;width:260px;opacity:0.10;transform:scaleX(-1);}
.lc.bl{bottom:-30px;left:-20px;width:240px;opacity:0.10;transform:scaleY(-1);}
.lc.br{bottom:-40px;right:-20px;width:300px;opacity:0.12;transform:scale(-1,-1);}

/* HEADER NAV */
header.site{position:sticky;top:0;z-index:100;background:var(--g1);border-bottom:1px solid rgba(200,168,75,0.25);}
.nav-wrap{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0.9rem 1.5rem;}
.brand{display:flex;align-items:center;gap:0.6rem;text-decoration:none;}
.brand-text{display:flex;flex-direction:column;line-height:1;}
.brand-bar{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;color:var(--white);letter-spacing:0.08em;}
.brand-script{font-family:'Dancing Script',cursive;font-size:1rem;color:var(--gold2);}
nav.links{display:flex;gap:0.5rem;}
nav.links a{font-family:'Bebas Neue',sans-serif;font-size:0.85rem;letter-spacing:0.1em;color:rgba(255,255,255,0.6);text-decoration:none;padding:0.5rem 0.9rem;border-radius:6px;transition:all 0.2s;position:relative;}
nav.links a:hover{color:var(--white);}
nav.links a.active{color:var(--white);}
nav.links a.active::after{content:'';position:absolute;bottom:0.1rem;left:0.9rem;right:0.9rem;height:2px;background:var(--gold2);}
.menu-toggle{display:none;background:none;border:none;color:var(--white);font-size:1.5rem;cursor:pointer;}

@media(max-width:680px){
  nav.links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--g1);flex-direction:column;padding:0.5rem 1.5rem 1rem;border-bottom:1px solid rgba(200,168,75,0.25);}
  nav.links.open{display:flex;}
  nav.links a{padding:0.7rem 0.5rem;border-bottom:1px solid rgba(255,255,255,0.06);}
  .menu-toggle{display:block;}
}

/* FOOTER */
footer.site{background:var(--g1);padding:2.5rem 1.5rem 1.75rem;text-align:center;position:relative;overflow:hidden;margin-top:4rem;}
footer.site::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.footer-inner{max-width:1100px;margin:0 auto;position:relative;z-index:2;}
.footer-logo{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;letter-spacing:0.15em;color:rgba(255,255,255,0.75);}
.footer-script{font-family:'Dancing Script',cursive;font-size:1.3rem;color:var(--gold2);display:block;margin-top:4px;margin-bottom:1.25rem;}
.footer-links{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1.25rem;flex-wrap:wrap;}
.footer-links a{color:rgba(255,255,255,0.45);font-size:0.85rem;text-decoration:none;}
.footer-links a:hover{color:var(--gold2);}
.footer-social{display:flex;justify-content:center;gap:1rem;margin-bottom:1.25rem;}
.footer-social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,0.06);border:1px solid rgba(200,168,75,0.2);display:flex;align-items:center;justify-content:center;color:var(--gold2);text-decoration:none;font-size:1.1rem;transition:all 0.2s;}
.footer-social a:hover{background:rgba(200,168,75,0.15);}
.footer-bottom{font-size:0.72rem;color:rgba(255,255,255,0.3);}

/* GENERIC SECTION */
.page-hero{background:var(--g1);padding:3.5rem 1.5rem 3rem;text-align:center;position:relative;overflow:hidden;}
.page-hero-inner{position:relative;z-index:2;max-width:700px;margin:0 auto;}
.page-eyebrow{font-family:'Barlow',sans-serif;font-size:0.75rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold2);margin-bottom:0.75rem;}
.page-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.2rem,6vw,3.5rem);color:var(--white);letter-spacing:0.05em;line-height:1;}
.page-script{font-family:'Dancing Script',cursive;font-size:clamp(1.2rem,3vw,1.6rem);color:var(--gold2);display:block;margin-top:0.5rem;}

.section{max-width:1100px;margin:0 auto;padding:3rem 1.5rem;}
.section-narrow{max-width:760px;margin:0 auto;padding:3rem 1.5rem;}
