body { font-family:'Inter',system-ui,-apple-system,sans-serif; line-height:1.7; color:#1c1c1e; }
h1,h2,h3,h4,h5,h6 { letter-spacing:-0.025em; line-height:1.2; }
.display-5 { letter-spacing:-0.04em; line-height:1.1; }
.lead { font-size:1.075rem; line-height:1.75; font-weight:400; }
.brand_p8 { background:linear-gradient(to bottom,#feba02 0%,#fe7817 100%); -webkit-background-clip:text; -webkit-text-fill-color:transparent; font-weight:800; }

footer { color:#fff; text-align:center; font-size:0.85rem; line-height:1.75; }
footer .email { color:#fe9f0a; }
footer .email b { display:none; }

.nav-link { color:white; font-size:0.8rem; letter-spacing:0.08em; font-weight:500; text-transform:uppercase; }
.nav-link:visited { color:white; }
.nav-link:hover { color:#fe9f0a; }
.nav-link.active { color:white !important; }

.menuicon { opacity:.5; height:35px; margin:0 10px; }
.menuicon:hover { opacity:1; transition:.4s; }

.question { width:20px; height:20px; border-radius:50%; line-height:10px; text-align:center; padding:0; margin-top:-15px; }

p.project_icons a, p.project_icons a:visited { color:#757575; }
p.project_icons a:hover { transition:.4s; }
p.project_icons a.spotify:hover { color:#1DB954; }
p.project_icons a.apple:hover { color:#000000; }
p.project_icons a.youtube:hover { color:#FF0000; }
p.project_icons a.amazon:hover { color:#FF9900; }
p.project_icons a.rss:hover { color:#F87900; }
p.project_icons a.web:hover { color:#1584a0; }
p.project_icons a i { font-size:2.5em; margin:0 8px; }

p.podcast_links a { margin:0 8px; }

div.podcast_episode { text-align:center; }
div.podcast_episode a, div.podcast_episode a:visited { display:block; color:#000; position:relative; text-decoration:none; }
div.podcast_episode a:hover strong { color:#f17432; transition:.5s; }
div.podcast_episode a strong { display:block; }
div.podcast_episode img { width:100%; }

div#portadaproyectos a, div#portadaproyectos a:visited,
div#blogportada a, div#blogportada a:visited { text-decoration:none; color:inherit; }
div#portadaproyectos a .card,
div#blogportada a .card { border:1px solid rgba(0,0,0,0.07); box-shadow:0 2px 8px rgba(0,0,0,0.05); transition:box-shadow 0.2s ease,transform 0.2s ease; }
div#portadaproyectos a:hover .card,
div#blogportada a:hover .card { box-shadow:0 6px 24px rgba(0,0,0,0.1); transform:translateY(-2px); }

.blog .headerimage { background-position:center center; background-size:cover; min-height:400px; }
.blog blockquote { margin:0 100px; font-style:italic; color:#444; border:1px solid #eaeaea; border-radius:8px; padding:20px 30px; box-sizing:border-box; box-shadow:rgba(0,0,0,0.35) 0px 5px 15px; text-align:center; }

.btn { font-size:0.875rem; font-weight:500; letter-spacing:0.02em; border-radius:6px !important; }
.btn-lg { border-radius:8px !important; }

.badge-rango { display:inline-block; font-size:0.68rem; font-weight:700; letter-spacing:0.12em; padding:3px 10px; border-radius:4px; text-transform:uppercase; line-height:1.6; }
.badge-miembro { background:linear-gradient(to right,#feba02,#fe7817); color:#1c1c1e; }
.badge-colaborador { background:rgba(0,0,0,0.07); color:#555; border:1px solid rgba(0,0,0,0.12); }
.badge-colaborador-dark,
.badge-blog { background:rgba(255,255,255,0.10); color:rgba(255,255,255,0.80); border:1px solid rgba(255,255,255,0.28); }

.member-card { text-decoration:none; color:inherit; display:block; }
.member-card .card-inner { text-align:center; padding:1.5rem 1rem; border-radius:10px; }
.member-card img { width:96px; height:96px; object-fit:cover; border-radius:50%; box-shadow:0 0 0 3px #feba02,0 0 0 5px #f0f0f0; margin-bottom:1rem; }
.member-card.colaborador img { box-shadow:0 0 0 3px #aaa,0 0 0 5px #f0f0f0; }
.member-nick { font-weight:700; font-size:1rem; margin-bottom:0.35rem; }

.blog-card { text-decoration:none; color:inherit; display:block; height:100%; }
.blog-card .card { height:100%; background:#fff; overflow:hidden; }
.blog-card .card-img-top { height:180px; object-fit:cover; }
.blog-card h4 { font-size:1rem; font-weight:700; line-height:1.35; margin-bottom:0.5rem; color:#1c1c1e; }
.blog-card p { font-size:0.875rem; color:#555; line-height:1.55; margin-bottom:0.75rem; }
.blog-card .autor-line { display:flex; align-items:center; gap:0.5rem; font-size:0.8rem; color:#777; }
.blog-card .autor-line img { width:24px; height:24px; border-radius:50%; object-fit:cover; flex-shrink:0; }

.project-card { border-radius:0.375rem; padding:1rem 1.25rem; }
.autor-card { border-radius:8px; padding:1.25rem 1.5rem; }

.member-card .card-inner,
.blog-card .card,
.project-card,
.autor-card { border:1px solid rgba(0,0,0,0.08); box-shadow:0 2px 8px rgba(0,0,0,0.05); }

.member-card .card-inner,
.blog-card .card,
.project-card { transition:box-shadow 0.2s,transform 0.2s; }

.member-card:hover .card-inner,
.blog-card:hover .card,
.project-card:hover { box-shadow:0 8px 28px rgba(0,0,0,0.1); transform:translateY(-3px); }

.latest-card { text-decoration:none; color:inherit; display:block; }
.latest-card-inner { border-radius:10px; overflow:hidden; border:1px solid rgba(0,0,0,0.08); box-shadow:0 2px 8px rgba(0,0,0,0.05); transition:box-shadow 0.2s,transform 0.2s; }
.latest-card:hover .latest-card-inner { box-shadow:0 8px 28px rgba(0,0,0,0.1); transform:translateY(-3px); }
.latest-card-thumb { aspect-ratio:1/1; overflow:hidden; position:relative; }
.latest-card-thumb img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }
.latest-card-body { padding:0.75rem; }
.latest-proyecto { display:flex; align-items:center; gap:0.4rem; margin-bottom:0.35rem; }
.latest-proyecto img { width:18px; height:18px; object-fit:contain; flex-shrink:0; }
.latest-proyecto span { font-size:0.7rem; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; color:#888; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.latest-titulo { font-size:0.82rem; font-weight:700; line-height:1.35; color:#1c1c1e; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; margin-bottom:0.3rem; }
.latest-fecha { font-size:0.72rem; color:#aaa; }
