 .hustle-ui.module_id_1 button.hustle-button-close{
    top:35px !important;
    right:5px !important;
}
.single-case-study .case-studay h1{
	font-size: 30px !important;
	font-weight:700 !important;
}

.post-category.categories{
    display:inline-flex;
}
.tp-tabs, .tp-thumbs, .tp-bullets {
    top: 100% !important;
}
/* .sub-menu {
  display: none;
  transition: all 0.3s ease;
}

.sub-menu.submenu-open {
  display: block;
} */
li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-has-children:focus-within .sub-menu{
	display:block !important;
}
.fta-for .flaticon-twitter:before {
    content: "\1D54F" !important;
}
.rb_textmodule_divider {
   
    bottom: 1px !important;
   
}
@media (min-width: 768px) and (max-width: 1024px){
.grid_css .layer-wrapper.layout-8128 {
    height: 450px !important;
}
/* 	.post-category.categories {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
} */
/* FOOTER */
div#rb_column_6593a52b1dd2c, div#rb_column_6593a5ead6831 {
    width: 26% !important;
}
	div#rb_column_68399827ec864 {
    width: 80% !IMPORTANT;
    PADDING: 10PX 50PX;
    }
    div#rb_column_68399827ed79b {
        width: 80% !IMPORTANT;
        PADDING: 10PX 50PX;
    }
    div#rb_column_68399827ee02e {
        width: 80% !IMPORTANT;
        PADDING: 10PX 50PX;
    }
     .vc_custom_1704804279538
     {
        padding-top: 0px !important;
    }
}
@media (min-width: 992px) and (max-width : 1200px){
	.grid_css .layer-wrapper.layout-8128 {
    height: 440px !important;
}
}
@media only screen and (max-width: 767px) {
	.hustle-layout{
		padding:30px 20px !important;
	}
	
	.hustle-title{
		font:700 23px/30px Nunito !important;  
	}
	.pl-title a{
		margin-top: 0px !important;
	}
	
	#wpforms-10267-field_1, #wpforms-10267-field_3, #wpforms-10267-field_4 {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    display: block !important;
    font-size: 16px !important;
    padding: 0px 10px !important;
}
	#wpforms-10267-field_5{
	    height: 100px;
    padding: 10px !important;
	}
	.grid_css .layer-wrapper.layout-8128 {
    height: auto!important;
}
	.site-header-mobile .menu-box .main-menu-wrapper:not(:last-child):after{
		display:none !important;
	}
}
.element.element_1683524870946.post-count.tags {
    display: none !important;
}
.soc_icon_css .flaticon-presentation:before {
    content: "\f16d" !important;
    font-family: 'Font Awesome 5 Brands' !important;
}
.single-case-study .title_bar{
    -webkit-mask-image: none !important;
	max-width:1200px !important;
	margin:auto !important;

}
.menu-item-object-post.menu-item-7236 {
	color: #e4331b;
}
.menu-item-7279{
	display:none;
}


	.single-case-study	.site-header-mobile .page_title_container{
		display:block !important;
	}

.post-grid-lazy .excerpt {
	display:none !important;
}

.layout-8128 .element_1683524553162{
    margin:0px 0px 10px 0px !important;
}


@media only screen and (max-width: 767px){
	
	
	.single-case-study	.site-header-mobile .page_title_container{
		display:block !important;
	}
	
	.element.element_1683524627301.post-category.categories {
    display: flex !important;
    flex-wrap: wrap;
}
.asd.rb_image_module .main_image img {
    -webkit-border-radius: 20px;
    border-radius: 20px;
   margin-left: 0px !important;
	margin-bottom:-20px;
		margin-top:-60px;
 }
}

.menu-item-7243 a {
    color: #f14f32 !important;
}
.single-post h2{
	font-size: 30px;
}
.single-post h3{
	font-size: 25px;
}
.single-post h3{
	font-size: 22px;
}
.single-post h4{
	font-size: 20px;
}
.single-post h5{
	font-size: 18px;
}
.single-post h6{
	font-size: 16px;
}

.single-case-study h2{
	font-size: 30px !important;
	font-weight:700 !important;
}
.single-case-study h3{
	font-size: 25px !important;
	font-weight:700 !important;
}

.single-case-study h4{
	font-size: 20px !important;
	font-weight:700 !important;
}
.single-case-study h5{
	font-size: 18px !important;
	font-weight:700 !important;
}
.single-case-study h6{
	font-size: 16px !important;
	font-weight:700 !important;
}
.single.single-case-study .page_title_container{
	display: none !important;
	
}
@media (min-width: 768px) and (max-width: 1024px){
	.single-post h2{
	font-size: 25px;
}
.single-post h3{
	font-size: 21px;
}
}
.single-post h4{
	font-size: 19px;
}
.single-post h5{
	font-size: 18px;
}
.single-post h6{
	font-size: 16px;
}

.single-case-study .case-studay h1{
	font-size: 25px !important;
	font-weight:700 !important;
}
.single-case-study h2{
	font-size: 20px !important;
}
.single-case-study h3{
	font-size: 19px !important;
}

.single-case-study h4{
	font-size: 18px !important;
}
.single-case-study h5{
	font-size: 18px !important;
}
.single-case-study h6{
	font-size: 16px !important;
}
}

.codegeniebtn a{
	 background-image: linear-gradient(to right, #ea4022 , #fc6540);
}
.layout-8144 .element_1683524627301 a{
		font-size: 12px !important;
	}

@media only screen and (max-width: 767px) {
	
	.layout-8144 .element_1683524627301 a{
		font-size: 12px !important;
	}
    .rb-widget:last-child {
        margin-bottom: 50px;
    }
/* 	.post-category.categories a {
    padding: 8px 15px 8px !importantt;
    border: 1px solid #eff2fd !important;
    color: #000 !important;
    background: #fff !important;
    border-radius: 40px !important;
    font-weight: 700;
    margin-top: 15px !importantt;
    margin-right: 8px;
    display: inline;
} */
}
.rb_footer_template, .site-footer {
    margin-top: 0px;
}
.menu-main-container.header_menu > ul > .menu-item > a {
    padding-left: 14px;
	padding-right: 14px;
}
.vc_single_image-wrapper img {
    -webkit-border-radius: 15px;
    border-radius: 0px !important;
}
p:not(:last-child){
	margin:0px !important;
}
.site-content{
	padding:0px !important;
}
.page_title_container .woocommerce-breadcrumb, .page_title_container .bread-crumbs{
	display:none;
}
span.title {
    color: #fff;
}
svg.svg-inline--fa.fa-phone-alt.fa-w-16,svg.svg-inline--fa.fa-envelope.fa-w-16,svg.svg-inline--fa.fa-skype.fa-w-14 {
    color: #fff;
}
svg.svg-inline--fa.fa-skype.fa-w-16 {
    color: #fff;
}

.search-trigger {
    display: none;
}
.menu-main-container.header_menu {
    font-family: Nunito Sans;
	font-size: 17px;
}
.menu-main-container.header_menu > ul > .menu-item > a {
    font-weight: 600;
}
h3{
    font-weight: 700 !important;
}
.site-header-mobile .page_title_container{
	display:none;
}
/*footer logo*/
.wpb_single_image img {
	max-width: 70%;
}
.footer_class_contact_detail .title:hover {
    color: #e4331b !important;
}

.single-post div#site-content {
    margin-top: 150px !important;
}
@media only screen and (max-width: 1024px) {
		.single-post div#site-content {
    margin-top: 0px !important;
}
	.menu-item-7279{
	display:block !important;
}
	

}
@media only screen and (max-width: 767px) {

.menu-box-search {
    display: none;
}
div#yasr_visitor_votes_2870 {
    text-align: center !important;
    display: grid;
}
	.yasr-star-rating {
    margin-left: auto;
    margin-right: auto;
}
}

.page_title_container {
    padding-top: 10px !important;
}

/* .image_corner_header{
    display:none;
}
 */

.text_align_footer{
	margin-left:10px !important;
}


/*footer media query*/
@media only screen and (max-width: 600px) {
.wpb_single_image.vc_align_left {
    text-align: center;
    padding-bottom: 5px !important;
}
.margin_class_rating_footer_align_class {
    text-align: center !important;
}
.text_align_footer_focial_icon{
		text-align:center !important;
	}
	.footer_class_contact_detail .wpb_wrapper .header_icons {
    display: inline-block;
    padding-left: 20px;
} 
	.footer_class_contact_detail {
    text-align: center;
}
	.page-id-7585 .wpb_raw_code.wpb_content_element.wpb_raw_html{
		margin-top: 0px !important;
	}
/* .portfolio-single-content.type_large_images {
    margin-top: 3%;
} */
}


/* .portfolio-single-content.type_large_images {
    margin-top: 12%;
}
.main-content-inner-wrap.post-type_post {
    margin-top: 10%;
}
aside.sidebar.position_right {
    margin-top: 10% !important;
} */
.comments-area {
    border-top: 1px solid #e5e5e5;
    display: none;
}

/*footer reating*/
span#yasr-custom-text-before-visitor-rating {
    color: #fff;
    font-weight: 500;
    font-size: 20px !important;
    padding-top: 16px !important;
}
span.yasr-total-average-text {
    color: #fff;
    padding-top: 10px !important;
}
span#yasr-vote-saved {
    padding-top: 1px !important;
    color: #fff;
}
span#yasr-visitor-votes-container-after-stars-f3f3b6532a2ae {
    display: flow-root;
    color: #fff !important;
}

span#yasr-total-average-text-0fedb28bc24c5 {
    display: none;
}
span#yasr-total-average-dashicon-4811{
	display:none;
}
span#yasr-total-average-text-2fcda40002a5e {
    display: table !important;
}
.yasr-star-rating {
    
    box-shadow: 1px 1px 10px #fff;
    margin-top: 10px;
    margin-right: 100px;
    margin-bottom: 10px;
}

@media only screen and (max-width: 767px) {
	
.yasr-star-rating {
    box-shadow: 1px 1px 10px #fff;
    margin-top: 10px;
    margin-left: 109px;
    margin-bottom: 10px;
    margin-right: 122px;
}
	div#yasr_visitor_votes_4820 {
    text-align: center;
}
	span#yasr-visitor-votes-container-after-stars-38b2d53af17df {
    color: #fff;
}
	
}
body.error404 .main-content-inner .image{
	 margin-bottom: 0px !important;
}
.btmmrgn .h5 {
    margin-bottom: 10px !important;
}
div.wpforms-container-full .wpforms-form label.wpforms-error{
	display:table !important;
}

.rb_button:hover {
    background-image: linear-gradient(#FFFFFF, #ffFFFF) !important;
}

.rb_textmodule_divider, h3:after, .title_divider {
    background-color: #e4331b !important;
}

.slick-dots li.slick-active button { 
    border-color: #e4331b !important;
}
.title_bar {
    -webkit-mask-image: url(https://tarktech.com/wp-content/uploads/revslider/webdesign/1-1.png) !important;
}
.menu > .menu-item > a:before{
	    background-color: #e4331b !important;
}
.single_post_categories.title_ff,.page_title_container .single_post_meta, .post-navigation {
    display: none;
}
.post-content .wp-block-image img {
    margin: auto !important;
    display: block !important;;
}
.blocks-gallery-grid, .wp-block-gallery{
	justify-content:center;
}
.single-post .page_title_container {
	display:none !important;
}
.testimonial_desc:before{
	background-color:#e4331b !important;
}


.rb_button:hover {
    background: #e4331b !important;
}
/*mobile slider */

/* .tp-tabs, .tp-thumbs, .tp-bullets{
	top: 95% !important;
}
	 */
.menu-main-container.header_menu > ul .sub-menu li > a{
	color:#3e4a5999 !important;
}
.menu-main-container.header_menu > ul .sub-menu li > a:hover{
	color:#3e4a59!important;
}


.slick-dots li::before{
	display:none !important;
}


.slick-slide .ultp-block-image-inner {
    padding: 20px 20px 0px 20px !important;
}

article.ultp-block-item .ultp-block-slider-wrap {
    box-shadow: 0px 5px 15px 2px rgba(144, 116, 218, 0.16);
    border-radius: 10px 10px 10px 10px !important;
    border: 1px #fff !important;
    height: fit-content !important;
    overflow: hidden;
    margin-bottom: 30px;
    margin-top: 20px !important;
}

 .ultp-block-items-wrap .slick-slide>div {
    padding: 15px !important;
}
article.ultp-block-item>div{
	   padding-top: 10px;
    padding-bottom: 10px !important;
}
.ultp-category-grid a {
    display: inline-block !important;
    margin-bottom: 5px !important; 
    padding: 10px 15px 10px !important;
    border: 1px solid #EFF2FD !important;
    -webkit-border-radius: 40px !important;
    border-radius: 40px !important;
    background: transparent !important;
    color: #000 !important;
}


/*new blog page slider */
.pl-slider-cnt .owl-nav.disabled {
    display: bloc !important;
}
.pl-owl .owl-item img{
    border-radius:10px;
    
}
.pl-slider-nav-squar.pl-slider-nav-bordered .owl-nav .owl-prev, .pl-slider-nav-squar.pl-slider-nav-bordered .owl-nav .owl-next{
	    border:none !important;
}


.pl-slider-nav-squar.pl-slider-nav-bordered .owl-nav .owl-prev, .pl-slider-nav-squar.pl-slider-nav-bordered .owl-nav .owl-next{
    height: 30px !important;
	  background-color: #e4331b;
    color: #fff !important;
    padding: 6px !important;
	
}
.pl-slider-cnt .owl-nav .owl-prev, .pl-slider-cnt .owl-nav .owl-next{
	  height: 30px !important;
    background-color: #e4331b !important;
    color: #fff !important;
    padding: 10px !important;
	
}

.pl-slider-nav-squar.pl-slider-nav-bordered .owl-nav .owl-prev, .pl-slider-cnt .owl-nav .owl-prev{
	margin-right:10px !important;
}
.pl-slider-nav-topright .owl-nav{
top: -50px  !important;
}

.pl-outerdesc-cnt{
    padding-top: 20px;
    padding-left: 15px;
    padding-right: 20px;
    padding-bottom: 1px;
    border-radius: 10px !important;
    box-shadow: 0px 5px 7px 2px #9074da29;
/*     margin-top: 20px; */
    margin-left: 10px;
    margin-right: 10px;
}
.pl-outerdesc-layout1 .pl-title a{
    margin-top: 30px;
     margin: 0px;
}
.pl-title a{
    
    font-size: 22px  !important;
 
}
.pl-meta-item{
    margin-left: 16px;
    color: #000 !important;
    display: list-item !important;
   
     
       
}
.pl-slider-slide.item{
	margin-bottom:15px !important;
}

.pl-outerdesc-layout1 .pl-meta{
       margin: 0px;
}

.pl-outerdesc-layout1 .pl-excerpt{
    margin: 0px;
}
.pl-excerpt{
    font-size: 16px  !important;
     
}
.pl-outerdesc-layout1 .pl-buttons{
 margin: 0px;
margin-top: 10px;
}
.pl-buttons a{
    font-size: 16px  !important;
}
a.pl-btn.pl-readmore-btn:after {
    content: "\203A";
    PADDING-LEFT: 10px;
    color: #ffaf00;
    font-size: 25px;
}
svg.svg-inline--fa.fa-user.fa-w-14{
	  display:none !important;
}

.pl-thumbnail{
	max-height:170px !important;
}


@media only screen and (max-width: 767px){
/* 	.pl-outerdesc-cnt{
		   margin-left:0px !important;
	} */
	.pl-title a{
		margin-top: 0px !important;
	}
	.pl-owl .owl-item{
		margin-top: 50px !important;
   
	}
	.pl-slider-nav-topright .owl-nav {
    top: 385px !important;
    right: 33% !important;
}
	.case-study-template-default .vc_empty_space{
		height: 20px !important;
	}
	.case-study-template-default .post-inner{
		padding: 0px !important;
	}
	.case-study-template-default .pl-slider-cnt.pl-slider-dot-bottom-center, .pl-slider-cnt.pl-slider-dot-bottom-left, .pl-slider-cnt.pl-slider-dot--bottom-right{
		margin-bottom: 40px !important;
	}
}

.single.single-case-study .page_title_container {
    background: none !important;
	padding:10px !important;
}

.single.single-case-study .page_title_container .page_title_dynamic_image{
	display:none !important;
}

@media only screen and (min-width:767px) and (max-width:1024px){
	.menu-box-search {
    display: none !important;
}
	#rb_icon_list_659bf740a0f74 i:before , .rb_icon_list_module i:before{
    font-size: 17px !important;
}
}

div#btncodeginie a{
	color:#fff !important;
}
div#btncodeginie {
    position: fixed;
    left: 0 !important;
		 animation: shine 2s infinite linear;
    top: 50% !important;
    transform: rotate(90deg);
    margin-left: -74px;
    background: linear-gradient(75deg, #f45535 0, #ffffff30 10%, #f45535 20%);
    border-radius: 20px !important;
    padding: 3px 20px !important;
    font-weight: 600;
	
}


@keyframes shine {
0%   {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 10%, #f45535 20%);}
10%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 25%, #f45535 20%);}
13%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 31%, #f45535 20%);}
15%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 35%, #f45535 20%);}
18%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 41%, #f45535 20%);}
20%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 45%, #f45535 20%);}
23%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 51%, #f45535 20%);}
25%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 55%, #f45535 20%);}
28%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 61%, #f45535 20%);}
30%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 65%, #f45535 20%);}
33%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 71%, #f45535 20%);}
35%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 75%, #f45535 20%);}
38%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 81%, #f45535 20%);}
40%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 85%, #f45535 20%);}
43%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 91%, #f45535 20%);}
45%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 95%, #f45535 20%);}
48%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 98%, #f45535 20%);}
50%  {background: linear-gradient(60deg , #f45535 0, #f45535 1%, #fff 100%, #f45535 20%);}
53%  {background: linear-gradient(60deg , #f45535 0, #f45535 6%, #fff 100%, #f45535 20%);}
55%  {background: linear-gradient(60deg , #f45535 0, #f45535 10%, #fff 100%, #f45535 20%);}
58%  {background: linear-gradient(60deg , #f45535 0, #f45535 16%, #fff 100%, #f45535 20%);}
60%  {background: linear-gradient(60deg , #f45535 0, #f45535 20%, #fff 100%, #f45535 20%);}
63%  {background: linear-gradient(60deg , #f45535 0, #f45535 26%, #fff 100%, #f45535 20%);}
65%  {background: linear-gradient(60deg , #f45535 0, #f45535 30%, #fff 100%, #f45535 20%);}
68%  {background: linear-gradient(60deg , #f45535 0, #f45535 36%, #fff 100%, #f45535 20%);}
70%  {background: linear-gradient(60deg , #f45535 0, #f45535 40%, #fff 100%, #f45535 20%);}
73%  {background: linear-gradient(60deg , #f45535 0, #f45535 45%, #fff 100%, #f45535 20%);}
75%  {background: linear-gradient(60deg , #f45535 0, #f45535 50%, #fff 100%, #f45535 20%);}
78%  {background: linear-gradient(60deg , #f45535 0, #f45535 56%, #fff 100%, #f45535 20%);}
80%  {background: linear-gradient(60deg , #f45535 0, #f45535 60%, #fff 100%, #f45535 20%);}
83%  {background: linear-gradient(60deg , #f45535 0, #f45535 66%, #fff 100%, #f45535 20%);}
85%  {background: linear-gradient(60deg , #f45535 0, #f45535 70%, #fff 100%, #f45535 20%);}
88%  {background: linear-gradient(60deg , #f45535 0, #f45535 76%, #fff 100%, #f45535 20%);}
90%  {background: linear-gradient(60deg , #f45535 0, #f45535 80%, #fff 100%, #f45535 20%);}
93%  {background: linear-gradient(60deg , #f45535 0, #f45535 86%, #fff 100%, #f45535 20%);}
95%  {background: linear-gradient(60deg , #f45535 0, #f45535 90%, #fff 100%, #f45535 20%);}
98%  {background: linear-gradient(60deg , #f45535 0, #f45535 96%, #fff 100%, #f45535 20%);}
100% {background: linear-gradient(60deg , #f45535 0, #f45535 100%, #fff 100%, #f45535 20%);}
}

div#btncodeginie {
	display:none;
}
.menu-main-container.header_menu > ul > .menu-item.current-item-parent > a:before{
	opacity: 0;
}
.menu-main-container.header_menu > ul > .menu-item.current-item-parent{
	opacity: 1;
}
.single.single-case-study .page_title_container{
	margin: 0px;
}
.single_content .post-content{
	margin-top: 0px;
}
.post-inner{
	padding: 0px 30px 30px 30px;
}
body.wpb-js-composer .vc_tta.vc_general .vc_tta-panel-body {
    padding: 20px;
   
}
@media only screen and (max-width: 767px) {
#post-grid-8116 .pagination .page-numbers{
	font-size: 9px;
	
}
}
.single.single-case-study  .pl-category-item , .single.single-case-study .pl-meta{
	display: none !important; 
}

.page-id-9887 .rb_testimonials_module .image_wrapper,
.home .rb_testimonials_module .image_wrapper {
    display: none !important;
}
/* Give Font Awesome icons the same spacing as RB Flaticons */
.rb_milestone_module i[class*="fa-"],
.rb_service i[class*="fa-"] {
    display: block;
    margin: 0 auto 18px;
}
.results-band i[class*="fa-"],
.results-band .milestone_icon i,
.results-band .milestone_icon svg {
    color: #ffffff !important;
    font-size: 80px !important;
    line-height: 1 !important;
}
.results-band .milestone_icon {
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
}
.results-band .milestone_icon i,
.results-band .milestone_icon svg {
    color: #ffffff !important;
    font-size: 90px !important;
    line-height: 1 !important;
}


/* Tablet */
@media (max-width: 1024px) {
  .results-band .counter,
  .results-band .count_wrapper { font-size: 72px !important; }
  .results-band .milestone_icon i { font-size: 60px !important; }
  .results-band .milestone_icon { height: 76px !important; }
}
/* Phone */
@media (max-width: 767px) {
  .results-band .counter,
  .results-band .count_wrapper { font-size: 52px !important; }
  .results-band .milestone_icon i { font-size: 48px !important; }
  .results-band .milestone_icon { height: 60px !important; }
  .results-band h2 { font-size: 26px !important; }

  
}
/* Homepage form (11360): message field */
#wpforms-form-11360 .wpforms-field-textarea {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
}
/* Desktop/tablet: match the two-column row's right edge */
@media (min-width: 768px) {
    #wpforms-form-11360 .wpforms-field-textarea {
        width: calc(100% - 12px) !important;
        max-width: calc(100% - 12px) !important;
    }
}
/* Homepage form (11360): brand-red borders on all fields */
#wpforms-form-11360 input[type="text"],
#wpforms-form-11360 input[type="email"],
#wpforms-form-11360 input[type="tel"],
#wpforms-form-11360 input[type="url"],
#wpforms-form-11360 textarea,
#wpforms-form-11360 select {
    border: 1px solid #e4331b !important;
}
/* ===== Contact forms (both) ===== */
/* Field borders */
.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form input[type="tel"],
.wpforms-form input[type="url"],
.wpforms-form textarea,
.wpforms-form select {
    border: 1px solid #e4331b !important;
}
/* Both forms — Submit matched to header "Contact Us" button */
#wpforms-11360 button.wpforms-submit,
#wpforms-5246 button.wpforms-submit {
    background: transparent !important;
    color: #3e4a59 !important;
    border: 2px solid #e4331b !important;
    border-radius: 40px !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 41px !important;
    padding: 0 35px !important;
    text-transform: none !important;
}
#wpforms-11360 button.wpforms-submit:hover,
#wpforms-5246 button.wpforms-submit:hover {
    background: #e4331b !important;
    color: #ffffff !important;
}
/* Homepage form (11360): full-width message field */
#wpforms-form-11360 .wpforms-field-textarea {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
}
@media (min-width: 768px) {
    #wpforms-form-11360 .wpforms-field-textarea {
        width: calc(100% - 12px) !important;
        max-width: calc(100% - 12px) !important;
    }
}
/* ===== Healthcare page (11393) ===== */
/* Hide default theme title bar — the custom hero is our top */
/* Hide theme title bar (desktop + mobile header) on custom hero pages */
body.page-id-11393 .page_title_container,
body.page-id-11672 .page_title_container,
body.page-id-11747 .page_title_container,
body.page-id-11748 .page_title_container,
body.page-id-11731 .page_title_container {
    display: none !important;
}

/* Hero eyebrow */
.page-id-11393 .rb_textmodule_subtitle{
  color:#e4331b !important;
  font-size:14px !important;
  font-weight:700 !important;
  letter-spacing:2px !important;
  text-transform:uppercase !important;
  margin:0 0 14px !important;
}
/* Hero H1 */
.page-id-11393 h1.rb_textmodule_title{
  font-size:52px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  color:#1f2a37 !important;
  padding-bottom:20px !important;
}
/* Hero sub-head */
.page-id-11393 .rb_textmodule_content_wrapper{
  color:#5b6675 !important;
  font-size:18px !important;
  line-height:1.6 !important;
  max-width:560px !important;
}
.page-id-11393 .rb_textmodule_button{ margin-top:26px !important; }

/* Mobile */
@media (max-width:767px){
  .page-id-11393 h1.rb_textmodule_title{ font-size:34px !important; }
  .page-id-11393 .rb_textmodule_content_wrapper{ font-size:16px !important; }
}
/* Hero button — match header "Contact Us" (outlined) */
.page-id-11393 .rb_textmodule_button.rb_button{
  background:transparent !important;
  color:#3e4a59 !important;
  border:2px solid #e4331b !important;
}
.page-id-11393 .rb_textmodule_button.rb_button:hover{
  background:#e4331b !important;
  color:#fff !important;
}

/* Hero image — fill its column (bigger) */
.page-id-11393 .wpb_single_image .vc_single_image-img{
  width:100% !important;
  max-width:100% !important;
}
/* ===== Healthcare (11393) — capability cards ===== */
.page-id-11393 .rb_service_module.style_icon_top{
  background:#fff !important;
  border:1px solid #eef0f3 !important;
  border-radius:16px !important;
  box-shadow:0 10px 30px rgba(0,0,0,0.06) !important;
  padding:32px 28px !important;
  height:100% !important;
  transition:box-shadow .2s ease, transform .2s ease;
}
.page-id-11393 .rb_service_module.style_icon_top:hover{
  box-shadow:0 16px 40px rgba(0,0,0,0.10) !important;
  transform:translateY(-3px);
}
.page-id-11393 .service_icon_wrapper{
  font-size:40px !important; line-height:1 !important; margin-bottom:18px !important;
}
.page-id-11393 .service_icon_wrapper svg{
  height:1em !important; width:auto !important; color:#e4331b !important;
}
.page-id-11393 .service_icon_wrapper svg path{ fill:#e4331b !important; }
.page-id-11393 h3.service_title{
  font-size:21px !important; line-height:1.3 !important; font-weight:600 !important;
  color:#1f2a37 !important; margin:0 0 12px !important;
}
.page-id-11393 .rb_service_module .content_wrapper{
  color:#5b6675 !important; font-size:16px !important; line-height:1.6 !important;
}

.page-id-11393 .align_center .rb_textmodule_content_wrapper{
  margin:0 auto !important;
  max-width:660px !important;
}

/* Healthcare (11393) — H2 section titles */
.page-id-11393 h2.rb_textmodule_title{
  font-size:38px !important; line-height:1.15 !important; font-weight:700 !important;
  color:#1f2a37 !important; padding-bottom:16px !important;
}

/* Healthcare (11393) — HIPAA light band */
.page-id-11393 #hipaa .rb_textmodule_content_wrapper{ max-width:760px !important; }

/* Healthcare (11393) — HIPAA compliance pills */
.page-id-11393 .hipaa-pills{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
  max-width:720px;
  margin:36px auto 0;
}
.page-id-11393 .hipaa-pill{
  display:flex; align-items:center; gap:16px;
  padding:18px 26px;
  border-radius:14px;
  background:rgba(255,255,255,0.55);
  border:1px solid rgba(228,51,27,0.20);
  box-shadow:0 8px 24px rgba(0,0,0,0.06);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  text-align:left;
}
.page-id-11393 .hipaa-pill i,
.page-id-11393 .hipaa-pill svg{
  color:#e4331b !important; fill:#e4331b !important;
  font-size:22px; width:22px !important; height:22px !important; flex:0 0 auto;
}
.page-id-11393 .hipaa-pill span{
  font-size:16px; font-weight:600; color:#1f2a37; line-height:1.3;
}
@media (max-width:600px){
  .page-id-11393 .hipaa-pills{ grid-template-columns:1fr; }
}

/* Healthcare (11393) — Results cards */
.page-id-11393 #results .vc_column-inner{
  background:#fff !important;
  border:1px solid #eef0f3 !important;
  border-radius:16px !important;
  box-shadow:0 10px 30px rgba(0,0,0,0.06) !important;
  padding:38px 34px !important;
  height:100% !important;
}
.page-id-11393 #results .rb_textmodule_subtitle{
  color:#e4331b !important; font-size:54px !important; font-weight:800 !important;
  letter-spacing:0 !important; text-transform:none !important;
  line-height:1 !important; margin:0 0 4px !important;
}
.page-id-11393 #results h3.rb_textmodule_title{
  font-size:24px !important; font-weight:700 !important;
  color:#1f2a37 !important; padding-bottom:10px !important;
}

/* Results — lead with the metric */
.page-id-11393 #results .rb_textmodule{ display:flex; flex-direction:column; }
.page-id-11393 #results .rb_textmodule_subtitle{ order:-1; margin:0 0 2px !important; }
.page-id-11393 #results h3.rb_textmodule_title{ margin:0 0 16px !important; font-size:22px !important; }

/* Results — make case-study button hug its text, left-aligned */
.page-id-11393 #results .rb_textmodule_button{
  display:inline-flex !important;
  align-self:flex-start !important;
  width:auto !important;
}

/* Healthcare (11393) — Who we serve tiles */
.page-id-11393 .serve-grid{
  display:flex; flex-wrap:wrap; justify-content:center;
  gap:22px; max-width:1000px; margin:36px auto 0;
}
.page-id-11393 .serve-tile{
  flex:1 1 300px; max-width:320px;
  display:flex; gap:16px; align-items:flex-start;
  background:#fff; border:1px solid #eef0f3; border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,0.06);
  padding:24px 22px; text-align:left;
}
.page-id-11393 .serve-ic{
  flex:0 0 auto; width:46px; height:46px; border-radius:12px;
  background:rgba(228,51,27,0.10);
  display:flex; align-items:center; justify-content:center;
}
.page-id-11393 .serve-ic i{ color:#e4331b !important; font-size:20px; }
.page-id-11393 .serve-name{ font-size:17px; font-weight:700; color:#1f2a37; line-height:1.25; margin-bottom:4px; }
.page-id-11393 .serve-desc{ font-size:14px; color:#5b6675; line-height:1.5; }
@media (max-width:900px){ .page-id-11393 .serve-tile{ flex:1 1 45%; } }
@media (max-width:560px){ .page-id-11393 .serve-tile{ flex:1 1 100%; } }

.page-id-11393 .serve-tile{ transition:box-shadow .2s ease, transform .2s ease; }
.page-id-11393 .serve-tile:hover{
  box-shadow:0 16px 40px rgba(0,0,0,0.10) !important;
  transform:translateY(-3px);
}

.page-id-11393 .serve-ic i,
.page-id-11393 .serve-ic svg{
  color:#e4331b !important;
  fill:#e4331b !important;
  font-size:20px; width:20px !important; height:20px !important;
}
.page-id-11393 .serve-ic svg path{ fill:#e4331b !important; }

.page-id-11393 .serve-grid{ margin-top:24px !important; }

/* Healthcare (11393) — Who we serve tiles */
.page-id-11393 .serve-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  grid-auto-rows:1fr;
  gap:22px; max-width:1040px; margin:24px auto 0;
}
.page-id-11393 .serve-tile{
  display:flex; gap:16px; align-items:flex-start;
  background:#fff; border:1px solid #eef0f3; border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,0.06);
  padding:24px 22px; text-align:left; height:100%;
  transition:box-shadow .2s ease, transform .2s ease;
}
.page-id-11393 .serve-tile:hover{
  box-shadow:0 16px 40px rgba(0,0,0,0.10) !important;
  transform:translateY(-3px);
}
.page-id-11393 .serve-ic{
  flex:0 0 auto; width:46px; height:46px; border-radius:12px;
  background:rgba(228,51,27,0.10);
  display:flex; align-items:center; justify-content:center;
}
.page-id-11393 .serve-ic i,
.page-id-11393 .serve-ic svg{
  color:#e4331b !important; fill:#e4331b !important;
  font-size:20px; width:20px !important; height:20px !important;
}
.page-id-11393 .serve-ic svg path{ fill:#e4331b !important; }
.page-id-11393 .serve-name{
  font-size:17px; font-weight:700; color:#1f2a37; line-height:1.25;
  margin-bottom:6px; min-height:2.5em;
}
.page-id-11393 .serve-desc{ font-size:14px; color:#5b6675; line-height:1.5; }
@media (max-width:900px){ .page-id-11393 .serve-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){
  .page-id-11393 .serve-grid{ grid-template-columns:1fr; }
  .page-id-11393 .serve-name{ min-height:0; }
}
.page-id-11393 .serve-tile{ min-height:162px; }
.page-id-11393 .serve-tile{ gap:8px !important; }

.page-id-11393 .hero-trust{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
  margin-top:22px; font-size:14px; color:#5b6675; max-width:560px;
}
.page-id-11393 .hero-trust-badge{
  background:rgba(228,51,27,0.10); color:#e4331b; font-weight:700;
  padding:6px 12px; border-radius:20px; white-space:nowrap;
}
.page-id-11393 .hero-trust strong{ color:#1f2a37; }

/* ===== Tark "How we help" section fixes ===== */

/* 2) Equal-height cards — make the bordered box fill the column */
.vc_custom_1782973871272 .vc_column-inner{ display:flex; flex-direction:column; }
.vc_custom_1782973871272 .vc_column-inner > .wpb_wrapper{ display:flex; flex-direction:column; flex:1 1 auto; }
.vc_custom_1782973871272 .rb_service_module{ flex:1 1 auto; }

/* 3) "Learn more" hover — white background highlight */
.vc_custom_1782973871272 .service-button{
  transition:all .25s ease;
  border:2px solid transparent;
  border-radius:40px;
  padding:8px 20px;
  display:inline-block;
}
.vc_custom_1782973871272 .service-button:hover,
.vc_custom_1782973871272 .service-button:focus{
  background:#ffffff !important;
  color:#e4331b !important;
  border-color:#e4331b !important;
  box-shadow:0 6px 16px rgba(0,0,0,.12);
}
.vc_custom_1782973871272 .service-button:hover::after{ color:#e4331b !important; }

/* ===== Tark "How we help" fixes ===== */

/* Equal-height cards */
.vc_custom_1782973871272 .vc_column-inner{ display:flex; flex-direction:column; }
.vc_custom_1782973871272 .vc_column-inner > .wpb_wrapper{ display:flex; flex-direction:column; flex:1 1 auto; }
.vc_custom_1782973871272 .rb_service_module{ flex:1 1 auto; }

/* "Learn more" — wider hover pill, no overlap with text/arrow */
.vc_custom_1782973871272 .service-button{
  position:relative; display:inline-block; box-sizing:border-box;
  padding:12px 48px 12px 24px !important;   /* left room for text, right room for arrow */
  border:2px solid transparent; border-radius:40px;
  transition:all .25s ease;
}
.vc_custom_1782973871272 .service-button::after{ left:auto !important; right:22px !important; } /* arrow inside pill */
.vc_custom_1782973871272 .service-button:hover,
.vc_custom_1782973871272 .service-button:focus{
  background:#ffffff !important; color:#e4331b !important;
  border-color:#e4331b !important; box-shadow:0 6px 16px rgba(0,0,0,.12);
}

/* Home Page - Contact Us (#11360) — consistent two-column layout everywhere */
#wpforms-11360 .wpforms-field.divide_part_contact_us_form{
  display:inline-grid !important;
  width:calc(50% - 12px) !important;
  margin:6px !important;
  vertical-align:top !important;
  box-sizing:border-box !important;
}
@media (max-width:600px){
  #wpforms-11360 .wpforms-field.divide_part_contact_us_form{
    display:block !important;
    width:100% !important;
    margin:6px 0 !important;
  }
}

/* Healthcare (11393) — FAQ: transparent open panel instead of red */
.page-id-11393 .vc_tta-panel.vc_active{ background:transparent !important; }
.page-id-11393 .vc_tta-panel.vc_active .vc_tta-panel-title a,
.page-id-11393 .vc_tta-panel.vc_active .vc_tta-title-text{
  color:#e4331b !important;
}
.page-id-11393 .vc_tta-panel.vc_active .vc_tta-controls-icon::before,
.page-id-11393 .vc_tta-panel.vc_active .vc_tta-controls-icon::after{
  border-color:#e4331b !important;
}

.page-id-11393 .faq-img img{
  max-width:340px !important;
  width:100% !important;
  height:auto;
}
.page-id-11393 .faq-img{ text-align:center; }

/* Healthcare (11393) — Integrations */
.page-id-11393 .intg-grid{
  display:flex; flex-wrap:wrap; justify-content:center;
  gap:22px; max-width:1040px; margin:34px auto 0;
}
.page-id-11393 .intg-card{
  flex:1 1 300px; max-width:330px;
  background:#fff; border:1px solid #eef0f3; border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,0.06); padding:26px 24px; text-align:left;
}
.page-id-11393 .intg-cat{
  font-size:13px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  color:#e4331b; margin-bottom:14px;
}
.page-id-11393 .intg-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.page-id-11393 .intg-chips span{
  background:#f4f6f8; color:#1f2a37; font-size:14px; font-weight:600;
  padding:7px 12px; border-radius:8px;
}

/* Healthcare (11393) — Standards & compliance pills (4×2) */
.page-id-11393 .hipaa-pills{
  display:grid !important;
  grid-template-columns:repeat(4, 1fr);
  grid-auto-rows:1fr;
  gap:14px; max-width:920px; margin:34px auto 0;
}
.page-id-11393 .hipaa-pill{
  display:flex; align-items:center; gap:10px; height:100%;
  padding:14px 16px; border-radius:12px; text-align:left;
  background:rgba(255,255,255,0.6);
  border:1px solid rgba(228,51,27,0.20);
  box-shadow:0 6px 18px rgba(0,0,0,0.05);
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
}
.page-id-11393 .hipaa-pill i,
.page-id-11393 .hipaa-pill svg{font-size:20px; width:20px !important; height:20px !important;
  color:#e4331b !important; fill:#e4331b !important; flex:0 0 auto;
}
.page-id-11393 .hipaa-pill span{ font-size:15px !important; font-weight:600; color:#1f2a37; line-height:1.35; }
@media (max-width:900px){ .page-id-11393 .hipaa-pills{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .page-id-11393 .hipaa-pills{ grid-template-columns:1fr; } }

/* Home Page - Contact Us (#11360) — align full-width rows to the field gutter */
#wpforms-11360 .wpforms-field-textarea{ margin-left:6px !important; }
#wpforms-11360 .wpforms-recaptcha-container,
#wpforms-11360 .wpforms-submit-container{ padding-left:6px !important; }

/* ===== Epic page (11672) — design system (reuses hub styling) ===== */
/* Hide theme title bar (desktop + mobile header) on custom hero pages */
body.page-id-11393 .page_title_container,
body.page-id-11672 .page_title_container,
body.page-id-11747 .page_title_container,
body.page-id-11748 .page_title_container,
body.page-id-11731 .page_title_container {
    display: none !important;
}

/* Hero + headings */
.page-id-11672 .rb_textmodule_subtitle{ color:#e4331b !important; font-size:14px !important; font-weight:700 !important; letter-spacing:2px !important; text-transform:uppercase !important; margin:0 0 14px !important; }
.page-id-11672 h1.rb_textmodule_title{ font-size:52px !important; line-height:1.1 !important; font-weight:700 !important; color:#1f2a37 !important; padding-bottom:20px !important; }
.page-id-11672 h2.rb_textmodule_title{ font-size:38px !important; line-height:1.15 !important; font-weight:700 !important; color:#1f2a37 !important; padding-bottom:16px !important; }
.page-id-11672 .rb_textmodule_content_wrapper{ color:#5b6675 !important; font-size:18px !important; line-height:1.6 !important; max-width:560px !important; }
.page-id-11672 .align_center .rb_textmodule_content_wrapper{ margin:0 auto !important; max-width:660px !important; }

/* Outlined pill button */
.page-id-11672 .rb_textmodule_button.rb_button{ background:transparent !important; color:#3e4a59 !important; border:2px solid #e4331b !important; }
.page-id-11672 .rb_textmodule_button.rb_button:hover{ background:#e4331b !important; color:#fff !important; }

/* Images fill column */
.page-id-11672 .wpb_single_image .vc_single_image-img{ width:100% !important; max-width:100% !important; }

/* Capability cards */
.page-id-11672 .rb_service_module.style_icon_top{ background:#fff !important; border:1px solid #eef0f3 !important; border-radius:16px !important; box-shadow:0 10px 30px rgba(0,0,0,0.06) !important; padding:32px 28px !important; height:100% !important; transition:box-shadow .2s ease, transform .2s ease; }
.page-id-11672 .rb_service_module.style_icon_top:hover{ box-shadow:0 16px 40px rgba(0,0,0,0.10) !important; transform:translateY(-3px); }
.page-id-11672 .service_icon_wrapper{ font-size:40px !important; line-height:1 !important; margin-bottom:18px !important; }
.page-id-11672 .service_icon_wrapper svg{ height:1em !important; width:auto !important; color:#e4331b !important; }
.page-id-11672 .service_icon_wrapper svg path{ fill:#e4331b !important; }
.page-id-11672 h3.service_title{ font-size:21px !important; line-height:1.3 !important; font-weight:600 !important; color:#1f2a37 !important; margin:0 0 12px !important; }
.page-id-11672 .rb_service_module .content_wrapper{ color:#5b6675 !important; font-size:16px !important; line-height:1.6 !important; }
.page-id-11672 .vc_row-flex .vc_column-inner{ height:100%; }

/* Hero trust strip */
.page-id-11672 .hero-trust{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:22px; font-size:14px; color:#5b6675; max-width:560px; }
.page-id-11672 .hero-trust-badge{ background:rgba(228,51,27,0.10); color:#e4331b; font-weight:700; padding:6px 12px; border-radius:20px; white-space:nowrap; }
.page-id-11672 .hero-trust strong{ color:#1f2a37; }

/* Standards pills (4x2) */
.page-id-11672 .hipaa-pills{ display:grid !important; grid-template-columns:repeat(4,1fr); grid-auto-rows:1fr; gap:14px; max-width:920px; margin:34px auto 0; }
.page-id-11672 .hipaa-pill{ display:flex; align-items:center; gap:10px; height:100%; padding:14px 16px; border-radius:12px; text-align:left; background:rgba(255,255,255,0.6); border:1px solid rgba(228,51,27,0.20); box-shadow:0 6px 18px rgba(0,0,0,0.05); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.page-id-11672 .hipaa-pill i, .page-id-11672 .hipaa-pill svg{ color:#e4331b !important; fill:#e4331b !important; font-size:18px; width:18px !important; height:18px !important; flex:0 0 auto; }
.page-id-11672 .hipaa-pill span{ font-size:15px; font-weight:600; color:#1f2a37; line-height:1.35; }

/* Results cards */
.page-id-11672 #results .vc_column-inner{ background:#fff !important; border:1px solid #eef0f3 !important; border-radius:16px !important; box-shadow:0 10px 30px rgba(0,0,0,0.06) !important; padding:38px 34px !important; height:100% !important; }
.page-id-11672 #results .rb_textmodule{ display:flex; flex-direction:column; }
.page-id-11672 #results .rb_textmodule_subtitle{ order:-1; color:#e4331b !important; font-size:54px !important; font-weight:800 !important; letter-spacing:0 !important; text-transform:none !important; line-height:1 !important; margin:0 0 4px !important; }
.page-id-11672 #results h3.rb_textmodule_title{ font-size:22px !important; font-weight:700 !important; color:#1f2a37 !important; margin:0 0 16px !important; }
.page-id-11672 #results .rb_textmodule_button{ display:inline-flex !important; align-self:flex-start !important; width:auto !important; }

/* FAQ open panel transparent */
.page-id-11672 .vc_tta-panel.vc_active{ background:transparent !important; }
.page-id-11672 .vc_tta-panel.vc_active .vc_tta-panel-title a, .page-id-11672 .vc_tta-panel.vc_active .vc_tta-title-text{ color:#e4331b !important; }
.page-id-11672 .vc_tta-panel.vc_active .vc_tta-controls-icon::before, .page-id-11672 .vc_tta-panel.vc_active .vc_tta-controls-icon::after{ border-color:#e4331b !important; }

/* Mobile */
@media (max-width:767px){ .page-id-11672 h1.rb_textmodule_title{ font-size:34px !important; } .page-id-11672 .rb_textmodule_content_wrapper{ font-size:16px !important; } }
@media (max-width:900px){ .page-id-11672 .hipaa-pills{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .page-id-11672 .hipaa-pills{ grid-template-columns:1fr; } }

.flip-x img{ transform: scaleX(-1); }

/* All WPForms fields — field background */
.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form input[type="tel"],
.wpforms-form input[type="url"],
.wpforms-form input[type="number"],
.wpforms-form input[type="password"],
.wpforms-form textarea,
.wpforms-form select{
  background-color:#f5f3f3 !important;
}

/* Epic (11672) — resize section images */
.page-id-11672 .contact-img img{ max-width:400px !important; width:100% !important; height:auto; }  /* ~30% smaller */
.page-id-11672 .faq-img img{ max-width:455px !important; width:100% !important; height:auto; }       /* ~20% smaller */

/*EPIC linked chip looks identical to the others on healthcare page under integrations*/
.page-id-11393 .intg-chips a{ background:#f4f6f8; color:#1f2a37; font-size:14px; font-weight:600; padding:7px 12px; border-radius:8px; text-decoration:none; display:inline-block; }
.page-id-11393 .intg-chips a:hover{ background:#e4331b; color:#fff; }

/* ===== Tark MD3 Foundation (tokens + components) ===== */
:root{
  /* color roles — mapped to brand palette */
  --md-primary:#e4331b;            /* brand red */
  --md-on-primary:#ffffff;
  --md-primary-container:#fddad6;  /* brand soft red */
  --md-on-primary-container:#5c130a;/* derived: AA text on soft red */
  --md-secondary:#3f3d56;          /* brand navy */
  --md-surface:#ffffff;
  --md-surface-1:#faf7f7;          /* warm neutral (≈ brand #f2ebee) */
  --md-surface-variant:#f5f3f3;    /* brand field grey */
  --md-band:#f8e7e6;               /* brand soft-red band */
  --md-on-surface:#2f2e41;         /* brand darkest navy — headings */
  --md-on-surface-variant:#6f758d; /* brand muted grey — body */
  --md-outline:#e6e6e6;            /* brand */
  --md-outline-strong:#cccccc;     /* brand */
  /* shape scale */
  --md-r-sm:8px; --md-r-md:12px; --md-r-lg:16px; --md-r-xl:28px;
  /* elevation (light, mobile-friendly) */
  --md-e1:0 1px 2px rgba(0,0,0,.06),0 1px 3px rgba(0,0,0,.05);
  --md-e2:0 6px 18px rgba(0,0,0,.06);
  --md-e3:0 10px 30px rgba(0,0,0,.07);
}

/* Buttons (MD3 filled / tonal / outlined) with state layers */
.tk-btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;line-height:1;border-radius:var(--md-r-md);padding:14px 24px;border:2px solid transparent;cursor:pointer;transition:background .2s,box-shadow .2s,color .2s;text-decoration:none}
.tk-btn--filled{background:var(--md-primary);color:var(--md-on-primary)}
.tk-btn--filled:hover{box-shadow:var(--md-e2);background:#c92c16}
.tk-btn--tonal{background:var(--md-primary-container);color:var(--md-on-primary-container)}
.tk-btn--tonal:hover{filter:brightness(.97)}
.tk-btn--outlined{background:transparent;color:var(--md-secondary);border-color:var(--md-primary)}
.tk-btn--outlined:hover{background:var(--md-primary);color:#fff}

/* Card / chip */
.tk-card{background:var(--md-surface);border:1px solid var(--md-outline);border-radius:var(--md-r-lg);box-shadow:var(--md-e3);padding:28px}
.tk-chip{display:inline-flex;align-items:center;gap:8px;background:var(--md-surface-variant);color:var(--md-on-surface);font-weight:600;font-size:14px;padding:8px 14px;border-radius:var(--md-r-sm)}

/* Segmented buttons */
.tk-seg{display:inline-flex;border:1px solid var(--md-outline-strong);border-radius:999px;padding:4px;background:var(--md-surface)}
.tk-seg a{padding:10px 22px;border-radius:999px;font-weight:700;color:var(--md-secondary);text-decoration:none}
.tk-seg a[aria-selected="true"],.tk-seg a.is-active{background:var(--md-on-surface);color:#fff}

/* Bento grid */
.tk-bento{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tk-bento .tk-card{margin:0}
.tk-bento .is-wide{grid-column:span 2}
.tk-bento .is-tall{grid-row:span 2}

/* Numbered horizontal steps */
.tk-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:s}
.tk-step{position:relative;padding-top:14px}
.tk-step::before{counter-increment:s;content:counter(s,decimal-leading-zero);display:block;font-size:34px;font-weight:800;color:var(--md-primary-container)}
.tk-step h3{font-size:18px;color:var(--md-on-surface);margin:6px 0 8px}
.tk-step p{font-size:15px;color:var(--md-on-surface-variant);line-height:1.55}

/* Metric strip */
.tk-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.tk-metric .n{font-size:46px;font-weight:800;color:var(--md-primary);line-height:1}
.tk-metric .l{font-size:15px;color:var(--md-on-surface-variant);margin-top:6px}

/* Responsive + motion */
@media(max-width:900px){.tk-bento,.tk-steps,.tk-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.tk-bento,.tk-steps,.tk-metrics{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.tk-btn,.tk-card{transition:none}}

/* ============================================================
   INTEGRATIONS — Bento selector + tabular reveal (reusable)
   Namespace: .tkb  |  JS-free (CSS-only via radio inputs)
   Reuses MD3 tokens (--md-*) with brand fallbacks.
   ============================================================ */
.tkb{
  --r:var(--md-primary,#e4331b);
  --ink:var(--md-on-surface,#2f2e41);
  --mut:var(--md-on-surface-variant,#6f758d);
  --pc:var(--md-primary-container,#fddad6);
  --opc:var(--md-on-primary-container,#5c130a);
  --surf:#fff;
  --band:var(--md-surface-variant,#f5f3f3);
  --line:var(--md-outline,#e6e6e6);
  --r-tile:var(--md-r-lg,16px);   /* tile radius  */
  --r-wrap:var(--md-r-xl,28px);   /* panel radius */
  max-width:100%;margin:34px auto 0;
}

/* Radios store which category is open (no JS) */
.tkb .tkb-radio{position:absolute;opacity:0;width:0;height:0;pointer-events:none}

/* --- BENTO GRID of category tiles ---------------------------------- */
.tkb .tkb-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
}
/* Bento rhythm: two wide + mixed row (edit spans to re-balance) */
.tkb .tkb-tile:nth-of-type(1){grid-column:span 2}   /* EHR (wide)      */
.tkb .tkb-tile:nth-of-type(2){grid-column:span 2}   /* Interop (wide)  */
.tkb .tkb-tile:nth-of-type(3){grid-column:span 1}   /* RCM             */
.tkb .tkb-tile:nth-of-type(4){grid-column:span 1}   /* E-prescribing   */
.tkb .tkb-tile:nth-of-type(5){grid-column:span 2}   /* RPM (wide)      */

/* Tile = MD3 elevated surface, acts as a button */
.tkb .tkb-tile{
  display:flex;align-items:center;gap:14px;cursor:pointer;user-select:none;
  padding:20px 22px;background:var(--surf);border:1px solid var(--line);
  border-radius:var(--r-tile);box-shadow:0 8px 24px rgba(0,0,0,.06);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
.tkb .tkb-tile:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(0,0,0,.10);background:var(--band)}

/* Icon bubble */
.tkb .tkb-ico{flex:0 0 auto;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--pc)}
.tkb .tkb-ico svg{width:22px;height:22px;fill:none;stroke:var(--r);stroke-width:2}
.tkb .tkb-meta{display:flex;flex-direction:column;gap:3px;min-width:0}
.tkb .tkb-name{font-size:16px;font-weight:700;color:var(--ink);line-height:1.2}
.tkb .tkb-count{font-size:13px;color:var(--mut)}

/* Selected tile — MD3 "primary container" state */
#tb1:checked~.tkb-grid .tkb-tile[for=tb1],
#tb2:checked~.tkb-grid .tkb-tile[for=tb2],
#tb3:checked~.tkb-grid .tkb-tile[for=tb3],
#tb4:checked~.tkb-grid .tkb-tile[for=tb4],
#tb5:checked~.tkb-grid .tkb-tile[for=tb5]{
  background:var(--pc);border-color:var(--r);
}
#tb1:checked~.tkb-grid .tkb-tile[for=tb1] .tkb-name,
#tb2:checked~.tkb-grid .tkb-tile[for=tb2] .tkb-name,
#tb3:checked~.tkb-grid .tkb-tile[for=tb3] .tkb-name,
#tb4:checked~.tkb-grid .tkb-tile[for=tb4] .tkb-name,
#tb5:checked~.tkb-grid .tkb-tile[for=tb5] .tkb-name{color:var(--opc)}
#tb1:checked~.tkb-grid .tkb-tile[for=tb1] .tkb-ico,
#tb2:checked~.tkb-grid .tkb-tile[for=tb2] .tkb-ico,
#tb3:checked~.tkb-grid .tkb-tile[for=tb3] .tkb-ico,
#tb4:checked~.tkb-grid .tkb-tile[for=tb4] .tkb-ico,
#tb5:checked~.tkb-grid .tkb-tile[for=tb5] .tkb-ico{background:var(--r)}
#tb1:checked~.tkb-grid .tkb-tile[for=tb1] .tkb-ico svg,
#tb2:checked~.tkb-grid .tkb-tile[for=tb2] .tkb-ico svg,
#tb3:checked~.tkb-grid .tkb-tile[for=tb3] .tkb-ico svg,
#tb4:checked~.tkb-grid .tkb-tile[for=tb4] .tkb-ico svg,
#tb5:checked~.tkb-grid .tkb-tile[for=tb5] .tkb-ico svg{stroke:#fff}

/* Keyboard focus ring (accessibility) */
.tkb .tkb-radio:focus-visible~.tkb-grid .tkb-tile[for]{outline:2px solid var(--opc);outline-offset:2px}

/* --- REVEAL PANEL: tabular chip grid ------------------------------- */
.tkb .tkb-detail{margin-top:18px;background:var(--band);border-radius:var(--r-wrap);padding:26px}
.tkb .tkb-panel{display:none;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;animation:tkbfade .22s ease}
#tb1:checked~.tkb-detail .tkb-p1,
#tb2:checked~.tkb-detail .tkb-p2,
#tb3:checked~.tkb-detail .tkb-p3,
#tb4:checked~.tkb-detail .tkb-p4,
#tb5:checked~.tkb-detail .tkb-p5{display:grid}
@keyframes tkbfade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* Chip = one table-like cell */
.tkb .tkb-chip{
  display:flex;align-items:center;gap:9px;padding:13px 16px;border-radius:12px;
  background:var(--surf);border:1px solid var(--line);color:var(--mut);
  font-size:15px;font-weight:600;line-height:1.2;
}
.tkb .tkb-chip::before{content:"\2713";color:var(--r);font-weight:700} /* red check */
/* Linked chips (have a spoke page) */
.tkb a.tkb-chip.is-link{color:var(--ink);text-decoration:none;border-color:rgba(228,51,27,.35);cursor:pointer;transition:all .16s ease}
.tkb a.tkb-chip.is-link::after{content:"\2192";margin-left:auto;color:var(--r);opacity:0;transform:translateX(-4px);transition:all .16s ease}
.tkb a.tkb-chip.is-link:hover{background:var(--pc);border-color:var(--pc);color:var(--opc)}
.tkb a.tkb-chip.is-link:hover::before,
.tkb a.tkb-chip.is-link:hover::after{color:var(--opc)}
.tkb a.tkb-chip.is-link:hover::after{opacity:1;transform:translateX(0)}

/* --- Responsive ---------------------------------------------------- */
@media(max-width:900px){.tkb .tkb-grid{grid-template-columns:repeat(2,1fr)}
  .tkb .tkb-tile{grid-column:span 1 !important}}
@media(max-width:520px){.tkb .tkb-grid{grid-template-columns:1fr}
  .tkb .tkb-detail{padding:18px}}

/* Responsive images: proportional, centered, never oversized (tablet & mobile) */
@media (max-width: 1024px) {
  .wpb_single_image .vc_single_image-img {
    width: auto !important;      /* stop forcing full-column width */
    max-width: 100% !important;  /* scale down to fit, never overflow */
    height: auto !important;     /* keep aspect ratio */
    max-height: 420px;           /* cap tall images so they don't dominate */
    margin-left: auto;
    margin-right: auto;
    display: block;              /* center when narrower than column */
  }
}

/* ============================================================
   Mobile type scale for integration spoke pages (≤600px)
   Scoped to .rcm-* sections so only the spokes are affected.
   Raises phone font sizes to a balanced, readable scale.
   ============================================================ */
@media (max-width: 600px) {

  /* Hero headline */
  .rcm-hero h1.rb_textmodule_title {
    font-size: 32px !important;
    line-height: 1.2 !important;
  }

  /* Section headings (What we connect, Built for HIPAA, Outcomes, FAQ, CTA) */
  .rcm-head  h2.rb_textmodule_title,
  .rcm-band  h2.rb_textmodule_title {
    font-size: 26px !important;
    line-height: 1.25 !important;
  }

  /* Body / intro paragraphs */
  .rcm-hero .rb_textmodule_content_wrapper,
  .rcm-head .rb_textmodule_content_wrapper,
  .rcm-band .rb_textmodule_content_wrapper {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }

  /* Red eyebrow labels (HOW IT WORKS, PROOF, etc.) */
  .rcm-hero .rb_textmodule_subtitle,
  .rcm-head .rb_textmodule_subtitle,
  .rcm-band .rb_textmodule_subtitle {
    font-size: 13px !important;
  }

  /* Big proof numbers (52%, 70%, 98%+) */
  .tk-metric .n {
    font-size: 48px !important;
  }
}

/* Spoke hero: halve top spacing on tablet & mobile */
@media (max-width: 1024px) {
  .rcm-hero {
    padding-top: 60px !important;
  }
}

/* Uniform contact-form field alignment (all forms) */
@media (max-width: 600px) {
  .wpforms-container .wpforms-field-row,
  .wpforms-container [class*="wpforms-field-row-block"],
  .wpforms-container [class*="wpforms-one-"],
  .wpforms-container [class*="wpforms-two-"],
  .wpforms-container [class*="wpforms-three-"],
  .wpforms-container [class*="wpforms-four-"] {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
  }
  .wpforms-container .wpforms-field {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .wpforms-container input,
  .wpforms-container textarea,
  .wpforms-container select {
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* Oracle Health (Cerner): enlarge step numbers 01–04 to 3× */
body.page-id-11748 .tk-steps .tk-step::before {
  font-size: 70px !important;   /* was 34px */
  line-height: 1 !important;
}

/* athenahealth (Cerner): enlarge step numbers 01–04 to 3× */
body.page-id-11747 .tk-steps .tk-step::before {
  font-size: 70px !important;   /* was 34px */
  line-height: 1 !important;
}

/*
   Contact form success message: remove WPForms' default green box
   so only our branded pink card (in the confirmation HTML) shows.
   Applies to all forms site-wide.*/

.wpforms-confirmation-container-full,   /* full-width confirmation wrapper */
.wpforms-confirmation-container,        /* standard confirmation wrapper   */
.wpforms-container .wpforms-confirmation-container-full {
  background: transparent !important;   /* kill the light-green fill      */
  border: 0 !important;                 /* remove the green border        */
  box-shadow: none !important;          /* remove any default shadow      */
  padding: 0 !important;                /* let our card control spacing   */
}

/* ==========================================================================
   Tark homepage hero. Paste into your central custom CSS
   (Appearance > Customize > Additional CSS, or theme options custom CSS).
   Font family is inherited from the theme on purpose, so it matches the site.
   ========================================================================== */

/* Section shell. overflow:hidden lets the arrow bleed off the corner. */
.tk-hero {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  margin-top: 20px;          /* nudge the whole section down */
  min-height: clamp(440px, 46vw, 660px);  /* tall enough to show the full arrow */
  padding: clamp(48px, 8vw, 110px) clamp(20px, 6vw, 80px);
}

/* Arrow watermark, fully visible (no bleed), inset from the top and right edges. */
.tk-hero__arrow {
  position: absolute;
  top: clamp(20px, 3vw, 44px);
  right: clamp(16px, 3vw, 60px);
  width: clamp(260px, 40vw, 560px);
  height: auto;
  opacity: 0.045;             /* watermark faintness. raise/lower to taste */
  pointer-events: none;
  z-index: 0;
}

/* Text sits above the watermark. */
.tk-hero__inner {
  position: relative;
  z-index: 1;
  max-width: 900px;
  margin: 0 auto;
}

/* Eyebrow: catchy, quiet. */
.tk-hero .tk-hero__eyebrow {
  margin: 0 0 0 !important;   /* !important beats the theme's default paragraph margin */
  padding: 0;
  line-height: 1.2;
  color: #e4331b;
  font-weight: 600;
  font-size: clamp(12px, 1.4vw, 14px);
  letter-spacing: 3px;
  text-transform: uppercase;
}

/* Headline. This is the page H1. Font bumped 20%. */
.tk-hero .tk-hero__title {
  margin: 0 !important;          /* kill any theme-injected h1 margin */
  padding-top: 0.15em;           /* THE GAP KNOB: eyebrow-to-headline space. lower = tighter */
  color: #1f2430;
  font-weight: 700;
  line-height: 1.22;             /* governs the spacing between ALL three lines equally */
  letter-spacing: -0.5px;
  font-size: clamp(32px, 8.45vw, 87px);   /* min lowered so long words fit on small screens */
}

/* All headline lines share the same spacing (line-height only, no extra margin). */
.tk-hero__l1, .tk-hero__l2, .tk-hero__l3 { display: block; margin: 0; }
/* Keep "Let's <word>" from wrapping mid-phrase as the word cycles. */
.tk-hero__l2 { white-space: nowrap; }

/* Rotating word wrapper. nowrap keeps the word and caret together. */
.tk-rot { position: relative; display: inline-block; white-space: nowrap; }
.tk-rot__word { color: #e4331b; }

/* Blinking caret. Pure CSS so the JS only handles typing. */
.tk-rot__caret {
  display: inline-block;
  width: 3px;
  height: 0.95em;
  margin-left: 3px;
  background: #e4331b;
  vertical-align: -0.1em;
  animation: tkBlink 0.96s steps(1) infinite;
}
@keyframes tkBlink { 0%, 50% { opacity: 1; } 50.01%, 100% { opacity: 0; } }

/* Buttons. */
.tk-hero__cta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: clamp(28px, 4vw, 40px);
}
.tk-btn {
  display: inline-block;
  font-size: clamp(15px, 1.6vw, 17px);
  font-weight: 600;
  padding: 14px 28px;
  border-radius: 2em;        /* matches the site's WPBakery "round" buttons */
  text-decoration: none;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}
.tk-btn:hover { transform: translateY(-1px); }
.tk-btn--primary { background: #e4331b; color: #ffffff; }
.tk-btn--primary:hover { background: #c72a15; color: #ffffff; }
.tk-btn--ghost { background: transparent; color: #1f2430; border: 1.5px solid #d3d6dd; }
.tk-btn--ghost:hover { border-color: #1f2430; color: #1f2430; }

/* Respect users who ask for less motion: hide caret, JS shows one static word. */
@media (prefers-reduced-motion: reduce) {
  .tk-rot__caret { display: none; }
}


/* ==========================================================================
   "What's Getting in the Way Today?" horizontal cards.
   Paste into your central custom CSS. Left accent bar matches the contact
   confirmation (#e4331b). Cards stack to one column on mobile.
   ========================================================================== */

.tk-pcards {
  display: grid;
  grid-template-columns: 1fr 1fr;   /* 2 x 2 */
  gap: 16px;
  max-width: 1000px;
  margin: 0 auto 40px;              /* 40px of space after the section */
}

/* Card shell. overflow:hidden clips the accent bar to the rounded corners. */
.tk-pcard {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid #ecedf1;
  border-radius: 12px;
  padding: 24px 30px 24px 34px;
}

/* Darker left vertical accent, like the contact confirmation message. */
.tk-pcard::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 5px;                 /* bar thickness */
  background: #e4331b;        /* brand red. use #c72a15 for a deeper shade */
}

/* Title stacked above copy (works best in a half-width card). */
.tk-pcard__body { display: block; }
.tk-pcard__title {
  margin: 0 0 8px;
  font-size: clamp(17px, 1.9vw, 21px);
  font-weight: 700;
  color: #1f2430;
  line-height: 1.25;
}
.tk-pcard__text {
  margin: 0;
  color: #5b6270;
  font-size: clamp(15px, 1.5vw, 16.5px);
  line-height: 1.6;
}

@media (max-width: 767px) {
  .tk-pcards {
    grid-template-columns: 1fr;   /* stack to one column */
    margin-bottom: 20px;          /* 20px after the last card on mobile */
  }
  .tk-pcard { padding: 20px 22px 20px 26px; }
}
/* ==========================================================================
   Big decorative quote mark in the testimonial section, top-left corner.
   Sits behind the cards so the testimonials overlap it.
   Scoped to the homepage testimonial module by class (not the auto-generated
   id, which changes every time the page is saved in WPBakery).
   ========================================================================== */

body.home .rb_testimonials_module { position: relative; }

body.home .rb_testimonials_module::before {
  content: "\201C";                 /* left double quotation mark */
  position: absolute;
  top: -34px;                       /* nudge up. use 0 if the top gets clipped */
  left: -6px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(120px, 16vw, 200px);
  line-height: 1;
  color: #e4331b;                   /* brand red */
  opacity: 0.14;                    /* faintness. raise for bolder */
  z-index: 0;
  pointer-events: none;
}

/* Keep the testimonial cards above the quote so they overlap it. */
body.home .rb_testimonials_module .testimonial { position: relative; z-index: 1; }

/* ==========================================================================
   "How we work" process section. Central custom CSS. NO JavaScript.
   Header lives in a separate RB text block above this section.
   Radio inputs (#tkp0..3) drive the active step via :checked.
   ========================================================================== */

.tk-proc { background: #ffffff; padding: clamp(40px, 6vw, 80px) clamp(20px, 6vw, 80px); }
.tk-proc__inner { max-width: 1100px; margin: 0 auto; }

/* Radios hidden; labels toggle them */
.tk-proc__radio { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }

.tk-proc__grid { display: grid; grid-template-columns: 44% 1fr; gap: 28px; align-items: start; }

/* Steps (left) */
.tk-proc__step { border-left: 3px solid #e6e8ec; padding: 4px 0 4px 18px; margin-bottom: 8px; }
.tk-proc__btn {
  display: block; width: 100%; text-align: left; cursor: pointer;
  padding: 8px 0; color: #8a90a0; font-weight: 600; font-size: clamp(17px, 1.9vw, 20px); line-height: 1.25;
}
.tk-proc__body { display: none; padding-bottom: 12px; }
.tk-proc__body p { margin: 4px 0 14px; color: #5b6270; font-size: 15px; line-height: 1.6; }

/* CTA pill */
.tk-proc__link {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  background: #f5f3f3; color: #e4331b; font-weight: 600; font-size: 13px;
  line-height: 1.2 !important; padding: 3px 15px !important; border-radius: 999px; text-decoration: none;
  border: 1px solid #ece7e6; transition: background 0.15s ease;
}
.tk-proc__link:hover { background: #efeae9; }
.tk-proc__arr { width: 13px; height: 13px; flex: 0 0 auto; color: #e4331b; display: block; }

/* Panels */
.tk-proc__panel { position: relative; overflow: hidden; background: #f5f3f3; border: 1px solid #ece7e6; border-radius: 16px; padding: 26px; display: none; }
.tk-proc__wm { position: absolute; top: -40px; right: -40px; width: 230px; height: 230px; opacity: 0.06; pointer-events: none; }
.tk-proc__num { position: relative; width: 52px; height: 52px; border-radius: 14px; background: #fff; border: 1px solid #ece7e6; display: flex; align-items: center; justify-content: center; color: #e4331b; font-weight: 700; font-size: 24px; }
.tk-proc__pttl { position: relative; margin-top: 18px; color: #1f2430; font-weight: 700; font-size: 21px; }
.tk-proc__pts { position: relative; list-style: none; margin: 18px 0 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.tk-proc__pts li { background: #fff; border: 1px solid #ece7e6; border-radius: 10px; padding: 11px 14px 11px 38px; color: #1f2430; font-size: 15px; font-weight: 500; position: relative; }
.tk-proc__pts li::before { content: "\2713"; position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: #e4331b; font-weight: 700; }

.tk-proc__stage { position: sticky; top: 90px; }
.tk-proc__panel--inline { display: none; }

/* --- Active-step wiring via :checked --- */
#tkp0:checked ~ .tk-proc__grid .tk-proc__step[data-i="0"],
#tkp1:checked ~ .tk-proc__grid .tk-proc__step[data-i="1"],
#tkp2:checked ~ .tk-proc__grid .tk-proc__step[data-i="2"],
#tkp3:checked ~ .tk-proc__grid .tk-proc__step[data-i="3"] { border-left-color: #e4331b; }

#tkp0:checked ~ .tk-proc__grid .tk-proc__step[data-i="0"] .tk-proc__btn,
#tkp1:checked ~ .tk-proc__grid .tk-proc__step[data-i="1"] .tk-proc__btn,
#tkp2:checked ~ .tk-proc__grid .tk-proc__step[data-i="2"] .tk-proc__btn,
#tkp3:checked ~ .tk-proc__grid .tk-proc__step[data-i="3"] .tk-proc__btn { color: #1f2430; }

#tkp0:checked ~ .tk-proc__grid .tk-proc__step[data-i="0"] .tk-proc__body,
#tkp1:checked ~ .tk-proc__grid .tk-proc__step[data-i="1"] .tk-proc__body,
#tkp2:checked ~ .tk-proc__grid .tk-proc__step[data-i="2"] .tk-proc__body,
#tkp3:checked ~ .tk-proc__grid .tk-proc__step[data-i="3"] .tk-proc__body { display: block; }

#tkp0:checked ~ .tk-proc__grid .tk-proc__stage .tk-proc__panel[data-i="0"],
#tkp1:checked ~ .tk-proc__grid .tk-proc__stage .tk-proc__panel[data-i="1"],
#tkp2:checked ~ .tk-proc__grid .tk-proc__stage .tk-proc__panel[data-i="2"],
#tkp3:checked ~ .tk-proc__grid .tk-proc__stage .tk-proc__panel[data-i="3"] { display: block; }

/* Mobile: single column, inline panel under the active step, no right stage. */
@media (max-width: 767px) {
  .tk-proc__grid { grid-template-columns: 1fr; }
  .tk-proc__stage { display: none; }
  #tkp0:checked ~ .tk-proc__grid .tk-proc__step[data-i="0"] .tk-proc__panel--inline,
  #tkp1:checked ~ .tk-proc__grid .tk-proc__step[data-i="1"] .tk-proc__panel--inline,
  #tkp2:checked ~ .tk-proc__grid .tk-proc__step[data-i="2"] .tk-proc__panel--inline,
  #tkp3:checked ~ .tk-proc__grid .tk-proc__step[data-i="3"] .tk-proc__panel--inline { display: block; margin-top: 14px; }
}

#contact-top { padding-top: 85px !important; }
@media (max-width: 767px) { #contact-top { padding-top: 55px !important; } }

/* ==========================================================================
   Career status notice. Paste into your central custom CSS.
   ========================================================================== */
.tk-cnote {
  position: relative; overflow: hidden;
  background: #fff4f2; border: 1px solid #fddad6; border-radius: 12px;
  padding: 22px 26px 22px 30px; max-width: 900px; margin: 20px 0;
}
.tk-cnote::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: #e4331b; }
.tk-cnote__wm { position: absolute; top: 20px; right: 20px; width: 120px; height: auto; opacity: 0.06; pointer-events: none; }
.tk-cnote__chip {
  position: relative; display: inline-flex; align-items: center; gap: 7px;
  background: #fff; border: 1px solid #fddad6; color: #e4331b;
  font-weight: 600; font-size: 12px; letter-spacing: 1px; text-transform: uppercase;
  padding: 5px 13px; border-radius: 999px; line-height: 1.2;
}
.tk-cnote__dot { width: 7px; height: 7px; border-radius: 50%; background: #e4331b; display: inline-block; }
.tk-cnote__msg { position: relative; margin: 14px 0 0; color: #4a4f5c; font-size: 15px; line-height: 1.65; max-width: 68ch; }

@media (max-width: 767px) {
  .tk-cnote { padding: 18px 18px 18px 22px; }
}


/* ==========================================================================
   Follow buttons (LinkedIn, Facebook, Instagram) in brand color.
   Paste into your central custom CSS.
   ========================================================================== */
.tk-follow { max-width: 900px; margin: 20px auto; text-align: center; }
.tk-follow__lead { margin: 0 0 14px; color: #1f2430; font-size: 16px; font-weight: 600; }
.tk-follow__row { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
 
.tk-follow__btn {
  display: inline-flex; align-items: center; gap: 14px;
  background: #fff; border: 1px solid #e6e6e6; border-radius: 14px;
  padding: 15px 24px; text-decoration: none;
  transition: border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}
.tk-follow__btn:hover { border-color: #e4331b; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(228,51,27,0.10); }
 
.tk-follow__ic { width: 34px; height: 34px; flex: 0 0 auto; fill: #e4331b; display: block; }
.tk-follow__t { display: flex; flex-direction: column; line-height: 1.15; }
.tk-follow__t small { font-size: 14px; color: #6f758d; font-weight: 500; }
.tk-follow__t b { font-size: 20px; color: #1f2430; font-weight: 700; }
 
@media (max-width: 767px) {
  .tk-follow__row { flex-direction: column; }
  .tk-follow__btn { width: 100%; }
}

/* ============================================================================
   TARK CASE STUDY  —  shared master stylesheet. Pure CSS, no JS.
   Scoped under .tk-cs. Fonts/spacing forced over the theme; theme italics killed.
   ============================================================================ */

.tk-cs { max-width: none; margin: 0; color: #1f2430; }
.tk-cs, .tk-cs * { font-style: normal !important; }
.tk-cs p { margin: 0 0 1.15em !important; color: #4a4f5c; font-size: 18px !important; line-height: 1.8; }
.tk-cs p:last-child { margin-bottom: 0 !important; }
.tk-cs a { color: #e4331b; }

/* Header */
.tk-cs__head { position: relative; z-index: 0; padding-top: 4px; }
/* Keep all other blocks above the watermark so it can run behind them into later sections. */
.tk-cs > *:not(.tk-cs__head) { position: relative; z-index: 1; }
.tk-cs__wm { position: absolute; top: 10px; right: 10px; width: 720px; height: auto; opacity: 0.05; pointer-events: none; }
.tk-cs__eyebrow { position: relative; color: #e4331b; font-weight: 600; font-size: 13px; letter-spacing: 2px; text-transform: uppercase; }
.tk-cs__title { position: relative; margin: 12px 0 0; font-size: clamp(32px, 4.6vw, 46px); line-height: 1.15; font-weight: 700; letter-spacing: -0.5px; color: #1f2430; }
.tk-cs .tk-cs__lead { position: relative; margin: 18px 0 0; font-size: clamp(20px, 2.4vw, 24px) !important; line-height: 1.55; color: #4a4f5c; }

/* Snapshot */
.tk-cs__snapshot { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 1px; background: #ecedf1; border: 1px solid #ecedf1; border-radius: 12px; overflow: hidden; margin: 30px 0; }
.tk-cs__snap { background: #fff; padding: 16px 18px; }
.tk-cs__snap dt { font-size: 11px; letter-spacing: 1px; text-transform: uppercase; color: #8a90a0; margin: 0; }
.tk-cs__snap dd { margin: 30px 0 0; font-size: 17px; font-weight: 600; color: #1f2430; }

/* Metric strip */
.tk-cs__metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 14px; margin: 30px 0; }
.tk-cs__metric { background: #f7f8fa; border: 1px solid #ecedf1; border-radius: 12px; padding: 22px; }
.tk-cs__metric--hl { background: #fff4f2; border-color: #fddad6; }
.tk-cs__metric .num { font-size: clamp(30px, 3.8vw, 38px); font-weight: 700; line-height: 1; color: #1f2430; }
.tk-cs__metric--hl .num { color: #e4331b; }
.tk-cs__metric .lbl { margin-top: 8px; font-size: 14px; color: #5b6270; }

/* Sections */
.tk-cs__section { margin: 40px 0 0; }
.tk-cs__label { color: #e4331b; font-weight: 600; font-size: 13px; letter-spacing: 2px; text-transform: uppercase; }
.tk-cs__h2 { margin: 8px 0 16px; font-size: clamp(23px, 3vw, 30px); font-weight: 700; line-height: 1.25; color: #1f2430; }

/* Accent point cards (challenge) */
.tk-cs__points { display: flex; flex-direction: column; gap: 12px; }
.tk-cs__point { border-left: 3px solid #e4331b; background: #fafafb; border-radius: 0 10px 10px 0; padding: 16px 20px; font-size: 17px; line-height: 1.65; color: #3a4050; }

/* Results variant: red check, no left bar, no fill */
.tk-cs__point--check { position: relative; border-left: 0; background: transparent; border-radius: 0; padding: 6px 0 6px 40px; }
.tk-cs__point--check::before { content: "\2713"; position: absolute; left: 6px; top: 5px; color: #e4331b; font-weight: 800; font-size: 22px; line-height: 1.4; }

/* Numbered steps */
.tk-cs__steps { display: flex; flex-direction: column; gap: 16px; }
.tk-cs__step { display: flex; gap: 16px; align-items: flex-start; }
.tk-cs__step .n { flex: 0 0 auto; width: 38px; height: 38px; border-radius: 10px; background: #fff; border: 1px solid #ecedf1; color: #e4331b; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.tk-cs__step .txt { font-size: 17px; line-height: 1.7; color: #4a4f5c; }

/* Tech chips */
.tk-cs__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.tk-cs__chips span { background: #f5f3f3; border: 1px solid #ece7e6; color: #1f2430; font-size: 14px; font-weight: 500; padding: 7px 15px; border-radius: 999px; }

/* Figure */
.tk-cs__figure { margin: 24px 0 0; }
.tk-cs__figure img { width: 100%; height: auto; border-radius: 12px; border: 1px solid #ecedf1; display: block; }
.tk-cs__figure figcaption { margin-top: 8px; font-size: 13px; color: #8a90a0; text-align: center; }

/* Inline pull quote */
.tk-cs p.tk-cs__pull { margin: 34px 0 !important; padding-left: 22px; border-left: 4px solid #e4331b; font-size: clamp(21px, 2.6vw, 26px) !important; line-height: 1.45; font-weight: 600; color: #1f2430; }

/* Takeaway callout */
.tk-cs__callout { margin: 24px 0 0; background: #fff4f2; border: 1px solid #fddad6; border-radius: 12px; padding: 20px 22px; }

/* Testimonial (dark, larger) */
.tk-cs__quote { position: relative; overflow: hidden; margin: 40px 0 0; background: #1f2430; border-radius: 18px; padding: 40px 42px; }
.tk-cs__quote .mark { position: absolute; top: -6px; left: 20px; font-family: Georgia, "Times New Roman", serif; font-size: 150px; line-height: 1; color: #e4331b; opacity: 0.35; }
.tk-cs__quote p { position: relative; margin: 0 0 16px !important; color: #fff !important; font-size: clamp(19px, 2.4vw, 23px) !important; line-height: 1.6; }
.tk-cs__quote cite { position: relative; color: #c9ccd3; font-size: 15px; font-style: normal; }
.tk-cs__quote::before, .tk-cs__quote::after, .tk-cs__quote p::before, .tk-cs__quote p::after { content: none !important; }

/* CTA */
.tk-cs__cta { display: flex; flex-wrap: wrap; gap: 12px; margin: 32px 0 0; }
.tk-cs__btn { display: inline-flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 600; padding: 14px 28px; border-radius: 999px; text-decoration: none; line-height: 1.2; }
.tk-cs a.tk-cs__btn--primary { background: #e4331b; color: #fff !important; }
.tk-cs a.tk-cs__btn--primary:hover { background: #c72a15; color: #fff !important; }
.tk-cs a.tk-cs__btn--ghost { background: #fff; color: #1f2430 !important; border: 1px solid #d3d6dd; }
.tk-cs a.tk-cs__btn--ghost:hover { border-color: #e4331b; color: #e4331b !important; }

/* Related */
.tk-cs__related { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; margin: 16px 0 0; }
.tk-cs__related a { display: block; background: #fff; border: 1px solid #ecedf1; border-radius: 12px; padding: 16px 18px; text-decoration: none; color: #1f2430; font-weight: 600; }
.tk-cs__related a:hover { border-color: #e4331b; }

@media (max-width: 767px) {
  .tk-cs__quote { padding: 28px 24px; }
  .tk-cs__btn { width: 100%; }
}

/* ============================================================================
   TARK  —  Healthcare Interoperability page. Scoped under .tk-io. Pure CSS.
   Brand tokens: red #e4331b, coral #ff6a52, ink #1f2430, muted #5b6270,
   borders #ecedf1, pink #fff4f2/#fddad6. No JS.
   ============================================================================ */

.tk-io { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); color: #1f2430; overflow-x: hidden; }
.tk-io, .tk-io * { font-style: normal !important; box-sizing: border-box; }
.tk-io p { margin: 0 0 1.15em !important; color: #4a4f5c; font-size: 18px !important; line-height: 1.75; }
.tk-io p:last-child { margin-bottom: 0 !important; }
.tk-io a { color: #e4331b; text-decoration: none; }
.tk-io__wrap { max-width: 1180px; margin: 0 auto; padding: 0 24px; }

/* Section header (centered) */
.tk-io__label { color: #e4331b !important; font-weight: 600; font-size: 13px; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 12px !important; text-align: center; }
.tk-io__h2 { margin: 0 auto 14px; font-size: clamp(26px, 3.4vw, 36px); font-weight: 700; line-height: 1.2; letter-spacing: -0.5px; color: #1f2430; text-align: center; }
.tk-io__sub { max-width: 760px; margin: 0 auto !important; text-align: center; }

/* Hero */
.tk-io__hero { position: relative; overflow: hidden; background: #1f2430; color: #fff; }
.tk-io__hero .tk-io__wrap { padding-top: 92px; padding-bottom: 92px; position: relative; z-index: 1; }
.tk-io__hero-wm { position: absolute; top: 20px; right: 20px; width: 440px; height: 440px; opacity: 0.08; z-index: 0; }
.tk-io__eyebrow { color: #ff6a52; font-weight: 700; font-size: 14px; letter-spacing: 3px; text-transform: uppercase; margin: 0 0 18px; }
.tk-io__h1 { margin: 0; font-size: clamp(34px, 5vw, 56px); font-weight: 800; line-height: 1.1; letter-spacing: -1px; color: #fff; max-width: 900px; }
.tk-io__lead { margin: 22px 0 0 !important; font-size: clamp(19px, 2.2vw, 23px) !important; line-height: 1.55 !important; color: #c9ccd3 !important; max-width: 760px; }
.tk-io__cta-row { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.tk-io__btn { display: inline-flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 600; padding: 15px 30px; border-radius: 999px; line-height: 1.2; }
.tk-io a.tk-io__btn--primary { background: #e4331b; color: #fff !important; }
.tk-io a.tk-io__btn--primary:hover { background: #c72a15; color: #fff !important; }
.tk-io a.tk-io__btn--ghost { background: transparent; color: #fff !important; border: 1px solid #4a5064; }
.tk-io a.tk-io__btn--ghost:hover { border-color: #ff6a52; color: #ff6a52 !important; }

/* Stat strip: full-width dark background, content constrained to wrap width */
.tk-io__statsband { background: #1f2430; border-top: 1px solid #2c3242; }
.tk-io__statsband .tk-io__wrap { padding-top: 0; padding-bottom: 0; }
.tk-io__stats { display: grid; grid-template-columns: repeat(4, 1fr); }
.tk-io__stat { color: #fff; padding: 28px 26px; border-left: 1px solid #2c3242; }
.tk-io__stat:first-child { border-left: 0; padding-left: 0; }
.tk-io__stat .n { font-size: clamp(24px, 2.6vw, 30px); font-weight: 800; color: #ff6a52; line-height: 1.1; }
.tk-io__stat .t { margin-top: 8px; font-size: 15px; color: #aeb3c0; }

/* Sections */
.tk-io__section { padding: 76px 0; }
.tk-io__section--alt { background: #fafafb; border-top: 1px solid #ecedf1; border-bottom: 1px solid #ecedf1; }

/* Card grids */
.tk-io__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 18px; margin-top: 34px; }
.tk-io__grid--2 { grid-template-columns: repeat(2, 1fr); }
.tk-io__card { background: #fff; border: 1px solid #ecedf1; border-radius: 16px; padding: 28px; box-shadow: 0 10px 30px rgba(0,0,0,.05); transition: transform .18s ease, box-shadow .18s ease; text-align: left; }
.tk-io__card:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(0,0,0,.09); }
.tk-io__ico { width: 52px; height: 52px; border-radius: 13px; background: #fff4f2; border: 1px solid #fddad6; display: flex; align-items: center; justify-content: center; margin-bottom: 18px; }
.tk-io__ico svg { width: 26px; height: 26px; stroke: #e4331b; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.tk-io__card h3 { margin: 0 0 10px; font-size: 20px; font-weight: 700; color: #1f2430; line-height: 1.3; }
.tk-io__card p { font-size: 16px !important; margin: 0 !important; color: #5b6270; line-height: 1.6; }
.tk-io__card--link { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.tk-io__card--link .arw { color: #e4331b; font-weight: 700; font-size: 22px; flex: 0 0 auto; }
.tk-io__card--link:hover { border-color: #e4331b; }

/* Chips */
.tk-io__chips { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; justify-content: center; }
.tk-io__chips span { background: #f5f3f3; border: 1px solid #ece7e6; color: #1f2430; font-size: 15px; font-weight: 500; padding: 9px 18px; border-radius: 999px; }

/* Steps */
.tk-io__steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; margin-top: 34px; }
.tk-io__step { background: #fff; border: 1px solid #ecedf1; border-radius: 16px; padding: 26px; text-align: left; }
.tk-io__step .n { width: 40px; height: 40px; border-radius: 11px; background: #1f2430; color: #ff6a52; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.tk-io__step h3 { margin: 0 0 8px; font-size: 18px; font-weight: 700; color: #1f2430; }
.tk-io__step p { font-size: 16px !important; margin: 0 !important; color: #5b6270; }

/* Proof */
.tk-io__proof { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 18px; margin-top: 34px; }
.tk-io__proofcard { display: block; background: #fff; border: 1px solid #ecedf1; border-radius: 16px; padding: 28px; text-align: left; }
.tk-io__proofcard:hover { border-color: #e4331b; box-shadow: 0 16px 40px rgba(0,0,0,.09); }
.tk-io__proofcard .big { font-size: 40px; font-weight: 800; color: #e4331b; line-height: 1; }
.tk-io__proofcard h3 { margin: 12px 0 6px; font-size: 19px; font-weight: 700; color: #1f2430; line-height: 1.3; }
.tk-io__proofcard p { font-size: 15px !important; margin: 0 !important; color: #5b6270; }

/* Testimonials carousel */
.tk-io__tcar-wrap { max-width: 940px; margin: 36px auto 0; }
.tk-io__tcar { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; -ms-overflow-style: none; scrollbar-width: none; padding: 6px 6px 4px; }
.tk-io__tcar::-webkit-scrollbar { display: none; }
.tk-io__tcard { scroll-snap-align: center; flex: 0 0 100%; background: #fff; border: 1px solid #ecedf1; border-radius: 20px; padding: 44px 48px; box-shadow: 0 16px 44px rgba(0,0,0,.07); text-align: left; position: relative; overflow: hidden; }
.tk-io__tcard::before { content: "\201C"; position: absolute; top: -20px; right: 30px; font-family: Georgia, "Times New Roman", serif; font-size: 260px; line-height: 1; color: #fff4f2; z-index: 0; }
.tk-io__tstars { position: relative; z-index: 1; color: #ff6a52; font-size: 19px; letter-spacing: 4px; margin-bottom: 14px; }
.tk-io__ttitle { position: relative; z-index: 1; font-size: clamp(20px, 2.3vw, 25px); font-weight: 800; color: #1f2430; letter-spacing: -0.3px; line-height: 1.25; margin: 0 0 14px; }
.tk-io__tquote { position: relative; z-index: 1; font-size: clamp(17px, 1.8vw, 19px) !important; line-height: 1.7 !important; color: #4a4f5c !important; font-weight: 400; margin: 0 0 26px !important; }
.tk-io__tby { position: relative; z-index: 1; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.tk-io__tavatar { width: 50px; height: 50px; border-radius: 50%; background: #fff4f2; border: 1px solid #fddad6; color: #e4331b; font-weight: 800; font-size: 18px; display: flex; align-items: center; justify-content: center; flex: 0 0 auto; }
.tk-io__tname { font-weight: 700; color: #1f2430; font-size: 16px; line-height: 1.3; }
.tk-io__trole { color: #5b6270; font-size: 14px; }
.tk-io__tverified { margin-left: auto; background: #eef7ee; border: 1px solid #cfe6cf; color: #2e7d32; font-size: 12px; font-weight: 700; padding: 6px 12px; border-radius: 999px; }
.tk-io__tnav { display: flex; align-items: center; justify-content: center; gap: 18px; margin-top: 24px; }
.tk-io__tbtn { width: 46px; height: 46px; border-radius: 50%; border: 1px solid #d3d6dd; background: #fff; color: #1f2430; font-size: 22px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: border-color .15s ease, color .15s ease; }
.tk-io__tbtn:hover { border-color: #e4331b; color: #e4331b; }
.tk-io__tdots { display: flex; gap: 8px; }
.tk-io__tdot { width: 9px; height: 9px; border-radius: 50%; background: #d3d6dd; border: 0; padding: 0; cursor: pointer; transition: width .2s ease, background .2s ease; }
.tk-io__tdot.is-active { background: #e4331b; width: 26px; border-radius: 5px; }

/* Audience */
.tk-io__aud { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; justify-content: center; }
.tk-io__aud span { background: #fff; border: 1px solid #ecedf1; border-radius: 12px; padding: 14px 20px; font-weight: 600; color: #1f2430; font-size: 16px; }

/* FAQ */
.tk-io__faq { max-width: 860px; margin: 30px auto 0; border-top: 1px solid #ecedf1; text-align: left; }
.tk-io__faq details { border-bottom: 1px solid #ecedf1; padding: 4px 0; }
.tk-io__faq summary { cursor: pointer; list-style: none; padding: 20px 44px 20px 0; position: relative; font-size: 19px; font-weight: 600; color: #1f2430; }
.tk-io__faq summary::-webkit-details-marker { display: none; }
.tk-io__faq summary::after { content: "+"; position: absolute; right: 8px; top: 16px; font-size: 26px; font-weight: 400; color: #e4331b; }
.tk-io__faq details[open] summary::after { content: "\2013"; }
.tk-io__faq .ans { padding: 0 44px 22px 0; }
.tk-io__faq .ans p { font-size: 16px !important; color: #5b6270; }

/* CTA band */
.tk-io__band { background: #1f2430; color: #fff; position: relative; overflow: hidden; }
.tk-io__band .tk-io__wrap { padding: 74px 24px; position: relative; z-index: 1; text-align: center; }
.tk-io__band h2 { color: #fff; font-size: clamp(26px, 3.4vw, 36px); font-weight: 700; margin: 0 0 22px; }
.tk-io__band-wm { position: absolute; bottom: 20px; left: 0; width: 190px; height: 190px; opacity: 0.07; z-index: 0; }

@media (max-width: 760px) {
  .tk-io__stats { grid-template-columns: repeat(2, 1fr); }
  .tk-io__stat:nth-child(3) { border-left: 0; padding-left: 0; }
}
@media (max-width: 640px) {
  .tk-io__hero .tk-io__wrap { padding-top: 60px; padding-bottom: 60px; }
  .tk-io__section { padding: 54px 0; }
  .tk-io__grid--2 { grid-template-columns: 1fr; }
  .tk-io__btn { width: 100%; }
}

/* ============================================================================
   TARK SERVICES  —  .tk-sv. Light, warm, editorial. Pure CSS, no JS.
   Deliberately different from the dark-hero / card-grid pages:
   cream surfaces, a meta strip, an icon+divider callout, halo feature cards,
   and a numbered editorial index for the services list.
   ============================================================================ */

.tk-sv { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); color: #1f2430; overflow-x: hidden; background: #faf6f3; }
.tk-sv, .tk-sv * { box-sizing: border-box; font-style: normal !important; }
.tk-sv p { margin: 0; color: #5b6270; font-size: 18px; line-height: 1.75; }
.tk-sv a { text-decoration: none; color: #e4331b; }
.tk-sv__wrap { max-width: 1100px; margin: 0 auto; padding: 0 24px; }

/* Hero (light) */
.tk-sv__hero { position: relative; overflow: hidden; padding: 92px 0 44px; }
.tk-sv__hero-wm { position: absolute; top: 10px; right: 10px; width: 330px; height: 330px; opacity: 0.10; }
.tk-sv__eyebrow { color: #e4331b; font-weight: 700; font-size: 13px; letter-spacing: 3px; text-transform: uppercase; margin: 0 0 16px; }
.tk-sv__h1 { margin: 0; font-size: clamp(34px, 5vw, 54px); font-weight: 800; line-height: 1.08; letter-spacing: -1px; color: #1f2430; max-width: 780px; }
.tk-sv__lead { margin: 20px 0 0; font-size: clamp(18px, 2vw, 21px); line-height: 1.6; color: #5b6270; max-width: 640px; }
.tk-sv__ctarow { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
.tk-sv__btn { display: inline-flex; align-items: center; justify-content: center; font-weight: 600; font-size: 16px; padding: 14px 28px; border-radius: 999px; line-height: 1.2; }
.tk-sv a.tk-sv__btn--primary { background: #e4331b; color: #fff !important; }
.tk-sv a.tk-sv__btn--primary:hover { background: #c72a15; color: #fff !important; }
.tk-sv a.tk-sv__btn--ghost { background: transparent; color: #1f2430 !important; border: 1px solid #d8cfc9; }
.tk-sv a.tk-sv__btn--ghost:hover { border-color: #e4331b; color: #e4331b !important; }

/* Meta strip (overlaps hero into the next section) */
.tk-sv__meta { max-width: 1100px; margin: 0 auto; padding: 0 24px; position: relative; z-index: 2; transform: translateY(30px); }
.tk-sv__metacard { background: #fff; border: 1px solid #ece7e3; border-radius: 16px; box-shadow: 0 18px 44px rgba(31,20,12,0.07); display: flex; flex-wrap: nowrap; align-items: stretch; justify-content: space-between; gap: 0; padding: 24px 16px; }
.tk-sv__metaitem { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; padding: 4px 16px; }
.tk-sv__metaitem svg { width: 60px; height: 60px; stroke: #e4331b; fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
.tk-sv__metaitem b { display: block; color: #1f2430; font-weight: 700; font-size: 16px; line-height: 1.2; }
.tk-sv__metaitem em { font-style: normal; color: #8a8078; font-size: 13px; }
.tk-sv__metadiv { flex: 0 0 1px; align-self: stretch; background: #ece7e3; }

/* Results strip variant (case studies hub): big red numbers, no icons */
.tk-sv__meta--results .tk-sv__metaitem { gap: 4px; }
.tk-sv__meta--results .tk-sv__metaitem b { font-size: clamp(28px, 3.2vw, 36px); color: #e4331b; line-height: 1.02; letter-spacing: -1px; }
.tk-sv__meta--results .tk-sv__metaitem em { font-size: 14px; color: #8a8078; }

/* Case studies hero: extra top space for text, cream runs below the strip */
.tk-sv--csh .tk-sv__hero { padding-top: 162px; }
.tk-sv--csh { padding-bottom: 80px; }

/* Sections */
.tk-sv__section { padding: 66px 0; }
.tk-sv__section--top { padding-top: 82px; }
.tk-sv__label { color: #e4331b; font-weight: 700; font-size: 13px; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 10px; }
.tk-sv__h2 { margin: 0 0 10px; font-size: clamp(26px, 3.4vw, 36px); font-weight: 800; letter-spacing: -0.5px; color: #1f2430; line-height: 1.2; }
.tk-sv__intro { max-width: 640px; }

/* Services numbered index */
.tk-sv__index { margin-top: 28px; border-top: 1px solid #e7ded8; }
.tk-sv__row { display: grid; grid-template-columns: 84px 1fr auto; align-items: center; gap: 24px; padding: 26px 20px; border-bottom: 1px solid #e7ded8; transition: background .15s ease; }
.tk-sv__row:hover { background: #fff; }
.tk-sv__rowico { width: 56px; height: 56px; border-radius: 14px; background: #fff4f2; border: 1px solid #fddad6; display: flex; align-items: center; justify-content: center; transition: background .15s ease, border-color .15s ease; }
.tk-sv__row:hover .tk-sv__rowico { background: #fde3dd; border-color: #f6c3b8; }
.tk-sv__rowico svg { width: 28px; height: 28px; stroke: #e4331b; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.tk-sv__rowbody h3 { margin: 0 0 4px; font-size: 22px; font-weight: 700; color: #1f2430; line-height: 1.25; }
.tk-sv__rowbody p { font-size: 16px; color: #5b6270; }
.tk-sv__rowarw { justify-self: end; display: flex; align-items: center; transition: transform .15s ease; }
.tk-sv__rowarw svg { width: 26px; height: 26px; transform: rotate(45deg); }
.tk-sv__row:hover .tk-sv__rowarw { transform: translateX(5px); }

/* Callout banner (icon + divider + muted line + bold punchline) */
.tk-sv__callout { max-width: 1100px; margin: 0 auto; padding: 0 24px; }
.tk-sv__calloutcard { background: #fbeeea; border: 1px solid #f6d9d1; border-radius: 20px; display: flex; align-items: center; gap: 26px; padding: 30px 34px; }
.tk-sv__calloutico { width: 66px; height: 66px; flex: 0 0 auto; border-radius: 50%; background: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 18px rgba(228,51,27,0.12); }
.tk-sv__calloutico svg { width: 40px; height: 40px; stroke: #e4331b; fill: none; stroke-width: 15; stroke-linejoin: round; transform: translateY(3px) rotate(-45deg); }
.tk-sv__calloutdiv { width: 2px; align-self: stretch; background: #f0c9c0; }
.tk-sv__callouttext .muted { color: #9a8f86; font-size: clamp(18px, 2.2vw, 22px); line-height: 1.3; }
.tk-sv__callouttext .bold { color: #1f2430; font-weight: 800; font-size: clamp(21px, 2.6vw, 27px); line-height: 1.25; }

/* Feature halo cards */
.tk-sv__feat { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-top: 30px; }
.tk-sv__featcard { background: #fff; border: 1px solid #ece7e3; border-radius: 18px; padding: 32px 22px; text-align: center; }
.tk-sv__halo { width: 104px; height: 104px; margin: 0 auto 18px; border-radius: 50%; background: radial-gradient(circle at 50% 42%, #fff4f2, #fbeee9); display: flex; align-items: center; justify-content: center; }
.tk-sv__halo svg { width: 68px; height: 68px; stroke: #e4331b; fill: none; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.tk-sv__featcard h3 { margin: 0 0 6px; font-size: 17px; font-weight: 700; color: #1f2430; line-height: 1.3; }
.tk-sv__featcard p { font-size: 14px; color: #8a8078; line-height: 1.5; }

/* Industries split */
.tk-sv__ind { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin-top: 28px; }
.tk-sv__indcard { display: block; background: #fff; border: 1px solid #ece7e3; border-radius: 20px; padding: 32px; transition: border-color .15s ease, box-shadow .15s ease; }
.tk-sv__indcard:hover { border-color: #e4331b; box-shadow: 0 16px 40px rgba(31,20,12,0.07); }
.tk-sv__indhead { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.tk-sv__indhead svg { width: 28px; height: 28px; stroke: #e4331b; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
.tk-sv__indcard h3 { margin: 0; font-size: 21px; font-weight: 700; color: #1f2430; }
.tk-sv__indcard p { margin-top: 4px; font-size: 15px; color: #5b6270; line-height: 1.6; }
.tk-sv__indcard .go { display: inline-block; margin-top: 14px; color: #e4331b; font-weight: 600; font-size: 15px; }

/* CTA (light) */
.tk-sv__ctaband { padding: 78px 0 92px; text-align: center; }
.tk-sv__ctaband h2 { font-size: clamp(26px, 3.4vw, 36px); font-weight: 800; color: #1f2430; margin: 0 0 22px; letter-spacing: -0.5px; }

@media (max-width: 820px) {
  .tk-sv__feat { grid-template-columns: repeat(2, 1fr); }
  .tk-sv__ind { grid-template-columns: 1fr; }
  .tk-sv__calloutdiv { display: none; }
  .tk-sv__calloutcard { flex-direction: column; align-items: flex-start; gap: 18px; }
}
@media (max-width: 720px) {
  .tk-sv__metacard { flex-wrap: wrap; }
  .tk-sv__metaitem { flex: 1 1 42%; }
  .tk-sv__metadiv { display: none; }
}
@media (max-width: 560px) {
  .tk-sv__row { grid-template-columns: 60px 1fr; }
  .tk-sv__rowarw { display: none; }
  .tk-sv__feat { grid-template-columns: 1fr; }
  .tk-sv__btn { width: 100%; }
}

/* ============================================================================
   TARK  —  EHR & EMR Integration Services.   ============================================================================ */

.tk-eh { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); color: #1f2430; overflow-x: hidden; background: #ffffff; }
.tk-eh, .tk-eh * { box-sizing: border-box; font-style: normal !important; }
.tk-eh p { margin: 0; color: #4a4f5c; font-size: 18px; line-height: 1.75; }
.tk-eh a { text-decoration: none; color: #e4331b; }
.tk-eh__wrap { max-width: 1140px; margin: 0 auto; padding: 0 24px; }
.tk-eh__label { color: #e4331b; font-weight: 700; font-size: 13px; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 10px; }
.tk-eh__h2 { margin: 0 0 12px; font-size: clamp(26px, 3.4vw, 36px); font-weight: 800; letter-spacing: -0.5px; line-height: 1.2; color: #1f2430; }
.tk-eh__sub { max-width: 700px; }

/* Buttons */
.tk-eh__btn { display: inline-flex; align-items: center; justify-content: center; font-weight: 600; font-size: 16px; padding: 14px 28px; border-radius: 10px; line-height: 1.2; }
.tk-eh a.tk-eh__btn--primary { background: #e4331b; color: #fff !important; }
.tk-eh a.tk-eh__btn--primary:hover { background: #c72a15; }
.tk-eh a.tk-eh__btn--ghost { background: #fff; color: #1f2430 !important; border: 1px solid #d7dae1; }
.tk-eh a.tk-eh__btn--ghost:hover { border-color: #e4331b; color: #e4331b !important; }

/* Split hero */
.tk-eh__hero { border-bottom: 1px solid #eef0f3; background: #ffffff; }
.tk-eh__hero .tk-eh__wrap { display: grid; grid-template-columns: 0.9fr 1.3fr; gap: 34px; align-items: center; max-width: 1240px; padding: 158px 24px 86px; }
.tk-eh__eyebrow { color: #e4331b; font-weight: 700; font-size: 13px; letter-spacing: 3px; text-transform: uppercase; margin: 0 0 16px; }
.tk-eh__h1 { margin: 0; font-size: clamp(32px, 4.4vw, 50px); font-weight: 800; line-height: 1.1; letter-spacing: -1px; color: #1f2430; }
.tk-eh__lead { margin: 20px 0 0; font-size: clamp(18px, 2vw, 21px); line-height: 1.6; color: #5b6270; }
.tk-eh__ctarow { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; }
.tk-eh__badges { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.tk-eh__badges span { font-size: 13px; font-weight: 600; color: #5b6270; background: #fff; border: 1px solid #e2e5ea; border-radius: 999px; padding: 6px 14px; }
.tk-eh__herofig { width: 100%; }
.tk-eh__herofig img { width: 100%; height: auto; display: block; }

/* Sections */
.tk-eh__section { padding: 72px 0; }
.tk-eh__section--gray { background: #f7f8fa; border-top: 1px solid #eef0f3; border-bottom: 1px solid #eef0f3; }

/* Capability cards */
.tk-eh__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 32px; }
.tk-eh__card { background: #fff; border: 1px solid #eef0f3; border-radius: 14px; padding: 26px; box-shadow: 0 8px 24px rgba(16,20,30,.04); }
.tk-eh__ico { width: 50px; height: 50px; border-radius: 12px; background: #fff4f2; border: 1px solid #fddad6; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.tk-eh__ico svg { width: 26px; height: 26px; stroke: #e4331b; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.tk-eh__card h3 { margin: 0 0 8px; font-size: 19px; font-weight: 700; color: #1f2430; line-height: 1.3; }
.tk-eh__card p { font-size: 15px; color: #5b6270; line-height: 1.6; }

/* Systems (spoke links) */
.tk-eh__sys { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 30px; }
.tk-eh__syscard { display: block; background: #fff; border: 1px solid #eef0f3; border-radius: 14px; padding: 24px; transition: border-color .15s ease, box-shadow .15s ease; }
.tk-eh__syscard:hover { border-color: #e4331b; box-shadow: 0 12px 30px rgba(16,20,30,.08); }
.tk-eh__syscard span { display: block; }
.tk-eh__syscard .nm { font-size: 17px; font-weight: 700; color: #1f2430; }
.tk-eh__syscard .ds { margin-top: 6px; font-size: 14px; color: #5b6270; }
.tk-eh__syscard .go { margin-top: 12px; color: #e4331b; font-weight: 600; font-size: 14px; }

/* Chips */
.tk-eh__chips { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.tk-eh__chips span { background: #fff; border: 1px solid #e2e5ea; color: #1f2430; font-size: 15px; font-weight: 500; padding: 9px 17px; border-radius: 8px; }

/* Steps as a connected timeline */
.tk-eh__flow { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; margin-top: 46px; }
.tk-eh__fstep { padding: 0 12px; border-left: 1px solid #e7ded8; }
.tk-eh__fstep:first-child { border-left: 0; }
.tk-eh__fnum { width: 46px; height: 46px; border-radius: 50%; background: #e4331b; color: #fff; font-weight: 800; font-size: 16px; display: flex; align-items: center; justify-content: center; }
.tk-eh__fstep h3 { margin: 18px 0 6px; font-size: 17px; font-weight: 700; color: #1f2430; }
.tk-eh__fstep p { font-size: 14px; color: #5b6270; line-height: 1.55; }
.tk-eh__ftag { display: inline-block; margin-top: 12px; font-size: 12px; font-weight: 700; color: #e4331b; background: #fff4f2; border: 1px solid #fddad6; border-radius: 999px; padding: 5px 12px; }

/* FAQ */
.tk-eh__faq { max-width: 860px; margin: 30px auto 0; border-top: 1px solid #eef0f3; }
.tk-eh__faq details { border-bottom: 1px solid #eef0f3; }
.tk-eh__faq summary { cursor: pointer; list-style: none; padding: 20px 44px 20px 0; position: relative; font-size: 18px; font-weight: 600; color: #1f2430; }
.tk-eh__faq summary::-webkit-details-marker { display: none; }
.tk-eh__faq summary::after { content: "+"; position: absolute; right: 6px; top: 16px; font-size: 26px; font-weight: 400; color: #e4331b; }
.tk-eh__faq details[open] summary::after { content: "\2013"; }
.tk-eh__faq .ans { padding: 0 44px 22px 0; }
.tk-eh__faq .ans p { font-size: 16px; color: #5b6270; }

/* CTA band */
.tk-eh__cta { background: #1f2430; color: #fff; text-align: center; }
.tk-eh__cta .tk-eh__wrap { padding: 66px 24px; }
.tk-eh__cta h2 { color: #fff; font-size: clamp(24px, 3.2vw, 34px); font-weight: 800; margin: 0 0 20px; }

@media (max-width: 900px) {
  .tk-eh__hero .tk-eh__wrap { grid-template-columns: 1fr; gap: 30px; }
  .tk-eh__grid { grid-template-columns: repeat(2, 1fr); }
  .tk-eh__sys { grid-template-columns: repeat(2, 1fr); }
  .tk-eh__flow { grid-template-columns: repeat(2, 1fr); gap: 26px; }
  .tk-eh__fstep { border-left: 0; padding: 0; }
}
@media (max-width: 560px) {
  .tk-eh__grid { grid-template-columns: 1fr; }
  .tk-eh__sys { grid-template-columns: 1fr; }
  .tk-eh__flow { grid-template-columns: 1fr; }
  .tk-eh__btn { width: 100%; }
}

/* Reusable "Related healthcare services" block. Scoped .tk-rel. */
.tk-rel { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); background: #faf6f3; border-top: 1px solid #ecedf1; overflow-x: hidden; }
.tk-rel__wrap { max-width: 1140px; margin: 0 auto; padding: 52px 24px; }
.tk-rel__label { color: #e4331b; font-weight: 700; font-size: 13px; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 8px; }
.tk-rel__h2 { font-size: clamp(22px, 2.6vw, 28px); font-weight: 800; color: #1f2430; margin: 0 0 22px; letter-spacing: -0.4px; }
.tk-rel__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.tk-rel__item { display: flex; align-items: center; justify-content: space-between; gap: 12px; background: #fff; border: 1px solid #ecedf1; border-radius: 12px; padding: 16px 18px; text-decoration: none; color: #1f2430; font-weight: 600; font-size: 16px; line-height: 1.3; transition: border-color .15s ease, box-shadow .15s ease; }
.tk-rel__item:hover { border-color: #e4331b; box-shadow: 0 10px 26px rgba(16,20,30,0.07); }
.tk-rel__item span { color: #e4331b; font-weight: 700; flex: 0 0 auto; }

@media (max-width: 820px) { .tk-rel__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .tk-rel__grid { grid-template-columns: 1fr; } }


/* ------------------------------------------------------------Tark default blog post layout. Scoped .tk-post. Pairs with tark-post-layout.php.
   Centered layout (no full-width breakout, which caused the horizontal scroll).
   Do NOT set overflow on .tk-post or any ancestor of the TOC: overflow != visible
   disables position:sticky.------------------------------------- 
-------------------------------*/
.tk-post { color: #1f2430; }
.tk-post *, .tk-post *::before, .tk-post *::after { box-sizing: border-box; }
.tk-post__inner { max-width: 1180px; margin: 0 auto; padding: 40px 24px 0; }


/* Prevent horizontal overflow by wrapping long words, NOT by overflow:auto.
   overflow-x:auto here would force overflow-y to auto too, turning the column into its own
   scroll box (that hid the FAQ answers). Tables are kept in-bounds by table-layout:fixed below. */
.tk-post__body { overflow-wrap: break-word; word-wrap: break-word; }

/* ---- Header: breadcrumb, title, subtitle, meta ---- */
.tk-post__head { margin: 0 0 34px; }
.tk-post__crumbs { font-size: 15px; color: #8b929c; margin: 0 0 16px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.tk-post__crumbs a { color: #5b6270; text-decoration: none; }
.tk-post__crumbs a:hover { color: #e4331b; }
.tk-post__crumbs span { color: #c3c7cf; }
.tk-post__title { font-size: clamp(30px, 4.4vw, 46px); line-height: 1.12; font-weight: 800; letter-spacing: -0.8px; color: #14171f; margin: 0 0 14px; }
.tk-post__subtitle { font-size: 21px; line-height: 1.5; font-weight: 400; color: #5b6270; margin: 0 0 4px; max-width: 62ch; }
.tk-post__meta { display: none; } /* hidden for now (date / reading time / author) */

/* ---- Two-column grid ---- */
/* align-items must NOT be start: that shrinks the TOC column to its own height and
   leaves position:sticky no room to travel. stretch keeps the column full-height. */
.tk-post__grid { display: grid; grid-template-columns: 264px minmax(0, 1fr); gap: 56px; align-items: stretch; padding-bottom: 64px; }
.tk-post__grid--notoc { grid-template-columns: minmax(0, 1fr); max-width: 760px; }

/* ---- Sticky Table of contents ---- */
/* no overscroll-behavior: contain, so once the TOC scroll hits its end the scroll
   chains on to the page (scroll TOC, then the content/page). */
.tk-post__toc-inner { position: sticky; top: 96px; max-height: calc(100vh - 120px); overflow-y: auto; padding-right: 6px; scrollbar-width: thin; scrollbar-color: #d8dae0 transparent; }
.tk-post__toc-inner::-webkit-scrollbar { width: 4px; }
.tk-post__toc-inner::-webkit-scrollbar-thumb { background: #d8dae0; border-radius: 3px; }
.tk-post__toc-inner::-webkit-scrollbar-track { background: transparent; }
.tk-post__toc-label { font-size: 13px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; color: #8b929c; margin: 0 0 24px; }
.tk-post__toc-nav ul { list-style: none !important; margin: 0 !important; padding: 0 !important; border-left: 2px solid #ecedf1; }
.tk-post__toc-nav li { list-style: none !important; margin: 0 !important; padding: 0 !important; background: none !important; }
.tk-post__toc-nav li::before, .tk-post__toc-nav li::marker, .tk-post__toc-nav a::before { content: none !important; display: none !important; background: none !important; }
.tk-post__toc-nav a { display: block; padding: 6px 0 6px 16px; margin-left: -2px; border-left: 2px solid transparent; color: #5b6270; text-decoration: none; font-size: 16px; line-height: 1.4; transition: color .12s ease, border-color .12s ease; }
.tk-post__toc-nav a:hover { color: #1f2430; }
.tk-post__toc-sub a { padding-left: 30px; font-size: 15px; color: #7b828d; }
.tk-post__toc-nav a.is-active { color: #e4331b; border-left-color: #e4331b; font-weight: 600; }

/* ---- Reading column (bigger type; body text +10%, headings unchanged) ---- */
.tk-post__body { font-size: 20px; line-height: 1.75; color: #33383f; max-width: 760px; min-width: 0; }
.tk-post__body p { margin: 0 0 22px; }
.tk-post__body .tk-post__lead { font-size: 20px; line-height: 1.75; color: #33383f; margin: 0 0 22px; }
.tk-post__body h2 { font-size: clamp(24px, 2.8vw, 31px); line-height: 1.22; font-weight: 800; letter-spacing: -0.4px; color: #14171f; margin: 44px 0 16px; }
.tk-post__body h3 { font-size: clamp(19px, 2.2vw, 23px); line-height: 1.3; font-weight: 700; color: #1f2430; margin: 30px 0 12px; }
.tk-post__anchor { scroll-margin-top: 96px; }
.tk-post__body ul, .tk-post__body ol { margin: 0 0 22px; padding-left: 24px; }
.tk-post__body li { margin: 0 0 10px; }
.tk-post__body a { color: #e4331b; text-decoration: underline; text-underline-offset: 2px; }
.tk-post__body img { max-width: 100%; height: auto; border-radius: 12px; }
.tk-post__body figure { margin: 28px 0; }
.tk-post__body figcaption { font-size: 15px; color: #8b929c; text-align: center; margin-top: 10px; }
.tk-post__body blockquote { margin: 28px 0; padding: 4px 0 4px 22px; border-left: 3px solid #e4331b; color: #1f2430; font-size: 21px; }

/* ---- Tables ---- */
.tk-post__body table { width: 100%; table-layout: fixed; border-collapse: collapse; margin: 8px 0 8px; font-size: 17px; }
.tk-post__body th, .tk-post__body td { text-align: left; padding: 12px 14px; border: 1px solid #ecedf1; vertical-align: top; overflow-wrap: break-word; word-wrap: break-word; hyphens: auto; }
.tk-post__body thead th { background: #faf6f3; font-weight: 700; color: #1f2430; }
.tk-post__body tbody tr:nth-child(even) { background: #fcfbfa; }

/* ---- Responsive ---- */
@media (max-width: 980px) {
  .tk-post__grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .tk-post__toc { order: -1; }
  .tk-post__toc-inner { position: static; max-height: none; background: #faf6f3; border: 1px solid #ecedf1; border-radius: 14px; padding: 20px 22px; }
  .tk-post__body { max-width: none; }
}
@media (max-width: 600px) {
  .tk-post__inner { padding: 24px 18px 0; }
  .tk-post__body { font-size: 19px; }
  .tk-post__body .tk-post__lead { font-size: 19px; }
}

/* ============================================================================
   TARK  -  INSIGHTS / BLOG HUB  (.tk-bl)
   ============================================================================ */

/* Tark blog hub. Scoped .tk-bl. Editorial magazine layout. */
.tk-bl { color: #1f2430; font-family: inherit; }
.tk-bl *, .tk-bl *::before, .tk-bl *::after { box-sizing: border-box; }
.tk-bl a { text-decoration: none; }
.tk-bl__wrap { max-width: 1180px; margin: 0 auto; padding: 0 24px; }

/* ---- Hero ---- */
.tk-bl__hero { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); background: linear-gradient(180deg, #faf6f3 0%, #ffffff 100%); border-bottom: 1px solid #ecedf1; overflow: hidden; }
.tk-bl__hero-in { max-width: 1180px; margin: 0 auto; padding: 132px 24px 56px; position: relative; }
.tk-bl__eyebrow { display: inline-flex; align-items: center; gap: 10px; color: #e4331b; font-weight: 700; font-size: 13px; letter-spacing: 2.4px; text-transform: uppercase; margin: 0 0 18px; }
.tk-bl__eyebrow svg { width: 15px; height: 15px; }
.tk-bl__title { font-size: clamp(34px, 5vw, 56px); line-height: 1.04; font-weight: 800; letter-spacing: -1.2px; margin: 0 0 18px; max-width: 15ch; }
.tk-bl__title em { font-style: normal; color: #e4331b; }
.tk-bl__lead { font-size: clamp(17px, 2vw, 20px); line-height: 1.55; color: #5b6270; margin: 0; max-width: 56ch; }
.tk-bl__hero-arrow { position: absolute; right: -40px; bottom: 20px; width: 392px; height: 392px; opacity: 0.06; pointer-events: none; }

/* ---- Section heads ---- */
.tk-bl__sec { padding: 60px 0 8px; }
.tk-bl__kicker { color: #e4331b; font-weight: 700; font-size: 12px; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 8px; }
.tk-bl__h2 { font-size: clamp(24px, 3vw, 32px); font-weight: 800; letter-spacing: -0.6px; margin: 0 0 26px; }

/* ---- Featured block (asymmetric) ---- */
.tk-bl__feature { display: grid; grid-template-columns: 1.55fr 1fr; gap: 28px; align-items: stretch; }
.tk-bl__big { position: relative; border-radius: 18px; overflow: hidden; border: 1px solid #ecedf1; min-height: 380px; display: flex; }
.tk-bl__big img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.tk-bl__big::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(16,20,28,0.12) 0%, rgba(16,20,28,0) 30%, rgba(16,20,28,0.18) 60%, rgba(16,20,28,0.35) 100%); pointer-events: none; }
.tk-bl__big-veil { position: relative; margin-top: auto; width: 100%; padding: 110px 32px 32px; background: linear-gradient(180deg, rgba(12,15,21,0) 0%, rgba(12,15,21,0.5) 26%, rgba(12,15,21,0.86) 55%, rgba(12,15,21,0.98) 82%, rgba(12,15,21,1) 100%); color: #fff; }
.tk-bl__tag { display: inline-block; background: #e4331b; color: #fff; font-size: 11.5px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; padding: 5px 11px; border-radius: 999px; margin-bottom: 12px; }
.tk-bl__big-title { font-size: clamp(22px, 2.6vw, 30px); font-weight: 800; line-height: 1.18; letter-spacing: -0.5px; margin: 0 0 10px; color: #ffffff !important; text-shadow: 0 1px 14px rgba(0,0,0,0.55); }
.tk-bl__big-meta { font-size: 13.5px; color: rgba(255,255,255,0.88) !important; text-shadow: 0 1px 10px rgba(0,0,0,0.5); }
.tk-bl__big:hover .tk-bl__big-title { color: #ffffff !important; }
.tk-bl__big:hover .tk-bl__big-title { text-decoration: underline; text-underline-offset: 3px; }

.tk-bl__picks { display: flex; flex-direction: column; gap: 14px; }
.tk-bl__picks-label { font-size: 12px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; color: #5b6270; margin: 2px 0 2px; }
.tk-bl__pick { display: block; background: #fff; border: 1px solid #ecedf1; border-radius: 14px; padding: 18px 20px; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.tk-bl__pick:hover { border-color: #e4331b; box-shadow: 0 12px 28px rgba(16,20,30,0.07); transform: translateY(-1px); }
.tk-bl__pick-cat { color: #e4331b; font-size: 11.5px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; }
.tk-bl__pick-title { color: #1f2430; font-size: 16.5px; font-weight: 700; line-height: 1.34; margin: 7px 0 0; letter-spacing: -0.2px; }

/* ---- Filter chips ---- */
.tk-bl__chips { display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 30px; }
.tk-bl__chip { border: 1px solid #ecedf1; background: #fff; color: #3a4150; font-size: 14px; font-weight: 600; padding: 9px 16px; border-radius: 999px; cursor: pointer; transition: all .14s ease; }
.tk-bl__chip:hover { border-color: #c9ccd4; }
.tk-bl__chip.is-active { background: #1f2430; border-color: #1f2430; color: #fff; }

/* ---- Article grid ---- */
.tk-bl__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.tk-bl__card { display: flex; flex-direction: column; background: #fff; border: 1px solid #ecedf1; border-radius: 16px; overflow: hidden; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.tk-bl__card:hover { border-color: #d8dae0; box-shadow: 0 16px 34px rgba(16,20,30,0.08); transform: translateY(-2px); }
.tk-bl__thumb { display: block; aspect-ratio: 16 / 9; background: #f2f0ee; overflow: hidden; }
.tk-bl__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.tk-bl__body { padding: 20px 20px 22px; display: flex; flex-direction: column; flex: 1; }
.tk-bl__cat { color: #e4331b; font-size: 11.5px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; margin: 0 0 9px; }
.tk-bl__card-title { font-size: 18.5px; font-weight: 700; line-height: 1.3; letter-spacing: -0.3px; margin: 0 0 10px; color: #1f2430; }
.tk-bl__card:hover .tk-bl__card-title { color: #000; }
.tk-bl__excerpt { font-size: 14.5px; line-height: 1.55; color: #5b6270; margin: 0 0 16px; }
.tk-bl__foot { margin-top: auto; display: flex; align-items: center; justify-content: space-between; font-size: 12.5px; color: #8b929c; }
.tk-bl__more { display: inline-flex; align-items: center; gap: 6px; color: #e4331b; font-weight: 700; }
.tk-bl__more svg { width: 13px; height: 13px; }
.tk-bl__empty { grid-column: 1 / -1; text-align: center; color: #8b929c; padding: 40px 0; font-size: 15px; }

/* ---- CTA band ---- */
.tk-bl__cta { width: 100vw; max-width: 100vw; min-height: 240px; margin: 72px 0 0; margin-left: calc(50% - 50vw); background: linear-gradient(120deg, #e4331b 0%, #ff6a52 100%); overflow: hidden; position: relative; display: flex; align-items: center; }
.tk-bl__cta-in { width: 100%; max-width: 1180px; margin: 0 auto; padding: 52px 24px; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; position: relative; z-index: 1; }
.tk-bl__cta h3 { color: #fff; font-size: clamp(22px, 3vw, 30px); font-weight: 800; letter-spacing: -0.5px; margin: 0 0 6px; }
.tk-bl__cta p { color: rgba(255,255,255,0.9); font-size: 16px; margin: 0; }
.tk-bl__cta-btn { display: inline-flex; align-items: center; gap: 9px; background: #fff; color: #e4331b; font-weight: 700; font-size: 16px; padding: 15px 26px; border-radius: 12px; white-space: nowrap; transition: transform .15s ease, box-shadow .15s ease; }
.tk-bl__cta-btn:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(0,0,0,0.18); }
.tk-bl__cta-arrow { position: absolute; right: 24px; top: 50%; transform: translateY(-50%); width: 230px; height: 230px; opacity: 0.13; pointer-events: none; z-index: 0; }
@media (min-width: 861px) { .tk-bl__cta-in { padding-right: 290px; } }
@media (max-width: 860px) { .tk-bl__cta-arrow { display: none; } }

/* ---- Newsletter band (reusable component) ---- */
.tk-bl__news { position: relative; overflow: hidden; margin: 64px 0 0; background: linear-gradient(120deg, #fff4f2 0%, #faf6f3 100%); border: 1px solid #fddad6; border-radius: 20px; padding: 44px 100px 44px 48px; display: flex; align-items: center; gap: 44px; }
.tk-bl__news-main { flex: 1 1 auto; min-width: 0; }
.tk-bl__news-icon { flex: 0 0 auto; width: 220px; }
.tk-bl__news-plane { display: block; width: 100%; height: auto; }

/* copy (sits above the form) */
.tk-bl__news-copy { margin: 0 0 22px; max-width: 52ch; }
.tk-bl__news-eyebrow { display: inline-flex; align-items: center; gap: 9px; color: #e4331b; font-weight: 700; font-size: 12px; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 12px; }
.tk-bl__news-eyebrow svg { width: 14px; height: 14px; flex: 0 0 auto; }
.tk-bl__news h3 { font-size: clamp(21px, 2.6vw, 27px); font-weight: 800; letter-spacing: -0.5px; color: #1f2430; margin: 0 0 8px; }
.tk-bl__news-copy p { font-size: 15.5px; line-height: 1.55; color: #5b6270; margin: 0; }

/* form: field + button in a row, validation message beneath */
.tk-bl__news-form { margin: 0; max-width: 540px; }
.tk-bl__news-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.tk-bl__news-input { flex: 1 1 240px; min-width: 0; height: 52px !important; padding: 0 18px !important; font-size: 15.5px; color: #1f2430 !important; background: #fff !important; border: 1.5px solid #e0a79d !important; border-radius: 12px !important; outline: none; box-shadow: 0 1px 3px rgba(16,20,30,0.08) !important; transition: border-color .15s ease, box-shadow .15s ease; }
.tk-bl__news-input::placeholder { color: #9aa1ab; }
.tk-bl__news-input:focus { border-color: #e4331b !important; box-shadow: 0 0 0 3px rgba(228,51,27,0.16) !important; }
.tk-bl__news-btn { flex: 0 0 auto; height: 52px; padding: 0 28px; border: 0; border-radius: 12px; background: #e4331b; color: #fff; font-size: 15.5px; font-weight: 700; cursor: pointer; white-space: nowrap; transition: background .15s ease, transform .15s ease; }
.tk-bl__news-btn:hover { background: #c72c17; transform: translateY(-1px); }
.tk-bl__news-btn:disabled { opacity: .6; cursor: default; transform: none; }
.tk-bl__news-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; padding: 0; border: 0; }
.tk-bl__news-msg { margin: 12px 0 0; font-size: 13.5px; line-height: 1.4; min-height: 1.2em; }
.tk-bl__news-msg.is-ok { color: #1a7f4b; }
.tk-bl__news-msg.is-err { color: #c72c17; }

/* ---- Responsive ---- */
@media (max-width: 900px) {
  .tk-bl__feature { grid-template-columns: 1fr; }
  .tk-bl__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 820px) {
  .tk-bl__news { flex-direction: column-reverse; align-items: flex-start; gap: 24px; padding: 38px 36px; }
  .tk-bl__news-main { width: 100%; }
  .tk-bl__news-icon { width: 168px; align-self: center; }
}
@media (max-width: 600px) {
  .tk-bl__hero-in { padding-top: 112px; }
  .tk-bl__grid { grid-template-columns: 1fr; }
  .tk-bl__news { padding: 30px 22px; }
  .tk-bl__news-copy { margin-bottom: 20px; }
  .tk-bl__news-input { max-width: none; flex-basis: 100%; }
  .tk-bl__news-btn { width: 100%; }
  .tk-bl__news-icon { width: 132px; }
}

/* ============================================================================
   TARK  -  JOB PAGE
   ============================================================================ */

.tk-jobmeta {
  list-style: none;
  margin: 26px 0 34px;
  padding: 20px 24px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 22px 30px;
  background: #fafafa;
  border: 1px solid #ececec;
  border-radius: 12px;
}

.tk-jobmeta__item {
  margin: 0;
  padding: 0 0 0 14px;
  list-style: none;
  border-left: 2px solid #ececec;
}

.tk-jobmeta__item--flag { border-left-color: #e4331b; }

.tk-jobmeta__label {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #8a8f9c;
  margin-bottom: 5px;
}

.tk-jobmeta__value {
  display: block;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.35;
  color: #1d2129;
}

.tk-jobmeta__note {
  display: block;
  font-style: normal;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
  color: #6b7280;
  margin-top: 3px;
}

.tk-jobhook {
  margin: 8px 0 38px;
  padding: 0 0 0 22px;
  border-left: 4px solid #e4331b;
}

.tk-jobhook__q {
  margin: 0 0 10px;
  font-size: 27px;
  font-weight: 700;
  line-height: 1.28;
  letter-spacing: -0.3px;
  color: #1d2129;
  max-width: 34ch;
}

.tk-jobhook__q--alt {
  margin-bottom: 22px;
  color: #6b7280;
}

.tk-jobhook__body {
  margin: 0 0 14px;
  font-size: 17px;
  line-height: 1.68;
  color: #4a4f5c;
  max-width: 68ch;
}

.tk-jobhook__body:last-child { margin-bottom: 0; }

.tk-panel {
  position: relative;
  overflow: hidden;
  margin: 34px 0;
  padding: 30px 32px 28px;
  background: #fff;
  border: 1px solid #ececec;
  border-radius: 14px;
}

.tk-panel::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: #e4331b;
}

.tk-panel__wm {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 130px;
  height: auto;
  opacity: 0.05;
  pointer-events: none;
}

.tk-panel__intro {
  position: relative;
  margin: 0 0 24px;
  font-size: 17px;
  line-height: 1.65;
  color: #1d2129;
  max-width: 62ch;
}

.tk-panel__counter {
  position: relative;
  margin: 26px 0 0;
  padding-top: 22px;
  border-top: 1px solid #ececec;
  font-size: 15px;
  line-height: 1.65;
  color: #6b7280;
  max-width: 72ch;
}

.tk-cardgrid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 24px 30px;
}

.tk-cardgrid--wide { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }

.tk-card { min-width: 0; }

.tk-card__h {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  color: #1d2129;
}

.tk-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: #4a4f5c;
}

.tk-card a {
  color: #e4331b;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.tk-card a:hover { border-bottom-color: #e4331b; }

.tk-homecoming {
  margin: 34px 0;
  padding: 30px 34px;
  background: #fff4f2;
  border: 1px solid #fddad6;
  border-radius: 14px;
}

.tk-homecoming p {
  margin: 0 0 15px;
  font-size: 16px;
  line-height: 1.7;
  color: #4a4f5c;
  max-width: 70ch;
}

.tk-homecoming__close {
  margin-bottom: 0;
  font-weight: 600;
  color: #1d2129;
}

.tk-jobsteps {
  list-style: none;
  counter-reset: tkstep;
  margin: 30px 0;
  padding: 0;
}

.tk-jobsteps__item {
  counter-increment: tkstep;
  position: relative;
  margin: 0;
  padding: 0 0 24px 52px;
  list-style: none;
}

.tk-jobsteps__item::before {
  content: counter(tkstep);
  position: absolute;
  left: 0;
  top: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fff4f2;
  border: 1px solid #fddad6;
  color: #e4331b;
  font-size: 14px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tk-jobsteps__item::after {
  content: "";
  position: absolute;
  left: 16px;
  top: 38px;
  bottom: 6px;
  width: 1px;
  background: #ececec;
}

.tk-jobsteps__item:last-child { padding-bottom: 0; }
.tk-jobsteps__item:last-child::after { display: none; }

.tk-jobsteps__h {
  margin: 5px 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  color: #1d2129;
}

.tk-jobsteps__item p {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: #4a4f5c;
  max-width: 68ch;
}

.tk-jobfaq {
  margin: 28px 0;
  border-top: 1px solid #ececec;
}

.tk-jobfaq__item { border-bottom: 1px solid #ececec; }

.tk-jobfaq__q {
  position: relative;
  display: block;
  cursor: pointer;
  list-style: none;
  padding: 18px 44px 18px 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.45;
  color: #1d2129;
}

.tk-jobfaq__q::-webkit-details-marker { display: none; }

.tk-jobfaq__q::after {
  content: "";
  position: absolute;
  right: 8px;
  top: 26px;
  width: 9px;
  height: 9px;
  border-right: 2px solid #e4331b;
  border-bottom: 2px solid #e4331b;
  transform: rotate(45deg);
  transition: transform 0.18s ease;
}

.tk-jobfaq__item[open] .tk-jobfaq__q::after { transform: rotate(-135deg); }
.tk-jobfaq__q:hover { color: #e4331b; }
.tk-jobfaq__q:focus-visible { outline: 2px solid #e4331b; outline-offset: 3px; }

.tk-jobfaq__a { padding: 0 44px 20px 0; }

.tk-jobfaq__a p {
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: #4a4f5c;
  max-width: 72ch;
}

.tk-jobcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 20px 30px;
  margin: 36px 0;
  padding: 26px 30px;
  background: #1d2129;
  border-radius: 14px;
}

.tk-jobcta__text { min-width: 0; }

.tk-jobcta__h {
  margin: 0 0 5px;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
}

.tk-jobcta__sub {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: #b9bdc7;
}

.tk-jobcta__btn {
  flex: 0 0 auto;
  display: inline-block;
  background: #e4331b;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  padding: 15px 30px;
  border-radius: 8px;
  text-decoration: none;
  transition: background 0.18s ease;
}

.tk-jobcta__btn:hover,
.tk-jobcta__btn:focus { background: #c22a14; color: #fff; text-decoration: none; }
.tk-jobcta__btn:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }

.tk-joblinks {
  margin: 34px 0;
  padding-top: 26px;
  border-top: 1px solid #ececec;
}

.tk-joblinks__h {
  margin: 0 0 10px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #8a8f9c;
}

.tk-joblinks__list {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
}

.tk-joblinks__list li {
  margin: 0 0 8px;
  padding: 0;
  list-style: none;
}

.tk-joblinks__list a {
  font-size: 15px;
  font-weight: 500;
  color: #e4331b;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.tk-joblinks__list a:hover { border-bottom-color: #e4331b; }

@media (max-width: 767px) {
  .tk-jobmeta { padding: 18px; gap: 18px 20px; }
  .tk-jobhook { padding-left: 16px; }
  .tk-jobhook__q { font-size: 22px; }
  .tk-jobhook__body { font-size: 16px; }
  .tk-panel { padding: 24px 20px 22px; }
  .tk-panel__wm { width: 96px; top: 14px; right: 14px; }
  .tk-homecoming { padding: 24px 20px; }
  .tk-jobcta { padding: 22px 20px; }
  .tk-jobcta__btn { width: 100%; text-align: center; }
}

/* ============================================================================
   TARK  -  CAREERS
   ============================================================================ */

.tk-jobmain,
.tk-jobpage,
.tk-hubpage {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin: 0 auto;
}

.tk-jobpage { max-width: 820px; }
.tk-hubpage { max-width: 1080px; }

/* --- The rail (right WPBakery column) ------------------------------------- */

.tk-rail {
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: sticky;
  top: 28px;
}

/* Sticky repair. position:sticky dies if ANY ancestor has overflow other than
   visible, or a transform. WPBakery and the theme both wrap columns in extra
   divs, and that is what killed it on the live preview. These three rules clear
   the usual culprits on the row and column wrappers only, so nothing else on
   the site is touched. If sticky still does not hold, the layout is still
   correct: the rail simply sits at the top, which is how most job boards do it. */
.tk-jobrow,
.tk-jobrow > .vc_row,
.tk-jobcol-main,
.tk-jobcol-rail,
.tk-jobcol-main > .vc_column-inner,
.tk-jobcol-rail > .vc_column-inner,
.tk-jobcol-rail > .vc_column-inner > .wpb_wrapper {
  overflow: visible !important;
  transform: none !important;
}

.tk-jobrow,
.tk-jobrow > .vc_row { align-items: stretch !important; }
/* The sticky element needs a containing block TALLER than itself, otherwise it
   has no travel. An explicit height:100% on the column would resolve against an
   auto-height row and cancel the flex stretch, so let stretch do that job and
   only force height on the wrappers below it. */
.tk-jobcol-rail { align-self: stretch !important; }
.tk-jobcol-rail > .vc_column-inner,
.tk-jobcol-rail > .vc_column-inner > .wpb_wrapper { height: 100% !important; }

.tk-railcard {
  padding: 24px 26px;
  background: #1d2129;
  border-radius: 14px;
}

.tk-railcard__h {
  margin: 0 0 6px !important;
  font-size: 17px !important;
  font-weight: 700;
  line-height: 1.35;
  color: #fff !important;
}

.tk-railcard__sub {
  margin: 0 0 18px !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #c3c7d0 !important;
}

.tk-railcard__btn {
  display: block;
  background: #e4331b;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 600;
  line-height: 1.2;
  padding: 15px 24px;
  border-radius: 8px;
  text-align: center;
  text-decoration: none !important;
  transition: background 0.18s ease;
}

.tk-railcard__btn:hover,
.tk-railcard__btn:focus { background: #c22a14; color: #fff !important; }

/* Vertical rhythm comes from the flex gap above, not from margins. A theme rule
   such as "#main p { margin: 0 }" outranks any class selector even with
   !important, which is what collapsed the paragraphs on the live preview. gap
   is a property of the parent, so nothing in the theme can reach it. */
.tk-jobmain > *,
.tk-jobpage > *,
.tk-hubpage > * { margin-top: 0 !important; margin-bottom: 0 !important; }

.tk-jobmain > h2,
.tk-jobpage > h2,
.tk-hubpage > h2 { margin-top: 22px !important; }

.tk-jobmain h1,
.tk-jobpage h1,
.tk-hubpage h1 {
  font-size: 32px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: -0.4px;
  color: #1d2129 !important;
}

.tk-jobmain h2,
.tk-jobpage h2,
.tk-hubpage h2 {
  font-size: 23px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.2px;
  color: #1d2129 !important;
}

.tk-jobmain > p,
.tk-jobmain > ul,
.tk-jobpage > p,
.tk-jobpage > ul,
.tk-hubpage > p {
  font-size: 16px !important;
  line-height: 1.75 !important;
  color: #4a4f5c !important;
}

.tk-jobmain > ul,
.tk-jobpage > ul { padding-left: 22px !important; }
.tk-jobmain > ul li,
.tk-jobpage > ul li { margin: 0 0 10px !important; padding-left: 4px !important; }

/* Job facts panel.
   Label stacked over value at every width, deliberately. Side by side, a fixed
   label column plus a gap left the value roughly 240px inside a 370px rail,
   which wrapped "ASP.NET Core, TypeScript, SQL Server, AWS" onto two lines and
   dropped an 11px uppercase label below the cap height of a 16px value.
   Stacking gives the value the full inner width and removes the alignment
   problem instead of tuning around it. There are no vertical rules anywhere in
   this panel: separators run the full card width so the rhythm reads as one
   deliberate set of rows.
   The overflow rule is safe next to the sticky rail: the constraint applies to
   ancestors of a sticky element, and this panel is a child of .tk-rail.
   Two structural decisions here are defensive, not cosmetic. The panel is a
   description list of divs, not a ul of lis, because a theme rule like
   "#main ul li { list-style: square !important }" outranks any class selector
   we can write and cannot be beaten; the fix is to stop being a list. And each
   row is a flex column, because a flex container blockifies its own children,
   so a theme rule forcing the label or value inline cannot reach them either.
   Row spacing comes from gap for the same reason margins were abandoned in the
   hook: the theme zeroes margins at a specificity we cannot outrank. */
.tk-jobmeta {
  list-style: none;
  margin: 0;
  padding: 0;
  display: block;
  background: #fafafa;
  border: 1px solid #ececec;
  border-radius: 12px;
  overflow: hidden;
}

.tk-jobmeta__item {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 14px 22px 15px;
  list-style: none;
  border: 0;
  border-top: 1px solid #ececec;
}

.tk-jobmeta__item:first-child { border-top: 0; }

.tk-jobmeta__label {
  margin: 0;
  padding: 0;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 1.1px;
  text-transform: uppercase;
  color: #8a8f9c;
}

/* The value is itself a flex column, for the same blockifying reason: the note
   is an inline element and a theme rule can force inline elements to stay
   inline, which ran the note straight on from the value ("Rajkot,
   GujaratOnsite"). As a flex child it is laid out as a block whatever the
   theme says, and the gap gives it its own line. */
.tk-jobmeta__value {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #1d2129;
  overflow-wrap: break-word;
}

/* The emphasised row carries a tinted background and a red label and value.
   One accent, applied once. The earlier version painted a red left border as
   well, which read as a second unrelated marker. */
.tk-jobmeta__item--flag { background: #fdf3f1; }
.tk-jobmeta__item--flag .tk-jobmeta__label,
.tk-jobmeta__item--flag .tk-jobmeta__value { color: #e4331b; }
.tk-jobmeta__item--flag .tk-jobmeta__note { color: #9a4436; }

.tk-jobmeta__note {
  margin: 0;
  padding: 0;
  font-style: normal;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  color: #6b7280;
}

.tk-jobhook {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 0;
  padding: 6px 0 6px 24px;
  border-left: 4px solid #e4331b;
}

.tk-jobhook__q {
  margin: 0;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.32;
  letter-spacing: -0.2px;
  color: #1d2129;
}

.tk-jobhook__q--alt { color: #6b7280; margin-bottom: 8px !important; }

.tk-jobhook__body {
  margin: 0;
  font-size: 17px;
  line-height: 1.7;
  color: #4a4f5c;
}



.tk-panel {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 32px 34px;
  background: #fff;
  border: 1px solid #ececec;
  border-radius: 14px;
}

.tk-panel::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: #e4331b;
}

.tk-panel__wm {
  position: absolute;
  top: 22px;
  right: 22px;
  width: 120px;
  height: auto;
  opacity: 0.05;
  pointer-events: none;
}

.tk-panel__intro {
  position: relative;
  margin: 0 0 26px;
  font-size: 17px;
  line-height: 1.65;
  color: #1d2129;
}

.tk-panel--wm .tk-panel__intro { padding-right: 150px; }

.tk-panel__counter {
  position: relative;
  margin: 28px 0 0;
  padding-top: 24px;
  border-top: 1px solid #ececec;
  font-size: 15px;
  line-height: 1.7;
  color: #6b7280;
}

.tk-cardgrid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px 32px;
}

.tk-card { min-width: 0; }

.tk-card__h {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.45;
  color: #1d2129;
}

.tk-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: #4a4f5c;
}

.tk-card a {
  color: #e4331b;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.tk-card a:hover { border-bottom-color: #e4331b; }

.tk-homecoming {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0;
  padding: 32px 34px;
  background: #fff4f2;
  border: 1px solid #fddad6;
  border-radius: 14px;
}

.tk-homecoming p {
  margin: 0;
  font-size: 16px;
  line-height: 1.75;
  color: #4a4f5c;
}

.tk-homecoming__close { font-weight: 600; color: #1d2129; }

.tk-jobsteps {
  list-style: none;
  counter-reset: tkstep;
  margin: 0;
  padding: 0;
}

.tk-jobsteps__item {
  counter-increment: tkstep;
  position: relative;
  margin: 0;
  padding: 0 0 26px 54px;
  list-style: none;
}

.tk-jobsteps__item::before {
  content: counter(tkstep);
  position: absolute;
  left: 0;
  top: 0;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff4f2;
  border: 1px solid #fddad6;
  box-sizing: border-box;
  color: #e4331b;
  font-size: 14px;
  font-weight: 700;
  line-height: 32px;
  text-align: center;
}

.tk-jobsteps__item::after {
  content: "";
  position: absolute;
  left: 17px;
  top: 42px;
  bottom: 4px;
  width: 1px;
  background: #ececec;
}

.tk-jobsteps__item:last-child { padding-bottom: 0; }
.tk-jobsteps__item:last-child::after { display: none; }

.tk-jobsteps__h {
  margin: 6px 0 8px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  color: #1d2129;
}

.tk-jobsteps__item p {
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: #4a4f5c;
}

.tk-jobfaq {
  margin: 0;
  border-top: 1px solid #ececec;
}

.tk-jobfaq__item { border-bottom: 1px solid #ececec; }

.tk-jobfaq__q {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  cursor: pointer;
  list-style: none;
  padding: 20px 4px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  color: #1d2129;
}

.tk-jobfaq__q::-webkit-details-marker { display: none; }
.tk-jobfaq__q::marker { content: ""; }

.tk-jobfaq__q::after {
  content: "";
  flex: 0 0 auto;
  width: 9px;
  height: 9px;
  margin-top: 7px;
  border-right: 2px solid #e4331b;
  border-bottom: 2px solid #e4331b;
  transform: rotate(45deg);
  transition: transform 0.18s ease;
}

.tk-jobfaq__item[open] .tk-jobfaq__q::after { margin-top: 10px; transform: rotate(-135deg); }
.tk-jobfaq__q:hover { color: #e4331b; }
.tk-jobfaq__q:focus-visible { outline: 2px solid #e4331b; outline-offset: 2px; }

.tk-jobfaq__a { padding: 0 37px 22px 4px; }

.tk-jobfaq__a p {
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: #4a4f5c;
}

.tk-jobcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 22px 32px;
  margin: 0;
  padding: 28px 32px;
  background: #1d2129;
  border-radius: 14px;
}

.tk-jobcta__text { min-width: 0; flex: 1 1 260px; }

.tk-jobcta__h {
  margin: 0 0 6px;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.35;
  color: #fff;
}

.tk-jobcta__sub {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: #c3c7d0;
}

.tk-jobcta__btn {
  flex: 0 0 auto;
  display: inline-block;
  background: #e4331b;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  padding: 15px 30px;
  border-radius: 8px;
  text-decoration: none;
  transition: background 0.18s ease;
}

.tk-jobcta__btn:hover,
.tk-jobcta__btn:focus { background: #c22a14; color: #fff; text-decoration: none; }
.tk-jobcta__btn:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }

/* The sticky rail card is the desktop CTA, so the inline band would put two
   Apply buttons on screen at once. Inline band is for mobile, where the rail
   card is hidden. Verified: exactly one CTA visible at 1440 and at 390. */
@media (min-width: 1024px) {
  .tk-jobmain .tk-jobcta { display: none !important; }
}

@media (max-width: 1023px) {
  .tk-rail { position: static; }
  .tk-railcard { display: none; }
  /* The row must be allowed to wrap or the two columns simply shrink side by
     side instead of stacking, whatever width we give them. */
  .tk-jobrow,
  .tk-jobrow > .vc_row { flex-wrap: wrap !important; }
  .tk-jobcol-main,
  .tk-jobcol-rail { width: 100% !important; }
  .tk-jobcol-rail { margin-top: 20px; }
  .tk-cardgrid { grid-template-columns: repeat(2, 1fr); }
  .tk-panel--wm .tk-panel__intro { padding-right: 0; }
  .tk-panel__wm { display: none; }
}

@media (max-width: 767px) {
  .tk-hubpage { max-width: 1080px; margin: 0 auto; }

.tk-jobmain h1,
.tk-jobpage h1,
.tk-hubpage h1 { font-size: 25px !important; }
  .tk-jobmain h2,
.tk-jobpage h2,
.tk-hubpage h2 { font-size: 20px !important; margin-top: 34px !important; }
  .tk-jobmeta__item { padding: 13px 18px 14px; }
  .tk-jobhook { padding-left: 18px; }
  .tk-jobhook__q { font-size: 20px; }
  .tk-jobhook__body { font-size: 16px; }
  .tk-panel { padding: 24px 22px; }
  .tk-cardgrid { grid-template-columns: 1fr; gap: 24px; }
  .tk-homecoming { padding: 24px 22px; }
  .tk-jobfaq__q { gap: 18px; }
  .tk-jobfaq__a { padding-right: 4px; }
  .tk-jobcta { padding: 24px 22px; }
  /* display: block, not width: 100%. The button has 30px of horizontal padding
     and the theme does not set border-box sizing, so a 100% width pushed the
     button 18px past the viewport and gave the whole page a sideways scroll. */
  .tk-jobcta__btn { display: block; width: auto; text-align: center; }
}

/* ----------------------------------------------------------------------------
   THEME DEFENCE
   These declarations use !important deliberately, and only where the Seoes
   theme actually fights a component. Verified against the live preview and
   against a hostile baseline that scopes rules by ID (for example
   "#main ul li"), which outranks any plain class selector no matter what order
   the stylesheets load in. Without this block the theme wins on: list bullets,
   the details marker, link colour and underline, italics, paragraph spacing,
   and every font size inside a paragraph.
   ---------------------------------------------------------------------------- */

.tk-jobmeta, .tk-jobhook, .tk-panel,
.tk-homecoming, .tk-jobsteps, .tk-jobfaq,
.tk-jobcta, .tk-cardgrid,
.tk-rail, .tk-railcard {
  list-style: none !important;
}

.tk-jobmeta li, .tk-jobhook li, .tk-panel li,
.tk-homecoming li, .tk-jobsteps li, .tk-jobfaq li,
.tk-jobcta li, .tk-cardgrid li,
.tk-rail li, .tk-railcard li {
  list-style: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  background: none !important;
}

.tk-jobmeta li::before, .tk-jobhook li::before, .tk-panel li::before,
.tk-homecoming li::before, .tk-jobfaq li::before,
.tk-jobcta li::before, .tk-cardgrid li::before {
  content: none !important;
}

.tk-jobsteps__item::before { content: counter(tkstep) !important; }
.tk-jobsteps__item::after,
.tk-panel::before { content: "" !important; }

.tk-jobmeta p, .tk-jobhook p, .tk-panel p,
.tk-homecoming p, .tk-jobsteps p, .tk-jobfaq p,
.tk-jobcta p, .tk-cardgrid p,
.tk-rail p, .tk-railcard p {
  font-family: inherit !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

.tk-jobmeta a, .tk-jobhook a, .tk-panel a,
.tk-homecoming a, .tk-jobsteps a, .tk-jobfaq a,
.tk-jobcta a, .tk-cardgrid a,
.tk-rail a, .tk-railcard a {
  text-decoration: none !important;
  font-family: inherit !important;
}

.tk-jobcta__btn, .tk-railcard__btn { color: #fff !important; }
.tk-jobmeta__note { font-style: normal !important; }
.tk-card a { color: #e4331b !important; }

/* Same ID scoping problem as the panel values, and this one is visible: a theme
   rule of the form "#main a { color: blue !important; text-decoration:
   underline !important }" outranks every class rule above, which is what put
   blue underlined text on the red Apply button. A class selector cannot win
   against an ID, so these repeat the intent one specificity step higher using
   the theme's own page wrapper. If #main is ever absent the rules are inert and
   the class rules above still apply. */
#main .tk-jobcta__btn,
#main .tk-railcard__btn {
  color: #fff !important;
  text-decoration: none !important;
}

#main .tk-jobmeta a, #main .tk-jobhook a, #main .tk-panel a,
#main .tk-homecoming a, #main .tk-jobsteps a, #main .tk-jobfaq a,
#main .tk-jobcta a, #main .tk-cardgrid a,
#main .tk-rail a, #main .tk-railcard a { text-decoration: none !important; }

#main .tk-card a { color: #e4331b !important; }

/* The prose bullets keep whatever marker the theme uses site wide, which is
   correct: they should match every other page. Only the indentation is pinned,
   because a theme rule like "#main ul li { margin-left: 20px }" stacks on top of
   the list padding and walks the bullets steadily inward. */
#main .tk-jobmain > ul,
#main .tk-jobpage > ul { padding-left: 22px !important; margin-left: 0 !important; }
#main .tk-jobmain > ul > li,
#main .tk-jobpage > ul > li {
  margin-left: 0 !important;
  padding-left: 4px !important;
  border: 0 !important;
  background: none !important;
}

.tk-jobfaq__q { display: flex !important; list-style: none !important; }
.tk-jobfaq__q::marker { content: "" !important; }
.tk-jobfaq__q::-webkit-details-marker { display: none !important; }

/* Paragraph spacing, because the theme collapses margins inside a Raw HTML
   block and the hook paragraphs ran together on the live preview. */
.tk-jobhook__q { font-size: 25px !important; line-height: 1.32 !important; }
.tk-jobhook__body { font-size: 17px !important; line-height: 1.7 !important; }
.tk-homecoming p { font-size: 16px !important; line-height: 1.75 !important; }
.tk-panel__intro { font-size: 17px !important; line-height: 1.65 !important; }

.tk-card p,
.tk-panel__counter,
.tk-jobfaq__a p,
.tk-jobsteps__item p { font-size: 15px !important; line-height: 1.7 !important; }
.tk-card__h,
.tk-jobsteps__h { font-size: 16px !important; line-height: 1.45 !important; }
.tk-jobmeta__item {
  display: flex !important;
  flex-direction: column !important;
  border-left: 0 !important;
  border-right: 0 !important;
}
.tk-jobmeta__label,
.tk-jobmeta__value {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  font-family: inherit !important;
  font-style: normal !important;
}

/* Belt and braces for the one thing a class selector can never win: a theme
   rule scoped by ID. The browser default for dd is a 40px left indent, and a
   theme that restates it as "#main dd" would outrank every class rule above,
   pushing the values out of alignment. #main is the theme's page wrapper. If a
   future theme drops that ID the rule is simply inert and the class rules
   above still stand, so this is safe to keep either way. */
#main .tk-jobmeta__label,
#main .tk-jobmeta__value { margin: 0 !important; padding: 0 !important; }
.tk-jobmeta__label { font-size: 11px !important; line-height: 1.2 !important; }
.tk-jobmeta__value { font-size: 16px !important; line-height: 1.4 !important; }
.tk-jobmeta__note { font-size: 13px !important; line-height: 1.5 !important; }
.tk-jobcta__h { font-size: 19px !important; }
.tk-jobcta__sub { font-size: 14px !important; line-height: 1.6 !important; }
.tk-jobcta__btn { font-size: 15px !important; line-height: 1.2 !important; }

@media (max-width: 767px) {
  .tk-jobhook__q { font-size: 20px !important; }
  .tk-jobhook__body { font-size: 16px !important; }
}
