@charset "utf-8";
/*
Theme Name: delmercat web theme
Theme URI: http://www.lamosquita.net/
Description: básico
Version: 3.0
Author: lamosquita
Author URI: http://www.lamosquita.net/

This CSS resource incorporates links to font software which is the valuable copyrighted
property of Monotype Imaging and/or its suppliers. You may not attempt to copy, install,
redistribute, convert, modify or reverse engineer this font software. Please contact Monotype
Imaging with any questions regarding Web Fonts:  http://www.fonts.com

font-family:"urw-din", sans-serif;
*/

/* CSS unificado: antes eran 3 archivos (style.css/style-tablet.css/style-movil.css)
   cargados con <link media="..."> distintos. Ahora es uno solo con @media:
   - sin @media (por defecto): desktop, >=1280px efectivos. Igual que antes,
     pensado para 1180px de ancho y centrado si la pantalla es más ancha.
   - @media 1024-1279px: tablet en landscape. Misma disposición multi-columna
     de siempre, pero con anchos en % en vez de px fijos sobre el lienzo
     de 924px, para que escale con el ancho real en vez de quedarse
     congelado en un punto.
   - @media <=1023px: móvil + tablet en portrait. El sistema fluido ya
     construido y verificado en fases anteriores (anchos auto, clamp()
     de tipografía, aspect-ratio para slider/mapas, etc.), fusionado en
     una sola regla limpia por selector en vez del patrón anterior de
     "regla vieja + parche encima". */

/*reset style (compartido en todos los anchos)
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
    font-family:"urw-din", sans-serif;
}

a img {
  border: 0px;
}
a {
	color : #9DB4E1;
	text-decoration:none;
	}
a:hover {
	color : #9DB4E1;
	text-decoration:underline;
	}
#bannerhome{
    position: relative;
}
/* Variante por defecto (desktop y tablet landscape comparten el mismo
   recorrido/posición); la tablet portrait y móvil redefinen este
   @keyframes dentro de su propio @media, con su recorrido más corto. */
@keyframes slidein {
    from {
        left: 2%;
    }
    to {
        left: 95%;
    }
}
.animo-glovo {
    position: absolute;
    left: 0;
    z-index: 10;
    animation-duration: 20s;
    animation-name: slidein;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
}

/* =============================================================
   DESKTOP (por defecto, sin @media — efectivamente >=1280px,
   porque por debajo lo pisan los @media de más abajo)
   ============================================================= */
.movil {
    display: none;
}
.tablet {
    display: none;
}
.desktop {
    display: initial;
}
.bannerhome-desktop {
    display:initial;
}
.bannerhome-mobile {
    display: none;
}
.animo-glovo {
    top: -90px;
}
h1 {
    font-weight: 400;
    font-size: 24px;
    line-height: 100%;
    margin-bottom:22px;
    color: #6A6764;
}
h2 {
    font-weight: 400;
    font-size: 18px;
    line-height: 95%;
    margin-bottom:5px;
    color: #6A6764;
}
h3 {
    font-weight: 400;
    font-size: 15px;
    line-height: 100%;
    color: #6A6764;
}
p {
    color: #888;
    font-size:15px;
    font-weight:200;
    margin-bottom:11px;
}
#cookie-law-info-again {
    font-size: 11px !important;
    background: #fff  !important;
    font-weight: 100 !important;
    color: #999 !important;
    margin: 0;
    padding: 5px 10px;
    text-align: center;
    z-index: 9999;
    cursor: pointer;
    box-shadow: #ebebeb 2px 2px 5px 2px !important;
}
/* =Layout
-------------------------------------------------------------- */
.limpia {
	clear:both;
	}
#page {
    width: 1180px;
    margin: 0 auto;
    padding-top: 50px;
}
#header {
    padding-bottom:36px;
}
#headerimg {
    height: 62px;
    width: 100%;
    position: relative;
    padding-bottom: 40px;
}

.titblog {
    font-weight: 400;
    width: 111px;
    text-transform: uppercase;
    height: 42px;
    border-left: 1px solid #ccc;
    float: left;
    margin-left: 11px;
    padding-left: 11px;
    padding-top: 20px;
}
.imgcabecera {
    float: left;
    padding-top: 9px;
    padding-left: 11px;
}
.titblog a {
    color: #888;
}.titblog a {
    color: #888;
    text-decoration: none;
}
.logohead {
    position: absolute;
    left: 0;
    width: 196px;
}
div#site-title {
    font-weight: 400;
    width: 111px;
    font-size: 20px;
    vertical-align: middle;
}
h1#site-title {
    font-weight: 400;
    font-size: 20px;
    vertical-align: middle;
}
h1.tituloposts {
    margin-bottom: 33px;
    text-transform: uppercase;
}
img.attachment-listados {
    margin-bottom: 22px;
    margin-top: 22px;
}
.post {
    border-bottom: 1px solid #ebebeb;
}
#content {
    width: 100%;
    float: none;
}
#contenido {
    width:1180px;
    position: relative;
}
.columnahome, .columna {
    width: 100%;
    padding-left: 0;
}
.columna h2{
   font-weight: 400;
    font-size: 24px;
    margin-top: 11px;
    color: #999;

}
.columna2 ul {
    margin-left:55px;
    color: #888;
    font-size:15px;
    font-weight:200;
    margin-bottom:11px;
}
.columna2 ol {
    margin-left:55px;
    color: #888;
    font-size:15px;
    font-weight:200;
    margin-bottom:11px;
}

.columna2 li {
    margin-bottom:3px;
}
#respond {
    border-top: 1px solid #ccc;
    padding-top: 22px;
    margin-top: 22px;
}
#respond h3 {
    font-size:20px;
    font-weight: 200;
    margin-bottom:11px;
}
p.postmetadata {
    border-top: 1px solid #ccc;
    padding-top: 11px;
    margin-top: 22px;
}
.columna .entry {
    padding-top:22px;
}
table {
    background: #ebebeb;
    font-size:13px !important;
    color: #000 !important;
    font-weight: 200 !important;
}
table p {
    font-size:13px !important;
    color: #000 !important;
    font-weight: 200 !important;
}
td {
    border-bottom: 1px solid #666;
    padding-left: 5px;
    padding-bottom:5px;
}
.tag-cloud-link {
    text-transform: lowercase;
    font-size: 14px !important;
}
.columnahome .post {
    margin-bottom: 44px;
}

/* =menu
-------------------------------------------------------------- */
.menutop {
    width: 858px;
    height: 61px;
    position: absolute;
    right: 0;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
    font-size: 16px;
}
.menutop ul {
    list-style: none;
    font-weight: 200;
}
.menutop li {
    float: left;
    margin-left: 21px;
    height: 39px;
    vertical-align: middle;
    padding-top: 23px;
    text-transform: uppercase;
}
.menutop a {
      color : #6B6863;
}
.menutop a:hover {
      color : #9DB4E1;
    text-decoration: none;
}
.current-menu-item a {
    color: #000;
    font-weight: 400;
}
.current-menu-item a:hover {
      color : #000;
    text-decoration: none;
}
img.attachment-destacadesktop {
    margin-bottom: 44px;
}
/* =slider
-------------------------------------------------------------- */
.sliderdesktop {
    width: 1180px;
    height: 376px;
    position: relative;
}
#alslider_wrap {
	position: absolute;
    z-index: 1;
	width: 1180px;
    margin : 0px;
	overflow: hidden;
    display: inline-block;
    top:0;
}
.alslider_item {
	position: absolute;
	top   : 0px;
	left  : 0px;
	width : 100%;
}
.alslider_item .tit {
	color: #000;
    font-family:"urw-din", sans-serif;
    font-size: 48px;
    font-weight: 700;
    margin: 0;
    position: absolute;
    text-align: center;
    width: 1180px;
    bottom: 0;

}
/* =home
-------------------------------------------------------------- */
.blockinfhome {
    margin-top:44px;
}

.block1 {
    display: inline-block;
    width: 258px;
    margin-right: 45px;
    vertical-align: top;
    padding-bottom: 0px;
    border-bottom: 0px solid #666;
    margin-bottom: 0px;
}
.block2 {
    display: inline-block;
    width: 259px;
    margin-right: 0px;
    vertical-align: top;
}
.imgdestacado {
    margin-bottom:11px;
}
.txtdestacado a {
    color: #6B6863;
}
a.titshomeblogs {
    color: #6B6863;
    font-size: 16px;
    font-weight: 300;
    margin-bottom: 22px;
}
.destacadoitem {
    margin-bottom: 44px;
}
.news_item {
    margin-top: 22px;
}
p.news_exc {
    margin: 0;
    font-size:13px;
}
h2.news_tit {
    margin-bottom: 3px;
    font-size: 15px;
    font-weight: 300;
}
/* =googlemaps
-------------------------------------------------------------- */
.mapafull {
    width: 871px;
    z-index:7;
	margin: 0;
	position: relative;
	height:515px;
    overflow: hidden;
    float: none;
    padding-right: 40px;
    display: inline-block;
}
.mapafullwidth {
    width: 1180px;
    z-index:7;
	margin: 0;
	position: relative;
	height:373px;
    overflow: hidden;
    float: none;
    padding-right: 40px;
    display: inline-block;
    margin-bottom:44px;
    padding-bottom:0px;
}
.mapamovil {
    display: none;
}
#gmaps {
	margin-bottom:0px;
	width:100%;
	margin: 0 auto;
	position: relative;
	height:100%;
    /*border:1px solid #000;*/
	}
#gmaps2 {
	margin-bottom:0px;
	width:100%;
	margin: 0 auto;
	position: relative;
	height:373px;
    /*border:1px solid #000;*/
	}
/* =pages
-------------------------------------------------------------- */
.columna1 {
    display: inline-block;
    width: 258px;
    margin-right: 45px;
    vertical-align: top;
    padding-top: 0px;
}
.columna2 {
    display: inline-block;
    width: 561px;
    margin-right: 45px;
    vertical-align: top;
    border-top: 0px solid #666;
    padding-top: 0px;
}
.columna3 {
    display: inline-block;
    width: 259px;
    margin-right: 0px;
    vertical-align: top;
}
.postdonde {
    display: inline-block;
    width: 259px;
    margin-right: 0px;
    vertical-align: top;
}
/* =sidebar
-------------------------------------------------------------- */
#sidebar {
    width: 259px;
    padding-left:0px;
    padding-top: 0px;
}
#sidebar ul {
    list-style: none;
    font-size: 14px;
}
#sidebar ul {
    padding-bottom: 11px;
    font-weight: 200;
}
#sidebar h2 {
    font-size:20px;
    text-transform: uppercase;
    color: #888;
    font-weight: 400;
}
#sidebar a {
    color: #888;
}
.widget_search {
    margin-bottom:11px;
}

/* =footer
-------------------------------------------------------------- */
#footer {
    margin-top: 22px;
    padding-bottom:44px;
    position: relative;
    text-align: left;
}
#footer p {
    font-size:12px;
}
#footer a {
    color: #999;
    text-decoration: underline;
}
#footer a:hover {
    color: #999;
    text-decoration: line-through;
}
#cookie-law-info-bar {
    border: 0;
    font-size: 10pt;
    margin: 0 auto;
    padding: 5px 0;
    position: absolute;
    text-align: center;
    width: 100%;
    z-index: 9999;
    font-weight: 200;
    background: #ebebeb;
}
/* =formularios
-------------------------------------------------------------- */
input#author, input#email, input#url, textarea#comment {
    border: 1px solid #999;
    padding: 2px;
    font-size: 14px;
    font-family:"urw-din", sans-serif;
    margin-bottom: 7px;
}
input#submit {
   border: 1px solid #9DB4E1;
    background: #9DB4E1;
    color: #000;
    padding: 2px;
}
input.botsearch {
   border: 1px solid #9DB4E1;
    background: #9DB4E1;
    color: #000;
    padding: 2px;
}
.bloquebuscar {
    margin-bottom: 22px;
}
input.wpcf7-text {
    border: 1px solid #999;
    padding: 4px;
    font-size: 16px;
    font-family: "urw-din", sans-serif;
    margin-bottom: 11px;
    width: 551px;
    color: #6A6764;
}
input.wpcf7-tel {
    width: 220px;
}
select.wpcf7-select {
    border: 1px solid #999;
    padding: 4px;
    font-size: 16px;
    font-family: "urw-din", sans-serif;
    margin-bottom: 11px;
    color: #6A6764;
}
input.wpcf7-date {
    border: 1px solid #999;
    padding: 4px;
    font-size: 16px;
    font-family: "urw-din", sans-serif;
    margin-bottom: 11px;
    color: #6A6764;
}
textarea.wpcf7-textarea {
    border: 1px solid #999;
    padding: 4px;
    font-size: 16px;
    font-family: "urw-din", sans-serif;
    margin-bottom: 11px;
    width: 551px;
    color: #6A6764;
}
.wpcf7-list-item input {
    border: 1px solid #999;
    padding: 4px;
    margin: 0;
}
.wpcf7-list-item {
    margin: 0 !important;

}
span.legal {
    font-size: 14px;
    padding-right: 11px;
}
input.wpcf7-submit {
    font-size: 16px;
    font-family: "urw-din", sans-serif;
    background: #9DB4E1;
    padding: 4px 22px;
    color: #000;
    border: 0px solid #9DB4E1;
    float: right;

}

/* =============================================================
   TABLET EN LANDSCAPE (1024-1279px)
   Misma disposición multi-columna que siempre; los anchos fijos sobre
   el lienzo de 924px pasan a % de ese mismo lienzo (202/924=21.9%,
   419/924=45.3%, 259/924=28%, huecos 15/924=1.6%), y #page/#contenido
   pasan a fluido en vez de quedarse fijos en 924px.
   ============================================================= */
@media screen and (min-width: 1024px) and (max-width: 1279px) {
    .movil {
        display: none;
    }
    .tablet {
        display: initial;
    }
    .desktop {
        display: none;
    }
    .bannerhome-desktop {
        display:initial;
    }
    .bannerhome-mobile {
        display: none;
    }
    .animo-glovo {
        top: -90px;
    }
    h1 {
        font-weight: 400;
        font-size: 24px;
        line-height: 100%;
        margin-bottom:22px;
        color: #6A6764;
    }
    h2 {
        font-weight: 400;
        font-size: 18px;
        line-height: 95%;
        margin-bottom:5px;
        color: #6A6764;
    }
    h3 {
        font-weight: 400;
        font-size: 15px;
        line-height: 100%;
        color: #6A6764;
    }
    p {
        color: #888;
        font-size:15px;
        font-weight:200;
        margin-bottom:11px;
    }
    .limpia {
        clear:both;
    }
    /* #page/#contenido fluidos en vez de fijos a 924px (antes
       #contenido no tenía override en tablet y se quedaba en los
       1180px de desktop, desbordando ligeramente en esta franja). */
    #page {
        width: auto;
        margin: 0 auto;
        padding-top: 30px;
    }
    #header {
        padding-bottom:26px;
    }
    #headerimg {
        height: 62px;
        width: 100%;
        padding-bottom: 40px;
    }
    .titblog {
        font-weight: 400;
        width: 300px;
        text-transform: uppercase;
        height: 42px;
        border-left: 1px solid #ccc;
        float: left;
        margin-left: 11px;
        padding-left: 11px;
        padding-top: 20px;
    }
    .titblog a {
        color: #888;
        text-decoration: none;
    }
    .logohead {
        float: left;
        width: 196px;
    }
    div#site-title {
        font-weight: 400;
        width: 300px;
        font-size: 20px;
        vertical-align: middle;
    }
    h1#site-title {
        font-weight: 400;
        font-size: 20px;
        vertical-align: middle;
    }
    #content {
        width: 100%;
        float: none;
    }
    #contenido {
        width: auto;
        position: relative;
    }
    .columnahome, .columna {
        width: 100%;
        padding-left: 0;
    }
    .columna h2{
        font-weight: 400;
        font-size: 24px;
        margin-top: 11px;
        color: #999;
    }
    .columna ul {
        margin-left:55px;
        color: #888;
        font-size:15px;
        font-weight:200;
    }
    .columna ol {
        margin-left:55px;
        color: #888;
        font-size:15px;
        font-weight:200;
    }
    #respond {
        border-top: 1px solid #ccc;
        padding-top: 22px;
        margin-top: 22px;
    }
    #respond h3 {
        font-size:20px;
        font-weight: 200;
        margin-bottom:11px;
    }
    p.postmetadata {
        border-top: 1px solid #ccc;
        padding-top: 11px;
        margin-top: 22px;
    }
    .columna .entry {
        padding-top:22px;
    }
    table {
        background: #ebebeb;
        font-size:13px !important;
        color: #000 !important;
        font-weight: 200 !important;
    }
    table p {
        font-size:13px !important;
        color: #000 !important;
        font-weight: 200 !important;
    }
    td {
        border-bottom: 1px solid #666;
        padding-left: 5px;
        padding-bottom:5px;
    }
    .tag-cloud-link {
        text-transform: lowercase;
        font-size: 14px !important;
    }
    .columnahome .post {
        margin-bottom: 44px;
    }
    /* =menu */
    .menutop {
        width: 72.1%;
        height: 61px;
        position: absolute;
        font-size: 15px;
        right: 0;
        border-right: 1px solid #ccc;
        border-left: 1px solid #ccc;
    }
    .menutop ul {
        list-style: none;
        font-weight: 200;
    }
    .menutop li {
        float: left;
        margin-left: 15px;
        height: 39px;
        vertical-align: middle;
        padding-top: 23px;
        text-transform: uppercase;
        font-size: 0.85em!important;
    }
    .menutop a {
        color : #6B6863;
    }
    .menutop a:hover {
        color : #9DB4E1;
        text-decoration: none;
    }
    img.attachment-destacatablet {
        margin-bottom: 33px;
    }
    /* =slider (924px -> fluido, mismo aspect-ratio real de la imagen) */
    .sliderdesktop {
        width: auto;
        aspect-ratio: 924 / 294;
        height: auto;
        position: relative;
    }
    #alslider_wrap {
        position: absolute;
        z-index: 1;
        width: 100%;
        margin : 0px;
        overflow: hidden;
        display: inline-block;
        top:0;
    }
    .alslider_item {
        position: absolute;
        top   : 0px;
        left  : 0px;
        width : 100%;
    }
    .alslider_item .tit {
        color: #000;
        font-family:"urw-din", sans-serif;
        font-size: 48px;
        font-weight: 700;
        margin: 0;
        position: absolute;
        text-align: center;
        width: 100%;
        bottom: 0;
    }
    /* =home: 202/924=21.9%, 15/924=1.6%, 259/924=28% */
    .block1 {
        display: inline-block;
        width: 21.9%;
        margin-right: 1.6%;
        vertical-align: top;
    }
    .block2 {
        display: inline-block;
        width: 28%;
        margin-right: 0px;
        vertical-align: top;
    }
    .imgdestacado {
        margin-bottom:11px;
    }
    .txtdestacado a {
        color: #6B6863;
    }
    a.titshomeblogs {
        color: #6B6863;
        font-size: 16px;
        font-weight: 300;
        margin-bottom: 22px;
    }
    .destacadoitem {
        margin-bottom: 22px;
    }
    .news_item {
        margin-top: 15px;
    }
    p.news_exc {
        margin: 0;
        font-size:13px;
    }
    h2.news_tit {
        margin-bottom: 3px;
        font-size: 14px;
        font-weight: 300;
    }
    /* =googlemaps: 636/924=68.8% */
    .mapafull {
        width: 68.8%;
        z-index:7;
        margin: 0;
        position: relative;
        aspect-ratio: 636 / 515;
        height: auto;
        overflow: hidden;
        float: none;
        padding-right: 1.6%;
        display: inline-block;
    }
    .mapafullwidth {
        width: auto;
        z-index:7;
        margin: 0;
        position: relative;
        aspect-ratio: 924 / 294;
        height: auto;
        overflow: hidden;
        float: none;
        display: inline-block;
        margin-bottom:44px;
    }
    .mapamovil {
        display: none;
    }
    #gmaps {
        margin-bottom:0px;
        width:100%;
        margin: 0 auto;
        position: relative;
        height:100%;
    }
    #gmaps2 {
        margin-bottom:0px;
        width:100%;
        margin: 0 auto;
        position: relative;
        height:373px;
    }
    /* =pages: 202/924=21.9%, 419/924=45.3%, 259/924=28%, gaps 15/924=1.6% */
    .columna1 {
        display: inline-block;
        width: 21.9%;
        margin-right: 1.6%;
        vertical-align: top;
    }
    .columna2 {
        display: inline-block;
        width: 45.3%;
        margin-right: 1.6%;
        vertical-align: top;
    }
    .columna3 {
        display: inline-block;
        width: 28%;
        margin-right: 0px;
        vertical-align: top;
    }
    .postdonde {
        display: inline-block;
        width: 28%;
        margin-right: 0px;
        vertical-align: top;
    }
    /* =sidebar */
    #sidebar {
        width: 28%;
        padding-left:0px;
        padding-top: 0px;
    }
    #sidebar ul {
        list-style: none;
        font-size: 14px;
        padding-bottom: 11px;
        font-weight: 200;
    }
    #sidebar h2 {
        font-size:20px;
        text-transform: uppercase;
        color: #888;
        font-weight: 400;
    }
    #sidebar a {
        color: #888;
    }
    .widget_search {
        margin-bottom:11px;
    }
    /* =footer */
    #footer {
        margin-top: 22px;
        padding-bottom:44px;
        position: relative;
    }
    #footer p {
        font-size:12px;
    }
    #footer a {
        color: #999;
        text-decoration: underline;
    }
    #footer a:hover {
        color: #999;
        text-decoration: line-through;
    }
    /* =formularios: 409/924=44.3% */
    input#author, input#email, input#url, textarea#comment {
        border: 1px solid #999;
        padding: 2px;
        font-size: 14px;
        font-family:"urw-din", sans-serif;
        margin-bottom: 7px;
    }
    input.wpcf7-text {
        border: 1px solid #999;
        padding: 4px;
        font-size: 14px;
        font-family: "urw-din", sans-serif;
        margin-bottom: 11px;
        width: 100%;
        box-sizing: border-box;
        color: #6A6764;
    }
    input.wpcf7-tel {
        width: 220px;
    }
    select.wpcf7-select {
        border: 1px solid #999;
        padding: 4px;
        font-size: 14px;
        font-family: "urw-din", sans-serif;
        margin-bottom: 11px;
        color: #6A6764;
    }
    input.wpcf7-date {
        border: 1px solid #999;
        padding: 4px;
        font-size: 14px;
        font-family: "urw-din", sans-serif;
        margin-bottom: 11px;
        color: #6A6764;
    }
    textarea.wpcf7-textarea {
        border: 1px solid #999;
        padding: 4px;
        font-size: 14px;
        font-family: "urw-din", sans-serif;
        margin-bottom: 11px;
        width: 100%;
        box-sizing: border-box;
        color: #6A6764;
    }
    span.legal {
        font-size: 14px;
        padding-right: 11px;
    }
    input.wpcf7-submit {
        font-size: 16px;
        font-family: "urw-din", sans-serif;
        background: #9DB4E1;
        padding: 4px 22px;
        color: #000;
        border: 0px solid #9DB4E1;
        float: right;
    }
}

/* =============================================================
   MÓVIL + TABLET EN PORTRAIT (0-1023px)
   ============================================================= */
@media screen and (max-width: 1023px) {
    @keyframes slidein {
        from {
            left: 2%;
        }
        to {
            left: 85%;
        }
    }
    .movil {
        display: initial;
    }
    .tablet {
        display: none;
    }
    .desktop {
        display: none;
    }
    .bannerhome-desktop {
        display:none;
    }
    .bannerhome-mobile {
        display: initial;
    }
    .animo-glovo {
        top: -60px;
    }
    h1 {
        font-weight: 400;
        font-size: clamp(28px, 7.5vw, 48px);
        line-height: 95%;
        margin-bottom:11px;
    }
    h2 {
        font-weight: 400;
        font-size: clamp(18px, 4.375vw, 28px);
        line-height: 95%;
        margin-bottom:11px;
    }
    h3 {
        font-weight: 400;
        font-size: clamp(16px, 3.90625vw, 25px);
        line-height: 100%;
        color: #6A6764;
    }
    p {
        color: #888;
        font-size: clamp(16px, 3.75vw, 24px);
        font-weight:200;
        margin-bottom:11px;
    }
    /* =Layout */
    .limpia {
        clear:both;
    }
    /* El padding lateral de 50px (100px en total) tenía sentido cuando
       #page medía 540px fijo; en una pantalla más estrecha de lo que
       deja sitio es desproporcionado. Se reduce a 30px. */
    #page {
        width: auto;
        margin: 0 auto;
        padding: 30px 30px 0 30px;
        background: #fff;
    }
    #header {
        padding-bottom:0px;
    }
    /* height:151px no coincidía con el alto real del contenido (logo +
       menú); sin overflow:hidden no recortaba nada visible, pero era
       un valor incorrecto. */
    #headerimg {
        height: auto;
        width: 100%;
    }
    /* max-width:260px (en vez del tamaño real, 364px) hace que el
       wrapper nunca sea más ancho que la imagen que contiene -> no
       queda hueco vacío a la derecha (que se alineaba a la izquierda
       por defecto), y de paso el logo queda más pequeño en todo este
       rango. text-align:center por seguridad, igual que ya hace
       .menumovil con el icono del menú. */
    .logohead {
        float: none;
        width: auto;
        max-width: 260px;
        margin: auto;
        display: block;
        position: relative;
        text-align: center;
    }
    .movil img {
        max-width: 100%;
        height: auto;
    }
    div#site-title {
        font-weight: 400;
        width: auto;
        max-width: 100%;
        font-size: clamp(20px, 5vw, 32px);
        vertical-align: middle;
    }
    h1#site-title {
        font-weight: 400;
        width: auto;
        max-width: 100%;
        font-size: clamp(20px, 5vw, 32px);
        vertical-align: middle;
    }
    #content {
        width: auto;
        float: none;
    }
    #contenido {
        width: auto;
        position: relative;
    }
    .columnahome, .columna {
        width: auto;
        padding-left: 0px;
    }
    .columna h2{
        font-weight: 400;
        font-size: clamp(16px, 3.75vw, 24px);
        margin-top: 11px;
        color: #999;
    }
    .columna1 {
        display: block;
        width: auto;
        margin-right: 0;
        padding-top: 40px;
    }
    .columna2 {
        display: block;
        width: auto;
        margin-right: 0px;
        border-top: 1px solid #666;
        padding-top: 20px;
    }
    .columna3 {
        display: block;
        width: auto;
        margin-right: 0px;
    }
    /* margin-left:55px era una sangría de lista pensada para 540px de
       ancho; en una pantalla más estrecha es un mordisco grande al
       poco ancho disponible. */
    .columna ul {
        margin-left:25px;
        color: #888;
        font-size: clamp(16px, 3.75vw, 24px);
        font-weight:200;
    }
    .columna ol {
        margin-left:25px;
        color: #888;
        font-size: clamp(16px, 3.75vw, 24px);
        font-weight:200;
    }
    #respond {
        border-top: 1px solid #ccc;
        padding-top: 22px;
        margin-top: 22px;
    }
    #respond h3 {
        font-size: clamp(14px, 3.125vw, 20px);
        font-weight: 200;
        margin-bottom:11px;
    }
    p.postmetadata {
        border-top: 1px solid #ccc;
        padding-top: 11px;
        margin-top: 22px;
    }
    .columna .entry {
        padding-top:22px;
    }
    table {
        background: #ebebeb;
        font-size: clamp(15px, 3.4375vw, 22px) !important;
        color: #000 !important;
        font-weight: 200 !important;
    }
    table p {
        font-size: clamp(15px, 3.4375vw, 22px) !important;
        color: #000 !important;
        font-weight: 200 !important;
    }
    td {
        border-bottom: 1px solid #666;
        padding-left: 5px;
        padding-bottom:5px;
    }
    .tag-cloud-link {
        text-transform: lowercase;
        font-size: clamp(15px, 3.4375vw, 22px) !important;
    }
    .columnahome .post {
        margin-bottom: 44px;
    }
    .postdonde {
        display: block;
        width: auto;
        margin-right: 0px;
    }
    /* =menu */
    .menumovil {
        text-align: center;
        position:relative;
    }
    /* #menu400 es "position:relative" + "display:initial" (=inline),
       así que sin esto sería el contenedor de referencia del
       .submenu, pero un inline solo ocupa el ancho de su contenido
       (el icono), no el ancho disponible. Al quitarle position,
       .submenu pasa a referenciarse a .menumovil (el siguiente
       ancestro posicionado), que sí mide el ancho completo. */
    #menu400 {
        position:static;
        font-size: clamp(16px, 3.75vw, 24px);
        text-transform: lowercase;
        right:0;
        top: 0px;
        display: initial;
        z-index: 111;
    }
    #menu400 ul {
        list-style:none;
    }
    #menu400 ul.sub-menu li {
        margin-left:0;
        float:none;
        padding-bottom:11px;
        text-align: right;
        z-index: 111;
    }
    .submenu {
        background-color: rgba(156, 179, 225, 0.9);
        display: none;
        font-size: clamp(14px, 3.125vw, 20px);
        font-weight: 200;
        list-style: outside none none;
        padding: 20px;
        position: absolute;
        left: 0;
        right: 0;
        text-transform: uppercase;
        top: 30px;
        width: auto;
        text-align: center;
        z-index: 111;
    }
    .submenu li {
        padding-bottom:15px;
    }
    .sub-menu:hover .submenu {
        display: block !important;
    }
    .sub-menu:hover {
        display: block !important;
    }
    #menu400 a {
        color:#fff;
        text-decoration: none;
    }
    #menu400 a:hover {
        color:#ccc;
        text-decoration: none;
    }
    /* =slider: aspect-ratio real de la imagen (slider_640 se recortó a
       540x272, antes 540x172, para aprovechar más alto en vertical) */
    .sliderdesktop {
        width: auto;
        aspect-ratio: 540 / 272;
        height: auto;
        position: relative;
    }
    #alslider_wrap {
        position: absolute;
        z-index: 1;
        width: 100%;
        margin : 0px;
        overflow: hidden;
        display: inline-block;
        top:0;
    }
    .alslider_item {
        position: absolute;
        top   : 0px;
        left  : 0px;
        width : 100%;
    }
    .alslider_item .tit {
        color: #000;
        font-family:"urw-din", sans-serif;
        font-size: clamp(28px, 7.5vw, 48px);
        font-weight: 700;
        margin: 0;
        position: absolute;
        text-align: center;
        width: 100%;
        bottom: 0;
    }
    .alslider_item img {
        max-width: 100%;
        height: auto;
    }
    /* =home */
    .blockinfhome {
        margin-top:44px;
    }
    /* margin-right:45px (en .block1) solo tenía sentido si hubiera
       otro bloque al lado; aquí siempre van apilados (display:block)
       y ese margen solo resta ancho útil sin ningún efecto visual. */
    .block1 {
        display: block;
        width: auto;
        margin-right: 0;
        padding-bottom: 20px;
        border-bottom: 1px solid #666;
        margin-bottom: 20px;
    }
    .block2 {
        display: block;
        width: auto;
        margin-right: 0px;
    }
    .imgdestacado {
        margin-bottom:11px;
    }
    .txtdestacado a {
        color: #6B6863;
    }
    a.titshomeblogs {
        color: #6B6863;
        font-size: clamp(20px, 5vw, 32px);
        font-weight: 300;
        margin-bottom: 22px;
    }
    .destacadoitem {
        margin-bottom: 44px;
    }
    .news_item {
        margin-top: 22px;
    }
    .news_tit,
    .news_tit a,
    .news_exc {
        overflow-wrap: break-word;
    }
    p.news_exc {
        margin: 0;
        font-size: clamp(15px, 3.4375vw, 22px);
    }
    h2.news_tit {
        margin-bottom: 3px;
        font-size: clamp(18px, 4.375vw, 28px);
        font-weight: 300;
    }
    /* =googlemaps: height fijo (666px/171px) calculado para los 540px
       de ancho de siempre; con el ancho ya fluido se quedaba un mapa
       absurdamente alto y estrecho (o al revés). aspect-ratio mantiene
       la proporción real. */
    .mapafull {
        width: auto;
        z-index:7;
        margin: 0;
        position: relative;
        aspect-ratio: 540 / 666;
        height: auto;
        overflow: hidden;
        float: none;
        padding-right: 0px;
        display: block;
        margin-bottom:44px;
    }
    .mapafullwidth {
        width: auto;
        z-index:7;
        margin: 0;
        position: relative;
        aspect-ratio: 540 / 171;
        height: auto;
        overflow: hidden;
        float: none;
        padding-right: 0px;
        display: block;
        margin-bottom:44px;
        padding-bottom: 0px;
    }
    .mapamovil {
        display: none;
    }
    #gmaps {
        margin-bottom:0px;
        width:100%;
        margin: 0 auto;
        position: relative;
        height:100%;
    }
    #gmaps2 {
        margin-bottom:0px;
        width:100%;
        margin: 0 auto;
        position: relative;
        height:373px;
    }
    /* =sidebar */
    #sidebar {
        width: auto;
        padding-left:0px;
        padding-top: 22px;
        float: none;
        border-left: 0px solid #888;
        border-top: 1px solid #888;
    }
    #sidebar ul {
        list-style: none;
        font-size: clamp(15px, 3.4375vw, 22px);
        padding-bottom: 11px;
        font-weight: 200;
    }
    #sidebar h2 {
        font-size: clamp(18px, 4.6875vw, 30px);
        text-transform: uppercase;
        color: #888;
        font-weight: 400;
    }
    #sidebar a {
        color: #888;
    }
    .widget_search {
        margin-bottom:11px;
    }
    /* =footer */
    #footer {
        margin-top: 44px;
        padding-bottom:44px;
        position: relative;
        text-align: center;
    }
    #footer p {
        font-size: clamp(14px, 3.125vw, 20px);
    }
    #footer a {
        color: #999;
        text-decoration: underline;
    }
    #footer a:hover {
        color: #999;
        text-decoration: line-through;
    }
    #cookie-law-info-bar {
        border: 0;
        font-size: 10pt;
        margin: 0 auto;
        padding: 5px 0;
        position: absolute;
        text-align: center;
        width: 100%;
        z-index: 9999;
        font-weight: 200;
        background: #ebebeb;
    }
    /* =formularios */
    input#author, input#email, input#url, textarea#comment {
        border: 1px solid #999;
        padding: 2px;
        font-size: clamp(13px, 2.1875vw, 14px);
        font-family:"urw-din", sans-serif;
        margin-bottom: 7px;
    }
    input#submit {
       border: 1px solid #9DB4E1;
        background: #9DB4E1;
        color: #000;
        padding: 2px;
    }
    input.botsearch {
       border: 1px solid #9DB4E1;
        background: #9DB4E1;
        color: #000;
        padding: 2px;
    }
    .bloquebuscar {
        margin-bottom: 22px;
    }
    input.wpcf7-text {
        border: 1px solid #999;
        padding: 4px;
        font-size: clamp(16px, 3.75vw, 24px);
        font-family: "urw-din", sans-serif;
        margin-bottom: 11px;
        width: 100%;
        box-sizing: border-box;
        color: #6A6764;
    }
    input.wpcf7-tel {
        width: 220px;
    }
    select.wpcf7-select {
        border: 1px solid #999;
        padding: 4px;
        font-size: clamp(16px, 3.75vw, 24px);
        font-family: "urw-din", sans-serif;
        margin-bottom: 11px;
        color: #6A6764;
    }
    input.wpcf7-date {
        border: 1px solid #999;
        padding: 4px;
        font-size: clamp(16px, 3.75vw, 24px);
        font-family: "urw-din", sans-serif;
        margin-bottom: 11px;
        color: #6A6764;
    }
    textarea.wpcf7-textarea {
        border: 1px solid #999;
        padding: 4px;
        font-size: clamp(16px, 3.75vw, 24px);
        font-family: "urw-din", sans-serif;
        margin-bottom: 11px;
        width: 100%;
        box-sizing: border-box;
        color: #6A6764;
    }
    .wpcf7-list-item input {
        border: 1px solid #999;
        padding: 4px;
        margin: 0;
    }
    .wpcf7-list-item {
        margin: 0 !important;
    }
    span.legal {
        font-size: clamp(16px, 3.75vw, 24px);
        padding-right: 11px;
    }
    input.wpcf7-submit {
        font-size: clamp(18px, 4.375vw, 28px);
        font-family: "urw-din", sans-serif;
        background: #9DB4E1;
        padding: 4px 22px;
        color: #000;
        border: 0px solid #9DB4E1;
        float: right;
    }
}
