/*
Theme Name: 99 Fraudes — Web oficial
Author: Rubén Sánchez
Version: 1.0.110
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: fraudes99
*/
:root{--bg:#0b0b0d;--cream:#f0ece5;--copper:#E22F18;--yellow:#E22F18}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:#fff;font-family:"Nunito",Arial,sans-serif;line-height:1.55}a{color:inherit}img{max-width:100%;height:auto}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}.bar{background:var(--copper);text-align:center;padding:9px;font-weight:700}.nav{position:sticky;top:0;z-index:10;background:var(--cream);color:#111}.nav .wrap{min-height:70px;display:flex;justify-content:space-between;align-items:center}.nav a{text-decoration:none;font-weight:800;margin-left:18px}.brand{font-size:1.6rem}.section{padding:85px 0}.hero{display:grid;grid-template-columns:1fr .8fr;gap:65px;align-items:center}.cover{max-height:680px;display:block;margin:auto}.big{font-family:"Anton","Arial Narrow",sans-serif;text-transform:uppercase;font-size:clamp(3.5rem,8vw,7.5rem);line-height:1;margin:15px 0 28px}.copper{color:var(--copper)}.eyebrow{letter-spacing:.15em;text-transform:uppercase;color:#E22F18;font-size:.8rem;font-weight:bold}.lead{font-size:1.25rem;max-width:740px}.btn{display:inline-block;background:var(--yellow);color:#fff;padding:14px 21px;text-decoration:none;font-weight:800;margin:12px 10px 0 0}.light{background:var(--cream);color:#111}.quotes,.buygrid,.cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.quote{border:1px solid #666;padding:28px}.quote blockquote{font-size:1.4rem;line-height:1.4;margin:0 0 25px}.person{display:flex;align-items:center;gap:15px;font-weight:800}.person img{width:72px;height:72px;object-fit:cover;border-radius:50%;filter:grayscale(1)}.buy{background:#111626}.card{padding:23px;border:1px solid #777;min-height:210px;display:flex;flex-direction:column;text-decoration:none}.card strong{margin-top:auto}.yellow{background:var(--yellow);color:#fff;border-color:var(--yellow)}.row{border-top:1px solid #555;padding:20px 0;display:flex;justify-content:space-between;gap:12px}.row small{display:block;color:#bbb}.row b{font-size:1.6rem}footer{padding:25px 0;color:#aaa;font-size:.9rem}@media(max-width:800px){.hero,.quotes,.buygrid{grid-template-columns:1fr}.hero{gap:30px}.section{padding:50px 0}}@media(max-width:550px){.cards{grid-template-columns:1fr}.nav a:not(.brand):not(.cta){display:none}}

/* Identidad gráfica de la cubierta de 99 fraudes: rojo FACUA, Impact y Nunito. */
h1,h2,h3,.brand,.row b{font-family:"Anton","Arial Narrow",sans-serif;letter-spacing:.012em}
.btn,.card strong,.nav a{font-family:"Nunito",Arial,sans-serif;font-weight:900}
.btn:hover,.yellow:hover{background:#B82313;color:#fff}
.btn:focus-visible,a:focus-visible{outline:3px solid #fff;outline-offset:3px}
.yellow{color:#fff}

/* Portada flotante: separación visual respecto al fondo negro. */
.hero .cover{position:relative;z-index:1;filter:drop-shadow(0 25px 35px rgba(0,0,0,.85)) drop-shadow(0 0 28px rgba(238,49,42,.42));transform:perspective(1000px) rotateY(-3deg) translateY(0);transition:transform .4s ease,filter .4s ease;will-change:transform}
.hero{isolation:isolate}
.hero .cover:hover{transform:perspective(1000px) rotateY(0deg) translateY(-9px) scale(1.015);filter:drop-shadow(0 32px 42px rgba(0,0,0,.9)) drop-shadow(0 0 38px rgba(238,49,42,.55))}
@media(max-width:800px){.hero .cover{transform:none;filter:drop-shadow(0 20px 28px rgba(0,0,0,.8)) drop-shadow(0 0 24px rgba(238,49,42,.4))}.hero .cover:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.hero .cover{transition:none;transform:none}.hero .cover:hover{transform:none}}

/* Pie editorial y legal, inspirado en la página del libro Bulos. */
.f99-legal{background:#eeebe3;color:#151824;padding:82px 0 56px}
.f99-legal-grid{display:grid;grid-template-columns:270px minmax(0,1fr);gap:55px;align-items:start}
.f99-legal-kicker{color:#E22F18;letter-spacing:.14em;font-size:.75rem;font-weight:900;margin-bottom:17px}
.f99-legal h2{font-family:"Anton","Arial Narrow",sans-serif;font-size:clamp(2.5rem,4vw,4rem);line-height:1.02;margin:0;font-weight:700}
.f99-legal-copy{color:#555c68;font-size:.92rem;line-height:1.8}
.f99-legal-copy p{margin:0 0 17px}
.f99-legal-copy strong{color:#151824}
.f99-legal-copy a{text-underline-offset:3px}
.f99-legal-bottom{border-top:1px solid #c8c7c2;margin-top:25px;padding-top:18px;display:flex;flex-wrap:wrap;gap:12px 26px;font-size:.75rem;color:#222}
.f99-legal-bottom a{white-space:nowrap}
@media(max-width:800px){.f99-legal{padding:52px 0 40px}.f99-legal-grid{grid-template-columns:1fr;gap:28px}}

/* Card promocional basada en el cartel oficial de lanzamiento. */
.promo-poster{background:#171719}
.promo-poster-layout{display:grid;grid-template-columns:minmax(250px,.85fr) 1fr;gap:clamp(24px,5vw,75px);align-items:center}
.promo-poster-image{border:1px solid #383838;box-shadow:0 25px 65px rgba(0,0,0,.48);overflow:hidden}
.promo-poster-image img{display:block;width:100%;height:auto}
.promo-poster-copy{padding:24px 0}
.promo-poster-copy .lead{margin-bottom:24px}
@media(max-width:800px){.promo-poster-layout{grid-template-columns:1fr}.promo-poster-image{max-width:530px;margin:auto}}

/* Las tarjetas de compra requieren legibilidad, no tipografía de cartel. */
.purchase-options h3,.purchase-option h3,.cards .card h3,.buy .card h3{
  font-family:"Nunito",Arial,sans-serif;
  font-weight:900;
  font-size:clamp(1.05rem,1.35vw,1.3rem);
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
  overflow-wrap:normal;
}
.buy .card{min-width:0}
.buy .card p{line-height:1.55}

/* Pie legal editorial, como Bulos: columna de título y texto a la derecha */
.f99-legal{background:#eeebe3;color:#151824;padding:78px 0 56px}
.f99-legal-grid{display:grid;grid-template-columns:270px minmax(0,1fr);gap:55px;align-items:start}
.f99-legal-kicker{color:#E22F18;letter-spacing:.14em;font-size:.75rem;font-weight:900;margin-bottom:17px}
.f99-legal h2{font-family:"Anton","Arial Narrow",sans-serif;font-size:clamp(2.5rem,4vw,4rem);line-height:1.02;margin:0}
.f99-legal-copy{color:#555c68;font-size:.92rem;line-height:1.8}
.f99-legal-copy p{margin:0 0 17px}.f99-legal-copy strong{color:#151824}
.f99-legal-copy a{text-underline-offset:3px}
.f99-legal-bottom{border-top:1px solid #c8c7c2;margin-top:25px;padding-top:18px;display:flex;flex-wrap:wrap;gap:12px 26px;font-size:.75rem;color:#222}
@media(max-width:800px){.f99-legal{padding:52px 0 40px}.f99-legal-grid{grid-template-columns:1fr;gap:28px}}

/* Tarjeta de presentación Madrid */
.madrid-event-card{display:grid;grid-template-columns:minmax(260px,.87fr) minmax(0,1.13fr);overflow:hidden;border:1px solid #B82313;border-radius:15px;background:#111317;box-shadow:0 18px 75px rgba(0,0,0,.4),0 0 40px rgba(238,49,42,.11)}
.madrid-event-art{min-width:0;background:#070708}
.madrid-event-art img{display:block;width:100%;height:100%;object-fit:cover}
.madrid-event-info{padding:clamp(24px,4vw,54px);display:flex;flex-direction:column;justify-content:center}
.madrid-event-info h2{font-family:"Anton","Arial Narrow",sans-serif;font-size:clamp(2.3rem,4.3vw,4.5rem);line-height:1.08;text-transform:uppercase;margin:16px 0 20px;letter-spacing:.005em}
.madrid-event-info h2 span{color:#E22F18}
.madrid-event-info>p{font-size:1.1rem;line-height:1.6;color:#e1e1e1;margin:0 0 20px}
.madrid-event-detail{padding:14px 0;border-bottom:1px solid #42454a}
.madrid-event-detail strong,.madrid-event-detail span{display:block}
.madrid-event-detail strong{font-weight:900;font-family:"Nunito",Arial,sans-serif}
.madrid-event-detail span{color:#c2c6ce;font-size:.92rem}
.madrid-event-button{align-self:flex-start;margin-top:28px}
@media(max-width:800px){.madrid-event-card{grid-template-columns:1fr}.madrid-event-art img{height:auto;max-height:670px;object-fit:contain}.madrid-event-info{padding:26px}}

/* Corrección de la tarjeta del evento: sin recortes laterales ni desbordamientos. */
.madrid-event-card{grid-template-columns:minmax(0, .92fr) minmax(0, 1.08fr);width:100%;max-width:100%;overflow:hidden}
.madrid-event-art{min-width:0;display:flex;align-items:center;justify-content:center}
.madrid-event-art img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center}
.madrid-event-info{min-width:0;overflow-wrap:break-word}
.madrid-event-info h2{font-size:clamp(2rem,3.4vw,3.5rem);overflow-wrap:normal;word-break:normal;hyphens:auto}
.madrid-event-info .madrid-event-detail{min-width:0}
@media(max-width:900px){.madrid-event-card{grid-template-columns:1fr}.madrid-event-art img{width:100%;height:auto;max-height:none;object-fit:contain}.madrid-event-info h2{font-size:clamp(2rem,7vw,3.5rem)}}

/* Evita cortes de palabras con la fuente condensada Impact. */
.madrid-event-info h2{font-size:clamp(2rem,3.1vw,3.35rem);hyphens:none;word-break:normal;overflow-wrap:normal;line-height:1.13}
.madrid-event-info{min-width:0}
@media(max-width:900px){.madrid-event-info h2{font-size:clamp(2rem,6vw,3.1rem)}}

/* Portada sin marco: separación mediante el fondo de la sección, no un recuadro. */
.hero .cover-stage{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;isolation:auto}
.hero .cover-stage::before{content:none!important;display:none!important}
.hero .cover-stage .cover{display:block;width:auto;max-width:100%;max-height:680px;height:auto;border:0;outline:0;border-radius:0;box-shadow:0 18px 30px rgba(0,0,0,.28);transform:none}
/* El gris antracita detrás de toda la portada revela los bordes negros. */
.hero .cover-stage{background:#303034}
@media(max-width:800px){.hero .cover-stage{width:min(100%,520px);margin:auto}.hero .cover-stage .cover{max-height:600px}}
@media(prefers-reduced-motion:reduce){.hero .cover-stage .cover{transition:none;transform:none}}

/* v1.0.17: identidad cromática integral; sin marco ni halos en la portada. */
.hero-section{background:#E22F18;color:#fff;position:relative;overflow:hidden}
.hero-section .hero{grid-template-columns:minmax(0,1fr) minmax(0,.82fr);gap:clamp(28px,5vw,76px)}
.hero-section .eyebrow{color:#160d0d;font-weight:900}
.hero-section .big{color:#fff}
.hero-section .big .copper{color:#0b0b0d}
.hero-section .lead,.hero-section p{color:#fff}
.hero-section .btn{background:#111;color:#fff;border:1px solid #111}
.hero-section .btn:hover{background:#fff;color:#111}
.hero-section .cover-stage,.hero .cover-stage{background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;isolation:auto!important}
.hero-section .cover-stage::before,.hero-section .cover-stage::after{content:none!important;display:none!important}
.hero-section .cover-stage .cover,.hero .cover-stage .cover{max-width:100%;max-height:680px;width:auto;height:auto;display:block;transform:none!important;filter:none!important;border:0!important;outline:0!important;border-radius:0!important;box-shadow:0 22px 40px rgba(0,0,0,.25)!important}
/* Equilibrio del rojo: editorial crema, opiniones oscuras, evento negro y pedidos azul grafito. */
#libro{background:#f0ece5;color:#111}
#libro .eyebrow{color:#E22F18}
#opiniones{background:#171719;color:#fff}
#opiniones .eyebrow{color:#E22F18}
.promo-poster{background:#0e0e10}
.buy{background:#151b28}
.f99-legal{background:#eeebe3}
@media(max-width:800px){.hero-section .hero{grid-template-columns:1fr}.hero-section .cover-stage{width:min(100%,500px);margin:auto}.hero-section .cover-stage .cover{max-height:590px}}

/* Presentaciones con navegación horizontal */
.event-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.event-arrow{background:#E22F18;color:white;border:0;border-radius:50%;width:48px;height:48px;font-size:1.6rem;cursor:pointer;margin-left:8px}
.event-arrow:hover,.event-arrow:focus-visible{background:#E22F18}
.event-slide[hidden],.share-float-menu[hidden]{display:none!important}
.event-carousel-dots{display:flex;justify-content:center;gap:10px;margin-top:20px}
.event-dot{border:1px solid #777;background:transparent;color:white;border-radius:30px;padding:9px 24px;font:800 .95rem Nunito,Arial,sans-serif;cursor:pointer}
.event-dot.is-current{background:#E22F18;border-color:#E22F18}
.share-section{background:#101114}.share-card{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:35px;align-items:center;padding:clamp(24px,5vw,55px);border:1px solid #444;border-radius:16px;background:#19191b}
.share-card>img{width:100%;max-height:340px;object-fit:contain}.share-card .big{font-size:clamp(3rem,6vw,5.4rem)}
.share-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.share-actions a,.share-actions button{font:800 .92rem Nunito,Arial,sans-serif;color:#fff;border:1px solid #777;background:#29292c;border-radius:8px;padding:12px 16px;text-decoration:none;cursor:pointer}
.share-actions a:hover,.share-actions button:hover{background:#E22F18;border-color:#E22F18}
.share-float{position:fixed;right:20px;bottom:20px;z-index:100;display:flex;align-items:flex-end;flex-direction:column;gap:10px}
.share-float-toggle{border:0;background:#E22F18;color:#fff;border-radius:40px;padding:14px 20px;font:900 .95rem Nunito,Arial,sans-serif;cursor:pointer;box-shadow:0 8px 30px #0009}
.share-float-menu{background:#fff;color:#111;display:flex;flex-direction:column;border-radius:14px;padding:9px;box-shadow:0 10px 35px #0008;min-width:190px}
.share-float-menu a,.share-float-menu button{color:#111;background:transparent;border:0;text-align:left;padding:12px;text-decoration:none;font:700 .9rem Nunito,Arial,sans-serif;cursor:pointer}
.share-float-menu a:hover,.share-float-menu button:hover{background:#eee}
@media(max-width:680px){.share-card{grid-template-columns:1fr}.share-card>img{max-height:220px}.share-float{right:12px;bottom:12px}.share-float-toggle span{display:none}}

/* Tres testimonios, sin cortar ni comprimir el texto. */
.quotes{grid-template-columns:repeat(3,minmax(0,1fr))}
.quote{min-width:0}.quote blockquote{font-size:clamp(1rem,1.35vw,1.3rem)}
@media(max-width:980px){.quotes{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.quotes{grid-template-columns:1fr}}

.share-card{border:2px solid #E22F18;box-shadow:0 16px 50px rgba(0,0,0,.35)}

/* Flechas visibles y centradas verticalmente sobre el carrusel */
.event-carousel{position:relative}
.event-carousel-controls{position:absolute;inset:0;z-index:5;pointer-events:none;margin:0}
.event-carousel-controls>.eyebrow{position:absolute;top:-35px;left:0}
.event-carousel-controls>div{position:absolute;inset:0;pointer-events:none}
.event-carousel .event-arrow{position:absolute;top:50%;transform:translateY(-50%);margin:0;width:56px;height:56px;border:2px solid #fff;background:#E22F18;color:#fff;box-shadow:0 5px 22px rgba(0,0,0,.65);pointer-events:auto;cursor:pointer}
.event-carousel #event-prev{left:-22px}
.event-carousel #event-next{right:-22px}
.event-carousel .event-arrow:hover,.event-carousel .event-arrow:focus-visible{background:#E22F18;outline:3px solid #fff;outline-offset:2px}
.promo-poster{padding-top:85px}
@media(max-width:700px){.event-carousel .event-arrow{width:46px;height:46px}.event-carousel #event-prev{left:4px}.event-carousel #event-next{right:4px}}
\n/* Ambas presentaciones comparten altura; el espacio libre queda al pie. */\n.event-slide{box-sizing:border-box}\n
/* La imagen de compartir es horizontal: siempre completa, sin recortes. */
.share-card{grid-template-columns:1fr;gap:22px}
.share-card .share-promo-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:10px}

/* v1.0.26 — Legibilidad y navegación en pantallas pequeñas */
@media (max-width: 700px) {
  /* El carrusel no debe superponer flechas sobre titulares ni sobre carteles. */
  .event-carousel{display:flex;flex-direction:column;gap:0}
  .event-carousel-slides{order:1;min-width:0}
  .event-carousel-controls{position:static!important;inset:auto!important;order:2;display:flex!important;align-items:center;justify-content:center!important;gap:14px;margin:16px 0 0!important;pointer-events:auto!important}
  .event-carousel-controls>.eyebrow{display:none!important}
  .event-carousel-controls>div{position:static!important;inset:auto!important;display:flex;justify-content:center;gap:18px;pointer-events:auto!important}
  .event-carousel #event-prev,.event-carousel #event-next{position:static!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important;width:50px;height:50px;margin:0!important;box-shadow:0 4px 14px rgba(0,0,0,.35)}
  .event-carousel-dots{order:3;margin-top:14px}
  .madrid-event-info{padding:26px 24px!important}
  .madrid-event-info h2{font-family:'Anton',sans-serif!important;font-size:clamp(1.65rem,6.2vw,2.15rem)!important;font-weight:900;line-height:1.16!important;letter-spacing:-.025em;hyphens:none;overflow-wrap:normal}
  .madrid-event-info .eyebrow{font-family:'Nunito',Arial,sans-serif;font-size:.72rem;letter-spacing:.1em}
  .hero-section .big{font-family:'Anton',sans-serif!important;font-size:clamp(3.3rem,14vw,5.5rem)!important;font-weight:900;line-height:1.02!important;letter-spacing:-.045em}
  .share-card .big,#libro .big,#opiniones .big,.buy .big{font-family:'Anton',sans-serif!important;font-weight:900;font-size:clamp(2.3rem,10vw,3.7rem)!important;line-height:1.07!important;letter-spacing:-.035em}
  .hero-section .lead{font-size:clamp(1.05rem,4.2vw,1.25rem);line-height:1.5}
  .hero-section .eyebrow{letter-spacing:.09em;font-size:.73rem;line-height:1.5}
  .nav .brand{font-family:'Nunito',Arial,sans-serif;font-weight:900;font-size:clamp(1.15rem,5vw,1.5rem)}
  .bar{font-size:.8rem;line-height:1.4;padding:8px 15px}
  .event-carousel .madrid-event-card{border-radius:12px}
}
/* 1.0.27: etiqueta visible y legible del botón flotante también en móvil. */
@media(max-width:680px){
 .share-float-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 17px;min-height:48px;border-radius:28px;font-size:.9rem;white-space:nowrap}
 .share-float-toggle span{display:inline!important}
 .share-float{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}
}

/* v1.0.28 — misma identidad tipográfica en móvil y escritorio. */
@media (max-width:700px){
 .event-carousel{display:flex;flex-direction:column}
 .event-carousel-dots{order:0!important;display:flex;justify-content:center;gap:12px;margin:0 0 16px!important}
 .event-carousel-slides{order:1!important}
 .event-carousel-controls{order:2!important;margin:16px 0 0!important}
 .event-dot{font-family:"Nunito",Arial,sans-serif;font-weight:900;font-size:1rem;min-height:44px;min-width:110px}
 .madrid-event-info h2{font-family:"Anton","Arial Narrow",sans-serif!important;font-size:clamp(1.9rem,8vw,3.15rem)!important;font-weight:700!important;line-height:1.12!important;letter-spacing:.005em!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
 .hero-section .big{font-family:"Anton","Arial Narrow",sans-serif!important;font-size:clamp(3.7rem,15vw,6rem)!important;font-weight:700!important;line-height:1!important;letter-spacing:0!important}
 .share-card .big,#libro .big,#opiniones .big,.buy .big{font-family:"Anton","Arial Narrow",sans-serif!important;font-size:clamp(2.5rem,11vw,4.5rem)!important;font-weight:700!important;line-height:1.05!important;letter-spacing:0!important}
 .f99-legal h2,.nav .brand{font-family:"Anton","Arial Narrow",sans-serif!important;letter-spacing:.012em!important}
 .event-carousel .event-arrow{font-family:Arial,sans-serif}
}

/* Icono estándar de compartir (tres nodos conectados). */
.share-float-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.share-float-toggle .share-icon{width:21px;height:21px;flex-shrink:0}

/* v1.0.32: titular principal más destacado en móvil, manteniendo Anton. */
@media (max-width:700px){
 .hero-section .big{font-size:clamp(4.15rem,16.5vw,7rem)!important;line-height:.98!important;letter-spacing:-.012em!important}
 .hero-section .lead{font-size:clamp(1.22rem,4.8vw,1.5rem);line-height:1.45}
}

/* El botón de copiar comparte el aspecto de los enlaces de correo. */
#f99-copy.btn{
  -webkit-appearance:none;
  appearance:none;
  border:0;
  border-radius:0;
  font-family:"Nunito",Arial,sans-serif;
  font-size:inherit;
  font-weight:900;
  line-height:1.55;
  cursor:pointer;
  vertical-align:baseline;
}
#f99-copy.btn:hover,#f99-copy.btn:focus-visible{
  background:#B82313;
  color:#fff;
}


/* v1.0.35: altura uniforme real para Madrid y Sevilla. */
.event-carousel-slides{position:relative}
.event-carousel .event-slide.event-measuring{
 display:grid!important;
 position:absolute!important;
 left:0;top:0;
 width:100%!important;
 min-height:0!important;
 visibility:hidden!important;
 pointer-events:none!important;
}
.event-carousel .event-slide .madrid-event-info{justify-content:flex-start}
.event-carousel .event-slide .madrid-event-button{margin-top:28px}
/* Flechas fuera de la caja, para no tapar nombres ni fotografías. */
@media(min-width:701px){
 .event-carousel #event-prev{left:-64px!important}
 .event-carousel #event-next{right:-64px!important}
}
@media(min-width:701px) and (max-width:1300px){
 .event-carousel #event-prev{left:-48px!important}
 .event-carousel #event-next{right:-48px!important}
 .event-carousel .event-arrow{width:48px;height:48px}
}

/* Tipografía unificada: Anton para titulares; Nunito para interfaz y lectura. */
:root{--font-display:"Anton","Arial Narrow",sans-serif;--font-text:"Nunito",Arial,sans-serif}
body,button,input,select,textarea,.btn,.nav a,.quote,.quote blockquote,.person,
.madrid-event-info p,.madrid-event-detail,.share-actions,.share-float,
.f99-legal-copy,.buygrid,.cards,.eyebrow,.lead{
 font-family:var(--font-text)!important;
}
.big,h1,h2,h3,.brand,.madrid-event-info h2,.share-card .big,
.f99-legal h2,.hero-section .big,.row b{
 font-family:var(--font-display)!important;
 font-weight:400!important;
}
@media(max-width:700px){
 .big,h1,h2,h3,.brand,.madrid-event-info h2,.share-card .big,
 .f99-legal h2,.hero-section .big{
  font-family:var(--font-display)!important;
  font-weight:400!important;
 }
 body,.lead,.eyebrow,.btn,.madrid-event-info p,.madrid-event-detail,
 .share-actions,.share-float{font-family:var(--font-text)!important}
}

/* v1.0.37 - carteles alineados arriba y controles sociales */
.event-carousel .madrid-event-card{align-items:stretch}
.event-carousel .madrid-event-art{align-self:stretch;display:block;padding:0;margin:0}
.event-carousel .madrid-event-art img{display:block;width:100%;height:100%;object-fit:contain;object-position:top center}
.event-carousel .madrid-event-info{display:flex;flex-direction:column;justify-content:flex-start}
.event-carousel .event-share{margin-top:24px;padding-top:16px;border-top:1px solid #404248}
.event-share>strong{display:block;margin-bottom:10px;font-family:"Nunito",Arial,sans-serif;font-weight:900}
.event-share-buttons{display:flex;flex-wrap:wrap;gap:10px}
.event-share-button{border:0;border-radius:7px;padding:12px 16px;color:#fff;font-family:"Nunito",Arial,sans-serif;font-weight:800;cursor:pointer}
.event-share-button.whatsapp{background:#078b49}
.event-share-button.telegram{background:#167bb4}
.event-share-button:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(max-width:800px){
 .event-carousel .madrid-event-art img{height:auto;max-height:none;object-fit:contain}
 .event-share-buttons{gap:8px}
}

/* Botones de compartir actos: mismo icono de tres nodos que el flotante. */
.event-share-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;line-height:1.3}
.event-share-button .share-icon{width:18px;height:18px;flex:none}
.event-share-button:hover{filter:brightness(1.12);color:#fff}

.event-share-button.native{background:#E22F18}
.event-share-status{font-family:"Nunito",Arial,sans-serif;font-size:.82rem;margin:8px 0 0;color:#e4e4e4}
.event-share-status:empty{display:none}

/* Compartir archivos: disponible exclusivamente en vista móvil. */
.event-share{display:none!important}
@media(max-width:700px){
 .event-share{display:block!important}
 .event-share-button.native{display:inline-flex}
}

/* Tarjeta horizontal social sin recortes */
.share-card{grid-template-columns:minmax(0,1fr) minmax(230px,42%)}
.share-card>img{width:100%;max-height:none;object-fit:contain;aspect-ratio:1200/630}
@media(max-width:680px){.share-card{grid-template-columns:1fr}.share-card>img{max-height:none}}
/* Únicamente colores del botón Pedir del menú, sin alterar iconos ni dimensiones. */
.nav a.cta,.nav a.cta:visited{background:#E22F18!important;color:#fff!important}
.nav a.cta:hover,.nav a.cta:focus-visible{background:#B82313!important;color:#fff!important}

/* Espacio interior del botón Pedir, sin modificar el resto del menú. */
.nav a.cta{padding:12px 19px!important;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}

/* v1.0.53: microinteracciones suaves, sin alterar estilos ni dimensiones. */
.nav a.cta,.btn,.event-share-button,.share-actions a,.share-actions button,
.share-float-toggle,.event-arrow,.event-share-buttons a,.card{
 transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease,color .22s ease;
}
@media(hover:hover) and (pointer:fine){
 .nav a.cta:hover,.btn:hover,.event-share-button:hover,
 .share-actions a:hover,.share-actions button:hover,
 .share-float-toggle:hover,.event-share-buttons a:hover{
  transform:translateY(-3px);
  box-shadow:0 9px 18px rgba(0,0,0,.2);
 }
 .card:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(0,0,0,.16)}
 /* Las flechas ya usan translateY(-50%) para su centrado. */
 .event-carousel .event-arrow:hover{transform:translateY(calc(-50% - 3px))}
}
@media(prefers-reduced-motion:reduce){
 .nav a.cta,.btn,.event-share-button,.share-actions a,.share-actions button,
 .share-float-toggle,.event-arrow,.event-share-buttons a,.card{
  transition:none!important;
 }
 .nav a.cta:hover,.btn:hover,.event-share-button:hover,.share-actions a:hover,
 .share-actions button:hover,.share-float-toggle:hover,.event-share-buttons a:hover,
 .card:hover{transform:none!important}
 .event-carousel .event-arrow:hover{transform:translateY(-50%)}
}

/* Evita que la conjunción quede sola en el titular legal de escritorio. */
.legal-keep-together{white-space:nowrap}
@media(min-width:801px){.f99-legal-grid{grid-template-columns:minmax(330px,360px) minmax(0,1fr);gap:45px}.f99-legal h2{font-size:clamp(2.5rem,3.5vw,3.7rem)}}

/* Interacción de los selectores Madrid y Sevilla, igual que los otros botones. */
.event-carousel-dots .event-dot{transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease;}
@media (hover:hover) and (pointer:fine){
 .event-carousel-dots .event-dot:hover{transform:translateY(-3px);box-shadow:0 9px 18px rgba(0,0,0,.20);}
}
@media (prefers-reduced-motion:reduce){
 .event-carousel-dots .event-dot{transition:none!important;}
 .event-carousel-dots .event-dot:hover{transform:none!important;}
}

/* Identidad tipográfica del encabezado, uniforme en todos los dispositivos. */
.nav .brand,.nav a.brand{font-family:"Anton","Arial Narrow",sans-serif!important;font-weight:400!important;letter-spacing:.012em!important}
@media(max-width:700px){.nav .brand,.nav a.brand{font-family:"Anton","Arial Narrow",sans-serif!important;font-weight:400!important}}

/* v1.0.64: botones de estilo píldora, como Compartir. Sin cambiar tamaños ni colores. */
:where(.btn,.nav a.cta,.share-actions a,.share-actions button,.event-dot,.event-share-button,.event-share-buttons a,.event-share-buttons button,.madrid-event-button,#f99-copy.btn,button[type="submit"],input[type="submit"]){border-radius:999px!important;}
/* Aplicar a los enlaces de acción que usan estilos de botón, no a tarjetas ni controles circulares. */

/* Botones de contorno: grosor visual uniforme inspirado en Donación de FACUA. */
.event-carousel-dots .event-dot,
.share-actions a,
.share-actions button,
.event-share-button{
 border-width:2px!important;
 border-style:solid!important;
}
.event-carousel-dots .event-dot{border-color:#fff!important}
.event-carousel-dots .event-dot.is-current{border-color:#E22F18!important}
.share-actions a,.share-actions button{border-color:#777!important}
.share-actions a:hover,.share-actions button:hover{border-color:#E22F18!important}

/* Contorno negro del botón Solicitar en preventa: 2 px al pasar el cursor. */
.hero-section a.btn[href="#pedidos"]:hover{outline:2px solid #111!important;outline-offset:0!important;}

/* La sección QUE SE SEPA muestra el libro original en 3D, no la tarjeta social. */
.share-card .share-promo-image{
 width:100%;height:auto;max-height:410px;object-fit:contain;
 filter:drop-shadow(12px 17px 15px rgba(0,0,0,.65));
}
@media(max-width:680px){.share-card .share-promo-image{max-height:330px}}

/* v1.0.68: contorno reforzado de los botones de compartir en redes. */
.share-card .share-actions a,
.share-card .share-actions button {
  border: 3px solid #777 !important;
  box-sizing: border-box;
}
.share-card .share-actions a:hover,
.share-card .share-actions button:hover,
.share-card .share-actions a:focus-visible,
.share-card .share-actions button:focus-visible {
  border-color: #E22F18 !important;
}

/* v1.0.70: mostrar el libro 3D grande sin deformación ni recortes. */
@media(min-width:681px){
 .share-card{grid-template-columns:minmax(0,1fr) minmax(310px,42%)!important;gap:24px!important}
 .share-card .share-promo-image{aspect-ratio:auto!important;width:auto!important;height:470px!important;max-height:none!important;max-width:100%!important;object-fit:contain!important;justify-self:center!important}
}
@media(max-width:680px){
 .share-card .share-promo-image{aspect-ratio:auto!important;width:auto!important;height:360px!important;max-height:none!important;max-width:100%!important;object-fit:contain!important;justify-self:center!important}
}

/* Gmail móvil: abrir redactor del cliente de correo configurado. */
.f99-gmail-mobile{display:none!important}
@media(max-width:767px){.f99-gmail-mobile{display:inline-flex!important}.f99-gmail-desktop{display:none!important}}

/* Iconos oficiales de redes en botones y menú flotante. */
.share-actions a,.share-actions button,#share-float-menu a,#share-float-menu button{display:inline-flex;align-items:center;gap:8px}
.social-icon{display:inline-block;width:17px;height:17px;flex:none;vertical-align:middle}

/* Igualación óptica de los logotipos sociales en las dos zonas de compartir. */
.share-actions .social-icon,.share-float-menu .social-icon,#share-float-menu .social-icon{width:17px!important;height:17px!important;min-width:17px;max-width:17px;display:inline-block;vertical-align:middle;flex:0 0 17px}
.share-actions .social-icon-x,.share-float-menu .social-icon-x,#share-float-menu .social-icon-x{width:14px!important;height:14px!important;min-width:14px;max-width:14px;flex-basis:14px}
.share-actions .social-icon-bluesky,.share-float-menu .social-icon-bluesky,#share-float-menu .social-icon-bluesky{width:18px!important;height:18px!important;min-width:18px;max-width:18px;flex-basis:18px}


/* v1.0.76 — En móvil, flechas a ambos lados de la parte alta del cartel.
   La posición vertical acompaña a los cuerpos de los presentadores. */
@media (max-width:700px){
  .event-carousel{position:relative!important;overflow:visible}
  .event-carousel-controls{
    position:absolute!important;
    inset:auto 0 auto 0!important;
    top:calc(40vw + 8px)!important;
    width:100%!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    z-index:8!important;
    pointer-events:none!important;
  }
  .event-carousel-controls>div{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:0!important;
    pointer-events:none!important;
  }
  .event-carousel #event-prev,
  .event-carousel #event-next{
    position:absolute!important;
    top:0!important;
    transform:translateY(-50%)!important;
    width:44px!important;
    height:44px!important;
    margin:0!important;
    border:2px solid white!important;
    box-shadow:0 3px 14px rgba(0,0,0,.7)!important;
    pointer-events:auto!important;
  }
  .event-carousel #event-prev{left:-10px!important;right:auto!important}
  .event-carousel #event-next{right:-10px!important;left:auto!important}
  .event-carousel #event-prev:hover,.event-carousel #event-next:hover{
    transform:translateY(-50%)!important;
  }
  .event-carousel-dots{order:0!important}
  .event-carousel-slides{order:1!important}
}

/* v1.0.77: centrar el glifo dentro de cada botón circular del carrusel. */
.event-carousel #event-prev,.event-carousel #event-next{
 display:flex!important;
 align-items:center!important;
 justify-content:center!important;
 padding:0!important;
 line-height:1!important;
 text-align:center!important;
 text-indent:0!important;
}

/* Flechas vectoriales centradas geométricamente, sin depender de la línea base del carácter. */
.event-carousel #event-prev,.event-carousel #event-next{
 display:grid!important;
 place-items:center!important;
 padding:0!important;
 font-size:0!important;
 line-height:0!important;
}
.event-carousel #event-prev svg,.event-carousel #event-next svg{
 display:block!important;
 width:24px!important;
 height:24px!important;
 margin:0!important;
 padding:0!important;
 flex:none!important;
 transform:none!important;
}

/* Iconos de compartir: Bluesky con menor tamaño visual y Telegram uniforme. */
.share-actions .social-icon-bluesky,
.share-float-menu .social-icon-bluesky,
#share-float-menu .social-icon-bluesky{
 width:14px!important;height:14px!important;
 min-width:14px!important;max-width:14px!important;
 flex-basis:14px!important;
}
.share-actions .social-icon-telegram,
.share-float-menu .social-icon-telegram,
#share-float-menu .social-icon-telegram{
 width:17px!important;height:17px!important;
 flex:none!important;
}

/* v1.0.81: fondo rojo editorial y tarjeta negra en Presentaciones. */
section#presentaciones.promo-poster{background:#E22F18!important;padding-top:100px;padding-bottom:clamp(60px,7vw,100px)}
#presentaciones .event-carousel-controls>.eyebrow{color:#fff!important;font-weight:900}
#presentaciones .madrid-event-card{background:#111317!important;color:#fff}
#presentaciones .event-carousel-dots .event-dot{border-color:#fff!important;color:#fff!important;background:#111317!important}
#presentaciones .event-carousel-dots .event-dot.is-current{background:#E22F18!important;border-color:#fff!important;color:#fff!important}
#presentaciones .event-carousel{margin-inline:clamp(8px,2vw,28px)}
@media(max-width:700px){section#presentaciones.promo-poster{padding-top:84px;padding-bottom:60px}#presentaciones .event-carousel{margin-inline:0}}

/* Fotografías de recomendaciones en sus colores originales. */
.person img{filter:none!important;-webkit-filter:none!important;}

/* Retratos de opiniones siempre en color */
.person img{filter:none!important;-webkit-filter:none!important;}

/* Reclamo de apertura */
.hero-reclamo{font-family:"Nunito",sans-serif;font-weight:800;color:#fff;font-size:clamp(1.15rem,1.5vw,1.45rem);line-height:1.45;max-width:38rem;margin:1.1rem 0 1.2rem;}

/* Opciones de pago en la sección de pedidos. */
.f99-payment-methods{margin-top:32px;padding:26px 30px;border:2px solid currentColor;border-radius:18px}
.f99-payment-methods h3{margin:0 0 14px;font-size:1.35rem}
.f99-payment-methods ul{margin:0;padding-left:1.25rem}
.f99-payment-methods li{margin:0 0 12px;line-height:1.6;overflow-wrap:anywhere}
.f99-payment-methods li:last-child{margin-bottom:0}
.f99-payment-methods a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.f99-payment-methods{padding:20px}}

.f99-payment-confirmation{margin:18px 0 0;line-height:1.6;font-weight:700}

.f99-shipping-cost,.f99-shipping-other{margin:12px 0;line-height:1.6}
.f99-shipping-other{margin-bottom:20px}

.f99-privacy-page h1{margin-bottom:20px}
.f99-privacy-frame{display:block;width:100%;min-height:750px;height:80vh;border:2px solid #333;border-radius:14px;background:#fff;margin:25px 0}
@media(max-width:700px){.f99-privacy-frame{height:75vh;min-height:600px}}

.f99-legal-page{min-height:65vh}
.f99-legal-content{max-width:920px;line-height:1.75;overflow-wrap:anywhere}
.f99-legal-content img{max-width:100%;height:auto}
.f99-legal-source{margin-top:30px;font-size:.85rem;opacity:.85}

/* Texto de privacidad incorporado a la página, sin iframe. */
.f99-privacy-content{max-width:920px;line-height:1.75}
.f99-privacy-content p{margin:0 0 1.2em}
.f99-privacy-source{margin-top:2rem;font-size:.9rem;opacity:.85}
