html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
         padding: 0;
    border: 0;
	 font-size: 100%;
  font: inherit;
   vertical-align   :       baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
   line-height     :     1;
}



ol, ul{

	    list-style :    none;


}

blockquote, q {
   quotes: none;
}

blockquote::before, blockquote::after,
q::before, q::after {
  content: '';
  content: none;
}

table {
  border-collapse     :    collapse;
    border-spacing: 0;}

input, textarea, button, select {
    font-family: inherit;

  font-size: inherit;
}

button	{
  cursor: pointer;
}

a {
	     text-decoration :  none;
    color:    inherit;
	}

img {
	  max-width: 100%;
	height: auto;
   display: block;
	}

.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;
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: translateX(30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.7;
    }
}.form-group input::placeholder,
.form-group textarea::placeholder,
.form-group select::placeholder {
   color: #aaa; 
  opacity: 0.8;
}

.form-group input:invalid,
.form-group textarea:invalid,
.form-group select:invalid {

	border-color: #e74c3c;

}

.form-group input:valid,
.form-group textarea:valid,
.form-group select:valid {
     border-color: #27ae60;} 

.service-detail:nth-child(1) {
  animation: slideInLeft 0.6s ease-out;
}

.service-detail:nth-child(2) {


  animation: slideInRight 0.6s ease-out;

}

.service-detail:nth-child(3) {
	animation: slideInLeft 0.6s ease-out 0.1s both;
}

.service-detail:nth-child(4) {
   animation: slideInRight 0.6s ease-out 0.1s both;
}

.service-detail:nth-child(5) 
 {
    animation: slideInLeft 0.6s ease-out 0.2s both;
}

.service-detail:nth-child(6){
     animation: slideInRight 0.6s ease-out 0.2s both;
     }

.benefit {
  position: relative;
   overflow: hidden;


}

.benefit::before {
  content: '';
  position: absolute;
   top: 0;
   left: -100%;
    width: 100%;
    height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transition: left 0.6s ease;
}

.benefit:hover::before {
  left: 100%;
}

.step {
	 animation: fadeIn 0.8s ease-out;
}

.step:hover .step-number {

			 animation: pulse 1.5s ease-in-out infinite;
	


}
	/* Colors and backgrounds */

/* Custom modifications */
.success-checkmark {

    animation:       slideUp 0.6s ease-out;
     }

.confirmation-box {
  animation: slideUp 0.8s ease-out 0.2s both;
}

.next-steps {
  animation: slideUp 0.8s ease-out 0.4s both;
}

.action-buttons {
  animation: slideUp 0.8s ease-out 0.6s both;
} 
@media (max-width: 1024px) {
    .service-detail {
        padding: 2.5rem;
    }

    .service-benefits {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .service-detail {
        padding: 1.8rem;
        border-left: 3px solid #e8a537;
    }

    .service-benefits {
        grid-template-columns: 1fr;
    }

    .benefit {
        padding: 1.2rem;
    }

    .process-steps {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }

    .step {
        padding: 1.8rem;
    }

    .step-number {
        width: 45px;
        height: 45px;
        font-size: 1.2rem;
    }
}::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: #2a5caa;
   border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
                    background: #1e3f5a;
}

.cta-button:focus,
.btn:focus,
.nav-link:focus {
	  outline   :2px solid #2a5caa;
	outline-offset: 2px;}

.form-submit:disabled {
	  opacity: 0.6;
   cursor  :        not-allowed;
  transform: none;

}

h1, h2, h3, h4, h5, h6 {
  letter-spacing  :-0.5px;
}

p {
	  word-spacing: 0.05em;
}

.btn-group {
  display: flex;
    gap: 1rem;
 flex-wrap: wrap;
}

.btn-group .btn {
    flex   :     1;
    min-width     : 150px;
} 

.service-detail,
.step,
.confirmation-box {


  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.page-hero::after {
  content: '';
  position:    absolute;
    top: 0;
               left: 0;
   right: 0;
    bottom :     0;
  background: radial-gradient(circle at 20% 50%, rgba(232, 165, 55, 0.1) 0%, transparent 50%);
	pointer-events: none;
	
}

a:not(.btn):not(.nav-link):not(.cta-button):not(.footer-links a) {
   position: relative;
  transition: color 0.3s ease;
}

a:not(.btn):not(.nav-link):not(.cta-button):not(.footer-links a)::after {
  content: '';
   position     :  absolute;
   bottom: -2px;
	left  :  0;
	width: 0;
    height: 1px;
       background: #2a5caa;
   transition: width 0.3s ease;
}

a:not(.btn):not(.nav-link):not(.cta-button):not(.footer-links a):hover::after {
    width: 100%;
}