::-webkit-scrollbar		{

	    width: 10px;
   height  :  10px;
}

::-webkit-scrollbar-track {

	  background: #f1f1f1;

}

::-webkit-scrollbar-thumb {
    background: #888;
  border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background:#555;
}



::selection {
	   background-color: #0066cc;
    color: white;
}

::-moz-selection {
  background-color: #0066cc;
   color: white;
}

input:invalid,
textarea:invalid,
select:invalid {
  border-color: #e74c3c !important;
}


input:valid:not(:placeholder-shown),
textarea:valid:not(:placeholder-shown),
select:valid {
	border-color: #2ecc71 !important;
}

button:active {
  transform: scale(0.98);
}

a
{
          position   :     relative;
}

img	{
   max-width: 100%;
   height: auto;
   display: block;
}

section {
  position: relative;
}

.tooltip-container {
    position: relative;
  display: inline-block;
     cursor: help;
}

.tooltip-icon {
   display: inline-flex;
   align-items: center;
  justify-content: center;
    width:      20px;
               height: 20px;
    background-color    :     #0066cc;
   color: white;
  border-radius: 50%;
               font-size: 12px;
     font-weight: bold;
	cursor: help;
     }



.tooltip-text {
		 visibility: hidden;
  width: 200px;
    background-color: #1a1a1a;
   color: #fff;
   text-align :   center;
   padding: 8px 12px;
	 border-radius :6px;
  position: absolute;
    z-index: 1;
   bottom: 125%;
    left: 50%;
     margin-left: -100px;
    opacity: 0;
	 transition: opacity 0.3s ease;
    font-size: 13px;
  line-height    :      1.4;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.tooltip-text::after {
  content: "";
    position: absolute;
    top: 100%;
    left: 50%;
                    margin-left: -5px;
	 border-width: 5px;
     border-style: solid;
    border-color: #1a1a1a transparent transparent transparent;
}

.tooltip-container:hover .tooltip-text {
  visibility: visible;
   opacity: 1;
}@media (max-width: 768px) {
    .tooltip-text {
        width: 160px;
        margin-left: -80px;
        font-size: 12px;
    }
}.loading-spinner


{
   display: inline-block;
 width: 30px;
  height: 30px;
  border: 4px solid rgba(0, 102, 204, 0.1);
  border-top-color: #0066cc;
  border-radius: 50%;
    animation: spin 0.8s linear infinite;
}@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}.fade-in


{
  animation:       fadeIn 0.5s ease-in;
}@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}.slide-in {
            animation: slideIn 0.5s ease-out;

}@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}.pulse {


       animation: pulse 2s infinite;
}
@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.7;
    }
}.alert {
  padding: 12px 16px;
   border-radius: 6px;
    margin-bottom: 1rem;
    font-weight: 500;
}

.alert-info {
    background-color: #d1ecf1;
    border-left: 4px solid #0c5460;
  color: #0c5460;
}

.alert-success {
  background-color: #d4edda;
   border-left  :    4px solid #155724;
   color: #155724;
}

.alert-warning   {
    background-color: #fff3cd;
	border-left: 4px solid #856404;
   color: #856404;

}

.alert-danger

{
	 background-color: #f8d7da;
   color: #721c24;
    border-left: 4px solid #721c24;
}

.badge {

    display: inline-block;
	padding: 4px 12px;
  background-color: #0066cc;
	color: white;
    border-radius: 20px;
                    font-size: 12px;
     font-weight:    600;}

.badge-secondary {
   background-color: #6c757d;
	
}  

.badge-success {
   background-color: #2ecc71;
}

.badge-danger    {
  background-color   :       #e74c3c;
	
}

.shadow-sm {
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.shadow-md {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.12);
}

.shadow-lg {
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

.shadow-xl {
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
}

.text-center {
   text-align: center;
}

.text-left {
   text-align :    left;
} 

.text-right {
   text-align: right;
}

.text-muted {

         color: #999;

}

.text-primary    {
  color : #0066cc;
}

.text-success {
    color: #2ecc71;
}

.text-danger {
   color: #e74c3c;
}

.mt-1 {
	  margin-top: 0.5rem; 


}

.mt-2 {
    margin-top: 1rem;
}

.mt-3 {


	margin-top     :   1.5rem;
     }

.mt-4 {


    margin-top: 2rem;


     }

.mb-1


{
   margin-bottom: 0.5rem;
}



.mb-2 {
	margin-bottom: 1rem;
}

.mb-3 {
		margin-bottom: 1.5rem;
}

.mb-4 {
      margin-bottom: 2rem;
}

.p-1
{
    padding: 0.5rem;
}

.p-2


{
	 padding: 1rem;
}

.p-3 {
  padding: 1.5rem;
}

.p-4 {
    padding: 2rem;
}

.d-none {
   display: none !important;
}

.d-block {
  display: block !important; 

}

.d-inline {
         display: inline !important;
}

.d-flex

{
    display: flex !important;
}

.justify-center {
        justify-content: center;
}

.items-center {
  align-items: center;
}

.gap-1 {
  gap: 0.5rem; 
	
}

.gap-2 {
	 gap: 1rem;
}  

.gap-3 {
  gap    :     1.5rem;
}  

.rounded {
  border-radius: 8px;
}

.rounded-lg {
    border-radius: 12px;
	
}

.rounded-full {
        border-radius: 9999px;
}

hr {
   border: none;
    border-top   :   1px solid #e0e0e0;
    margin: 1.5rem 0;
}

.policySection {

	    padding: 80px 2rem;
    background: #f8f9fa;

}

.policyContainer {
   text-align: left;
     max-width: 800px;
   margin: 0 auto;
}

.policyContainer h1   {
   font-size: 2.5rem;
  color: #2c3e50;
    margin-bottom: 1.5rem;
    font-weight  :   700;
   text-align: center;
}

.policyContainer h2 {
  font-size: 2rem;
  color: #2c3e50;
	margin: 2rem 0 1rem 0;
  font-weight: 700;
}

.policyContainer h3 {
    font-size: 1.5rem;
  color :    #34495e;
   margin    :      1.5rem 0 0.8rem 0;
  font-weight: 600;
}

.policyContainer p {
	color: #7f8c8d;
  margin-bottom: 1.5rem;
	line-height: 1.7;
    font-size: 1.1rem;
}

.policyContainer ul {
  margin : 1rem 0 1.5rem 1.5rem;
  color: #7f8c8d;
}

.policyContainer li {
    margin-bottom: 0.5rem;
    line-height: 1.6;
}@media (max-width: 768px) {
    .policyContainer h1 {
        font-size: 2rem;
    }

    .policyContainer h2 {
        font-size: 1.6rem;
    }

    .policyContainer p {
        font-size: 1rem;
    }

    .policySection {
        padding: 60px 1rem;
    }
}.services-hero {
  max-width: 1280px;
	  margin: 0 auto;
	 padding: 4rem 2rem;
		display: grid;
	   grid-template-columns: 1fr 1fr;
	   gap  :       3rem;
	  align-items: center;
}

.services-hero-content h1     {
	font-size: 2.8rem;
    line-height: 1.2;
  margin-bottom: 1.5rem;
    color: #0a0a0a;
  font-weight: 800;
     }  

.services-hero-content p {


  font-size  :    1.1rem;
  color: #333;
   margin-bottom: 2rem;
    line-height: 1.8;


}


.services-hero-image {
	 position: relative;
  height :  380px;
  border-radius: 12px;
    overflow: hidden;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.services-hero-image img	{
    width: 100%;
  height    :     100%;
        object-fit : cover;
}

.services-detailed {
  background: linear-gradient(135deg, #fafbfc 0%, #f0f2f5 100%);
	 padding: 4rem 2rem;
    margin: 2rem 0;
}

.services-container {
      max-width: 1280px;
   margin :      0 auto;
  display: flex;
    flex-direction: column;
                    gap : 4rem;
}

.service-detail-item {
	   display: grid;
  grid-template-columns     :   1fr 1fr;
               gap: 3rem;
   align-items: center;
  background: white;
  padding    :        2.5rem;
  border-radius     :       10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
   transition: all 0.3s ease;}

.service-detail-item:hover 
 {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  transform: translateY(-4px);
}

.service-detail-item.reverse-layout {
  direction: rtl;
}

.service-detail-item.reverse-layout > * {


  direction: ltr;} 

.service-detail-image {
    position: relative;
    height: 320px;
   border-radius: 10px;
    overflow: hidden;
}

.service-detail-image img {


	 width:  100%;
   height: 100%;
     object-fit: cover;
	}

.service-detail-content h2 {


	 font-size: 2rem;
  margin-bottom: 1.2rem;
   color: #1a1a1a;
    font-weight: 800;
	}

.service-detail-content p {
  color: #555;
   line-height: 1.8;
  margin-bottom:1.5rem;
               font-size: 1rem;
}

.service-detail-content h3 {
   	font-size: 1.2rem;
  font-weight    :   700;
   margin: 1.5rem 0 1rem;
   color: #0066cc;
	}


.service-benefits 
 {
  list-style: none;
  margin: 1rem 0 2rem;
}

.service-benefits li {

	   padding: 0.6rem 0 0.6rem 1.8rem;
  position: relative;
  color: #555;
  line-height: 1.6;}

.service-benefits li::before {
  content: "✓";
    position: absolute;
  left: 0;
     color: #0066cc;
  font-weight: bold;
    font-size: 1.2rem;
}

.service-pricing  {
  font-size: 1.3rem;
	color: #0066cc;
    font-weight: 700;
    margin-top: 1.5rem;
}

.pricing-comparison {
    background  :    white;
   padding: 5rem 2rem; 
	
}

.pricing-container {
    max-width: 1280px;
	margin: 0 auto;
}

.pricing-container h2     {
     font-size: 2.5rem;
    font-weight: 800;
	text-align: center;
  margin-bottom: 1rem;
   color: #0a0a0a;

}

.pricing-intro {
  text-align: center;
    color: #666;
  font-size: 1.1rem;
  margin-bottom: 3rem;
}

.pricing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.pricing-card {
  background: linear-gradient(135deg, #f8f9fa 0%, #f0f2f5 100%);
  padding: 2.5rem;
   border-radius: 10px;
    border   :    2px solid #e0e0e0;
   transition: all 0.3s ease;
    display: flex;
	 flex-direction: column;
}

.pricing-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.1);
   border-color: #0066cc;
}

.pricing-card.featured {


  background: linear-gradient(135deg, #0066cc 0%, #0052a3 100%);
   color: white;
   border-color: #0066cc;
  transform: scale(1.05);

}

.pricing-card h3 {
  font-size: 1.5rem;
   margin-bottom: 1rem;
  font-weight: 700;


}

.pricing-card.featured h3 {
  color: white;
}

.price    {
   font-size: 2.5rem;
  font-weight: 800;
  margin-bottom   :        0.3rem;
   color: #0066cc; 
	
}

.pricing-card.featured .price {
         color: white;
}

.price-period {

	  font-size: 0.9rem;
   color: #999;
    margin-bottom: 2rem; 

}

.pricing-card.featured .price-period {
  color: rgba(255, 255, 255, 0.8);
}

.pricing-features     {
   margin-bottom: 2rem;
   list-style: none;
    flex-grow: 1;
}

.pricing-features li {
  padding: 0.8rem 0;
   color: #555;
    border-bottom: 1px solid #e0e0e0;
                    position: relative;
    padding-left    :  1.8rem;


}

.pricing-features li::before {


  content: "✓";
        position: absolute;
     left   :   0;
 color: #0066cc;
  font-weight:       bold;
    font-size: 1.1rem;


}

.pricing-card.featured .pricing-features li {
  color: rgba(255, 255, 255, 0.9);
  border-bottom-color: rgba(255, 255, 255, 0.2);
}

.pricing-card.featured .pricing-features li::before {
   color: #fff;
}

.pricing-btn {
    display: inline-block;
  padding: 0.9rem 2rem;
  background: linear-gradient(135deg, #0066cc 0%, #0052a3 100%);
  color: white;
   text-decoration :   none;
  border-radius: 6px;
    font-weight: 600;
    text-align: center;
  transition: all 0.3s ease;
    cursor: pointer;
   border: none; 

}

.pricing-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 102, 204, 0.3);
}

.pricing-card.featured .pricing-btn 
 {
                    background: white;
    color: #0066cc; 
	
}

.pricing-card.featured .pricing-btn:hover {
	   background: #f0f0f0;
     }

.faq-section {


  background: linear-gradient(135deg, #fafbfc 0%, #f0f2f5 100%);
   padding:      5rem 2rem;
}

.faq-container {
   max-width: 1280px;
   margin  :    0 auto;
}

.faq-container h2 {
   font-size: 2.5rem;
    font-weight: 800;
	text-align: center;
  margin-bottom: 3rem;
       color: #0a0a0a;


}

.faq-grid {
    display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;

}

.faq-item {
   background: white;
     padding: 2rem;
     border-radius: 10px;
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
     transition: all 0.3s ease;
	}



.faq-item:hover {
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
  transform: translateY(-4px);
}

.faq-item h3 {


      font-size: 1.1rem;

    color: #0066cc;

    margin-bottom: 1rem;

    font-weight :    700;
	}

.faq-item p
	{
					 color: #555;
    line-height: 1.8;


}

.cta-final {
     background: linear-gradient(135deg, #0066cc 0%, #0052a3 100%);
    color: white;
   padding :   4rem 2rem;
   text-align: center;
}



.cta-final-container  
  {
	max-width: 800px;
   margin: 0 auto;
}

.cta-final h2 {
	font-size: 2.2rem;
	margin-bottom: 1.5rem;
  font-weight :800; 

}

.cta-final p {
    font-size: 1.1rem;
  margin-bottom: 2rem;
 opacity: 0.95;
}

.thankyou-container {
  background: linear-gradient(135deg, #fafbfc 0%, #f0f2f5 100%);
   min-height: 100vh;
    padding    :       4rem 2rem;
    display: flex;
	align-items: center;
    justify-content:      center;
}

.thankyou-content {

  background: white;
  border-radius   :   12px;
   padding: 3rem;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
  max-width: 700px;
	width: 100%;
   text-align: center;}

.success-icon {
	 color: #2ecc71;
  margin-bottom: 2rem;
    display: flex;
   justify-content: center;
}

.success-icon svg   {

    animation   :      successPulse 0.6s ease-out;
}@keyframes successPulse {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    50% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}.thankyou-content h1 {
   font-size: 2.2rem; 
    color: #0a0a0a; 
   margin-bottom: 1rem; 
   font-weight: 800; 

}

.thankyou-subtitle {


    line-height: 1.8;
  font-size: 1.1rem;
   color: #666;
 margin-bottom: 2.5rem;


}

.confirmation-details {
  background: linear-gradient(135deg, #f8f9fa 0%, #f0f2f5 100%);
   padding: 2rem;
    border-radius     :   10px;
   margin: 2.5rem 0;
   text-align: left;
}

.confirmation-details h2 {

		font-size: 1.3rem;

	                    color: #0066cc;

	    margin-bottom: 1.5rem;

	  text-align   :center;}

.details-grid {


    display : grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap  : 1.5rem;
	}

.detail-item label {
  font-weight     :  700;
    color: #0066cc;
    display  :block;
   margin-bottom: 0.5rem;
}

.detail-item p {
        color: #1a1a1a;
    word-break: break-all;
}

.next-steps {
  background: linear-gradient(135deg, #e8f4fd 0%, #f0f9ff 100%); 
	  padding: 2rem; 
	  border-radius: 10px; 
	    margin: 2.5rem 0; 
	  text-align: left;
	
}

.next-steps h3 {
  font-size: 1.2rem;
	                    color: #0066cc;
	  margin-bottom: 1.5rem;
}

.steps-list   {
  list-style: decimal;
    margin-left: 2rem;
  color: #555;
}

.steps-list li {
   margin-bottom: 1rem;
       line-height: 1.8;
}

.helpful-links {
  margin: 2.5rem 0;
}

.helpful-links h3   {
  font-size: 1.1rem;

   color: #1a1a1a;

   margin-bottom: 1.5rem;
     }

.links-grid {
    display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
   gap  :       1rem;
}

.info-link {
    display: inline-block;
   padding: 0.8rem 1.5rem;
  background: linear-gradient(135deg, #0066cc 0%, #0052a3 100%);
       color: white;
    text-decoration: none;
   border-radius: 6px;
    font-weight: 600;
    transition   : all 0.3s ease;
}

.info-link:hover {
  transform: translateY(-2px);
     box-shadow: 0 4px 12px rgba(0, 102, 204, 0.3);
}

.faq-quick {
    text-align  : left;
  border-radius: 10px;
   padding: 2rem;
  margin    : 2.5rem 0;
	background: #fff9e6;
}

.faq-quick h3 {
     font-size: 1.2rem;
   color:     #c98500;
  margin-bottom: 1.5rem;
}

.faq-mini {
          display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.faq-mini-item p		{
   color: #555; 
		line-height  :        1.8; 
	  margin-bottom  : 0.5rem;
}

.faq-mini-item p:first-child {
  color: #1a1a1a;
    font-weight: 600;
}

.social-proof {
    margin-top: 2.5rem;
     padding-top: 2rem;
       border-top: 1px solid #e0e0e0;
     }

.social-proof h3 {
    font-size: 1.2rem;

	  color: #1a1a1a;

	    margin-bottom: 1rem;

}@media (max-width: 768px) {
    .services-hero {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
        gap: 2rem;
    }

    .services-hero-content h1 {
        font-size: 1.8rem;
    }

    .services-hero-image {
        height: 280px;
    }

    .service-detail-item {
        grid-template-columns: 1fr;
        padding: 1.5rem;
        gap: 2rem;
    }

    .service-detail-item.reverse-layout {
        direction: ltr;
    }

    .service-detail-image {
        height: 250px;
    }

    .service-detail-content h2 {
        font-size: 1.5rem;
    }

    .pricing-card.featured {
        transform: scale(1);
    }

    .thankyou-content {
        padding: 2rem;
    }

    .thankyou-content h1 {
        font-size: 1.8rem;
    }

    .confirmation-details {
        padding: 1.5rem;
    }

    .details-grid {
        grid-template-columns: 1fr;
    }

    .links-grid {
        grid-template-columns: 1fr;
    }

    .faq-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .services-hero-content h1 {
        font-size: 1.5rem;
    }

    .service-detail-content h2 {
        font-size: 1.3rem;
    }

    .pricing-container h2 {
        font-size: 1.8rem;
    }

    .price {
        font-size: 2rem;
    }

    .thankyou-container {
        min-height: auto;
        padding: 2rem 1rem;
    }

    .thankyou-content {
        padding: 1.5rem;
    }

    .confirmation-details {
        margin: 1.5rem 0;
    }

    .faq-quick {
        margin: 1.5rem 0;
    }
}