* {
   margin: 0;
    padding  :       0;
	box-sizing: border-box;
}

body {
  font-family: 'Roboto',sans-serif;
    line-height: 1.6;
    color: #2c3e50;
    background   :    #ffffff;
}

img {
  max-width: 100%;
   height    :        auto;
   display :  block;
	}

a {
  text-decoration: none;
   -moz-transition  :   all 0.3s ease;
    -webkit-transition  :        all 0.3s ease;
    color: inherit;
    transition: all 0.3s ease;
}

.opsg_TopNav_charles {
   position: fixed;
  top: 0;
	 left   :   0;
    width: 100%;
  background: rgba(255,255,255,0.98);
  box-shadow: 0 2px 15px rgba(0,0,0,0.08);
  z-index :       1000;
	 padding :     18px 0;
}

.opsg_NavFrame_charles {
   max-width     :        1320px;
    margin: 0 auto;
  padding: 0 25px;
   display: flex;
   justify-content: space-between;
   align-items: center;
}

.opsg_LogoPlace_charles {
         flex-shrink: 0;
}

.opsg_LogoImg_charles {
      height: 62px;
  width: auto;
}

.opsg_MenuItems_charles {
  display: flex;
   gap    :    35px;
   list-style: none;
  align-items: center;
}

.opsg_MenuItems_charles li a {
   font-size: 15px;
    font-weight: 500;
	color   :#1a1a1a;
          position: relative;
    padding: 8px 0;
}

.opsg_MenuItems_charles li a:hover {
  color: #3498db;
}

.opsg_MenuItems_charles li a::after {
    position: absolute;
    height: 2px;
  content: '';
   bottom: 0;
    background: #3498db;
   width: 0;
   left: 0;
  transition: width 0.3s ease;

}

.opsg_MenuItems_charles li a:hover::after {
	   width: 100%;
}

.opsg_MenuToggle_charles    {
     display: none;
  flex-direction: column;
    gap   :5px;
  cursor: pointer;
  width: 28px;
}

.opsg_MenuToggle_charles span {
  width: 100%;
   height: 3px;
	 background:   #1a1a1a;
   -webkit-transition: all 0.3s ease;
   transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}

.opsg_MenuToggle_charles.active span:nth-child(1) {
  transform: rotate(45deg) translate(8px,8px);
}

.opsg_MenuToggle_charles.active span:nth-child(2)     {
    opacity: 0;
}

.opsg_MenuToggle_charles.active span:nth-child(3) {
  transform: rotate(-45deg) translate(7px,-7px);
}@media(max-width:768px){
    .opsg_MenuToggle_charles {
        display: flex;
    }

    .opsg_MenuItems_charles{
        position: fixed;
        top:78px;
        left: 0;
        width: 100%;
        background:#fff;
        flex-direction: column;
        padding: 25px;
        gap:20px;
        box-shadow:0 4px 10px rgba(0,0,0,0.1);
        transform: translateX(-100%);
        transition:transform 0.3s ease;
    }

    .opsg_MenuItems_charles.active{
        transform: translateX(0);
    }
}.opsg_HeroZone_charles {
     padding: 140px 0 90px;
  background: linear-gradient(135deg,#f5f7fa 0%,#e8eef5 100%);}

.opsg_HeroLayout_charles {
  max-width: 1320px;
    margin: 0 auto;
   padding: 0 25px;
   display   :        grid;
    grid-template-columns  :        1fr 1fr;
	gap: 60px;
	align-items: center;
}

.opsg_HeroText_charles h1 {
  font-family: 'Playfair Display',serif;
    font-size: 52px;
	font-weight: 800;
		line-height: 1.2;
    color: #1a1a1a;
    margin-bottom: 24px;
}

.opsg_HeroDesc_charles {

		font-size: 19px; 
	line-height: 1.7; 
  color: #5a5a5a; 
			margin-bottom: 35px;}

.opsg_HeroBtns_charles {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}

.opsg_BtnPrimary_charles,
.opsg_BtnSecond_charles {


  padding: 16px 32px;
   font-size   : 16px;
  font-weight: 600;
    border-radius: 6px;
    transition  : all 0.3s ease;
   display :inline-block;
	}

.opsg_BtnPrimary_charles {
	background: #3498db;

	    color: #fff;
} 

.opsg_BtnPrimary_charles:hover {
    background: #2980b9;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(52,152,219,0.3);
}

.opsg_BtnSecond_charles {
  background: transparent;
  color :    #3498db;
  border: 2px solid #3498db;
}

.opsg_BtnSecond_charles:hover {
   background: #3498db;
   color: #fff;
}  

.opsg_HeroImage_charles    {
  position: relative;
}

.opsg_MainPic_charles {
   width :   100%;
     border-radius: 12px;
  box-shadow: 0 15px 50px rgba(0,0,0,0.15);
}

.opsg_StatsBox_charles {
       position: absolute;
    bottom: -30px;
    left: 20px;
    right: 20px;
  background    :#fff;
    padding: 25px;
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.12);
  display: flex;
   justify-content: space-around; 
	
}

.opsg_StatEntry_charles {
    display: flex;
  align-items: center;
  gap: 15px;
}

.opsg_StatIcon_charles {
    width: 36px;
	height: 36px;
  filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(186deg);
}

.opsg_StatNum_charles {
    font-weight: 700;
   font-size: 28px;
	color: #1a1a1a;
    display    :       block;
}

.opsg_StatText_charles {
   font-size: 13px;
    color : #7a7a7a;
   display: block;
}@media(max-width: 968px){
    .opsg_HeroLayout_charles {
        grid-template-columns: 1fr;
        gap:50px;
    }

    .opsg_HeroText_charles h1{
        font-size: 38px;
    }

    .opsg_StatsBox_charles {
        position: static;
        margin-top:20px;
    }
}.opsg_FeaturesBlock_charles {
  padding: 85px 0;
   background: #fff;
}

.opsg_FeatWrap_charles {
   max-width: 1320px;
    margin: 0 auto;
  padding: 0 25px;

}

.opsg_FeatLayout_charles    {
      display  :     grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
	gap  :    30px; 

}

.opsg_FeatBox_charles {
               padding: 40px 30px;
    background: #f8f9fa;
       border-radius  :10px;
  transition: all 0.35s ease;
	text-align: center;
}

.opsg_FeatBox_charles:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 35px rgba(0,0,0,0.1);
}

.opsg_FeatIconWrap_charles {
	width: 70px;
   height: 70px;
	margin: 0 auto 25px;
    background: #3498db;
    border-radius: 50%;
  display: flex;
   align-items: center;
  justify-content: center;
	
}

.opsg_FeatIconWrap_charles img {
  width: 35px;
  height: 35px;
  filter: brightness(0) invert(1);
}

.opsg_FeatBox_charles h3 {
    font-size: 22px;
    font-weight: 600;
        margin-bottom   : 15px;
  color: #1a1a1a;
}

.opsg_FeatBox_charles p
	{
    font-size: 15px;
    line-height: 1.7;
    color     :      #666;
}

.opsg_FeatHighlight_charles    {
   background: #3498db;
    color  :      #fff; 
	
}

.opsg_FeatHighlight_charles .opsg_FeatIconWrap_charles {
  background: #fff;
}

.opsg_FeatHighlight_charles .opsg_FeatIconWrap_charles img {

  filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(186deg);
	}

.opsg_FeatHighlight_charles h3,
.opsg_FeatHighlight_charles p {
  color    :  #fff;
}

.opsg_MethodSection_charles {
	 padding :      90px 0;
     background: linear-gradient(135deg,#ffffff 0%,#f5f7fa 100%);
	
}

.opsg_MethodWrap_charles {
    max-width: 1320px;
   margin: 0 auto;
  padding: 0 25px;
  display  :   grid;
   grid-template-columns:       1fr 1fr;
   gap: 70px;
    align-items: center;
}

.opsg_MethodTag_charles {
    font-size: 15px;
	text-transform: uppercase;
  letter-spacing: 2px;
  color: #3498db;
	font-weight: 600;
   display   :      block;
  margin-bottom: 12px;
}

.opsg_MethodText_charles h2 {
  font-family: 'Playfair Display',serif;
  font-size: 42px;
  font-weight: 800;
	margin-bottom: 25px;
	color: #1a1a1a;
}

.opsg_MethodText_charles p {
   font-size: 17px;
  line-height: 1.8;
   color: #5a5a5a;
   margin-bottom: 20px;
}

.opsg_MethodSteps_charles {
    margin-top: 35px;
}

.opsg_MethodStep_charles {
    display: flex;
          gap: 20px;
  margin-bottom  :  25px;
  align-items: flex-start;
}

.opsg_StepIcon_charles {
  width: 42px;
   height: 42px;
   flex-shrink: 0;
   background: #3498db;
   border-radius: 8px;
		padding: 8px;
}

.opsg_StepIcon_charles {
	  filter: brightness(0) invert(1);
     }

.opsg_MethodStep_charles h4 {
    font-size: 18px;
   margin-bottom: 8px;
   color: #1a1a1a;
}

.opsg_MethodStep_charles p {
   font-size: 15px;
  color    : #666;
         margin: 0;
}

.opsg_MethodMainImg_charles {
  width: 100%;

	    border-radius: 12px;

	  box-shadow: 0 15px 40px rgba(0,0,0,0.12);

	   margin-bottom: 20px;
}

.opsg_MethodImgGrid_charles    {
    grid-template-columns: 1fr 1fr;
  gap: 20px;
		display: grid;
}

.opsg_MethodImgGrid_charles img {
   width: 100%;
 height: 200px;
    object-fit: cover;
         border-radius: 8px;

}@media(max-width:968px) {
    .opsg_MethodWrap_charles{
        grid-template-columns:1fr;
        gap: 50px;
    }

    .opsg_MethodText_charles h2{
        font-size:34px;
    }
}.opsg_OutcomesArea_charles {
    padding:      90px 0;
  background :#fff;
}

.opsg_OutcomesWrap_charles	{
	max-width: 1320px;
	 margin  :  0 auto;
  padding: 0 25px;
}

.opsg_OutcomesHead_charles {
   text-align: center;
   max-width: 800px;
               margin: 0 auto 60px;
}  

.opsg_OutcomesHead_charles h2 {
  font-family: 'Playfair Display',serif;
	font-size:       44px;
  font-weight: 800;
    margin-bottom: 20px;
    color :  #1a1a1a;
}

.opsg_OutcomesHead_charles p


{
   font-size: 17px;
  line-height: 1.7;
  color: #5a5a5a;
}

.opsg_OutcomesGrid_charles {
   display: grid;
  grid-template-columns: repeat(auto-fit,minmax(350px,1fr));
  gap   :      35px;
}

.opsg_OutcomeCard_charles {
	background: #f8f9fa;
	border-radius: 12px;
    overflow: hidden;
  transition: all 0.3s ease;
}

.opsg_OutcomeCard_charles:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 40px rgba(0,0,0,0.12);
}

.opsg_OutcomeThumb_charles{
  height: 240px;
	overflow  :       hidden;
}

.opsg_OutcomeThumb_charles img {


    width: 100%;
  height: 100%;
   object-fit: cover;
  transition: transform 0.4s ease;


}

.opsg_OutcomeCard_charles:hover .opsg_OutcomeThumb_charles img   {
  transform: scale(1.08);
}

.opsg_OutcomeBody_charles {
    padding: 32px;
}

.opsg_OutcomeBody_charles h3 {
   font-size: 22px;
   color: #1a1a1a;
    font-weight: 700;
    margin-bottom: 15px;
}

.opsg_OutcomeBody_charles p {
    font-size: 15px;
  line-height: 1.7;
   color: #666;
   margin-bottom: 25px;
}

.opsg_OutcomeStats_charles {
	display  :     flex;
   gap   :30px;
  margin-bottom: 25px;
  padding: 20px 0;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
}

.opsg_OutcomeStat_charles {
               display: flex;

    flex-direction: column;
}

.opsg_StatValue_charles {
    font-size: 26px;
  font-weight: 700;
    color: #3498db;
     display  :        block;
}

.opsg_StatLabel_charles {
	font-size: 13px;
  color: #7a7a7a;
        display: block;
}

.opsg_OutcomeLink_charles {
	 color: #3498db;
	font-weight: 600;
   display : inline-flex;
   align-items: center;
    gap: 8px;
    font-size: 15px;
}

.opsg_OutcomeLink_charles img {
   width   :       18px;
   height: 18px;
  filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(186deg);
       transition: transform 0.3s ease;
}

.opsg_OutcomeLink_charles:hover img {
  transform: translateX(4px);
}@media(max-width:768px){
    .opsg_OutcomesGrid_charles {
        grid-template-columns:1fr;
    }
}.opsg_LibraryZone_charles	{
  padding: 90px 0;
  background: linear-gradient(135deg,#f5f7fa 0%,#e8eef5 100%);
}

.opsg_LibraryWrap_charles {
   max-width: 1320px; 
	  margin: 0 auto; 
	   padding: 0 25px;
}

.opsg_LibraryIntro_charles {

   display: grid;
		 grid-template-columns: 1.2fr 1fr;
               gap: 50px;
   align-items: center;
    margin-bottom: 60px;
}

.opsg_LibraryLabel_charles {
      font-size: 15px;

	         text-transform: uppercase;

	  letter-spacing  :        2px;

	  color: #3498db;

	    font-weight: 600;

	  display   :   block;

	  margin-bottom  :        12px;

}

.opsg_LibraryContent_charles h2

{
  font-family: 'Playfair Display',serif;
  font-size: 40px;
       font-weight: 800;
   margin-bottom: 20px;
    color: #1a1a1a;
}

.opsg_LibraryContent_charles p     {
   font-size   :17px;
  line-height   :       1.8;
   color: #5a5a5a;
}

.opsg_LibraryPhoto_charles img {
    width: 100%;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.opsg_LibraryGrid_charles
	{
    display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 30px;
}

.opsg_LibraryItem_charles {
  background     :        #fff;
   padding: 35px;
  border-radius: 10px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

.opsg_LibraryItem_charles:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0,0,0,0.15);
}

.opsg_LibraryIcon_charles {
   width: 60px;

	height: 60px;

 background: #e8f4fd;

    border-radius: 10px;

    display: flex;

   align-items: center;

    justify-content: center;

  margin-bottom: 20px;
}

.opsg_LibraryIcon_charles img {


         width: 30px;
     height: 30px;
  filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(186deg);


}

.opsg_LibraryItem_charles h3 {
    font-size: 20px;
        font-weight  :      600;
	 margin-bottom: 12px;
  color   :#1a1a1a;
}

.opsg_LibraryItem_charles p


{
    color: #666;
    line-height: 1.7;
   font-size: 15px;
   margin-bottom: 20px;
}

.opsg_LibraryBtn_charles {
    color: #3498db;
   font-weight: 600;
  display: inline-flex;
       align-items: center;
   gap   :     8px;
    font-size :    14px;
}

.opsg_LibraryBtn_charles img {
    width: 18px;
   height: 18px;
  filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(186deg);
}@media(max-width: 968px){
    .opsg_LibraryIntro_charles {
        grid-template-columns:1fr;
    }
}.opsg_SpecialtyArea_charles {
    padding: 90px 0;
   background: #fff;

}

.opsg_SpecialtyWrap_charles {
        max-width: 1320px;
  margin: 0 auto;
   padding: 0 25px;
	text-align: center;
}

.opsg_SpecialtyWrap_charles h2 {
  font-family: 'Playfair Display',serif;
   font-size: 44px;
   font-weight: 800;
  margin-bottom: 20px;
    color: #1a1a1a;
}


.opsg_SpecialtyDesc_charles {


    font-size: 17px;
  line-height  : 1.7;
               color: #5a5a5a;
    max-width     :        700px;
  margin: 0 auto 50px;}
	/* Vendor-specific */

	/* State modifiers */
.opsg_SpecialtyGrid_charles {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
  gap: 30px;
}

.opsg_SpecialtyBox_charles {
  padding: 30px 20px;
  background : #f8f9fa;
   border-radius: 10px;
   transition   :     all 0.3s ease;
  text-align  :        center;
}

.opsg_SpecialtyBox_charles:hover		{
   background:     #3498db;
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(52,152,219,0.2);
}

.opsg_SpecialtyIcon_charles {
   width: 50px;
   height  : 50px;
      margin: 0 auto 18px;
  filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(186deg);
  transition: filter 0.3s ease;
}

.opsg_SpecialtyBox_charles:hover .opsg_SpecialtyIcon_charles {
  filter: brightness(0) invert(1);
}

.opsg_SpecialtyBox_charles h3 {
      font-size: 18px; 
	   font-weight: 600; 
	    margin-bottom: 10px; 
	     color  :        #1a1a1a; 
	    transition: color 0.3s ease;
     }

.opsg_SpecialtyBox_charles p {
		 color: #666;
  font-size: 14px;
       transition: color 0.3s ease;
    margin  :     0;
}

/* Temporary fix */

.opsg_SpecialtyBox_charles:hover h3,
.opsg_SpecialtyBox_charles:hover p {
    color: #fff;
}

.opsg_ArticlesZone_charles {
    padding: 90px 0;
  background: linear-gradient(135deg,#f5f7fa 0%,#e8eef5 100%);
}

.opsg_ArticlesWrap_charles {
   max-width: 1320px;
  margin:       0 auto;
  padding   :      0 25px;
}

.opsg_ArticlesTop_charles {
      align-items: center;
  margin-bottom: 50px;
    justify-content: space-between;
   display: flex; 

}

.opsg_ArticlesTop_charles h2 {
  font-family: 'Playfair Display',serif;
  font-size: 44px;
    font-weight: 800;
  color: #1a1a1a;
}

.opsg_AllArticles_charles {
    color: #3498db;

  font-weight: 600;

        font-size: 16px;

   transition: all 0.3s ease;
}

.opsg_AllArticles_charles:hover	{
    color    :       #2980b9;
  text-decoration: underline;


}

/* Typography */

.opsg_ArticlesGrid_charles {
    display: grid;
  grid-template-columns: repeat(auto-fit,minmax(320px,1fr));
  gap    :  35px;
}

.opsg_ArticleBox_charles  {
    background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
     }

.opsg_ArticleBox_charles:hover 
 {

  transform: translateY(-6px);
  box-shadow: 0 12px 35px rgba(0,0,0,0.15);
}

.opsg_ArticleThumb_charles

{
  height: 220px;
    overflow: hidden;
}

.opsg_ArticleThumb_charles img {
    width: 100%;
    height: 100%;
	 object-fit: cover;
    transition: transform 0.4s ease;
}

.opsg_ArticleBox_charles:hover .opsg_ArticleThumb_charles img {
  transform: scale(1.1);
}

.opsg_ArticleText_charles {
   padding: 30px;
}

.opsg_ArticleTag_charles {
         display     :    inline-block;
  background: #e8f4fd;
	 color: #3498db;
   padding    :6px 14px;
    border-radius:   20px;
  font-size: 12px;
    font-weight: 600;
    text-transform     :   uppercase;
    letter-spacing     :      1px;
  margin-bottom: 15px;
}

.opsg_ArticleText_charles h3

{
  margin-bottom: 12px;
	font-size :   21px;
   color: #1a1a1a;
  font-weight: 700;
  line-height: 1.4;
}

/* Generated styles */


/* Auto-generated CSS */
/* Responsive design */

.opsg_ArticleText_charles p    {
   font-size: 15px;
   line-height: 1.7;
	 color: #666;
  margin-bottom: 18px; 

}

.opsg_ArticleMore_charles		{
    color: #3498db;
	font-weight: 600;
  display: inline-flex;
    align-items   :center;
		 gap  :   8px;
				 font-size :15px;
}

.opsg_ArticleMore_charles img {
    width: 16px;
	 height: 16px;
  filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(186deg);
  transition: transform 0.3s ease;
}

.opsg_ArticleMore_charles:hover img {
  transform: translateX(4px);
}
@media(max-width:768px) {
    .opsg_ArticlesTop_charles{
        flex-direction: column;
        align-items:flex-start;
        gap:20px;
    }
}.opsg_CallAction_charles {
  padding: 90px 0;
  background: linear-gradient(135deg,#3498db 0%,#2c3e50 100%); 
	
}

.opsg_CallWrap_charles {
    max-width    :        1320px;
    margin: 0 auto;
                    padding: 0 25px;
    display: grid;
  grid-template-columns: 1.3fr 1fr;
   gap: 60px;
   align-items: center;
}

.opsg_CallText_charles h2 {
  font-family: 'Playfair Display',serif;
    font-size: 46px;
    font-weight: 800;
    color: #fff;
          margin-bottom: 22px;
}

.opsg_CallText_charles p {
  font-size: 18px;
	 line-height:     1.8;
  color: rgba(255,255,255,0.9);
  margin-bottom: 35px; 

}

.opsg_CallBtns_charles {
  display: flex;
        gap: 18px;
   flex-wrap: wrap;
}

.opsg_CallPrimary_charles,
.opsg_CallSecondary_charles {
  padding:       16px 32px;
  font-size: 16px;
  font-weight: 600;
   border-radius: 6px;
  transition    :       all 0.3s ease;
   display: inline-block;
}

.opsg_CallPrimary_charles
	{
    background: #fff;
  color: #3498db;
}

.opsg_CallPrimary_charles:hover {
	  background: #f0f0f0;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(255,255,255,0.3);
	
	}

.opsg_CallSecondary_charles {
    background: transparent;
    color: #fff;
  border: 2px solid #fff;
}

.opsg_CallSecondary_charles:hover {
   background: #fff;
	color: #3498db;


}

.opsg_CallImage_charles img {
   width: 100%;
   border-radius: 12px;
  box-shadow: 0 15px 40px rgba(0,0,0,0.3);
	
}@media(max-width: 968px){
    .opsg_CallWrap_charles {
        grid-template-columns:1fr;
    }

    .opsg_CallText_charles h2{
        font-size: 36px;
    }
}.opsg_FooterZone_charles  {
		 background    :#1a1a1a;
   padding: 70px 0 30px;
   color: #fff;
}

.opsg_FooterWrap_charles {
        max-width: 1320px;
   margin   : 0 auto;
   padding: 0 25px;
}

.opsg_FooterLayout_charles {
  display     :    grid;
   grid-template-columns: 1.5fr 1fr 1fr 1fr;
   gap  :   40px;
    margin-bottom: 50px;
}

.opsg_FooterLogo_charles {
  height: 120px;
   margin-bottom: 20px;
  filter: brightness(0) invert(1);
}

.opsg_FooterBrand_charles p		{
  font-size: 15px;
   line-height: 1.7;
	color: #b0b0b0;
   margin-bottom: 25px;
} 

.opsg_FooterSocial_charles {
	display: flex;
    gap: 15px;
}

.opsg_FooterSocial_charles a
	{
      width: 40px;
  height: 40px;
  background: rgba(255,255,255,0.1);
    border-radius: 50%;
   display: flex;
  align-items    :      center;
    justify-content: center;
    transition   : all 0.3s ease;
}

.opsg_FooterSocial_charles a:hover {
  background     :   #3498db;
  transform: translateY(-3px);
}

.opsg_FooterSocial_charles img {
     width: 20px;
  height: 20px;
  filter: brightness(0) invert(1);
}

.opsg_FooterNav_charles h4 {
   font-size: 18px;
    font-weight: 600;
  margin-bottom: 20px;
  color: #fff;
}

.opsg_FooterNav_charles ul {
  list-style: none;
}

.opsg_FooterNav_charles li {
         margin-bottom: 12px;
     }

.opsg_FooterNav_charles a


{
   color: #b0b0b0;
    font-size: 15px;
   transition: color 0.3s ease;
}

.opsg_FooterNav_charles a:hover {
       color: #3498db;


}

.opsg_FooterInfo_charles h4  
  {
   font-size: 18px;
  font-weight: 600;
  margin-bottom: 20px;
   color: #fff;
}

.opsg_InfoEntry_charles {
  display: flex;
   gap: 12px;
	 margin-bottom: 15px;
  align-items   :       flex-start;
}

.opsg_InfoEntry_charles img {
	width     : 20px; 
    height: 20px; 
  filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(186deg); 
	 flex-shrink: 0; 
  margin-top: 2px;
}

.opsg_InfoEntry_charles p {
   font-size: 15px;
   color: #b0b0b0;
               margin: 0;
    line-height: 1.6;
}

.opsg_FooterBottom_charles {
    display: flex;
    justify-content :     space-between;
    align-items: center;
      padding-top: 30px;
  border-top: 1px solid rgba(255,255,255,0.1);
}

.opsg_FooterCopy_charles p {
   font-size: 14px;
   color: #808080;
    margin:     0;
}

.opsg_FooterLegal_charles{
  display: flex;
  gap: 25px;
}



.opsg_FooterLegal_charles a {
  font-size: 14px;
	   color    :    #808080;
	  transition: color 0.3s ease;
}

.opsg_FooterLegal_charles a@media(max-width:968px) {
    .opsg_FooterLayout_charles{
        grid-template-columns:1fr 1fr;
        gap: 35px;
    }
    .opsg_FooterBottom_charles {
        flex-direction:column;
        gap:20px;
        text-align:center;
    }
}
@media(max-width: 568px){
    .opsg_FooterLayout_charles {
        grid-template-columns: 1fr;
    }
}.opsg_BlogContainer_charles {
  max-width: 820px;
    margin: 0 auto;
  padding:        140px 25px 90px;
}

.opsg_BlogHeader_charles {
  margin-bottom: 40px;
}

.opsg_BlogCategory_charles {
          display: inline-block;
   background: #e8f4fd;
  color   :       #3498db;
   padding: 8px 18px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
     text-transform: uppercase;
  letter-spacing: 1.5px;
   margin-bottom: 20px;
}

.opsg_BlogTitle_charles {
  font-family: 'Playfair Display', serif;
    font-size: 48px;
  font-weight: 800;
	 line-height: 1.2;
	color: #1a1a1a;
  margin-bottom: 20px;
}

.opsg_BlogMeta_charles {
 display: flex;
   gap:     20px;
    font-size    :       15px;
    color: #7a7a7a;
   margin-bottom: 35px;
    padding-bottom: 25px;
    border-bottom: 1px solid #e0e0e0;

}

.opsg_BlogFeatured_charles {
       width: 100%;
  height: 450px;
   object-fit: cover;
    border-radius: 12px;
	 margin-bottom: 45px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);}

.opsg_BlogContent_charles {
   font-size: 18px;
   line-height: 1.8;
        color: #2c3e50;
}

.opsg_BlogContent_charles h2 {
     font-family: 'Playfair Display', serif;
    font-size: 32px;
    font-weight: 700;
  color: #1a1a1a;
  margin: 45px 0 20px;
   line-height: 1.3;
	}

.opsg_BlogContent_charles h3  
  {
   font-size: 24px;
	 font-weight: 600;
   color: #1a1a1a;
  margin:        35px 0 18px;
}

.opsg_BlogContent_charles p {
          margin-bottom: 22px;
}

.opsg_BlogContent_charles strong    {
       color :        #1a1a1a;
          font-weight: 600;

}

.opsg_BlogContent_charles ul {
	margin: 25px 0;
  padding-left: 30px;
}

.opsg_BlogContent_charles li {
	margin-bottom: 12px; 
	    line-height: 1.7;
}

.opsg_BlogBack_charles {
	display: inline-flex;
 align-items: center;
	gap: 10px;
   color: #3498db;
     font-weight   :     600;
   font-size: 16px;
    margin-bottom: 30px;
   transition     :        all 0.3s ease;
}

.opsg_BlogBack_charles:hover {
    color: #2980b9;
  transform: translateX(-3px);
}@media(max-width: 768px) {
    .opsg_BlogTitle_charles {
        font-size: 36px;
    }

    .opsg_BlogFeatured_charles {
        height: 300px;
    }

    .opsg_BlogContent_charles {
        font-size: 17px;
    }

    .opsg_BlogContent_charles h2 {
        font-size: 28px;
    }
}.opsg_BlogHero_charles{
    padding :   160px 0 80px;
  background: linear-gradient(135deg, #f5f7fa 0%, #e8eef5 100%);
  text-align  :      center;
}

.opsg_BlogHeroWrap_charles {
    max-width: 1320px;
    margin: 0 auto;
  padding: 0 25px;
}

.opsg_BlogHero_charles h1 {
  font-family: 'Playfair Display', serif;
    font-size: 56px;
    font-weight: 800;
    color: #1a1a1a;
   margin-bottom:  20px;
}

.opsg_BlogHero_charles p {
  font-size: 20px;
    line-height: 1.6;
    color: #5a5a5a;
    max-width: 700px;
   margin: 0 auto;
}@media(max-width: 768px) {
    .opsg_BlogHero_charles {
        padding: 120px 0 60px;
    }

    .opsg_BlogHero_charles h1 {
        font-size: 38px;
    }

    .opsg_BlogHero_charles p {
        font-size: 17px;
    }
}.opsg_EmptyState_charles {
  padding: 180px 0 100px;
  background: linear-gradient(135deg, #f5f7fa 0%, #e8eef5 100%);
  text-align: center;
}

.opsg_EmptyWrap_charles {
    max-width: 720px;
		margin: 0 auto;
  padding: 0 25px;
}

.opsg_EmptyIcon_charles {

	    width: 120px;

	height: 120px;

   margin: 0 auto 35px;

   background: #e8f4fd;

    border-radius: 50%;

    display: flex;

   align-items: center;

   justify-content: center;


}

.opsg_EmptyIcon_charles img {
  width: 60px;
  height: 60px;
  filter: invert(48%) sepia(79%) saturate(2476%) hue-rotate(186deg);
}

.opsg_EmptyState_charles h1 {
  font-family: 'Playfair Display', serif;
  font-size: 48px;
  font-weight     :      800;
    color  :        #1a1a1a;
   margin-bottom: 25px;
	 line-height: 1.2;
}

.opsg_EmptyDesc_charles {
  font-size:      20px;
  line-height  :        1.7;
    color: #2c3e50;
   margin-bottom: 20px;
}

.opsg_EmptySubtext_charles {
   font-size: 17px;
   line-height: 1.6;
   color: #5a5a5a;
  margin-bottom   :        40px;
}

.opsg_EmptyActions_charles {
    display: flex;
    gap: 18px;
    justify-content: center;
   flex-wrap: wrap;
}@media(max-width: 768px) {
    .opsg_EmptyState_charles {
        padding: 140px 0 80px;
    }

    .opsg_EmptyState_charles h1 {
        font-size: 36px;
    }

    .opsg_EmptyDesc_charles {
        font-size: 18px;
    }

    .opsg_EmptyIcon_charles {
        width: 100px;
        height: 100px;
    }

    .opsg_EmptyIcon_charles img {
        width: 50px;
        height: 50px;
    }
}