/* Global Block and Element Styles */

/* Ombre Outline Style */
.is-style-ombre-outline {
    position: relative;
    --border-width: 2px;
    --border-inline-inset: 4%;
    --border-block-inset: 5%;
    --border-radius: 15px;
}

.is-style-ombre-outline::before,
.is-style-ombre-outline::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: var(--border-radius, 15px);
    padding: var(--border-width, 2px);
    box-sizing: border-box;
    width: calc(100% - var(--border-inline-inset, 17px) * 2);
    height: calc(100% - var(--border-block-inset, 17px) * 2);
    top: var(--border-block-inset, 17px);
    left: var(--border-inline-inset, 17px);
}

.is-style-ombre-outline::before {
    background: linear-gradient(320deg, #1C6EFF 0.55%, #3D5DD9 3.52%, #6948A6 8.46%, #91357A 13.41%, #B22554 18.35%, #CD1735 24.28%, #E20D1D 29.23%, #F1060D 35.16%, #FA0203 42.09%, #FD0100 50%, #FFBC00 99.45%);
    mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    mask-composite: exclude;
}

.is-style-ombre-outline::after {
    background: linear-gradient(12deg, rgba(224, 12, 12, 1) 0%, rgba(118, 0, 0, 0) 20%);
}

.is-style-boxed .wp-block-column {
    border-radius: 0.5rem;
    background-color: var(--color-background-light);
    padding-block: 5.35%;
    padding-inline: 6.35%;
}

p a,
li a,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #1B6DFE;
    transition: all 0.3s ease;
}

p a:hover,
p a:focus-visible,
li a:hover,
li a:focus-visible,
h1 a:hover,
h1 a:focus-visible,
h2 a:hover,
h2 a:focus-visible,
h3 a:hover,
h3 a:focus-visible,
h4 a:hover,
h4 a:focus-visible,
h5 a:hover,
h5 a:focus-visible,
h6 a:hover,
h6 a:focus-visible,
.wp-block-button.is-style-text-link a.wp-element-button:hover,
.wp-block-button.is-style-text-link a.wp-element-button:focus-visible {
    color: #172DA0;
    text-decoration: none;
}

.background-color-dark:not(:has(.has-background)) p a:hover,
.background-color-dark:not(:has(.has-background)) p a:focus-visible,
.background-color-dark:not(:has(.has-background)) li a:hover,
.background-color-dark:not(:has(.has-background)) li a:focus-visible,
.background-color-dark:not(:has(.has-background)) h1 a:hover,
.background-color-dark:not(:has(.has-background)) h1 a:focus-visible,
.background-color-dark:not(:has(.has-background)) h2 a:hover,
.background-color-dark:not(:has(.has-background)) h2 a:focus-visible,
.background-color-dark:not(:has(.has-background)) h3 a:hover,
.background-color-dark:not(:has(.has-background)) h3 a:focus-visible,
.background-color-dark:not(:has(.has-background)) h4 a:hover,
.background-color-dark:not(:has(.has-background)) h4 a:focus-visible,
.background-color-dark:not(:has(.has-background)) h5 a:hover,
.background-color-dark:not(:has(.has-background)) h5 a:focus-visible,
.background-color-dark:not(:has(.has-background)) h6 a:hover,
.background-color-dark:not(:has(.has-background)) h6 a:focus-visible,
.background-color-dark:not(:has(.has-background)) .wp-block-button.is-style-text-link a.wp-element-button:hover,
.background-color-dark:not(:has(.has-background)) .wp-block-button.is-style-text-link a.wp-element-button:focus-visible {
    color: #82AFFF;
}

/* Button Elements */
.wp-element-button {
    width: max-content !important;
}

.wp-block-button,
.wp-element-button {
    transition: all 0.3s ease;
}

.wp-block-button.is-style-fill .wp-block-button__link:hover,
.wp-block-button.is-style-blue .wp-block-button__link:hover,
.wp-block-button.is-style-fill .wp-block-button__link:focus-visible,
.wp-block-button.is-style-blue .wp-block-button__link:focus-visible,
.wp-element-button.is-style-fill:hover,
.wp-element-button.is-style-blue:hover,
.wp-element-button.is-style-fill:focus-visible,
.wp-element-button.is-style-blue:focus-visible {
    background-color: #172DA0;
    border-color: #172DA0;
}

.wp-block-button.is-style-blue-outline .wp-block-button__link:hover,
.wp-block-button.is-style-blue-outline .wp-block-button__link:focus-visible,
.wp-element-button.is-style-blue-outline:hover,
.wp-element-button.is-style-blue-outline:focus-visible {
    background-color: #EDF1FF;
    border-color: #EDF1FF;
    color: #172DA0;
}

.background-color-dark:not(:has(.has-background)) .wp-block-button.is-style-fill .wp-block-button__link:hover,
.background-color-dark:not(:has(.has-background)) .wp-block-button.is-style-blue .wp-block-button__link:hover,
.background-color-dark:not(:has(.has-background)) .wp-block-button.is-style-fill .wp-block-button__link:focus-visible,
.background-color-dark:not(:has(.has-background)) .wp-block-button.is-style-blue .wp-block-button__link:focus-visible,
.background-color-dark:not(:has(.has-background)) .wp-element-button.is-style-fill:hover,
.background-color-dark:not(:has(.has-background)) .wp-element-button.is-style-blue:hover,
.background-color-dark:not(:has(.has-background)) .wp-element-button.is-style-fill:focus-visible,
.background-color-dark:not(:has(.has-background)) .wp-element-button.is-style-blue:focus-visible {
    border-color: #fff;
}

.icon-container {
    height: 1.5rem !important;

    path {
        fill: #1B6DFE;
    }
}

.background-color-dark {
    .icon-container path {
        fill: var(--color-text-tertiary);
    }
}

.wp-block-button__link:has(img) {
    padding: 0;
    border-radius: 0;
    background-color: transparent;

    img {
        height: 30px;
    }
}

/* Post Elements */
.wp-block-post * {
    margin-block-end: 0;
}

.wp-block-post-title {
    font-size: var(--cq-300-1000-18-32);
    margin-top: var(--cq-650-1000-20-30);
}

.wp-block-post-featured-image img {
    border-radius: 0.5rem;
}

.wp-block-post-author,
.wp-block-post-date,
.wp-block-post-time-to-read {
    font-family: var(--font-family-body);
    font-size: var(--cq-300-1000-14-16);
    font-weight: 400;
    color: #000;
    display: flex;
    gap: 8px;
    flex-wrap: nowrap;
    align-items: center;
    flex: 0 0 auto !important;
}

/* Cover Blocks */
.wp-block-cover,
.wp-block-cover-image {
    min-height: unset;
}

/* Misc Utilities */
html {
    scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}

.page-template-simple-page {
    .entry-content {
        *:first-child {
            padding-top: 0;
        }
    }
}

#export-section-content.export-section-content-override-styles li a,
#export-section-content.export-section-content-override-styles p a {
    color: #1B6DFE !important;
    &:hover {
        color: #172DA0 !important;
    }
}