/* RESET */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:var(--ffb);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--leaf);color:var(--forest)}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer}

/* SECTION FRAMEWORK */
.section{padding:120px 48px;position:relative}
@media(max-width:768px){.section{padding:80px 20px}}
.section-inner{max-width:920px;margin:0 auto}
.sec-label{font-family:var(--ffs);font-size:12px;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--sage);margin-bottom:12px}
.sec-title{font-family:var(--ffd);font-size:clamp(32px,5vw,44px);font-weight:700;color:var(--ink);letter-spacing:-0.02em;line-height:1.1;margin-bottom:16px}
.sec-desc{font-family:var(--ffb);font-size:18px;color:var(--ink-3);line-height:1.7;max-width:600px;margin-bottom:48px}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 48px;height:64px;display:flex;align-items:center;justify-content:space-between;background:rgba(6,18,8,0.75);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(255,255,255,0.06);transition:background .4s}
.nav-brand{display:flex;align-items:center;gap:12px}
.nav-logo{width:36px;height:36px;background:var(--sage);border-radius:8px;display:flex;align-items:center;justify-content:center}
.nav-logo svg{width:20px;height:20px}
.nav-title{font-family:var(--ffd);font-size:17px;font-weight:700;color:#fff;letter-spacing:-0.01em}
.nav-sub{font-family:var(--ffs);font-size:11px;color:var(--sage-mist);margin-top:1px;letter-spacing:.04em}
.nav-links{display:flex;gap:28px}
.nav-link{font-family:var(--ffs);font-size:13px;font-weight:500;color:var(--sage-mist);position:relative;transition:color .3s}
.nav-link:hover{color:#fff}
.nav-link::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1.5px;background:var(--gold);transition:width .3s var(--ease-expo)}
.nav-link:hover::after{width:100%}
.nav-cta{font-family:var(--ffs);font-size:13px;font-weight:600;color:var(--forest-deep);background:var(--gold-light);padding:8px 20px;border-radius:var(--radius-sm);border:none;transition:all .3s}
.nav-cta:hover{background:var(--gold);transform:translateY(-1px);box-shadow:0 4px 12px rgba(200,160,80,0.3)}
@media(max-width:768px){.nav{padding:0 20px}.nav-links{display:none}}

/* BUTTONS */
.btn-primary{font-family:var(--ffs);font-size:15px;font-weight:600;color:var(--forest-deep);background:linear-gradient(135deg,var(--gold-light),var(--gold));padding:14px 36px;border-radius:8px;border:none;transition:all .3s var(--ease-expo);box-shadow:0 4px 20px rgba(200,160,80,0.25);display:inline-block;text-align:center}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(200,160,80,0.35)}
.btn-secondary{font-family:var(--ffs);font-size:15px;font-weight:500;color:var(--sage-mist);background:transparent;padding:14px 36px;border-radius:8px;border:1px solid var(--glass-border);transition:all .3s;display:inline-block;text-align:center}
.btn-secondary:hover{background:var(--glass-bg);border-color:var(--sage-mist);color:#fff}

/* TWO-COL */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media(max-width:700px){.two-col{grid-template-columns:1fr}}

/* FOOTER */
.footer{background:var(--forest-deep);padding:64px 48px 40px;border-top:1px solid rgba(255,255,255,0.06)}
.footer-inner{max-width:920px;margin:0 auto}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px;margin-bottom:48px}
@media(max-width:700px){.footer-grid{grid-template-columns:1fr;gap:32px}}
.footer-brand{font-family:var(--ffd);font-size:22px;font-weight:700;color:#fff;margin-bottom:12px}
.footer-desc{font-family:var(--ffb);font-size:14px;color:var(--sage-mist);line-height:1.6}
.footer-heading{font-family:var(--ffs);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--sage);margin-bottom:16px}
.footer-link{display:block;font-family:var(--ffs);font-size:14px;color:var(--sage-mist);margin-bottom:10px;transition:color .3s}
.footer-link:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.06);padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-family:var(--ffs);font-size:12px;color:var(--ink-4)}
