/*  Stylesheet for Content Library Blocks - styling for content      */
/*    blocks located in /wp-content/themes/uesystems/content_library */

/* import global branding styles */
@import url('style-global-brand-styling.css');

/* specific "global" changes while template is not universal */
.styling26 footer { padding: 0; }





/* === Alternate Navigation === */
@media all and (max-width:991px){

	header .alt-nav.navbar-light .nav-item:not(.button-item){
		display: none;
	}
	header .alt-nav .navbar-collapse {
		flex-basis: auto;
	}
	header .alt-nav .navbar-nav {
		align-items: end !important;
	}
}



/* ===       Columns-1        === */
/*  section class="single-column" */
.single-column img {
    border-radius: 20px;
}


/* ===      Columns-2        === */
/*  section class="two-column"   */
.two-column img {
    border-radius: 20px;
}
.two-column .col-lg-6:last-of-type {
    margin-top: 15px;

    @media all and (min-width:768px) {
        margin-top: 0;
    }
}


/* ===     CTA Banner      === */
/*  section class="cta-banner" */
.cta-banner .row {
    display: flex;
    align-content: space-between;
    align-items: center;
    background: var(--navy);
    border-radius: 20px;
    flex-direction: row;
    justify-content: flex-end;
    padding: 40px 40px;
}
.cta-banner h2 {
    color: var(--white);
    font-weight: normal;
    text-transform: none;
}
.cta-banner .col-md-9 {
    text-align: center;

    @media all and (min-width:768px) {
        text-align: left;
    }
}
.cta-banner .col-md-3 {
    margin-top: 15px;
    text-align: center;

    @media all and (min-width:768px) {
        margin-top: 0;
        text-align: right;
    }
}



/* === Form === */
.form-box .form-wrap {
    border-radius: 20px;
    border: 1px solid var(--blue);
    padding: 30px 10px 20px;

    @media all and (min-width:992px) {
        padding: 60px 20px 40px;
    }
}



/* ===      Info Boxes      === */
/*  section class="info-boxes"  */
.info-boxes .container div:first-of-type {
    padding-bottom: 15px;
}
.info-boxes .box-container {
    display: flex;
    align-content: flex-start;
    column-gap: 20px;
    row-gap: 20px;
    justify-content: center;
    @media all and (min-width:768px) {
        column-gap: 40px;
        row-gap: 40px;
    }
}
.info-boxes .box-container div.col {
    border-radius: 20px;
    border: 1px solid var(--blue);
    flex: 0 1 90%;
    padding: 30px;
    @media all and (min-width:768px) {
        flex: 0 1 30%;
    }
}
.info-boxes .box-container h3 {
    padding-bottom: 15px;
}
/* class "image-boxes" only applied to .box-container if style = image-box */
/* used because we need to edit the row gap in this layout style */
.info-boxes .box-container.image-boxes {
    padding-bottom: 100px;
    row-gap: 145px;

    @media all and (min-width:992px) {
        padding-bottom: 100px;
        row-gap: 125px;
    }
}

/* display style classes: image-box, icon-box, text-box */
.info-boxes .image-box {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 250px;
}
.info-boxes .image-box .image-content {
    background-color: var(--pale-blue);
    border-radius: 0 20px 0 20px;
    margin: 130px 0 -180px -31px;
    height: 170px;
    padding: 10px 10px 0 10px;
    text-align: left;

    @media all and (min-width:992px) {
        height: 150px;
    }
}
.info-boxes .image-box .image-content h3 {
    padding-bottom: 10px;
}
.info-boxes .image-box .image-content p {
    font-size: 0.9rem;
    margin-left: 10px;
}

.info-boxes .icon-box {
    background-color: var(--pale-blue);
}
.info-boxes .icon-box .icon {
    margin: auto;
    max-width: 100px;
}
.info-boxes .icon-box .icon img {
    height: auto;
    width: 100%;
}



/* === Common to ALL Hero Banner Blocks === */
.banner .row div:first-of-type {
    text-align: center;

    @media all and (min-width: 992px) {
        text-align: unset;
    }
}
.banner .row div:last-of-type {
    margin-top: 15px;

    @media all and (min-width: 992px) {
        margin-top: 0;
    }

}

/* ===   Main Heroes-Image   === */
/*  section class="banner image" */
.banner.image .row div:last-of-type img {
    height: auto;
    margin-top: 15px;
    width: 100%;

    @media all and (min-width: 992px) {
        height: 100%;
        margin-top: 0;
        width: auto;
    }
}

/* ===   Main Heroes-Video   === */
/* section class="banner video"  */



/* ===   Stats/Number Boxes    === */
/*  section class="stat-boxes"     */
/*    .largebox = one per row      */
/*    .smallbox = multiple per row */
.stat-boxes .section-heading {
    text-align: center;
    @media all and (min-width:992px) {
        text-align: unset;
    }
}
.stat-boxes .section-heading h2 {
    text-align: center;
}
.stat-boxes .box-container.largebox {
    border: 1px solid var(--blue);
    border-radius: 20px;
    display: flex;
    align-content: flex-start;
    align-items: stretch;
    column-count: 1;
    column-gap: 0;
    row-gap: 0;
    justify-content: flex-start;
    margin-top: 20px;
    margin-bottom: 40px;
    @media all and (min-width:992px) {
        column-count: 2;
        margin: 20px auto 0;
        max-width: 90%;
    }
}
.stat-boxes .box-container.largebox .stat-box {
    background-color: var(--navy);
    border-radius: 20px 20px 0 0;
    color: var(--white);
	-webkit-box-flex: 0;
    text-align: center;
    align-content: center;
    padding: 20px;
    @media all and (min-width:992px) {
        border-radius: 20px 0 0 20px;
    }
}
.stat-boxes .box-container.largebox .text-box {
    background-color: var(--white);
    border-radius: 0 0 20px 20px;
    color: var(--black);
    -webkit-box-flex: 0;
	padding: 20px;
    text-align: center;
    width: 100%;
    @media all and (min-width:992px) {
        border-radius: 0 20px 20px 0;
        padding: 30px;
        text-align: unset;
    }
}

/* Still need to format small boxes */
.stat-boxes .box-container.smallbox {
    display: flex;
    align-content: flex-start;
    column-gap: 20px;
    row-gap: 20px;
    justify-content: center;
    @media all and (min-width:992px) {
        column-gap: 40px;
        row-gap: 40px;
    }
}
.stat-boxes .box-container.smallbox div.col {
    border-radius: 20px;
    border: 1px solid var(--blue);
    flex: 0 1 90%;
    padding: 30px;
    @media all and (min-width:992px) {
        flex: 0 1 20%;
    }
}
/* End of "still need to format" section */
.stat-boxes .box-container ul {
    list-style-type: disc;
    margin-left: 60px;
    @media all and (min-width:992px) {
        margin-left: 30px;
    }
}
.stat-boxes .box-container ul li {
    text-align: left;
}
.stat-boxes .box-container ul li::marker {
    color: var(--blue);
    font-size: 1.5rem;
}
.stat-boxes .box-container .number {
    color: var(--blue);
    font-size: 3.5rem;
    font-family: 'VisbyCFBold';
    line-height: 100%;
}
.stat-boxes .box-container .symbol {
    font-size: 1.8rem;
    max-width: 15px;
    margin-top: -15px;
}
.stat-boxes .box-container .stat-box p {
    color: var(--white);
    font-size: 1.5rem;
    line-height: 130%;
    margin-bottom: 0;
    margin-top: 10px;
    text-align: center;
    @media all and (min-width:992px) {
        margin-top: 7px;
    }
}








/* ORIGINAL BELOW THIS LINE */
.styling26 .margin-b-50 {
	margin-bottom: 50px;
}


.styling26 .styling26-bg-middle {
	width: 100%;
	max-width: 993px;
	position: absolute;
	top: 55%;
    left: -20%;
    z-index: -1;
}

.styling26 .blue-box{
	background: var(--pale-blue);
	border: 1px solid rgba(9, 161, 237, 0.25);
}
.styling26 .box{
	border-radius: 20px;
}
.styling26 .features {
    padding-top: 90px;
}
.styling26 .features h2 {
    margin-bottom: 20px;
}
.styling26 .features b{
	font-size: 1.25rem;
}
.styling26 .features .intro-text p{
	font-size:1.125rem;
}
.styling26 .features .box{
	padding:36px 28px;
	margin-top: 30px;
    height: calc(100% - 30px);
}
.styling26 .features .features-icon{
	width: 100%;
	max-width: 100px;
    height: auto;
    margin-bottom: 20px;
}
.styling26 .features .title {
    margin-bottom: 15px;
}
.styling26 .bg-light-blue{
	background: var(--pale-blue);
}

.styling26 .proactive .white-box{
	padding: 0px;
	border:1px solid var(--light-grey);
	box-shadow: 2px 4px 8px rgba(0,0,0,0.08);
	margin-bottom: 30px;
	position: relative;
	margin-top: 53px;
	height: calc(100% - 83px);
}
.styling26 .proactive .white-box .counter{
	position: absolute;
	top: -53px;
	left: 50%;
	margin-left: -53px;
	background: url('./library/img/diamond-shape.png') no-repeat center center transparent;
	background-size: 106px;
	color: var(--white);
	font-size: 2.5rem;
	font-family: 'VisbyCFBold', sans-serif;
	font-weight: bold;
	text-align: center;
	line-height: 106px;
    width: 106px;
    height: 106px;
}
.styling26 .proactive .img-wrap{
	height: 184px;
	border-radius: 20px 20px 0 0;
    object-fit: cover;
    margin-bottom: 24px;
    overflow: hidden;
}
.styling26 .proactive .white-box .step-icon{
    object-fit: cover;
	width: 100%;
	height: 100%;
}
.styling26 .proactive .white-box .text-wrap{
	text-align: center;
	padding: 5px 20px 30px 20px;
}
.styling26 .proactive .white-box .title{
	font-size: 1.25rem;
	margin-bottom: 20px;
}

.styling26 .products-section h2 {
    margin-bottom: 20px;
}
.styling26 .download-link {
    font-size: 1.375rem;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    color: var(--burned-orange);
    padding-left: 30px;
    background: url(./library/img/download-icon.png) no-repeat center left transparent;
    background-size: 22px;
    line-height: 22px;
}
.styling26 .products-section .box{
    width: 360px !important;
    height: 100%;
    padding: 0px;
    overflow: hidden;
}
.styling26 .products-section .slick-track{
    display: flex !important;
}

.styling26 .products-section .slick-slide{
    padding: 0 32px 0 0;
    height: auto !important;
    display: flex;
    align-items: stretch;
}
.styling26 .products-section button.slick-next.slick-arrow {
    position: absolute;
    top: -100px;
    right:calc(25% - 70px);
    border-radius: 50%;
    width: 50px;
    height: 50px;
}
.styling26 .products-section button.slick-prev.slick-arrow {
    position: absolute;
    top: -100px;
    right: 25%;
    left: inherit;

    border-radius: 50%;
    width: 50px;
    height: 50px;
}
.styling26 .products-section .bleed-right {
    margin-right: calc(50% - 50vw);
}

.styling26 .products-section .carousel .slick-arrow.slick-prev.slick-disabled{
  background: url('./library/img/white-arrow-left.png') no-repeat top 0px center transparent;
  background-size: 50px;
}
.styling26 .products-section .carousel .slick-arrow.slick-next.slick-disabled{
  background: url('./library/img/white-arrow-right.png') no-repeat top 0px center transparent;
  background-size: 50px;
}
.styling26 .products-section .carousel .slick-arrow.slick-prev{
	 background: url('./library/img/blue-arrow-left.png') no-repeat top 0px center transparent;
  background-size: 50px;
}
.styling26 .products-section .carousel .slick-arrow.slick-next{
	 background: url('./library/img/blue-arrow-right.png') no-repeat top 0px center transparent;
  background-size: 50px;
}
.slick-arrow.slick-prev:not(.slick-disabled):hover, .slick-arrow.slick-next:not(.slick-disabled):hover {
    opacity: 0.8;
}

.styling26 .products-section .carousel{
	display: none;
	margin-top: 45px;
}
.styling26 .products-section .carousel.slick-initialized{
	display: block;
}
.styling26 .products-section .product-box .text-wrap {
    padding: 32px 24px 10px;
}
.styling26 .products-section .product-box .h7-title {
    font-size: 1.5rem;
    margin-bottom: 15px;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
}


.styling26 .start, .styling26 .comparison {
    padding-top: 100px;
}
.styling26 .products-section {
    padding-top: 100px;
    padding-bottom: 20px;
}
.styling26 .stats-section {
    padding-bottom: 20px;
}


.styling26 .comparison .table-container {
            border-radius: 20px;
            overflow: hidden;
    		background: var(--pale-blue);
            margin: 50px auto 0 auto;
    		padding: 55px 0 0 0px;
			border: 1px solid rgba(9, 161, 237, 0.25);
        }

        /* Table Styling */

.styling26 .comparison .table-wrapper {
            display: table;
            width: 100%;
            height: fit-content;
        }
.styling26 .comparison .table-row:not(.top-row) {
    background: var(--white);
}
.styling26 .comparison .table-row {
            display: table-row;
			vertical-align: top;
			height: 100%;
			border-bottom: 1px solid #EAEAEA;
        }
.styling26 .comparison .table-cell {
            display: table-cell;
            /* Extra padding to create spacing around the inner div */
            padding: 15px 20px;
            border-bottom: 1px solid #E8E8ED;
            vertical-align: middle;
        }
        /* The child div for colored background & border styling */
.styling26 .comparison .cell-inner {
            /* Default: no special background or border unless set by specific classes below */
            padding: 10px;
            border-radius: 0; /* override as needed */
        }
 .styling26 .comparison .other-cols:last-of-type {
    padding-right: 30px !important;
}
.styling26 .comparison .cell-inner.other-cols-inner.top-cell {
    border-radius: 20px 20px 0px 0px;
}
.styling26 .comparison .top-cell .title {
    font-size: 1.25rem;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 500;
    line-height: 120%;
}
.styling26 .comparison .top-cell .title img {
	width: 100%;
    max-width: 120px;
    height: auto;
}

.styling26 .comparison .other-cols .top-cell{
    text-align: center;
    padding: 15px;
    border-radius: 20px 20px 0 0;

}
.styling26 .comparison .top-row .ontrak-col .top-cell{
	background: var(--dark-blue);
	color: var(--white);
    border-radius: 0px;
    /*padding-top: 15px;
    padding-bottom: 25px; */
	padding-top: 5px;
    padding-bottom: 20px;
    position: relative;
    border: 0px;
}
.styling26 .comparison .top-row .ontrak-col .top-cell:after{
	content: '';
	position: absolute;
	top: -25px;
	height:25px;
	left: 0px;
	width: 100%;
	border-radius: 20px 20px 0 0;
	background: var(--dark-blue);

}


.styling26 .comparison :not(.top-row) .table-cell {
    padding: 0px 8px;
    background: transparent;
    border: 0px;
    height: 100%;
    border-radius: 0px;
    border-bottom: 1px solid #EAEAEA;
}
.styling26 .comparison :not(.top-row) .cell-inner{
	height: 100%;
    border-radius: 0;
    padding: 10px;
    align-content: center;
}

        /* Feature Category Styling */
.styling26 .comparison .feature-category {
            background: #F5F5F7;
            font-weight: bold;
        }
.styling26 .comparison .table-row.feature-category .table-cell {
    border-radius: 0px;
   background: #F5F5F7;
    border-top: 1px solid #E8E8ED;
    border-bottom: 1px solid #E8E8ED;
    border-left: 0px;
    border-right: 0px;
}
.styling26 .comparison .feature-col {
            width: 40%;
        }
.styling26 .comparison .ontrak-col {
            width: 20%;
        }
.styling26 .comparison .other-cols {
            width: 20%;
        }

        /* Column Specific Styling */
.styling26 .comparison .top-row .table-cell {
    background: transparent;
    border: 0;
    padding-top: 0px;
    padding-bottom: 0px;
    vertical-align: bottom;
}

.styling26 .comparison .ontrak-col {
    background: #F7FCFF;
    border-radius: 16px;
    border: 1px solid rgba(9, 161, 237, 0.25);
}

.styling26 .comparison .other-cols {
    background: #FCFCFC;
    border-radius: 16px;
    border: 1px solid #E8E8ED;
}
.styling26 .comparison .feature-col .cell-inner {
    padding-left: 40px;
    width: 90%;
    color: var(--navy);
    padding-top: 16px;
    padding-bottom: 14px;
}

 /* OnTrak Column Inner Div */
.styling26 .comparison .ontrak-col-inner {
            background: #F7FCFF;
            border: 1px solid rgba(9, 161, 237, 0.25);
            border-radius: 16px; /* 16px for OnTrak col cells */
            text-align: center;
            border-bottom: 0px;
            border-top: 0px;
        }


        /* Other Columns Inner Div */
.styling26 .comparison .other-cols-inner {
            background: #FCFCFC;
            border: 1px solid #E8E8ED;
            border-radius: 16px; /* 16px for these cells */
            text-align: center;
            border-bottom: 0px;
            border-top: 0px;
        }

.styling26 .comparison .top-cell.other-cols-inner {
    border: 1px solid #E8E8ED;
    background: #fff;
}

        /* View More/Less Button */
.styling26 .comparison .view-toggle {
    display: block;
    text-align: center;
    background: #21274D;
    color: var(--orange);
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 1.375rem;
    font-weight: 600;
    padding: 15px;
    cursor: pointer;
    border-radius: 0 0 20px 20px;
}
.styling26 .comparison .view-toggle .icon-more, .styling26 .comparison .view-toggle .icon-less {
    display: inline-block;
    width: 15px; 
    height: 14px;
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-left: 8px;
  }

  .styling26 .comparison .view-toggle .icon-more {
    background-image: url('./library/img/comparison-view-more.png');
  }

  .styling26 .comparison .view-toggle .icon-less {
    background-image: url('./library/img/comparison-view-less.png');
  }

        /* Hide advanced rows initially */
.styling26 .comparison .advanced-features {
    display: none;
}

        /* Icons */
.styling26 .comparison .check-icon {
    display: inline-block;
    width: 22px;
    height: 22px;
    background-image: url('./library/img/check-icon.png'); /* Replace with actual icon */
    background-size: contain;
    background-repeat: no-repeat;
    text-indent: -10000px;
    line-height: 22px;
}
.styling26 .comparison .ontrak-col-inner .check-icon{
	 background-image: url('./library/img/blue-check-icon.png'); /* Replace with actual icon */
    background-size: contain;
}

.styling26 .comparison .cross-icon {
    display: inline-block;
    width: 22px;
    height: 22px;
    background-image: url('./library/img/cross-icon.png'); /* Replace with actual icon */
    background-size: contain;
    background-repeat: no-repeat;
    text-indent: -10000px;
    line-height: 22px;
}









@media all and (max-width:1200px){
	.single-microsites .navbar-light .navbar-nav .nav-link:not(.button){
		font-size: 1rem;
	}
	.single-microsites header .navbar-light .nav-item {
	    padding: 0px 6px;
	}
	.styling26 .banner .hero-mask {
        right: -24%;/*40*/
    }
}

@media all and (max-width:991px){

	.single-microsites header .navbar-light .nav-item:not(.button-item){
		display: none;
	}
	.single-microsites header .navbar-collapse{
		flex-basis: auto;
	}
	.single-microsites header .navbar-nav{
		align-items: end !important;
	}


    .styling26 .banner .hero-mask{
    	position: relative;
        right: auto;
        top: auto;
        bottom: auto;
        z-index: -1;
        height: 933px;

    }
    .styling26 .banner .hero-mask .img-background {
        max-width: 795px;
    }
    .styling26 .banner .hero-mask .video {
	    bottom: 2px;
        right: 70px;
	}
	.styling26 .proactive h2, .styling26 .proactive .intro, .styling26 .comparison h2, .styling26 .comparison .intro{
		text-align: center;
	}
	.styling26 .stats-section .stat-box{
		display: block;
		column-count: 1;
	}
	.styling26 .stats-section .stat-side{
		max-width: 100%;
		padding: 20px;
	}
}


@media (max-width: 767px) {

	.styling26 .comparison .table-container {
    /* Keep display:block on the container itself */
    overflow-x: auto;
  }
    .styling26 .comparison .table-wrapper {
                /*display: block;*/
                display: table;          /* Remains a table for matching row heights */
		    width: auto;             /* So it won't shrink to 100% */
		    min-width: 745px;        /* Force it to be at least 800px wide */
		    white-space: nowrap;     /* Prevent columns from wrapping under each other */
     }
    .styling26 .comparison .advanced-features {
                display: table-row; /* show advanced features by default on mobile */
            }
    .styling26 .comparison .feature-col{
    	width: 270px;
	    min-width: 270px;
	    max-width: 270px;
    }
    .styling26 .comparison .feature-col .cell-inner{
    	white-space: normal !important;
	    overflow-wrap: break-word;
	    word-wrap: break-word;
	    padding-right: 0px;
    }
    .styling26 .comparison .feature-col .cell-inner {
	    padding-left: 20px;
	    width: 100%;
        font-size: 0.875rem;
	}
	.styling26 .comparison .other-cols:last-of-type {
	    padding-right: 15px !important;
	}
    .styling26 .comparison .view-toggle {
	    display: none;
	}

	.styling26 .banner .hero-mask{
		height: 520px;
	}
	.styling26 .banner .hero-mask .video {
        right: 40px;
    }
    .styling26 .banner .hero-mask .video-thumb {
	    max-width: 350px;
	}
	.styling26 .big-button{
		display: block;
	}
	.styling26 .big-button .text {
	    width: 100%;
	    text-align: center;
	}
	.styling26 .big-button .button-wrap {
	    width: 100%;
	    text-align: center;
	    margin-top: 20px;
	}
	.styling26 .products-section .carousel {
	    margin-top: 100px;
	}
	.styling26 .products-section button.slick-prev.slick-arrow, .styling26 .products-section button.slick-next.slick-arrow{
		top:-40px;
	}
	.styling26 .start .form-wrap {
	    padding: 60px 35px 50px;
	}
	.styling26 .products-section .box {
	    width: 300px !important;
	}
}
