* {
    margin :       0;
	  padding: 0;
	    box-sizing :border-box;
}

html {
    scroll-behavior: smooth;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', sans-serif;
    line-height: 1.6;
   color     :    #1f2937;
  background-color: #fafafa;
	
     }

.navbar-wrapper {

	    background: #ffffff;
  box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    position: sticky;
   top: 0;
   z-index:1000;
     }

.nav-container {
 max-width: 1200px;
   margin: 0 auto;
  display: flex;
    justify-content     :      space-between;
         align-items: center;
  padding: 1rem 2rem;
}

.nav-brand	{
	        flex-shrink: 0;
}

.brand-logo{
	  height: 48px;
    width    :auto;
  filter: brightness(0) invert(1);

}

.burger-menu-btn {
     display: none;
  flex-direction: column;
    background: none;
  border: none;
   cursor    :pointer;
  padding: 0.5rem;
}

.burger-line {
  width: 24px;
  height: 2.5px;
                    background: #1f2937;
    margin: 4px 0;
  transition: all 0.3s ease;
   border-radius: 2px;
}

.nav-menu {
   display   : flex;
          list-style: none;
   gap: 2rem;
   align-items     : center;
}  

.nav-link {
    text-decoration: none;
	 color: #374151;
   font-weight: 500;
  font-size    :  0.95rem;
   transition: color 0.3s ease;
  padding    :  0.5rem 0;
}

.nav-link:hover {
  color: #3b82f6;
}

.hero-section {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);

	   color: #ffffff;

	    padding    :  4rem 2rem;

	        display: flex;

	   align-items: center;

	  justify-content: space-between;

	   gap: 3rem;

	   max-width: 1200px;

	    margin: 0 auto;
	
}

.hero-content {
   flex: 1;
}

.hero-section h1    {
	   font-size: 2.5rem;
   font-weight :      700;
	margin-bottom: 1rem;
   line-height: 1.2;

}

.hero-description  
  {
               font-size  : 1.1rem;
  margin-bottom: 2rem;
   opacity: 0.95;
    line-height: 1.7;
}

.hero-image {
    flex:   1;
    width: 100%;
    max-width: 400px;
   height: auto;
               border-radius: 12px;
  object-fit: cover;
}

.cta-button {
     display: inline-block;
   padding: 0.75rem 2rem;
   font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
   border-radius: 8px;
   transition: all 0.3s ease;
  cursor: pointer;
    border: none;
	}

.primary-cta {
  background-color: #f59e0b;
  color: #ffffff;}

.primary-cta:hover {
 background-color: #d97706;
  transform: translateY(-2px);
}

.secondary-cta {
   background-color: #10b981;
  color :     #ffffff;
}

.secondary-cta:hover {
  background-color: #059669;
  transform: translateY(-2px);
}

.services-preview {
   max-width: 1200px;
          margin:        4rem auto;
  padding: 0 2rem;
}

.services-preview h2 {
   font-size: 2rem;
    margin-bottom  :     3rem;
  text-align: center;
  color: #1f2937;
}



.services-grid
	{

	        display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 2rem;
	}

.service-card {
    background: #ffffff;
       padding: 2rem;
   	 border-radius: 12px;
     box-shadow: 0 2px 8px rgba(0,0,0,0.08);
     transition: all 0.3s ease;
}

.service-card:hover 
 {
  box-shadow: 0 8px 24px rgba(0,0,0,0.12); 
	  transform: translateY(-4px);
}

.service-icon {
    width:       60px;
	 height: 60px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 8px;
   display: flex;
  align-items: center;
   justify-content: center;
  margin-bottom: 1.5rem;
}

.service-icon img  
  {
  width: 32px;
   height: 32px;
  stroke: #ffffff;
  fill: none;
	stroke-width: 2;
  filter: drop-shadow(0 0 4px rgba(102, 126, 234, 0.3));
}

.service-card h3 {
   font-size: 1.3rem;
  margin-bottom: 0.8rem;
  color: #1f2937;
}

.service-card p {
  color :    #6b7280;
    font-size: 0.95rem;
  line-height: 1.6;
}

.portfolio-section {
    background: #f3f4f6;
    padding: 4rem 2rem;
	 margin: 2rem 0;
}

.portfolio-section > h2  
  {
  max-width  :     1200px;
    margin: 0 auto 3rem;
  font-size: 2rem;
  text-align: center;
}

.portfolio-grid {

 max-width: 1200px;
   margin: 0 auto;
   display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap   :       2rem;
     }

.portfolio-item {

  border-radius :  10px;
    overflow: hidden;
   background: #ffffff;
  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
   transition: all 0.3s ease;
	}

.portfolio-item:hover {

  transform: scale(1.03);
  box-shadow: 0 6px 16px rgba(0,0,0,0.15);
	}

.portfolio-item img  {
   object-fit: cover;
   height: 220px;
    display: block;
   width: 100%;
}

.portfolio-item h4 {
   padding: 1.2rem;
    font-size: 1rem;
  color: #1f2937;
   text-align   :  center;
}

.cta-section {

  background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
  padding: 4rem 2rem;
                    text-align: center;
   color: #ffffff;}

.cta-container {
    max-width: 800px;

               margin: 0 auto;
}

.cta-section h2 {
    margin-bottom     :       1.5rem;
	 font-size: 2.2rem;
}

.cta-section p

{
   font-size: 1.05rem;
  margin-bottom: 2rem;
    opacity: 0.95;
}

#contact {
	max-width: 1200px;
    margin: 4rem auto;
  padding:        0 2rem; 

}

#contact h2 {
    font-size: 2rem;
  margin-bottom: 3rem;
   text-align  : center;
}

.contact-container {
  display   :grid;
   grid-template-columns: 1fr 1fr;
   gap: 3rem;
}

.contact-form-wrapper {
   background  :        #ffffff;
	padding: 2rem;
	 border-radius     :12px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.contact-form {
   display: flex;
      flex-direction: column;
}

.form-group 
 {
       margin-bottom: 1.5rem;
	display    : flex;
  flex-direction: column;

}

.form-group label {
   font-weight: 600; 
	   margin-bottom: 0.5rem; 
	  color: #1f2937; 
	                    font-size: 0.95rem;
}

.form-group input,
.form-group textarea,
.form-group select {


    padding: 0.8rem;
  border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 0.95rem;
   font-family: inherit;
   transition: border-color 0.3s ease;
     }

.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus {
  outline: none;
    border-color: #667eea;
  box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

.form-submit-btn {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: #ffffff;
  padding: 0.9rem 2rem;
    border  :      none;
  border-radius:        6px;
   font-weight   :    600;
 cursor: pointer;
	transition: all 0.3s ease;
    font-size: 1rem;
}

.form-submit-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);


}



.contact-info
{
    display: flex;
   flex-direction: column;
   justify-content: center;
}

.contact-info h3 {
    font-size: 1.5rem;
    margin-bottom: 2rem;
	color: #1f2937;
}

.contact-detail {
    margin-bottom     :     2rem;

}

.detail-label {
   color: #1f2937;
   margin-bottom: 0.5rem;
    display: block;
    font-weight:      600;
}

.contact-detail p {
   color: #6b7280;
     line-height: 1.8;
} 

.main-footer {
	 background: #1f2937;
   color: #e5e7eb;
    padding: 3rem 2rem 1rem;
    margin-top: 4rem;
}

.footer-content     {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
   gap:     2rem;
   margin-bottom: 2rem;
}

.footer-section h4 {
	font-size  :       1rem;
          margin-bottom: 1rem;
  color: #ffffff;
}

.footer-logo {
         height: 40px;
   width   : auto;
  filter: brightness(0) invert(1);
}

.footer-nav {
    list-style: none;


}

.footer-nav li {
    margin-bottom: 0.8rem;
}

.footer-nav a {
   color: #d1d5db;
    text-decoration     :    none;
	transition :  color 0.3s ease;
  font-size: 0.9rem;


}  

.footer-nav a:hover {
   color: #ffffff;
}

.footer-section p{
   color: #d1d5db;
    font-size: 0.9rem;
    line-height   :  1.7;
}

.footer-bottom {
  text-align     :     center;
    padding-top: 2rem;
  border-top: 1px solid #374151;
               color :    #9ca3af;
   font-size: 0.85rem;
}@media (max-width: 768px) {
    .burger-menu-btn {
        display: flex;
    }

    .nav-menu {
        position: absolute;
        top: 70px;
        left: 0;
        right: 0;
        background: #ffffff;
        flex-direction: column;
        gap: 0;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    }

    .nav-menu.active {
        max-height: 300px;
    }

    .nav-menu li {
        width: 100%;
        padding: 0;
    }

    .nav-link {
        display: block;
        padding: 1rem 2rem;
        border-bottom: 1px solid #f3f4f6;
    }

    .hero-section {
        flex-direction: column;
        padding: 2rem 1rem;
        gap: 2rem;
    }

    .hero-section h1 {
        font-size: 1.8rem;
    }

    .hero-image {
        max-width: 100%;
    }

    .contact-container {
        grid-template-columns: 1fr;
    }

    .services-grid {
        grid-template-columns: 1fr;
    }

    .portfolio-grid {
        grid-template-columns: 1fr;
    }

    .footer-content {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .hero-section h1 {
        font-size: 1.5rem;
    }

    .hero-description {
        font-size: 1rem;
    }

    .services-preview h2,
    .portfolio-section h2,
    .cta-section h2,
    #contact h2 {
        font-size: 1.5rem;
    }

    .cta-section p {
        font-size: 1rem;
    }

    .form-group input,
    .form-group textarea,
    .form-group select {
        font-size: 16px;
    }

    .nav-container {
        padding: 1rem;
    }

    .brand-logo {
        height: 40px;
    }
}.policySection {
          padding: 80px 2rem;
   background: #f8f9fa;
}

.policyContainer {
   max-width: 800px; 
	    margin: 0 auto; 
	   text-align: left;}

.policyContainer h2 {
  font-size   :       2.5rem; 
	    color: #2c3e50; 
	  margin-bottom   :     1.5rem; 
	   font-weight    :    700;
	
}

/* Performance critical */

.policyContainer p

{
	    font-size: 1.1rem;
   color: #7f8c8d;
	line-height: 1.7;
	margin-bottom: 1.5rem;}
@media (max-width: 768px) {
    .policyContainer h2 {
        font-size: 2rem;
    }

    .policyContainer p {
        font-size: 1rem;
    }

    .policySection {
        padding: 60px 1rem;
    }
}.services-hero {
  background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);
    color: #ffffff;
    padding: 3rem 2rem;
   text-align: center;
  max-width: 100%;
}

.services-hero-content {
  max-width: 900px;
    margin: 0 auto;
}

.services-hero h1 {

	  font-size: 2.3rem;
  font-weight: 700;
  margin-bottom: 1rem;

}

.services-hero p {
    font-size: 1.1rem;
      opacity: 0.95;
  line-height: 1.7;
}

.services-detailed {
    max-width: 1200px;
  margin: 3rem auto;
    padding: 0 2rem;
}

.services-container {
    display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2.5rem;
}



.service-detailed-card {
	background: #ffffff;
       border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
   transition     : all 0.4s ease;
}

.service-detailed-card:hover {

	  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  transform: translateY(-6px);}

.service-card-header {
   display: flex;
  justify-content: space-between;
  align-items   :    start;
   padding: 1.5rem;
  background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
   color: #ffffff;
    gap     :      1rem;
}

.service-card-header h2 {
  font-size: 1.5rem;
  margin: 0;
  flex: 1;
	
}

.service-badge {
  background: rgba(255,255,255,0.25);

	   padding: 0.4rem 1rem;

	                    border-radius: 20px;

	   font-size: 0.85rem;

	   font-weight: 600;

	  white-space   :     nowrap;
}

.service-card-image {
	width   :    100%;
   height: 250px;
    object-fit   :   cover;
       display: block;
}

.service-card-body {
   padding: 2rem;
}

.service-card-body h3 {
   font-size: 1.2rem;
  margin-bottom: 1rem;
    color: #1f2937; 
	
}

.service-card-body > p {
  color: #6b7280;
   line-height: 1.7;
               margin-bottom: 1.5rem;
}

.service-features {
   list-style: none;
	 padding: 0;
   margin     :  1.5rem 0;
}

.service-features li {
  padding: 0.6rem 0;
    padding-left: 1.5rem;
   position  :  relative;
  color: #374151;
  font-size    :    0.95rem;
}

.service-features li:before     {
     content: '✓';
  position: absolute;
  left: 0;
   color: #10b981;
     font-weight: bold; 
	
	}

.service-frequency {
	   background: #f3f4f6;
	padding: 1rem;
   border-radius: 6px;
   margin: 1.5rem 0;
   font-size :  0.95rem;
    color: #374151;

}

.service-cta {
  display: inline-block;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #ffffff;
    padding: 0.8rem 2rem;
                    border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
	transition:all 0.3s ease;
    margin-top: 1.5rem;
}

.service-cta:hover {
	  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
}

.service-comparison  
  {
    max-width: 1200px;
      margin: 4rem auto;
        padding: 0 2rem;
}

.service-comparison h2 {
   text-align: center;
   font-size: 2rem;
    margin-bottom: 2rem;
}

.comparison-table-wrapper {
  overflow-x: auto;
}

.comparison-table {
  width: 100%;
 border-collapse: collapse;
   background: #ffffff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    border-radius:    8px;
    overflow: hidden;
}

.comparison-table thead  
  {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
   color: #ffffff; 

}

.comparison-table th   {
	    padding: 1.2rem;
    text-align: left;
    font-weight :    600;}

.comparison-table td {
  padding     :   1rem 1.2rem;

	    border-bottom: 1px solid #e5e7eb;
}

.comparison-table tbody tr:hover {
   background: #f9fafb;
}

.feature-name {
  font-weight: 600;
   color: #1f2937;
}

.pricing-section {
 background: #f9fafb;
  padding: 4rem 2rem;
    margin: 2rem 0;
}

.pricing-section h2 {
	  text-align: center;
   font-size: 2rem;
	margin-bottom   :    1rem;}

.pricing-intro {
    text-align: center;
   color: #6b7280;
    margin-bottom: 3rem;
  max-width: 600px;
    margin-left: auto;
  margin-right: auto;
}

.pricing-cards


{
	   max-width: 1200px;
  margin: 0 auto;
	display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
   gap: 2rem;
	}

.pricing-card {

   background :#ffffff;
  padding: 2rem;
  border-radius: 10px;
         border: 2px solid #e5e7eb;
   text-align: center;
   transition: all 0.3s ease;}  

.pricing-card:hover {
  transform: translateY(-4px);
}

.pricing-card.featured {
   border-color: #667eea;
  box-shadow: 0 8px 24px rgba(102, 126, 234, 0.2);
  transform: scale(1.05);
}

.pricing-card h3 {
	font-size: 1.3rem;
 margin-bottom  :  1rem;
    color :    #1f2937;
}

.price {
   font-weight: 700;
    color: #667eea;
  font-size: 2.5rem;
   margin-bottom: 0.5rem;
}

.price-period  {
  color: #9ca3af;
    font-size: 0.9rem;
  margin-bottom :  1.5rem;
}

.price-features {
	list-style: none; 
	  padding: 0; 
	   margin   :  1.5rem 0; 
		 text-align: left;
}

.price-features li {
  padding: 0.6rem 0;
    padding-left: 1.5rem;
   position: relative;
  color :        #6b7280;
  font-size: 0.9rem;
}

.price-features li:before {
  content: '✓';
   position: absolute;
    left: 0;
  color  :   #10b981;
  font-weight: bold;
}

.faq-section {
    max-width: 900px;
 margin: 4rem auto;
   padding: 0 2rem;
}

.faq-section h2 {
  font-size: 2rem;
  text-align: center;
   margin-bottom: 2rem;
} 

.faq-items {
    display: flex;
   flex-direction: column;
    gap    :     1rem;
}

.faq-item {


  background: #ffffff;
  -moz-border-radius: 8px;
   border: 1px solid #e5e7eb;
	border-radius: 8px;
               overflow: hidden;}

.faq-question
	{
        width: 100%;
	 -webkit-transition: all 0.3s ease;
    padding: 1.5rem;
   background: #f9fafb;
  border: none;
  text-align: left;
   font-size: 1rem;
                    font-weight     :      600;
    -o-transition: all 0.3s ease;
   color: #1f2937;
  cursor: pointer;
   display: flex;
    justify-content: space-between;
         align-items: center;
    -moz-transition :   all 0.3s ease;
  transition: all 0.3s ease;
}

.faq-question:hover {
     background: #f3f4f6;
	}

.faq-toggle {
   	 font-weight  : bold;
    font-size: 1.3rem;
       transition: transform 0.3s ease;
   display: inline-block;} 

.faq-answer {
   max-height: 0;
    overflow :     hidden;
    transition: max-height 0.3s ease;
}

.faq-answer.active {
        max-height: 300px;
}

.faq-answer p {

	  padding: 1.5rem;
   color: #6b7280;
                    line-height: 1.7;
    margin :        0;
	}



.thankyou-container {

	  min-height: calc(100vh - 300px);
  display: flex;
   align-items  :center;
	 justify-content: center;
    padding: 3rem 2rem;
     }

.thankyou-content {
    background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
 max-width: 700px;
	padding:     3rem;
	 text-align: center;
}

.success-icon {
   width  :        80px;
   height: 80px;
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  border-radius: 50%;
  display  :     flex;
	 align-items: center;
    justify-content: center;
   margin: 0 auto 2rem;
}

.success-icon img {
  height: 45px;
    stroke-width: 3;
  fill :   none;
  width: 45px;
    stroke :      #ffffff;
}



.thankyou-content h1 {
  font-size  :  2rem;
  color:   #1f2937;
    margin-bottom: 0.5rem;
}

.thankyou-subtitle {
  color: #6b7280;
  font-size: 1.1rem;
   margin-bottom: 2rem;
}

.thankyou-message {


    background: #f0fdf4;
    border-left: 4px solid #10b981;
  padding: 1.5rem;
	border-radius  :6px;
    text-align: left;
	 margin-bottom: 2rem;


}

.thankyou-message p
{
  margin-bottom: 1rem;
  line-height: 1.7;
   color: #1f2937;
}

.thankyou-message p:last-child {
   margin-bottom :      0;
}

.thankyou-next-steps


{
    margin-bottom: 2rem;
       text-align: left;
}



.thankyou-next-steps h3 {
	color: #1f2937;
				 margin-bottom: 1.5rem;
}

.steps-list {
    list-style: none;
  padding: 0;
   margin: 0;
}

.steps-list li {

   margin-bottom   :   1.5rem;

	                    padding-bottom   :1.5rem;

		border-bottom    :        1px solid #e5e7eb;}

.steps-list li:last-child

{
  border-bottom: none;
}

.steps-list strong {
	   display: block;
      color: #667eea;
  margin-bottom: 0.5rem;


}

.steps-list p{

  margin: 0;
    color: #6b7280;
	}

.thankyou-actions {
  display: flex;
  gap: 1rem;
    justify-content: center;
  flex-wrap: wrap;
    margin-bottom: 2rem;
}

.action-button{
   display  :        inline-block;
   padding: 0.8rem 1.8rem;
  border-radius  :       6px;
   text-decoration :     none;
   font-weight: 600;
    transition: all 0.3s ease;
  font-size: 0.95rem;
}

.action-button.primary {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
   color: #ffffff;
} 

.action-button.primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);

}

.action-button.secondary {
                  color: #1f2937;
    background: #e5e7eb;


}

.action-button.secondary:hover {
   background     : #d1d5db;

	  transform: translateY(-2px);
}

.contact-reminder
	{
   -webkit-border-radius: 6px;

	  -moz-border-radius :  6px;

	    background:        #fef3c7;

	  border-left: 4px solid #f59e0b;

	    padding: 1.5rem;

	    border-radius: 6px;

		text-align: left;
     } 

.contact-reminder h4 {
    color: #d97706;
    margin-bottom: 0.5rem;
}

.contact-reminder p {
   color: #92400e;
  margin: 0;
}@media (max-width: 768px) {
    .services-hero h1 {
        font-size: 1.8rem;
    }

    .service-card-header {
        flex-wrap: wrap;
    }

    .service-card-header h2 {
        flex-basis: 100%;
    }

    .pricing-card.featured {
        transform: scale(1);
    }

    .thankyou-actions {
        flex-direction: column;
    }

    .action-button {
        width: 100%;
    }

    .comparison-table {
        font-size: 0.85rem;
    }

    .comparison-table th,
    .comparison-table td {
        padding: 0.8rem;
    }

    .thankyou-content {
        padding: 2rem;
    }
}

@media (max-width: 480px) {
    .services-hero h1 {
        font-size: 1.5rem;
    }

    .services-hero p {
        font-size: 1rem;
    }

    .service-card-body {
        padding: 1.5rem;
    }

    .price {
        font-size: 2rem;
    }

    .thankyou-content {
        padding: 1.5rem;
    }

    .success-icon {
        width: 60px;
        height: 60px;
    }

    .thankyou-content h1 {
        font-size: 1.5rem;
    }
}