.fmw_heroblock_walton {
   padding: 85px 0 65px;
  background: linear-gradient(135deg,#667eea 0%,#764ba2 100%);
     margin-top: 78px;
}

.fmw_herocontent_kt20 {

	   text-align: center;
   max-width: 820px;
      margin   :    0 auto; 
}

.fmw_pagetitle_hill     {
	font-size: 48px;
          font-weight    :700;
   color: #fff;
  margin-bottom: 18px;
	line-height: 1.2;
}

.fmw_pageintro_lane
	{
    font-size: 19px;
  color: rgba(255,255,255,0.93);
   line-height    :       1.7; 

}

.fmw_frameworksgrid_cheq67 {
   	 padding: 95px 0;
  background: #f8f9fa;
}

.fmw_frameworkcard_tadworth {
  background: #fff;
  border-radius: 12px;
   margin-bottom: 42px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.08);
  overflow: hidden;
   transition: all 0.3s ease;
}

.fmw_frameworkcard_tadworth:hover   {
  box-shadow: 0 8px 28px rgba(0,0,0,0.14);
  transform: translateY(-4px);
}

.fmw_cardheader_walton

{
  background: linear-gradient(135deg,#667eea 0%, #764ba2 100%);
          padding: 32px 38px;
   display: flex;
	 align-items   :    center;
   gap: 22px;
}
	/* Cross-browser fix */

.fmw_iconbox_kt20 {
 width: 62px;
	   height: 62px;
	  background: rgba(255,255,255,0.2);
	    border-radius: 50%;
	    display : flex;
	   align-items: center;
	      justify-content: center;
	   flex-shrink: 0;
}

/* State modifiers */
	/* Debug styles */
.fmw_headericon_hill {
    width: 32px;
    height: 32px;
  filter: brightness(0) invert(1);
} 

.fmw_frameworkname_lane {
   font-size   :   32px;
    font-weight: 700;
    color: #fff;
  margin: 0;
}

.fmw_cardbody_cheq {
     padding: 38px; 

}

.fmw_overview_tadworth {
  font-size: 18px;
   color: #2c3e50;
    line-height: 1.7;
   margin-bottom: 28px;
    font-weight: 500;
}

.fmw_subsectiontitle_walton {


    font-size: 22px;
  font-weight: 600;
          color: #2c3e50;
   margin-top     :28px;
   margin-bottom: 14px;
}

.fmw_bodytext_kt20 {
     font-size: 16px;
   color :    #7f8c8d;
          line-height: 1.8;
   margin-bottom: 18px;
}

.fmw_frameworklist_hill {
  margin-left   :        22px;
   margin-bottom: 24px;
}

.fmw_frameworklist_hill li {
     font-size: 16px;
   color: #7f8c8d;
  line-height: 1.8;
    margin-bottom: 12px;
     }

.fmw_frameworklist_hill li strong {
    color: #2c3e50;
   font-weight: 600;
}

.fmw_example_lane {

    font-size :    16px;
    color: #34495e;
  line-height   :   1.8;
  background: #f8f9fa;
  padding: 22px;
   border-left: 4px solid #667eea;
  border-radius   :    6px;
    margin-bottom:      24px;
   font-style: italic;


}
	/* TODO: optimize for mobile */

/* Animation and transitions */


/* Cross-browser fix */

.fmw_recommendation_box {
   background: #fff3cd;
    border: 1px solid #ffc107;
  border-radius: 8px;
    padding: 22px;
  display :      flex;
   gap: 16px;
	align-items: flex-start;
	margin-top: 28px;
}

.fmw_recicon_cheq {
    margin-top: 2px;
   width: 28px;
  flex-shrink: 0;
	height: 28px;
}

.fmw_rectext_tadworth {
   font-size: 15px;
	 color: #856404;
    line-height: 1.7;
   margin: 0;
}

.fmw_rectext_tadworth strong {
   color: #664d03;

}

.fmw_comparison_section    {
   padding: 85px 0;
  background: #fff;
}

.fmw_comparison_title {


   font-size: 38px;
     font-weight: 700;
   color: #2c3e50;
  text-align: center;
  margin-bottom: 16px;

}
/* Vendor-specific */


.fmw_comparison_intro {
	 font-size: 18px;
    color: #7f8c8d;
         text-align:       center;
    max-width  :    720px;
    margin: 0 auto 52px;
   line-height: 1.7;
}
	/* Generated styles */
.fmw_comparison_grid {
    display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap    : 32px;
}

.fmw_compare_card {
	background: #f8f9fa;
   padding: 32px 24px;
    border-radius: 12px;
   text-align: center;
   transition     :        all 0.3s ease;
}  

.fmw_compare_card:hover {
  background: #ecf0f1;
  transform: translateY(-5px);
}

.fmw_compare_icon {
   width: 48px;
  height: 48px;
  margin: 0 auto 18px;
}



.fmw_compare_heading {

	font-weight     :        600;
   margin-bottom: 12px;
        color    :    #2c3e50;
    font-size: 20px;
     }



.fmw_compare_text {
    font-size: 15px;
	  color: #7f8c8d;
	   line-height: 1.7;
	     margin: 0;
}

.fmw_compare_text strong  {
    color: #667eea;

	   font-weight: 600;
}

/* Third-party styles */

.fmw_cta_zone {
	padding: 85px 0;
  background: linear-gradient(135deg,#2c3e50 0%, #34495e 100%);
}

.fmw_cta_content {


  text-align: center;
   max-width   :       720px;
  margin     :  0 auto;


}

/* Responsive design */

.fmw_cta_title {
    font-size: 38px;
     font-weight: 700;
  color: #fff;
        margin-bottom: 18px;
  line-height: 1.3;
}

.fmw_cta_text {
	  font-size: 18px;
  color: rgba(255,255,255,0.9);
    margin-bottom :       32px;
   line-height: 1.7;
     }

.fmw_cta_button  {
  display :     inline-block; 
	  padding: 16px 42px; 
		background: #667eea; 
	  color: #fff; 
	   font-size: 17px; 
	    font-weight: 600; 
	    border-radius   :    6px; 
	    transition: all 0.3s ease; 
	   text-decoration: none;
}

/* Performance critical */
	/* Build system output */


/* FIXME: IE11 compatibility */


.fmw_cta_button:hover {
  background: #5568d3;
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.3);

} 
@media (max-width:767px){
    .fmw_pagetitle_hill {
        font-size:36px;
    }

    .fmw_pageintro_lane{
        font-size: 17px;
    }

    .fmw_frameworkname_lane{
        font-size: 26px;
    }

    .fmw_cardheader_walton {
        flex-direction:column;
        text-align:center;
    }

    .fmw_cardbody_cheq {
        padding:28px 22px;
    }

    .fmw_comparison_title,
    .fmw_cta_title{
        font-size:32px;
    }

    .fmw_comparison_grid{
        grid-template-columns:1fr;
    }
}