/* -------------------------------- GENERAL -------------------------------- */
body{
	overflow-x:hidden;
}
:root {
    --ft-blue: #2d2dfe;
	--ft-light-blue: #f1f5f9;
	--ft-dark-blue: #01018D;
	--ft-sand:#FFF4E9;
}
.block .container{
	max-width:1800px;
	margin:0 auto;
}

.block.featured-work-block a p:hover, .post-type-archive-work a p:hover, .all-post .post-card .post-title a:hover, .featured-post .featured-post-cate a:hover, .post-card .post-cate a:hover {
	color:var(--ft-blue);
}
.block .has-text-align-center.section-title{
	max-width: 640px;
    margin: 0 auto;
}

/* -------------------------------- HERO BLOCK -------------------------------- */
.hero-block .grid-container{
	display: grid;
    grid-template-columns: 2fr 3fr;
    align-items: center;

}
.block .hero-text{
	overflow: hidden;
}
.hero-block .hero-text h1{
	font-size:64px;
	line-height:82px;
}
.hero-block .hero-text .heading2{
	color:var(--ft-blue);
	
}
.hero-block .hero-text .hero-desc{
	font-size:22px;
	line-height:33px;
	color:#333333;
	max-width: 495px;
}

.hero-block .hero-text .button {
	padding:18px 25px;
	background:#000;
	color:#fff;
	margin-top:30px;

}
.hero-block .hero-gallery{
	position:relative;
}
.hero-block .hero-gallery .hero-image-center{
	width:100%;
	height:auto;
	position: relative;
}
.hero-block .hero-gallery .hero-image-left {
    position: absolute;
    bottom: -80px;
    left: -100px;
	height:45%;
	width:auto;

}
.hero-block .hero-gallery .hero-image-right {
    position: absolute;
  	top: 32%;
    right: -16%;
	width:32%;
	height:auto;
}
/* -------------------------------- HIGHIGHT BLOCK -------------------------------- */
.block.highlight-block{
	background: var(--ft-sand);
	padding: 32px;
	margin-bottom:32px;
}
.block.highlight-block .text > :last-child{
	margin-bottom:0;
}

/* -------------------------------- INTRO BLOCK -------------------------------- */
.block.intro-paragraph{
	position: sticky;
}
.intro-paragraph .intro-text{
	color:#000;
}
.intro-paragraph .intro-text .intro-subtitle{
	font:18px/20px Soehne;
	color: var(--ft-blue);
	font-weight:bold;
	text-transform: uppercase;
	margin-bottom:16px;
}

.intro-paragraph .intro-text .intro-desc{

	margin:32px 0 0;
}
.intro-paragraph .intro-text a{
	color:#fff;
}

/* -------------------------------- FEATURED SERVICES BLOCK -------------------------------- */

.featured-services-block .grid-container{
	display: grid;
    grid-template-columns: 1fr 1fr;
	grid-auto-rows:1fr;
    grid-column-gap: 48px;
    grid-row-gap: 48px;
    align-items: center;
}
.featured-services-block .grid-container .service-card{
	background:#FFF4E9;
	padding:56px;
	height:100%;
	border-radius:2px;
	border-bottom: 4px solid #2D2DFE;
}

.service-card .service-title{
	font:24px/26px Soehne;
	color:#000;
	font-weight:600;
}
.service-card .service-desc{
	margin:12px 0;
}
.service-card .service-links{
	list-style:none;
	color:var(--ft-blue);
	font:18px/27px Soehne;
	margin:0;
}
.service-card .service-links a{
	text-decoration:none;
}
.service-card .service-links a:hover{
	color:var(--contrast);
}
/* -------------------------------- FEATURED WORK BLOCK -------------------------------- */

.featured-work-block .grid-container{
	display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 64px;
	grid-row-gap:56px;
  
}

.featured-work-block .is-layout-flex, .featured-work-new .is-layout-flex{
	margin:18px 0 70px;
}
.featured-work-block .grid-container .work-card:first-child{
	grid-column: 1 / span 2;
	grid-row:1 / span 2;
}
.work-card .work-card-image{
	width:100%;
	overflow:hidden;
}
.work-card:has(.work-card-image:hover) .work-card-summary a{
	color:var(--ft-blue);
}
.work-card:has(a:hover) .work-card-image img{
	    transform: scale(1.05);
}

.work-card-image img{
	width:100%;
	height:100%;
	transition: transform 0.35s ease-out;
	display:block;
	border-radius:2px;
}

.work-card-summary a{
	font: 18px/22px Soehne;
	color: #333333;
	text-decoration:none;	
}
.work-card-summary p{
	margin:16px 0 8px;
}
.work-card-client{
	font: 14px/20px Soehne;
	color: #666;
}
/* -------------------------------- FEATURED WORK New -------------------------------- */

.featured-work-new .grid-container{
	column-count: 3;
    column-gap: 64px;
}
.featured-work-new .grid-container .work-card{
	margin-bottom:48px;
	break-inside: avoid;
}
.featured-work-new .grid-container .work-card:last-child{
	margin-bottom:0;
}
.featured-work-new .grid-container .work-card:first-child .work-card-image img{
	height: 320px;
    object-fit: cover;
}
.featured-work-new .grid-container .work-card:nth-child(2) .work-card-image img{
	height: 480px;
    object-fit: cover;
}
.featured-work-new .grid-container .work-card:nth-child(3) .work-card-image img{
	height: 440px;
    object-fit: cover;
}
.featured-work-new .grid-container .work-card:nth-child(4) .work-card-image img{
	height: 480px;
    object-fit: cover;
}
.featured-work-new .grid-container .work-card:nth-child(5) .work-card-image img{
	height: 600px;
    object-fit: cover;
}
.featured-work-new .grid-container .work-card:nth-child(6) .work-card-image img{
	height: 320px;
    object-fit: cover;
}
.featured-work-new .grid-container .work-card:nth-child(7) .work-card-image img{
	height: 320px;
    object-fit: cover;
}
.featured-work-new .grid-container .work-card:nth-child(8) .work-card-image img{
	height: 320px;
    object-fit: cover;
}
.featured-work-new .grid-container .work-card:nth-child(9) .work-card-image img{
	height: 320px;
    object-fit: cover;
}
/* -------------------------------- DISPLAY SERVICES BLOCK -------------------------------- */
.block.display-services .grid-container{
	display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 40px;
	padding: 0 0 40px;
}


.block.display-services .grid-container .service-card{
	padding:24px 24px 44px;
	background-color:var(--ft-sand);
	height:100%;
}
.block.display-services .grid-container .service-card h4{
	color:#000;
	margin-bottom:16px;
	font-weight:bold;
}
.block.display-services .grid-container .service-card p{	
	color: #333333;
	margin:0;
}
.block.display-services .grid-container .service-card p:last-child{
	margin-bottom:auto;	
}
/* -------------------------------- ABOUT(NEW HERO) BLOCK -------------------------------- */
.block.about-block{
	border: 2px solid var(--ft-sand);
	border-radius:2px;
	padding:88px 128px;
	max-width:1800px;
	margin:0 auto;
}
.block.about-block .grid-container{
	display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 104px;
}
.block.about-block .grid-container.img-left .about-image{
	order:1;
}
.block.about-block .grid-container.img-left .about-text{
	order:2;
}
.block.about-block .grid-container .about-image{
	background-size:cover;
	background-position: left center;
    background-repeat: no-repeat;	
}
.block.about-block .grid-container .about-image.cone{
	clip-path: path('M 0 318.25 L 0 528.25 L 525 806.5 Q 866.25 418 525 40 L 0 318.25');
}
.block.about-block .grid-container .about-image.square{
	clip-path: inset(20% 0% 20% 0%);
}
.block.about-block .grid-container .about-image.circle{
	clip-path: circle(50% at 50% 50%);
}
.block.about-block .grid-container .about-image.q-circle{
	clip-path: path('M 0 318.25 L 0 528.25 L 525 806.5 Q 866.25 418 525 40 L 0 318.25');
}

.block.about-block .grid-container svg{

}
.block.about-block .grid-container .image{
	
	
}
/* -------------------------------- FEATURED POST BLOCK -------------------------------- */
.block.featured-post-block{
	background-color:var(--ft-sand);
	margin:0 auto;
	padding:128px;
	max-width:2056px;
	
}
.block.featured-post-block .featured-post .ft-post{
	position:sticky;
	top:150px;
}
.featured-post-block .hero-container{
	display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 64px;
	position:relative;
}
.featured-post-block .hero-container .hero-image {
    position: absolute;
    left:calc(50% + 30px);
    z-index: -1;
}
.hero-text h6{
	font: 18px/20px Soehne;
	color: var(--ft-blue);
	font-weight:bold;
	text-transform: uppercase;
	margin-bottom:16px;
}
.hero-text .is-link-blue{
	margin-bottom:70px;
}

.featured-post-block .grid-container{
	display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 64px;
}

.featured-post .featured-post-image{
	width: 100%;
	height: auto;
	overflow:hidden;
}
.featured-post .featured-post-image img{
	width:100%;
	height:100%;
	transition: all 0.35s ease-out;
}
.featured-post .featured-post-title{
	margin:16px 0;
}
.featured-post .featured-post-title a{
	font:  32px/40px Soehne;
	color: #000000;
	text-decoration:none;
	font-weight:bold;
}
.featured-post .featured-post-title a:hover{
	color:var(--ft-blue);
}
.featured-post .featured-post-cate a, .post-card .post-cate a{
	text-decoration:none;
	font:16px/24px Soehne;
	color: #666;
	position:relative;
}
.featured-post .featured-post-cate a:after, .post-card .post-cate a:after{
	  content: '';
	  position: absolute;
	  width: 100%;
	  height: 1px;
	  bottom: -2px;
	  left: 0;
	  background-color: var(--ft-blue);
	  transform-origin: bottom left;
	  transition: transform 0.15s ease-out;
	  transform: scaleX(0);
}
.featured-post .featured-post-cate a:hover:after, .post-card .post-cate a:hover:after{
	 transform: scaleX(1);
}

.featured-post .featured-post-cate{
	margin-top:40px;
}
.featured-post .featured-post-cate, .featured-post .featured-post-author, .post-card .post-cate, .post-card .post-author{
	font:16px/24px Soehne;
	color: #666;
}

.post-card .post-author {
	font: 14px/21px Soehne;
	font-weight: bold;
	color: #000;
}

.featured-post .featured-post-blurb{
	margin-top:16px;
}

.featured-post-block .grid-container .all-post{
	display: grid;
    grid-template: 1fr/1fr;
    grid-row-gap: 64px;
	
}
.featured-post-block  .grid-container .all-post .post-card{
	display: grid;
    grid-template-columns: 0.9fr 1fr;
    grid-column-gap: 32px;
}
.post-card .post-text{
	display: block;
	margin-top:16px;
}
.post-card .post-title{
	margin: 20px 0;
}
.post-card .post-excerpt{
	margin-top:28px;
}
.post-card .post-excerpt p{
	margin-bottom:0;
}
.post-card .post-image{
	overflow:hidden;
}

.post-card:has(.post-image:hover) .post-title a, .featured-post:has(.featured-post-image:hover) .featured-post-title a{
	color:var(--ft-blue);
}
.post-card:has(.post-title:hover) .post-image img, .featured-post:has(.featured-post-title a:hover) .featured-post-image img{
	transform: scale(1.05);
}
.post-card .post-image img{
	width:100%;
	height:auto;
	display:block;
	border-radius:2px;
	transition: all 0.35s ease-out;
}
.post-card .post-title a {
/* 	font:  24px Soehne; */
	font: 32px Marr Sans Cond;
	color: #000000;
	text-decoration:none;
	font-weight:bold;
}

/* -------------------------------- IMAGE GALLERY BLOCK -------------------------------- */
.image-gallery{
	max-width: 1800px;
    margin: 32px auto 80px;
	display:flex;
	z-index: 2;
    position: relative;	
	justify-content: space-between;
    align-items: center;
}
.image-gallery div{
	max-height:74px;
	display: flex;
	align-items: center;
}

.image-gallery div img{
	height:100%;
	width:auto;
	max-height: 74px;
}
/* --------------------------------POST BLOCK -------------------------------- */

.block .title-section p{
	max-width:868px;
}
/* -------------------------------- PRICING TABLE -------------------------------- */
.block.pricing-table .grid-container{
	display:grid;
	grid-gap:56px;
}
.pricing-table .grid-container.col-2{
	 grid-template-columns: 1fr 1fr;
}
.pricing-table .grid-container.col-3{
	 grid-template-columns: 1fr 1fr 1fr;
}
.pricing-table .grid-container.col-4{
	 grid-template-columns: 1fr 1fr 1fr 1fr;
}
.pricing-table .grid-container .pricing-card{
	display: flex;
	padding:56px;
	background:var(--ft-sand);
	flex-direction: column;
}
.pricing-table .pricing-card .tag{
	padding:4px 12px;
	background:#fff;
	font-family:Inter;
	font-size:12px;
	width:fit-content;
	margin-bottom:24px
}
.pricing-table .pricing-card .title img{
	margin-bottom:16px;
}
.pricing-table .pricing-card .title h3{
	margin-bottom:12px;
	min-height: 2.5em
}
.pricing-table .pricing-card .title p{
	margin-bottom:0;
}
.pricing-table .pricing-card .title{
	margin-bottom:24px;
}

.pricing-table .pricing-card .content h5{
	margin-bottom:8px;
	font-size:24px;
}
.pricing-table .pricing-card p{
	font-size:16px;
}
.pricing-table .pricing-card .content p.postfix{
	margin-bottom:0;
}
.pricing-table .pricing-card .content a.button.blue{
	margin:32px 0 56px;
	width:100%;
	text-align:center;
	padding-top:9px;
	padding-bottom:9px;
}
.pricing-table .pricing-card .subtitle{
	font-size:14px;
	color:#999;
	margin-top: auto;
}
.pricing-table .pricing-card .list-items{
	margin-left:12px;
	margin-bottom:32px;
	font-size:16px;
	line-height:20px;
}
.pricing-table .pricing-card .list-items .list-item{
	display:flex;
	align-items: center;
	margin-bottom:8px;
}
.pricing-table .pricing-card .list-items .list-item svg{
	margin-right:8px;
}
/* -------------------------------- IMAGES BLOCK -------------------------------- */
.images-block .grid-container{
	display:grid;
	grid-gap:56px;
}
.images-block .grid-container.col-2{
	 grid-template-columns: 1fr 1fr;
}
.images-block .grid-container.col-3{
	 grid-template-columns: 1fr 1fr 1fr;
}
.images-block .image-wrapper{
	margin-bottom:56px;
}
.images-block .image-wrapper img{
	display:block;
}
/* -------------------------------- LOGOS BLOCK -------------------------------- */
.logo-block.with_padding{
	margin:0 120px;
}
.logo-block .grid-container{
	flex-wrap: wrap;
    display: flex;
    position: relative;
    justify-content: space-between;
    align-items: center;
	align-content: center;
}

.logo-block .grid-container.col-5 .single-logo{
	 flex: 1 0 17%;
}
.logo-block .grid-container.col-6 .single-logo{
	 flex: 1 0 15%;
}
.logo-block .grid-container .single-logo {
	display:flex;
	justify-content: center;
	margin: 48px 6px;
}
.logo-block .grid-container .single-logo img{
	display:block;
	max-height: 60px;
    max-width: 200px;
	width:auto;
	height:100%;
	transition: opacity 0.25s ease-out;
}
.logo-block .grid-container .single-logo a img{
	opacity:0.8;
}

.logo-block .grid-container .single-logo a:hover img{
	transform: unset;
	opacity:1.0;
	transition: opacity 0.35s ease-out;
}


/* -------------------------------- Resource BLOCK -------------------------------- */
.resources-block .title-section p{
	color: #333333;
	margin-bottom:36px;
	max-width: 50%;
}
.resources-block .section-title{
	margin-bottom: 12px;
}

.resources-block .section-title a{
	border-bottom:none;
	margin-left:16px;

}
 .grid-container .all-post{
	display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 64px;
	margin-bottom:64px;
}
 .grid-container .all-post .post-card{
	grid-template:1fr/1fr;	
	grid-gap:16px;
}
/* -------------------------------- PROCESS BLOCK -------------------------------- */

.block.process-block .grid-container{
	display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 64px;
    padding: 40px 0;
}

.block.process-block .grid-container .title{
	display:flex;
	flex-direction: column;
	margin-bottom:24px;	
	gap:16px;
}
.block.process-block .grid-container .title .index{
	font-size: 16px;
	font-weight:500;
	width:40px;
	height:40px;
    border-radius:50%;
	background-color:var(--ft-blue);
	color: #FFFFFF;    
	display: flex;
    align-items: center;
    justify-content: center;
	margin-right:16px;
}

.block.process-block .grid-container .title h4{
	font: normal normal bold 24px/26px soehne;	
	margin:0;
}

.block.process-block .grid-container .text-card p{
	margin:0;
}


/* -------------------------------- TEXT BLOCK -------------------------------- */
.block.text-block .grid-container{
	display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 64px;
	padding: 40px 0;
}

.block.text-block .grid-container .title{
	display:flex;
	align-items: center;
	margin-bottom:24px;	
	justify-content: space-between;
}

.block.text-block .grid-container .title h4{
	font: normal normal bold 24px/26px soehne;	
	margin:0;
}
.block.text-block .grid-container .title .icon img{
	height:100%;
	width:auto;
	max-height:35px;
}

.block.text-block .grid-container .text-card p{
	margin:0;
}
/* -------------------------------- SPACER BLOCK -------------------------------- */
.block.spacer-block.large{
	margin-top:120px;
}
.block.spacer-block.medium{
	margin-top:80px;
}
.block.spacer-block.small{
	margin-top:48px;
}
/* -------------------------------- DIVIDER BLOCK -------------------------------- */
.block.divider{
	border-top:2px solid #999999;
}
.block.divider.not_full_width{
	margin-left:120px;
	margin-right:120px;
}
.block.divider.ft-blue{
	border-color:var(--ft-blue);
}
.block.divider.large{
	margin-top:120px;
	margin-bottom:120px;
}
.block.divider.medium{
	margin-top:80px;
	margin-bottom:80px;
}
.block.divider.small{
	margin-top:48px;
	margin-bottom:48px;
}



/* -------------------------------- FLEXIBLE CONTENT BLOCK -------------------------------- */

.block.flexible-content.with_padding{
	padding:0 120px;
}
.block.flexible-content.with_padding.ft-blue{
	background-color:var(--ft-blue);
	padding:80px 120px;
}
.block.flexible-content.with_padding.dark-blue{
	background-color:var(--ft-dark-blue);
	padding:80px 120px;
}
.block.flexible-content.ft-blue :is(h1, h2, h3, h4, h5, h6), .block.flexible-content.dark-blue :is(h1, h2, h3, h4, h5, h6){
	color:#fff;
}
.block.flexible-content.with_padding.ft-sand{
	background-color:var(--ft-sand);
	padding:80px 120px;
}

.block.flexible-content .grid-container{
	display: grid;
	word-break: break-word;
}
.block.flexible-content .grid-container.mid{
	align-items: center;
}
.block.flexible-content .grid-container.bot{
	align-items: end;
}
.block.flexible-content .grid-container .first-column, .block.flexible-content .grid-container .second-column, .block.flexible-content .grid-container .third-column{
	display:flex;
	flex-direction:column;
}
.block.flexible-content .grid-container.small{
	 grid-gap: 56px;
}
.block.flexible-content .grid-container.large{
	 grid-gap: 120px;
}
.block.flexible-content .grid-container.one-col{
	grid-template-columns: 1fr;
}
.block.flexible-content .grid-container.three-col{
	grid-template-columns: 1fr 1fr 1fr;		
}
.block.flexible-content .grid-container.six-four{
	grid-template-columns: 6fr 4fr;	
}
.block.flexible-content .grid-container.four-six{
	grid-template-columns: 4fr 6fr;	
}
.block.flexible-content .grid-container.half-half{
	grid-template-columns: 1fr 1fr;	
}
.block.flexible-content.with_padding.ft-blue .text, .block.flexible-content.with_padding.dark-blue .text{
	color:#fff;
}
.flexible-content .text a{
	
}
.block.flexible-content.with_padding.ft-blue .text a, .block.flexible-content.with_padding.dark-blue .text a{
	color:#fff;
	text-decoration:underline;
	text-underline-offset:3px;
}
.block.flexible-content.with_padding.ft-blue .text a:hover, .block.flexible-content.with_padding.dark-blue .text a:hover{
	color:#999999;
}
.flexible-content .text a:hover{
	color:var(--contrast);
}
.flexible-content .text p:last-child{
	margin-bottom:0;
}
.flexible-content img{
	border-radius: 8px;
	z-index:5;
}
.flexible-content .img-sand .column:has(.img-bg), .flexible-content .img-blue .column:has(.img-bg){
	padding:32px;
	position:relative;
}

.flexible-content .column .img-bg{
	position: absolute;
 	width: 100%; 
	height: 100%;
	bottom: 0;
	left: 0;
	z-index:1;
	transition: all 0.2s linear;
	border-radius: 8px;
}
.flexible-content .img-sand .column .img-bg{
	background-color: var(--ft-sand);
}
.flexible-content .img-blue .column .img-bg{
	background-color: var(--ft-blue);
}
/* --------------------------------FAQS BLOCK -------------------------------- */
.faq-block h3{
	margin-bottom:64px;
}


.faq-block .grid-container{
	display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 64px;
}
.faq-block .grid-container .single-faq{
	display: block;
	break-inside:avoid;
	border-bottom: 1px solid #000;
}
.faq-block .grid-container .col .single-faq:first-of-type{
	border-top: 1px solid #000; 
}
.faq-block .grid-container .single-faq p{
	margin-bottom:8px;
}
.faq-block .grid-container .single-faq .question{
	padding:24px 32px 24px 0;
	cursor:pointer;
	display:flex;
	align-items: center;
    justify-content: space-between;

}
.faq-block .grid-container .single-faq .question .arrow {
    content: '';
    width: 11px;
    height: 11px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(45deg);
    transition: 0.35s;
    position: relative;
    left: unset;
    top: unset;
    background: none;
}

.faq-block .grid-container .single-faq .question p{
	margin-bottom:0;
	font-weight:800;
}

.faq-block .grid-container .single-faq .answer{
    display: none;
	padding-bottom:24px
}
.faq-block .grid-container .single-faq.active .question .arrow{
	transform: rotate(135deg);
}
/* -------------------------------- CTA BLOCK -------------------------------- */
.block.cta{
	background-color: var(--ft-blue);	
}
.block.cta.ft-sand{
	background-color: var(--ft-sand);	
}
.block.cta.dark-blue{
	background-color: var(--ft-dark-blue);	
}
.block.cta .grid-container{
	padding: 128px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 256px;
}
.block.cta .grid-container .text{
	color:#ffffff;
}
.block.cta .grid-container .text h5{
	color:#ffffff;
}
.block.cta .grid-container .text h3{
	color:#ffffff;
}

.block.cta .grid-container .text p{
	margin-bottom:20px;
}
/* -------------------------------- Glossary Block -------------------------------- */

.block.glossary-block .glossaries{
	display: flex;
    flex-direction: column;
}
.block.glossary-block .glossaries .glossary{
	background:var(--ft-sand);
	padding:32px;
	margin-bottom:32px;
}
.block.glossary-block .glossaries .glossary p:last-child{
	margin-bottom:0;
}
.block.glossary-block .glossaries .glossary h4{
	margin-bottom:24px;	
}
.block.glossary-block .glossary .title{
	display: grid;
	grid-template-columns:1fr 125px;
	align-items: start;
} 
.block.glossary-block .glossary span{
	font: normal normal bold 16px / 24px Soehne;
    color: #999999;
    margin-bottom: 0;
	display:flex;
	align-items: center;
}
.block.glossary-block .glossary span svg{
	margin-left:8px;
}
/* -------------------------------- Further Reading Block -------------------------------- */

.block.further-reading{
	
}
.block.further-reading .links{
	padding:20px 0;
	border-bottom: 1px solid var(--black);
	border-top: 1px solid var(--black);
}
.block.further-reading .links .link{
	padding-bottom:20px;
}
.block.further-reading .links .link:last-child{
	padding-bottom:0;
}
.block.further-reading .links .link a{
	color: var(--black);
}
.block.further-reading .links .link a:hover{
	color: var(--accent);
}
.block.further-reading .links .link a svg{
	margin-right:8px;
}
.block.further-reading .links .link a:hover svg path{
	fill:var(--ft-blue);
}

/*------------------------ Resource Header - TK CSS ----------------------------*/
/* 2/13/2025 */
.featured-resources {
	display: grid;
	grid-template-columns: 1fr;
	gap: 30px;
}

.resource-item .img-wrp {
  	overflow: hidden;
}

.resource-item .img-wrp a {
	width: 100%;
	height: 100%;
	display: block;
}

.resource-item .img-wrp img {
	width: 100%;
	height: auto;
  	transition: all 0.35s ease-out;
}

.resource-item .img-wrp span {
	background-color: 000;
	display: block;
	height: 100%;
	width: 100%;
	object-fit: cover;
}

.featured-items-wrp .resource-item .img-wrp {
	margin-bottom: 20px;
}

.featured-main-item-wrp .resource-item .img-wrp {
	margin-bottom: 40px;
}

.latest-resources-wrp .resource-item .img-wrp {
	margin-bottom: 20px;
}

.resource-item .content-wrp .category-wrp {
	display: inline-block;
	background-color: #fff4e9;
	padding: 8px;
	margin-bottom: 12px;
	font-size: 14px;
    font-weight: bold;
    line-height: 21px;
	color: var(--black);
}

.featured-main-item-wrp .content-wrp .category-wrp {
	padding: 12px;
	margin-bottom: 20px;
}

.latest-resources-wrp .resource-item {
	display: flex;
    flex-direction: column;
	margin-bottom: 30px;
}

.latest-resources-wrp .resource-item:last-child {
  	margin-bottom: 0;
}

.featured-items-wrp .resource-item {
  	margin-bottom: 56px;
}

.resource-item .author-wrp {
	font-size: 16px;
    font-weight: normal;
    line-height: 21px;
	color: var(--black);
}

.featured-main-item-wrp .resource-item .author-wrp {
    margin-top: 20px;
    display: inline-block;
}

.latest-resources-wrp {
	grid-area: auto;
    order: 3;
}

.latest-resources-wrp .latest-resources-inner-wrp {
	display: grid;
	gap: 50px;
}

.featured-items-wrp {
    order: 2;
}

.featured-main-item-wrp {
    order: 1;
}

.latest-resources-wrp .latest-resources-title {
	font-size: 16px;
	font-weight: 700;
	line-height: 20px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.featured-items-wrp .resource-item .content-wrp h4,
.latest-resources-wrp .resource-item .content-wrp h5 {
    font-family: Marr Sans Cond;
}

.resource-item .content-wrp a > *:not(img) {
    transition: 0.15s color ease-in-out;
}

.resource-item:has(.img-wrp:hover) .content-wrp a > * {
    color: var(--ft-blue);
}

.resource-item:has(.content-wrp a:hover) .img-wrp img {
    transform: scale(1.05);
}

.resource-item .content-wrp a:hover > * {
    color: var(--ft-blue);
}
/* 2/13/2025 */
/*------------------------ Resource Header - TK CSS ----------------------------*/

/* ----------------------- Accordion with Image - TK CSS ---------------------- */
/* 2/18/2025 */
.block.accordion-with-image .accordion-img-wrp {
    display: grid;
    grid-template-columns: 1fr;
    gap: 50px 0;
	padding: 0 30px;
}

.block.accordion-with-image .accordion-item-wrp {
    border-bottom: 1px solid var(--black);
	margin-bottom: 24px;
}

.block.accordion-with-image .accordion-item-wrp:last-of-type {
	margin-bottom: 0;
}

.block.accordion-with-image .accordion-item-wrp .title-wrp {
    display: grid;
    grid-template-columns: 1fr 32px;
    align-items: center;
    cursor: pointer;
}

.block.accordion-with-image .accordion-item-wrp .title-wrp h3 {
    margin-bottom: 0;
    padding: 16px 0;
	font-weight: 600;
}

.block.accordion-with-image .accordion-item-wrp .title-wrp h3:hover {
    cursor: pointer;
    color: var(--black);
}

.block.accordion-with-image .accordion-item-wrp .title-wrp .arrow {
    width: 20px;
    height: 20px;
    display: inline-block;
    transition: 0.25s;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0;
    left: unset;
    bottom: unset;
    cursor: pointer;
}

.block.accordion-with-image .accordion-item-wrp .title-wrp:hover .arrow,
.block.accordion-with-image .accordion-item-wrp.active .title-wrp .arrow {
    transition: 0.25s;
}

.block.accordion-with-image .accordion-item-wrp .title-wrp .arrow:after {
    content: '';
    width: 6px;
    height: 6px;
    border-top: 1.5px solid var(--black);
    border-right: 1.5px solid var(--black);
    transform: rotate(135deg);
    transition: 0.25s;
    margin-top: -2px;
    position: relative;
    left: unset;
    top: unset;
    background: none;
}

.block.accordion-with-image .accordion-item-wrp.active .title-wrp .arrow:after {
    transform: rotate(-45deg);
    margin-top: 3px;
}

.block.accordion-with-image .accordion-item-wrp .content-wrp {
    display: none;
}

.block.accordion-with-image .accordion-img-wrp .accordion-wrp {
	order: 2;
}

.block.accordion-with-image .accordion-img-wrp .img-wrp {
	order: 1;
}
/* 2/18/2025 */
/* ----------------------- Accordion with Image - TK CSS ---------------------- */

/* ----------------------- Resources Category - TK CSS ---------------------- */
/* 2/19/2025 */
.block.resources-categories {
    padding: 32px 40px;
    background: var(--ft-blue);
    border-radius: 8px;
}

.block.resources-categories .intro-content p {
    color: #fff;
    font-size: 16px;
    line-height: 20px;
	letter-spacing: 1px;
    font-weight: bold;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.block.resources-categories .resources-cat-wrp {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.block.resources-categories .resources-cat-item {
    color: #000;
    font-weight: 300;
/*     padding: 8px 20px; */
	padding: 8px 14px;
    background-color: #fff;
    border-radius: 4px;
    transition: 0.15s allease-in-out;
}

.block.resources-categories .resources-cat-item:hover {
    background-color: #000;
    color: #fff;
}
/* 2/19/2025 */
/* ----------------------- Resources Category - TK CSS ---------------------- */

/* ----------------------- Resources Block - Two Column - TK CSS ---------------------- */
/* 2/19/2025 */
.block.resources-block .section-title {
    margin-bottom: 34px;
}

.resources-block .section-title a {
    color: #000;
}

.block.resources-block .category-wrp {
    display: grid;
    grid-template-columns: 100%;
    gap: 20px;
}
/* 2/19/2025 */
/* ----------------------- Resources Block - Two Column - TK CSS ---------------------- */

/* ----------------------- Further Reading - New - TK CSS ---------------------- */
/* 6/27/2025 */
.block.further-reading .links {
    border: none;
    padding: 0;
}

.block.further-reading .links .link a {
    font-size: 16px;
    line-height: 21px;
	position: relative;
	display: block;
	border-block: 2px solid #D5D5D5;
    padding-block: 15px;
}

.block.further-reading .links .link a h5 {
	font-size: 16px;
    line-height: 21px;
}

.block.further-reading a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background-size: cover;
    width: 11px;
    height: 11px;
    background-image: url(../svg/further-reading-block-arrow.svg);
}
/* 6/27/2025 */
/* ----------------------- Further Reading - New - TK CSS ---------------------- */

/* ----------------------- Team Members - Block - CSS ---------------------- */
.block.team-members-block .all-team-members {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 40px;
}
.block.team-members-block .all-team-members h4 {
    margin-top: 28px;
    margin-bottom: 0;
    font-size: 28px;
    font-weight: 600;
}
/* ----------------------- Team Members - Block - CSS ---------------------- */

/* -------------------------------- Responsive Code -------------------------------- */

@media (min-width: 1801px) {
	.featured-work-block .grid-container{
		grid-column-gap: 120px;
	}
	.featured-post-block .grid-container{
		grid-gap: 120px;
	}

	.home-section4 .wp-block-columns .wp-block-column:has(h6){
		max-width:680px;
	}
	.block.side-padding{
		margin-left:120px;
		margin-right:120px;
	}
}


@media (max-width: 2040px) {
	.block.featured-post-block{
		padding:120px 48px;
	}
}

@media (max-width: 2000px) {
	
	
}


@media (max-width: 1800px) {

	.image-gallery div {
		max-height: unset;
		padding: 20px;
		flex-basis: 33.33%;
		justify-content: center;
	}
	.image-gallery {   
    	flex-wrap: wrap;
	}
	.hero-block .grid-container{
		grid-gap:80px;
	}
	.block.featured-post-block{
		padding:80px;
	}
	.logo-block .grid-container.col-6, .logo-block .grid-container.col-5{
		grid-template-columns:1fr 1fr 1fr;
	}
	.block.about-block{
		margin:0 120px;
	}
	.block.flexible-content.with_padding{
		padding:0 80px;
	}

	.featured-services-block .grid-container .service-card{
		padding:40px;
	}
	.pricing-table .grid-container.col-3, .pricing-table .grid-container.col-4{
		grid-template-columns:1fr 1fr;
	}
}


@media (max-width: 1600px) {
	.hero-block .grid-container{
		grid-template-columns:1fr 1fr;
		grid-gap: 0;
	}
	.grid-container .all-post{
   		grid-template-columns: 1fr 1fr 1fr;
	}
}

@media (max-width: 1400px) { 
	.featured-services-block .grid-container .service-card{
		padding:32px;
	}
	.hero-block .hero-gallery .hero-image-right, .hero-block .hero-gallery .hero-image-left{
		display:none;
	}
	.hero-block .grid-container{
		grid-column-gap:0;
	}
	.featured-work-block .grid-container{
		grid-template-columns:1fr 1fr;
	}
	.featured-post-block .grid-container{
		grid-template-columns:1fr;
	}
	.featured-post-block .hero-container{
		grid-template-columns: 3fr 1fr;
	}
	.featured-work-block .grid-container .work-card:first-child .work-card-image img{
		height:100%;
	}
	.block.flexible-content .grid-container.large, .block.flexible-content .grid-container.small{
		grid-gap: 40px;
	}
	.block.about-block .grid-container{
		grid-gap:40px;
	}
	.block.flexible-content.with_border.with_padding{
		padding:88px;
		grid-gap:40px;
	}
	.featured-work-new .grid-container{
		column-count:2;
	}
	.block.spacer-block.large{
		margin-top:80px;
	}

}
@media (max-width: 1280px) {
	.block.team-members-block .all-team-members h4 {
		margin-top: 12px;
		font-size: 26px;
	}
	.hero-block .grid-container{
		grid-template-columns: 1fr;
	}
	.home-section1 .wp-block-columns{
		flex-direction:column;
	}
	.featured-post-block .hero-container{
		grid-template-columns: 1fr;
	}
	.hero-block .hero-text .button{
		margin:30px 0;
	}
	.block.intro-paragraph{
		top:unset!important;
	}
	.block.flexible-content.with_padding{
		padding:0 64px;
	}
	.logo-block.with_padding{
		margin:0;
	}
	.block.about-block .grid-container{
		grid-template-columns: 1fr;
	}
	.block.flexible-content .grid-container.three-col{
		grid-template-columns: 1fr;
	}
	.block.flexible-content .grid-container.half-half, .block.flexible-content .grid-container.four-six, .block.flexible-content .grid-container.three-col, .block.flexible-content .grid-container.six-four{
		grid-template-columns: 1fr;
		grid-gap: 40px;
	}

	.featured-work-new .grid-container .work-card .work-card-image img{
		height:unset!important;
		aspect-ratio:16 / 9;
	}
	.block.flexible-content .half-half .first-column:not(:has(.text)){
		grid-row:2/3;
	}
	.featured-services-block .grid-container{
		grid-gap:40px;
	}

}
@media (max-width: 1024px) { 
	
	.grid-container .all-post{
		grid-gap: 32px;
	}
	.featured-work-block .grid-container{
		grid-template-columns: 1fr;
	}
	.featured-work-block .grid-container .work-card:first-child{
		grid-column: 1 ;
    	grid-row: 1 ;
	}
	.block.flexible-content.with_padding{
		padding:0 32px;
	}

	.block.display-services .grid-container, .block.process-block .grid-container, .block.text-block .grid-container{
		grid-template-columns: 1fr 1fr;
	}
	.image-gallery div{
		flex-basis:33.33%;
		justify-content: center;
	}

	.block.about-block{
		margin:0 80px;
		padding:88px;
	}
	.block.spacer-block.medium, .block.spacer-block.large{
		margin-top:56px;
	}
	.block.featured-post-block{
		padding: 56px 40px
	}
	.featured-work-block .is-layout-flex, .featured-work-new .is-layout-flex{
		margin:16px 0 40px;
	}
	.hero-text .is-link-blue{
		margin-bottom:40px;
	}
	.faq-block .grid-container{
		grid-template-columns:1fr;
		grid-gap: 0;
	}
	.faq-block .grid-container .col.col-2 .single-faq:first-of-type{
		border-top:none;
	}
	.pricing-table .grid-container.col-2, .pricing-table .grid-container.col-3, .pricing-table .grid-container.col-4{
		grid-template-columns:1fr;
	}
	.block.team-members-block .all-team-members {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 30px;
    }
}
@media (max-width: 768px) {
	.block.team-members-block .all-team-members h4 {
		margin-top: 10px;
		font-size: 22px;
	}
	.block.team-members-block .section-title {
		margin-bottom: 32px;
	}
	.grid-container .all-post{
		grid-template-columns: 1fr;
	}
	.featured-services-block .grid-container{
		grid-template-columns:1fr;
	}
	.featured-post-block .grid-container .all-post .post-card{
		grid-template-columns: 1fr;
	}
	.featured-post-block .featured-post .featured-post-blurb{
		display:none;
	}
	h2.section-title {
		font-size:32px;
		margin:unset;
	}
	.featured-work-new .grid-container{
		column-count:1;
	}
	.hero-block .hero-text h1, h1{
		font-size:48px!important;
	}

	.intro-paragraph .intro-text .intro-title{
		font-size:32px;
	}
	.image-gallery{
		flex-wrap:wrap;
		margin:40px auto;
	}

	.image-gallery div:last-child{
		margin-right:auto;
	}
	.featured-post .featured-post-title a{
		font-size:24px;
		line-height:26px;
	}
	.block.display-services .grid-container, .block.process-block .grid-container, .block.text-block .grid-container{
		grid-template-columns: 1fr;
	}
	.image-gallery div{
		flex-basis:50%;
	}
	.resources-block .title-section p{
		max-width: 100%;
	}
	.faq-block .grid-container{
		column-count:1;
	}
	.logo-block .grid-container.col-6, .logo-block .grid-container.col-5 {
    grid-template-columns: 1fr 1fr;
	}
	.block.about-block{
		padding:38px;
	}
	.block.flexible-content.with_border.with_padding{
		padding:38px;
	}
	.pricing-table .grid-container .pricing-card{
		padding:40px;
	}

	.featured-post-block .grid-container, .featured-post-block .grid-container .all-post{
		grid-row-gap:40px;	
	}
	.block.spacer-block.medium, .block.spacer-block.large, .block.spacer-block.small{
		margin-top:32px;
	}
	.featured-work-new .grid-container .work-card{
		margin-bottom: 40px;
	}
	.logo-block .grid-container .single-logo{
		margin:24px 12px;
	}
	.block.flexible-content.with_padding{
		padding: 0;
	}
	.block.team-members-block .all-team-members {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 30px;
    }
}
@media (max-width: 520px) { 
	.block.featured-post-block{
		padding: 56px 30px;
	}

	.block.about-block{
		margin:0 18px;		
	}
	.logo-block .grid-container .single-logo{
		margin: 16px 8px;
	}
	.logo-block .grid-container .single-logo img{
		max-height: 40px;
   		max-width: 180px;
	}
	.pricing-table .grid-container .pricing-card{
		padding:30px;
	}
	.block.team-members-block .all-team-members {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        grid-gap: 20px;
    }
}
@media (max-width: 480px) { 

	.hero-block .hero-text h1, h1{
		font-size:32px!important;
		line-height: 56px!important;
	}
	h2.section-title{
		font-size:24px!important;
	}
	
	.post-card .post-title a, .featured-post .featured-post-title a{
		font-size:18px;
	}
	.image-gallery div{
		flex-basis:100%;
	}
	.logo-block .grid-container.col-6, .logo-block .grid-container.col-5 {
    grid-template-columns:1fr;
	}
	.logo-block .grid-container .single-logo img {
    	max-height: 25px;
    	max-width: 100px;
	}
	.resources-block .section-title{
		display: grid;
        align-items: center;
        grid-template-columns: 1fr 55px;
        gap: 16px;
	}
	.resources-block .section-title a{
		margin-left:0;
		margin-top:16px;
	}
}

/*------------------------ Resource Header - Responsive - TK CSS ----------------------------*/
/* 2/13/2025 */
@media (min-width: 480px) {
	.latest-resources-wrp .latest-resources-inner-wrp {
		grid-template-columns: 1fr 1fr;
	}
}

@media (min-width: 768px) {
	.featured-resources {
		grid-template-columns: minmax(50px, 404px) minmax(200px, 713px);
	}

	.latest-resources-wrp {
		grid-area: 3 / span 2;
	}

	.featured-items-wrp {
		order: 1;
	}

	.featured-main-item-wrp {
		order: 2;
	}

	.featured-items-wrp .resource-item .img-wrp {
		height: 202px;
	}

	.featured-main-item-wrp .resource-item .img-wrp {
		height: 380px;
	}
}

@media (min-width: 1024px) {
	.latest-resources-wrp .resource-item {
		flex-direction: row;
		margin-bottom: 30px;
	}

	.latest-resources-wrp .resource-item .img-wrp {
		flex-basis: 50%;
		margin-bottom: 0;
		margin-right: 32px;
	}

	.latest-resources-wrp .resource-item .content-wrp {
		flex-basis: 50%;
	}

	.featured-items-wrp .resource-item .content-wrp h4 {
		font-size: 32px;
		line-height: 44px;
		font-weight: 600;
	}

	.latest-resources-wrp .resource-item .content-wrp h5 {
		font-size: 24px;
		font-weight: 600;
		line-height: 33px;
		margin-bottom: 8px;
	}
}

@media (min-width: 1280px) {
	.featured-resources {
		grid-template-columns: minmax(50px, 404px) minmax(200px, 713px) minmax(200px, 565px);
	}

	.latest-resources-wrp {
		grid-area: auto;
	}

	.latest-resources-wrp .latest-resources-inner-wrp {
		display: block;
	}
}

@media (min-width: 1400px) {
	.featured-resources {
		gap: 0 59px;
	}

	.latest-resources-wrp .resource-item {
		margin-bottom: 60px;
	}
}
/* 2/13/2025 */
/*------------------------ Resource Header - Responsive - TK CSS ----------------------------*/

/* ----------------------- Accordion with Image - Responsive - TK CSS ---------------------- */
/* 2/18/2025 */
@media (min-width: 520px) {
	.block.accordion-with-image .accordion-img-wrp {
		padding: 0 40px;
	}
}

@media (min-width: 1024px) {
	.block.accordion-with-image .accordion-img-wrp {
		grid-template-columns: 1fr 1fr;
		gap: 0 50px;
		padding: 0 80px;
	}
	
	.block.accordion-with-image .accordion-img-wrp .accordion-wrp {
		order: 1;
	}
	
	.block.accordion-with-image .accordion-img-wrp .img-wrp {
		order: 2;
	}
	
	.block.accordion-with-image .accordion-item-wrp .title-wrp h3 {
		font-size: 32px;
		line-height: 38px;
	}
}

@media (min-width: 1280px) {
	.block.accordion-with-image .accordion-img-wrp {
		grid-template-columns: minmax(200px, 714px) minmax(200px, auto);
		gap: 0 108px;
	}
}

@media (min-width: 1800px) {
	.block.accordion-with-image .accordion-img-wrp {
		padding: 48px;
	}
}
/* 2/18/2025 */
/* ----------------------- Accordion with Image - Responsive - TK CSS ---------------------- */

/* ----------------------- Resources Category - Responsive - TK CSS ---------------------- */
/* 2/19/2025 */
@media (min-width: 1024px) {
/* 	.block.resources-categories .resources-cat-item {
        font-size: 24px;
        line-height: 36px;
    } */

    .block.resources-categories .resources-cat-wrp {
        gap: 24px;
    }
}
/* 2/19/2025 */
/* ----------------------- Resources Category - Responsive - TK CSS ---------------------- */

/* ----------------------- Resources Block - Two Column - Responsive - TK CSS ---------------------- */
/* 2/19/2025 */
@media (min-width: 1280px) {
    .block.resources-block .category-wrp .grid-container .all-post .post-card {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        margin-bottom: 42px;
    }

    .block.resources-block .category-wrp .grid-container .all-post {
        display: block;
    }

    .block.resources-block .category-wrp .grid-container .all-post .post-card:last-child {
        margin-bottom: 0;
    }

    .block.resources-block .category-wrp .post-card .post-text,
    .block.resources-block .category-wrp .post-card .post-title {
        margin-top: 0;
    }

	.block.resources-block .category-wrp .section-title {
		margin-bottom: 40px;
	}

	.block.resources-block .category-wrp {
		grid-template-columns: 1fr 1fr;
		gap: 51px;
	}
}

@media (min-width: 1400px) {
    .block.resources-block .category-wrp .grid-container .all-post .post-card {
        gap: 60px;
    }
}
/* 2/19/2025 */
/* ----------------------- Resources Block - Two Column - Responsive - TK CSS ---------------------- */
