/*!*******************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./src/style.css ***!
  \*******************************************************************************************************************************************************************/
/* Frontend styles for social cards */
body:not(.wp-admin) .social-block {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    justify-content: center;
}

body:not(.wp-admin) .social-item {
    flex: 1 1 25%;
    min-width: 250px;
    height: 250px;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    text-decoration: none;
}

body:not(.wp-admin) .social-item:nth-child(odd) {
    background-color: #1f315d;
}

body:not(.wp-admin) .social-item:nth-child(even) {
    background-color: #4168a8;
}

body:not(.wp-admin) .social-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
    position: relative;
}

body:not(.wp-admin) .social-icon i {
    font-size: 48px;
    color: #ffffff;
    transition: transform 0.3s ease;
}

body:not(.wp-admin) .social-title {
    font-family: "Open Sans", sans-serif;
    position: absolute;
    bottom: 30px;
    left: 0;
    width: 100%;
    text-align: center;
    color: #ffffff;
    font-size: 18px;
    font-weight: normal;
    transition: all 0.3s ease;
    opacity: 0; /* Hide by default */
    transform: translateY(10px); /* Start slightly below final position */
}

body:not(.wp-admin) .social-item:hover .social-icon {
    transform: translateY(-10px);
}

body:not(.wp-admin) .social-item:hover .social-title {
    opacity: 1; /* Show on hover */
    transform: translateY(0); /* Move to final position */
}

body:not(.wp-admin) .social-item:hover .social-icon i {
    transform: scale(1.1);
}

/* Base styling for body to prevent horizontal scrollbars */
body:not(.wp-admin) {
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}

/* Base container for all screen sizes */
body:not(.wp-admin) .wp-block-dsn-social-cards {
    width: 100%;
    overflow: hidden;
    position: relative;
}

/* Desktop styles for 1017px+ - Full-width background with content container */
@media (min-width: 1017px) {
    /* Full-width background approach */
    .wp-block-dsn-social-cards {
        position: relative;
        width: 100vw;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding: 0;
        background-color: #1f315d;
        box-sizing: border-box;
    }
    
    /* Inner content container */
    .social-block {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        max-width: 1016px;
        margin: 0 auto;
        position: relative;
        z-index: 1;
    }
    
    /* Before/after pseudo-elements to extend the background */
    .wp-block-dsn-social-cards:before,
    .wp-block-dsn-social-cards:after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 4px;
        background-color: hsla(0, 0%, 100%, .2);
        z-index: 2;
    }
    
    .wp-block-dsn-social-cards:before {
        right: 100%;
    }
    
    .wp-block-dsn-social-cards:after {
        left: 100%;
    }
    
    /* Desktop-only borders using pseudo-elements */
    .social-block .social-item::before {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        height: 100%;
        width: 2px;
        background-color: hsla(0, 0%, 100%, .2);
        z-index: 2;
    }
    
    .social-block .social-item::after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: hsla(0, 0%, 100%, .2);
        z-index: 2;
    }
    
    /* Thicker left border for the first item in each row */
    .social-block .social-item:nth-child(4n-3)::before,
    .social-block .social-item:nth-child(4n-3)::after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 4px;
        background-color: hsla(0, 0%, 100%, .2);
        z-index: 2;
    }
    
    .social-block .social-item:nth-child(4n-3)::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 4px;
        background-color: hsla(0, 0%, 100%, .2);
        z-index: 2;
    }
    
    /* Thicker right border for the last item in each row */
    .social-block .social-item:nth-child(4n)::before {
        content: "";
        position: absolute;
        right: 0; /* Changed from left: 0 to right: 0 */
        top: 0;
        height: 100%;
        width: 4px;
        background-color: hsla(0, 0%, 100%, .2);
        z-index: 2;
    }
    
    /* Remove borders from the edges of the grid */
    .social-block .social-item:nth-last-child(-n+4)::after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 4px;
        background-color: hsla(0, 0%, 100%, .2);
        z-index: 2;
    }
}

/* Mobile styles for screens below 1017px */
@media (max-width: 1016px) {
    /* Full viewport width container */
    .wp-block-dsn-social-cards {
        position: relative;
        width: 100vw;
        max-width: none;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding: 0;
        background-color: #1f315d;
    }
    
    /* Extend background to the viewport edges */
    .wp-block-dsn-social-cards:before,
    .wp-block-dsn-social-cards:after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        width: 100vw;
        height: 100%;
        background-color: #1f315d;
        z-index: 0;
    }
    
    .wp-block-dsn-social-cards:before {
        right: 100%;
    }
    
    .wp-block-dsn-social-cards:after {
        left: 100%;
    }
    
    /* Container for social items */
    .social-block {
        width: 100vw;
        max-width: none;
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        box-sizing: border-box;
        position: relative;
        z-index: 1;
    }
    
    /* Force exact 2x2 grid */
    .social-item {
        flex: 0 0 50%;
        width: 50%;
        min-width: 0;
        max-width: 50%;
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        height: 200px;
    }
    
    /* Left border for YouTube and Instagram (odd items) */
    .social-block .social-item:nth-child(odd)::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 4px;
        background-color: hsla(0, 0%, 100%, .2);
        z-index: 2;
        display: block;
    }
    
    /* Right border for Twitter and LinkedIn (even items) */
    .social-block .social-item:nth-child(even)::before {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        height: 100%;
        width: 4px;
        background-color: hsla(0, 0%, 100%, .2);
        z-index: 2;
        display: block;
    }
    
    /* Force exact 2x2 grid with more specific selectors */
    body:not(.wp-admin) .social-block .social-item {
        flex: 0 0 50% !important;
        width: 50% !important;
        min-width: 0 !important;
        max-width: 50% !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        padding: 0 !important;
        height: 200px !important;
    }
    
    /* Make sure flex container properties are explicitly set */
    body:not(.wp-admin) .social-block {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
    }
}

@media (max-width: 480px) {
    .social-item {
        height: 150px;
        /* Ensure cards stay in a 2x2 grid even on very small screens */
        flex: 0 0 50%;
        width: 50%;
        min-width: 0;
        max-width: 50%;
    }
    
    /* Adjust icon size for very small screens */
    body:not(.wp-admin) .social-icon i {
        font-size: 36px;
    }
    
    /* Adjust title size and position for very small screens */
    body:not(.wp-admin) .social-title {
        font-size: 16px;
        bottom: 20px;
    }
    
    body:not(.wp-admin) .social-block .social-item {
        height: 150px !important;
        flex: 0 0 50% !important;
        width: 50% !important;
        min-width: 0 !important;
        max-width: 50% !important;
        display: flex !important;
        position: relative !important;
    }
    
    /* Prevent column display by specifying the flex container again */
    body:not(.wp-admin) .social-block {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        width: 100% !important;
    }
    
    /* Ensure first item in each row is always clear */
    body:not(.wp-admin) .social-block .social-item:nth-child(2n+1) {
        clear: left !important;
    }
    
    /* Adjust icon size for very small screens */
    body:not(.wp-admin) .social-icon i {
        font-size: 36px;
    }
    
    /* Adjust title size and position for very small screens */
    body:not(.wp-admin) .social-title {
        font-size: 16px;
        bottom: 20px;
    }
}

/* Fix for social cards block full-width display */

/* Enable overflow on main containers */
body, 
#page,
#content,
.site-content,
.entry-content {
    overflow-x: visible !important;
}

/* Fix the full-width behavior */
.wp-block-dsn-social-cards {
    position: relative;
    width: 100vw !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: none !important;
    box-sizing: border-box !important;
}

/* Ensure the social block gets proper width */
.wp-block-dsn-social-cards .social-block {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* Remove any unwanted right padding on the content area */
.site-content .content-area,
.site-main {
    padding-right: 0 !important;
    overflow-x: visible !important;
}

/* Ensure background extends */
.social-item:before,
.social-item:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100vw;
    z-index: -1;
}

.social-item:nth-child(odd):before,
.social-item:nth-child(odd):after {
    background-color: #1f315d;
}

.social-item:nth-child(even):before,
.social-item:nth-child(even):after {
    background-color: #4168a8;
}

.social-item:before {
    right: 100%;
}

.social-item:after {
    left: 100%;
}

/*# sourceMappingURL=style-index.css.map*/