/* =====================================================
   M2 Energy · Blog stylesheet
   Compartido por /blog/index.html y todos los posts.
   Paleta + tipos consistentes con el sitio principal.
   ===================================================== */

:root{
  --amber:#f6be1f;--amber-hot:#ffd557;--amber-soft:rgba(246,190,31,.08);
  --blue:#355e72;--blue-hot:#5a9cb8;--blue-deep:#1f3e52;
  --bg-0:#0e1c28;--bg-1:#13283a;--bg-2:#1a3548;--bg-panel:#162e42;
  --ink:#fafcff;--ink-dim:#cdd8e3;--ink-mute:#8ea0b0;
  --line:rgba(255,255,255,.10);--line-str:rgba(255,255,255,.18);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{background:var(--bg-0);color:var(--ink);font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;}
body{overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--amber);color:#0a1620}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:18px 48px;border-bottom:1px solid transparent;transition:background .3s,padding .3s,border-color .3s;}
.nav.scrolled{background:rgba(7,17,26,.88);backdrop-filter:blur(14px);border-bottom-color:var(--line);padding:12px 48px;}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--ink)}
.brand-mark{width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,var(--amber) 0%,#e0a417 100%);box-shadow:0 0 0 1px rgba(246,190,31,.35),0 8px 24px -8px rgba(246,190,31,.6);display:grid;place-items:center;overflow:hidden;}
.brand-mark svg{width:18px;height:18px;z-index:1}
.brand-text{font-family:'Space Grotesk',sans-serif;font-size:17px}
.brand-text span{color:var(--amber)}
.nav-back{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-dim);padding:8px 16px;border:1px solid var(--line);border-radius:999px;transition:color .2s,border-color .2s;}
.nav-back:hover{color:var(--ink);border-color:var(--line-str)}
.nav-back svg{width:14px;height:14px}
.nav-right{display:flex;align-items:center;gap:14px}
.nav-cta{font-size:12.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:10px 18px;border-radius:999px;background:var(--amber);color:#0a1620;transition:transform .2s,box-shadow .2s;box-shadow:0 0 0 1px rgba(246,190,31,.4),0 8px 24px -6px rgba(246,190,31,.5);}
.nav-cta:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(246,190,31,.6),0 12px 32px -6px rgba(246,190,31,.7)}

/* POST HERO */
.post-hero{position:relative;min-height:60vh;display:flex;align-items:flex-end;padding:140px 0 60px;overflow:hidden;background:linear-gradient(180deg,rgba(7,17,26,.5) 0%,rgba(7,17,26,.95) 100%),radial-gradient(1200px 600px at 15% 30%,rgba(53,94,114,.45),transparent 60%),radial-gradient(900px 500px at 85% 70%,rgba(246,190,31,.08),transparent 60%),linear-gradient(180deg,#06101a 0%,#08141e 60%,#0a1824 100%);}
.post-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.85;z-index:0;}
.post-hero-grad{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,17,26,.88) 0%,rgba(7,17,26,.72) 30%,rgba(7,17,26,.3) 60%,transparent 90%),linear-gradient(180deg,rgba(7,17,26,.4) 0%,transparent 30%,transparent 70%,rgba(7,17,26,.55) 100%);z-index:1;}
.post-hero-watermark{display:none;}
.post-hero-content{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:0 48px;width:100%;}
.post-hero-inner{max-width:780px;}
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-mute);margin-bottom:28px;}
.breadcrumb a{color:var(--ink-mute);transition:color .2s}
.breadcrumb a:hover{color:var(--amber)}
.breadcrumb span{opacity:.4}
.post-cat-kicker{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.22em;color:var(--amber);text-transform:uppercase;display:inline-flex;align-items:center;gap:10px;margin-bottom:24px;}
.post-cat-kicker::before{content:'';width:32px;height:2px;background:var(--amber)}
.post-hero h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(30px,4.4vw,54px);font-weight:700;line-height:1.08;letter-spacing:-.02em;margin-bottom:22px;color:var(--ink);}
.post-subtitle{font-size:clamp(15px,1.2vw,18px);color:var(--ink-dim);line-height:1.6;margin-bottom:32px;max-width:680px;}
.post-meta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-top:24px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-mute);}
.post-meta .author{display:flex;align-items:center;gap:10px;color:var(--ink-dim)}
.post-meta .author-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--amber),#e0a417);display:grid;place-items:center;font-family:'Space Grotesk',sans-serif;font-weight:700;color:#0a1620;font-size:13px}
.post-meta .author strong{color:var(--ink);font-weight:600}
.post-meta .meta-dot{width:3px;height:3px;border-radius:50%;background:var(--ink-mute)}

/* 3-COLUMN LAYOUT */
.post-layout{max-width:1280px;margin:60px auto 0;padding:0 48px;display:grid;grid-template-columns:240px 1fr 280px;gap:48px;align-items:flex-start;}
.post-aside{position:sticky;top:100px;}
.post-aside-left{padding-top:8px;}
.post-aside-right{padding-top:8px;}

.aside-section-title{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.18em;color:var(--ink-mute);text-transform:uppercase;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid var(--line);}
.aside-related-card{display:block;padding:14px 0;border-bottom:1px solid var(--line);transition:transform .2s;}
.aside-related-card:hover{transform:translateX(2px)}
.aside-related-card:hover .aside-related-card-title{color:var(--amber)}
.aside-related-card:last-child{border-bottom:none}
.aside-related-card-img{aspect-ratio:16/10;border-radius:8px;margin-bottom:12px;background-color:var(--blue-deep);background-image:linear-gradient(135deg,var(--blue),var(--blue-deep));background-size:cover;background-position:center;position:relative;overflow:hidden;}
.aside-related-card-img.cat-capacidad{background-image:linear-gradient(135deg,#1f3e52 0%,#0e1c28 100%)}
.aside-related-card-img.cat-permisos{background-image:linear-gradient(135deg,#355e72 0%,#162e42 100%)}
.aside-related-card-img.cat-operacion{background-image:linear-gradient(135deg,#2a4055 0%,#0e1c28 100%)}
.aside-related-card-img.cat-mercado{background-image:linear-gradient(135deg,#1f3e52 0%,#13283a 50%,#3d2e15 100%)}
.aside-related-card-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(7,17,26,.6) 100%)}
.aside-related-card-cat{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.15em;color:var(--amber);text-transform:uppercase;margin-bottom:8px;display:block;}
.aside-related-card-title{font-family:'Space Grotesk',sans-serif;font-size:13.5px;font-weight:600;line-height:1.35;color:var(--ink);transition:color .2s;}

.aside-author-card{background:var(--bg-1);border:1px solid var(--line);border-radius:14px;padding:24px;margin-bottom:24px;}
.aside-author-avatar-large{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--amber),#e0a417);display:grid;place-items:center;font-family:'Space Grotesk',sans-serif;font-weight:700;color:#0a1620;font-size:20px;margin-bottom:14px;}
.aside-author-card h4{font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:700;color:var(--ink);margin-bottom:4px;line-height:1.2;}
.aside-author-card .author-role{font-size:12px;color:var(--ink-mute);margin-bottom:16px;font-family:'JetBrains Mono',monospace;letter-spacing:.04em;}
.aside-author-card p{font-size:13px;color:var(--ink-dim);line-height:1.6;margin-bottom:16px;}
.aside-author-card a.author-link{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:12.5px;color:var(--amber);display:inline-flex;align-items:center;gap:4px;transition:gap .2s;}
.aside-author-card a.author-link:hover{gap:8px}

.aside-cta-card{background:linear-gradient(135deg,var(--blue-deep) 0%,var(--bg-1) 100%);border:1px solid rgba(246,190,31,.25);border-radius:14px;padding:24px;position:relative;overflow:hidden;}
.aside-cta-card::before{content:'';position:absolute;top:-40%;right:-30%;width:200px;height:200px;background:radial-gradient(circle,rgba(246,190,31,.15),transparent 65%);pointer-events:none}
.aside-cta-card h4{font-family:'Space Grotesk',sans-serif;font-size:17px;font-weight:700;color:var(--ink);margin-bottom:10px;line-height:1.25;position:relative;}
.aside-cta-card p{font-size:12.5px;color:var(--ink-dim);line-height:1.6;margin-bottom:18px;position:relative;}
.aside-cta-btn{display:block;text-align:center;background:var(--amber);color:#0a1620;padding:12px 18px;border-radius:8px;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;transition:transform .2s,box-shadow .2s;position:relative;}
.aside-cta-btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px -6px rgba(246,190,31,.45)}

/* BODY */
.post-body{font-size:17px;line-height:1.75;color:var(--ink-dim);padding-top:8px;}
.post-body > * + *{margin-top:24px}
.post-body p{font-size:17px;line-height:1.75;color:var(--ink-dim)}
.post-body p strong{color:var(--ink);font-weight:600}
.post-body p em{color:var(--ink);font-style:italic}
.post-body a{color:var(--amber);border-bottom:1px solid rgba(246,190,31,.4);transition:border-color .2s,color .2s}
.post-body a:hover{color:var(--amber-hot);border-bottom-color:var(--amber)}
.post-body h2{font-family:'Space Grotesk',sans-serif;font-size:30px;font-weight:700;line-height:1.2;letter-spacing:-.015em;color:var(--ink);margin-top:48px;padding-top:8px;position:relative;}
.post-body h2::before{content:'';position:absolute;top:0;left:0;width:48px;height:3px;background:var(--amber)}
.post-body h3{font-family:'Space Grotesk',sans-serif;font-size:22px;font-weight:600;line-height:1.3;color:var(--ink);margin-top:36px;}
.post-body ul,.post-body ol{margin-left:0;padding-left:24px;color:var(--ink-dim)}
.post-body ul li,.post-body ol li{margin-top:10px;line-height:1.7}
.post-body ul li::marker{color:var(--amber)}
.post-body ol li::marker{color:var(--amber);font-weight:600}
.post-body hr{border:none;height:1px;background:linear-gradient(90deg,transparent,var(--line-str),transparent);margin:48px 0;}

.key-takeaway{background:linear-gradient(135deg,rgba(246,190,31,.08) 0%,rgba(53,94,114,.08) 100%);border:1px solid rgba(246,190,31,.25);border-radius:14px;padding:24px 28px;margin:36px 0;}
.key-takeaway-label{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.2em;color:var(--amber);text-transform:uppercase;margin-bottom:10px;display:flex;align-items:center;gap:10px;}
.key-takeaway-label::before{content:'';width:24px;height:2px;background:var(--amber)}
.key-takeaway p{color:var(--ink);font-size:16px;line-height:1.6;margin:0}

.cta-inline{background:linear-gradient(135deg,var(--blue-deep) 0%,var(--bg-1) 100%);border:1px solid var(--line);border-radius:14px;padding:28px 32px;margin:40px 0;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;}
.cta-inline-text strong{display:block;font-family:'Space Grotesk',sans-serif;font-size:18px;color:var(--ink);margin-bottom:6px;}
.cta-inline-text span{font-size:14px;color:var(--ink-dim);line-height:1.5}
.cta-inline-btn,
.post-body a.cta-inline-btn{background:var(--amber);color:#0a1620;padding:13px 24px;border-radius:8px;border-bottom:none;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;transition:transform .2s,box-shadow .2s;}
.cta-inline-btn:hover,
.post-body a.cta-inline-btn:hover{color:#0a1620;background:var(--amber);border-bottom:none;transform:translateY(-1px);box-shadow:0 8px 24px -6px rgba(246,190,31,.45);}

.cta-final{max-width:1280px;margin:80px auto 0;padding:0 48px;}
.cta-final-inner{background:linear-gradient(135deg,var(--blue-deep) 0%,var(--bg-1) 100%);border:1px solid var(--line);border-radius:20px;padding:60px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px;position:relative;overflow:hidden;}
.cta-final-inner::before{content:'';position:absolute;top:-50%;right:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(246,190,31,.12),transparent 65%);pointer-events:none}
.cta-final h3{font-family:'Space Grotesk',sans-serif;font-size:30px;font-weight:700;line-height:1.2;margin-bottom:12px;color:var(--ink)}
.cta-final p{font-size:15px;color:var(--ink-dim);max-width:520px;line-height:1.6}
.btn-cta{background:var(--amber);color:#0a1620;padding:16px 36px;border-radius:10px;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:14px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;transition:transform .2s,box-shadow .2s;box-shadow:0 0 0 1px rgba(246,190,31,.4),0 8px 24px -6px rgba(246,190,31,.5);}
.btn-cta:hover{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(246,190,31,.6),0 12px 32px -6px rgba(246,190,31,.7)}

/* FOOTER */
footer{background:#050c14;padding:60px 48px 28px;border-top:1px solid var(--line);position:relative;overflow:hidden;margin-top:80px;}
footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--amber),transparent);opacity:.3}
.foot-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;}
.foot-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.foot-brand .brand-mark{width:32px;height:32px}
.foot-col p{font-size:13.5px;color:var(--ink-mute);line-height:1.6;margin:14px 0 20px;max-width:280px;}
footer h5{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:16px;}
footer ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
footer ul a{font-size:13.5px;color:var(--ink-dim);transition:color .2s;}
footer ul a:hover{color:var(--amber)}
.foot-bar{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-mute);}

/* FAQ · acordeón CSS-only (details/summary) */
.post-faq{max-width:860px;margin:0 auto;padding:64px 48px 8px;}
.post-faq__kicker{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.22em;color:var(--amber);text-transform:uppercase;display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;}
.post-faq__kicker::before{content:'';width:32px;height:2px;background:var(--amber);}
.post-faq h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(24px,3.2vw,36px);font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--ink);margin-bottom:28px;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;font-family:'Space Grotesk',sans-serif;font-size:clamp(15.5px,1.5vw,18px);font-weight:600;color:var(--ink);transition:color .2s;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary:hover{color:var(--amber);}
.faq-plus{width:30px;height:30px;flex:none;border-radius:50%;border:1px solid var(--line-str);display:grid;place-items:center;color:var(--amber);font-size:20px;line-height:1;transition:transform .3s cubic-bezier(.2,.7,.2,1),background .2s,border-color .2s;}
.faq-item[open] .faq-plus{transform:rotate(45deg);background:var(--amber-soft);border-color:rgba(246,190,31,.5);}
.faq-a{padding:0 2px 26px;color:var(--ink-dim);font-size:15.5px;line-height:1.7;max-width:720px;animation:faqReveal .34s ease;}
.faq-a a{color:var(--amber);text-decoration:underline;text-underline-offset:2px;}
.faq-a strong{color:var(--ink);font-weight:600;}
@keyframes faqReveal{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}

/* ÍNDICE (TOC) · sticky + scroll-spy */
.post-toc{margin-bottom:28px;}
.post-toc__title{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.18em;color:var(--ink-mute);text-transform:uppercase;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line);}
.post-toc ul{list-style:none;display:flex;flex-direction:column;border-left:1px solid var(--line);}
.post-toc a{display:block;padding:7px 0 7px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:13px;line-height:1.45;color:var(--ink-mute);transition:color .2s,border-color .2s;}
.post-toc a:hover{color:var(--ink-dim);}
.post-toc a.is-active{color:var(--amber);border-left-color:var(--amber);font-weight:600;}
article h2[id]{scroll-margin-top:96px;}

/* RESPONSIVE */
@media (max-width:1180px){
  .post-layout{grid-template-columns:200px 1fr 260px;gap:32px;padding:0 32px;}
  .post-hero-watermark{font-size:200px;right:4%;}
}
@media (max-width:980px){
  .post-layout{grid-template-columns:1fr;max-width:780px;padding:0 32px;gap:48px;}
  .post-aside{position:relative;top:auto;}
  .post-aside-right{order:-1;display:grid;grid-template-columns:1fr 1fr;gap:20px;}
  .post-toc{display:none;}
  .aside-author-card{margin-bottom:0}
  .post-hero-watermark{display:none}
}
@media (max-width:820px){
  .nav{padding:14px 20px}
  .nav.scrolled{padding:10px 20px}
  .post-hero-content{padding:0 24px}
  .post-layout{padding:0 24px}
  .cta-final{padding:0 24px}
  .post-faq{padding:48px 24px 4px}
  .cta-final-inner{padding:36px 28px;grid-template-columns:1fr}
  .cta-inline{grid-template-columns:1fr;text-align:left}
  .post-aside-right{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr;gap:32px;padding:0 24px}
  .foot-bar{padding:24px 24px 0;flex-direction:column;gap:8px}
}
