/* Estilos de los módulos del blog, copiados de los shortcodes carrusel_blog y blog_filtrado
   del tema Brelses (functions.php). */
            .carrusel-blog { position: relative; }
            .carrusel-blog .swiper-slide {
                background-size: cover;
                background-position: center;
                border-radius: 25px;
                min-height: 300px;
                display: flex;
                align-items: flex-end;
                padding: 20px;
                position: relative;
            }
            .carrusel-content {
                font-family:'Gantari';
                position: relative;
                color: #fff;
                max-width: 100%;
            }
            .carrusel-content h3 {
                margin: 0 0 5px;
                font-size: 22px;
                color:#fff;
                font-weight:800;
            }
            .carrusel-content p {
                margin: 0 0 10px;
                font-size: 0.9em;
                line-height: 1.2em;
                width: 55%;
            }
            
            @media screen and (min-width:1000px){
                .carrusel-blog{
                    position:relative;
                    overflow:hidden;
                    padding-top:80px;
                }
                .carrusel-blog:after{
                    content:"";
                    position:absolute;
                    top:0px;
                    right:0px;
                    width:100%;
                    height:100%;
                    background-image:linear-gradient(90deg, transparent 60%, white 100%);
                    z-index:10;
                    pointer-events:none;
                }
                .carrusel-blog .servicios-nav{
                    top:0px;
                }
            }
            
            body{
                overflow-x:hidden;
            }
            @media screen and (max-width:1000px){
            .carrusel-blog {
                display:flex;
                flex-direction:column-reverse;
                margin-top:40px;
            }
            .carrusel-blog .servicios-nav{
                top:-20px;
            }
            }

            /* Mantiene tus estilos originales */
.btn-curva {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 8px 15px;
  background: #B91E22;
  color: #fff;
  text-decoration: none;
  border-radius: 20px 5px 20px 5px;
  font-weight: bold;
  border: 9px solid;
  border-right-width:3px;
    border-bottom-width:3px;
  left: 23px;
  top: 23px;
  position: relative;
  transition: all 0.3s ease;
}

/* === ICONOS === */
.btn-curva .btn-icon {
  position: relative;
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.btn-curva svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
  transition: all 0.3s ease;
}

/* Estado inicial */
.btn-curva .icon-hover {
  opacity: 0;
  position: absolute;
  inset: 0;
  transform: translateX(-6px);
  transition: all 0.3s ease;
}

/* Hover */

.btn-curva:hover .icon-default {
  opacity: 0;
  transform: translateX(6px);
}

.btn-curva:hover .icon-hover {
  opacity: 1;
  transform: translateX(0);
}


        /* General */
        #blog-filter-wrapper {
            display: flex;
            gap: 40px;
            align-items: flex-start;
            flex-wrap: wrap;
            font-family: 'Poppins', sans-serif;
        }

        #blog-categories {
            font-family:'Gantari';
            flex: 1;
            max-width: 250px;
            background: #fff;
            border: 1px solid #e5e5e5;
            border-radius: 10px;
            padding: 25px;
        }

        #blog-categories h3 {
            font-family:'Gantari';
            color: #B91E22;
            font-size: 20px;
            font-weight: 600;
            margin-bottom: 15px;
        }

        #blog-categories label {
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 15px;
            cursor: pointer;
            margin-bottom: 10px;
        }

        #blog-categories input {
            accent-color: #B91E22;
        }

        #blog-posts {
            flex: 3;
            display: flex;
            flex-direction: column;
            gap: 25px;
        }

        /* Blog Card */
        .blog-card {
            border: 1px solid #e5e5e5;
            border-radius: 10px;
            background: #fff;
            padding: 25px;
            transition: all .3s ease;
        }

        .blog-card:hover {
            background: #fafafa;
            transform: translateY(-3px);
        }

        .blog-card-header {
            display: flex;
            align-items: flex-start;
            gap: 20px;
        }

        .blog-thumb {
            width: 25%;
            flex-shrink: 0;
        }

        .blog-thumb img {
            width: 100%;
            height: auto;
            border-radius: 8px;
            object-fit: cover;
        }

        .blog-meta {
            width: 75%;
        }

        .meta-top {
            font-family:'Gantari';
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

       .blog-cat a {
            color: rgb(52,52,52);
            font-weight: 600;
            font-size: 20px;
        }

        .blog-date {
            color: #777;
            font-size: 13px;
        }

        .blog-title {
            font-family: 'Gantari';
            font-size: 28px;
            font-weight: 800;
            margin-top: 15px;
            color: #b91e22;
        }

        .blog-excerpt {
            font-family:'Gantari';
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 20px;
            margin-top: 15px;
        }

        .blog-excerpt p {
            flex: 1;
            font-size: 18px;
            color: #444;
            margin: 0;
        }

        /* Botones */

        .ver-mas-wrapper {
            text-align: center;
            margin-top: 40px;
        }

        /* Responsivo */
        @media(max-width: 900px) {
            #blog-filter-wrapper {
                flex-direction: column;
            }

            .blog-card-header {
                flex-direction: column;
            }

            .blog-thumb {
                width: 100%;
            }

            .blog-meta {
                width: 100%;
            }

            .blog-excerpt {
                flex-direction: column;
                align-items: flex-start;
            }
        }

/* Añadidos de la versión HTML */
.ver-mas-wrapper[hidden]{display:none}
.blog-vacio{font-family:'Gantari';font-size:18px;color:#444}
#blog-posts.cargando{opacity:.5;transition:opacity .2s}

/* Formulario de contacto (reemplazo de Forminator) */
.brelses-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.brelses-aviso{display:block!important;padding:16px 20px;border-radius:10px;margin-bottom:20px;font-family:'Gantari';font-size:17px;line-height:1.4}
.brelses-aviso--ok{background:#e9f7ef;color:#1d6b3c;border:1px solid #b9e3c8}
.brelses-aviso--error{background:#fdecec;color:#9b1c1f;border:1px solid #f3c2c3}
/* "Tipo de servicio requerido": desplegable con varias opciones (antes select2 de Forminator) */
.brelses-multi{position:relative}
.brelses-multi summary{list-style:none;cursor:pointer;background:#fff;color:#000;font-family:'Gantari',sans-serif;font-weight:400;font-size:16px;line-height:22px;padding:9px 40px 9px 20px;min-height:42px;border:0;border-radius:0;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brelses-multi summary::-webkit-details-marker{display:none}
.brelses-multi summary::after{content:"";position:absolute;right:16px;top:50%;width:8px;height:8px;border:solid #B91E22;border-width:0 2px 2px 0;transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.brelses-multi[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.brelses-multi__lista{position:absolute;left:0;right:0;top:100%;z-index:20;background:#fff;box-shadow:0 10px 24px rgba(0,0,0,.25);padding:8px 0}
.brelses-multi__lista label{display:flex!important;align-items:center;gap:10px;padding:8px 20px;color:#222!important;font-family:'Gantari',sans-serif;font-size:16px;cursor:pointer;margin:0!important}
.brelses-multi__lista label:hover{background:#f6eded}
.brelses-multi__lista input{width:16px;height:16px;accent-color:#B91E22;margin:0}

/* Página 404 */
.brelses-404{padding:220px 20px 120px;text-align:center;font-family:'Gantari'}
.brelses-404__caja{max-width:640px;margin:0 auto}
.brelses-404__codigo{font-size:110px;font-weight:900;color:#B91E22;line-height:1;margin:0}
.brelses-404 h1{font-family:'Gantari';font-size:38px;font-weight:800;color:#1d1d1b;margin:10px 0 14px}
.brelses-404 p{font-size:19px;color:#444;margin-bottom:30px}

/* fitvids (antes lo inyectaba jquery.fitvids.js) */
.fluid-width-video-wrapper{width:100%;position:relative;padding:0}
.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed{position:absolute;top:0;left:0;width:100%;height:100%}

/* Header: teléfonos legibles (los números ya no se parten en 3 renglones) */
.header-info a{white-space:nowrap;display:inline-flex;align-items:center;gap:12px}
.header-info img{flex:0 0 auto}
@media (max-width:767px){
  .et_pb_column_2_tb_header{flex-direction:column!important;align-items:stretch!important;gap:14px!important}
  .et_pb_text_0_tb_header{width:100%!important;flex:0 0 auto!important;padding:14px 18px!important}
  .et_pb_text_0_tb_header .header-info{flex-direction:row;flex-wrap:wrap;justify-content:space-around;align-items:center;gap:6px 18px}
  .et_pb_text_0_tb_header .header-info div{margin:4px 0}
  .et_pb_text_0_tb_header,.et_pb_text_0_tb_header a{font-size:17px!important}
  .header-info img{width:22px;height:auto}
  .et_pb_button_0_tb_header_wrapper{text-align:center!important}
  .et_pb_button_0_tb_header_wrapper .et_pb_button_0_tb_header{display:block;width:100%;white-space:nowrap;text-align:center;padding:12px 20px!important;font-size:16px!important}
}
