/*
Theme Name:  Headless
Description: Minimal placeholder theme for headless/API-only WordPress setups. No frontend output.
Version:     1.0.0
Author:      bitconsulting.agency
License:     GPL-2.0-or-later
Text Domain: headless
*/

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,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,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}input[type="search"]{-webkit-appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}

body {
    --bs-font-sans-serif: Poppins;
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px;
    background-color: white;
    /*color: #555;*/
    color: #818181;
}

body.page:not(body.home){color:#0D2678;}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-weight: 400 !important;
}

li {
    list-style: none;
}

h1,h2,h3,h4,h5,h6{
    color: #0D2678;
}


.cmb-access-denied,
.cmb-access-denied * {
    box-sizing: border-box;
}

.cmb-access-denied {
    width: 100%;
    min-height: 75vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 24px;
    background:
        radial-gradient(circle at 12% 18%,
            rgba(73, 169, 232, 0.12),
            transparent 24%),
        radial-gradient(circle at 88% 82%,
            rgba(120, 200, 0, 0.1),
            transparent 22%),
        var(--cmb-access-background);
    font-family: Arial, Helvetica, sans-serif;
}

.cmb-access-denied__card {
    position: relative;
    width: min(1080px, 100%);
    min-height: 540px;
    display: grid;
    grid-template-columns:
        minmax(360px, 0.95fr) minmax(420px, 1.05fr);
    align-items: center;
    gap: 60px;
    padding: 64px;
    overflow: hidden;
    background: var(--cmb-access-white);
    border: 1px solid var(--cmb-access-border);
    border-radius: 28px;
    box-shadow:
        0 30px 80px rgba(12, 36, 78, 0.12),
        0 8px 24px rgba(12, 36, 78, 0.06);
}

.cmb-access-denied__card::before {
    content: "";
    position: absolute;
    top: -110px;
    right: -110px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: rgba(73, 169, 232, 0.08);
}

.cmb-access-denied__card::after {
    content: "";
    position: absolute;
    bottom: -90px;
    left: -80px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: rgba(120, 200, 0, 0.07);
}

.cmb-access-denied__illustration,
.cmb-access-denied__content {
    position: relative;
    z-index: 2;
}

.cmb-access-denied__illustration {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cmb-access-denied__content {
    max-width: 520px;
}

.cmb-access-denied__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    padding: 8px 14px;
    color: var(--cmb-access-blue);
    background: var(--cmb-access-blue-light);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.cmb-access-denied__badge::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--cmb-access-orange);
    box-shadow: 0 0 0 5px rgba(255, 189, 61, 0.18);
}

.cmb-access-denied h1 {
    margin: 0 0 18px;
    color: var(--cmb-access-blue-dark);
    font-size: clamp(34px, 4vw, 54px);
    line-height: 1.05;
    letter-spacing: -0.035em;
}

.cmb-access-denied p {
    margin: 0;
    color: var(--cmb-access-text);
    font-size: 17px;
    line-height: 1.75;
}

.cmb-access-denied__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 32px;
}

.cmb-access-denied__button {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 20px;
    border: 2px solid transparent;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease;
}

.cmb-access-denied__button:hover {
    transform: translateY(-2px);
}

.cmb-access-denied__button:focus-visible {
    outline: 3px solid rgba(73, 169, 232, 0.4);
    outline-offset: 3px;
}

.cmb-access-denied__button--primary {
    color: var(--cmb-access-white);
    background: var(--cmb-access-blue);
    box-shadow: 0 10px 24px rgba(10, 47, 131, 0.22);
}

.cmb-access-denied__button--primary:hover {
    color: var(--cmb-access-white);
    background: var(--cmb-access-blue-dark);
    box-shadow: 0 14px 30px rgba(10, 47, 131, 0.28);
}

.cmb-access-denied__button--secondary {
    color: var(--cmb-access-blue);
    background: var(--cmb-access-white);
    border-color: #cbd7ec;
}

.cmb-access-denied__button--secondary:hover {
    color: var(--cmb-access-blue);
    background: #f8faff;
    border-color: var(--cmb-access-blue);
}

.cmb-button-lock {
    position: relative;
    width: 14px;
    height: 11px;
    border-radius: 3px;
    background: currentColor;
}

.cmb-button-lock::before {
    content: "";
    position: absolute;
    left: 3px;
    top: -7px;
    width: 8px;
    height: 9px;
    border: 2px solid currentColor;
    border-bottom: 0;
    border-radius: 7px 7px 0 0;
}

.cmb-safe {
    position: relative;
    width: 360px;
    height: 360px;
    animation: cmbSafeFloat 4.5s ease-in-out infinite;
}

.cmb-safe__shadow {
    position: absolute;
    left: 56px;
    bottom: 20px;
    width: 250px;
    height: 38px;
    border-radius: 50%;
    background: rgba(8, 31, 79, 0.13);
    filter: blur(6px);
}

.cmb-safe__body {
    position: absolute;
    left: 48px;
    bottom: 54px;
    width: 264px;
    height: 196px;
    border: 7px solid var(--cmb-access-blue-dark);
    border-radius: 24px 24px 18px 18px;
    background: linear-gradient(145deg,
            #1b5db2,
            var(--cmb-access-blue));
    box-shadow:
        inset 0 5px 0 rgba(255, 255, 255, 0.15),
        0 20px 35px rgba(10, 47, 131, 0.22);
}

.cmb-safe__top {
    position: absolute;
    left: -7px;
    top: -38px;
    width: 264px;
    height: 48px;
    border: 7px solid var(--cmb-access-blue-dark);
    border-radius: 20px 20px 7px 7px;
    background: linear-gradient(180deg, #59b5eb, #2c84ca);
    transform: perspective(220px) rotateX(18deg);
    transform-origin: bottom;
}

.cmb-safe__top::before {
    content: "";
    position: absolute;
    left: 20px;
    top: 12px;
    width: 170px;
    height: 7px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.24);
}

.cmb-safe__documents {
    position: absolute;
    left: 31px;
    top: -94px;
    width: 190px;
    height: 120px;
}

.cmb-document {
    position: absolute;
    width: 108px;
    height: 138px;
    padding: 26px 16px 16px;
    border: 5px solid var(--cmb-access-blue-dark);
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 12px 25px rgba(7, 31, 89, 0.18);
}

.cmb-document::before {
    content: "";
    position: absolute;
    top: 13px;
    left: 16px;
    width: 36px;
    height: 6px;
    border-radius: 5px;
    background: var(--cmb-access-cyan);
}

.cmb-document span {
    display: block;
    height: 5px;
    margin-top: 10px;
    border-radius: 5px;
    background: #d8e1ed;
}

.cmb-document span:nth-child(2) {
    width: 80%;
}

.cmb-document span:nth-child(3) {
    width: 58%;
}

.cmb-document--back {
    left: 6px;
    top: 12px;
    transform: rotate(-13deg);
    background: #eaf6ff;
}

.cmb-document--middle {
    right: 4px;
    top: 10px;
    transform: rotate(11deg);
    background: #f4fae7;
}

.cmb-document--middle::before {
    background: var(--cmb-access-green);
}

.cmb-document--locked {
    left: 42px;
    top: -7px;
    z-index: 3;
    transform: rotate(-1deg);
    animation: cmbDocumentPulse 3s ease-in-out infinite;
}

.cmb-document--locked::before {
    background: var(--cmb-access-orange);
}

.cmb-document__header {
    position: absolute;
    top: 12px;
    left: 16px;
    width: 42px;
    height: 6px;
    border-radius: 5px;
    background: var(--cmb-access-orange);
}

.cmb-document--locked>span {
    margin-top: 12px;
}

.cmb-mini-lock {
    position: absolute;
    right: -20px;
    bottom: 17px;
    width: 54px;
    height: 60px;
}

.cmb-mini-lock__hook {
    position: absolute;
    left: 12px;
    top: 0;
    width: 31px;
    height: 31px;
    border: 7px solid var(--cmb-access-blue-dark);
    border-bottom: 0;
    border-radius: 18px 18px 0 0;
}

.cmb-mini-lock__body {
    position: absolute;
    left: 2px;
    bottom: 0;
    width: 50px;
    height: 39px;
    border: 5px solid var(--cmb-access-blue-dark);
    border-radius: 10px;
    background: var(--cmb-access-orange);
    box-shadow: 0 8px 16px rgba(7, 31, 89, 0.22);
}

.cmb-mini-lock__key {
    position: absolute;
    left: 17px;
    top: 9px;
    width: 7px;
    height: 13px;
    border-radius: 5px;
    background: var(--cmb-access-blue-dark);
}

.cmb-mini-lock__key::before {
    content: "";
    position: absolute;
    left: -2px;
    top: -3px;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: var(--cmb-access-blue-dark);
}

.cmb-safe__base {
    position: absolute;
    left: 22px;
    bottom: -18px;
    width: 206px;
    height: 23px;
    border: 6px solid var(--cmb-access-blue-dark);
    border-radius: 7px 7px 12px 12px;
    background: #2c84ca;
}

.cmb-shield {
    position: absolute;
    right: 21px;
    bottom: 45px;
    width: 102px;
    height: 118px;
    display: flex;
    align-items: center;
    justify-content: center;
    clip-path: polygon(50% 0,
            94% 17%,
            88% 67%,
            50% 100%,
            12% 67%,
            6% 17%);
    background: var(--cmb-access-green);
    filter: drop-shadow(0 13px 14px rgba(7, 31, 89, 0.2));
    animation: cmbShieldGlow 2.8s ease-in-out infinite;
}

.cmb-shield__inner {
    width: 76px;
    height: 89px;
    display: flex;
    align-items: center;
    justify-content: center;
    clip-path: polygon(50% 0,
            94% 17%,
            88% 67%,
            50% 100%,
            12% 67%,
            6% 17%);
    background: #ffffff;
}

.cmb-shield__check {
    width: 34px;
    height: 19px;
    border-left: 8px solid var(--cmb-access-blue);
    border-bottom: 8px solid var(--cmb-access-blue);
    transform: rotate(-45deg) translate(2px, -3px);
    border-radius: 2px;
}

.cmb-decor {
    position: absolute;
    display: block;
    border-radius: 50%;
}

.cmb-decor--one {
    left: 18px;
    top: 60px;
    width: 18px;
    height: 18px;
    border: 5px solid var(--cmb-access-orange);
}

.cmb-decor--two {
    right: 20px;
    top: 87px;
    width: 13px;
    height: 13px;
    background: var(--cmb-access-green);
}

.cmb-decor--three {
    left: 10px;
    bottom: 84px;
    width: 10px;
    height: 10px;
    background: var(--cmb-access-cyan);
    box-shadow:
        18px -22px 0 -2px var(--cmb-access-orange),
        34px 8px 0 -3px var(--cmb-access-green);
}

@keyframes cmbSafeFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-9px);
    }
}

@keyframes cmbDocumentPulse {

    0%,
    100% {
        transform: rotate(-1deg) translateY(0);
    }

    50% {
        transform: rotate(-1deg) translateY(-5px);
    }
}

@keyframes cmbShieldGlow {

    0%,
    100% {
        filter:
            drop-shadow(0 13px 14px rgba(7, 31, 89, 0.2)) drop-shadow(0 0 0 rgba(120, 200, 0, 0));
    }

    50% {
        filter:
            drop-shadow(0 13px 14px rgba(7, 31, 89, 0.2)) drop-shadow(0 0 14px rgba(120, 200, 0, 0.45));
    }
}

@media (max-width: 900px) {
    .cmb-access-denied__card {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 42px 30px;
        text-align: center;
    }

    .cmb-access-denied__content {
        margin: 0 auto;
    }

    .cmb-access-denied__actions {
        justify-content: center;
    }

    .cmb-safe {
        margin: -20px 0;
        animation-name: cmbSafeFloatTablet;
    }

    @keyframes cmbSafeFloatTablet {

        0%,
        100% {
            transform: scale(0.9) translateY(0);
        }

        50% {
            transform: scale(0.9) translateY(-9px);
        }
    }
}

@media (max-width: 520px) {
    .cmb-access-denied {
        min-height: auto;
        padding: 16px;
    }

    .cmb-access-denied__card {
        min-height: auto;
        padding: 30px 20px 34px;
        border-radius: 20px;
    }

    .cmb-safe {
        width: 360px;
        margin: -44px -70px;
        animation-name: cmbSafeFloatMobile;
    }

    .cmb-access-denied h1 {
        font-size: 32px;
    }

    .cmb-access-denied p {
        font-size: 15px;
        line-height: 1.65;
    }

    .cmb-access-denied__actions {
        flex-direction: column-reverse;
    }

    .cmb-access-denied__button {
        width: 100%;
    }

    @keyframes cmbSafeFloatMobile {

        0%,
        100% {
            transform: scale(0.68) translateY(0);
        }

        50% {
            transform: scale(0.68) translateY(-9px);
        }
    }
}

@media (prefers-reduced-motion: reduce) {

    .cmb-safe,
    .cmb-document--locked,
    .cmb-shield {
        animation: none;
    }

    .cmb-access-denied__button {
        transition: none;
    }
}

@media (max-width: 768px) {

    .editar-carga-content {
        padding: 40px 25px;
        border-radius: 25px;
    }

    #editar-carga-submit {
        width: 100%;
        min-width: 0;
    }

    .editar-carga-close {
        right: 20px;
    }

    .modal-cobertura-box {
        padding: 36px 24px;
        margin: 70px auto 30px;
    }

    .modal-cobertura-header {
        display: block;
    }

    .modal-cobertura-header h2 {
        font-size: 26px;
        margin-bottom: 12px;
    }

    .cobertura-actual div,
    .cobertura-form-grid {
        display: block;
    }

    .cobertura-form-grid label {
        margin-bottom: 18px;
    }

    .editar-grid {
        grid-template-columns: 1fr;
    }
}