/*
Theme Name: Urbanitas Blog
Theme URI: https://urbanitas-cerrajeros.com/
Author: Urbanitas
Description: Tema moderno para el blog de Urbanitas Cerrajeros.
Version: 1.0.0
Text Domain: urbanitas-blog
*/

/*
Theme Name: Urbanitas Blog
Theme URI: https://urbanitas-cerrajeros.com/
Author: Urbanitas
Description: Tema moderno para el blog de Urbanitas Cerrajeros.
Version: 1.0.0
Text Domain: urbanitas-blog
*/

:root {
    --dark:#202020;
    --dark-soft:#303030;
    --blue:#008abf;
    --blue-dark:#087ea9;
    --yellow:#f2d600;
    --red:#e40719;
    --text:#202326;
    --muted:#6f7478;
    --line:#e7e8ea;
    --bg:#f5f7f8;
    --white:#fff;
    --radius:18px;
    --shadow:0 12px 35px rgba(19,31,38,.09);
    --shell:1180px
}
*,*::before,*::after {
    box-sizing:border-box
}
html {
    scroll-behavior:smooth
}
body {
    margin:0;
    background:var(--white);
    color:var(--text);
    font-family: 'PT Sans', sans-serif;
  font-size: 15px;
  line-height: 1.42857143;
    -webkit-font-smoothing:antialiased
}
img {
    max-width:100%;
    height:auto
}
a {
    color:var(--blue-dark);
    text-decoration:none;
    transition:.2s ease
}
a:hover,a:focus {
    color:var(--blue)
}
button,input,textarea,select {
    font:inherit
}
.site-shell {
    width:min(calc(100% - 40px),var(--shell));
    margin-inline:auto
}
.narrow-shell {
    max-width:860px
}
.responsive-image {
    display:block;
    width:100%;
    height:auto
}
.screen-reader-text {
    position:absolute!important;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0
}
.screen-reader-text:focus {
    position:fixed!important;
    z-index:99999;
    top:12px;
    left:12px;
    width:auto;
    height:auto;
    padding:12px 16px;
    background:#fff;
    color:#000;
    clip:auto
}
.header-top {
    background:var(--dark);
    color:#fff;
    border-top:4px solid #d8e0e5
}
.header-top-inner {
    min-height:140px;
    display:grid;
    grid-template-columns:180px 1fr 180px;
    align-items:center;
    gap:30px
}
.brand-mark {
    display:flex;
    align-items:center;
    justify-content:center
}



@font-face {
    font-family: 'HelveticaNeueLT Std Lt Ext';
    src: url('fonts/HelveticaNeueLTStd-LtEx.eot');
    src: url('fonts/HelveticaNeueLTStd-LtEx.eot?#iefix') format('embedded-opentype'),
        url('fonts/HelveticaNeueLTStd-LtEx.woff2') format('woff2'),
        url('fonts/HelveticaNeueLTStd-LtEx.woff') format('woff'),
        url('fonts/HelveticaNeueLTStd-LtEx.ttf') format('truetype'),
        url('fonts/HelveticaNeueLTStd-LtEx.svg#HelveticaNeueLTStd-LtEx') format('svg');
	font-weight: 300;   
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'HelveticaNeueLT Std Thin Ext';
    src: url('fonts/HelveticaNeueLTStd-ThEx.eot');
    src: url('fonts/HelveticaNeueLTStd-ThEx.eot?#iefix') format('embedded-opentype'),
        url('fonts/HelveticaNeueLTStd-ThEx.woff2') format('woff2'),
        url('fonts/HelveticaNeueLTStd-ThEx.woff') format('woff'),
        url('fonts/HelveticaNeueLTStd-ThEx.ttf') format('truetype'),
        url('fonts/HelveticaNeueLTStd-ThEx.svg#HelveticaNeueLTStd-ThEx') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}


header h1{
	font-size: 1.9rem;
	margin-top: 0;
}

.text_logo1{
	font-family: 'HelveticaNeueLT Std Thin Ext';
}

.text_logo2{
	font-family: 'HelveticaNeueLT Std Lt Ext';
}


.custom-logo-link {
    display:inline-flex
}
.custom-logo {
    max-width:116px;
    max-height:116px;
    width:auto;
    height:auto
}
.brand-fallback {
    width:96px;
    height:96px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:var(--yellow);
    border:4px solid #111;
    color:#111;
    font-family:"Barlow Condensed",sans-serif;
    font-size:54px;
    font-weight:700
}
.brand-center {
    text-align:center
}

.pt-3{
    padding-top: 3rem;
}
.brand-name {
    margin:0 0 2px;
    color:var(--yellow);
    font-family:"Barlow Condensed",sans-serif;
    font-size:24px;
    font-weight:500;
    letter-spacing:.04em;
    text-transform:uppercase
}
.brand-phone {
    display:inline-block;
    color:#d9dde1;
    font-size:clamp(25px,2.4vw,35px);
    font-weight:500;
    letter-spacing:.03em
}
.brand-phone:hover {
    color:#fff
}
.header-contact {
    display:flex;
    justify-content:center;
    gap:15px;
    margin-top:4px
}
.header-contact a {
    color:#5da6da;
    font-weight:700;
    font-size:18px
}
.madrid-badge {
    justify-self:center;
    color:#fff;
    text-align:center
}
.madrid-shape {
    width:76px;
    height:76px;
    display:grid;
    place-items:center;
    margin:auto;
    background:var(--red);
    clip-path:polygon(55% 0,70% 10%,72% 27%,87% 42%,79% 58%,91% 75%,66% 83%,54% 100%,38% 87%,17% 90%,20% 68%,3% 54%,23% 43%,24% 20%);
    font-size:22px
}
.madrid-stars {
    display:block;
    margin-top:-35px;
    position:relative;
    font-size:11px;
    letter-spacing:1px
}
.nav-bar {
    background:var(--blue);
    box-shadow:0 4px 16px rgba(0,0,0,.08)
}
.nav-inner {
    min-height:56px;
    display:flex;
    align-items:center
}
.primary-menu {
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    align-items:stretch;
    flex-wrap:wrap
}
.primary-menu>li {
    position:relative
}
.primary-menu>li>a {
    display:flex;
    align-items:center;
    min-height:56px;
    padding:0 15px;
    color:#fff;
    font-family:"Barlow Condensed",sans-serif;
    font-size:14px;
    font-weight:400;
    
    text-transform:uppercase
}
.primary-menu>li>a:hover,.primary-menu>li.current-menu-item>a,.primary-menu>li.current-menu-ancestor>a {
    background:rgba(0,0,0,.11);
    color:#fff
}
.primary-menu .sub-menu {
    position:absolute;
    z-index:20;
    top:100%;
    left:0;
    min-width:240px;
    margin:0;
    padding:8px;
    list-style:none;
    background:var(--dark);
    box-shadow:var(--shadow);
    opacity:0;
    visibility:hidden;
    transform:translateY(8px);
    transition:.2s ease
}
.primary-menu li:hover>.sub-menu,.primary-menu li:focus-within>.sub-menu {
    opacity:1;
    visibility:visible;
    transform:translateY(0)
}
.primary-menu .sub-menu a {
    display:block;
    padding:10px 12px;
    color:#fff
}
.primary-menu .sub-menu a:hover {
    background:var(--blue)
}
.menu-toggle {
    display:none;
    width:44px;
    height:44px;
    padding:10px;
    border:0;
    background:transparent;
    cursor:pointer
}
.menu-toggle-line {
    display:block;
    width:24px;
    height:2px;
    margin:5px auto;
    background:#fff
}
.blog-hero,.page-hero,.single-hero {
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,rgba(0,149,200,.97),rgba(0,119,161,.97));
    color:#fff
}
.blog-hero {
    padding:72px 0 82px
}
.page-hero {
    padding:54px 0
}
.single-hero {
    padding:70px 0 78px
}
.blog-hero::after,.page-hero::after,.single-hero::after {
    content:"";
    position:absolute;
    right:-100px;
    bottom:-130px;
    width:360px;
    height:360px;
    border:50px solid rgba(255,255,255,.08);
    border-radius:50%
}
.blog-hero h1,.page-hero h1,.single-hero h1 {
    position:relative;
    z-index:2;
    max-width:900px;
    margin:0;
    font-family:"Barlow Condensed",sans-serif;
    font-size:clamp(42px,6vw,72px);
    line-height:.98;
    text-transform:uppercase
}
.eyebrow,.single-category {
    margin:0 0 14px;
    color:var(--yellow);
    font-family:"Barlow Condensed",sans-serif;
    font-size:18px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase
}
.hero-copy {
    position:relative;
    z-index:2;
    max-width:700px;
    margin:22px 0 0;
    color:rgba(255,255,255,.9);
    font-size:18px
}
.blog-listing {
    padding:68px 0 86px;
    background:var(--bg)
}
.post-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:28px
}
.post-card {
    overflow:hidden;
    display:flex;
    flex-direction:column;
    background:#fff;
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    transition:.22s ease
}
.post-card:hover {
    transform:translateY(-5px);
    box-shadow:0 18px 48px rgba(19,31,38,.14)
}
.post-card-image {
    display:block;
    overflow:hidden;
    aspect-ratio:1.56/1;
    background:var(--dark-soft)
}
.post-card-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .4s ease
}
.post-card:hover .post-card-image img {
    transform:scale(1.035)
}
.post-card-placeholder {
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
    color:#fff;
    font-size:56px
}
.post-card-body {
    flex:1;
    display:flex;
    flex-direction:column;
    padding:24px
}
.post-meta {
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    margin-bottom:13px;
    color:var(--muted);
    font-size:13px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.04em
}
.post-meta span:last-child {
    color:var(--blue)
}
.post-card-title {
    margin:0 0 14px;
    font-family:"Barlow Condensed",sans-serif;
    font-size:29px;
    line-height:1.08
}
.post-card-title a {
    color:var(--dark)
}
.post-card-excerpt {
    color:#5b6064
}
.post-card-excerpt p {
    margin-top:0
}
.read-more {
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-top:auto;
    padding-top:8px;
    color:var(--blue-dark);
    font-weight:700
}
.pagination-wrap {
    margin-top:50px
}
.nav-links {
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:7px
}
.page-numbers {
    min-width:42px;
    height:42px;
    display:grid;
    place-items:center;
    padding:0 12px;
    border-radius:9px;
    background:#fff;
    color:var(--dark);
    font-weight:700
}
.page-numbers.current,.page-numbers:hover {
    background:var(--blue);
    color:#fff
}
.single-header-inner {
    position:relative;
    z-index:2
}
.single-meta {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:22px;
    color:rgba(255,255,255,.82)
}
.single-content-shell,.page-content {
    padding-top:54px;
    padding-bottom:80px
}
.single-featured,.page-featured {
    overflow:hidden;
    margin:0 0 44px;
    border-radius:var(--radius);
    box-shadow:var(--shadow)
}
.entry-content {
    font-size:18px
}
.entry-content h2,.entry-content h3,.entry-content h4 {
    margin-top:1.7em;
    margin-bottom:.6em;
    font-family:"Barlow Condensed",sans-serif;
    line-height:1.08;
    color:var(--dark)
}
.entry-content h2 {
    font-size:38px
}
.entry-content h3 {
    font-size:30px
}
.entry-content a {
    text-decoration:underline;
    text-underline-offset:3px
}
.entry-content blockquote {
    margin:38px 0;
    padding:24px 28px;
    border-left:5px solid var(--yellow);
    background:#f6f7f8;
    font-size:20px;
    font-style:italic
}
.entry-content img {
    border-radius:12px
}
.single-tags {
    margin-top:42px;
    padding-top:22px;
    border-top:1px solid var(--line)
}
.single-tags a {
    display:inline-block;
    margin:4px;
    padding:7px 11px;
    background:#eef6f9;
    border-radius:999px;
    color:var(--blue-dark);
    font-size:13px
}
.post-navigation-custom {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin-top:46px;
    padding-top:28px;
    border-top:1px solid var(--line)
}
.post-navigation-custom a {
    display:block;
    padding:18px 20px;
    background:var(--bg);
    border-radius:12px;
    color:var(--dark);
    font-weight:700
}
.nav-next {
    text-align:right
}
.empty-state {
    padding:60px 20px;
    text-align:center
}
.site-footer {
    position:relative;
    overflow:hidden;  
    background:var(--dark-soft) url(images/skyline.webp) bottom center no-repeat;	
    color:#fff
}
.footer-main {
    padding:42px 0 66px
}
.footer-grid {
    display:grid;
    grid-template-columns:1.2fr 1fr 1fr;
    gap:60px
}
.footer-widget-title {
    margin:0 0 12px;
    color:#fff;
    font-family:"Barlow Condensed",sans-serif;
    font-size:24px
}
.footer-col p,.footer-col li {
    color:rgba(255,255,255,.92)
}
.footer-col ul {
    margin:0;
    padding:0;
    list-style:none
}
.footer-col a {
    color:#fff
}
.footer-check-list li {
    position:relative;
    padding-left:22px
}
.footer-check-list li::before {
    content:"✓";
    position:absolute;
    left:0;
    top:0;
    color:#fff;
    font-weight:700
}
.footer-skyline {
    height:74px;
    margin-top:-60px;
    opacity:.32;
    /*background:linear-gradient(to top,#111 0 28%,transparent 28%),linear-gradient(90deg,transparent 0 7%,#111 7% 10%,transparent 10% 16%,#111 16% 20%,transparent 20% 28%,#111 28% 33%,transparent 33% 41%,#111 41% 45%,transparent 45% 54%,#111 54% 60%,transparent 60% 68%,#111 68% 71%,transparent 71% 79%,#111 79% 85%,transparent 85% 92%,#111 92% 96%,transparent 96%)*/
}
.footer-bottom {
    position:relative;
    z-index:2;
    padding:14px 0;
    background:rgba(0,0,0,.18)
}
.footer-bottom-inner {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:6px 12px;
    font-size:14px
}
.footer-bottom p {
    margin:0
}
.footer-menu {
    display:flex;
    flex-wrap:wrap;
    gap:6px 10px;
    margin:0;
    padding:0;
    list-style:none
}
.footer-menu li+li::before {
    content:"·";
    margin-right:10px;
    color:#fff
}
.footer-menu a {
    color:#fff
}
@media(max-width:980px) {
    .header-top-inner {
        grid-template-columns:120px 1fr 120px
    }
    .post-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .footer-grid {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:760px) {
    .site-shell {
        width:min(calc(100% - 28px),var(--shell))
    }
    .header-top-inner {
        min-height:118px;
        grid-template-columns:86px 1fr;
        gap:14px
    }
    .madrid-badge {
        display:none
    }
    .custom-logo {
        max-width:78px;
        max-height:78px
    }
    .brand-name {
        font-size:19px
    }
    .brand-phone {
        font-size:24px
    }
    .nav-inner {
        min-height:54px
    }
   /* .menu-toggle {
        display:block
    }*/
    .primary-nav {
        width:100%
    }
  /*  .primary-menu {
        display:none;
        width:100%;
        padding:10px 0
    }
    .primary-menu.is-open {
        display:block
    }
    */
    .primary-menu>li>a {
        min-height:46px;
        padding:0 10px
    }
    .primary-menu .sub-menu {
        position:static;
        display:block;
        min-width:0;
        padding:0 0 0 16px;
        box-shadow:none;
        opacity:1;
        visibility:visible;
        transform:none;
        background:transparent
    }
    .blog-hero,.single-hero {
        padding:54px 0 62px
    }
    .post-grid {
        grid-template-columns:1fr
    }
    .footer-grid {
        grid-template-columns:1fr;
        gap:28px
    }
    .post-navigation-custom {
        grid-template-columns:1fr
    }
    .nav-next {
        text-align:left
    }
    .entry-content {
        font-size:17px
    }
}


@media all and (max-width:992px){
    .menu-toggle {
        display:block
    }
    
    .primary-menu {
        display:none;
        width:100%;
        padding:10px 0
    }
    .primary-menu.is-open {
        display:block
    }
}

@media all and (min-width:992px) and (max-width:1172px){
    .primary-menu>li>a {
        font-size: 12px;
        padding: 0 10px;
    }
}
    

@media(prefers-reduced-motion:reduce) {
    *,*::before,*::after {
        scroll-behavior:auto!important;
        transition:none!important;
        animation:none!important
    }
}