* {
  margin: 0;
	 padding: 0;
    box-sizing: border-box;


}

body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.6;
   color: #2c3e50;
    background: #ffffff;
	
}

.primary-navigation
{
         background: #ffffff;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
  position: sticky;
       top: 0;
	 z-index: 1000;
   padding: 1rem 0;
}

.nav-container {
   padding: 0 2rem;
	 max-width: 1200px;
                    justify-content     :  space-between;
  align-items: center;
               display: flex;
	margin: 0 auto;
}

.brand-logo img {


	height: 45px;
    width: auto;

	}

.navigation-links{
    display    :    flex;
   list-style: none;
         gap: 2.5rem;
}

.navigation-links a {
	          text-decoration: none;

  color: #2c3e50;

   font-weight: 500;

  transition: color 0.3s;
     }


.navigation-links a:hover


{
    color: #667eea;
}

.mobile-menu-trigger {
	 border: none;
    flex-direction: column;
   cursor: pointer;
  display   : none;
  padding: 0.5rem;
  background: none;
}

.mobile-menu-trigger span {
    width: 25px;
	 height: 3px;
   background: #2c3e50;
    margin   :        3px 0;
 transition: 0.3s;
}

.hero-section {
     display: grid;
    grid-template-columns  :      1fr 1fr;
   gap: 3rem;
  max-width: 1200px;
   margin: 4rem auto;
	 padding: 0 2rem;
   align-items: center;
}

.hero-content h1 {
	font-size: 3rem;
   color: #1a202c;
  margin-bottom: 1.5rem;
   line-height: 1.2;
}

.hero-subtitle	{
  font-size: 1.15rem; 
	  margin-bottom: 2rem; 
		color:     #4a5568;
}

.primary-button {
	display  :inline-block;
   padding:  1rem 2.5rem;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	 color  :        white;
   text-decoration: none;
   border-radius: 8px;
   font-weight: 600;
    transition: transform 0.3s, box-shadow 0.3s;
}

.primary-button:hover
{
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(102, 126, 234, 0.3);
}

.hero-visual img {
    width: 100%;
  border-radius: 12px;
  box-shadow: 0 15px 40px rgba(0,0,0,0.12);


}

.intro-segment {
   background: #f8f9fa;
  padding: 5rem 0;
}

.content-wrapper {
  max-width: 1200px;
   margin: 0 auto;
    padding   :  0 2rem;
}

.intro-segment h2	{
  font-size: 2.5rem; 
	    color: #1a202c; 
	    margin-bottom:   1.5rem; 
	    text-align: center;
}

.intro-segment p {
  font-size: 1.1rem;
    color: #4a5568;
   margin-bottom: 1rem;
	max-width: 800px;
    margin-left: auto;
    margin-right: auto;


}

.benefits-display {
    padding: 5rem 0;
}

.benefits-display h2 {
    font-size: 2.5rem;
    color: #1a202c;
  margin-bottom :     3rem;
   text-align: center; 
	
	}

.benefits-grid {
      display     :grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2.5rem;


}

.benefit-card {
 background: #ffffff;
  padding: 2.5rem;
  border-radius: 10px;
  box-shadow: 0 5px 20px rgba(0,0,0,0.08);
    transition: transform 0.3s;
}

.benefit-card:hover
	{
  transform: translateY(-5px);
}

.icon-holder {
   width: 70px;
  height: 70px;
    margin-bottom: 1.5rem;
}

.icon-holder img {
  width: 100%;
         height :       100%;
	stroke: #667eea;
  fill   :      none;
   stroke-width: 2;
  filter: drop-shadow(3px 3px 5px rgba(102, 126, 234, 0.3));
}

.benefit-card h3 {
    font-size: 1.5rem;
    color: #1a202c;
                    margin-bottom     :1rem;
	
}  

.benefit-card p {
    color: #4a5568;
   line-height: 1.7;
}

.visual-showcase {
	 background: #ffffff;
   padding: 5rem 0;
}

.showcase-layout {

	  max-width: 1200px;
	margin: 0 auto;
	 padding    :   0 2rem;
   display: grid;
    grid-template-columns: 1fr 1fr;
  gap  :   4rem;
   align-items: center;
     }

.showcase-image img {
	 width: 100%;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}


.showcase-text h2 {
   font-size: 2.2rem;
  color: #1a202c;
    margin-bottom :1.5rem;
}

.showcase-text p {
  font-size: 1.05rem;
	 color: #4a5568;
   margin-bottom     :1.2rem;
  line-height: 1.8;

}

.method-explanation {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
   padding  :5rem 0;
   color: white;
}

.method-explanation h2    {
  font-size: 2.5rem;
	 margin-bottom: 3rem;
   text-align: center;
    color: white;
}

.method-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap:   2rem;
	
}

.step-item {
  background: rgba(255, 255, 255, 0.1);
    padding: 2rem;
    border-radius: 10px;
  backdrop-filter: blur(10px); 

}

.step-number {
 display  :    block;
    font-size: 2.5rem;
    font-weight: bold;
   margin-bottom: 1rem;
  color: rgba(255, 255, 255, 0.8);
	
}

.step-item h3 {
   font-size: 1.4rem;
    margin-bottom: 1rem;
}

.step-item p {
  color: rgba(255, 255, 255, 0.9);
	    line-height: 1.6;
}

.gallery-section {
    padding  :    5rem 0;
   background: #f8f9fa;
}

.gallery-section h2 {
  font-size: 2.5rem;
      color  :        #1a202c;
   margin-bottom: 3rem;
  text-align:       center;
}

.image-gallery {
    display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
   gap: 2rem;
	
}

.gallery-item {
       position: relative;
   overflow: hidden;
   border-radius: 10px;
  box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}

.gallery-item img {
      width: 100%;

	   display:  block;

	  transition   :      transform 0.5s;
	

}

.gallery-item:hover img
	{
  transform: scale(1.05);
	
}

.gallery-caption {
    position: absolute;
  bottom: 0;
    left: 0;
					right: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
   padding: 2rem 1.5rem 1rem;
    color: white;


}

.cta-banner {

   background: #1a202c;
   padding: 5rem 0;
               text-align: center;
    color: white;
     }

.cta-content h2 {
    font-size: 2.5rem;
    margin-bottom: 1.5rem;
}

.cta-content p  
  {
      font-size: 1.2rem;
      margin-bottom: 2rem;
   max-width: 700px;
  margin-left: auto;
   margin-right: auto;
  color: rgba(255, 255, 255, 0.9);
}

.secondary-button     {
  display: inline-block;
    padding :    1rem 2.5rem;
  background : white;
   color: #1a202c;
                    text-decoration: none;
   border-radius: 8px;
    font-weight :    600;
      transition: transform 0.3s;
}

.secondary-button:hover {
     transform: translateY(-2px);

}

.contact-section {
   padding: 5rem 0;
  background: #ffffff;
}

.contact-layout {
  display  : grid;
   grid-template-columns :      1fr 1.5fr;
    gap: 4rem;
}

.contact-info h2 {
       color: #1a202c;
	font-size: 2.2rem;
  margin-bottom: 1.5rem;
	}

.contact-info p {
      color: #4a5568;
  margin-bottom: 1rem;
    line-height: 1.7; 

	}

.info-block {
     margin-top: 2rem; 
   padding: 1.5rem; 
   background: #f8f9fa; 
  border-radius: 8px;
}

.info-block h3 {
                    font-size  :     1.5rem;
   color: #1a202c;
               margin-bottom: 1rem;
}

.phone-display {
   font-weight: 600;
		color: #667eea;
}

.inquiry-form {
	background: #f8f9fa;
    padding: 2.5rem;
   border-radius: 10px;
}

.form-group {
   margin-bottom    :  1.5rem;
}

.form-group label {
    display: block;
    margin-bottom: 0.5rem;
	 font-weight     :500;
   color: #2c3e50;

}

.form-group input,
.form-group select,
.form-group textarea {
   width: 100%;
   padding: 0.9rem;
  border: 2px solid #e2e8f0;
    border-radius: 6px;
   font-size: 1rem;
    font-family: inherit;
    transition: border-color 0.3s;
} 

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
         outline: none;
 border-color   :    #667eea;
}

.submit-button {
   width: 100%;
   padding: 1rem;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
	border: none;
    border-radius  :       6px;
  font-size: 1.1rem;
    font-weight :        600;
    cursor: pointer;
  transition: transform 0.3s;
}

.submit-button:hover {
  transform: translateY(-2px);
}

.site-footer {
    background: #1a202c;
  padding: 3rem 0 1rem;
    color: white;
}

.footer-content {
   max-width: 1200px;
 margin: 0 auto;
    padding: 0 2rem;
   display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 2rem;
}

.footer-logo {
	 height: 40px;
   margin-bottom: 1rem;
  filter: brightness(0) invert(1);
}

.footer-column h4 {
  margin-bottom:1rem;

  font-size: 1.2rem; 
	
}

.footer-column ul {
  list-style: none;
}

.footer-column ul li

{
  margin-bottom: 0.5rem;
}

.footer-column a {

  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  transition: color 0.3s;

}

.footer-column a:hover   {

	    color  :     #667eea;}

.footer-bottom {
         max-width: 1200px;
    margin: 2rem auto 0;
   padding: 2rem 2rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
    text-align: center;
  color: rgba(255, 255, 255, 0.7);
}@media (max-width: 768px) {
    .mobile-menu-trigger {
        display: flex;
    }

    .navigation-links {
        position: fixed;
        left: -100%;
        top: 70px;
        flex-direction: column;
        background-color: white;
        width: 100%;
        text-align: center;
        transition: 0.3s;
        box-shadow: 0 10px 27px rgba(0,0,0,0.05);
        padding: 2rem 0;
    }

    .navigation-links.active {
        left: 0;
    }

    .hero-section {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .hero-content h1 {
        font-size: 2rem;
    }

    .showcase-layout {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .contact-layout {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .method-steps {
        grid-template-columns: 1fr;
    }
}.policySection {
  padding: 80px 2rem;
   background: #f8f9fa;
}

/* TODO: optimize for mobile */

.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;
}

.policyContainer p


{
    color: #7f8c8d;
  margin-bottom: 1.5rem;
          line-height: 1.7;
    font-size    :     1.1rem;
}
@media (max-width: 768px) {
    .policyContainer h2 {
        font-size: 2rem;
    }

    .policyContainer p {
        font-size: 1rem;
    }

    .policySection {
        padding: 60px 1rem;
    }
}.services-hero  
  {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  padding: 5rem 0;
    color: white;
  text-align: center;
}

.services-hero h1 {
    font-size: 3rem;

   margin-bottom: 1rem;

 color: white;
}

.services-intro-text {
   font-size: 1.2rem;
  max-width: 800px;
	margin   :       0 auto;
  color: rgba(255, 255, 255, 0.95);
}

.services-overview {
			padding: 4rem 0;
}

.service-block    {
    display: grid;
       grid-template-columns: 1fr 1fr;
     gap: 3rem;
      margin-bottom: 5rem;
       align-items: center;
}

.service-block.reverse {
   direction: rtl;
}

.service-block.reverse > * {
  direction: ltr;
}

.service-visual img {
    width: 100%;
   border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.15);
}

.service-description h2 {

    font-size    :  2rem;
    color    :  #1a202c;
   margin-bottom: 1rem;
	}

.service-description > p     {
  font-size: 1.05rem;
  color    :  #4a5568;
	margin-bottom: 1.5rem;
     line-height    :        1.7;
}

.service-features {
   margin    :  2rem 0;
}

.feature-point {
       display: flex;
    align-items: center;
   gap: 1rem;
    margin-bottom    :      1rem;
}

.feature-point img {
    width: 24px;
  height: 24px;
	stroke: #667eea;
        fill: #667eea;
}

.feature-point span   {
   color: #2c3e50;
    font-size: 1rem;
	}

.service-duration {
    font-weight  :       600;
     color: #667eea;
  margin-top: 1.5rem;
  font-size: 1.05rem; 
	
}

.process-timeline {
               background: #f8f9fa;
    padding: 5rem 0;
}

.process-timeline h2 {
   font-size:2.5rem;
   text-align: center;
  margin-bottom: 3rem;
    color: #1a202c;}

.timeline-container {
   max-width:        900px;
         margin: 0 auto;
}


.timeline-step
	{
	 display: flex;
    gap:   2rem;
		 margin-bottom: 3rem;
   position: relative;
}

.timeline-step:not(:last-child)::after {
  content: '';
    position: absolute;
    left: 23px;
   top   :     50px;
   width: 2px;
  height: calc(100% + 20px);
  background: #e2e8f0;
}

.timeline-marker
{
   min-width: 50px;
    height: 50px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 50%;
    display: flex;
  align-items: center;
   justify-content: center;
   color :       white;
  font-weight: bold;
   font-size: 1.3rem;
   z-index   :       1;
	
}


.timeline-content h3 {
    font-size: 1.5rem;
  color: #1a202c;
          margin-bottom   :        0.5rem;
}

.timeline-content p{

    color: #4a5568;
  line-height: 1.6;
}

.transformation-showcase {
               padding: 5rem 0;
	}

.transformation-showcase h2  {
               font-size: 2.5rem;
    text-align    :        center;
  color: #1a202c;
  margin-bottom: 1rem;
}

.showcase-description {
   text-align: center;
    font-size: 1.1rem;
    color: #4a5568;
   margin-bottom: 3rem;
    max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.transformation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;
}

.transformation-card
{


    background: white;
               border-radius: 12px;
    overflow: hidden;
  box-shadow: 0 5px 20px rgba(0,0,0,0.1);
   transition: transform 0.3s;


}

.transformation-card:hover {
  transform: translateY(-5px);
} 

.transformation-card img {

	  width    :       100%;
   height: 250px;
    object-fit     :cover;}

.transformation-info {
  padding: 1.5rem;
}

.transformation-info h3 {
  margin-bottom    :  0.5rem;
  font-size: 1.3rem;
  color: #1a202c;
}

.transformation-info p {
    color     : #4a5568;
  line-height: 1.6;


}

.cta-services  
  {
  background: #1a202c;
   padding: 4rem 0;
	 text-align: center;
    color     :    white;
	
}

.cta-services h2 {
                    font-size: 2.3rem;
    margin-bottom: 1rem;
}

.cta-services p {
	 font-size: 1.15rem;
  margin-bottom: 2rem;
  color: rgba(255, 255, 255, 0.9);


}

.cta-link-button {
   display  :   inline-block;
    padding: 1rem 2.5rem;
  background: white;
	color  :     #1a202c;
    text-decoration: none;
    border-radius: 8px;
  font-weight: 600;
   transition: transform 0.3s;
}

.cta-link-button:hover {
  transform: translateY(-2px);
}

.thankyou-container {


  min-height: 70vh;
  display: flex;
   align-items: center;
  padding: 4rem 0;
  background: linear-gradient(to bottom, #f8f9fa 0%, #ffffff 100%);
}

.thankyou-content {
   max-width: 800px;

	    margin: 0 auto;

	  padding: 3rem 2rem;

	    text-align    :    center;


}

.success-icon-wrapper {
  margin-bottom: 2rem;
}

.success-icon {

	  width: 100px;
    height: 100px;
	stroke: none;
	fill: #2ecc71;
  filter: drop-shadow(0 5px 15px rgba(46, 204, 113, 0.3));


}

.thankyou-content h1 {
               font-size: 2.8rem;
   color: #1a202c;
                    margin-bottom: 1rem;
}



.thankyou-message


{
  font-size    :     1.2rem;
    color: #4a5568;
         margin-bottom: 3rem;
   line-height  :        1.7;
}


.next-steps-box

{
	background: white;
    padding: 2.5rem;
   border-radius :  12px;
  box-shadow: 0 5px 20px rgba(0,0,0,0.08);
  margin-bottom: 2.5rem;
   text-align: left; 
	
}  

.next-steps-box h2 
 {
   color: #1a202c;
	 font-size: 1.8rem;
  text-align: center;
   margin-bottom: 2rem;
}

.steps-list {
   display: flex;
   flex-direction  :        column;
  gap: 2rem;


}

.step-element {
    display: flex;
	gap: 1.5rem;
    align-items     :    flex-start;
}

.step-icon {
 min-width     :  50px;
   height: 50px;
  display: flex;
    align-items: center;
    justify-content: center;
}

.step-icon img {

	  width: 35px; 
	  height:    35px; 
		 stroke  :   #667eea; 
	   fill :    none; 
	    stroke-width: 2;


}

.step-text h3 {
   font-size: 1.3rem;
   color: #1a202c;
  margin-bottom: 0.5rem;
}

.step-text p {
   line-height: 1.6;
 color: #4a5568;
}

.additional-info {
  background: #f8f9fa;
     padding    :2rem;
     border-radius: 10px;
   margin-bottom: 2rem;
}

.additional-info h3 {
      margin-bottom: 0.8rem;
    color: #1a202c;
   font-size: 1.4rem;


}

.additional-info p {
    color: #4a5568;
  line-height: 1.7;
	
}

.action-buttons {
  display: flex;
    gap: 1.5rem;
  justify-content: center;
    margin-bottom: 3rem;
        flex-wrap: wrap;
}

.primary-btn {

	    padding: 1rem 2rem;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
               text-decoration: none;
  border-radius: 8px;
   font-weight: 600;
	transition   :        transform 0.3s;
}

.primary-btn:hover {
  transform: translateY(-2px);
}

.secondary-btn {
    border-radius: 8px;
	   color: #667eea;
	         text-decoration: none;
	  font-weight: 600;
	    padding: 1rem 2rem;
	    border: 2px solid #667eea;
	   background: white;
	    transition     :   all 0.3s;
}

.secondary-btn:hover {
  background: #667eea;
   color: white;
}

.contact-reminder {
   padding-top: 2rem;
    border-top: 2px solid #e2e8f0;
  color: #4a5568;
}


.contact-reminder p  {
  margin-bottom: 0.3rem;
}@media (max-width: 768px) {
    .services-hero h1 {
        font-size: 2rem;
    }

    .service-block {
        grid-template-columns: 1fr;
        gap: 2rem;
        margin-bottom: 3rem;
    }

    .service-block.reverse {
        direction: ltr;
    }

    .timeline-step {
        gap: 1rem;
    }

    .transformation-grid {
        grid-template-columns: 1fr;
    }

    .thankyou-content h1 {
        font-size: 2rem;
    }

    .action-buttons {
        flex-direction: column;
    }

    .action-buttons a {
        width: 100%;
        text-align: center;
    }
}