/*
 Theme Name: Bam Bam Diving
 Theme URI: https://redearth.agency/
 Description: Child theme for Bam Bam Diving Parent Theme
 Author: Red Earth Designs
 Author URI: https://redearth.agency/
 Template: briny
 Version: 1.0.0
 License: GNU General Public License v2 or later
 License URI: http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain: bam-bam-diving
*/

html, body {
	margin: 0;
	padding: 0;
	width: 100%;
}

/* make header row align children to full height */
.top_panel .sc_layouts_row .elementor-container {
align-items: stretch;
}

/* make each column a flex container that stretches its widgets */
.top_panel .sc_layouts_row .elementor-column {
display: flex;
}
.top_panel .sc_layouts_row .elementor-column > .elementor-widget-wrap {
display: flex;
align-items: stretch;
}

/* target the right column and the button widget chain */
.elementor-element-10ee9edd .elementor-widget-wrap {
height: 100%;
}
.elementor-element-6f14da44,
.elementor-element-6f14da44 .elementor-widget-container,
.elementor-element-6f14da44 .sc_button_wrap,
.elementor-element-6f14da44 .sc_button {
display: flex;
align-items: stretch;
height: 100%;
}

/* make the anchor fill height and center the label */
.elementor-element-6f14da44 .sc_button a {
display: flex;
align-items: center;
height: 100%;
padding-top: 0;
padding-bottom: 0;
}

/* optional, give the header a dependable height */
.top_panel .sc_layouts_row.sc_layouts_row_type_compact {
min-height: 68px;
}

/* ensure inner spans are vertically centered */
.elementor-element-6f14da44 .sc_button a,
.elementor-element-6f14da44 .sc_button_text {
  display: flex;
  align-items: center;
  justify-content: center; /* centers text horizontally too */
  height: 100%;
  width: 100%;
}

.elementor-element-6f14da44 .sc_button_title {
  display: flex;
  align-items: center;
  height: 100%;
  font-size: 16px !important;
  letter-spacing: 1.5px;
}



.elementor-element-855ac7c,
.elementor-element-855ac7c .elementor-widget-container,
.elementor-element-855ac7c .sc_button_wrap,
.elementor-element-855ac7c .sc_button {
display: flex;
align-items: stretch;
height: 100%;
}


/* make the anchor fill height and center the label */
.elementor-element-855ac7c .sc_button a {
display: flex;
align-items: center;
height: 100%;
padding-top: 0;
padding-bottom: 0;
}

/* ensure inner spans are vertically centered */
.elementor-element-855ac7c .sc_button a,
.elementor-element-855ac7c .sc_button_text {
  display: flex;
  align-items: center;
  justify-content: center; /* centers text horizontally too */
  height: 100%;
  width: 100%;
}

.elementor-element-855ac7c .sc_button_title {
  display: flex;
  align-items: center;
  height: 100%;
  font-size: 16px !important;
  letter-spacing: 1.5px;
}

.sc_layouts_row_type_compact .elementor-widget-trx_sc_layouts_search {
  border: none !important;
}


/* base state: teal */
.scheme_dark .sc_button_hover_style_link3.sc_button_hover_slide_left {
  background: linear-gradient(to right, #24abb1 50%, #15687a 50%) no-repeat !important;
  background-size: 200% 100% !important;
  background-position: 100% 0 !important; /* teal side visible */
  transition: background-position 0.35s ease !important;
  color: #fff !important;
}

/* hover state: slide to green */
.scheme_dark .sc_button_hover_style_link3.sc_button_hover_slide_left:hover {
  background-position: 0 0 !important; /* reveal green half */
  color: #fff !important;
}

/* target the menu widget container */
.elementor-element-401fd86a .elementor-widget-container {
  display: flex;
  justify-content: center; /* horizontal centering */
}

/* optional: ensure the ul doesn’t override alignment */
.elementor-element-401fd86a .sc_layouts_menu_nav {
  margin: 0 auto;
}

/* force logo left-aligned within its column */
.elementor-10 .elementor-element.elementor-element-457b575e > .elementor-widget-container {
    text-align: left;
}

/* Ensure consistent logo size across all pages */
.custom-logo-link,
.sc_layouts_logo {
    font-size: 1em !important; /* Adjust this value to match your desired size */
}

/* Ensure logo container has consistent styling */
.sc_layouts_column_1_3 .sc_layouts_item {
    display: flex;
    align-items: center;
}

.scheme_dark .sc_layouts_menu_nav>li>a:hover,.scheme_dark .sc_layouts_menu_nav>li.sfHover>a {
    color: #15687a !important
}

.sc_layouts_row .sc_layouts_item {
    margin: 0 !important;
}

/* remove header row padding */
.top_panel .sc_layouts_row.sc_layouts_row_type_compact {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  align-items: stretch !important;
}

/* Generic social widget styling that won't break with changing IDs */
.widget_socials,
.widget_socials .socials_wrap,
.elementor-widget-trx_widget_socials,
.elementor-widget-trx_widget_socials .elementor-widget-container,
.elementor-widget-trx_widget_socials .elementor-widget-wrap {
  margin: 0 !important;
  padding: 0 !important;
  height: 100% !important;
  display: flex !important;
  align-items: stretch !important;
}

/* Make each social link fill full height of the header column */
.widget_socials .social_item,
.elementor-widget-trx_widget_socials .social_item {
  flex: 1 1 auto;
  display: flex;
  align-items: stretch;
  justify-content: center;
  height: 100% !important;
  aspect-ratio: 1 / 1; /* keeps them square */
}

/* Additional fixes to eliminate all gaps around social icons */
.widget_socials .social_item a,
.elementor-widget-trx_widget_socials .social_item a {
  display: flex !important;
  align-items: stretch !important;
  justify-content: center !important;
  height: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
}.widget_socials .social_item .social_icon,
.elementor-widget-trx_widget_socials .social_item .social_icon {
  margin: 0 !important;
  padding: 0 !important;
  height: 100% !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important; /* Adjust size to match header text */
  line-height: 1 !important;
}

/* Ensure the social icons container has no gaps */
.elementor-widget-trx_widget_socials .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
  height: 100% !important;
  display: flex !important;
  align-items: stretch !important;
}

/* Remove any default margins from the social widget itself */
.elementor-widget-trx_widget_socials {
  margin: 0 !important;
  padding: 0 !important;
  height: 100% !important;
}

/* Ensure the social icons column stretches to full height */
.elementor-widget-trx_widget_socials .elementor-column {
  height: 100% !important;
  display: flex !important;
  align-items: stretch !important;
}

.elementor-widget-trx_widget_socials .elementor-widget-wrap {
  height: 100% !important;
  display: flex !important;
  align-items: stretch !important;
}

/* More aggressive targeting to eliminate bottom gap */
.widget_socials,
.widget_socials .socials_wrap,
.elementor-widget-trx_widget_socials,
.elementor-widget-trx_widget_socials .elementor-widget-container,
.elementor-widget-trx_widget_socials .elementor-widget-wrap,
.elementor-widget-trx_widget_socials .elementor-column {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  min-height: 100% !important;
  height: 100% !important;
  max-height: none !important;
}

/* Target the social items more aggressively */
.widget_socials .social_item,
.widget_socials .social_item a,
.widget_socials .social_item .social_icon,
.elementor-widget-trx_widget_socials .social_item,
.elementor-widget-trx_widget_socials .social_item a,
.elementor-widget-trx_widget_socials .social_item .social_icon {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  min-height: 100% !important;
  height: 100% !important;
  max-height: none !important;
  line-height: 1 !important;
  vertical-align: top !important;
}

/* Force the social icons to extend to the very bottom */
.widget_socials .socials_wrap,
.elementor-widget-trx_widget_socials .socials_wrap {
  position: relative !important;
}

.widget_socials .social_item,
.elementor-widget-trx_widget_socials .social_item {
  position: relative !important;
  bottom: 0 !important;
}

/* Override any potential Elementor default styles */
.elementor-widget-trx_widget_socials .elementor-widget-container,
.elementor-widget-trx_widget_socials .elementor-widget-wrap {
  margin: 0 !important;
  padding: 0 !important;
  height: 100% !important;
  min-height: 100% !important;
}

/* Eliminate any blue-green line below social icons */
.widget_socials,
.widget_socials .socials_wrap,
.elementor-widget-trx_widget_socials,
.elementor-widget-trx_widget_socials .elementor-widget-container,
.elementor-widget-trx_widget_socials .elementor-widget-wrap,
.elementor-widget-trx_widget_socials .elementor-column {
  border: none !important;
  border-bottom: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: none !important;
}

/* Target the social items to remove any borders/lines */
.widget_socials .social_item,
.widget_socials .social_item a,
.widget_socials .social_item .social_icon,
.elementor-widget-trx_widget_socials .social_item,
.elementor-widget-trx_widget_socials .social_item a,
.elementor-widget-trx_widget_socials .social_item .social_icon {
  border: none !important;
  border-bottom: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: none !important;
}

/* Remove any potential pseudo-elements that might create lines */
.widget_socials::after,
.widget_socials::before,
.widget_socials .socials_wrap::after,
.widget_socials .socials_wrap::before,
.elementor-widget-trx_widget_socials::after,
.elementor-widget-trx_widget_socials::before,
.elementor-widget-trx_widget_socials .elementor-widget-container::after,
.elementor-widget-trx_widget_socials .elementor-widget-container::before {
  display: none !important;
  content: none !important;
  border: none !important;
  background: none !important;
}

/* Target the specific Elementor widget to remove any default styling */
.elementor-element-0cd1395.elementor-widget-trx_widget_socials {
  border: none !important;
  border-bottom: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: none !important;
}

 .elementor-element-0cd1395.elementor-widget-trx_widget_socials .elementor-widget-container {
   border: none !important;
   border-bottom: none !important;
   outline: none !important;
   box-shadow: none !important;
   background: none !important;
 }

/* Button styling for scheme_default */
.scheme_default .sc_button_hover_slide_left {
	background: linear-gradient(to right, #306778 50%, #50a9af 50%) no-repeat !important;
	background-size: 200% 100% !important;
	background-position: 0 0 !important; /* Start with darker color visible */
	transition: background-position 0.3s ease !important;
}

.scheme_default .sc_button_hover_slide_left:hover {
	background-position: 100% 0 !important; /* Slide to lighter color on hover */
}

/* Override webkit default link styling for specific elements */
.scheme_default .post_item .post_title a:-webkit-any-link {
	color: inherit !important;
	text-decoration: none !important;
}

/* Post categories styling */
.scheme_default .post_meta_item.post_categories, 
.scheme_default .post_meta_item.post_categories a {
	color: #50a9af !important;
	text-decoration: none !important;
}

.scheme_default .post_meta_item.post_categories a:hover {
	color: #306778 !important;
	text-decoration: none !important;
}

/* Blog post title hover styling */
.scheme_default .post_item .post_title a:hover {
	color: #306778 !important;
	text-decoration: none !important;
}

/* Active navigation link styling */
.scheme_dark .sc_layouts_menu_nav>li.current-menu-item>a, 
.scheme_dark .sc_layouts_menu_nav>li.current-menu-parent>a, 
.scheme_dark .sc_layouts_menu_nav>li.current-menu-ancestor>a {
	color: #ffffff !important;
}

/* Instagram feed styling */
#sb_instagram {
	padding: 0 !important;
	margin: 0 !important;
}

#sb_instagram .sbi_photo {
	aspect-ratio: 1 / 1 !important;
	overflow: hidden !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#sb_instagram .sbi_photo img {
	height: 100% !important;
	width: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block !important;
}

#sb_instagram .sbi_photo_wrap {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

/* Redearth footer link styling */
.redearth {
	color: #50a9af !important;
	text-decoration: none !important;
	transition: color 0.3s ease !important;
}

.redearth:hover {
	color: #306778 !important;
	text-decoration: none !important;
}

/* Author Profile Picture - Circular with padding */
.author_info .author_avatar {
	padding-right: 10px !important;
    left: 40px;
}

.author_info .author_avatar img,
.author_info .author_avatar .avatar,
.author_avatar img.avatar {
	border-radius: 50% !important;
	overflow: hidden !important;
}

/* Social Media Icons - Brand Colors - HEADER ONLY */
/* Facebook - Official Blue - Header only */
.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon.social_icon_facebook,
.scheme_default .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon.social_icon_facebook {
	background-color: #1877F2 !important;
	color: #ffffff !important;
	transition: background-color 0.3s ease !important;
}

.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item:hover .social_icon.social_icon_facebook,
.scheme_default .sc_layouts_row_type_compact .socials_wrap .social_item:hover .social_icon.social_icon_facebook {
	background-color: #3B5998 !important;
	color: #ffffff !important;
}

/* Instagram - Custom Color - Header only */
.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon.social_icon_instagramm,
.scheme_default .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon.social_icon_instagramm {
	background-color: #C13584 !important;
	color: #ffffff !important;
	transition: background-color 0.3s ease !important;
}

.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item:hover .social_icon.social_icon_instagramm,
.scheme_default .sc_layouts_row_type_compact .socials_wrap .social_item:hover .social_icon.social_icon_instagramm {
	background-color: #E1306C !important;
	color: #ffffff !important;
}

/* YouTube - Red - Header only */
.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon.social_icon_youtube,
.scheme_default .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon.social_icon_youtube {
	background-color: #dc2626 !important;
	color: #ffffff !important;
	transition: background-color 0.3s ease !important;
}

.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item:hover .social_icon.social_icon_youtube,
.scheme_default .sc_layouts_row_type_compact .socials_wrap .social_item:hover .social_icon.social_icon_youtube {
	background-color: #ef4444 !important;
	color: #ffffff !important;
}

/* Override any existing social icon background colors - HEADER ONLY */
.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon {
	background-color: transparent !important;
}

/* Ensure header social icons have white text and proper centering - HEADER ONLY */
.scheme_default header .sc_layouts_row_type_compact .social_item .social_icon,
.scheme_default header .sc_layouts_row_type_compact .social_item .social_icon span,
.scheme_default header .sc_layouts_row_type_compact .social_item .social_icon i,
.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon,
.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon span,
.scheme_default header .sc_layouts_row_type_compact .socials_wrap .social_item .social_icon i {
	color: #ffffff !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
}

/* Responsive Header Layout - Tablet Range - Override parent theme */
@media (min-width: 480px) and (max-width: 1550px) {
    .elementor-10 .elementor-element.elementor-element-7f5e82ab {
        width: 75% !important;
    }
    
    .elementor-10 .elementor-element.elementor-element-10ee9edd {
        width: 25% !important;
    }
    
    /* Make logo smaller on tablets - More specific targeting */
    .elementor-10 .elementor-element.elementor-element-457b575e .logo_image,
    .elementor-10 .elementor-element.elementor-element-457b575e .custom-logo,
    .elementor-10 .elementor-element.elementor-element-457b575e img {
        max-height: 60px !important;
        height: auto !important;
        width: auto !important;
    }
    
    /* Adjust logo container padding - More specific targeting */
    .elementor-10 .elementor-element.elementor-element-457b575e > .elementor-widget-container,
    .elementor-10 .elementor-element.elementor-element-457b575e .elementor-widget-container {
        padding: 0px 20px 0px 20px !important;
        margin: 0 !important;
    }
}



/* Responsive H1 sizing */
@media (max-width: 768px) {
    .elementor-kit-237 h1 {
        font-size: 60px !important;
    }
}

@media (max-width: 480px) {
    .elementor-kit-237 h1 {
        font-size: 36px !important;
    }
}

@media (max-width: 478px) {
    .content_wrap, .content_container {
        width: 440px !important;
    }
}

/* Override parent theme's 280px rule from __responsive.css - Higher specificity */
@media (max-width: 479px) {
    body .content_wrap, 
    body .content_container,
    .page .content_wrap,
    .page .content_container,
    .single .content_wrap,
    .single .content_container,
    .archive .content_wrap,
    .archive .content_container {
        width: 440px !important;
        max-width: 440px !important;
    }
}

@media (max-width: 479px) {
    .mobile_device .menu_mobile .sc_layouts_logo img, .mobile_layout .menu_mobile .sc_layouts_logo img {
        max-height: 150px !important;
    }
    
    /* Override parent theme container width for internal pages */
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 440px !important;
    }
}

/* Fixed Mobile Contribute Button - Left Side */
@media (max-width: 768px) {
    .mobile-contribute-fixed {
        position: fixed !important;
        left: 20px !important;
        bottom: 30px !important;
        z-index: 9999 !important;
        background: #50a9af !important;
        color: #ffffff !important;
        padding: 12px 20px !important;
        border-radius: 25px !important;
        font-weight: 600 !important;
        font-size: 14px !important;
        text-decoration: none !important;
        box-shadow: 0 4px 15px rgba(80, 169, 175, 0.3) !important;
        transition: all 0.3s ease !important;
        display: block !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
    }
    
    .mobile-contribute-fixed:hover {
        background: #3d8b91 !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 6px 20px rgba(80, 169, 175, 0.4) !important;
        color: #ffffff !important;
    }
    
    .mobile-contribute-fixed:active {
        transform: translateY(0) !important;
    }
}

/* Instagram feed mobile styling - Higher specificity */
@media (max-width: 480px) {
    #sb_instagram.sbi_col_10 #sbi_images .sbi_item, 
    #sb_instagram.sbi_col_3 #sbi_images .sbi_item, 
    #sb_instagram.sbi_col_4 #sbi_images .sbi_item, 
    #sb_instagram.sbi_col_5 #sbi_images .sbi_item, 
    #sb_instagram.sbi_col_6 #sbi_images .sbi_item, 
    #sb_instagram.sbi_col_7 #sbi_images .sbi_item, 
    #sb_instagram.sbi_col_8 #sbi_images .sbi_item, 
    #sb_instagram.sbi_col_9 #sbi_images .sbi_item {
        width: 100% !important;
    }
}

/* Force override for all screen sizes - Target all column layouts */
#sb_instagram.sbi_col_5 #sbi_images .sbi_item,
#sb_instagram.sbi_col_3 #sbi_images .sbi_item,
#sb_instagram.sbi_col_4 #sbi_images .sbi_item,
#sb_instagram.sbi_col_6 #sbi_images .sbi_item,
#sb_instagram.sbi_col_7 #sbi_images .sbi_item,
#sb_instagram.sbi_col_8 #sbi_images .sbi_item,
#sb_instagram.sbi_col_9 #sbi_images .sbi_item,
#sb_instagram.sbi_col_10 #sbi_images .sbi_item {
    width: 100% !important;
}

/* Additional targeting for mobile screens */
@media (max-width: 480px) {
    #sb_instagram #sbi_images .sbi_item {
        width: 100% !important;
    }
}

/* Force override any plugin CSS - Highest specificity */
@media (max-width: 767px) {
    #sb_instagram.sbi_col_10 #sbi_images .sbi_item,
    #sb_instagram.sbi_col_3 #sbi_images .sbi_item,
    #sb_instagram.sbi_col_4 #sbi_images .sbi_item,
    #sb_instagram.sbi_col_5 #sbi_images .sbi_item,
    #sb_instagram.sbi_col_6 #sbi_images .sbi_item,
    #sb_instagram.sbi_col_7 #sbi_images .sbi_item,
    #sb_instagram.sbi_col_8 #sbi_images .sbi_item,
    #sb_instagram.sbi_col_9 #sbi_images .sbi_item {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
}

/* Blog Archive Category Filter - Exact Briny Theme CSS */
.sc_item_filters {
    margin-top: 60px;
    margin-bottom: 43px;
}

.sc_item_filters_tabs a.active {
    border: none;
}

.sc_item_filters_tabs li {
    padding: 0 4px !important;
    margin-bottom: 10px;
}

.sc_item_filters_tabs a {
    font-size: 14px;
    line-height: 61px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    height: 61px;
    background-color: #f8f8f8;
    padding: 0 35px;
    display: inline-block;
    border: 2px solid #e8e8e8;
    color: #666666;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
}

.sc_item_filters_tabs a:hover {
    background-color: #50a9af;
    color: #ffffff;
    border-color: #50a9af;
}

.sc_item_filters_tabs a.active {
    background-color: #50a9af;
    color: #ffffff;
    border-color: #50a9af;
}

/* Custom Team Widget Redesign - Horizontal Layout */
.sc_team_default .sc_team_item {
    background: #ffffff;
    border-radius: 0;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
    transition: all 0.4s ease;
    border: 1px solid #f0f0f0;
    position: relative;
    display: flex;
    align-items: center;
    padding: 50px;
    gap: 50px;
    overflow: hidden;
    margin-top: 100px;
}

.sc_team_default .sc_team_item:hover {
    /* Removed hover effects */
}

.sc_team_default .sc_team_item_thumb {
    flex-shrink: 0;
    position: relative;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    overflow: hidden;
    border: none;
    transition: none;
}

.sc_team_default .sc_team_item:hover .sc_team_item_thumb {
    /* Removed hover effects */
}

.sc_team_default .sc_team_item_thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: none;
}

.sc_team_default .sc_team_item:hover .sc_team_item_thumb img {
    /* Removed hover effects */
}

.sc_team_default .sc_team_item_thumb .trx_addons_hover_mask {
    display: none;
}

.sc_team_default .sc_team_item_info {
    flex: 1;
    padding: 0;
    text-align: left;
    background: transparent;
    position: relative;
}

.sc_team_default .sc_team_item_info:before {
    display: none;
}

.sc_team_default .sc_team_item_title {
    margin: 0 0 8px 0;
    font-size: 30px;
    font-weight: 700;
    color: #2c3e50;
    line-height: 1.3;
}

.sc_team_default .sc_team_item_title a {
    color: inherit;
    text-decoration: none;
    transition: all 0.3s ease;
}

.sc_team_default .sc_team_item_title a:hover {
    color: #50a9af;
}

.sc_team_default .sc_team_item_subtitle {
    font-size: 15px;
    font-weight: 500;
    color: #50a9af;
    margin: 0 0 12px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.sc_team_default .sc_team_item_content {
    font-size: 14px;
    line-height: 1.6;
    color: #6c757d;
    margin: 0 0 15px 0;
    white-space: normal;
    word-wrap: break-word;
    overflow: visible;
    text-overflow: unset;
    display: block;
}

/* Remove links from team members and show brief info */
.sc_team_default .sc_team_item_title a {
    pointer-events: none;
    cursor: default;
}

.sc_team_default .sc_team_item_thumb a {
    pointer-events: none;
    cursor: default;
}

/* Style for brief info content */
.sc_team_default .sc_team_item_brief_info {
    font-size: 15px;
    line-height: 1.7;
    color: #555555;
    margin: 15px 0 20px 0;
    font-style: italic;
    white-space: normal;
    word-wrap: break-word;
    overflow: visible;
    text-overflow: unset;
    display: block;
}

.sc_team_default .sc_team_item_socials {
    position: static;
    display: flex;
    gap: 8px;
    opacity: 1;
    transform: none;
    margin-top: 10px;
}

/* Instagram handle styling - ONLY for team/contributor social items */
.sc_team_default .sc_team_item_socials .social_item,
.sc_team_default .sc_team_item .social_item,
.sc_team .sc_team_item_socials .social_item,
.sc_team .sc_team_item .social_item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
}

.sc_team_default .sc_team_item_socials .social_item .social_icon {
    width: 64px;
    height: 64px;
    line-height: 64px;
    font-size: 28px;
    background: #f8f9fa;
    color: #50a9af;
    border-radius: 50%;
    transition: all 0.3s ease;
    border: none;
    flex-shrink: 0;
}

.sc_team_default .sc_team_item_socials .social_item:hover .social_icon {
    background: #50a9af;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(80, 169, 175, 0.3);
}

/* Instagram handle text - ONLY for team/contributor sections */
.sc_team_default .sc_team_item_socials .social_item .instagram-handle,
.sc_team_default .sc_team_item .social_item .instagram-handle,
.sc_team .sc_team_item_socials .social_item .instagram-handle,
.sc_team .sc_team_item .social_item .instagram-handle {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #2c3e50 !important;
    transition: color 0.3s ease !important;
    white-space: nowrap !important;
    display: inline-block !important;
}

.sc_team_default .sc_team_item_socials .social_item:hover .instagram-handle,
.sc_team_default .sc_team_item .social_item:hover .instagram-handle,
.sc_team .sc_team_item_socials .social_item:hover .instagram-handle,
.sc_team .sc_team_item .social_item:hover .instagram-handle {
    color: #50a9af !important;
}

/* Team Section Title Styling */
.sc_team .sc_team_title {
    text-align: center;
    margin-bottom: 60px;
}

.sc_team .sc_team_title .sc_team_title_text {
    font-size: 48px;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 20px;
    position: relative;
}

.sc_team .sc_team_title .sc_team_title_text:after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: linear-gradient(90deg, #50a9af, #3a8a8f);
    border-radius: 2px;
}

.sc_team .sc_team_subtitle {
    font-size: 18px;
    color: #7f8c8d;
    margin: 0;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Responsive Team Widget */
@media (max-width: 768px) {
    .sc_team_default .sc_team_item {
        flex-direction: column;
        text-align: center;
        padding: 40px 30px;
        gap: 30px;
        margin-top: 60px;
    }
    
    .sc_team_default .sc_team_item_thumb {
        width: 200px;
        height: 200px;
    }
    
    .sc_team_default .sc_team_item_info {
        text-align: center;
    }
    
    .sc_team_default .sc_team_item_title {
        font-size: 24px;
    }
    
    .sc_team_default .sc_team_item_subtitle {
        font-size: 14px;
    }
    
    .sc_team_default .sc_team_item_content {
        font-size: 13px;
    }
    
    .sc_team .sc_team_title .sc_team_title_text {
        font-size: 36px;
    }
    
    .sc_team_default .sc_team_item_socials {
        justify-content: center;
    }
}

/* Images */
img {
	max-width: 100%;
	height: auto;
	vertical-align:top;
}

.page_content_wrap {
	padding-top: 5.9rem;
	padding-bottom: 6.2rem;
}



/* Widget Categories */
.widget_categories{
	> ul{
		padding:23px 46px;
		background-color: white;
		.cat-item{
			@include font(14px,26px, 800);
			text-transform: uppercase;
		}
	}
}
.sidebar .wp-block-latest-posts__list.wp-block-latest-posts {
	padding:21px 25px 24px 46px;
}
.widget_archive,
.widget_pages,
.widget_meta,
.widget_recent_entries,
.widget_rss {
	> ul{
		padding:21px 25px 24px 46px;
		background-color: white;
	}
}
.widget.widget_block {
	.wp-block-archives:not(.wp-block-archives-dropdown),
	.wp-block-categories,
	.wp-block-latest-comments,
	.wp-block-latest-posts,
	.wp-block-page-list,
	.wp-block-rss {
		padding: 21px 25px 24px 46px;
		background-color: white;
	}

	.wp-block-archives.wp-block-archives-dropdown,
	.wp-block-categories.wp-block-categories-dropdown,
	.wp-block-calendar,
	.wp-block-social-links,
	.wp-block-tag-cloud,
	.wp-block-loginout,
	.wp-block-latest-comments,
	.wp-block-gallery,
	.wp-block-video,
	.wp-block-audio{
		padding: 21px 25px 24px;
		background-color: white;
	}

	.wp-block-calendar {
		.wp-calendar-table,
		.wp-calendar-nav {
			padding: 0;
		}
	}

	.wp-block-group {
		.wp-block-search {
			padding: 21px 25px 24px;
			background-color: white;
			max-width: 100%;
			box-sizing: border-box;

			&:not(:first-of-type) {
				padding-top: 0;
			}
		}
	}
}
.footer_wrap {
	.widget.widget_block {
		.wp-block-search {
			padding: 21px 25px 24px;
			background-color: white;
			max-width: 100%;
			box-sizing: border-box;
		}
	}
}

.widget_text .textwidget{
	padding:30px;
}

.elementor-widget-container .widget_text .textwidget{
	padding:0;
}

.widget_nav_menu ul:not(.sub-menu){
	padding:21px 25px 24px 46px;
	background-color: white;
	.footer_wrap &{
		padding:21px 25px 24px 46px;
		ul{
			padding-left: 0.7em;
		}
	}
}


.wp-block-archives-list li,
.wp-block-categories-list li,
.wp-block-page-list li,
.widget_archive ul li, .widget_pages ul li, .widget_meta ul li, .widget_rss ul li a,
.widget_nav_menu ul li, .widget_recent_entries ul li{
	@include font(14px,26px, 800);
	text-transform: uppercase;
}
.widget_rss li{
	@include font(14px,26px)
}

/* Widget: Recent Posts */
.widget_recent_entries .post-date {
	display: inline-block;
	margin-left:0.5em;
}
.widget.widget_recent_posts{
	.recent_post_content{
		padding:30px;
		background-color: white;
		.post_content {
			.post_title{
				font-weight: 800;
				margin: -2px 0 8px 0;
			}
		}
	}
}
.widget_area .post_item .post_info, aside .post_item .post_info{
	@include font(14px);
}
aside .post_item + .post_item {
	margin-top: 1.3em;
}

.sc_recent_news .post_item {

	.post_featured {
		.post_info {
			padding: 0;
			left: 16px;
			bottom: 8px;
			.post_categories {
				line-height: inherit;
				margin-bottom: 8px;
			}
		}
	}
	.post_footer .post_meta .post_meta_item {
		padding: 0;
	}
}
.sc_recent_news.sc_recent_news_style_news-portfolio{
	.sc_recent_news_columns_wrap{
		margin:0;
		padding:0!important;
		div[class*="column"]{
			padding:0!important;
		}
	}
}
.sc_recent_news_style_news-portfolio .post_item .post_date:before,
.sc_recent_news_style_news-extra .post_item .post_date:before{
	display: none;
}

.sc_recent_news.sc_recent_news_style_news-portfolio,
.sc_recent_news.sc_recent_news_style_news-extra{
	.post_item{
		.post_featured{
			.icons{
				display: none;
			}
			.mask{
				z-index: 4;
				opacity:1;
				background: -moz-linear-gradient(top, rgba(25,29,50,0) 0%, rgba(25,29,50,0.8) 100%);
				background: -webkit-linear-gradient(top, rgba(25,29,50,0) 0%,rgba(25,29,50,0.8) 100%);
				background: linear-gradient(to bottom, rgba(25,29,50,0) 0%,rgba(25,29,50,0.8) 100%);
				filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00191d32', endColorstr='#191d32',GradientType=0 );
			}
		}
		.post_info{
			padding: 0 50px 44px 53px;
			.post_title{
				@include font(30px,36px,800);
				margin-top:10px;
			}
			.post_date{
				margin-top:15px!important;
				a{
					pointer-events: none;
				}
			}
		}
	}
	div[class*="column"] { 
		.post_item {
			.post_info {
				.post_title{
					@include font(20px,24px);
				}
			}
		}
	}
}
.sc_recent_news .post_item .post_featured .post_info .post_categories{
	padding:0;
	background: transparent;
	a{
		@include font(12px,16px,800);
		letter-spacing: 1px;
		padding:6px 19px;
		background: red;
	}
}
.post_featured .post_info{
	font-weight: 600;
}
.sc_recent_news .post_item .post_author, .sc_recent_news .post_item .post_date{
	@include font(14px,16px,300);
	letter-spacing: 1px;
}
.sc_recent_news_style_news-extra{
	.sc_recent_news_columns_wrap{
		div[class*="column"]{
			padding-bottom:30px!important;
		}
	}
}

/* Sticky Header - Fixed Position - Homepage only */
.home .top_panel,
.home .header_wrap,
.home .sc_layouts_row_type_compact,
.front-page .top_panel,
.front-page .header_wrap,
.front-page .sc_layouts_row_type_compact,
.page-id-41 .top_panel,
.page-id-41 .header_wrap,
.page-id-41 .sc_layouts_row_type_compact {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    background: #191D32 !important;
    background-color: #191D32 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
    transition: all 0.3s ease !important;
}


/* Reset backgrounds for specific elements that should keep their original styling */
.top_panel .social_item .social_icon,
.header_wrap .social_item .social_icon,
.sc_layouts_row_type_compact .social_item .social_icon,
.top_panel .sc_button,
.header_wrap .sc_button,
.sc_layouts_row_type_compact .sc_button,
.top_panel .sc_button a,
.header_wrap .sc_button a,
.sc_layouts_row_type_compact .sc_button a {
    background: inherit !important;
    background-color: inherit !important;
}

/* Add top padding to body to prevent content from going under fixed header - Homepage only */
.home body,
.front-page body,
.page-id-41 body {
    padding-top: 80px !important;
}

/* Remove any existing margins/padding that might cause gaps */
.top_panel,
.header_wrap,
.sc_layouts_row_type_compact {
    margin: 0 !important;
}

/* Ensure the header content is properly contained */
.top_panel .elementor-container,
.header_wrap .elementor-container,
.sc_layouts_row_type_compact .elementor-container {
    max-width: 100% !important;
    margin: 0 !important;
}

/* Mobile responsiveness - Homepage only */
@media (max-width: 768px) {
    .home body,
    .front-page body,
    .page-id-41 body {
        padding-top: 70px !important;
    }
    
    .home .top_panel,
    .home .header_wrap,
    .home .sc_layouts_row_type_compact,
    .front-page .top_panel,
    .front-page .header_wrap,
    .front-page .sc_layouts_row_type_compact,
    .page-id-41 .top_panel,
    .page-id-41 .header_wrap,
    .page-id-41 .sc_layouts_row_type_compact {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 9999 !important;
    }
}

/* Contact Form 7 - Acceptance Checkbox Styling */
.wpcf7-acceptance input[type="checkbox"] {
  appearance: checkbox !important;
  -webkit-appearance: checkbox !important;
  -moz-appearance: checkbox !important;
  display: inline-block !important;
  width: 18px !important;
  height: 18px !important;
  margin-right: 8px !important;
  vertical-align: middle !important;
  accent-color: #50a9af !important;
  position: relative !important;
  opacity: 1 !important;
}

.wpcf7-acceptance label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  cursor: pointer !important;
}

/* Remove parent theme's custom checkbox styling for acceptance */
.wpcf7-acceptance input[type="checkbox"] + label:before {
  display: none !important;
  content: none !important;
}

/* Fixed Mobile Social Media Buttons - Bottom Right */
.mobile-social-fixed {
  position: fixed !important;
  right: 20px !important;
  bottom: 30px !important;
  z-index: 9999 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.mobile-social-fixed .social_item {
  width: 50px !important;
  height: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
}

.mobile-social-fixed .social_item:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3) !important;
}

.mobile-social-fixed .social_item:active {
  transform: translateY(0) !important;
}

.mobile-social-fixed .social_icon {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  color: #ffffff !important;
}

/* Facebook - Official Blue */
.mobile-social-fixed .social_item .social_icon_facebook {
  background-color: #1877F2 !important;
}

.mobile-social-fixed .social_item:hover .social_icon_facebook {
  background-color: #3B5998 !important;
}

/* Instagram - Custom Color */
.mobile-social-fixed .social_item .social_icon_instagramm {
  background-color: #C13584 !important;
}

.mobile-social-fixed .social_item:hover .social_icon_instagramm {
  background-color: #E1306C !important;
}

/* YouTube - Red */
.mobile-social-fixed .social_item .social_icon_youtube {
  background-color: #dc2626 !important;
}

.mobile-social-fixed .social_item:hover .social_icon_youtube {
  background-color: #ef4444 !important;
}

