* {
   margin: 0;
   padding     : 0;
	box-sizing    :        border-box;
}

html	{
    scroll-behavior     :  smooth;
}

body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  line-height: 1.6;
    color: #333;
   background: #fafafa; 
	
}

.navbar {

	   background: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
  position: sticky;
  top: 0;
    z-index: 1000;


}

.nav-container {

     max-width: 1200px;
  margin: 0 auto;
     padding: 1rem 2rem;
        display: flex;
  justify-content: space-between;
  align-items: center;


}

.nav-logo-section {
    display: flex;
	 align-items: center;
}

/* Vendor-specific */
.nav-logo {
  height: 50px;
       width: auto; 

}

.nav-menu {
    display: flex;
    gap: 2rem;
  align-items     :    center;
}

.nav-link {

	  text-decoration: none; 
	color: #333; 
 font-weight: 500; 
    transition: color 0.3s ease; 
    font-size: 0.95rem;



}


.nav-link:hover {
    color: #667eea;
}

.nav-divider {
  width: 1px;
    height  : 24px;
   background :        #ddd;
}

.hamburger {
   display: none;
    flex-direction:        column;
  cursor: pointer;
    background    :  none;
                    border     :    none;
  gap: 6px;
	
}

.hamburger span {
		width: 25px;
    height: 3px;
   background: #333;
   transition:   all 0.3s ease;
  border-radius: 2px;
}
/* State modifiers */


	/* Framework override */


/* Hack for old browsers */

.hamburger.active span:nth-child(1) {
  transform: rotate(45deg) translate(10px, 10px);
}

.hamburger.active span:nth-child(2) {
    opacity: 0;
}

.hamburger.active span:nth-child(3)	{
  transform: rotate(-45deg) translate(7px, -7px);
}
@media (max-width: 768px) {
    .hamburger {
        display: flex;
    }

    .nav-menu {
        position: absolute;
        top: 70px;
        left: 0;
        right: 0;
        background: #fff;
        flex-direction: column;
        gap: 1rem;
        padding: 2rem;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
        box-shadow: 0 8px 16px rgba(0,0,0,0.1);
    }

    .nav-menu.active {
        max-height: 500px;
    }

    .nav-divider {
        display: none;
    }

    .nav-link {
        font-size: 1rem;
    }
}.hero-section {
   max-width     :        1200px;
    gap: 3rem;
  align-items: center;
    padding: 4rem 2rem;
    display: grid;
   margin: 0 auto;
    grid-template-columns: 1fr 1fr;
}

.hero-content h1 {
	 font-size: 2.8rem;
  line-height: 1.2;
  margin-bottom     :1.5rem;
    color: #1a1a1a;
}

.hero-content p {
   color: #555;
  margin-bottom:  2rem;
  font-size: 1.1rem;
}

.cta-button {
	display: inline-block;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
    padding: 1rem 2rem;
   border-radius: 8px;
   text-decoration: none;
   font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
}

.cta-button:hover


{
  transform: translateY(-2px); 
	  box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
}

.hero-image img     {
   width: 100%;
    height: auto;
    border-radius: 12px;
    object-fit: cover;
}@media (max-width: 768px) {
    .hero-section {
        grid-template-columns: 1fr;
        padding: 2rem 1.5rem;
    }

    .hero-content h1 {
        font-size: 1.8rem;
    }
}.services-preview {
   max-width: 1200px;
    margin: 0 auto;
    padding: 4rem 2rem;
}

.services-preview h2 {
   font-size: 2.2rem;
  text-align: center;
          margin-bottom: 3rem;
  color  :      #1a1a1a;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
          gap: 2rem;
}

.service-card {
               background: white;
	 border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08);
  transition   :    all 0.3s ease; 
	


}

.service-card:hover {
  transform: translateY(-5px); 
  box-shadow: 0 8px 25px rgba(0,0,0,0.12);
}

.service-card img {
   width: 100%;
    height: 200px;
   object-fit: cover; 

}  

.service-card h3 {
  font-size: 1.4rem;
         margin: 1.5rem 1.5rem 0.5rem;
	color: #1a1a1a;
}

.service-card p {
    color: #666;
    padding: 0 1.5rem 1.5rem;
   font-size: 0.95rem;
   line-height: 1.5;
}

.features-section {
  background: linear-gradient(135deg, #f5f7ff 0%, #f0f4ff 100%);
    padding: 4rem 2rem;
  margin: 2rem 0;
}

.features-section h2 {
    font-size: 2.2rem;
   text-align: center;
 margin-bottom: 3rem;
   color: #1a1a1a;
   max-width: 1200px;
       margin-left :      auto;
  margin-right: auto;
}


.features-list {
 display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    max-width: 1200px;
       margin: 0 auto;
}

.feature-item {
   background: white; 
      padding: 2rem; 
     border-radius: 10px; 
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.feature-item h3


{
	    font-size: 1.3rem;
  margin-bottom: 0.8rem;
  color: #667eea;
     }

.feature-item p {

	    color: #666;
    font-size: 0.95rem;
    line-height: 1.6;
     }

.cta-section {

  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  padding: 4rem 2rem;
    text-align: center;
   margin: 2rem 0;
	}

.cta-wrapper		{
  max-width: 1200px;
   margin: 0 auto;
}

.cta-section h2
	{
   font-size  :       2.2rem;
   color: white;
    margin-bottom     :  1rem;
}

.cta-section p {
  font-size    :   1.1rem;
  color: rgba(255,255,255,0.95);
  margin-bottom: 2rem;
}

.cta-primary-button {
  border-radius: 8px;

	 text-decoration    :       none;

    transition: all 0.3s ease;

                    background: white;

  font-weight: 600;

    display: inline-block;

	 padding: 1rem 2.5rem;

  color :      #667eea;
}

.cta-primary-button:hover {
  transform: scale(1.05);
  box-shadow: 0 8px 20px rgba(0,0,0,0.2);
	
}

.contact-section {
    max-width    :     1200px;
   margin: 0 auto;
    padding: 4rem 2rem;
}

.contact-container {
   background: white;
   padding: 3rem;
               border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
   max-width: 700px;
  margin: 0 auto;
}

.contact-section h2 {
    font-size: 2rem;
   text-align: center;
   margin-bottom: 0.5rem;
    color: #1a1a1a;
}

.contact-container > p {
   text-align     :   center;
    color: #666;
  margin-bottom: 2rem;
}

.contact-form {
    display: flex;
     flex-direction: column;
	 gap: 1.5rem;
}

.form-group		{
  display: flex;
    flex-direction: column;
}

.form-group input,
.form-group select,
.form-group textarea {
      padding: 0.9rem;
  border: 2px solid #e0e0e0;
    border-radius: 6px;
  font-size: 1rem;
       font-family: inherit;
    transition: border-color 0.3s ease; 
	
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
               outline: none;
   border-color: #667eea;}

.form-group textarea	{
    min-height: 120px;
   resize: vertical;
}

.form-submit-btn {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
   color: white;
  padding  :    1rem 2rem;
  border:        none;
  border-radius: 6px;
    font-size: 1rem;
    font-weight: 600;
  cursor   :       pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
}

.form-submit-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
}

.footer   {

   background: #1a1a1a;
    color     : #fff;
   padding: 3rem 2rem 1rem;
  margin-top   : 4rem;
	

}

.footer-container {
   max-width:     1200px;
   margin  :0 auto;
	
}

.footer-logo-section {
   margin-bottom: 2rem;
}

.footer-logo {
   height: 45px;
                    width: auto;
  filter: brightness(0) invert(1);
}

.footer-info

{
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
     gap: 2rem;
     margin-bottom: 2rem;
      padding-bottom: 2rem;
     border-bottom: 1px solid rgba(255,255,255,0.1);
	
}

.footer-block h4 {
    font-size     :    1.1rem;
   margin-bottom: 0.8rem;
    color: #667eea; 
	
}

.footer-block p {
          line-height   :       1.8; 
	  color: rgba(255,255,255,0.8);
}

.footer-block ul {
  list-style: none;
}

.footer-block ul li  {
    margin-bottom    : 0.5rem;
}

.footer-block a		{
     color: rgba(255,255,255,0.8);
    text-decoration:none;
   transition: color 0.3s ease;
     }

.footer-block a:hover		{
    color: #667eea;
}

.footer-bottom
{
   text-align: center;
  padding-top: 1rem;
  color: rgba(255,255,255,0.6);
  font-size: 0.9rem;
}@media (max-width: 768px) {
    .services-preview h2,
    .features-section h2,
    .cta-section h2,
    .contact-section h2 {
        font-size: 1.6rem;
    }

    .contact-container {
        padding: 2rem;
    }

    .footer-info {
        grid-template-columns: 1fr;
    }
}.services-hero {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
   color:    white;
   padding: 4rem 2rem;
    text-align    :    center;
  margin-top: 0;
}

.services-hero-content h1 {
  line-height: 1.2;
   margin-bottom:       1rem;
   font-size: 2.6rem;
}

.services-hero-content p {
   font-size: 1.2rem;
    opacity: 0.95;
} 

.services-container {
   max-width: 1200px;
    margin: 0 auto;
   padding: 4rem 2rem;

}

.service-detailed-card {
  display: grid;
   grid-template-columns    :     1fr 1fr;
   gap: 3rem;
   align-items: center;
    margin-bottom: 4rem;
	background: white;
   padding   : 2rem;
  border-radius: 12px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}

.service-detailed-card.service-alt {
    grid-template-columns: 1fr 1fr;
}

.service-detailed-card.service-alt .service-detail-image {
   	 order: 2; 

}

.service-detailed-card.service-alt .service-detail-content {
    order: 1;
}

.service-detail-image img
	{
                    width     :   100%;
	height: auto;
  border-radius: 10px;
    object-fit  :        cover;
}

.service-detail-content h2 {
	 font-size: 2rem;
    margin-bottom: 1rem;
   color: #1a1a1a;
}

.service-detail-content > p {
  font-size: 1.05rem;
    color: #555;
  line-height: 1.7;
      margin-bottom: 1.5rem;
}

.service-features {
    margin: 1.5rem 0;
}

.service-features h3{
    font-size: 1.1rem;
	margin-bottom: 1rem;
               color: #667eea;
} 

.service-features ul {
   list-style    :   none;
    padding: 0;
}

.service-features li {
	    padding: 0.6rem 0 0.6rem 1.5rem;
    position     :     relative;
    color: #666;
     }

.service-features li:before {
  content: "";
    position     :    absolute;
    left   :  0;
    top   :  0.8rem;
	width: 8px;
    height: 8px;
	 background: #667eea;
   border-radius: 50%;
}

.service-meta	{
   display: flex;
	 gap: 2rem;
    margin-top: 1.5rem;
         padding-top: 1.5rem;
    border-top: 1px solid #e0e0e0; 
	
}

.service-duration,
.service-format {
   display: flex;
   align-items: center;
   font-weight:   600;
    color: #764ba2;
  font-size: 0.9rem;
}

.pricing-overview {
  background: linear-gradient(135deg, #f5f7ff 0%, #f0f4ff 100%);
    padding: 4rem 2rem;
   margin    :   2rem 0;
	
}  

.pricing-overview h2 {
    font-size: 2.2rem;
  text-align: center;
 margin-bottom: 3rem;
    color: #1a1a1a;
}

.pricing-cards {
                    display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    max-width: 1200px;
      margin: 0 auto;
}

.pricing-card {
    background: white;
      padding: 2rem;
      border-radius: 10px;
     box-shadow: 0 2px 8px rgba(0,0,0,0.05);
       position: relative;
   	transition: all 0.3s ease; 

}

.pricing-card:hover {
	  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.1);


}

.pricing-card h3 {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
  color: #1a1a1a;
}

.pricing-description {
  font-weight: 600;
                    color: #667eea;
   font-size: 0.95rem;
  margin-bottom:        1.5rem;
}

.pricing-card.pricing-featured {
  border: 2px solid #667eea;
  transform: scale(1.05);
}

.pricing-badge {
  position: absolute;
   top: -12px;
    left: 20px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
   padding: 0.4rem 0.8rem;
    border-radius: 20px;
   font-size: 0.75rem;
   font-weight: 700;
}

.pricing-features {
    list-style: none;
    padding: 0;
}

.pricing-features li {
   	 padding: 0.8rem 0;
   padding-left    :       1.5rem;
   position: relative;
    color  : #666;
    font-size: 0.95rem;
	}

.pricing-features li:before {
  content: "";
   position: absolute;
   left    :     0;
  top: 50%;
  transform: translateY(-50%);
    width: 6px;
  height:6px;
   background: #667eea;
    border-radius: 50%;


}

.faq-services {
  max-width: 1000px;
    margin: 0 auto;
   padding: 4rem 2rem;
}

.faq-services h2 {
   font-size: 2.2rem;
    text-align: center;
    margin-bottom: 3rem;
  color: #1a1a1a;
}

.faq-container {
   display: flex;
   flex-direction: column;
  gap  :    1rem;
}

.faq-item  
  {

    background: white;
  border-radius :      8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
     }

.faq-question {
    width: 100%;
   padding: 1.5rem;
    background: white;
   border: none;
    text-align: left;
  font-size: 1.05rem;
  font-weight:    600;
   color    :       #1a1a1a;
   cursor: pointer;
   transition: all 0.3s ease;
    display: flex;
  justify-content: space-between;
				 align-items:        center;
}

.faq-question:hover {
    background: #f9f9f9;
	color: #667eea;


}

.faq-question:after {
	  content: "+";
    font-size:     1.5rem;
  transition: transform 0.3s ease;

}

.faq-item.active .faq-question {
   color    :#667eea;
   background: #f9f9f9; 

}

.faq-item.active .faq-question:after {

	  transform: rotate(45deg);

}

.faq-answer
	{
    transition: max-height 0.3s ease;
    overflow :        hidden;
    max-height: 0;
    background: white;



}

.faq-item.active .faq-answer {
   max-height: 500px;
}

.faq-answer p {
  padding: 0 1.5rem 1.5rem;
  color:       #666;
  line-height: 1.7;
}

.cta-services {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
   color: white;
         padding: 3rem 2rem;
         text-align: center;
	 margin:       2rem 0;
}

.cta-services h2     {
   font-size   :      2rem;
   margin-bottom: 1rem;
}

.cta-services p {


    font-size: 1.05rem;
   margin-bottom: 2rem;
          opacity: 0.95;
	}

.cta-services-button {
    display: inline-block;
   background: white;
   color: #667eea;
    padding: 1rem 2rem;
  border-radius: 8px;
	text-decoration   :     none;
   font-weight: 600;
   transition: all 0.3s ease;
}

.cta-services-button:hover {
  transform: scale(1.05);
  box-shadow: 0 8px 20px rgba(0,0,0,0.2); 

}

.thankyou-section {
     background: linear-gradient(135deg, #f5f7ff 0%, #f0f4ff 100%);
 min-height: 80vh;
    display:    flex;
  align-items: center;
    justify-content: center;
 padding: 4rem 2rem;

}

.thankyou-container  {
	 background  :      white;
    border-radius  :     16px;
     padding: 3rem;
   max-width: 700px;
   width: 100%;
  box-shadow: 0 8px 30px rgba(0,0,0,0.12);
   text-align: center;
}

.success-icon {
  width   :80px;
  height: 80px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
   color: white;
    border-radius: 50%;
    font-size: 3rem;
   display: flex;
   align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    font-weight: bold;
}

.thankyou-container h1


{
    margin-bottom: 0.5rem;
	  color: #1a1a1a;
	  font-size  :   2.2rem;
}

.thankyou-subtitle {
   font-size: 1.1rem;
 color  :  #667eea;
   font-weight: 600;
	margin-bottom: 2rem;
}

.thankyou-message {
    background: #f9f9f9;
    padding: 1.5rem;
    border-radius   :8px;
       margin-bottom: 2rem;
   text-align: left;
}

.thankyou-message p {
  color: #666;
                    line-height: 1.8;
   margin-bottom: 1rem;
}

.thankyou-message p:last-child {
   margin-bottom: 0;
}

.thankyou-steps {
   margin: 2rem 0;
	    text-align: left;
}

.thankyou-steps h2 {
   font-size: 1.5rem;
          color: #1a1a1a;
   margin-bottom: 1.5rem;
		text-align   :      center;
}

.steps-list {
    list-style: none;
     padding: 0;
}

.steps-list li {
  display: flex;
	 gap: 1.5rem;
  margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
   border-bottom: 1px solid #e0e0e0;
}

.steps-list li:last-child {
    border-bottom: none;
}

.step-number {
   display: flex;
  align-items: center;
                    justify-content  :     center;
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
               border-radius: 50%;
	font-weight: bold;
    flex-shrink   :0; 
	
}

.steps-list h3 {

	   font-size: 1.1rem;
  color: #1a1a1a;
   margin-bottom: 0.3rem;
     }

.steps-list p    {
       color: #666;
  font-size: 0.95rem;
}

.thankyou-actions {
    display: flex;
    gap   :  1rem;
  margin: 2rem 0;
  flex-wrap: wrap;
    justify-content: center;

}

.thankyou-button {
   padding: 0.9rem 2rem;
  border-radius: 8px;
      text-decoration     :       none;
	 font-weight: 600;
   transition: all 0.3s ease;
  display    :inline-block;
}

.thankyou-primary {


  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);

          color:   white;


}

.thankyou-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(102, 126, 234, 0.3);
}

.thankyou-secondary {
   background     :#f0f0f0;
  color: #667eea;
}

.thankyou-secondary:hover		{
		background: #e0e0e0;
}

.thankyou-info {
    background: #f9f9f9;
  padding: 1.5rem;
    border-radius: 8px;
   text-align: left;
	margin-top    :  2rem;
} 

.thankyou-info h3 {


                    font-size: 1.1rem;
      color: #1a1a1a;
   margin-bottom: 0.8rem;
     }

.thankyou-info p {
  color: #666;
                    margin-bottom: 1rem;
}

.thankyou-info ul {
    list-style: none;
   padding: 0;
}

.thankyou-info li {
    padding: 0.5rem 0;
  padding-left: 1.5rem;
    position: relative;
    color: #666;
}

.thankyou-info li:before {
  content: "";
  position: absolute;
   left: 0;
  top: 0.7rem;
  width: 6px;
  height: 6px;
  background: #667eea;
    border-radius: 50%;
}@media (max-width: 768px) {
    .service-detailed-card {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        padding: 1.5rem;
    }

    .service-detailed-card.service-alt .service-detail-image {
        order: unset;
    }

    .service-detailed-card.service-alt .service-detail-content {
        order: unset;
    }

    .service-detail-content h2 {
        font-size: 1.5rem;
    }

    .service-meta {
        flex-direction: column;
        gap: 1rem;
    }

    .pricing-card.pricing-featured {
        transform: scale(1);
    }

    .thankyou-container {
        padding: 2rem;
    }

    .thankyou-actions {
        flex-direction: column;
    }

    .thankyou-button {
        width: 100%;
        text-align: center;
    }

    .faq-question span {
        flex: 1;
        text-align: left;
    }

    .steps-list li {
        gap: 1rem;
    }
}.policy-section {
  padding: 80px 2rem;
  background: linear-gradient(135deg, #f5f7ff 0%, #f0f4ff 100%);
  min-height: calc(100vh - 200px);
}

.policy-container {
  max-width: 900px;
    margin: 0 auto;
    text-align: left;
  background: white;
  padding: 3rem;
  border-radius: 12px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}

.policy-container h1 {
   margin-bottom: 2rem;
  font-size: 2.8rem;
  color: #1a1a1a;
  font-weight: 700;
   line-height     : 1.2;
}

.policy-container h2 {
  font-size: 1.6rem; 
	   color :        #667eea; 
	    margin-top: 2.5rem; 
	   margin-bottom :        1.2rem; 
	   font-weight: 600; 
	    border-bottom: 2px solid #f0f0f0; 
	    padding-bottom: 0.8rem; 
	
}

.policy-container h2:first-of-type 
 {
   margin-top: 0;
}



.policy-container p {
	 color: #555;
	margin-bottom     :   1.5rem;
  line-height: 1.8;
   font-size: 1.05rem;
}

.policy-container p:last-child {
       margin-bottom     :  0;
}

.policy-container li {
	margin-bottom: 0.8rem;
  color: #555;
  line-height: 1.7;
}@media (max-width: 1024px) {
    .policy-container {
        padding: 2.5rem;
    }

    .policy-container h1 {
        font-size: 2.4rem;
    }

    .policy-container h2 {
        font-size: 1.4rem;
    }
}

@media (max-width: 768px) {
    .policy-section {
        padding: 60px 1rem;
        min-height: auto;
    }

    .policy-container {
        padding: 1.5rem;
        border-radius: 8px;
    }

    .policy-container h1 {
        font-size: 2rem;
        margin-bottom: 1.5rem;
    }

    .policy-container h2 {
        font-size: 1.2rem;
        margin-top: 2rem;
        margin-bottom: 1rem;
    }

    .policy-container p {
        font-size: 0.95rem;
        margin-bottom: 1.2rem;
    }
}

@media (max-width: 480px) {
    .policy-section {
        padding: 40px 1rem;
    }

    .policy-container {
        padding: 1rem;
    }

    .policy-container h1 {
        font-size: 1.6rem;
    }

    .policy-container h2 {
        font-size: 1.1rem;
    }

    .policy-container p {
        font-size: 0.9rem;
        line-height: 1.6;
    }
}