/* ==========================================================================
   Portafolio Giovanni López — estilos del rediseño (rejilla + proyecto)
   Alcance: se aplica dentro de .gl-portfolio (archivo y single de proyecto)
   ========================================================================== */

.gl-portfolio{
  /* paleta */
  --ink:#0E1116; --ink-2:#141922; --surface:#181E28; --surface-2:#1F2733;
  --line:#2A3340; --text:#ECE9E1; --muted:#909AA8; --muted-2:#6C7683;
  --amber:#E8A33D; --amber-soft:#F2C078; --teal:#68B0B4; --good:#7FC08A;
  --display:"Bricolage Grotesque",Georgia,serif;
  --body:"Hanken Grotesk","Helvetica Neue",Arial,sans-serif;
  --mono:"Space Mono",ui-monospace,Menlo,monospace;

  /* full-bleed: rompe cualquier contenedor y ocupa todo el ancho */
  width:100vw; max-width:100vw;
  margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
  background:var(--ink); color:var(--text);
  font-family:var(--body); line-height:1.6;
}
.gl-portfolio *{box-sizing:border-box}
.gl-portfolio a{color:inherit;text-decoration:none}
.gl-portfolio ::selection{background:var(--amber);color:#0b0d11}
.gl-wrap{max-width:1180px;margin:0 auto;padding:0 24px}

.gl-eyebrow{
  font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--amber);display:inline-block;
}

/* ---------- Hero del archivo ---------- */
.gl-hero{padding:60px 0 20px;position:relative;overflow:hidden}
.gl-hero .gl-streak{
  position:absolute;right:-8%;top:-40%;width:55%;height:180%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(232,163,61,.16),transparent 70%);
  transform:rotate(18deg);filter:blur(6px);
}
.gl-hero h1{
  font-family:var(--display);font-weight:800;letter-spacing:-.025em;line-height:1.03;
  font-size:clamp(34px,5.4vw,60px);margin:14px 0 0;max-width:16ch;
}
.gl-hero p.gl-lead{color:var(--muted);font-size:clamp(15px,2vw,18px);max-width:56ch;margin:16px 0 0}

/* ---------- Barra de filtros ---------- */
.gl-filterbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:26px 0 24px}
.gl-chip{
  font-family:var(--mono);font-size:12px;letter-spacing:.03em;color:var(--muted);
  background:transparent;border:1px solid var(--line);padding:7px 14px;border-radius:999px;
  cursor:pointer;transition:all .18s;
}
.gl-chip:hover{color:var(--text);border-color:var(--muted-2)}
.gl-chip.active{background:var(--text);color:var(--ink);border-color:var(--text)}

/* ---------- Botón reutilizable ---------- */
.gl-portfolio .gl-btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;padding:11px 18px;border-radius:10px;background:var(--amber);color:#0b0d11;transition:transform .15s,filter .2s;cursor:pointer}
.gl-portfolio .gl-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
.gl-portfolio .gl-btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}
.gl-portfolio .gl-btn.ghost:hover{border-color:var(--amber);color:var(--amber-soft)}

/* ---------- Sección destacada en la home ---------- */
.gl-portfolio.gl-featured{padding:64px 0}
.gl-fhead{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:26px}
.gl-fh2{font-family:var(--display);font-weight:800;font-size:clamp(28px,4vw,44px);letter-spacing:-.02em;margin:12px 0 0;color:var(--text)}
.gl-fhead .gl-lead{margin-top:10px}
.gl-fhead-cta{white-space:nowrap}
.gl-fbottom{display:none;margin-top:26px;text-align:center}
@media(max-width:640px){
  .gl-fhead-cta{display:none}
  .gl-fbottom{display:block}
}

/* ---------- Rejilla ---------- */
.gl-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));
  grid-auto-rows:210px;gap:16px;padding-bottom:80px;
}
.gl-card{
  position:relative;border-radius:14px;overflow:hidden;cursor:pointer;
  grid-row:span 1;background:var(--surface);border:1px solid var(--line);
  isolation:isolate;display:block;
}
.gl-card.gl-tall{grid-row:span 2}
.gl-cover{position:absolute;inset:0;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.gl-cover-img{width:100%!important;height:100%!important;object-fit:cover;display:block}
.gl-cover-fallback{width:100%;height:100%;display:grid;place-items:center;
  background:linear-gradient(140deg,#25344a,#111823)}
.gl-cover-fallback span{font-family:var(--display);font-weight:800;font-size:64px;color:rgba(255,255,255,.10)}
.gl-card:hover .gl-cover{transform:scale(1.06)}
.gl-scrim{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(to top,rgba(8,10,14,.92) 0%,rgba(8,10,14,.35) 42%,rgba(8,10,14,.03) 100%);
}
.gl-meta{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:18px}
.gl-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--amber-soft)}
.gl-title{font-family:var(--display);font-weight:600;font-size:19px;line-height:1.12;margin:6px 0 0;letter-spacing:-.01em;color:var(--text)}
.gl-desc{
  color:var(--muted);font-size:13.5px;line-height:1.45;margin:9px 0 0;
  max-height:0;opacity:0;overflow:hidden;
  transition:max-height .45s cubic-bezier(.2,.7,.2,1),opacity .3s,margin .45s;
}
.gl-go{
  display:inline-flex;align-items:center;gap:6px;margin-top:12px;
  font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--amber);
  max-height:0;opacity:0;overflow:hidden;transition:max-height .45s,opacity .3s,margin .45s;
}
.gl-card:hover .gl-desc,.gl-card:focus-within .gl-desc{max-height:120px;opacity:1}
.gl-card:hover .gl-go,.gl-card:focus-within .gl-go{max-height:40px;opacity:1}
.gl-card:hover{border-color:rgba(232,163,61,.4)}
.gl-empty{color:var(--muted);padding:20px 0 80px}

/* ---------- Página de proyecto (single) ---------- */
.gl-back{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-family:var(--mono);
  font-size:12px;letter-spacing:.05em;cursor:pointer;padding:34px 0 0}
.gl-back:hover{color:var(--amber)}
.gl-pjhero{position:relative;border-radius:18px;overflow:hidden;margin-top:18px;height:min(52vh,460px);border:1px solid var(--line)}
.gl-pjhero .gl-cover-img{width:100%!important;height:100%!important;object-fit:cover}
.gl-pjhero .gl-cover-fallback{height:100%}
.gl-pjhero .gl-scrim{background:linear-gradient(to top,rgba(8,10,14,.9),rgba(8,10,14,.15))}
.gl-pjhero .gl-cap{position:absolute;left:0;bottom:0;padding:30px;z-index:2}
.gl-pjhero h1{font-family:var(--display);font-weight:800;font-size:clamp(30px,5vw,54px);letter-spacing:-.02em;margin:10px 0 0;max-width:20ch;color:var(--text)}
.gl-pjbody{display:grid;grid-template-columns:230px 1fr;gap:48px;padding:44px 0 24px;align-items:start}
.gl-credits{position:sticky;top:90px;display:flex;flex-direction:column;gap:18px;border-left:2px solid var(--amber);padding-left:18px}
.gl-credits .gl-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.gl-credits .gl-v{font-size:15px;margin-top:2px;color:var(--text)}
.gl-prose{color:#D8D5CD;font-size:17px;line-height:1.72;max-width:64ch}
.gl-prose p{margin:0 0 18px}
.gl-prose img{border-radius:12px;height:auto}
.gl-prose h2,.gl-prose h3{font-family:var(--display);color:var(--text);letter-spacing:-.01em}
/* galerías insertadas desde el editor */
.gl-prose .gallery{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin:16px 0 26px;width:100%}
.gl-prose .gallery .gallery-item{width:100% !important;max-width:100% !important;margin:0 !important;float:none !important;padding:0 !important}
.gl-prose .gallery .gallery-icon{margin:0 !important;border:0 !important}
.gl-prose .gallery .gallery-icon,.gl-prose .gallery .gallery-icon a{display:block}
.gl-prose .gallery img{width:100% !important;height:210px !important;object-fit:cover;display:block;max-width:100%;border:1px solid var(--line) !important;border-radius:12px;padding:0 !important}
.gl-prose .gallery br{display:none}
.gl-prose .gallery figcaption,.gl-prose .gallery .gallery-caption{display:none}

/* galería de videos (reels) como miniaturas */
.gl-videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin:16px 0 26px}
.gl-video-thumb{position:relative;display:block;padding-top:56.25%;border-radius:12px;overflow:hidden;border:1px solid var(--line);cursor:pointer;background:#141922}
.gl-video-thumb .gl-vt-img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .5s}
.gl-video-thumb:hover .gl-vt-img{transform:scale(1.06)}
.gl-video-thumb .gl-play{position:absolute;inset:0;display:grid;place-items:center}
.gl-video-thumb .gl-play::before{content:"";width:56px;height:56px;border-radius:50%;background:rgba(232,163,61,.94);box-shadow:0 8px 30px rgba(0,0,0,.4)}
.gl-video-thumb .gl-play::after{content:"";position:absolute;border-style:solid;border-width:11px 0 11px 18px;border-color:transparent transparent transparent #0b0d11;margin-left:4px}

/* pistas de imagen de galería: cursor de ampliar */
.gl-prose .gallery .gallery-icon a{cursor:zoom-in}

/* ================================================================
   Identidad: rosa suave (2º acento) + firma trans + miniaturas del hero
   ================================================================ */
/* Rosa suave en etiquetas/eyebrows (2º acento, bandera trans) */
.gl-eyebrow{color:#F5A9B8 !important}

/* Firma trans: degradado bajo el nombre en el hero (home y acerca) */
body.page-id-7 .sec-hero .bannerTexto h1::after,
body.page-id-8 .sec-hero .bannerTexto h1::after{
  content:"";display:block;width:132px;height:6px;border-radius:4px;margin-top:22px;
  background:linear-gradient(90deg,#5BCEFA,#F5A9B8,#ffffff,#F5A9B8,#5BCEFA);
}

/* Miniaturas de los últimos proyectos en el hero */
.sec-hero .bannerImagen{flex-direction:column}
/* ===== Hero cinematográfico full-bleed en capas ===== */
.sec-hero.gl-hero-cine{position:relative;overflow:hidden;min-height:min(82vh,780px);display:flex;align-items:center;padding-top:0 !important;padding-bottom:0 !important}
.gl-hero-cine .gl-hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none;background-size:cover;background-position:center;transform:scale(1.12);will-change:transform;transition:transform .3s ease-out}
.gl-hero-cine .gl-hero-scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:
  linear-gradient(90deg,rgba(8,10,14,.95) 0%,rgba(8,10,14,.68) 32%,rgba(8,10,14,.12) 56%,rgba(8,10,14,.15) 100%),
  linear-gradient(0deg,rgba(8,10,14,.9) 0%,transparent 30%)}
/* halo cálido detrás de la figura para separarla del set oscuro */
.gl-hero-cine .gl-hero-glow{position:absolute;right:6%;bottom:0;z-index:1;width:44%;height:92%;pointer-events:none;
  background:radial-gradient(closest-side, rgba(232,163,61,.28), rgba(245,169,184,.10) 55%, transparent 72%)}
.gl-hero-cine .gl-hero-fig{position:absolute;right:1%;bottom:0;height:96%;width:auto;max-width:58%;object-fit:contain;z-index:2;
  filter:drop-shadow(0 0 46px rgba(232,163,61,.32)) drop-shadow(0 16px 40px rgba(0,0,0,.55));will-change:transform;transition:transform .3s ease-out;pointer-events:none}
.sec-hero.gl-hero-cine .banner1,
.sec-hero.gl-hero-cine .bannerContenedor,
.sec-hero.gl-hero-cine .bannerTexto{background:transparent !important}
.gl-hero-cine .banner1{position:relative;z-index:3;width:100%;padding:0}
.gl-hero-cine .bannerContenedor{width:95%;max-width:1180px;margin:0 auto}
.gl-hero-cine .bannerTexto{width:54%;float:none;padding:1em 0}
.gl-hero-cine .bannerImagen{display:none}
.gl-hero-cine .gl-hero-minis--cine{position:absolute;left:50%;transform:translateX(-50%);bottom:24px;z-index:4;
  width:95%;max-width:1180px;padding:0 3px;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,148px));gap:12px;justify-content:start}
@media(max-width:900px){
  .sec-hero.gl-hero-cine{min-height:auto;padding-top:36px !important;display:block}
  .gl-hero-cine .bannerTexto{width:100%}
  .gl-hero-cine .gl-hero-fig{position:relative;right:auto;height:auto;max-width:80%;max-height:56vh;margin:18px auto 24px;display:block}
  .gl-hero-cine .gl-hero-minis--cine{position:relative;z-index:4;left:auto;right:auto;transform:none;grid-template-columns:repeat(3,1fr);max-width:none;width:auto;margin:0;padding:0 24px 28px}
}
.gl-hero-minis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:360px;margin:16px auto 0}
.gl-hero-mini{position:relative;display:block;aspect-ratio:1/1;border-radius:10px;overflow:hidden;border:1px solid #2A3340;transition:border-color .2s}
.gl-hero-mini img{width:100% !important;height:100% !important;max-width:none !important;object-fit:cover;display:block;filter:none !important;transition:transform .45s}
.gl-hero-mini:hover{border-color:#E8A33D}
.gl-hero-mini:hover img{transform:scale(1.08)}
.gl-hero-mini-n{position:absolute;left:6px;bottom:5px;font-family:"Space Mono",ui-monospace,monospace;font-size:10px;color:#fff;background:rgba(8,10,14,.65);padding:1px 6px;border-radius:5px}
.gl-hero-mini-fallback{display:block;width:100%;height:100%;background:linear-gradient(135deg,#25344a,#111823)}

/* ================================================================
   Acentos unificados al ámbar (menú, botón Contacto, frases)
   ================================================================ */
/* Botón "Contacto" del header */
.hfg_header .button.button-primary, header .button.button-primary,
.builder-item--button_base .button, .builder-item--button_base .button-primary{
  background-color:#E8A33D !important;color:#0b0d11 !important;border-color:#E8A33D !important;
}
.hfg_header .button.button-primary:hover, header .button.button-primary:hover,
.builder-item--button_base .button:hover{
  background-color:#F2C078 !important;color:#0b0d11 !important;border-color:#F2C078 !important;
}
/* Acentos resaltados dentro de las frases (antes teal) */
.contentbanner h3 span{color:#F2C078 !important}
/* Buscador: borde/acento ámbar (antes teal al enfocar) */
input[type="search"], .search-field, .search-form, .nv-search-form input[type="search"]{
  border-color:#3A2E1A !important;
}
input[type="search"]:focus, .search-field:focus, .search-form:focus-within,
.nv-search-form input[type="search"]:focus{
  border-color:#E8A33D !important;box-shadow:0 0 0 2px rgba(232,163,61,.35) !important;outline-color:#E8A33D !important;
}
.nv-search-icon-wrap:hover, .nv-search-icon-wrap:focus{color:#E8A33D !important}
.search-submit, .nv-submit{border-color:#E8A33D !important}
.search-submit:hover, .nv-submit:hover{background-color:#E8A33D !important;color:#0b0d11 !important}

/* ================================================================
   Ritmo de secciones por color (consistente en todo el sitio)
   hero=ink · frase=banda fría (teal) · panel=neutro · cta=banda cálida (ámbar)
   ================================================================ */
.contentbanner{display:flow-root !important;margin-top:0 !important;margin-bottom:0 !important}
.MyShadow{box-shadow:none !important}
.sec-hero, .sec-hero .banner1{background:#0E1116 !important}
.sec-frase, .sec-frase .banner1{background:#152232 !important}
.sec-panel, .sec-panel .banner1{background:#1C232F !important}
.sec-cta, .sec-cta .banner1{background:#152232 !important}
/* separador sutil e idéntico entre todas las secciones */
.sec-frase, .sec-panel, .sec-cta, .gl-portfolio.gl-featured{
  border-top:1px solid rgba(255,255,255,.06) !important;border-bottom:0 !important;
}
/* que el contenido no se pegue a los bordes de la sección */
.sec-panel{padding-bottom:2.6em !important}

/* ================================================================
   Página principal (id 7): fondo oscuro y texto claro
   ================================================================ */
body.page-id-7{background:#0E1116}
body.page-id-7 .contentbanner h1,body.page-id-7 .contentbanner h2,body.page-id-7 .contentbanner h3{color:#ECE9E1}
body.page-id-7 .bannerTexto p{color:#C5CAD2}
body.page-id-7 .bannerTexto a{background-color:#E8A33D;color:#0b0d11}
body.page-id-7 .bannerTexto a:hover{background-color:#F2C078;color:#0b0d11}

/* Imágenes de banners y logo: más pequeñas y elegantes (home + acerca) */
.bannerImagen{display:flex;align-items:center;justify-content:center}
.bannerImagen img{max-width:360px;width:100%;height:auto;margin:0 auto;filter:drop-shadow(0 18px 40px rgba(0,0,0,.35));transition:opacity 1s ease}

/* Hero del home: reel de video que alterna con el retrato */
.sec-hero .bannerImagen{position:relative}
.gl-hero-video{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:100%;max-width:360px;aspect-ratio:16/9;
  border-radius:14px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.4);
  opacity:0;transition:opacity 1s ease;pointer-events:none;
}
.gl-hero-video.show{opacity:1}
.gl-hero-video iframe{width:100%;height:100%;border:0;display:block}

/* ================================================================
   Acerca de: banner principal con imagen de fondo (bokeh)
   ================================================================ */
.gl-about-hero{position:relative;width:100%;min-height:min(72vh,600px);display:flex;align-items:center;overflow:hidden;
  background-size:cover;background-position:center;background-color:#0E1116}
.gl-about-hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,14,.88) 0%,rgba(8,10,14,.55) 42%,rgba(8,10,14,.08) 74%)}
.gl-about-hero-inner{position:relative;z-index:1;width:95%;max-width:1180px;margin:0 auto;padding:44px 24px}
.gl-about-hero .gl-eyebrow{display:inline-block;color:#F5A9B8;font-family:"Space Mono",ui-monospace,monospace;font-size:12px;letter-spacing:.22em;text-transform:uppercase;margin:0}
.gl-about-title{font-family:"Bricolage Grotesque",Georgia,serif;font-weight:800;letter-spacing:-.02em;line-height:1.02;
  font-size:clamp(40px,6vw,74px);color:#fff;margin:14px 0 0}
.gl-about-title::after{content:"";display:block;width:126px;height:6px;border-radius:4px;margin-top:18px;
  background:linear-gradient(90deg,#5BCEFA,#F5A9B8,#ffffff,#F5A9B8,#5BCEFA)}
.gl-about-role{color:#C9CDD3;font-family:"Hanken Grotesk",sans-serif;font-size:clamp(15px,2vw,20px);margin:18px 0 0;max-width:34ch}
.gl-about-btn{display:inline-block;margin-top:26px;background:#E8A33D;color:#0b0d11;font-family:"Hanken Grotesk",sans-serif;
  font-weight:600;font-size:15px;padding:13px 26px;border-radius:10px;text-decoration:none;transition:filter .2s,transform .15s}
.gl-about-btn:hover{filter:brightness(1.06);transform:translateY(-1px);color:#0b0d11}
/* Móvil: centrar en la figura (lado derecho) y texto abajo */
@media(max-width:768px){
  .gl-about-hero{min-height:74vh;align-items:flex-end;background-position:80% center}
  .gl-about-hero-scrim{background:linear-gradient(0deg,rgba(8,10,14,.92) 0%,rgba(8,10,14,.4) 52%,rgba(8,10,14,.12) 100%)}
  .gl-about-hero-inner{padding-bottom:40px}
  .gl-about-role{max-width:none}
}

/* ================================================================
   Página "Acerca de" (id 8): fondo oscuro y texto claro
   ================================================================ */
body.page-id-8{background:#0E1116}
body.page-id-8 .contentbanner p,body.page-id-8 .contentbanner li,body.page-id-8 .contentbanner h1,body.page-id-8 .contentbanner h2,
body.page-id-8 .contentbanner h3,body.page-id-8 .contentbanner h4,body.page-id-8 .contentbanner strong,body.page-id-8 .contentbanner b{color:#ECE9E1}
body.page-id-8 .bannerTexto p{color:#C5CAD2}
/* enlace "Contacto" tipo botón dentro de la bio */
body.page-id-8 .bannerTexto a{background-color:#E8A33D;color:#0b0d11}
body.page-id-8 .bannerTexto a:hover{background-color:#F2C078;color:#0b0d11}
/* barras de habilidades */
body.page-id-8 .grafica-barras{box-shadow:0 6px 20px rgba(0,0,0,.3)}

/* ================================================================
   Blog (listado y entradas) en dark cinematográfico
   ================================================================ */
body.blog, body.archive, body.single-post{background:#0E1116}
/* tarjetas del listado */
body.blog article.nv-non-grid-article,
body.archive article.nv-non-grid-article{
  background:#141922;border:1px solid #2A3340;border-radius:14px;
  padding:26px 30px;margin-bottom:22px;transition:border-color .2s;
}
body.blog article.nv-non-grid-article:hover{border-color:rgba(232,163,61,.4)}
body.blog .blog-entry-title a, body.archive .blog-entry-title a,
body.blog .entry-title a, body.archive .entry-title a{color:#ECE9E1}
body.blog .blog-entry-title a:hover, body.archive .blog-entry-title a:hover{color:#F2C078}
body.blog .entry-summary, body.blog .entry-summary p,
body.archive .entry-summary, body.archive .entry-summary p{color:#C5CAD2}
body.blog .nv-meta-list, body.blog .nv-meta-list a,
body.archive .nv-meta-list, body.archive .nv-meta-list a{color:#8A93A0}
/* entrada individual */
body.single-post{color:#D8D5CD}
body.single-post .entry-title,
body.single-post h1, body.single-post h2, body.single-post h3, body.single-post h4{color:#ECE9E1}
body.single-post .nv-content-wrap, body.single-post .entry-content,
body.single-post .entry-content p, body.single-post .entry-content li,
body.single-post .nv-meta-list, body.single-post .nv-meta-list a{color:#D8D5CD}
body.single-post .entry-content a{color:#F2C078}
body.single-post .comment-body,body.single-post .comment-body p{color:#C5CAD2}
/* enlace "Leer más" con contraste ámbar (acotado al contenido, no toca el header) */
body.blog .nv-index-posts .more-link, body.archive .nv-index-posts .more-link,
body.blog .nv-index-posts .read-more-wrapper a, body.archive .nv-index-posts .read-more-wrapper a,
body.blog .nv-index-posts a.button-primary, body.archive .nv-index-posts a.button-primary,
body.single-post .entry-content .more-link,
body.blog .nv-index-posts .entry-summary a, body.archive .nv-index-posts .entry-summary a,
body.blog .nv-index-posts .entry-content a, body.archive .nv-index-posts .entry-content a{
  color:#F2C078 !important;
}
body.blog .nv-index-posts a.button.button-primary, body.archive .nv-index-posts a.button.button-primary{
  background:#E8A33D !important;color:#0b0d11 !important;border-color:#E8A33D !important;
}

/* ================================================================
   Cohesión del sitio: formulario de contacto (dark cinematográfico)
   ================================================================ */
.wpcf7-form{
  background:#141922 !important;border:1px solid #2A3340 !important;
  border-radius:16px !important;box-shadow:0 24px 70px rgba(0,0,0,.4);
}
.wpcf7-form label{color:#ECE9E1;font-family:"Hanken Grotesk",sans-serif;font-size:14px;font-weight:500}
.wpcf7-form input[type=text],.wpcf7-form input[type=email],.wpcf7-form input[type=tel],
.wpcf7-form input[type=url],.wpcf7-form input[type=number],.wpcf7-form textarea,.wpcf7-form select,
.wpcf7-text,.wpcf7-textarea,.wpcf7-select{
  background:#181E28 !important;border:1px solid #2A3340 !important;border-radius:10px !important;
  color:#ECE9E1 !important;padding:11px 13px !important;font-family:"Hanken Grotesk",sans-serif;font-size:14.5px;
  transition:border-color .2s;
}
.wpcf7-form input:focus,.wpcf7-form textarea:focus,.wpcf7-form select:focus{
  outline:none;border-color:#E8A33D !important;
}
.wpcf7-form input::placeholder,.wpcf7-form textarea::placeholder{color:#6C7683}
.wpcf7-form select option{background:#181E28;color:#ECE9E1}
.wpcf7-submit{
  background:#E8A33D !important;color:#0b0d11 !important;border:0 !important;border-radius:10px !important;
  padding:13px 26px !important;font-weight:600 !important;font-size:14.5px;cursor:pointer;
  transition:filter .2s,transform .15s;
}
.wpcf7-submit:hover{filter:brightness(1.06);transform:translateY(-1px)}

/* ---------- Footer en negro ---------- */
.hfg_footer, .hfg_footer .footer--row, .hfg_footer .footer--row-inner,
footer .footer-bottom, footer .footer--row{background-color:#000 !important}

/* ---------- Footer: copyright en una sola línea ---------- */
.gl-copyright{white-space:nowrap;margin:0}
@media(max-width:900px){.gl-copyright{white-space:normal}}
.gl-footcontact{margin:4px 0 0;font-size:13px}
.gl-footcontact a{color:#909AA8;text-decoration:none;font-family:"Space Mono",ui-monospace,monospace;letter-spacing:.03em}
.gl-footcontact a:hover{color:#F2C078}

/* ---------- Footer: íconos sociales cohesivos ---------- */
footer .wp-block-social-links{gap:10px}
footer .wp-block-social-links .wp-social-link{
  background-color:rgba(255,255,255,.10) !important;border-radius:50% !important;
  transition:background-color .2s,transform .15s;
}
footer .wp-block-social-links .wp-social-link a{color:#fff !important;padding:6px !important}
footer .wp-block-social-links .wp-social-link svg{fill:#fff !important}
footer .wp-block-social-links .wp-social-link:hover{background-color:#E8A33D !important;transform:translateY(-2px)}
footer .wp-block-social-links .wp-social-link:hover a,
footer .wp-block-social-links .wp-social-link:hover svg{color:#0b0d11 !important;fill:#0b0d11 !important}

/* ---------- Protección de medios (disuasión de copia) ---------- */
.gl-portfolio img,.gl-cover,.gl-cover-img,.gl-video-thumb,.gl-vt-img,.gl-lb img,
.gl-prose .gallery img,.gl-pjhero img{
  -webkit-user-drag:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;
}

/* ---------- Lightbox / slideshow ---------- */
.gl-lb{position:fixed;inset:0;z-index:99999;background:rgba(8,10,14,.95);display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.gl-lb.open{display:flex}
.gl-lb-stage{max-width:92vw;max-height:86vh;display:flex;align-items:center;justify-content:center}
.gl-lb-stage img{max-width:92vw;max-height:86vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 80px rgba(0,0,0,.6)}
.gl-lb-frame{width:min(92vw,1120px);aspect-ratio:16/9;max-height:86vh}
.gl-lb-frame iframe{width:100%;height:100%;border:0;border-radius:8px}
.gl-lb-btn{position:fixed;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#fff;cursor:pointer;
  width:52px;height:52px;border-radius:50%;font-size:26px;line-height:1;display:grid;place-items:center;transition:background .2s,transform .15s}
.gl-lb-btn:hover{background:#E8A33D;color:#0b0d11;border-color:#E8A33D}
.gl-lb-close{top:22px;right:22px;font-size:30px}
.gl-lb-prev{left:18px;top:50%;transform:translateY(-50%)}
.gl-lb-next{right:18px;top:50%;transform:translateY(-50%)}
.gl-lb-prev:hover,.gl-lb-next:hover{transform:translateY(-50%) scale(1.07)}
.gl-lb-count{position:fixed;bottom:22px;left:0;right:0;text-align:center;color:#909AA8;font-family:"Space Mono",ui-monospace,monospace;font-size:12px;letter-spacing:.1em}
.gl-lb[data-single="1"] .gl-lb-prev,.gl-lb[data-single="1"] .gl-lb-next,.gl-lb[data-single="1"] .gl-lb-count{display:none}
@media(max-width:640px){.gl-lb-prev{left:8px}.gl-lb-next{right:8px}.gl-lb-btn{width:44px;height:44px}}

.gl-sectionlabel{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);padding:14px 0;border-top:1px solid var(--line)}
.gl-videoblock{position:relative;border-radius:16px;overflow:hidden;height:min(56vh,480px);border:1px solid var(--line);margin-bottom:70px}
.gl-videoblock iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

.gl-nextrow{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px 0 80px;border-top:1px solid var(--line);flex-wrap:wrap}
.gl-nextrow .gl-btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;padding:11px 18px;border-radius:10px;background:var(--amber);color:#0b0d11;transition:transform .15s,filter .2s}
.gl-nextrow .gl-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
.gl-nextrow .gl-btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}

@media(max-width:760px){
  .gl-pjbody{grid-template-columns:1fr;gap:26px}
  .gl-credits{position:static;border-left:0;border-top:1px solid var(--line);padding:20px 0 0}
}
@media(prefers-reduced-motion:reduce){
  .gl-portfolio *{transition:none!important}
}
