* {
  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;
}

.top-navigation {
     background: #1a1a2e;
   padding: 1rem 0;
	position:       fixed;
       width: 100%;
   -o-transition: background 0.3s ease, box-shadow 0.3s ease;
    top: 0;
      z-index: 1000;
    -webkit-transition: background 0.3s ease, box-shadow 0.3s ease;
		 -moz-transition: background 0.3s ease, box-shadow 0.3s ease;
       transition: background 0.3s ease, box-shadow 0.3s ease;
     }

.top-navigation.scrolled {
  background: rgba(26, 26, 46, 0.95);
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.nav-wrapper{
   max-width: 1200px;
    margin: 0 auto;
   padding: 0 20px;
      display    :   flex;
    justify-content: space-between;
    align-items: center;
}

.brand-link 
 {
   display: flex;
   align-items: center; 
	
}

.site-logo {
  width: auto;
 height :        45px;
}

.main-menu {
	  display: flex;
          list-style: none;
  gap   :     2rem;

}

.main-menu li a {
  color: #ecf0f1; 
		 text-decoration     :     none; 
					 font-weight: 500; 
	   transition  :   color 0.3s; 
	  font-size: 0.95rem;
}


.main-menu li a:hover {
   color     : #3498db;
}

.menu-toggle

{


   display: none;
  flex-direction: column;
    background: none;
  border: none;
  cursor: pointer;
  padding: 0.5rem; 
	
}

.menu-toggle .bar {

	  width: 25px;
  height: 3px;
  background-color: #ecf0f1;
       margin    :        3px 0;
     transition: all 0.3s ease;
	}

.menu-toggle.active .bar:nth-child(1) {
  transform: rotate(-45deg) translate(-5px, 6px);
}

.menu-toggle.active .bar:nth-child(2) {

  opacity: 0;
     }

.menu-toggle.active .bar:nth-child(3)
{
  transform: rotate(45deg) translate(-5px, -6px);
}

.hero-block {
               margin-top: 70px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  padding: 80px 20px;
    color     :    white;
}

.hero-content-area

{

	grid-template-columns: 1fr 1fr;
     gap: 3rem;
    margin: 0 auto;
        max-width: 1200px;
    display: grid;
   align-items: center;


}


.text-column h1


{
          font-size   : 3rem; 
   margin-bottom: 1.5rem; 
  line-height: 1.2;
}

.hero-description {
               font-size: 1.2rem;
   margin-bottom: 2rem;
   opacity: 0.95;

}

.primary-action-btn {


   -webkit-border-radius: 50px;
    color: #667eea;
  -o-transition: transform 0.3s, box-shadow 0.3s;
 -moz-border-radius: 50px;
   background: #fff;
	 -webkit-transition    :  transform 0.3s, box-shadow 0.3s;
 -moz-transition: transform 0.3s, box-shadow 0.3s;
  transition: transform 0.3s, box-shadow 0.3s;
		border-radius: 50px;
   display: inline-block;
  font-weight: 600;
   text-decoration: none;
  padding: 1rem 2.5rem;


}

.primary-action-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.2);
}

.image-column img {
     width: 100%;
    border-radius: 15px;
  box-shadow: 0 15px 35px rgba(0,0,0,0.3);


}

.intro-segment {

   background: #f8f9fa;
    padding: 80px 20px;

}

.container-box {
   max-width: 1200px;
   margin: 0 auto;
}

.intro-segment h2 {
   text-align: center;
    font-size: 2.5rem;
  margin-bottom: 1.5rem;
   color  :       #1a1a2e;
}

.intro-segment > .container-box > p	{
    text-align:   center;
    max-width: 800px;
   margin: 0 auto 3rem;
       font-size    :        1.1rem;
   color: #555;
}

.feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
	 margin-top: 3rem;
}

.feature-item {


   background: white;
	padding: 2rem;
    border-radius: 10px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.08);
  transition: transform 0.3s;
}

.feature-item:hover     {
  transform: translateY(-5px);
}

.feature-item h3 {
	color: #667eea;
	margin-bottom: 1rem;
    font-size: 1.5rem;
}

.services-area {
  padding: 80px 20px;
               background: #fff;
}

.services-area h2 {
   text-align: center;
  font-size: 2.5rem;
	 margin-bottom: 3rem;
         color: #1a1a2e;
}

.services-layout {
  display     :       grid;
  grid-template-columns: repeat(3, 1fr);
   gap: 2.5rem;
}

.service-card {

	  background:#f8f9fa;
  border-radius: 12px;
   overflow: hidden;
    transition: box-shadow 0.3s;
	}

.service-card:hover {

	  box-shadow: 0 10px 30px rgba(0,0,0,0.15);
	
}

.service-card img {
    width: 100%;
   height: 250px;
    object-fit: cover;


}

.service-card h3 {


    padding: 1.5rem 1.5rem 1rem;
  color: #1a1a2e;
	 font-size    :  1.4rem; 
	
     }

.service-card > p {

	 padding    :        0 1.5rem 1rem;
    color: #555;


}

.service-features {
  list-style: none;
  padding   : 0 1.5rem 1.5rem; 
	
}

.service-features li 
 {
    padding: 0.5rem 0;
    color : #666;
    position: relative;
   padding-left: 1.5rem; 
	
}

.service-features li:before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #667eea;
  font-weight: bold; 
	
}

.cta-section {
  background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
		padding    :        80px 20px;
     color:       white;
	 text-align: center;
} 

.cta-inner {
  max-width :800px;
  margin: 0 auto;
}

.cta-inner h2 {
     font-size: 2.8rem;
          margin-bottom: 1.5rem;
}

.cta-inner p {
	    font-size: 1.2rem;
    margin-bottom: 2rem;
   opacity: 0.95;

}

.cta-button {


   display: inline-block;
   background: white;
   color: #f5576c;
   padding    : 1.2rem 3rem;
	text-decoration: none;
    border-radius: 50px;
   font-weight: 700;
   font-size   :  1.1rem;
        transition: all 0.3s;

}


.cta-button:hover {
  transform: scale(1.05);

  box-shadow: 0 15px 40px rgba(0,0,0,0.25);
}

.approach-section {
   padding: 80px 20px; 
		background: #fff;
}

.approach-layout     {
  display: grid;
  grid-template-columns:   1fr 1fr;
   gap: 3rem;
         align-items: center;
}



.approach-text h2 {
    font-size: 2.5rem;
  margin-bottom: 1.5rem;
		color: #1a1a2e;
}

.approach-text p {
        margin-bottom: 1.5rem;
      color: #555;
       font-size: 1.05rem;
}

.approach-image img {
  width: 100%; 
	  border-radius: 15px; 
	  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.contact-segment {
    padding: 80px 20px; 
	   background: #f8f9fa;
}

.contact-segment h2 {
	text-align: center;
   font-size     : 2.5rem;
   margin-bottom: 3rem;
        color: #1a1a2e;
}

.contact-wrapper {
    display: grid;

  grid-template-columns: 1fr 2fr;

    gap: 3rem;

 max-width   :       1200px;

   margin: 0 auto;
}

.contact-info {


  background: white;
    padding   :2rem;
    border-radius: 10px;
  height: fit-content;
}

.contact-info h3 {
  color: #667eea;
    margin-bottom: 1.5rem;
    font-size: 1.8rem;
}

.info-line

{
  margin-bottom :  1rem; 
	        color:#555;
}

.office-note {
  margin-top:    2rem;
   padding-top   :    1.5rem;
   border-top: 2px solid #f0f0f0;
}

.office-note p {
                    color: #666;
   font-style: italic;
}

.contact-form-area {
    padding  :        2.5rem;
  border-radius     :  10px;
  background: white;
}



.consultation-form .form-group {
   margin-bottom    :     1.5rem;
}

.consultation-form label {
   display     :  block;
	 margin-bottom: 0.5rem;
   color:       #333;
  font-weight: 600;
}

.consultation-form input,
.consultation-form select,
.consultation-form textarea {
   width: 100%;
  padding: 0.9rem;
                    border: 2px solid #e0e0e0;
        border-radius   : 8px;
  font-size    :    1rem;
   font-family: inherit;
        transition: border-color 0.3s;
}

.consultation-form input:focus,
.consultation-form select:focus,
.consultation-form textarea:focus
	{
   border-color: #667eea;
    outline: none;
}

.consultation-form textarea  {
   resize   :     vertical;
}

.submit-btn {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	color: white;
    padding: 1rem 2.5rem;
   border: none;
    border-radius: 50px;
         font-size    : 1.1rem;
  font-weight: 600;
   cursor: pointer;
	transition  :       all 0.3s;
  width: 100%;
}

.submit-btn:hover 
 {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.4);
}

.site-footer {
  background: #1a1a2e;
   color: #ecf0f1;
    padding:  3rem 20px 1.5rem;}

.footer-content {
  max-width: 1200px;
    margin: 0 auto;
    display: grid;
  grid-template-columns: repeat(4, 1fr);
   gap: 2rem;
          margin-bottom: 2rem;
}

.footer-logo {
   height: 50px;
    width: auto;
  filter: brightness(0) invert(1);
  margin-bottom: 1rem;
}



.footer-tagline {
	     color: #bdc3c7;
  font-style  :italic;

}

.footer-column h4 {
	    margin-bottom :        1rem;
   color: #fff;
	font-size: 1.2rem;
	}

.footer-links  {
    list-style: none;


}

.footer-links li {
   margin-bottom: 0.5rem;
}

.footer-links a {
    color   : #bdc3c7;
          text-decoration :     none;
   transition: color 0.3s;
} 

.footer-links a:hover {

	  color: #3498db;

}

.footer-column p     {
    color    :   #bdc3c7;

  line-height: 1.8;
}

.footer-bottom {
    text-align: center;
   padding-top: 2rem;
  border-top: 1px solid rgba(255,255,255,0.1);
    color: #95a5a6;
}@media (max-width: 768px) {
    .menu-toggle {
        display: flex;
    }
    
    .main-menu {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: #1a1a2e;
        flex-direction: column;
        gap: 0;
        padding: 1rem 0;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
    }
    
    .main-menu.active {
        max-height: 300px;
    }
    
    .main-menu li {
        padding: 0.8rem 20px;
    }
    
    .hero-content-area {
        grid-template-columns: 1fr;
    }
    
    .text-column h1 {
        font-size: 2rem;
    }
    
    .feature-grid {
        grid-template-columns: 1fr;
    }
    
    .services-layout {
        grid-template-columns: 1fr;
    }
    
    .approach-layout {
        grid-template-columns: 1fr;
    }
    
    .contact-wrapper {
        grid-template-columns: 1fr;
    }
    
    .footer-content {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .text-column h1 {
        font-size: 1.6rem;
    }
    
    .hero-description {
        font-size: 1rem;
    }
    
    .intro-segment h2,
    .services-area h2,
    .contact-segment h2 {
        font-size: 1.8rem;
    }
}.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;

}

.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;
    }
}.page-header-block   {
    margin-top: 70px;
  background: linear-gradient(rgba(26, 26, 46, 0.7), rgba(26, 26, 46, 0.7)), url('../materials/legacy_creation_workspace_1.webp') center/cover;
    padding: 120px 20px;
   text-align: center;
   color: #fff;
}

.header-overlay h1 {
    margin-bottom: 1rem;
  font-size: 3.5rem;
}

.subtitle-text {

    font-size: 1.4rem;

  opacity  :  0.9;}

.story-segment {
  padding: 80px 20px;
    background: #fff;
}

.story-grid {
	 gap: 3rem;
   grid-template-columns: 1.2fr 1fr;
  display:     grid;
  align-items: center;
}

.story-content h2  {

    font-size    :       2.5rem;
   color: #1a1a2e;
   margin-bottom: 1.5rem;
     }

.story-content p {
      margin-bottom: 1.5rem;
  color: #555;
    font-size: 1.05rem;
   line-height: 1.8;
} 

.story-visual img {
		 width: 100%;
	 border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.15);


}

.mission-block {


  padding :    80px 20px;
  background: #f8f9fa;
	
     }

.mission-block h2 {
  text-align: center;
	 font-size: 2.5rem;
   margin-bottom:       3rem;
          color    :        #1a1a2e; 
	
}

.values-layout
	{
   display: grid;
	  grid-template-columns: repeat(2, 1fr);
	    gap:        2rem;
}

.value-card {
  background: white;
	 padding: 2.5rem;
   border-radius: 10px;
  box-shadow: 0 5px 20px rgba(0,0,0,0.08);
 transition: transform 0.3s;
}

.value-card:hover  
  {


  transform: translateY(-5px);

}

.value-card h3 {
	   color: #667eea;
   margin-bottom: 1rem;
  font-size   :      1.6rem;

}

.value-card p 
 {

  line-height: 1.7;
   color: #666;}

.approach-detail-section


{
  padding: 80px 20px;
        background: white;
}


.approach-detail-section h2 {
   text-align: center;
      font-size: 2.5rem;
      margin-bottom    :      3rem;
  color: #1a1a2e;
}

.methodology-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
   display: grid;
}

.method-step {
   padding: 2rem;
   background  :   #f8f9fa;
   border-radius: 10px;
    position :    relative; 

}

.step-number {
   font-size: 3rem;
  font-weight:    bold;
    color: #667eea;
        opacity :   0.3;
  position    :        absolute;
	top   :1rem;
  right: 1.5rem;
}

.method-step h3 {
   font-size: 1.5rem;
  margin-bottom: 1rem;
   color: #1a1a2e;


}

.method-step p {
       color   :     #555;
	line-height: 1.7;
}


.team-philosophy {
  padding: 80px 20px;
	background: #f8f9fa;
}

.philosophy-layout
	{
   display: grid; 
  grid-template-columns: 1fr 1.3fr; 
    gap: 3rem; 
    align-items: center;
}

.philosophy-image img {


  width: 100%;
	border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);


}

.philosophy-text h2 {
    margin-bottom     :        1.5rem;
    font-size: 2.5rem;
  color   :      #1a1a2e;
}

.philosophy-text p {
   margin-bottom: 1.5rem;
    color   :       #555;
  font-size: 1.05rem;
  line-height     :        1.8;
}

.expertise-area{
	padding: 80px 20px;
    background: white;
}

.expertise-area h2 {
    text-align: center;
    font-size: 2.5rem;
  margin-bottom: 2rem;
        color: #1a1a2e;
}

.expertise-content	{
  max-width: 900px;
  margin     :     0 auto;
}

.expertise-content > p {
    color: #555;
	 font-size: 1.05rem;
    line-height: 1.8;
   margin-bottom: 2.5rem; 

}

.stats-showcase {
   display: grid;
  grid-template-columns: repeat(3, 1fr);
    gap  :       2rem;
  margin: 3rem 0;
}

.stat-item {
   text-align: center;
               padding: 2rem;
    background: #f8f9fa;
   border-radius: 10px;
}

.stat-number {
    font-size :    3rem;
                    font-weight  :        bold;
   color: #667eea;
  margin-bottom: 0.5rem; 

}

.stat-item p {


    font-size: 0.95rem;
        color: #666;
	}

.why-impact-section {
       padding: 80px 20px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	 color: white;
}

.why-impact-section h2		{
    text-align: center;
  font-size: 2.5rem;
   margin-bottom: 3rem;
}

.reasons-grid {
    margin: 0 auto;
  max-width: 1000px;
    display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

.reason-block {
  background: rgba(255,255,255,0.1);
    padding: 2rem;
  border-radius: 10px;
  backdrop-filter: blur(10px);
}

.reason-block h3 {
    margin-bottom: 1rem;
   font-size: 1.5rem;
}

.reason-block p {
  opacity: 0.95;
    line-height    : 1.7;
}

.final-cta-about {
   padding :   80px 20px;
    background: #1a1a2e;
      text-align: center;
        color: white;}

.cta-content-wrap {
   max-width: 700px;
  margin: 0 auto;
}

.cta-content-wrap h2 {
   font-size: 2.5rem;
    margin-bottom: 1.5rem;
}

.cta-content-wrap p {
  font-size    :1.2rem;
   margin-bottom: 2rem;
    opacity: 0.9;
}

.action-link-btn {

         display: inline-block;
	 background: #667eea;
   color: white;
    padding: 1.2rem 3rem;
	text-decoration: none;
	border-radius     :       50px;
	 font-weight: 600;
     transition: all 0.3s;
     }

.action-link-btn:hover {
  background: #764ba2;
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(102, 126, 234, 0.4);
}

.thankyou-hero		{

  margin-top: 70px;
	padding: 100px 20px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	text-align: center;
    color: white;
	

}

.thankyou-container
{
   max-width: 800px;
	margin  :0 auto;


}

.success-icon-wrapper {
		 margin-bottom: 2rem;

}

.success-checkmark {
  width: 80px;
   height: 80px;
       margin: 0 auto;
}

.checkmark-svg {
  width: 100%;
  height: 100%;


}

.checkmark-circle {
  stroke     :  #fff;
	stroke-width: 2;
  stroke-miterlimit  :  10;
    animation: fillCircle 0.4s ease-in-out forwards;

}

.checkmark-check {
	stroke :   #fff;
     stroke-linejoin: round;
   stroke-dashoffset: 48;
	animation: drawCheck 0.4s ease-in-out 0.4s forwards;
    stroke-linecap: round;
    stroke-dasharray: 48;
	stroke-width: 3;
}@keyframes fillCircle {
    to {
        stroke-dasharray: 157;
    }
}

@keyframes drawCheck {
    to {
        stroke-dashoffset: 0;
    }
}.thankyou-hero h1 {
 font-size: 3rem;
                    margin-bottom: 1.5rem;
}

.confirmation-message {
	font-size: 1.2rem;
    margin-bottom: 3rem;
  opacity: 0.95;
}

.next-steps-box {
  background: rgba(255,255,255,0.1);
    padding: 2.5rem;
    border-radius   :        15px;
  margin-bottom: 3rem;
  backdrop-filter: blur(10px);
}

.next-steps-box h2 {
    font-size: 2rem;
   margin-bottom   :       2rem;
}

.steps-list {
    text-align: left;
    max-width: 600px;
  margin: 0 auto;
}

.step-item {
    display: flex;
   gap: 1.5rem;
  margin-bottom  :        1.5rem;
    align-items: flex-start;
}

.step-num {
   background: white;
    color: #667eea;
   width: 40px;
  height: 40px;
        border-radius: 50%;
  display: flex;
    align-items: center;
   justify-content :center;
    font-weight: bold;
   flex-shrink: 0;
}

.step-item p  
  {
		 margin :  0;
  padding-top     :  0.5rem;}

.action-buttons{
        display: flex;
  gap: 1.5rem;
    justify-content: center;
               flex-wrap: wrap;
}

.btn-primary-ty {
		 background: white;
    color: #667eea;
    padding: 1rem 2.5rem;
   text-decoration: none;
               border-radius    :    50px;
  font-weight: 600;
	transition    :       all 0.3s;
	display: inline-block;
}

.btn-primary-ty:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.2);
}

.btn-secondary-ty {
	   background: transparent;
  color: white;
    padding: 1rem 2.5rem;
	text-decoration: none;
    border-radius: 50px;
   border: 2px solid white;
  font-weight: 600;
  transition: all 0.3s;
    display: inline-block; 
	}

.btn-secondary-ty:hover {
	  background: white; 
	  color: #667eea;


}

.additional-info-ty 
 {
	padding: 80px 20px;
   background: #f8f9fa;


}

.additional-info-ty h2 {
  text-align: center;
    font-size: 2.5rem;
  margin-bottom   : 3rem;
	color: #1a1a2e;
}

.info-cards-ty {
  gap: 2rem;
    display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.info-card-ty {
  background: white;
   padding: 2rem;
      border-radius: 10px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.08);
}

.info-card-ty h3 {
   color: #667eea;
  margin-bottom: 1rem;
	font-size: 1.4rem;
}


.info-card-ty p {
  color: #666;
  line-height: 1.7;
}

.testimonial-ty-section {
   padding: 80px 20px;
    background :white;
}

.testimonial-ty-section h2 {

	    text-align: center;
  font-size: 2.5rem;
    margin-bottom: 3rem;
   color: #1a1a2e;
}

.testimonial-ty-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
   max-width: 1000px;
    margin: 0 auto;
}

.testimonial-ty-card {
  background: #f8f9fa;
  padding     :       2.5rem;
      border-radius: 10px;
    position: relative;
}

.testimonial-text {


    color: #555;
    line-height: 1.8;
	font-size: 1.1rem;
  font-style  :    italic;
  margin-bottom: 1.5rem;
	} 

.testimonial-author {
	color: #667eea;
		font-weight: 600;
}@media (max-width: 768px) {
    .header-overlay h1 {
        font-size: 2.2rem;
    }
    
    .subtitle-text {
        font-size: 1.1rem;
    }
    
    .story-grid {
        grid-template-columns: 1fr;
    }
    
    .values-layout {
        grid-template-columns: 1fr;
    }
    
    .methodology-grid {
        grid-template-columns: 1fr;
    }
    
    .philosophy-layout {
        grid-template-columns: 1fr;
    }
    
    .stats-showcase {
        grid-template-columns: 1fr;
    }
    
    .reasons-grid {
        grid-template-columns: 1fr;
    }
    
    .info-cards-ty {
        grid-template-columns: 1fr;
    }
    
    .testimonial-ty-grid {
        grid-template-columns: 1fr;
    }
    
    .thankyou-hero h1 {
        font-size: 2rem;
    }
    
    .action-buttons {
        flex-direction: column;
    }
}

@media (max-width: 480px) {
    .page-header-block {
        padding: 80px 20px;
    }
    
    .header-overlay h1 {
        font-size: 1.8rem;
    }
}