*{margin:0;padding:0;box-sizing:border-box}

:root{
--primary:#1a1a2e;
--secondary:#e74c3c;
--gold:#f39c12;
--dark:#0f0f1e;
--text:#333;
}

body{
font-family:'Segoe UI',Tahoma,Verdana,sans-serif;
line-height:1.7;
color:var(--text);
background:#fff;
}

/* NAV */
nav{
    position:fixed;
    width:100%;
    height:80px;                 /* fixed header height */
    background:rgba(11,15,20,.98);
    backdrop-filter:blur(20px);
    z-index:1000;
    box-shadow:0 2px 30px rgba(212,175,55,.25);
}

.nav-container{
    max-width:1400px;
    height:100%;
    margin:auto;
    display:flex;
    align-items:center;          /* vertical centering */
    justify-content:space-between;
    padding:0 2rem;              /* remove top/bottom padding */
}



.nav-links{
display:flex;
gap:2.5rem;
list-style:none;
}

.nav-links a{
color:#fff;
text-decoration:none;
font-weight:600;
}

/* HEADER */
.header{
padding-top:140px;
padding-bottom:5rem;
background:linear-gradient(135deg,var(--dark),var(--primary));
text-align:center;
}

.header h1{
font-size:3.5rem;
color:#fff;
}

.header span{color:var(--secondary)}

.header p{
margin-top:1rem;
font-size:1.4rem;
color:rgba(255,255,255,.85);
}

/* SECTIONS */
section{padding:6rem 2rem}
.container{max-width:1400px;margin:auto}

.section-title{
font-size:3rem;
text-align:center;
background:linear-gradient(135deg,var(--primary),var(--secondary));
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
margin-bottom:.8rem;
}

.section-subtitle{
text-align:center;
color:#666;
font-size:1.25rem;
margin-bottom:4rem;
}

/* CONTENT */
.about-content{
display:grid;
grid-template-columns:1fr 1fr;
gap:4rem;
}

.about-text p{
margin-bottom:1.5rem;
font-size:1.1rem;
color:#555;
}

.philosophy-box{
background:linear-gradient(135deg,var(--primary),var(--dark));
color:#fff;
padding:3rem;
border-radius:20px;
}

/* CARDS */
.grid-2{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:3rem;
}

.card{
background:#fff;
padding:3rem;
border-radius:20px;
box-shadow:0 10px 40px rgba(0,0,0,.1);
border-left:5px solid var(--secondary);
}

/* SERVICES */
.services{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:3rem;
}

.service{
background:#fff;
padding:3rem;
border-radius:25px;
box-shadow:0 10px 40px rgba(0,0,0,.08);
}

/* CTA */
.cta{
text-align:center;
}

.cta a{
display:inline-block;
margin-top:2rem;
padding:1.2rem 3.5rem;
background:linear-gradient(135deg,var(--secondary),#c0392b);
color:#fff;
border-radius:50px;
font-weight:bold;
text-decoration:none;
}

/* FOOTER */
footer{
background:var(--dark);
color:#fff;
text-align:center;
padding:3rem;
}

.footer-tagline{
color:var(--secondary);
font-style:italic;
margin-top:.5rem;
}

/* ===== ANIMATION ===== */
.reveal{
opacity:0;
transform:translateY(40px);
transition:all .8s ease;
}

.reveal.active{
opacity:1;
transform:translateY(0);
}

/* STAGGER */
.reveal.delay-1{transition-delay:.1s}
.reveal.delay-2{transition-delay:.2s}
.reveal.delay-3{transition-delay:.3s}
.reveal.delay-4{transition-delay:.4s}

/* RESPONSIVE */
@media(max-width:900px){
.about-content,.services,.grid-2{grid-template-columns:1fr}
.nav-links{display:none}
.header h1{font-size:2.5rem}
}

 .logo{
    display:flex;
    align-items:center;
    height:100%;
}

.logo img{
    height:100%;                 /* fill header height */
    max-height:70px;             /* safety limit */
    width:auto;
    display:block;
    object-fit:contain;
}

/* Slight premium hover */
.logo img:hover {
    transform: scale(1.04);
}
.logo img {
    border-radius: 6px;
}
.logo img {
    filter: brightness(1.1) contrast(1.05);
}
nav.scrolled .logo img {
    height: 42px;
}
@media (max-width: 768px) {
    .logo img {
        height: 40px;
    }
}

.nav-tagline{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    font-size: 1.15rem;
    font-weight: 600;
    letter-spacing: 1px;
    white-space: nowrap;

    /* Gold highlight */
    background: linear-gradient(90deg,#f7e7a1,#d4af37,#b8962e);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    text-shadow: 0 2px 10px rgba(212,175,55,.35);
}

/* Slight fade on scroll */
nav.scrolled .nav-tagline{
    opacity: 0.8;
    font-size: 1.05rem;
}