/* RESET */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

/* BODY */

body{
 font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
background:#fafafa;
color:#333;
line-height:1.6;
}

/* HERO SECTION */

.hero{
height:90vh;
width:100%;
background:linear-gradient(rgba(0,0,0,0.55),rgba(0,0,0,0.55)),
url("https://media.istockphoto.com/id/2226298689/photo/professional-team-collaborating-during-a-meeting-in-a-modern-office-space.webp?a=1&b=1&s=612x612&w=0&k=20&c=DPU4QvFfRAB46o_hXiZ2wnuRpQwBaryvsw8Eh0jJbkU=");
background-size:cover;
background-position:center;
display:flex;
flex-direction:column;
justify-content:center;
color:white;
text-align:center;
}

/* HEADER */

header{
position:absolute;
top:0;
left:0;
width:100%;
z-index:100;
}

/* NAV BAR */

.nav{
width:100%;
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 60px;
}

/* LOGO */

.logo-section{
display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.logo{
width:300px;
height: 60px;
}

.tagline{
font-size:12px;
color:#eee;
letter-spacing:1px;
 margin-left: 60px;
 color:teal;
 font-size: 15px;
}

/* NAVIGATION */

nav{
display:flex;
align-items:center;
}

nav a{
margin-left:30px;
text-decoration:none;
color:orange;
font-weight:500;
transition:0.3s;
position:relative;
}

nav a:hover{
color:rgb(25, 160, 153);
}

nav a::after{
content:"";
position:absolute;
left:0;
bottom:-6px;
width:0;
height:2px;
background:#ff7a18;
transition:0.3s;
}

nav a:hover::after{
width:100%;
}

/* MENU BUTTON */

.menu-toggle{
display:none;
font-size:28px;
background:none;
border:none;
cursor:pointer;
color:white;
}

/* HERO TEXT */

.hero-content{
max-width:900px;
margin:auto;
padding:20px;
}

.hero-content h1{
font-size:48px;
margin-bottom:20px;
line-height:1.3;
}

.hero-content p{
font-size:18px;
color:#eee;
}

/* SERVICES SECTION */

.services{
max-width:1200px;
margin:80px auto;
padding:0 20px;
}

/* TITLE */

.section-title{
font-size:38px;
text-align:center;
margin-bottom:60px;
color:#111;
letter-spacing:1px;
}

/* GRID */

.services-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:25px;
}

/* CARD */

.service-card{
background:rgb(25, 160, 153);
padding:35px;
border-radius:10px;
border:1px solid #eee;
transition:all 0.3s ease;
position:relative;
overflow:hidden;
 display: flex;         
  align-items: center;  
  gap: 15px; 
}

.service-card:hover{
transform:translateY(-8px);
box-shadow:0 15px 35px rgba(0,0,0,0.08);
}
.service-card img {
    width: 50px;
  height: 50px;
  background: white;
  padding: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}
.service-card h4 {
   margin: 0;
  
}

/* NUMBER BADGE */

.service-number{
font-size:32px;
color:#ff7a18;
margin-bottom:15px;
}

/* TEXT */

.service-card h4{
font-size:17px;
font-weight:500;
color:#ffffff;
line-height:1.5;
}

/* ORANGE HOVER LINE */

.service-card::after{
content:"";
position:absolute;
left:0;
bottom:0;
width:0;
height:4px;
background:#ff7a18;
transition:width 0.3s ease;
}

.service-card:hover::after{
width:100%;
}

/* RESPONSIVE */

@media (max-width:768px){

.nav{
padding:20px 25px;
}

nav{
display:none;
flex-direction:column;
background:white;
position:absolute;
top:70px;
right:20px;
padding:20px;
border-radius:8px;
box-shadow:0 10px 25px rgba(0,0,0,0.1);
}

nav a{
margin:10px 0;
color:#333;
}

.menu-toggle{
display:block;
color: rgb(25, 160, 153);
}

.hero-content h1{
font-size:34px;
}

}
footer {
  background: rgb(13,109,105);
  color:white;
  text-align:center;
  padding:20px;
  margin-top:40px;
}

footer a {
  display:inline-block;
  margin:0 10px;
  vertical-align:middle;
  transition:transform 0.2s;
}

footer a img {
  width:30px;
  height:30px;
}

footer a:hover {
  transform:scale(1.1);
}

/* Smooth page fade in/out */
body {
  opacity: 0;
  transition: opacity 0.4s ease;
}
body.loaded {
  opacity: 1;
}
body.fade-out {
  opacity: 0;
}

/* Global smooth transition for interactive elements */
* {
  transition: all 0.3s ease-in-out;
}

/* Smooth hover for nav links */
nav a {
  transition: color 0.3s ease, transform 0.3s ease;
}

/* Smooth hover for footer icons */
footer a img {
  transition: transform 0.3s ease;
}

/* Smooth hover for service cards */
.service-card {
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}
