/* ── CURSOR ──────────────────────────────────────── */
#cur-dot{position:fixed;top:0;left:0;width:8px;height:8px;background:var(--accent);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s}
#cur-ring{position:fixed;top:0;left:0;width:36px;height:36px;border:1.5px solid var(--accent);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);opacity:.5;transition:width .2s,height .2s,opacity .2s,border-color .2s}
.cg #cur-dot{width:14px;height:14px;background:var(--accent-mid)}
.cg #cur-ring{width:52px;height:52px;border-color:var(--accent-mid);opacity:.3}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}
/* ── TYPE ────────────────────────────────────────── */
.label{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:10px;margin-bottom:16px}
.label::before{content:'';display:block;width:22px;height:1.5px;background:var(--accent)}
.section-heading{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.8vw,42px);font-weight:500;line-height:1.15;letter-spacing:-.022em;color:var(--text);margin-bottom:var(--space-2)}
.section-heading em{font-style:italic;color:var(--accent)}
.section-sub{font-size:15.5px;color:var(--text-2);line-height:1.78;max-width:480px}
.tag{display:inline-flex;align-items:center;padding:4px 11px;border-radius:40px;font-size:10.5px;font-weight:700;letter-spacing:.04em}
.tag-real{background:var(--real-bg);color:var(--real-text)}
.tag-concept{background:var(--concept-bg);color:var(--concept-text)}
.tag-neutral{background:var(--tag-bg);color:var(--tag-text)}
.tag-green{background:var(--accent-light);color:var(--accent)}

/* ── BUTTONS ─────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:600;border-radius:var(--r-sm);transition:background var(--t-xs),box-shadow var(--t-xs),transform var(--t-xs),color var(--t-xs);white-space:nowrap}
.btn-primary{background:var(--accent);color:#fff;padding:13px var(--space-4)}
.btn-primary:hover{background:var(--accent-mid);box-shadow:0 6px 28px rgba(61,107,79,.28);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--accent);padding:12px 24px;border:1.5px solid var(--accent)}
.btn-ghost:hover{background:var(--accent-light)}
.btn-arrow{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none;flex-shrink:0;transition:transform var(--t-xs)}
.btn:hover .btn-arrow{transform:translateX(3px)}
.btn-white{display:inline-flex;align-items:center;gap:7px;background:#fff;color:var(--accent);padding:12px 22px;border-radius:var(--r-sm);font-size:14px;font-weight:700;transition:opacity .15s,transform .15s}
.btn-white:hover{opacity:.92;transform:translateY(-1px)}
.btn-outline-white{display:inline-flex;align-items:center;gap:7px;background:transparent;color:rgba(255,255,255,.85);padding:11px 22px;border-radius:var(--r-sm);font-size:14px;font-weight:600;border:1.5px solid rgba(255,255,255,.3);transition:border-color .15s,color .15s}
.btn-outline-white:hover{border-color:rgba(255,255,255,.7);color:#fff}

/* ── NAV ─────────────────────────────────────────── */
nav{position:sticky;top:0;z-index:200;background:rgba(245,244,239,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px;max-width:var(--mw);margin:0 auto;padding:0 var(--container-pad)}
.nav-logo{display:flex;align-items:center;gap:10px}
.nav-logo-mark svg{width:28px;height:28px;display:block}
.nav-logo-wordmark{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:500;color:var(--text);letter-spacing:-.01em;line-height:1}
.nav-links{display:flex;align-items:center;gap:var(--space-5)}
.nav-links a{font-size:13px;font-weight:500;color:var(--text-3);transition:color var(--t-xs)}
.nav-links a:hover,.nav-links a.active{color:var(--text);font-weight:600}
.nav-right{display:flex;align-items:center;gap:14px}
.nav-pill{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--accent);background:var(--accent-light);border:1px solid var(--accent-line);padding:6px 14px;border-radius:40px;letter-spacing:.01em;white-space:nowrap}
.nav-pill-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:blink 2.4s ease infinite}
.nav-hamburger{display:none;flex-direction:column;gap:5px;padding:8px}
.nav-hamburger span{display:block;width:22px;height:1.5px;background:var(--text);transition:transform var(--t-sm),opacity var(--t-sm)}
.nav-mobile{display:none;position:absolute;top:64px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--border);padding:var(--space-4) var(--container-pad) var(--space-5);flex-direction:column;gap:var(--space-4);z-index:199}
.nav-mobile.open{display:flex}
.nav-mobile a{font-size:15px;font-weight:500;color:var(--text-2)}

/* Reusable section intro pattern */
.section-intro{max-width:620px}
.section-intro--row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}

/* Utility classes replacing inline styles */
.btn-compact{flex-shrink:0;font-size:13px}
.link-inherit{color:inherit}
.pip-cert-1{background:#3D6B4F}.pip-cert-2{background:#4E7D60}.pip-cert-3{background:#6B9E82}.pip-cert-4{background:#8FB8A2}.pip-cert-5{background:#B0CFC0}

@media(max-width:1000px){
  body{cursor:auto}
  #cur-dot,#cur-ring{display:none}
  .nav-hamburger{display:flex}
  .nav-links{display:none}
}
