@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/Inter-roman.var.woff2') format('woff2-variations'),url('/fonts/Inter-roman.var.woff2') format('woff2');font-named-instance:'Regular'}:root{--grove-green:#4ADE80;--grove-green-light:#6AE89B;--grove-green-dark:#2D9A5E;--grove-green-deep:#1A7A42;--grove-teal:#2DD4BF;--grove-teal-dark:#0D9488;--grove-blue:#4B8FE5;--grove-blue-dark:#2563EB;--grove-bg:#F5F0E8;--grove-bg-secondary:#EDE8E0;--grove-bg-tertiary:#E5E0D8;--grove-bg-dark:#DCD6CC;--grove-bg-pure:#FFFFFF;--grove-text-primary:#1E293B;--grove-text-secondary:#4B5563;--grove-text-tertiary:#5F6772;--grove-text-muted:#7A828F;--grove-glow-inner:rgba(150,255,180,0.55);--grove-glow-mid:rgba(74,222,128,0.35);--grove-glow-outer:rgba(74,222,128,0.18);--grove-glow-depth:rgba(45,154,94,0.25);--grove-green-rgb:74,222,128;--grove-teal-rgb:45,212,191;--grove-shadow-light:rgba(255,255,255,0.68);--grove-shadow-dark:rgba(180,170,155,0.38);--grove-shadow-dark-soft:rgba(180,170,155,0.25);--grove-frost-bg:rgba(245,240,232,0.65);--grove-frost-border:rgba(255,255,255,0.40);--grove-radius-xs:16px;--grove-radius-sm:32px;--grove-radius-md:48px;--grove-radius-lg:64px;--grove-radius-pill:999px;--grove-spring:cubic-bezier(0.34,1.56,0.64,1);--grove-smooth:cubic-bezier(0.4,0,0.2,1);--grove-ease-transform:cubic-bezier(0.23,1,0.32,1);--grove-duration-fast:0.25s;--grove-duration-normal:0.4s;--grove-duration-slow:0.6s;--grove-font-body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--grove-font-display:'Inter',sans-serif}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{background:var(--grove-bg);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");background-size:256px 256px;color:var(--grove-text-primary);font-family:var(--grove-font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}a{color:var(--grove-green-dark);text-decoration:none}a:hover{color:var(--grove-green-deep)}img{max-width:100%;height:auto;display:block}.grove-logo{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:8px;border-radius:34px;user-select:none;-webkit-user-select:none;background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 30%,var(--grove-bg-secondary) 65%,var(--grove-bg-tertiary) 100%);box-shadow:-1px -1px 3px rgba(255,255,255,0.88),1px 1px 3px rgba(180,170,155,0.32),-4px -4px 10px rgba(255,255,255,0.68),4px 4px 10px rgba(180,170,155,0.26),-8px -8px 22px rgba(255,255,255,0.48),8px 8px 22px rgba(180,170,155,0.20),-14px -14px 38px rgba(255,255,255,0.30),14px 14px 38px rgba(180,170,155,0.12),inset 0 2px 4px rgba(255,255,255,0.68),inset 0 -2px 4px rgba(180,170,155,0.08)}.grove-logo__well{position:relative;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:26px;background:linear-gradient(160deg,#E8E3DA 0%,var(--grove-bg-tertiary) 50%,#E0DBD2 100%);box-shadow:inset 2px 2px 5px rgba(180,170,155,0.40),inset -2px -2px 5px rgba(255,255,255,0.50),inset 4px 4px 10px rgba(160,148,130,0.28),inset -4px -4px 10px rgba(255,255,255,0.35),inset 7px 7px 18px rgba(150,138,120,0.18),inset -7px -7px 18px rgba(255,255,255,0.22)}.grove-logo__well::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;box-shadow:inset 0 0 8px rgba(74,222,128,0.24),inset 0 0 16px rgba(74,222,128,0.14),inset 0 0 3px rgba(75,143,229,0.08);opacity:0.4;will-change:opacity;animation:grove-logo-edge-glow 6s ease-in-out infinite}.grove-logo__well::after{content:'';position:absolute;inset:-1px;border-radius:inherit;border:1px solid rgba(74,222,128,0.22);pointer-events:none;z-index:1;opacity:0.4;will-change:opacity;animation:grove-logo-rim-pulse 6s ease-in-out infinite}.grove-logo__text{position:relative;z-index:2;display:flex;align-items:center;border-radius:22px;overflow:hidden}.grove-logo__the{display:flex;align-items:center;justify-content:center;padding:8px 16px 8px 18px;border-radius:22px 0 0 22px;background:linear-gradient(150deg,#FAF7F2 0%,var(--grove-bg) 40%,var(--grove-bg-secondary) 100%);box-shadow:2px 2px 5px rgba(180,170,155,0.30),-1px -1px 4px rgba(255,255,255,0.50),inset 0 2px 3px rgba(255,255,255,0.60),inset 0 -1px 2px rgba(180,170,155,0.10)}.grove-logo__the span{font-family:var(--grove-font-display);font-size:11px;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;line-height:1;color:transparent;background:linear-gradient(160deg,rgba(120,110,95,0.68) 0%,rgba(150,140,125,0.50) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.grove-logo__grv{display:flex;align-items:center;justify-content:center;padding:8px 14px 8px 12px;border-radius:0 22px 22px 0;background:linear-gradient(155deg,#E2DDD4 0%,var(--grove-bg-tertiary) 50%,#DDD8CF 100%);box-shadow:inset 2px 2px 5px rgba(180,170,155,0.35),inset -2px -2px 5px rgba(255,255,255,0.42),inset 4px 4px 10px rgba(160,148,130,0.20),inset -4px -4px 10px rgba(255,255,255,0.28)}.grove-logo__grv span,.grove-logo__zero{font-family:var(--grove-font-display);font-size:14.5px;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;line-height:1}.grove-logo__grv span{color:transparent;background:linear-gradient(160deg,rgba(120,110,95,0.62) 0%,rgba(150,140,125,0.46) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:grove-logo-text-pulse 6s ease-in-out infinite}.grove-logo__zero{display:inline-block;color:transparent;background:linear-gradient(145deg,var(--grove-green-light) 0%,var(--grove-green) 45%,var(--grove-green-dark) 80%,var(--grove-blue) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 4px rgba(74,222,128,0.35));animation:grove-logo-zero-pulse 6s ease-in-out infinite}.grove-site-header{position:sticky;top:0;z-index:100;padding:12px 24px;background:var(--grove-bg);border-bottom:1px solid rgba(180,170,155,0.15);backdrop-filter:blur(12px)}.grove-header-inner{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto}.grove-header-logo{text-decoration:none;flex-shrink:0}.grove-nav{display:none;align-items:center;gap:28px}.grove-nav a:not(.grove-btn-primary){display:inline-flex;align-items:center;color:var(--grove-text-primary);text-decoration:none;font-weight:600;font-size:0.9rem;letter-spacing:0.01em;padding:8px 18px;border-radius:var(--grove-radius-pill);background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 40%,var(--grove-bg-secondary) 100%);box-shadow:-1px -1px 3px rgba(255,255,255,0.80),1px 1px 3px rgba(180,170,155,0.25),-3px -3px 8px rgba(255,255,255,0.55),3px 3px 8px rgba(180,170,155,0.18);transition:all var(--grove-duration-fast) var(--grove-smooth)}.grove-nav a:not(.grove-btn-primary):hover{color:var(--grove-green-dark);transform:translateY(-2px);box-shadow:-2px -2px 6px rgba(255,255,255,0.88),2px 2px 6px rgba(180,170,155,0.32),-5px -5px 14px rgba(255,255,255,0.65),5px 5px 14px rgba(180,170,155,0.22)}.grove-btn-primary{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(160deg,#6AE89B 0%,var(--grove-green) 40%,var(--grove-green-dark) 100%);color:#fff;border:none;border-radius:var(--grove-radius-pill);padding:12px 28px;font-family:var(--grove-font-body);font-weight:600;font-size:0.9rem;letter-spacing:0.01em;text-decoration:none;cursor:pointer;box-shadow:-2px -2px 6px rgba(255,255,255,0.55),2px 2px 6px rgba(180,170,155,0.25),-5px -5px 14px rgba(255,255,255,0.35),5px 5px 14px rgba(180,170,155,0.15),inset 0 2px 4px rgba(150,255,180,0.45),0 4px 18px var(--grove-glow-mid),0 8px 36px var(--grove-glow-outer);transition:all var(--grove-duration-fast) var(--grove-smooth)}.grove-btn-primary:hover{color:#fff;background:linear-gradient(160deg,var(--grove-green) 0%,var(--grove-green-dark) 50%,var(--grove-green-deep) 100%);transform:translateY(-3px);box-shadow:-3px -3px 8px rgba(255,255,255,0.65),3px 3px 8px rgba(180,170,155,0.30),-7px -7px 18px rgba(255,255,255,0.45),7px 7px 18px rgba(180,170,155,0.20),inset 0 2px 6px rgba(150,255,180,0.55),0 6px 26px rgba(74,222,128,0.45),0 12px 52px rgba(74,222,128,0.28)}.grove-nav .grove-btn-primary{font-size:0.85rem;padding:10px 24px}.grove-burger{position:relative;z-index:101;display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:10px;min-width:44px;min-height:44px;align-items:center;justify-content:center}.grove-burger span{display:block;width:24px;height:2px;background:var(--grove-text-primary);border-radius:2px;transition:all var(--grove-duration-fast) var(--grove-smooth)}.grove-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.grove-burger[aria-expanded="true"] span:nth-child(2){opacity:0}.grove-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.grove-mobile-menu{display:none;position:fixed;inset:0;z-index:99;background:var(--grove-bg);flex-direction:column;align-items:center;justify-content:center;gap:24px;overflow-y:auto;padding:80px 24px 40px;-webkit-overflow-scrolling:touch}.grove-mobile-menu.grove-mobile-menu--open{display:flex}.grove-mobile-menu a{color:var(--grove-text-primary);text-decoration:none;font-size:1.25rem;font-weight:600;transition:color var(--grove-duration-fast) var(--grove-smooth)}.grove-mobile-menu a:hover{color:var(--grove-green-dark)}body.grove-menu-open{overflow:hidden}.grove-blog-container{max-width:1200px;margin:0 auto;padding:0 24px}.grove-blog-hero{text-align:center;padding:80px 24px 48px;max-width:800px;margin:0 auto}.grove-blog-hero__badge{display:inline-block;padding:8px 22px;border-radius:var(--grove-radius-pill);font-size:0.8rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:24px;background:linear-gradient(160deg,#E8E3DA 0%,var(--grove-bg-tertiary) 50%,#E0DBD2 100%);color:var(--grove-green-deep);box-shadow:inset 2px 2px 5px rgba(180,170,155,0.30),inset -2px -2px 5px rgba(255,255,255,0.45),inset 4px 4px 10px rgba(160,148,130,0.18),inset -4px -4px 10px rgba(255,255,255,0.30)}.grove-blog-hero__badge::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--grove-green);margin-right:10px;vertical-align:middle;box-shadow:0 0 12px rgba(74,222,128,0.7);will-change:opacity;animation:grove-dot-pulse 3s ease-in-out infinite}.grove-blog-hero__title{font-size:clamp(2rem,5vw,3rem);font-weight:800;line-height:1.15;color:var(--grove-text-primary);margin-bottom:20px}.grove-blog-hero__subtitle{font-size:clamp(1.05rem,2.5vw,1.2rem);color:var(--grove-text-secondary);line-height:1.65;max-width:600px;margin:0 auto 24px}.grove-blog-hero__meta{display:flex;align-items:center;justify-content:center;gap:20px;font-size:0.85rem;color:var(--grove-text-tertiary);font-weight:500}.grove-blog-hero__meta span{display:inline-flex;align-items:center;gap:6px}.grove-blog-section{padding:48px 24px;max-width:800px;margin:0 auto}.grove-blog-section--wide{max-width:1000px}.grove-blog-section__header{margin-bottom:32px}.grove-blog-section__badge{display:inline-block;padding:5px 14px;border-radius:var(--grove-radius-pill);font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:12px;color:var(--grove-green-deep);background:linear-gradient(160deg,var(--grove-bg) 0%,var(--grove-bg-secondary) 100%);box-shadow:-1px -1px 3px rgba(255,255,255,0.75),1px 1px 3px rgba(180,170,155,0.22)}.grove-blog-section__title{font-size:clamp(1.5rem,4vw,2rem);font-weight:700;line-height:1.25;color:var(--grove-text-primary)}.grove-blog-prose{font-size:1.125rem;line-height:1.8;color:var(--grove-text-primary)}.grove-blog-prose p{margin-bottom:1.5em}.grove-blog-prose p:last-child{margin-bottom:0}.grove-blog-prose strong{font-weight:600;color:var(--grove-text-primary)}.grove-blog-prose em{font-style:italic}.grove-lead{font-size:1.25rem;font-weight:500;line-height:1.7;color:var(--grove-text-primary);margin-bottom:1.5em}.grove-aside{padding:24px 28px;border-radius:var(--grove-radius-sm);background:var(--grove-bg-secondary);margin:2em 0;font-size:0.95rem;line-height:1.7;color:var(--grove-text-secondary);box-shadow:inset 2px 2px 6px rgba(180,170,155,0.25),inset -2px -2px 6px rgba(255,255,255,0.40)}.grove-aside p{margin-bottom:0.75em}.grove-aside p:last-child{margin-bottom:0}.grove-definition{display:inline;border-bottom:2px dotted rgba(74,222,128,0.4);cursor:help}.grove-definition::after{content:attr(data-def);display:none;position:absolute;background:var(--grove-bg-secondary);border-radius:var(--grove-radius-xs);padding:12px 16px;font-size:0.85rem;line-height:1.5;color:var(--grove-text-secondary);box-shadow:-2px -2px 6px rgba(255,255,255,0.65),2px 2px 6px rgba(180,170,155,0.25),0 4px 12px rgba(0,0,0,0.06);z-index:10;max-width:280px}.grove-pullquote{position:relative;padding:36px 40px 36px 52px;margin:2.5em 0;border-radius:var(--grove-radius-sm);background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 25%,var(--grove-bg-secondary) 55%,var(--grove-bg-tertiary) 100%);border:1px solid rgba(74,222,128,0.08);box-shadow:inset 0 3px 5px rgba(255,255,255,0.72),inset 0 -3px 5px rgba(180,170,155,0.15),inset 3px 0 4px rgba(255,255,255,0.30),inset -3px 0 4px rgba(180,170,155,0.10),inset 3px 3px 9px rgba(180,170,155,0.38),inset -3px -3px 9px rgba(255,255,255,0.52),inset 6px 6px 18px rgba(180,170,155,0.28),inset -6px -6px 18px rgba(255,255,255,0.42),inset 10px 10px 32px rgba(180,170,155,0.18),inset -10px -10px 32px rgba(255,255,255,0.28),inset 16px 16px 48px rgba(180,170,155,0.10),inset -16px -16px 48px rgba(255,255,255,0.16),-1px -1px 3px rgba(255,255,255,0.85),1px 1px 3px rgba(180,170,155,0.38),-3px -3px 9px rgba(255,255,255,0.72),3px 3px 9px rgba(180,170,155,0.32),-6px -6px 18px rgba(255,255,255,0.58),6px 6px 18px rgba(180,170,155,0.26),-10px -10px 32px rgba(255,255,255,0.42),10px 10px 32px rgba(180,170,155,0.20)}.grove-pullquote::before{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 44px rgba(74,222,128,0.16),inset 0 0 88px rgba(74,222,128,0.10),inset 0 0 120px rgba(74,222,128,0.04);pointer-events:none;z-index:1;opacity:0.4;will-change:opacity;animation:grove-edge-glow 6s ease-in-out infinite}.grove-pullquote::after{content:'';position:absolute;left:24px;top:24px;bottom:24px;width:4px;border-radius:3px;z-index:2;background:linear-gradient(180deg,#DDD8CF 0%,var(--grove-bg-tertiary) 50%,#D8D3CA 100%);box-shadow:inset 1px 1px 2px rgba(160,148,130,0.50),inset -1px -1px 2px rgba(255,255,255,0.40),inset 0 0 6px rgba(74,222,128,0.55),inset 0 0 10px rgba(74,222,128,0.35),0 0 8px rgba(74,222,128,0.40),0 0 18px rgba(74,222,128,0.22),0 0 32px rgba(74,222,128,0.10);will-change:opacity;animation:grove-line-pulse 6s ease-in-out infinite}.grove-pullquote p{font-size:1.2rem;font-weight:500;line-height:1.6;color:var(--grove-text-primary);font-style:italic;position:relative;z-index:3}.grove-pullquote cite{display:block;margin-top:12px;font-size:0.85rem;font-style:normal;color:var(--grove-text-tertiary);font-weight:500;position:relative;z-index:3}.grove-stat-row{display:grid;grid-template-columns:1fr;gap:20px;margin:2.5em 0}.grove-stat-card{padding:32px 28px;border-radius:var(--grove-radius-sm);background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 40%,var(--grove-bg-secondary) 100%);text-align:center;box-shadow:-2px -2px 6px rgba(255,255,255,0.75),2px 2px 6px rgba(180,170,155,0.28),-6px -6px 16px rgba(255,255,255,0.55),6px 6px 16px rgba(180,170,155,0.20),-12px -12px 32px rgba(255,255,255,0.35),12px 12px 32px rgba(180,170,155,0.14);transition:box-shadow var(--grove-duration-normal) var(--grove-smooth)}.grove-stat-card__number{font-size:clamp(2.5rem,6vw,3.5rem);font-weight:800;line-height:1;margin-bottom:8px;background:linear-gradient(135deg,var(--grove-green-light),var(--grove-green-deep));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 2px 8px rgba(74,222,128,0.18))}.grove-stat-card__label{font-size:1rem;font-weight:500;color:var(--grove-text-primary);margin-bottom:8px;line-height:1.4}.grove-stat-card__source{font-size:0.75rem;color:var(--grove-text-tertiary);font-weight:500}.grove-data-callout{display:flex;align-items:flex-start;gap:16px;padding:24px 28px;margin:2em 0;border-radius:var(--grove-radius-sm);background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 100%);box-shadow:-2px -2px 5px rgba(255,255,255,0.70),2px 2px 5px rgba(180,170,155,0.24),-5px -5px 14px rgba(255,255,255,0.50),5px 5px 14px rgba(180,170,155,0.16)}.grove-data-callout__icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--grove-green-light),var(--grove-green-dark));display:flex;align-items:center;justify-content:center;font-size:1.1rem;box-shadow:0 0 12px rgba(74,222,128,0.2),inset 0 1px 3px rgba(150,255,180,0.4)}.grove-data-callout__text{font-size:1rem;line-height:1.6;color:var(--grove-text-primary)}.grove-data-callout__text strong{font-weight:700}.grove-blog-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:var(--grove-radius-pill);font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--grove-green-deep);background:linear-gradient(160deg,var(--grove-bg) 0%,var(--grove-bg-secondary) 100%);box-shadow:-1px -1px 3px rgba(255,255,255,0.75),1px 1px 3px rgba(180,170,155,0.22)}.grove-footnote{display:block;margin-top:1em;padding:12px 0;font-size:0.8rem;color:var(--grove-text-tertiary);border-top:1px solid rgba(180,170,155,0.15);line-height:1.5}.grove-footnote a{color:var(--grove-text-tertiary);text-decoration:underline;text-decoration-color:rgba(74,222,128,0.3);text-underline-offset:2px}.grove-footnote a:hover{color:var(--grove-green-dark)}.grove-section-divider{position:relative;width:100%;height:60px;margin:0;overflow:hidden;color:var(--grove-bg)}.grove-section-divider svg{display:block;width:100%;height:100%}.grove-series-card{display:flex;align-items:center;gap:16px;padding:20px 24px;border-radius:var(--grove-radius-sm);background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 100%);margin-bottom:32px;box-shadow:-1px -1px 3px rgba(255,255,255,0.75),1px 1px 3px rgba(180,170,155,0.22),-3px -3px 8px rgba(255,255,255,0.55),3px 3px 8px rgba(180,170,155,0.15)}.grove-series-card__number{flex-shrink:0;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--grove-green-light),var(--grove-green-dark));display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800;color:#fff;box-shadow:inset 0 2px 4px rgba(150,255,180,0.45),0 0 12px rgba(74,222,128,0.2)}.grove-series-card__label{font-size:0.8rem;font-weight:600;color:var(--grove-text-tertiary);text-transform:uppercase;letter-spacing:0.06em}.grove-series-card__title{font-size:0.95rem;font-weight:600;color:var(--grove-text-primary)}.grove-blog-toc{padding:32px 28px;border-radius:var(--grove-radius-sm);background:var(--grove-bg-secondary);margin:0 auto 48px;max-width:600px;box-shadow:inset 2px 2px 6px rgba(180,170,155,0.28),inset -2px -2px 6px rgba(255,255,255,0.42),inset 5px 5px 14px rgba(160,148,130,0.18),inset -5px -5px 14px rgba(255,255,255,0.28);position:relative}.grove-blog-toc::before{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 44px rgba(74,222,128,0.16),inset 0 0 88px rgba(74,222,128,0.10),inset 0 0 120px rgba(74,222,128,0.04);pointer-events:none;z-index:1;opacity:0.4;will-change:opacity;animation:grove-edge-glow 6s ease-in-out infinite}.grove-blog-toc::after{content:'';position:absolute;inset:-1px;border-radius:inherit;border:1px solid rgba(74,222,128,0.20);pointer-events:none;z-index:2;opacity:0.4;will-change:opacity;animation:grove-breathe-border 6s ease-in-out infinite}.grove-blog-toc__title{font-size:0.8rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--grove-text-tertiary);margin-bottom:20px;text-align:center;position:relative;z-index:3}.grove-blog-toc__list{list-style:none;counter-reset:toc-counter;display:flex;flex-direction:column;gap:10px;position:relative;z-index:3}.grove-blog-toc__list li{counter-increment:toc-counter}.grove-blog-toc__list li a{display:flex;align-items:center;gap:14px;padding:14px 20px;border-radius:var(--grove-radius-xs);font-size:0.9rem;font-weight:500;color:var(--grove-text-secondary);text-decoration:none;background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 40%,var(--grove-bg-secondary) 100%);box-shadow:-1px -1px 3px rgba(255,255,255,0.72),1px 1px 3px rgba(180,170,155,0.22),-3px -3px 8px rgba(255,255,255,0.50),3px 3px 8px rgba(180,170,155,0.15);transition:transform var(--grove-duration-fast) var(--grove-smooth),box-shadow var(--grove-duration-fast) var(--grove-smooth),background var(--grove-duration-fast) var(--grove-smooth),color var(--grove-duration-fast) var(--grove-smooth)}.grove-blog-toc__list li a:hover{color:var(--grove-green-dark);transform:translateY(-2px);box-shadow:-2px -2px 6px rgba(255,255,255,0.82),2px 2px 6px rgba(180,170,155,0.28),-5px -5px 14px rgba(255,255,255,0.58),5px 5px 14px rgba(180,170,155,0.20),0 0 16px rgba(74,222,128,0.10)}.grove-blog-toc__list li a:active{transform:translateY(1px);background:linear-gradient(160deg,#E8E3DA 0%,var(--grove-bg-tertiary) 50%,#E0DBD2 100%);box-shadow:inset 2px 2px 6px rgba(180,170,155,0.35),inset -2px -2px 6px rgba(255,255,255,0.45),inset 5px 5px 14px rgba(160,148,130,0.20),inset -5px -5px 14px rgba(255,255,255,0.28)}.grove-blog-toc__list li a::before{content:counter(toc-counter,decimal-leading-zero);flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-size:0.7rem;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--grove-green-light),var(--grove-green-dark));box-shadow:inset 0 2px 3px rgba(150,255,180,0.40),0 0 8px rgba(74,222,128,0.18);transition:box-shadow var(--grove-duration-fast) var(--grove-smooth)}.grove-blog-toc__list li a:hover::before{box-shadow:inset 0 2px 3px rgba(150,255,180,0.45),0 0 14px rgba(74,222,128,0.32),0 0 28px rgba(74,222,128,0.14)}.grove-series-section{padding:60px 24px;max-width:1000px;margin:0 auto}.grove-series-section__title{text-align:center;font-size:clamp(1.25rem,3vw,1.5rem);font-weight:700;color:var(--grove-text-primary);margin-bottom:32px}.grove-series-grid{display:grid;grid-template-columns:1fr;gap:20px}.grove-series-grid__card{display:block;padding:24px 28px;border-radius:var(--grove-radius-sm);background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 40%,var(--grove-bg-secondary) 100%);text-decoration:none;transition:all var(--grove-duration-normal) var(--grove-smooth);box-shadow:-2px -2px 5px rgba(255,255,255,0.70),2px 2px 5px rgba(180,170,155,0.24),-5px -5px 14px rgba(255,255,255,0.50),5px 5px 14px rgba(180,170,155,0.16)}.grove-series-grid__card:hover{transform:translateY(-4px);box-shadow:-3px -3px 8px rgba(255,255,255,0.80),3px 3px 8px rgba(180,170,155,0.30),-8px -8px 22px rgba(255,255,255,0.60),8px 8px 22px rgba(180,170,155,0.20),-14px -14px 38px rgba(255,255,255,0.40),14px 14px 38px rgba(180,170,155,0.14)}.grove-series-grid__card-badge{font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--grove-green-dark);margin-bottom:8px}.grove-series-grid__card-title{font-size:1.05rem;font-weight:600;color:var(--grove-text-primary);margin-bottom:6px;line-height:1.3}.grove-series-grid__card-hook{font-size:0.85rem;color:var(--grove-text-secondary);line-height:1.5}.grove-blog-nav{display:flex;flex-direction:column;gap:16px;padding:48px 24px;max-width:800px;margin:0 auto}.grove-blog-nav__link{display:flex;align-items:center;gap:16px;padding:20px 24px;border-radius:var(--grove-radius-sm);text-decoration:none;background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 100%);box-shadow:-1px -1px 3px rgba(255,255,255,0.75),1px 1px 3px rgba(180,170,155,0.22),-3px -3px 8px rgba(255,255,255,0.55),3px 3px 8px rgba(180,170,155,0.15);transition:all var(--grove-duration-fast) var(--grove-smooth)}.grove-blog-nav__link:hover{transform:translateY(-2px);box-shadow:-2px -2px 6px rgba(255,255,255,0.80),2px 2px 6px rgba(180,170,155,0.28),-6px -6px 16px rgba(255,255,255,0.60),6px 6px 16px rgba(180,170,155,0.20)}.grove-blog-nav__label{font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--grove-text-tertiary)}.grove-blog-nav__title{font-size:0.95rem;font-weight:600;color:var(--grove-text-primary)}.grove-blog-cta{text-align:center;padding:60px 24px;max-width:700px;margin:0 auto}.grove-blog-cta__title{font-size:clamp(1.25rem,3.5vw,1.75rem);font-weight:700;color:var(--grove-text-primary);margin-bottom:12px}.grove-blog-cta__text{font-size:1rem;color:var(--grove-text-secondary);line-height:1.65;margin-bottom:28px;max-width:500px;margin-left:auto;margin-right:auto}.grove-blog-cta--subscribe .grove-blog-cta__form{max-width:480px;margin:24px auto 0}.grove-blog-cta--subscribe .grove-blog-cta__form-row{display:flex;flex-direction:column;gap:12px}.grove-blog-cta--subscribe .grove-blog-cta__form-row input[type="email"]{padding:14px 18px;border:2px solid var(--grove-bg-dark,#DCD6CC);border-radius:12px;background:var(--grove-bg-pure,#fff);color:var(--grove-text-primary,#1E293B);font-size:1rem;font-family:inherit;outline:none;transition:border-color 0.3s ease}.grove-blog-cta--subscribe .grove-blog-cta__form-row input[type="email"]::placeholder{color:var(--grove-text-tertiary,#9CA3AF)}.grove-blog-cta--subscribe .grove-blog-cta__form-row input[type="email"]:focus{border-color:var(--grove-green,#4ADE80)}.grove-blog-cta--subscribe .grove-blog-cta__form-row button{min-height:48px}.grove-blog-cta--subscribe .grove-blog-cta__note{font-size:0.75rem;color:var(--grove-text-tertiary,#9CA3AF);margin-top:12px;text-align:center}@media (min-width:480px){.grove-blog-cta--subscribe .grove-blog-cta__form-row{flex-direction:row}.grove-blog-cta--subscribe .grove-blog-cta__form-row input[type="email"]{flex:1}.grove-blog-cta--subscribe .grove-blog-cta__form-row button{flex-shrink:0;white-space:nowrap}}.grove-footer{background:linear-gradient(180deg,var(--grove-bg-secondary) 0%,var(--grove-bg-tertiary) 60%,var(--grove-bg-dark) 100%);padding:48px 24px 24px}.grove-footer__inner{max-width:1200px;margin:0 auto}.grove-footer__logo{display:flex;justify-content:center;margin-bottom:16px}.grove-footer__tagline{text-align:center;font-size:0.9rem;color:var(--grove-text-tertiary);font-weight:500;letter-spacing:0.04em;margin-bottom:24px}.grove-footer__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:0 0 32px}.grove-footer__nav a{display:inline-flex;align-items:center;padding:8px 18px;border-radius:var(--grove-radius-pill);font-size:0.85rem;font-weight:500;color:var(--grove-text-secondary);background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 40%,var(--grove-bg-secondary) 100%);box-shadow:-1px -1px 3px rgba(255,255,255,0.60),1px 1px 3px rgba(180,170,155,0.20);transition:all var(--grove-duration-fast) var(--grove-smooth)}.grove-footer__nav a:hover{color:var(--grove-green-dark);box-shadow:-2px -2px 6px rgba(255,255,255,0.65),2px 2px 6px rgba(180,170,155,0.25),0 0 12px rgba(74,222,128,0.15)}.grove-footer__bottom{margin-top:16px;padding-top:24px;border-top:1px solid rgba(180,170,155,0.18)}.grove-footer__copyright{text-align:center;font-size:0.8rem;color:var(--grove-text-tertiary);padding-bottom:48px}@keyframes grove-dot-pulse{0%,100%{opacity:1}50%{opacity:0.7}}@keyframes grove-logo-edge-glow{0%,100%{opacity:0.4}50%{opacity:1}}@keyframes grove-logo-rim-pulse{0%,100%{opacity:0.4}50%{opacity:1}}@keyframes grove-logo-zero-pulse{0%,100%{filter:drop-shadow(0 0 5px rgba(74,222,128,0.40)) drop-shadow(0 0 10px rgba(74,222,128,0.16))}50%{filter:drop-shadow(0 0 2px rgba(74,222,128,0.10))}}@keyframes grove-logo-text-pulse{0%,100%{text-shadow:-0.5px -0.5px 1px rgba(45,154,94,0.30),0.5px 0.5px 1px rgba(255,255,255,0.55),0 0 6px rgba(74,222,128,0.30),0 0 12px rgba(74,222,128,0.16),0 0 3px rgba(75,143,229,0.06)}50%{text-shadow:-0.5px -0.5px 1px rgba(120,110,95,0.28),0.5px 0.5px 1px rgba(255,255,255,0.58)}}@keyframes grove-edge-glow{0%,100%{opacity:0.4}50%{opacity:1}}@keyframes grove-breathe-border{0%,100%{opacity:0.4}50%{opacity:1}}@keyframes grove-line-pulse{0%,100%{opacity:1}50%{opacity:0.3}}@keyframes grove-breathe-glow{0%,100%{opacity:0.5}50%{opacity:1}}@media (min-width:480px){.grove-stat-row{grid-template-columns:repeat(2,1fr)}.grove-series-grid{grid-template-columns:repeat(2,1fr)}.grove-blog-nav{flex-direction:row}.grove-blog-nav__link{flex:1}}@media (min-width:768px){.grove-nav{display:flex}.grove-burger{display:none}.grove-blog-hero{padding:100px 24px 56px}.grove-blog-prose{font-size:1.125rem}.grove-stat-row{grid-template-columns:repeat(3,1fr)}.grove-pullquote{padding:40px 48px 40px 56px;margin-left:-24px;margin-right:-24px}.grove-logo__the{padding:8px 16px 8px 18px}.grove-logo__the span{font-size:11px}.grove-logo__grv{padding:8px 14px 8px 12px}.grove-logo__grv span,.grove-logo__zero{font-size:14.5px}}@media (min-width:968px){.grove-blog-section{padding:56px 24px}.grove-series-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1200px){.grove-blog-hero__title{font-size:3rem}}@media (max-width:479px){.grove-logo{padding:6px;border-radius:28px}.grove-logo__well{border-radius:22px}.grove-logo__text{border-radius:18px}.grove-logo__the{padding:6px 10px 6px 12px;border-radius:18px 0 0 18px}.grove-logo__the span{font-size:9px}.grove-logo__grv{padding:6px 12px 6px 10px;border-radius:0 18px 18px 0}.grove-logo__grv span,.grove-logo__zero{font-size:12.5px}.grove-blog-prose{font-size:1rem}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}.grove-blog-toc::before{animation:none;opacity:0.65}.grove-blog-toc::after{animation:none;opacity:0.65}.grove-pullquote::before{animation:none;opacity:0.65}.grove-pullquote::after{animation:none;box-shadow:inset 1px 1px 2px rgba(160,148,130,0.50),inset -1px -1px 2px rgba(255,255,255,0.40),inset 0 0 6px rgba(74,222,128,0.25),inset 0 0 10px rgba(74,222,128,0.15),0 0 8px rgba(74,222,128,0.18),0 0 18px rgba(74,222,128,0.10),0 0 32px rgba(74,222,128,0.04)}.grove-logo__well::before{animation:none;box-shadow:inset 0 0 6px rgba(74,222,128,0.12)}.grove-logo__well::after{animation:none;border-color:rgba(74,222,128,0.12)}.grove-logo__zero{animation:none;filter:drop-shadow(0 0 3px rgba(74,222,128,0.22))}.grove-logo__grv span{animation:none}.grove-blog-hero__badge::before{animation:none}}@media print{body{background:#fff;background-image:none;color:#000;font-size:12pt}.grove-site-header,.grove-mobile-menu,.grove-burger,.grove-blog-cta,.grove-footer,.grove-blog-nav,.grove-section-divider{display:none !important}.grove-blog-toc{box-shadow:none;border:1px solid #ddd;background:#f9f9f9}.grove-blog-toc::before,.grove-blog-toc::after{display:none}.grove-blog-toc__list li a{box-shadow:none;background:none;padding:8px 12px}.grove-blog-toc__list li a::before{background:#666;box-shadow:none;width:24px;height:24px}.grove-blog-hero{padding:20px 0}.grove-blog-hero__badge{background:none;box-shadow:none;border:1px solid #ccc;color:#333}.grove-blog-hero__badge::before{display:none}.grove-blog-section{padding:20px 0}.grove-blog-prose{font-size:11pt;line-height:1.6}.grove-pullquote{background:#f5f5f5;box-shadow:none;border:none;border-left:3px solid #999;padding:16px 20px}.grove-pullquote::before,.grove-pullquote::after{display:none}.grove-stat-card{box-shadow:none;border:1px solid #ddd}.grove-stat-card__number{-webkit-text-fill-color:initial;background:none;color:#1a1a1a;filter:none}.grove-data-callout{box-shadow:none;border:1px solid #ddd}.grove-series-section{display:none}a{color:#000}a[href]::after{content:" (" attr(href) ")";font-size:0.8em;color:#666}a[href^="#"]::after{content:""}a[href^="javascript:"]::after{content:""}}.grove-faq{border-radius:var(--grove-radius-sm,32px);background:linear-gradient(145deg,#E8E4DE,#F0ECE6);box-shadow:inset 4px 4px 14px rgba(180,170,155,0.32),inset -4px -4px 14px rgba(255,255,255,0.48);padding:32px;display:flex;flex-direction:column;gap:16px}.grove-faq__heading{font-size:0.85rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--grove-text-tertiary,#9CA3AF);margin-bottom:8px}.grove-faq__item{border-radius:20px;overflow:hidden;transition:box-shadow 0.3s ease}.grove-faq__item summary{padding:20px 28px;border-radius:20px;background:linear-gradient(145deg,#F8F5F0,#EBE7E0);box-shadow:-3px -3px 8px rgba(255,255,255,0.65),3px 3px 8px rgba(180,170,155,0.18);font-size:1rem;font-weight:600;color:var(--grove-text-primary,#1E293B);cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;transition:all 0.3s ease;user-select:none}.grove-faq__item summary::-webkit-details-marker{display:none}.grove-faq__item summary::after{content:'+';display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(145deg,#F0ECE6,#EAE6E0);box-shadow:-2px -2px 4px rgba(255,255,255,0.55),2px 2px 4px rgba(180,170,155,0.15);font-size:1.2rem;font-weight:300;color:var(--grove-text-tertiary);flex-shrink:0;transition:all 0.3s ease}.grove-faq__item[open] summary{border-radius:20px 20px 0 0;box-shadow:-3px -3px 8px rgba(255,255,255,0.65),3px 3px 8px rgba(180,170,155,0.18),0 0 16px rgba(74,222,128,0.10);border-left:3px solid var(--grove-green,#4ADE80);padding-left:25px}.grove-faq__item[open] summary::after{content:'\2212';background:linear-gradient(145deg,#E8F9EE,#D5F5E0);color:var(--grove-green-dark,#2D9A5E);box-shadow:-2px -2px 4px rgba(255,255,255,0.55),2px 2px 4px rgba(180,170,155,0.15),0 0 8px rgba(74,222,128,0.12)}.grove-faq__answer{padding:24px 28px;background:linear-gradient(145deg,#ECE8E2,#F2EEEA);box-shadow:inset 2px 2px 8px rgba(180,170,155,0.22),inset -2px -2px 8px rgba(255,255,255,0.38);border-radius:0 0 20px 20px;font-size:0.95rem;line-height:1.65;color:var(--grove-text-secondary,#4B5563)}.grove-faq__answer p{margin:0 0 12px 0}.grove-faq__answer p:last-child{margin-bottom:0}.grove-faq__source{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--grove-radius-pill,999px);background:linear-gradient(145deg,#F0ECE6,#EAE6E0);box-shadow:-1px -1px 3px rgba(255,255,255,0.50),1px 1px 3px rgba(180,170,155,0.12);font-size:0.7rem;font-weight:600;color:var(--grove-text-tertiary);text-transform:uppercase;letter-spacing:0.04em;margin-top:12px}.grove-faq--compact{padding:14px 20px}.grove-faq--compact .grove-faq__item summary{padding:14px 20px}.grove-faq--compact .grove-faq__item[open] summary{padding-left:17px}.grove-faq--compact .grove-faq__answer{padding:14px 20px}.skip-link{position:absolute;top:-100px;left:0;background:var(--grove-green-dark);color:#fff;padding:14px 24px;border-radius:0 0 12px 0;text-decoration:none;font-weight:700;font-size:0.95rem;z-index:9999;transition:top 0.2s ease}.skip-link:focus{top:0;outline:3px solid var(--grove-green);outline-offset:-3px}*:focus-visible{outline:3px solid var(--grove-green-dark);outline-offset:3px;border-radius:4px}.grove-burger:focus-visible,.grove-btn-primary:focus-visible,.grove-btn-secondary:focus-visible{outline:3px solid var(--grove-green-dark);outline-offset:4px}
.author-bio{margin:48px auto 0;max-width:800px;padding:32px 28px;border-radius:32px;background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg) 30%,var(--grove-bg-secondary) 65%,var(--grove-bg-tertiary) 100%);box-shadow:-1px -1px 4px rgba(255,255,255,0.80),1px 1px 4px rgba(180,170,155,0.30),-4px -4px 12px rgba(255,255,255,0.65),4px 4px 12px rgba(180,170,155,0.25),-10px -10px 28px rgba(255,255,255,0.48),10px 10px 28px rgba(180,170,155,0.20);display:flex;gap:24px;align-items:flex-start}
.author-bio__portrait{flex-shrink:0;width:80px;height:80px;border-radius:50%;background:linear-gradient(160deg,#E8E3DA 0%,var(--grove-bg-tertiary) 50%,#E0DBD2 100%);box-shadow:inset 2px 2px 5px rgba(180,170,155,0.35),inset -2px -2px 5px rgba(255,255,255,0.45),inset 4px 4px 10px rgba(160,148,130,0.22),inset -4px -4px 10px rgba(255,255,255,0.30);display:flex;align-items:center;justify-content:center;position:relative}
.author-bio__portrait::after{content:'';position:absolute;inset:-2px;border-radius:50%;border:2px solid rgba(74,222,128,0.25);box-shadow:0 0 12px rgba(74,222,128,0.15);pointer-events:none;opacity:0.6;animation:grove-badge-glow 6s ease-in-out infinite}
.author-bio__initials{font-family:var(--grove-font-display,Inter,sans-serif);font-size:22px;font-weight:800;background:linear-gradient(145deg,var(--grove-green-light,#6AE89B),var(--grove-green,#4ADE80),var(--grove-green-dark,#2D9A5E));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.author-bio__content{flex:1;min-width:0}
.author-bio__name{font-size:1rem;font-weight:700;color:var(--grove-text-primary,#1E293B);margin-bottom:2px}
.author-bio__role{font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--grove-green-dark,#2D9A5E);margin-bottom:10px}
.author-bio__text{font-size:0.85rem;line-height:1.55;color:var(--grove-text-secondary,#4B5563);margin-bottom:12px}
.author-bio__links{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.author-bio__link{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;font-size:0.75rem;font-weight:600;color:var(--grove-text-secondary,#4B5563);text-decoration:none;background:linear-gradient(160deg,#FAF7F2 0%,var(--grove-bg,#F5F0E8) 40%,var(--grove-bg-secondary,#EDE8E0) 100%);box-shadow:-1px -1px 3px rgba(255,255,255,0.75),1px 1px 3px rgba(180,170,155,0.22);transition:all 0.25s ease}
.author-bio__link:hover{color:var(--grove-green-dark,#2D9A5E);transform:translateY(-1px);box-shadow:-2px -2px 5px rgba(255,255,255,0.85),2px 2px 5px rgba(180,170,155,0.28),0 0 10px rgba(74,222,128,0.12)}
.author-bio__link svg{width:14px;height:14px;fill:currentColor}
@media(max-width:639px){.author-bio{flex-direction:column;align-items:center;text-align:center}.author-bio__links{justify-content:center}}
@media(prefers-reduced-motion:reduce){.author-bio__portrait::after{animation:none;opacity:0.5}}

/* ══════════════════════════════════════════════════════════════════
   NEUMORPHIC BURGER MENU + MOBILE NAV
   Matches the frame/well/glass design language
   ══════════════════════════════════════════════════════════════════ */

@media (max-width: 767px) {
  /* ── Burger Button: Raised neumorphic pill ──────────────────────── */
  .grove-burger {
    width: 48px;
    height: 48px;
    border-radius: var(--grove-radius-xs, 16px);
    background: linear-gradient(160deg, #FAF7F2 0%, var(--grove-bg, #F5F0E8) 30%, var(--grove-bg-secondary, #EDE8E0) 100%);
    box-shadow:
      -2px -2px 6px rgba(255, 255, 255, 0.85),
      2px 2px 6px rgba(180, 170, 155, 0.35),
      -5px -5px 14px rgba(255, 255, 255, 0.60),
      5px 5px 14px rgba(180, 170, 155, 0.22),
      inset 0 1px 2px rgba(255, 255, 255, 0.60),
      inset 0 -1px 2px rgba(180, 170, 155, 0.08);
    transition:
      box-shadow var(--grove-duration-fast, 0.25s) var(--grove-smooth, ease),
      background var(--grove-duration-fast, 0.25s) var(--grove-smooth, ease);
  }

  .grove-burger:active {
    box-shadow:
      inset 2px 2px 5px rgba(180, 170, 155, 0.40),
      inset -2px -2px 5px rgba(255, 255, 255, 0.50),
      inset 4px 4px 10px rgba(160, 148, 130, 0.25),
      inset -4px -4px 10px rgba(255, 255, 255, 0.30);
  }

  .grove-burger[aria-expanded="true"] {
    box-shadow:
      inset 2px 2px 5px rgba(180, 170, 155, 0.40),
      inset -2px -2px 5px rgba(255, 255, 255, 0.50),
      inset 4px 4px 10px rgba(160, 148, 130, 0.25),
      inset -4px -4px 10px rgba(255, 255, 255, 0.30),
      inset 0 0 12px rgba(74, 222, 128, 0.15);
  }

  .grove-burger[aria-expanded="true"] span {
    background: var(--grove-green, #4ADE80);
  }

  /* ── Mobile Menu Overlay: Glass + well treatment ────────────── */
  .grove-mobile-menu {
    background: linear-gradient(
      170deg,
      rgba(245, 240, 232, 0.92) 0%,
      rgba(237, 232, 224, 0.88) 40%,
      rgba(229, 224, 216, 0.92) 100%
    );
    backdrop-filter: blur(24px) saturate(130%);
    -webkit-backdrop-filter: blur(24px) saturate(130%);
  }

  .grove-mobile-menu.grove-mobile-menu--open {
    display: flex;
    animation: grove-menu-reveal 0.35s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;
  }

  @keyframes grove-menu-reveal {
    from {
      opacity: 0;
      backdrop-filter: blur(0px);
      -webkit-backdrop-filter: blur(0px);
    }
    to {
      opacity: 1;
      backdrop-filter: blur(24px);
      -webkit-backdrop-filter: blur(24px);
    }
  }

  /* ── Nav Links: Neumorphic raised pills ─────────────────────── */
  .grove-mobile-menu a {
    display: block;
    width: 260px;
    max-width: 80vw;
    text-align: center;
    padding: 14px 28px;
    border-radius: var(--grove-radius-xs, 16px);
    background: linear-gradient(160deg, #FAF7F2 0%, var(--grove-bg, #F5F0E8) 30%, var(--grove-bg-secondary, #EDE8E0) 100%);
    box-shadow:
      -2px -2px 5px rgba(255, 255, 255, 0.80),
      2px 2px 5px rgba(180, 170, 155, 0.30),
      -5px -5px 12px rgba(255, 255, 255, 0.55),
      5px 5px 12px rgba(180, 170, 155, 0.20),
      inset 0 1px 2px rgba(255, 255, 255, 0.55),
      inset 0 -1px 2px rgba(180, 170, 155, 0.06);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--grove-text-primary, #1E293B);
    text-decoration: none;
    transition:
      box-shadow var(--grove-duration-fast, 0.25s) var(--grove-smooth, ease),
      transform var(--grove-duration-fast, 0.25s) var(--grove-smooth, ease),
      color var(--grove-duration-fast, 0.25s) var(--grove-smooth, ease),
      background var(--grove-duration-fast, 0.25s) var(--grove-smooth, ease);
  }

  .grove-mobile-menu a:hover {
    color: var(--grove-green-dark, #2D9A5E);
    box-shadow:
      -3px -3px 8px rgba(255, 255, 255, 0.85),
      3px 3px 8px rgba(180, 170, 155, 0.35),
      -6px -6px 16px rgba(255, 255, 255, 0.60),
      6px 6px 16px rgba(180, 170, 155, 0.25),
      inset 0 1px 2px rgba(255, 255, 255, 0.60),
      inset 0 -1px 2px rgba(180, 170, 155, 0.08),
      0 0 16px rgba(74, 222, 128, 0.12);
    transform: translateY(-1px);
  }

  .grove-mobile-menu a:active {
    transform: translateY(0);
    box-shadow:
      inset 2px 2px 5px rgba(180, 170, 155, 0.35),
      inset -2px -2px 5px rgba(255, 255, 255, 0.45),
      inset 4px 4px 10px rgba(160, 148, 130, 0.22),
      inset -4px -4px 10px rgba(255, 255, 255, 0.30),
      inset 0 0 10px rgba(74, 222, 128, 0.10);
    background: linear-gradient(160deg, #EDE8E0 0%, var(--grove-bg-tertiary, #E5E0D8) 50%, #E0DBD2 100%);
  }

  /* Subscribe link: green accent treatment */
  .grove-mobile-menu a:last-child {
    background: linear-gradient(
      160deg,
      rgba(74, 222, 128, 0.12) 0%,
      rgba(74, 222, 128, 0.06) 50%,
      rgba(45, 154, 94, 0.08) 100%
    ),
    linear-gradient(160deg, #FAF7F2 0%, var(--grove-bg, #F5F0E8) 30%, var(--grove-bg-secondary, #EDE8E0) 100%);
    border: 1px solid rgba(74, 222, 128, 0.20);
    color: var(--grove-green-dark, #2D9A5E);
    font-weight: 700;
  }

  .grove-mobile-menu a:last-child:hover {
    border-color: rgba(74, 222, 128, 0.45);
    box-shadow:
      -3px -3px 8px rgba(255, 255, 255, 0.85),
      3px 3px 8px rgba(180, 170, 155, 0.35),
      -6px -6px 16px rgba(255, 255, 255, 0.60),
      6px 6px 16px rgba(180, 170, 155, 0.25),
      0 0 20px rgba(74, 222, 128, 0.18),
      inset 0 0 8px rgba(74, 222, 128, 0.08);
  }
}

/* ── Reduced motion: disable menu animation ─────────────────── */
@media (prefers-reduced-motion: reduce) {
  .grove-mobile-menu.grove-mobile-menu--open {
    animation: none;
  }
}

/* ══════════════════════════════════════════════════════════════════
   DIG DEEPER: Compact frame/well/glass cards listing sibling cluster
   pages. Visually a smaller cousin of the main .blog-card system used
   on the Topics hub and Essays index.
   ══════════════════════════════════════════════════════════════════ */
.dig-deeper-section {
  position: relative;
  max-width: 1200px;
  margin: 8px auto 64px;
  padding: 36px 24px 40px;
  border-radius: var(--grove-radius-sm, 32px);
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(74,222,128,0.05) 0%, transparent 70%),
    linear-gradient(160deg, #F2F0E8 0%, #ECE8DC 45%, #E4DECE 100%);
  box-shadow:
    -2px -2px 6px rgba(255,255,255,0.68),
    2px 2px 6px rgba(150,140,120,0.20),
    -6px -6px 18px rgba(255,255,255,0.48),
    6px 6px 18px rgba(140,128,110,0.16),
    inset 1px 1px 3px rgba(255,255,255,0.58),
    inset -1px -1px 3px rgba(140,128,110,0.10);
}
.dig-deeper-section::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow:
    inset 0 0 32px rgba(74,222,128,0.05),
    inset 0 0 64px rgba(74,222,128,0.025);
  pointer-events: none;
  animation: dig-deeper-section-glow 8s ease-in-out infinite;
}
.dig-deeper-section::after {
  content: '';
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  border: 1px solid rgba(74,222,128,0.10);
  pointer-events: none;
  animation: dig-deeper-section-border 8s ease-in-out infinite;
}
@keyframes dig-deeper-section-glow {
  0%, 100% {
    box-shadow:
      inset 0 0 32px rgba(74,222,128,0.04),
      inset 0 0 64px rgba(74,222,128,0.02);
  }
  50% {
    box-shadow:
      inset 0 0 48px rgba(74,222,128,0.09),
      inset 0 0 96px rgba(74,222,128,0.045);
  }
}
@keyframes dig-deeper-section-border {
  0%, 100% { border-color: rgba(74,222,128,0.08); }
  50% { border-color: rgba(74,222,128,0.18); }
}
.dig-deeper-section__title {
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 auto 24px;
  padding: 10px 24px;
  border-radius: var(--grove-radius-pill, 999px);
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--grove-green-deep, #1A7A42);
  background: linear-gradient(160deg, #FAF7F2 0%, #EEF4E8 50%, #E4ECDA 100%);
  box-shadow:
    -2px -2px 5px rgba(255,255,255,0.78),
    2px 2px 5px rgba(120,148,110,0.26),
    -4px -4px 12px rgba(255,255,255,0.52),
    4px 4px 12px rgba(110,138,100,0.16),
    inset 0 2px 3px rgba(255,255,255,0.62),
    inset 0 -2px 3px rgba(110,138,100,0.10);
  text-shadow:
    -0.5px -0.5px 1px rgba(120,148,110,0.45),
    0.5px 0.5px 1px rgba(255,255,255,0.85),
    0 0 6px rgba(74,222,128,0.30),
    0 0 14px rgba(74,222,128,0.14);
}
.dig-deeper-section > .dig-deeper-section__title {
  display: block;
  width: fit-content;
}
.dig-deeper-section__grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.dig-deeper-card {
  display: block;
  text-decoration: none;
  color: inherit;
}
.dig-deeper-card__frame {
  position: relative;
  aspect-ratio: 5 / 3;
  border-radius: 22px;
  background: linear-gradient(160deg, #F5F0E8 0%, #EDE8E0 100%);
  box-shadow:
    2px 2px 6px rgba(160, 148, 130, 0.28),
    -1px -1px 5px rgba(255, 255, 255, 0.78),
    -3px -3px 10px rgba(255, 255, 255, 0.42),
    3px 3px 10px rgba(160, 148, 130, 0.16),
    inset 1px 1px 2px rgba(255, 255, 255, 0.60),
    inset -1px -1px 2px rgba(160, 148, 130, 0.14);
}
.dig-deeper-card__well {
  position: absolute;
  inset: 6px;
  border-radius: 16px;
  overflow: hidden;
  background: linear-gradient(145deg, #D8D2C8 0%, #DED8CE 40%, #E4DED4 100%);
  box-shadow:
    inset 0 -1px 2px rgba(255, 255, 255, 0.62),
    inset 2px 2px 6px rgba(160, 148, 130, 0.36),
    inset -2px -2px 6px rgba(255, 255, 255, 0.34),
    inset 5px 5px 14px rgba(150, 138, 120, 0.28),
    inset -5px -5px 14px rgba(255, 255, 255, 0.22),
    inset 9px 9px 22px rgba(140, 128, 110, 0.18);
}
.dig-deeper-card__well::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow:
    inset 0 0 18px rgba(74, 222, 128, 0.14),
    inset 0 0 36px rgba(74, 222, 128, 0.08),
    inset 0 0 58px rgba(74, 222, 128, 0.04);
  pointer-events: none;
  z-index: 1;
  transition: box-shadow 0.5s cubic-bezier(0.22, 0.61, 0.36, 1) 0.06s;
}
.dig-deeper-card:hover .dig-deeper-card__well::before {
  box-shadow:
    inset 0 0 30px rgba(74, 222, 128, 0.26),
    inset 0 0 56px rgba(74, 222, 128, 0.16),
    inset 0 0 84px rgba(74, 222, 128, 0.08);
}
.dig-deeper-card__well::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px solid rgba(74, 222, 128, 0.08);
  pointer-events: none;
  z-index: 2;
  transition: border-color 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.dig-deeper-card:hover .dig-deeper-card__well::after {
  border-color: rgba(74, 222, 128, 0.30);
}
.dig-deeper-card__glass {
  position: absolute;
  inset: 6px;
  border-radius: 16px;
  z-index: 4;
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.55) 0%,
    rgba(255, 255, 255, 0.32) 40%,
    rgba(255, 255, 255, 0.20) 100%
  );
  backdrop-filter: blur(14px) saturate(125%);
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  box-shadow:
    -1px -1px 2px rgba(255, 255, 255, 0.78),
    1px 1px 2px rgba(160, 148, 130, 0.24),
    -2px -2px 6px rgba(255, 255, 255, 0.52),
    2px 2px 6px rgba(160, 148, 130, 0.16),
    inset 0 1px 2px rgba(255, 255, 255, 0.62),
    inset 0 -1px 1px rgba(160, 148, 130, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.42);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 16px;
  transition: transform 0.55s cubic-bezier(0.22, 0.61, 0.36, 1),
              box-shadow 0.55s cubic-bezier(0.22, 0.61, 0.36, 1),
              border-color 0.55s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.dig-deeper-card:hover .dig-deeper-card__glass {
  transform: translateY(-8px) scale(1.02);
  border-color: rgba(255, 255, 255, 0.55);
  box-shadow:
    -2px -2px 4px rgba(255, 255, 255, 0.82),
    2px 2px 4px rgba(160, 148, 130, 0.28),
    -3px -3px 9px rgba(255, 255, 255, 0.58),
    3px 3px 9px rgba(160, 148, 130, 0.20),
    0 14px 28px rgba(140, 128, 110, 0.18),
    0 8px 14px rgba(140, 128, 110, 0.10),
    0 10px 22px rgba(74, 222, 128, 0.08),
    inset 0 1px 2px rgba(255, 255, 255, 0.68);
  transition: transform 0.4s cubic-bezier(0.22, 0.61, 0.36, 1),
              box-shadow 0.4s cubic-bezier(0.22, 0.61, 0.36, 1),
              border-color 0.4s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.dig-deeper-card__title {
  font-size: 0.82rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.4;
  color: var(--grove-text-secondary, #4B5563);
  text-shadow: 0.5px 0.5px 1px rgba(255, 255, 255, 0.72);
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (min-width: 480px) {
  .dig-deeper-section { padding: 40px 28px 44px; }
  .dig-deeper-section__grid { gap: 16px; }
  .dig-deeper-card__title { font-size: 0.86rem; }
}
@media (min-width: 768px) {
  .dig-deeper-section { padding: 48px 36px 52px; margin-bottom: 72px; }
  .dig-deeper-section__grid { grid-template-columns: repeat(3, 1fr); gap: 20px; }
  .dig-deeper-card__frame { border-radius: 26px; }
  .dig-deeper-card__well, .dig-deeper-card__glass { inset: 8px; border-radius: 20px; }
  .dig-deeper-card__title { font-size: 0.9rem; }
}
@media (min-width: 968px) {
  .dig-deeper-section__grid { grid-template-columns: repeat(4, 1fr); gap: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .dig-deeper-section::before,
  .dig-deeper-section::after,
  .dig-deeper-card__well::before { animation: none; }
  .dig-deeper-card__glass,
  .dig-deeper-card__well::after { transition: none; }
  .dig-deeper-card:hover .dig-deeper-card__glass { transform: none; }
}

/* ======================================================================
   STREAM CONTENT RULES (v1.0, added 2026-04-15 session #94)
   Scope: /dispatch/ and /signal/ URL spaces per Stream-Page-Spec.md v1.0
   ====================================================================== */

/* ── Stream type label (DISPATCH / SIGNAL pill) ──────────────────────── */
.stream-type-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 22px;
  border-radius: var(--grove-radius-pill, 999px);
  font-family: var(--grove-font-body);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  text-decoration: none;
  background: linear-gradient(160deg, #FAF7F2 0%, #F2F0E8 50%, #ECE8DC 100%);
  box-shadow:
    -2px -2px 5px rgba(255, 255, 255, 0.78),
    2px 2px 5px rgba(150, 140, 120, 0.26),
    -4px -4px 12px rgba(255, 255, 255, 0.52),
    4px 4px 12px rgba(140, 128, 110, 0.16),
    inset 0 2px 3px rgba(255, 255, 255, 0.62),
    inset 0 -2px 3px rgba(140, 128, 110, 0.10);
}

.stream-type-label--dispatch {
  color: var(--grove-green-deep, #1A7A42);
  text-shadow:
    -0.5px -0.5px 1px rgba(150, 140, 120, 0.45),
    0.5px 0.5px 1px rgba(255, 255, 255, 0.85),
    0 0 6px rgba(74, 222, 128, 0.30),
    0 0 14px rgba(74, 222, 128, 0.14);
}

.stream-type-label--signal {
  color: #c8811b;
  text-shadow:
    -0.5px -0.5px 1px rgba(140, 110, 60, 0.40),
    0.5px 0.5px 1px rgba(255, 255, 255, 0.85),
    0 0 6px rgba(200, 150, 50, 0.30),
    0 0 14px rgba(200, 150, 50, 0.14);
}

/* ── Stream pillar tag (clickable badge linking to pillar essay) ──────── */
.stream-pillar-tag {
  display: inline-flex;
  align-items: center;
  padding: 6px 14px;
  border-radius: var(--grove-radius-pill, 999px);
  font-family: var(--grove-font-body);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-decoration: none;
  color: var(--grove-green-dark, #2D9A5E);
  background: linear-gradient(160deg, #EEF4E8 0%, #E4ECDA 100%);
  box-shadow:
    -1px -1px 3px rgba(255, 255, 255, 0.72),
    1px 1px 3px rgba(120, 148, 110, 0.22),
    inset 0 1px 2px rgba(255, 255, 255, 0.58),
    inset 0 -1px 2px rgba(100, 130, 90, 0.08);
  transition:
    box-shadow var(--grove-duration-fast, 0.25s) var(--grove-smooth),
    transform var(--grove-duration-fast, 0.25s) var(--grove-smooth);
}

.stream-pillar-tag:hover {
  transform: translateY(-1px);
  box-shadow:
    -2px -2px 5px rgba(255, 255, 255, 0.82),
    2px 2px 5px rgba(120, 148, 110, 0.28),
    0 4px 10px rgba(74, 222, 128, 0.10),
    inset 0 1px 2px rgba(255, 255, 255, 0.68);
}

.stream-pillar-tag:focus-visible {
  outline: 2px solid var(--grove-green-dark, #2D9A5E);
  outline-offset: 2px;
}

/* ── Stream page main container ──────────────────────────────────────── */
.stream-wrap {
  max-width: 680px;
  margin: 0 auto;
  padding: 0 24px 80px;
}

.stream-wrap--signal {
  padding-top: 0;
  padding-bottom: 64px;
}

/* ── Stream hero ─────────────────────────────────────────────────────── */
.stream-hero {
  padding: 48px 0 40px;
}

.stream-hero__breadcrumb {
  font-size: 0.78rem;
  font-weight: 500;
  color: var(--grove-text-tertiary, #5F6772);
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.stream-hero__breadcrumb a {
  color: var(--grove-green-dark, #2D9A5E);
  text-decoration: none;
  transition: color var(--grove-duration-fast, 0.25s) var(--grove-smooth);
}

.stream-hero__breadcrumb a:hover {
  color: var(--grove-green-deep, #1A7A42);
}

.stream-hero__title {
  font-size: clamp(1.7rem, 3.8vw, 2.2rem);
  font-weight: 700;
  line-height: 1.2;
  color: var(--grove-text-primary, #1E293B);
  margin: 0 0 20px;
}

.stream-hero__hook {
  font-size: 1.05rem;
  line-height: 1.65;
  color: var(--grove-text-secondary, #4B5563);
  margin: 0 0 24px;
}

.stream-hero__meta {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  font-size: 0.78rem;
  color: var(--grove-text-tertiary, #5F6772);
}

/* ── Stream body section ─────────────────────────────────────────────── */
.stream-section {
  margin: 48px 0;
}

.stream-section__title {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--grove-text-primary, #1E293B);
  margin: 0 0 20px;
}

/* ── Stream recent block (bottom of each piece) ──────────────────────── */
.stream-recent {
  position: relative;
  margin-top: 48px;
  padding: 28px 24px;
  border-radius: 20px;
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(74, 222, 128, 0.05) 0%, transparent 70%),
    linear-gradient(160deg, #F2F0E8 0%, #ECE8DC 45%, #E4DECE 100%);
  box-shadow:
    -2px -2px 6px rgba(255, 255, 255, 0.68),
    2px 2px 6px rgba(150, 140, 120, 0.20),
    -6px -6px 18px rgba(255, 255, 255, 0.48),
    6px 6px 18px rgba(140, 128, 110, 0.16),
    inset 1px 1px 3px rgba(255, 255, 255, 0.58),
    inset -1px -1px 3px rgba(140, 128, 110, 0.10),
    inset 0 0 28px rgba(74, 222, 128, 0.04);
}

.stream-recent__title {
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.10em;
  color: var(--grove-green-deep, #1A7A42);
  margin-bottom: 18px;
}

.stream-recent__grid {
  display: flex;
  flex-direction: row;
  gap: 14px;
}

.stream-recent__card {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px 18px;
  border-radius: 14px;
  text-decoration: none;
  color: inherit;
  background: linear-gradient(160deg, #FAF7F2 0%, #F2F0E8 100%);
  box-shadow:
    -1px -1px 4px rgba(255, 255, 255, 0.72),
    1px 1px 4px rgba(150, 140, 120, 0.22),
    inset 0 1px 2px rgba(255, 255, 255, 0.58),
    inset 0 -1px 2px rgba(140, 128, 110, 0.08);
  transition:
    transform var(--grove-duration-fast, 0.25s) var(--grove-smooth),
    box-shadow var(--grove-duration-fast, 0.25s) var(--grove-smooth);
}

.stream-recent__card:hover {
  transform: translateY(-3px);
  box-shadow:
    -2px -2px 6px rgba(255, 255, 255, 0.82),
    2px 2px 6px rgba(150, 140, 120, 0.28),
    0 8px 18px rgba(140, 128, 110, 0.14),
    0 4px 10px rgba(74, 222, 128, 0.08),
    inset 0 1px 2px rgba(255, 255, 255, 0.68);
}

.stream-recent__card:focus-visible {
  outline: 2px solid var(--grove-green-dark, #2D9A5E);
  outline-offset: 2px;
}

.stream-recent__card-top {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.stream-recent__card-top .stream-type-label {
  font-size: 0.60rem;
  padding: 4px 10px;
}

.stream-recent__card-top .stream-pillar-tag {
  font-size: 0.60rem;
  padding: 4px 10px;
}

.stream-recent__card-title {
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--grove-text-primary, #1E293B);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.stream-recent__card-date {
  font-size: 0.72rem;
  color: var(--grove-text-muted, #7A828F);
  margin-top: auto;
}

@media (max-width: 640px) {
  .stream-recent__grid {
    flex-direction: column;
  }
}

/* ── Stream hub page container ───────────────────────────────────────── */
.stream-hub-wrap {
  max-width: 780px;
  margin: 0 auto;
  padding: 0 24px 80px;
}

/* ── Stream hub card grid ────────────────────────────────────────────── */
.stream-hub-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
  margin: 40px 0;
}

/* ── Stream hub card ─────────────────────────────────────────────────── */
.stream-hub-card {
  display: flex;
  flex-direction: column;
  min-height: 200px;
  padding: 24px 22px;
  border-radius: 22px;
  text-decoration: none;
  color: inherit;
  background: linear-gradient(160deg, #F5F0E8 0%, #EDE8E0 100%);
  box-shadow:
    2px 2px 6px rgba(160, 148, 130, 0.28),
    -1px -1px 5px rgba(255, 255, 255, 0.78),
    -3px -3px 10px rgba(255, 255, 255, 0.42),
    3px 3px 10px rgba(160, 148, 130, 0.16),
    inset 1px 1px 2px rgba(255, 255, 255, 0.60),
    inset -1px -1px 2px rgba(160, 148, 130, 0.14);
  transition:
    transform var(--grove-duration-fast, 0.25s) var(--grove-smooth),
    box-shadow var(--grove-duration-fast, 0.25s) var(--grove-smooth);
}

.stream-hub-card:hover {
  transform: translateY(-4px);
  box-shadow:
    -2px -2px 6px rgba(255, 255, 255, 0.84),
    2px 2px 6px rgba(160, 148, 130, 0.30),
    -4px -4px 12px rgba(255, 255, 255, 0.56),
    4px 4px 12px rgba(160, 148, 130, 0.20),
    0 14px 28px rgba(140, 128, 110, 0.16),
    0 8px 14px rgba(140, 128, 110, 0.10),
    0 10px 22px rgba(74, 222, 128, 0.08),
    inset 1px 1px 2px rgba(255, 255, 255, 0.68),
    inset -1px -1px 2px rgba(160, 148, 130, 0.10);
}

.stream-hub-card:focus-visible {
  outline: 2px solid var(--grove-green-dark, #2D9A5E);
  outline-offset: 3px;
}

.stream-hub-card__top {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}

.stream-hub-card__type {
  font-size: 0.62rem;
  padding: 5px 12px;
}

.stream-hub-card__pillar {
  font-size: 0.62rem;
  padding: 5px 12px;
}

.stream-hub-card__title {
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--grove-text-primary, #1E293B);
  margin: 12px 0 8px;
}

.stream-hub-card__hook {
  font-size: 0.92rem;
  line-height: 1.5;
  color: var(--grove-text-secondary, #4B5563);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex-grow: 1;
}

.stream-hub-card__meta {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 0.72rem;
  color: var(--grove-text-tertiary, #5F6772);
  margin-top: 14px;
}

/* ── Stream hub card: reduced motion ─────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .stream-hub-card,
  .stream-recent__card,
  .stream-pillar-tag {
    transition: none;
  }
  .stream-hub-card:hover,
  .stream-recent__card:hover {
    transform: none;
  }
}
