@charset "utf-8";

/*
Theme Name: Transportes Galen Theme
Version: 1.0
Author: Rogelio Estrella
*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

*,
*::before,
*::after {
    box-sizing: border-box;
}
html{
    scroll-behavior: smooth;
}
body {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    background-color: #ffffff;
    margin: 0;
    padding: 0;
    color: #061414;
}

img {
    max-width: 100%;
    height: auto;
    border: 0;
}

a {
    color: #1562ab;
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover {
    color: #FF6900;
}

.site-wrapper {
    display: grid;
    grid-template-rows: auto 1fr auto;
    min-height: 100vh;
}

.site-header {
    background-color: #ffffff;
}

.header-content,
.footer-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.site-title {
    margin: 0;
    font-size: 2rem;
    font-weight: 700;
}

.site-title a {
    color: inherit;
}

.primary-menu{
    display: inline-table;
    float: right;
    margin-right: 30px;
    margin-bottom: 0px;
}

.primary-menu ul{
    list-style: none;
    margin: 0;
    padding: 0;
    display: block;
}

.primary-menu li{
    position: relative;
    margin: 0px;
    display: inline-table;
}

.primary-menu a{
    display: block;
    font-weight: 700;
    color: #54555a;
    transition: all 0.2s ease;
    text-transform: uppercase;
    font-size: 15px;
    padding: 50px 15px 25px 15px;
}
.primary-menu .redestop a{
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 0px;
    font-size: 20px;
}
.primary-menu .cotizamenu{
    margin-right: 15px;
}
.primary-menu .cotizamenu a{
    background-color: #ff5f01;
    color: #ffffff;
}
.primary-menu .cotizamenu a:hover{
    background-color: #54555a;
    color: #ffffff;
}
.primary-menu .current-menu-item.cotizamenu > a{
    background-color: #ff3c01;
    color: #ffffff;
}

.primary-menu a:hover,
.primary-menu .current-menu-item > a,
.primary-menu .current-menu-ancestor > a,
.primary-menu ul li:hover a {
    color: #ff5f01;
}
.primary-menu ul ul {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
    background-color: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 1000;
}

.primary-menu li:hover > ul {
    opacity: 1;
    visibility: visible;
    box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.5);
}

.primary-menu ul ul li {
    width: 240px;
}

.primary-menu ul ul a {
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
    font-weight: 400;
    border-bottom: 1px solid #e15809;
    background-color: #ff5f01;
    color: #ffffff;
    text-transform: none;
}
.primary-menu ul li:hover ul li a{
    color: #ffffff;
}
.primary-menu ul ul li:last-child a{
    border-bottom: none;
}

.primary-menu ul ul a:hover {
    background-color: #54555a;
    color: #fff;
}

.footer-menu a {
    color: #ccc;              
}

.footer-menu a:hover {
    color: #fff;
}

.site-main {
    max-width: 1260px;
    margin: 0 auto;
    padding: 0px;
}
.site-main-home{
    max-width: 100%;
    margin: 0 auto;
    padding: 0px;
}

.content-wrapper {
    flex: 2;
}

.widget-area {
    flex: 1;
    min-width: 300px;
}

.posts-container {
    display: grid;
    gap: 2rem;
}

.post-thumbnail {
    width: 100%;
    border-radius: 8px;
}

.entry-title {
    margin: 0 0 0.5rem;
    font-weight: 700;
}

.entry-title a {
    color: inherit;
}

.entry-meta {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 1rem;
}

.entry-date,
.entry-author {
    margin-right: 1rem;
}

.read-more {
    display: inline-block;
    margin-top: 1rem;
    padding: 0.5rem 1rem;
    background-color: #1562ab;
    color: #fff;
    border-radius: 4px;
    transition: background-color 0.2s ease;
}

.read-more:hover {
    background-color: #91b128;
}

.site-footer {
    background-color: #171717;
    color: #ccc;
    padding: 2rem 0;
}

.footer-widgets {
    max-width: 1250px;
    margin: 0 auto;
    padding: 50px 20px;
    display: grid;
    grid-template-columns: 350px auto auto 220px;
    grid-column-gap: 80px;
    grid-row-gap: 20px;
}

.footer-widgets a{
    color: #ffffff;
}
.footer-widgets a:hover{
    color: #ff5f01;
}
.footer-widgets h3{
    color: #ffffff;
    font-size: 25px; 
    line-height: 110%;   
    font-weight: 800;
    margin-top: 0px;
}
#nav_menu-2 h3{
    margin-bottom: 53px;
}

.footer-info {
    text-align: center;
    margin-top: 1rem;
}

.copyright {
    margin: 0;
    font-size: 0.9rem;
}

.privacy-policy {
    margin: 0.5rem 0 0;
    font-size: 0.8rem;
}

.search-form {
    display: flex;
    gap: 0.5rem;
    max-width: 300px;
}

.search-field {
    flex: 1;
    padding: 0.5rem;
    border: 1px solid #ddd;
    border-radius: 4px;
}

.search-submit {
    padding: 0.5rem 1rem;
    background-color: #1562ab;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.search-submit:hover {
    background-color: #91b128;
}

.no-results {
    text-align: center;
    padding: 2rem;
}

.archive-pagination,
.search-pagination {
    margin-top: 2rem;
    text-align: center;
}

.page-links {
    margin: 1rem 0;
}

.edit-link {
    font-size: 0.8rem;
    color: #666;
}
.site-branding{
    display: inline-table;
    margin: 10px 0px 0px 20px;
}
.homeintro{
    margin: 60px auto;
    max-width: 1100px;
    box-sizing: border-box;
}
.homeintro h1{
    font-size: 25px;
    line-height: 115%;
    color: #ff5f01;
    font-weight: 800;
}
.homeintro p{
    line-height: 160%;
    font-size: 16px;
    color: #061414;
}
.bloquenaranja{
    color: #ffffff;
    background-color: #ff5f01;
    width: 100%;
    padding: 80px 0px 0px 0px;
    box-sizing: border-box;
}
.bloquenaranja.naranservice{
   padding: 1px 0px 0px 0px; 
}
.bloquenaranja h2{
    margin-bottom: 40px;
}
.servihome{
    max-width: 1100px;
    gap: 0px;
    margin: 0 auto;
}
.servihomeformu{
    max-width: 1100px;
    margin: 80px auto 0 auto;
}
.servihomeformu .wp-block-image img{
    margin: 0px;
    float: left;
}
.servihome h3{
    font-weight: 400;
    font-size: 18px;
}
.serviwhite{
    background-color: #ffffff;
}
.servihome .serviwhite h3{
    color: #50505b;
}
.servihome h3 a{
    color: #ffffff;
}
.servihome .serviwhite h3 a{
    color: #50505b;
}
.formufield{
    border: none;
    border-radius: 6px;
    padding: 12px 15px;
    box-sizing: border-box;
    width: 100%;
    font-size: 14px;
    box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.3);
}
.formu2cols{
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 10px;
    grid-row-gap: 10px;
}
.wrapformu{
    box-sizing: border-box;
    width: 100%;
    padding: 30px 45px;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.90);
    box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.3);
}
.wrapformu h3{
    color: #1f1d1b;
    font-weight: 800;
    font-size: 24px;
    margin: 5px 0px 10px 0px;
}
.wrapformu p{
    margin: 6px 0px;
}
.formusend{
    background-color: #171717;
    color: #ffffff;
    border: none;
    box-sizing: border-box;
    width: 100%;
    border-radius: 6px;
    padding: 15px 20px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 800;
    transition: all 0.1s;
}
.formusend:hover{
    background-color: #ff5f01;
    color: #ffffff;
}
.wpcf7-spinner{
    display: none;
}
.confiawrap{
    width: 100%;
    background-color: #ffffff;
    box-sizing: border-box;
    padding: 80px 40px 0px 40px;
}
.introconfian{
    max-width: 650px;
    display: block;
    margin: 0 auto;
}
.introconfian h3{
    font-size: 25px;
    color: #5e5e5e;
    margin-top: 0px;
}
.introconfian p{
    line-height: 160%;
    color: #061414;
    font-size: 16px;
}
.carouselhome{
    margin-bottom: 80px;
}
.iconosociales{
    margin-bottom: 70px !important;
}
.iconosociales li{
    position: relative;
}
.iconosociales li::after{
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    background-color: #fff;
    display: block;
    bottom: -10px;
    left: 0px;
}
.direpie{
    box-sizing: border-box;
    padding-left: 15px;
}
.direpie p span{
    display: inline-table;
    width: 20px;
    text-align: center;
}
#menu-menufooter-01, #menu-menufooter-02{
    list-style: none;
    margin: 0px;
    padding: 0px;
}
#menu-menufooter-01 li,
#menu-menufooter-02 li{
    margin: 10px 0px;
}
.taptap-by-bonfire .menu li.redestop{
    display: none;
}
.taptap-by-bonfire ul li a{
    text-transform: uppercase;
}
.taptap-widgets-wrapper{
    margin-top: 0px;
}
.taptap-main-inner-inner{
    padding-top: 40px;
    padding-bottom: 0px;
}
.slidemovil{
    display: none;
}
.texhomeintro{
    box-sizing: border-box;
    font-weight: 400;
}
.bloquenaranja2{
    background-color: #ea611b;
    color: #ffffff;
    text-align: center;
    display: block;
    float: left;
    width: 100%;
    padding-bottom: 40px;
}
.contewide{
    display: block;
    float: left;
    width: 100%;
    padding: 0px 50px 40px 50px;
    box-sizing: border-box;
}
.contewide2{
    display: block;
    float: left;
    width: 100%;
    padding: 0px 0px 40px 0px;
    box-sizing: border-box;
}
.bloquenaranja2 h2, .contewide h2, .contewide2 h2{
    margin-top: 45px;
    font-size: 35px;
    line-height: 110%;
}
.wp-lightbox-overlay .scrim {
  background-color: rgba(0, 0, 0, 0.9) !important;
  backdrop-filter: blur(4px) grayscale(100%);
}
.page-id-173 h2.wp-block-heading,
.page-id-359 h2.wp-block-heading,
.page-id-559 h2.wp-block-heading,
.page-id-605 h2.wp-block-heading{
    position: relative;
    text-shadow: 
    10px 0px 0px #fff, -10px 0px 0px #fff, 0px 10px 0px #fff, 0px -10px 0px #fff,
    7px 7px 0px #fff, -7px -7px 0px #fff, 7px -7px 0px #fff, -7px 7px 0px #fff,
    10px 5px 0px #fff, 10px -5px 0px #fff, -10px 5px 0px #fff, -10px -5px 0px #fff,
    5px 10px 0px #fff, -5px 10px 0px #fff, 5px -10px 0px #fff, -5px -10px 0px #fff;
}
.page-id-173 h2.wp-block-heading::after,
.page-id-359 h2.wp-block-heading::after,
.page-id-559 h2.wp-block-heading::after,
.page-id-605 h2.wp-block-heading::after {
  content: "";
  display: block;
  width: 100%;                  /* Ancho completo */
  height: 1px;                  /* Grosor de la línea */
  background-color: #dddddd;    /* Color gris claro (ajusta si quieres más claro/oscuro, ej. #e5e5e5) */
  position: absolute;
  bottom: 45%;
  left: 0px;
  z-index: -1;
}
.bloquenaranja h2.wp-block-heading, .bloquenaranja2 h2.wp-block-heading{
    text-shadow: none;
}
.bloquenaranja h2.wp-block-heading::after, .bloquenaranja2 h2.wp-block-heading::after{
    display: none;
}
.wrapmediotext, .wrapgridservicios{
    max-width: 1250px;
    width: 100%;
    margin: 40px auto 20px auto;
    line-height: 160%;
    box-sizing: border-box;
    padding: 0px 35px;
}
.gridservicios.is-layout-grid{
    gap: 0px !important;
    line-height: 160%;
}
.gridcoluni.wp-block-columns,
.gridcoluni.is-layout-grid,
.wrapmediotext.is-layout-grid{
    gap: 0px !important;
    margin-bottom: 0px !important;
}
.wp-block-gallery.galeriaunidades{
    gap: 0px !important;
}
.wrapmediotext h2{
    font-size: 30px;
}
.entry-header{
    width: 100%;
    text-align: center;
    margin: 0px;
    min-height: 400px;
    background-color: #1f1d1b;
    position: relative;
}
.entry-header h1{
    text-transform: uppercase;
    color: #ffffff;
    position: absolute;
    bottom: 0px;
    left: 0px;
    box-sizing: border-box;
    padding: 0px 40px;
    width: 100%;
    z-index: 10;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
    font-size: 40px;
}
.entry-header::before{
    content: "";
    width: 100%;
    min-height: 400px;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.25);
    z-index: 2;
    position: absolute;
    bottom: 0px;
    left: 0px;
}
.entry-header.has-featured-image{
    background-size: cover;
    background-position: center;
}
.page-id-173 .entry-header.has-featured-image{
   background-position: center bottom; 
}
.wp-block-gallery img{
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.06);
}
.servinfo h3{
    margin-top: 30px;
    font-weight: 500;
    font-size: 18px;
}
.servinfo ul, .unidadinfo ul{
    list-style: none;
    margin: 10px 0px 30px 0px;
    padding: 0px 0px 0px 0px;
}
.servinfo ul li, .unidadinfo ul li{
    padding: 8px 0px;
    border-bottom: solid 1px #666;
    font-size: 14px;
    line-height: 120%;
}
.gridservicios .wp-block-media-text__content,
.gridunidades .wp-block-media-text__content{
    box-sizing: border-box;
    padding-top: 30px;
    padding-bottom: 50px;
}
.gridservicios .wp-block-media-text__content .wp-block-media-text__content,
.gridunidades .wp-block-media-text__content .wp-block-media-text__content{
    padding-top: 0px;
    padding-bottom: 0px;
}
.bswhatsapp a {
    background-color: #25D366;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23ffffff' d='M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 15px center;
    background-size: auto 80%;
    border-radius: 25px;
    transition: all 0.3s ease;
    padding: 15px 35px 15px 65px;
    font-size: 18px;
    font-weight: 700;
    box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.66);
}

.bswhatsapp a:hover {
    background-color: #128C7E;
    color: #ffffff;
}

.bsformu a{
    background-color: #ff5f01;
    border-radius: 25px;
    transition: all 0.3s ease;
    padding: 15px 35px 15px 35px;
    font-size: 18px;
    font-weight: 700;
    box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.66);
}
.bsformu a:hover {
    background-color: #ff4000;
    color: #ffffff;
}
.unidadinfo{
    box-sizing: border-box;
    width: 100%;
    padding: 5px 30px 15px 30px;
    line-height: 160%;
    font-size: 14px;
}
.gridunidades{
    line-height: 160%;
}
.gridunidades h3{
    font-weight: 700;
    font-size: 26px;
}
.gridunidades h3 em{
    font-size: 60%;
    font-style: normal;
    font-weight: 400;
}
.gridunidades h4{
    font-weight: 700;
    font-size: 20px;
    margin-bottom: 5px;
    margin-top: 35px;
}
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{
    text-transform: uppercase;
    font-weight: 700;
    font-size: 18px;
}
.seguricontent{
    line-height: 160%;
}
/* Header personalizado solo para single posts - dos columnas */
.custom-single-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 30px;
    margin: 0;
    padding: 0px;
    width: 100%;
    box-sizing: border-box;
    background-color: #d9e1e9;
}

/* Cada lado ocupa el 50% en pantallas grandes */
.custom-header-image-wrapper,
.custom-header-title-wrapper {
    flex: 1 1 45%;
    max-width: 50%;
    min-width: 300px; /* Evita que se comprima demasiado */
}

/* Estilos de la imagen */
.custom-header-image-wrapper img.custom-featured-image {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}

/* Contenedor del título y fecha */
.custom-header-title-wrapper {
    display: flex;
    flex-direction: column;        /* Apila título y fecha verticalmente */
    justify-content: center;       /* Centrado vertical */
    padding: 20px;
    gap: 30px;                     /* Espacio entre título y fecha */
}

/* Estilos para la fecha */
.custom-post-date {
    font-size: 14px;
    color: #666;
    font-weight: 500;
    letter-spacing: 0.5px;
    text-transform: uppercase;     /* Opcional: mayúsculas para un look más elegante */
}

.custom-post-date time {
    text-decoration: none;
}

/* Opcional: hover sutil en la fecha */
.custom-post-date:hover {
    color: #333;
}

.custom-header-title-wrapper .custom-entry-title {
    margin: 0;
    font-size: 26px; /* Ajusta según tu diseño */
    line-height: 1.2;
    color: #222; /* Cambia al color que prefieras */
}

/* Si no hay imagen: el título ocupa todo el ancho */
.custom-single-header.no-featured-image .custom-header-title-wrapper {
    flex: 1 1 100%;
    max-width: 100%;
}

.archive-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 30px;
    margin: 40px 0;
    padding: 0;
    list-style: none;
}

.archive-card {
    position: relative;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.archive-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 25px rgba(0,0,0,0.15);
}

.card-link {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.card-image {
    width: 100%;
    height: 200px;
    overflow: hidden;
    background: #f0f0f0;
}

.card-image img.thumbnail-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.archive-card:hover .thumbnail-img {
    transform: scale(1.08);
}

.card-content {
    padding: 20px;
    position: relative;
    z-index: 2;
}

.card-title {
    margin: 0 0 10px;
    font-size: 20px;
    line-height: 1.3;
}

.card-title a {
    color: #222;
    text-decoration: none;
}

.card-title a:hover {
    color: #878787;
}

.card-date {
    display: block;
    font-size: 0.95rem;
    color: #666;
    margin-bottom: 15px;
}

.btn-ver-noticia {
    display: inline-block;
    background: #0066cc;
    color: white;
    padding: 10px 18px;
    border-radius: 6px;
    font-size: 0.95rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.3s ease;
}
.btn-ver-noticia:hover{
    background: #ff5f01;
    color: white;
}

/* Sin resultados */
.no-results {
    text-align: center;
    padding: 60px 20px;
    font-size: 1.2rem;
}

.archive-grid{
    max-width: 1500px;
    margin: auto;
    box-sizing: border-box;
    padding: 30px 40px;
}
.headernoticias{
    background-image: url(images/noticias-header.jpg);
}
.wp-block-buttons>.wp-block-button.ftboton{
    margin-top: -35px;
    margin-right: 10px;
    position: relative;
    z-index: 3;
}
.ftboton a{
    transition: all 0.2s !important;
}
.ftboton a:hover{
    color: #1e1e1e;
    background: #ffffff !important;
    box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.75);
}
.galequipos{
    gap: 0px;
}
.galequipos img{
    width: 100%;
    height: auto;
}

/* Responsive */
@media (max-width: 1300px) {
    .primary-menu{
        margin-right: 5px;
    }
    .primary-menu .cotizamenu{
        margin-right: 5px;
    }
    .primary-menu a{
        font-size: 13px;
        padding: 40px 5px 17px 5px;
    }
    .site-branding{
        margin-left: 5px;
    }
    .site-branding img{
        width: 200px;
        height: auto;
    }
    .bswhatsapp a, .bsformu a{
	    font-size: 13px;
    }
}
@media (max-width: 1200px) {
    .footer-widgets {
    grid-template-columns: 350px auto auto 220px;
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    }
    .texhomeintro{
    padding-right: 25px;
    }
    .colformu{
        box-sizing: border-box;
        padding-bottom: 25px;
        padding-right: 25px;
    }
}
@media (max-width: 1000px) {
    .footer-widgets h3{
    font-size: 20px;
    }
    #nav_menu-2 h3 {
    margin-bottom: 42px;
    }
}
@media (max-width: 930px) {
    .primary-menu{
        margin-right: 0px;
    }
    .primary-menu .cotizamenu a{
        margin-right: 0px;
    }
    .primary-menu .cotizamenu a{
        padding-left: 15px;
        padding-right: 15px;
    }
    .primary-menu li.redestop{
        display: none;
    }
    .direpie,
    #menu-menufooter-01 li, #menu-menufooter-02 li{
        font-size: 12px;
    }
    .footer-widgets h3{
        font-size: 15px;
    }
    #nav_menu-2 h3, #nav_menu-3 h3{
        margin-bottom: 15px;
    }
    .footer-widgets {
    grid-template-columns: 260px auto auto 100px;
    }
    .wp-block-social-links .wp-block-social-link.wp-social-link{
        margin-bottom: 20px;
    }
    .iconosociales{
        margin-bottom: 28px !important;
    }
    .wrapformu{
        padding: 25px 30px;
    }
    .formusend{
        font-size: 13px;
    }
}
@media (max-width: 819px) {
    .site-header{
        display: none;
    }
    .servihome{
        display: grid !important;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
    .custom-single-header{
        margin-top: 65px;
    }
}
@media (max-width: 781px) {
    .homeintro{
        margin: 0px;
        display: grid;
    }
    .homeintro img{
        float: left;
        width: 100%;
        height: auto;
        margin: 0px;
    }
    .texhomeintro{
        padding: 30px 35px 10px 35px;
        font-size: 15px;
        order: -1;
    }
    .texhomeintro h1{
        margin-top: 10px;
    }
    .servihome{
        grid-template-columns: 1fr 1fr;
        max-width: 600px;
        margin: auto;
    }
    .servihomeformu{
        display: grid !important;
        grid-template-columns: 1fr;
    }
    .colformu{
        order: -1;
        padding: 0px 30px 30px 30px;
    }
    .servihomeformu .wp-block-image img{
        display: block;
        margin: 0px auto -16px auto;
        max-width: 400px;
        width: 100%;
        height: auto;
        float: none;
    }
}
@media (max-width: 768px) {
    .header-content,
    .footer-content {
        flex-direction: column;
        gap: 1rem;
    }

    .primary-menu ul,
    .footer-menu ul {
        flex-direction: column;
        width: 100%;
    }

    .primary-menu ul ul {
        position: static;
        opacity: 1;
        visibility: visible;
        box-shadow: none;
        background-color: #f9f9f9;
    }

    .site-main {
        flex-direction: column;
        padding: 1rem 20px;
    }

    .widget-area {
        min-width: auto;
        order: -1;
    }

    .posts-container {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .search-form {
        flex-direction: column;
    }
    .custom-single-header {
        flex-direction: column;
        gap: 20px;
    }
    
    .custom-header-image-wrapper,
    .custom-header-title-wrapper {
        flex: 1 1 100%;
        max-width: 100%;
    }
    
    .custom-header-title-wrapper .custom-entry-title {
        font-size: 23px;
    }
    .custom-post-date {
        font-size: 1rem;
    }
    
    .custom-header-title-wrapper {
        gap: 12px;
    }
}

@media (max-width: 720px) {
    .footer-widgets {
    grid-template-columns: 1fr 1fr 1fr;
    }
    #block-2 {
    grid-column: span 3;
    }
    .direpie{
        padding-left: 0px;
    }
    .direpie, #menu-menufooter-01 li, #menu-menufooter-02 li {
    font-size: 14px;
    }
    .entry-header h1{
        font-size: 34px;
    }
}
@media (max-width: 600px) {
    .footer-widgets {
    grid-template-columns: 1fr 1fr;
    }
    #block-2, #block-4 {
    grid-column: span 2;
    }
    #block-2, #block-4,
    #nav_menu-2, #nav_menu-3 {
    text-align: center;
    }
    .slidemovil{
    display: block;
    }
    .slidepc{
        display: none;
    }
    .bswhatsapp, .bsformu{
        width: 100%;
        box-sizing: border-box;
    }
    .gridcoluni.is-layout-grid, .wp-block-gallery.galeriaunidades{
        display: grid;
        grid-template-columns: 1fr;
    }
    .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image){
        width: 100%;
    }
    .custom-entry-title{
        font-size: 20px !important;
    }
    .contewide{
        padding: 0px 0px 40px 0px;
    }
}

@media (max-width: 480px) {
    .site-title {
        font-size: 1.5rem;
    }

    .entry-title {
        font-size: 1.25rem;
    }

    .site-main {
        padding: 1rem 10px;
    }
    .servihome{
        grid-template-columns: 1fr;
        max-width: 310px;
        box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.5);
    }
    .colformu{
        padding: 0px 10px 30px 10px;
    }
    .archive-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .card-content {
        padding: 15px;
    }
}