/* ============================================================
   home.css — styles unique to index.html
   Shared chrome (orbs, noise, brand, footer, language toggle,
   card glow) lives in base.css, which loads first.
   ============================================================ */

body {
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
overflow-x: hidden;
font-family: 'Outfit', sans-serif;
background-color: #0a0a0c;
color: #fff;
    
}

.brand {
position: relative;
z-index: 5;
text-align: center;
padding-top: max(30px, 5vh);
margin-bottom: max(30px, 4vh);
font-size: clamp(18px, 2.2vw, 24px);
font-weight: 700;
letter-spacing: 4px;
text-transform: uppercase;
background: linear-gradient(135deg, #ffffff, #a0a0b0);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
    
}

.main-content {
position: relative;
z-index: 5;
display: flex;
align-items: center;
justify-content: center;
gap: clamp(40px, 6vw, 100px);
width: 90%;
max-width: 1200px;
padding: 0 20px;
flex: 1;
    
}

.hero {
flex: 1;
max-width: 560px;
    
}

.hero .greeting {
font-size: clamp(16px, 1.8vw, 20px);
font-weight: 600;
color: rgba(255,255,255,0.85);
margin-bottom: 12px;
    
}

.hero h1 {
font-size: clamp(32px, 5vw, 56px);
font-weight: 900;
line-height: 1.1;
margin-bottom: 20px;
background: linear-gradient(180deg, #ffffff 0%, #c8c8d0 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
    
}

.hero .description {
font-size: clamp(14px, 1.4vw, 17px);
font-weight: 300;
line-height: 1.7;
color: rgba(255,255,255,0.65);
margin-bottom: 32px;
max-width: 480px;
    
}

.btn-resume {
display: inline-block;
padding: 16px 36px;
background: linear-gradient(135deg, #f5d77a, #e8c44a);
color: #1a1a1a;
font-family: 'Outfit', sans-serif;
font-size: 15px;
font-weight: 700;
letter-spacing: 1px;
text-decoration: none;
border-radius: 12px;
border: none;
cursor: pointer;
transition: all 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
box-shadow: 0 4px 20px rgba(245, 215, 122, 0.25);
    
}

.btn-resume:hover {
transform: translateY(-3px) scale(1.03);
box-shadow: 0 8px 35px rgba(245, 215, 122, 0.45);
    
}

.btn-resume:active { transform: translateY(0) scale(0.98); }

.nav-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
flex-shrink: 0;
    
}

.nav-card {
width: clamp(140px, 14vw, 190px);
height: clamp(140px, 14vw, 190px);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 16px;
background: rgba(255, 255, 255, 0.03);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 20px;
text-decoration: none;
color: rgba(255,255,255,0.8);
transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
cursor: pointer;
    
}

.nav-card:hover {
background: rgba(255, 255, 255, 0.07);
border-color: rgba(255, 255, 255, 0.22);
transform: translateY(-6px);
box-shadow: 0 20px 50px rgba(0,0,0,0.4);
    
}

.nav-card .card-icon {
width: 40px;
height: 40px;
stroke: rgba(255,255,255,0.6);
fill: none;
stroke-width: 1.5;
transition: stroke 0.3s, transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);

}

.nav-card:hover .card-icon {
stroke: rgba(255,255,255,0.95);
transform: translateY(-4px) scale(1.08);
}

.nav-card .card-label {
font-size: clamp(13px, 1.2vw, 15px);
font-weight: 400;
letter-spacing: 0.5px;
    
}

.social-footer {
position: relative;
z-index: 5;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 14px;
padding: max(30px, 5vh) 0;
border-top: none;
max-width: none;
    
}

.footer-icons { display: flex; align-items: center; gap: 12px; margin-left: 0; }

@media (max-width: 860px) {
.main-content {
  flex-direction: column;
  text-align: center;
  gap: 40px;
  padding: 20px;
}

.hero {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.hero .description {
  text-align: center;
}

.nav-grid {
  justify-content: center;
}

.nav-card {
  width: clamp(130px, 38vw, 170px);
  height: clamp(130px, 38vw, 170px);
}
    
}

@media (max-width: 480px) {
.nav-card {
  width: clamp(120px, 40vw, 150px);
  height: clamp(120px, 40vw, 150px);
}
    
}

@keyframes fade-up {
from { opacity: 0; transform: translateY(30px); }
to   { opacity: 1; transform: none; }
    
}

.hero { animation: fade-up 0.8s 0.2s both ease-out; }

.nav-grid { animation: fade-up 0.8s 0.45s both ease-out; }

.social-footer { animation: fade-up 0.8s 0.65s both ease-out; }

@media (max-width: 600px) {
.social-footer { padding: 20px 16px; }
.footer-credit { font-size: 11px; }
    
}
