/*
 Theme Name:     Born To Give Child Theme
 Theme URI:      https://demo.imithemes.com/born-to-give
 Description:    Born To Give Child Theme
 Author:         imithemes
 Author URI:     http://www.imithemes.com
 Template: 		 born-to-give
 Version:        1.0
*/

/* =Theme customization starts here
------------------------------------------------------- */

#main-container a,
[role="contentinfo"] a,
p a,
span a {
    text-decoration: underline;
}

/* Accessibility improvements for empty paragraphs and external links */
.accessibility-spacer {
    height: 1em;
    display: block;
    width: 100%;
    margin: 0.5em 0;
}

/* External link indicators */
.external-link-icon {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin-left: 4px;
    margin-right: 2px;
    vertical-align: text-top;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><path fill="%23666" d="M6 1h5v5L9.5 4.5 6 8 4 6l3.5-3.5L6 1z"/><path fill="%23666" d="M2 3v7h7V8.5L10.5 10v1H1V2h1L4.5 4.5 3 6 2 3z"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* High contrast mode support for external links */
@media (prefers-contrast: high) {
    .external-link-icon {
        background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><path fill="%23000" d="M6 1h5v5L9.5 4.5 6 8 4 6l3.5-3.5L6 1z"/><path fill="%23000" d="M2 3v7h7V8.5L10.5 10v1H1V2h1L4.5 4.5 3 6 2 3z"/></svg>');
    }
}

/* Focus styles for external links */
a:focus .external-link-icon {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><path fill="%23005fcc" d="M6 1h5v5L9.5 4.5 6 8 4 6l3.5-3.5L6 1z"/><path fill="%23005fcc" d="M2 3v7h7V8.5L10.5 10v1H1V2h1L4.5 4.5 3 6 2 3z"/></svg>');
}

/* Accessible read-more links styling */
.read-more-link {
    font-weight: 500;
    text-decoration: underline;
    transition: all 0.3s ease;
    display: inline-block;
    margin-left: 0.25em;
}

.read-more-link:hover,
.read-more-link:focus {
    text-decoration: none;
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

.read-more-link:focus {
    background-color: rgba(0, 95, 204, 0.1);
    border-radius: 2px;
    padding: 1px 3px;
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .read-more-link:focus {
        background-color: rgba(0, 0, 0, 0.1);
        outline-color: #000;
    }
}

/* WPBakery/VC compatibility fixes */
.vc_row {
    /* Ensure VC rows maintain their functionality */
    overflow: visible !important;
}

.vc_row[data-vc-full-width="true"] {
    /* Fix for full-width rows that might be affected by our changes */
    position: relative !important;
}

/* Don't apply our spacer styles inside VC elements */
.vc_row .accessibility-spacer,
.wpb_column .accessibility-spacer,
.vc_column_container .accessibility-spacer {
    display: none !important;
}

/* Ensure VC carousel/slider elements work correctly */
.wpb_carousel,
.vc_carousel,
.wpb_slider {
    /* Prevent our styles from interfering */
    transform: none !important;
    transition: none !important;
}

/* Fix focus indicators for VC elements to not break layout */
.vc_row a:focus,
.wpb_column a:focus,
.vc_column_container a:focus {
    outline-offset: 1px;
}

/* Dropdown button accessibility styles */
a[role="button"][aria-haspopup="true"] {
    cursor: pointer;
    position: relative;
}

/* Ensure dropdown buttons are focusable and styled properly */
a[role="button"][aria-haspopup="true"]:focus {
    outline: 2px solid #005fcc;
    outline-offset: 2px;
    background-color: rgba(0, 95, 204, 0.1);
}

/* Active/expanded dropdown button state */
a[role="button"][aria-expanded="true"] {
    background-color: rgba(0, 95, 204, 0.05);
}

/* Submenu positioning for dropdown buttons */
li:has(> a[role="button"]) .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 9999;
    min-width: 200px;
    display: none;
}

/* Show submenu when parent li has 'open' class */
li.open .sub-menu {
    display: block !important;
}

/* High contrast mode support for dropdown buttons */
@media (prefers-contrast: high) {
    a[role="button"][aria-haspopup="true"]:focus {
        outline-color: #000;
        background-color: rgba(0, 0, 0, 0.1);
    }
}

/* Screen reader only content */
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Google Maps iframe accessibility improvements */
iframe[src*="google.com/maps"] {
    border: 1px solid #ddd;
    border-radius: 4px;
}

iframe[src*="google.com/maps"]:focus {
    outline: 2px solid #005fcc;
    outline-offset: 2px;
}

/* Loading indicator for maps */
.map-loading-indicator {
    padding: 10px;
    text-align: center;
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin: 10px 0;
}

#header{
margin: 0 auto;
}
.kolorek {
    color: #ff5e98;
}
.site-logo {
    padding: 10px 0 10px;
    float: left;
}
.site-header {
background-color: rgba(0, 5, 217, 0.3)
}
#gallery-1 img {
    border: 0px solid !important;
}
.przycisk-program button {
    min-height: 200px;
    vertical-align: top !important;
}
.cd-timeline-block:last-child, .cd-timeline-content .the-excerpt p {
    margin-bottom: 10px;
    color: #FFFFFF;
}
.cd-timeline-img {
    background-color: #ff5e98!important;
}
.page-banner {
    background-color: #f16c6e !important;
}
.page-banner h1 {
    display: inline!important;
    background-color: rgba(0, 5, 217, 0.7);
    padding: 5px 10px 10px 10px;
}
.page-banner-text {
    bottom: 45px;
}
.cd-timeline-content h2 {
    font-size: 20px;
}
.cd-timeline-block:last-child, .cd-timeline-content .the-excerpt p {
    font-size: 13px;
    line-height: 150%;
}
.timeline-express-read-more-link {
    color: #333;
    font-size: 13px;
    text-align: right;
    float: right;
    padding-top: 10px;
}
.cd-timeline-item-title a:hover {
    color: #333;
}
.przycisk-program-hover-orange .vc-hoverbox-front {
    border: 1px solid #f0e530;
}
.przycisk-program-hover-red .vc-hoverbox-front {
    border: 1px solid #ff5e98;
}
.przycisk-program-hover .vc-hoverbox-front {
    border: 1px solid #76e8ff;
}
.przycisk-program-hover-orange:hover .vc_custom_heading, .przycisk-program-hover-red:hover .vc_custom_heading, .przycisk-program-hover:hover .vc_custom_heading {
    opacity: 0!important;
    -webkit-transition: opacity 0.24s ease-in-out;
    -moz-transition: opacity 0.24s ease-in-out;
    transition: opacity 0.24s ease-in-out;
}
.cd-timeline-content {
    margin-left: 0;
    top: 8px;
    padding: 0.5em 1em !important;
}
.page-id-6135 h2.vc_custom_heading:before, .page-id-6135 h2.vc_custom_heading:after, .page-id-6323 .vc_custom_heading:before, .page-id-6368 .vc_custom_heading:before, .page-id-6476 .vc_custom_heading:before, .page-id-7088 .vc_custom_heading:before,  .page-id-7088 .vc_custom_heading:after, .page-id-6368 .vc_custom_heading:after, .page-id-6323 .vc_custom_heading:after, .page-id-6476 .vc_custom_heading:after {
    display: none;
}
.page-id-6323 .vc_custom_heading h4:before, .page-id-6368 .vc_custom_heading h4:before, .page-id-6476 .vc_custom_heading h4:before, .page-id-7088 .vc_custom_heading h4:before,  .page-id-7088 .vc_custom_heading h4:after, .page-id-6368 .vc_custom_heading h4:after, .page-id-6323 .vc_custom_heading h4:after, .page-id-6476 .vc_custom_heading h4:after {
    display: none;
}
.page-id-6368 .vc_custom_heading, .page-id-6323 .vc_custom_heading, .page-id-6476 .vc_custom_heading, .page-id-7088 .vc_custom_heading {
    margin-bottom: 10px;
}
.page-id-6368 .vc_gitem-animated-block, .page-id-6323 .vc_gitem-animated-block, .page-id-6476 .vc_gitem-animated-block, .page-id-7088 .vc_gitem-animated-block  {
    width: 40%;
}
.page-id-6368 .vc_btn3-container, .page-id-6323 .vc_btn3-container, .page-id-6476 .vc_btn3-container, .page-id-7088 .vc_btn3-container{
    display: none;
}
.page-id-134 .vc_custom_heading:before, .page-id-134 .vc_custom_heading:after {
    display: none;
}
.featured-link {
    padding: 10px 30px 0;
    min-height: 80px;
}
.featured-link:hover {
    color: #ffffff!important;
}
.vc-hoverbox-inner {
    min-height: 150px !important;
}
h4 {
    position: relative;
    margin-bottom: 40px;
}
h4::after {
    display: none
}
h4::before {
    display: none
}
@media only screen and (min-width: 822px) {

   .cd-timeline-block {
      margin: -2.0em 0;
   }

   .cd-timeline-block:first-child {
      margin-top: 0;
   }
      .cd-timeline-block {
      min-height: 130px;
   }
   .form-wychodne {
      max-width: 800px;
      margin: 0 auto;
   }

}
/* ACCESSIBILITY FIX: Restore form labels visibility - WCAG 1.3.1, 3.3.2 */
.nf-field-label {
    display: block !important; /* Critical: labels must be visible for screen readers */
    margin-bottom: 5px !important;
    font-weight: 600 !important;
    color: #333 !important;
}
.nf-field-label label {
    font-weight: 600 !important;
    color: #333 !important;
    display: block !important;
}
.nf-form-fields-required {
    display: none;
}
.wpb_gmaps_widget {
    margin-bottom: 0px;
}
.cta-fw h2 {
    margin-bottom: 0;
    letter-spacing: 0.5px;
}
.page-banner {
    background-image: url(/wp-content/uploads/2018/05/aktualnosci-header.jpg) !important;
}
.page-id-6165 .page-banner {
    background-image: url(/wp-content/uploads/2020/01/fundacja-rozwoju-dzieci-1-procent-3.jpg) !important;
    background-position: right center; 
}
.page-id-7830 .page-banner {
    background-image: url(/wp-content/uploads/2021/03/dzieci-maja-wychodne-background.png) !important;
    background-position: bottom center; 
}
.page-id-7333 .page-banner {
    background-image: none !important;
    min-height: 150px !important;
}
.page-id-7333 .page-banner .block-title {
    margin-bottom: 0px;
}
.home .hero-area {
    min-height: 100px;
    position: relative;
}
.grecaptcha-badge{opacity: 0.01;}

.vc_tta-panel-heading h4::before, .vc_tta-panel-heading h4::after {
    display: none;
}
.zakladka-zolta .vc_tta-panel-heading {
    border-radius: 0px!important;
    background-color: #f0e530!important;
}
.zakladka-niebieska .vc_tta-panel-heading {
    border-radius: 0px!important;
    background-color: #76e8ff!important;
}
.zakladka-czerwona .vc_tta-panel-heading {
    border-radius: 0px!important;
    background-color: #ff5e98!important;
}
.zakladka-zolta .vc_tta-title-text, .zakladka-niebieska .vc_tta-title-text, .zakladka-czerwona .vc_tta-title-text  {
    color: #ffffff!important;
}
.wpb-js-composer .vc_tta.vc_general .vc_tta-tab > a {
    height: 75px;
    border-width: 0px!important;
    font-family: "Playfair Display";
}
.wpb-js-composer .vc_tta.vc_tta-spacing-1 .vc_tta-tab {
    vertical-align: top;
}
.wpb-js-composer .vc_tta.vc_tta-style-classic.vc_tta-tabs .vc_tta-panels {
    border: 0px solid transparent!important;
}
.dd-menu > li > ul > li > a, .dd-menu > li > ul > li > ul > li > a, .dd-menu > li > ul > li > ul > li > ul > li > a {
    border-bottom: 1px solid rgba(0,0,0,.05) !important;
}
.menu-1-procent a {
    color: #ff5e98 !important;
    font-weight: bold !important;
}
.vc_btn3.vc_btn3-color-juicy-pink, .vc_btn3.vc_btn3-color-juicy-pink.vc_btn3-style-flat {
    color: #fff;
    background-color: #ff5e98!important;
}
.page-id-7830 .vc_custom_heading:before {
    display:none;
}
.page-id-7830 h4::before, .page-id-7830 h4::after {
    background: #0005d9!important;
}
.page-banner .block-title:before, .page-banner .block-title:after {
    display: none!important;
}
.topbar .social-icons a:hover, .topmenu a:hover {
    color: #0005d9;
}
.form-wychodne input[type="text"], .form-wychodne input[type="password"], .form-wychodne input[type="email"], .form-wychodne input[type="url"], .form-wychodne input[type="date"], .form-wychodne input[type="month"], .form-wychodne input[type="time"], .form-wychodne input[type="datetime"], .form-wychodne input[type="datetime-local"], .form-wychodne input[type="week"], .form-wychodne input[type="number"], .form-wychodne input[type="search"], .form-wychodne input[type="tel"], .form-wychodne input[type="color"], .form-wychodne textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    background: #fff;
    border-radius: 0;
    border-style: solid;
    border-width: 0.1rem;
    box-shadow: none;
    display: block;
    font-size: 16px;
    font-weight: 300;
    letter-spacing: -.015em;
    margin: 0;
    max-width: 100%;
    padding: 1.5rem 1rem;
    width: 100%;
    margin-top: 15px;
}
.form-wychodne textarea {
    padding: 1rem 1rem!important;
    height: 120px!important;
    margin-top: 0px!important;
}
.form-wychodne .wp-block-columns.wp-block-columns {
    gap: 2.0rem;
}
.form-wychodne p {
   font-weight: 300;
   font-size: 14px;
   margin: 0!important;
}
.form-wychodne .wp-block-column {
    align-self: center;
}
.form-wychodne .wpb_content_element {
    margin-bottom: 20px;
    margin-top: 35px;
}
.form-wychodne .wpcf7-list-item {
    display: block!important;
}
.form-wychodne .wpcf7-radio {
       width: 100%!important;
}
.form-wychodne .wpcf7-list-item-label {
   font-weight: 300;
   font-size: 14px;
}
.form-wychodne .wpcf7-free-text {
   padding: 0.7rem!important;
   margin-top: 5px!important;
}
.form-wychodne input.wpcf7-form-control.wpcf7-submit {
display: block;
margin: 0 auto;
width: 40%;
}
@media only screen and (max-width: 782px) {
.form-wychodne .wp-block-columns.wp-block-columns {
    gap: 0rem;
}}

/* contrast fixes for WP Bakery elements */
.wpb_wrapper span {
    opacity: 1;
}

.uvc-sub-heading span[style*="color: #03b5aa;"] {
    color: #038674 !important;
}

.home_row_count .vc_col-sm-6 .uvc-sub-heading {
    font-family: Roboto;
    font-size: 24px;
    font-weight: 500 !important;
    padding: 31px 0;
}

.meta-data {
    color: #333;
}

.footer_widget, .site-footer .footer_widget a {
    color: #A29898;
}

.home_partnerzy p {
    font-family: Roboto;
    font-weight: 700;
    font-style: normal;
    text-align: center;
    margin-top: 35px;
    font-size: 18px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.post-6056 p[align="justify"] {
    text-align: left;
}
.post-11204 li,
.post-11204 p {
    text-align: left !important;
}

.form-wychodne input {
    margin-top: 0 !important;
    margin-bottom: 15px !important;
}    

#menu-toggle {
    background-color: transparent;
    border-color: transparent
}

@media only screen and (max-width: 992px) {
    .dd-menu {
        top: 0;
    }
}