/*
Theme Name: Basic Bootstrap 5
Author: Linkweb
Description: Empty theme for starting a custom Bootstrap 5 theme
Version: 1.0
*/

pre {
    font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
    background-color: #1D1F21;
    color: #F0C674 !important;
    padding: 30px;
    margin: 15px;
    border-radius: 8px;
    word-break: break-all;
    word-wrap: break-word;
    overflow: auto;
    position: relative;
    z-index: 9;
}

* { scroll-behavior: smooth; }

html, body {
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
}

img {
    max-width: 100%;
    height: auto;
}

.wpcf7-form label {
    display: block;
}

/*Responsive Videos*/
iframe[src*="youtu.be"],
iframe[src*="youtube"],
iframe[src*="vimeo"],
video {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
}

.fs-small {
    font-size: .875rem;
}

/*Slick buttons*/
.slick-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

.slick-dots li {
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 8px;
    overflow: hidden;
    background-color: #CCD3D8;
    margin: 0 4px;
    -webkit-transition: all 350ms ease-in-out;
    -moz-transition: all 350ms ease-in-out;
    -ms-transition: all 350ms ease-in-out;
    -o-transition: all 350ms ease-in-out;
    transition: all 350ms ease-in-out;
}

.slick-dots li.slick-active {
    width: 28px;
    background-color: var(--bs-primary);
}

.slick-dots li button {
    widtH: 100%;
    height: 100%;
    opacity: 0;
}

.modal-body .embed iframe {
    width: 100%;
}

/*Flex Settings*/
section.flex-content,
section.flex-content .container { position: relative; }
section.flex-content .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; mix-blend-mode: multiply; }
section.flex-content .bg,
section.flex-content > video.embeded-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; }
section.flex-content > .embeded-youtube { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 177.78vh; height: 100vh; min-width: 100vw; min-height: 56.25vw; pointer-events: none; z-index: -1; }
section.flex-content img.bg,
section.flex-content > video.embeded-video { object-fit: cover; object-position: center; }


.screen-reader-shortcut {
    position: absolute;
    top: -1000em;
    left: 6px;
    height: auto;
    width: auto;
    display: block;
    font-size: 14px;
    font-weight: 600;
    padding: 15px 23px 14px;
    background: #f0f0f1;
    color: #2271b1;
    z-index: 100000;
    line-height: normal;
    text-decoration: none;
}
.screen-reader-shortcut:focus {
    top: 7px;
    background: #f0f0f1;
    box-shadow: 0 0 2px 2px rgba(0,0,0,.6);
}


.module-highlight-overlay {
    position: absolute;
    pointer-events: none; /* so it doesn’t block clicks */
    border: 3px solid var(--bs-danger);
    border-radius: 8px;
    animation: highlightPulse 2s ease-out 2;
    box-sizing: border-box;
    z-index: 9999;
}

.module-highlight-label-overlay {
    position: absolute;
    top: -20px;
    left: 0;
    background: var(--bs-danger);
    color: #FFF;
    padding: 2px 6px;
    font-size: 12px;
    font-weight: bold;
    border-radius: 4px;
    z-index: 10000;
}

@keyframes highlightPulse {
    0% { box-shadow: 0 0 0 rgba(255, 193, 7, 0.7); }
    100% { box-shadow: 0 0 20px rgba(255, 193, 7, 0); }
}
