/* Cross-document view transitions — smooth cross-fade on page navigation */
@view-transition { navigation: auto; }

/* Self-hosted fonts — no external DNS lookup */
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/plus-jakarta-sans.woff2') format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:700;font-display:swap;src:url('/assets/fonts/fraunces-700-italic.woff2') format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/fraunces-700.woff2') format('woff2')}

/* Variables */
:root{--green:#1a7a4a;--green-dark:#0d4a2e;--green-light:#22c55e;--green-pale:#ecfdf5;--green-mid:#a7f3d0;--lime:#4ade80;--gold:#c9a84c;--gold-pale:#fef3c7;--dark:#0a1410;--text:#0a1410;--text2:#374151;--muted:#6b7280;--bg:#f6f8f6;--white:#fff;--border:#e5e7eb}

/* Reset */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--white);color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased}

/* Nav */
nav{position:sticky;top:0;z-index:100;padding:.9rem 6%;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid rgba(229,231,235,.6)}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.nav-logo-text{font-size:1.25rem;font-weight:800;color:var(--text);letter-spacing:-.5px;line-height:1}
.nav-logo-text span{color:var(--gold)}
.nav-logo-sub{font-size:.52rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-top:2px}
.nav-links{display:flex;gap:2rem;list-style:none;align-items:center}
.nav-links a{text-decoration:none;color:var(--text2);font-size:.88rem;font-weight:500;transition:color .15s}
.nav-links a:hover{color:var(--green)}
.nav-cta{background:var(--green)!important;color:#fff!important;padding:.55rem 1.3rem;border-radius:8px;font-weight:700!important;transition:all .2s}
.nav-cta:hover{background:var(--green-dark)!important;transform:translateY(-1px)}
.nav-back{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;color:var(--muted);text-decoration:none;transition:color .15s}
.nav-back:hover{color:var(--green)}

/* Buttons */
.btn-primary{background:var(--green);color:#fff;padding:.9rem 1.8rem;border-radius:10px;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .2s;box-shadow:0 4px 16px rgba(26,122,74,.3);border:none;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;font-family:inherit}
.btn-primary:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 8px 24px rgba(26,122,74,.4)}
.btn-secondary{color:var(--text);background:#fff;border:1.5px solid var(--border);padding:.9rem 1.8rem;border-radius:10px;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-family:inherit}
.btn-secondary:hover{border-color:var(--green);color:var(--green)}
.btn-white{background:#fff;color:var(--green);padding:.9rem 2rem;border-radius:10px;font-weight:800;font-size:.95rem;text-decoration:none;transition:all .2s;white-space:nowrap;display:inline-flex;align-items:center;gap:.5rem;box-shadow:0 4px 16px rgba(0,0,0,.1)}
.btn-white:hover{background:var(--green-pale);transform:translateY(-1px)}
.btn-outline-white{border:2px solid rgba(255,255,255,.3);color:#fff;padding:.9rem 2rem;border-radius:10px;font-weight:700;font-size:.95rem;text-decoration:none;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}
.btn-outline-white:hover{border-color:#fff;background:rgba(255,255,255,.05)}

/* Section headers */
.section-label{font-size:.7rem;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:.6rem}
.section-title{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:800;color:var(--dark);line-height:1.15;margin-bottom:1rem;letter-spacing:-.8px}
.section-title em{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:700;color:var(--green)}
.section-sub{font-size:1rem;color:var(--muted);max-width:540px;line-height:1.7;margin-bottom:3rem}

/* Footer */
footer{background:#050807;padding:4rem 6% 2rem}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.footer-logo-text{font-size:1.2rem;font-weight:800;color:#fff;letter-spacing:-.5px}
.footer-logo-text span{color:var(--gold)}
.footer-tagline{font-size:.82rem;color:rgba(255,255,255,.65);line-height:1.7;max-width:260px;margin-top:.75rem}
.footer-contact{display:flex;flex-direction:column;gap:.6rem;margin-top:1.25rem}
.footer-contact a{font-size:.82rem;color:rgba(255,255,255,.55);text-decoration:none;display:flex;align-items:center;gap:.5rem;transition:color .15s}
.footer-contact a:hover{color:var(--lime)}
.footer-col h3,.footer-col h4{font-size:.75rem;font-weight:700;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:1px;margin-bottom:1.1rem}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.65rem}
.footer-col ul li a{font-size:.82rem;color:rgba(255,255,255,.55);text-decoration:none;transition:color .15s}
.footer-col ul li a:hover{color:var(--lime)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.07);padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.footer-bottom p{font-size:.75rem;color:rgba(255,255,255,.6)}
.footer-bottom-links{display:flex;gap:1.5rem}
.footer-bottom-links a{font-size:.75rem;color:rgba(255,255,255,.6);text-decoration:none;transition:color .15s}
.footer-bottom-links a:hover{color:var(--lime)}

/* Animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0;transform:translateY(-50%) scale(.95)}to{opacity:1;transform:translateY(-50%) scale(1)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}

/* Responsive */
@media(max-width:900px){.nav-links li:not(:last-child){display:none}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.footer-grid{grid-template-columns:1fr}}
