/* Blog index page — page-specific styles (shared base in shared.css) */

/* HERO */
.blog-hero{background:linear-gradient(160deg,rgba(26,5,48,.78) 0%,rgba(77,25,121,.6) 50%,rgba(26,5,48,.88) 100%),url('../images/tcu-team-celebrate.png') center 30%/cover no-repeat,var(--purple-deep);padding:140px 0 100px;min-height:440px;text-align:center;position:relative;overflow:hidden}
@media(max-width:640px){.blog-hero{padding:110px 0 70px;min-height:380px;background:linear-gradient(160deg,rgba(26,5,48,.82) 0%,rgba(77,25,121,.65) 50%,rgba(26,5,48,.92) 100%),url('../images/tcu-team-celebrate.png') center 25%/cover no-repeat,var(--purple-deep)}}
.blog-hero *{position:relative;z-index:2}
.blog-hero h1{font-family:var(--font-display);font-size:clamp(3rem,8vw,6rem);color:var(--white);line-height:.95;margin-bottom:20px;opacity:0;transform:translateY(30px);animation:fadeUp .8s var(--ease-out) .3s forwards}
.blog-hero h1 .accent{display:block;font-family:var(--font-heading);font-style:italic;font-size:.4em;color:var(--gold);line-height:1.4}
.blog-hero>div>p{color:rgba(255,255,255,.75);font-size:1.15rem;max-width:600px;margin:0 auto;font-weight:300;opacity:0;animation:fadeUp .8s var(--ease-out) .5s forwards}

/* SUBSCRIBE BAR */
.subscribe-bar{background:var(--bg-alt);padding:24px 0;border-bottom:1px solid var(--gray-200)}
[data-theme="dark"] .subscribe-bar{border-color:rgba(255,255,255,.06)}
.subscribe-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.subscribe-text{font-size:.95rem;font-weight:500}
.subscribe-text strong{color:var(--purple-primary)}
[data-theme="dark"] .subscribe-text strong{color:var(--gold)}
.subscribe-form{display:flex;gap:8px}
.subscribe-form input{padding:10px 18px;border:2px solid var(--gray-200);border-radius:50px;font-family:var(--font-body);font-size:.9rem;width:260px;outline:none;background:var(--bg);color:var(--text);transition:border-color .3s}
[data-theme="dark"] .subscribe-form input{border-color:rgba(255,255,255,.1);background:var(--bg)}
.subscribe-form input:focus{border-color:var(--gold)}
.subscribe-form input::placeholder{color:var(--gray-400)}
.subscribe-form button{padding:10px 24px;background:var(--gold);color:var(--purple-deep);border-radius:50px;font-weight:700;font-size:.85rem;transition:all .3s var(--ease-spring)}
.subscribe-form button:hover{transform:scale(1.05);box-shadow:0 4px 16px rgba(200,169,81,.3)}
/* Honeypot */
.hp{display:none}

/* FILTERS */
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:40px;justify-content:center}
.filter-btn{padding:8px 20px;border-radius:50px;font-size:.8rem;font-weight:600;color:var(--text-secondary);border:1px solid var(--gray-200);transition:all .3s;letter-spacing:.03em}
[data-theme="dark"] .filter-btn{border-color:rgba(255,255,255,.1)}
.filter-btn:hover{border-color:var(--purple-primary);color:var(--purple-primary)}
[data-theme="dark"] .filter-btn:hover{border-color:var(--gold);color:var(--gold)}
.filter-btn.active{background:var(--purple-primary);color:var(--white);border-color:var(--purple-primary)}
[data-theme="dark"] .filter-btn.active{background:var(--gold);color:var(--purple-deep);border-color:var(--gold)}

/* FEATURED POST */
.featured-post{display:grid;grid-template-columns:1.2fr 1fr;gap:0;border-radius:24px;overflow:hidden;margin-bottom:48px;border:1px solid var(--gray-200);transition:all .4s var(--ease-spring)}
[data-theme="dark"] .featured-post{border-color:rgba(255,255,255,.08)}
.featured-post:hover{transform:translateY(-4px);box-shadow:0 20px 60px rgba(77,25,121,.1)}
.featured-img{position:relative;min-height:360px;overflow:hidden}
.featured-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.featured-post:hover .featured-img img{transform:scale(1.05)}
.featured-content{padding:40px;display:flex;flex-direction:column;justify-content:center;background:var(--bg)}
.featured-badge{display:inline-flex;align-items:center;gap:6px;background:var(--gold);color:var(--purple-deep);padding:4px 14px;border-radius:50px;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;width:fit-content;margin-bottom:16px}
.featured-content h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);line-height:1.1;margin-bottom:12px;letter-spacing:.02em}
.featured-content h2 a:hover{color:var(--purple-primary)}
[data-theme="dark"] .featured-content h2 a:hover{color:var(--gold)}
.post-meta{display:flex;align-items:center;gap:16px;font-size:.8rem;color:var(--text-secondary);margin-bottom:12px;flex-wrap:wrap}
.post-meta .dot{width:4px;height:4px;border-radius:50%;background:var(--gray-400)}
.featured-excerpt{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin-bottom:20px}
.read-more{color:var(--purple-primary);font-weight:600;font-size:.9rem;display:inline-flex;align-items:center;gap:6px;transition:gap .3s}
[data-theme="dark"] .read-more{color:var(--gold)}
.read-more:hover{gap:12px}

/* BLOG GRID */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.blog-card{border-radius:20px;overflow:hidden;border:1px solid var(--gray-200);transition:all .4s var(--ease-spring);background:var(--bg)}
[data-theme="dark"] .blog-card{border-color:rgba(255,255,255,.08)}
.blog-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px rgba(77,25,121,.1)}
.blog-card-img{position:relative;height:200px;overflow:hidden}
.blog-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease-out)}
.blog-card:hover .blog-card-img img{transform:scale(1.08)}
.blog-card-tag{position:absolute;top:12px;left:12px;background:rgba(42,10,74,.85);color:var(--white);padding:4px 12px;border-radius:50px;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(8px)}
.blog-card-body{padding:24px}
.blog-card-body h3{font-family:var(--font-body);font-size:1.05rem;font-weight:700;line-height:1.4;margin-bottom:8px}
.blog-card-body h3 a:hover{color:var(--purple-primary)}
[data-theme="dark"] .blog-card-body h3 a:hover{color:var(--gold)}
.blog-card-excerpt{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.blog-card-footer{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:var(--text-secondary)}
.blog-card-footer .read-time{display:flex;align-items:center;gap:4px}

/* EMPTY STATE */
.empty-state{text-align:center;padding:60px 20px;display:none}
.empty-state.active{display:block}
.empty-state h3{font-family:var(--font-display);font-size:1.5rem;margin:16px 0 8px}
.empty-state p{color:var(--text-secondary);font-size:.95rem}

/* NEWSLETTER BOTTOM */
.newsletter{background:var(--purple-deep);color:var(--white);text-align:center}
.newsletter-form{display:flex;max-width:500px;margin:32px auto 0;gap:12px}
.newsletter-form input{flex:1;padding:16px 24px;border-radius:50px;border:2px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);color:var(--white);font-family:var(--font-body);font-size:.95rem;outline:none;transition:border-color .3s}
.newsletter-form input::placeholder{color:rgba(255,255,255,.45)}.newsletter-form input:focus{border-color:var(--gold)}
.newsletter-form button{padding:16px 32px;background:var(--gold);color:var(--purple-deep);border-radius:50px;font-weight:700;font-size:.9rem;white-space:nowrap;transition:all .3s var(--ease-spring)}
.newsletter-form button:hover{transform:scale(1.05);box-shadow:0 4px 20px rgba(200,169,81,.4)}

/* FOOTER */
.footer{background:var(--black);color:rgba(255,255,255,.7);padding:60px 0 30px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.footer-brand img{height:60px;margin-bottom:16px}.footer-brand p{font-size:.9rem;line-height:1.6;max-width:300px}
.footer-col h4{color:var(--white);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}
.footer-col a{display:block;font-size:.9rem;padding:4px 0;transition:color .3s}.footer-col a:hover{color:var(--gold)}
.footer-social{display:flex;gap:12px;margin-top:16px}.footer-social a{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;transition:all .3s}.footer-social a:hover{background:var(--gold);color:var(--purple-deep)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-size:.8rem}.footer-legal{display:flex;gap:20px}.footer-legal a:hover{color:var(--gold)}

@media(max-width:1024px){.nav-links{display:none}.hamburger{display:flex}.featured-post{grid-template-columns:1fr}.featured-img{min-height:250px}.blog-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.blog-grid{grid-template-columns:1fr}.subscribe-inner{flex-direction:column;text-align:center}.subscribe-form{width:100%}.subscribe-form input{flex:1;width:auto}.newsletter-form{flex-direction:column}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;text-align:center}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
