/* Glass blog cards (blog list) */
.blog-list{position:relative;overflow:hidden;isolation:isolate}
.blog-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(520px 380px at 10% 12%,rgba(45,156,219,.24),transparent 70%),
    radial-gradient(480px 400px at 90% 38%,rgba(212,175,55,.18),transparent 70%),
    radial-gradient(620px 440px at 28% 92%,rgba(15,76,92,.16),transparent 70%)}
.blog-list .post-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:clamp(20px,2.6vw,32px)}

.gcard{max-width:440px;opacity:0;transform:translateY(20px);animation:gcardIn 600ms var(--ease-out) forwards;animation-delay:calc(var(--i,0) * 80ms + 80ms)}
@keyframes gcardIn{to{opacity:1;transform:none}}

.gcard-link{display:flex;flex-direction:column;height:100%;overflow:hidden;border-radius:20px;
  background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.8);box-shadow:0 10px 30px rgba(15,76,92,.08),inset 0 1px 0 rgba(255,255,255,.9);
  transition:transform 260ms var(--ease-out),border-color 260ms ease,box-shadow 260ms ease,background-color 260ms ease}
.gcard-link:active{transform:scale(.985)}
.gcard-link:focus-visible{outline:2px solid var(--sky);outline-offset:3px}

.gcard-img{position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,var(--mist),#cfe9f6)}
.gcard-img img{width:100%;height:100%;object-fit:cover;transition:transform 600ms var(--ease-out)}
.gcard-img img.logo-fallback{position:absolute;inset:0;width:84px;height:84px;margin:auto;object-fit:contain;border-radius:50%}
.gcard-fade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,56,68,.5),transparent 62%);opacity:.55;transition:opacity 300ms ease}
.gcard-img::after{content:"";position:absolute;inset:0;background:rgba(10,56,68,.16);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity 300ms ease}
.gcard-read{position:absolute;left:50%;top:50%;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border-radius:100px;white-space:nowrap;
  background:var(--teal);color:#fff;font-size:13.5px;font-weight:600;box-shadow:0 10px 26px rgba(15,76,92,.35);
  opacity:0;transform:translate(-50%,-38%) scale(.94);transition:opacity 260ms ease,transform 320ms var(--ease-out)}

.gcard-body{display:flex;flex-direction:column;flex:1;gap:14px;padding:22px 22px 18px}
.gcard-body h2{font-size:clamp(21px,2vw,25px);line-height:1.18;color:var(--teal);transition:color 220ms ease}
.gcard-body p{font-size:14.5px;line-height:1.6;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.gcard-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid rgba(15,76,92,.12)}
.gcard-who{display:flex;align-items:center;gap:10px;min-width:0}
.gcard-who img{width:32px;height:32px;border-radius:50%;border:1px solid rgba(15,76,92,.15);flex:none}
.gcard-who span{display:flex;flex-direction:column;line-height:1.3;font-size:12px;color:var(--muted);min-width:0}
.gcard-who b{font-weight:600;color:var(--ink);font-size:12.5px}
.gcard-time{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--muted);white-space:nowrap}

@media (hover:hover) and (pointer:fine){
  .gcard-link:hover{transform:translateY(-4px);border-color:rgba(15,76,92,.35);background:rgba(255,255,255,.7);box-shadow:0 22px 50px rgba(15,76,92,.16),inset 0 1px 0 rgba(255,255,255,.95)}
  .gcard-link:active{transform:translateY(-2px) scale(.985)}
  .gcard-link:hover .gcard-img img:not(.logo-fallback){transform:scale(1.08)}
  .gcard-link:hover .gcard-fade{opacity:.35}
  .gcard-link:hover .gcard-img::after{opacity:1}
  .gcard-link:hover .gcard-read{opacity:1;transform:translate(-50%,-50%) scale(1)}
  .gcard-link:hover h2{color:var(--sky)}
}

@media (prefers-reduced-motion:reduce){
  .gcard{animation:none;opacity:1;transform:none}
  .gcard-link,.gcard-img img,.gcard-read{transition-duration:.01ms}
}

/* Article page: glass author chip */
.byline-chip{display:inline-flex;align-items:center;gap:12px;margin-bottom:30px;padding:8px 18px 8px 8px;border-radius:100px;background:rgba(255,255,255,.6);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.85);box-shadow:0 6px 20px rgba(15,76,92,.08)}
.byline-chip img{width:36px;height:36px;border-radius:50%;border:1px solid rgba(15,76,92,.15)}
.byline-chip>span{display:flex;flex-direction:column;line-height:1.3;font-size:12.5px;color:var(--muted)}
.byline-chip b{font-weight:600;color:var(--ink);font-size:13.5px}
.article{position:relative}
