
:root {
  --navy: #0E2E4F;
  --cream: #F5E4C2;
  --sage: #D8DCC8;
  --brown: #A4673A;
  --gold: #D6B16D;
  --white: #FFFFFF;
  --light-gray: #F8F8F8;
  --navy-light: rgba(14,46,79,0.08);
  --gold-light: rgba(214,177,109,0.15);
  --font-display: 'Playfair Display', serif;
  --font-body: 'Inter', sans-serif;
  --radius: 20px;
  --radius-sm: 12px;
  --shadow: 0 20px 60px rgba(14,46,79,0.12);
  --shadow-gold: 0 0 40px rgba(214,177,109,0.25);
  --transition: all 0.4s cubic-bezier(0.25,0.8,0.25,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;font-size:16px;width:100%;max-width:100vw;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
body{font-family:var(--font-body);background:var(--white);color:var(--navy);line-height:1.7;width:100%;max-width:100vw;overflow-x:hidden;position:relative;}
img,svg{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;}
.favicon {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    flex-shrink: 0;
}
/* PROGRESS BAR */
#progress-bar{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--brown));z-index:9999;width:0%;transition:width 0.1s linear;}

/* NAVBAR */
.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 5%;height:70px;display:flex;align-items:center;justify-content:space-between;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:rgba(255,255,255,0.85);border-bottom:1px solid rgba(214,177,109,0.2);transition:var(--transition);}
.navbar.scrolled{background:rgba(255,255,255,0.97);box-shadow:0 4px 30px rgba(14,46,79,0.08);}
.nav-logo{font-family:var(--font-display);font-weight:700;font-size:1.4rem;color:var(--navy);display:flex;align-items:center;gap:8px;}
.nav-logo span{color:var(--gold);}
.nav-links{display:flex;align-items:center;gap:1.5rem;}
.nav-links a{font-size:0.82rem;font-weight:500;color:var(--navy);opacity:0.7;transition:var(--transition);position:relative;letter-spacing:0.02em;}
.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;width:0;height:2px;background:var(--gold);transition:width 0.3s ease;border-radius:2px;}
.nav-links a:hover,.nav-links a.active{opacity:1;}
.nav-links a:hover::after,.nav-links a.active::after{width:100%;}
.nav-cta{background:var(--navy)!important;color:var(--white)!important;padding:8px 18px!important;border-radius:50px!important;opacity:1!important;font-weight:500!important;}
.nav-cta:hover{background:var(--gold)!important;color:var(--navy)!important;}
.nav-cta::after{display:none!important;}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:5px;}
.hamburger span{width:24px;height:2px;background:var(--navy);border-radius:2px;transition:var(--transition);}
.mobile-menu{display:none;position:fixed;top:70px;left:0;right:0;background:rgba(255,255,255,0.98);backdrop-filter:blur(20px);padding:2rem;flex-direction:column;gap:1rem;z-index:999;border-bottom:1px solid var(--sage);box-shadow:0 20px 40px rgba(14,46,79,0.1);}
.mobile-menu.open{display:flex;}
.mobile-menu a{font-size:1rem;font-weight:500;color:var(--navy);padding:0.5rem 0;border-bottom:1px solid var(--sage);}

/* SHARED */
.section{padding:100px 5%;}
.section-label{font-size:0.75rem;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:0.75rem;}
.section-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--navy);line-height:1.2;margin-bottom:1rem;}
.section-desc{font-size:1rem;color:rgba(14,46,79,0.65);max-width:600px;line-height:1.8;}
.section-header{text-align:center;margin-bottom:4rem;}
.section-header .section-desc{margin:0 auto;}
.divider{width:60px;height:3px;background:linear-gradient(90deg,var(--gold),var(--brown));border-radius:2px;margin:1rem auto 0;}
.divider.left{margin-left:0;}

/* BUTTONS */
.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:var(--navy);color:var(--white);border-radius:50px;font-weight:600;font-size:0.9rem;transition:var(--transition);cursor:pointer;border:none;}
.btn-primary:hover{background:var(--gold);color:var(--navy);transform:translateY(-2px);box-shadow:0 10px 30px rgba(214,177,109,0.4);}
.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;border:2px solid var(--navy);color:var(--navy);border-radius:50px;font-weight:600;font-size:0.9rem;transition:var(--transition);cursor:pointer;background:transparent;}
.btn-secondary:hover{background:var(--navy);color:var(--white);transform:translateY(-2px);}
.btn-whatsapp{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;background:#25D366;color:var(--white);border-radius:50px;font-weight:600;font-size:0.9rem;transition:var(--transition);cursor:pointer;border:none;}
.btn-whatsapp:hover{background:#20BA5A;transform:translateY(-2px);box-shadow:0 10px 30px rgba(37,211,102,0.35);}

/* HERO */
#home{min-height:100vh;display:flex;align-items:center;padding:100px 5% 60px;position:relative;overflow:hidden;background:linear-gradient(135deg,#faf6ef 0%,#F5E4C2 40%,#ede0cc 100%);}
.hero-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.hero-bg svg{position:absolute;opacity:0.07;}
.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;max-width:1200px;margin:0 auto;width:100%;position:relative;z-index:2;}
.hero-text .greeting{font-size:0.9rem;font-weight:500;color:var(--brown);letter-spacing:0.15em;text-transform:uppercase;margin-bottom:0.5rem;display:flex;align-items:center;gap:8px;}
.hero-text .greeting::before{content:'';width:30px;height:2px;background:var(--gold);border-radius:2px;}
.hero-name{font-family:var(--font-display);font-size:clamp(2.8rem,6vw,5rem);font-weight:800;color:var(--navy);line-height:1.05;margin-bottom:0.5rem;}
.hero-role{font-family:var(--font-display);font-size:clamp(1rem,2vw,1.4rem);color:var(--brown);font-weight:500;margin-bottom:1.5rem;min-height:2rem;}
.typing-cursor{display:inline-block;width:2px;height:1.2em;background:var(--gold);margin-left:2px;animation:blink 1s infinite;vertical-align:middle;}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:0;}}
.hero-bio{font-size:1rem;color:rgba(14,46,79,0.7);line-height:1.8;max-width:480px;margin-bottom:2.5rem;}
.hero-buttons{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:2.5rem;}
.hero-socials{display:flex;gap:12px;}
.social-icon{width:42px;height:42px;border-radius:50%;background:var(--white);display:flex;align-items:center;justify-content:center;color:var(--navy);box-shadow:0 4px 15px rgba(14,46,79,0.1);transition:var(--transition);cursor:pointer;}
.social-icon:hover{background:var(--navy);color:var(--white);transform:translateY(-3px);}
.social-icon svg{width:16px;height:16px;flex-shrink:0;}
.hero-image-wrap{display:flex;justify-content:center;align-items:center;position:relative;}
.hero-image-outer{position:relative;width:clamp(260px,38vw,420px);}
.hero-image-bg{position:absolute;inset:-20px;border-radius:50%;background:radial-gradient(circle,rgba(214,177,109,0.3) 0%,transparent 70%);animation:pulse-glow 3s ease-in-out infinite;}
@keyframes pulse-glow{0%,100%{transform:scale(1);opacity:0.8;}50%{transform:scale(1.05);opacity:1;}}
.hero-image-ring{position:absolute;inset:-12px;border-radius:50%;border:2px solid rgba(214,177,109,0.4);animation:rotate-ring 12s linear infinite;}
.hero-image-ring::before{content:'';position:absolute;top:-6px;left:50%;width:12px;height:12px;background:var(--gold);border-radius:50%;transform:translateX(-50%);}
@keyframes rotate-ring{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
.hero-image-container{width:100%;padding-bottom:110%;border-radius:50% 50% 50% 50%/60% 60% 40% 40%;overflow:hidden;position:relative;box-shadow:0 30px 80px rgba(14,46,79,0.25),var(--shadow-gold);animation:float 4s ease-in-out infinite;border:4px solid rgba(255,255,255,0.8);}
@keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-15px);}}
.hero-image-container img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;}
.hero-badge{position:absolute;background:var(--white);border-radius:var(--radius-sm);padding:10px 16px;box-shadow:var(--shadow);display:flex;align-items:center;gap:8px;font-size:0.8rem;font-weight:600;color:var(--navy);animation:float 4s ease-in-out infinite;}
.hero-badge-1{top:10%;right:-20px;animation-delay:0.5s;}
.hero-badge-2{bottom:20%;left:-20px;animation-delay:1s;}
.badge-dot{width:8px;height:8px;border-radius:50%;background:var(--gold);flex-shrink:0;}
.badge-dot.green{background:#25D366;}

/* Science BG decorations */
.sci-dna{position:absolute;right:-30px;top:40px;width:320px;opacity:0.07;}
.sci-molecule{position:absolute;left:3%;bottom:8%;width:160px;opacity:0.07;}
.sci-cell{position:absolute;left:45%;top:5%;width:120px;opacity:0.05;}

/* STATS */
.stats-bar{background:var(--navy);padding:2rem 5%;}
.stats-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;}
.stat-item{text-align:center;padding:1rem;border-right:1px solid rgba(255,255,255,0.1);}
.stat-item:last-child{border-right:none;}
.stat-num{font-family:var(--font-display);font-size:2.2rem;font-weight:800;color:var(--gold);line-height:1;margin-bottom:0.3rem;}
.stat-label{font-size:0.7rem;color:rgba(255,255,255,0.6);letter-spacing:0.05em;text-transform:uppercase;}

/* ABOUT */
#about{background:var(--white);}
.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:start;max-width:1200px;margin:0 auto;}
.about-image-wrap{position:relative;}
.about-image-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:3/4;}
.about-image-card img{width:100%;height:100%;object-fit:cover;object-position:center top;}
.about-decorbox{position:absolute;bottom:-20px;right:-20px;width:80px;height:80px;background:var(--gold);border-radius:var(--radius-sm);z-index:-1;}
.about-decorbox2{position:absolute;top:-15px;left:-15px;width:50px;height:50px;border:3px solid var(--sage);border-radius:50%;}
.quick-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem;margin-top:2rem;}
.info-row{display:flex;align-items:flex-start;gap:10px;padding:10px;background:var(--light-gray);border-radius:var(--radius-sm);}
.info-icon{width:32px;height:32px;border-radius:8px;background:var(--navy-light);display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0;margin-top:2px;}
.info-label{font-size:0.7rem;color:var(--gold);font-weight:600;text-transform:uppercase;letter-spacing:0.05em;}
.info-val{font-size:0.85rem;color:var(--navy);font-weight:500;margin-top:1px;}

/* EDUCATION */
#education{background:var(--light-gray);}
.edu-timeline{max-width:750px;margin:0 auto;position:relative;}
.edu-timeline::before{content:'';position:absolute;left:30px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--gold),var(--sage));}
.edu-item{display:flex;gap:2rem;margin-bottom:3rem;position:relative;}
.edu-dot{width:62px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;}
.edu-dot-circle{width:20px;height:20px;border-radius:50%;background:var(--gold);border:3px solid var(--white);box-shadow:0 0 0 3px var(--gold);position:relative;z-index:1;margin-top:6px;}
.edu-year{font-size:0.7rem;font-weight:700;color:var(--brown);margin-top:6px;letter-spacing:0.05em;}
.edu-card{background:var(--white);border-radius:var(--radius);padding:1.8rem 2rem;box-shadow:0 4px 25px rgba(14,46,79,0.07);flex:1;border-left:3px solid var(--gold);transition:var(--transition);}
.edu-card:hover{transform:translateX(8px);box-shadow:var(--shadow);}
.edu-degree{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--navy);margin-bottom:0.3rem;}
.edu-school{font-size:0.9rem;color:var(--brown);font-weight:500;margin-bottom:0.5rem;}
.edu-badge{display:inline-block;background:var(--gold-light);color:var(--brown);font-size:0.7rem;font-weight:600;padding:3px 10px;border-radius:50px;letter-spacing:0.05em;}
.edu-badge.current{background:rgba(37,211,102,0.12);color:#1a8a40;}

/* EXPERIENCE */
#experience{background:var(--white);}
.exp-timeline{max-width:900px;margin:0 auto;position:relative;}
.exp-timeline::before{content:'';position:absolute;left:20px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--navy),var(--sage));}
.exp-item{display:flex;gap:2rem;margin-bottom:2.5rem;}
.exp-dot{width:42px;flex-shrink:0;padding-top:8px;}
.exp-dot-circle{width:16px;height:16px;border-radius:50%;background:var(--navy);border:3px solid var(--white);box-shadow:0 0 0 3px var(--navy);z-index:1;margin-left:12px;transition:var(--transition);}
.exp-item:hover .exp-dot-circle{background:var(--gold);box-shadow:0 0 0 3px var(--gold);}
.exp-card{background:var(--light-gray);border-radius:var(--radius);padding:1.8rem 2rem;flex:1;transition:var(--transition);border:1px solid transparent;}
.exp-card:hover{background:var(--white);box-shadow:var(--shadow);border-color:rgba(214,177,109,0.3);transform:translateY(-3px);}
.exp-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:0.5rem;margin-bottom:0.5rem;}
.exp-org{font-family:var(--font-display);font-weight:700;font-size:1.1rem;color:var(--navy);}
.exp-date{font-size:0.75rem;color:var(--brown);font-weight:600;letter-spacing:0.05em;}
.exp-role{color:var(--gold);font-weight:600;font-size:0.9rem;margin-bottom:0.6rem;}
.exp-desc{font-size:0.9rem;color:rgba(14,46,79,0.7);line-height:1.7;}

/* ORGANIZATIONS */
#organizations{background:var(--light-gray);}
.org-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;}
.org-card{background:var(--white);border-radius:var(--radius);padding:2rem;box-shadow:0 4px 20px rgba(14,46,79,0.06);transition:var(--transition);border:1px solid transparent;position:relative;overflow:hidden;}
.org-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--brown));transform:scaleX(0);transition:transform 0.3s ease;transform-origin:left;}
.org-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:rgba(214,177,109,0.2);}
.org-card:hover::before{transform:scaleX(1);}
.org-logo{width:56px;height:56px;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:1.2rem;display:flex;align-items:center;justify-content:center;}
.org-logo img{width:100%;height:100%;object-fit:contain;}
.org-name{font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--navy);margin-bottom:0.3rem;}
.org-position{font-size:0.8rem;color:var(--gold);font-weight:600;margin-bottom:0.3rem;}
.org-duration{font-size:0.75rem;color:rgba(14,46,79,0.5);margin-bottom:0.8rem;}
.org-desc{font-size:0.85rem;color:rgba(14,46,79,0.65);line-height:1.6;}

/* ACHIEVEMENTS */
#achievements{background:var(--white);}
.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;}
.ach-card{background:var(--light-gray);border-radius:var(--radius);padding:2rem;transition:var(--transition);display:flex;gap:1.2rem;border:1px solid transparent;}
.ach-card:hover{background:var(--white);box-shadow:var(--shadow);border-color:rgba(214,177,109,0.25);transform:translateY(-4px);}
.ach-icon{width:52px;height:52px;border-radius:var(--radius-sm);background:var(--gold-light);display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0;}
.ach-title{font-family:var(--font-display);font-weight:700;font-size:0.95rem;color:var(--navy);margin-bottom:0.3rem;line-height:1.3;}
.ach-org{font-size:0.8rem;color:var(--brown);font-weight:500;margin-bottom:0.3rem;}
.ach-year{font-size:0.75rem;color:rgba(14,46,79,0.5);}

/* CERTIFICATES */
#certificates{background:var(--navy);}
#certificates .section-label{color:rgba(214,177,109,0.8);}
#certificates .section-title{color:var(--white);}
#certificates .section-desc{color:rgba(255,255,255,0.6);margin:0.5rem auto 0;}
#certificates .divider{background:linear-gradient(90deg,var(--gold),var(--cream));}
.cert-slider-wrap{overflow:hidden;position:relative;margin:0 -5%;padding:1rem 0;max-width:100vw;}
.cert-track{display:flex;gap:1.5rem;animation:slide-left 60s linear infinite;width:max-content;padding:1rem 2rem;}
.cert-track:hover{animation-play-state:paused;}
@keyframes slide-left{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.cert-card{width:280px;flex-shrink:0;background:rgba(255,255,255,0.06);border:1px solid rgba(214,177,109,0.2);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:var(--transition);}
.cert-card:hover{transform:translateY(-8px);border-color:var(--gold);box-shadow:0 20px 50px rgba(0,0,0,0.3),var(--shadow-gold);}
.cert-img-wrap{height:180px;position:relative;overflow:hidden;background:#0a1628;}
.cert-img-wrap img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform 0.4s ease;}
.cert-card:hover .cert-img-wrap img{transform:scale(1.05);}
.cert-info{padding:1.2rem 1.4rem;}
.cert-issuer{font-size:0.68rem;color:var(--gold);font-weight:600;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:0.4rem;}
.cert-name{font-family:var(--font-display);font-weight:700;font-size:0.9rem;color:var(--white);line-height:1.3;}
.cert-overlay{position:absolute;inset:0;background:rgba(14,46,79,0.7);display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition);backdrop-filter:blur(3px);}
.cert-card:hover .cert-overlay{opacity:1;}
.cert-overlay-text{color:var(--white);font-weight:700;font-size:0.9rem;letter-spacing:0.05em;background:rgba(214,177,109,0.3);padding:8px 16px;border-radius:50px;border:1px solid rgba(214,177,109,0.5);}

/* Modal */
.cert-modal{position:fixed;inset:0;background:rgba(14,46,79,0.9);backdrop-filter:blur(20px);z-index:9998;display:flex;align-items:center;justify-content:center;padding:2rem;opacity:0;pointer-events:none;transition:opacity 0.4s ease;}
.cert-modal.open{opacity:1;pointer-events:all;}
.cert-modal-inner{background:var(--white);border-radius:var(--radius);max-width:820px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 40px 100px rgba(0,0,0,0.5);transform:scale(0.9);transition:transform 0.4s cubic-bezier(0.34,1.56,0.64,1);position:relative;}
.cert-modal.open .cert-modal-inner{transform:scale(1);}
.cert-modal-img{width:100%;height:340px;overflow:hidden;border-radius:var(--radius) var(--radius) 0 0;background:#0a1628;}
.cert-modal-img img{width:100%;height:100%;object-fit:contain;background:#fff;}
.cert-modal-body{padding:2rem;}
.cert-modal-issuer{font-size:0.75rem;color:var(--gold);font-weight:700;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:0.5rem;}
.cert-modal-title{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--navy);margin-bottom:1.5rem;}
.cert-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,0.9);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--navy);transition:var(--transition);z-index:1;font-weight:700;}
.cert-close:hover{background:var(--navy);color:var(--white);}

/* SKILLS */
#skills{background:var(--light-gray);}
.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem 5rem;max-width:900px;margin:0 auto;}
.skill-item{margin-bottom:1rem;}
.skill-header{display:flex;justify-content:space-between;margin-bottom:0.5rem;}
.skill-name{font-weight:600;font-size:0.9rem;color:var(--navy);}
.skill-pct{font-weight:700;font-size:0.85rem;color:var(--gold);}
.skill-bar{height:6px;background:rgba(14,46,79,0.1);border-radius:3px;overflow:hidden;}
.skill-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--navy),var(--gold));width:0%;transition:width 1.5s cubic-bezier(0.4,0,0.2,1);}

/* CONTACT */
#contact{background:var(--cream);}
.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:4rem;max-width:1100px;margin:0 auto;align-items:start;}
.contact-info-card{background:var(--navy);border-radius:var(--radius);padding:2.5rem;color:var(--white);}
.contact-info-card .section-label{color:rgba(214,177,109,0.8);}
.contact-info-card h3{font-family:var(--font-display);font-size:1.8rem;font-weight:700;margin-bottom:1rem;}
.contact-info-card p{font-size:0.9rem;color:rgba(255,255,255,0.65);line-height:1.7;margin-bottom:2rem;}
.contact-link{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem;padding:0.8rem 1rem;background:rgba(255,255,255,0.06);border-radius:var(--radius-sm);transition:var(--transition);}
.contact-link:hover{background:rgba(255,255,255,0.12);}
.contact-link-icon{width:40px;height:40px;border-radius:10px;background:rgba(214,177,109,0.2);display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--gold);flex-shrink:0;}
.contact-link-text .label{font-size:0.7rem;color:rgba(255,255,255,0.45);margin-bottom:2px;}
.contact-link-text .val{font-size:0.9rem;color:var(--white);font-weight:500;}
.contact-buttons{display:flex;gap:0.75rem;margin-top:1.5rem;flex-wrap:wrap;}
.contact-form-card{background:var(--white);border-radius:var(--radius);padding:2.5rem;box-shadow:var(--shadow);}
.contact-form-card h3{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--navy);margin-bottom:1.5rem;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:0;}
.form-group{display:flex;flex-direction:column;gap:0.4rem;margin-bottom:1rem;}
.form-group label{font-size:0.8rem;font-weight:600;color:var(--navy);letter-spacing:0.05em;}
.form-group input,.form-group textarea{padding:12px 16px;border:1.5px solid rgba(14,46,79,0.12);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:0.9rem;color:var(--navy);background:var(--light-gray);transition:border-color 0.3s ease;outline:none;resize:vertical;}
.form-group input:focus,.form-group textarea:focus{border-color:var(--gold);background:var(--white);}
.form-group textarea{min-height:120px;}
.btn-send{width:100%;padding:14px;background:var(--navy);color:var(--white);border:none;border-radius:50px;font-weight:600;font-size:0.95rem;cursor:pointer;transition:var(--transition);}
.btn-send:hover{background:var(--gold);color:var(--navy);}

/* FOOTER */
footer{background:var(--navy);padding:4rem 5% 2rem;color:rgba(255,255,255,0.6);}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:3rem;max-width:1200px;margin:0 auto 3rem;}
.footer-brand p{font-size:0.85rem;line-height:1.7;max-width:280px;margin-top:0.5rem;}
.footer-col h4{color:var(--white);font-weight:600;font-size:0.85rem;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:1.2rem;}
.footer-col a{display:block;font-size:0.85rem;color:rgba(255,255,255,0.55);margin-bottom:0.6rem;transition:var(--transition);}
.footer-col a:hover{color:var(--gold);padding-left:4px;}
.footer-socials{display:flex;gap:10px;margin-top:1.5rem;}
.footer-social{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;font-size:0.75rem;color:rgba(255,255,255,0.6);transition:var(--transition);cursor:pointer;}
.footer-social svg{width:14px;height:14px;}
.footer-social:hover{background:var(--gold);color:var(--navy);}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.08);padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;font-size:0.8rem;gap:1rem;flex-wrap:wrap;}
.footer-credit a{color:var(--gold);font-weight:700;position:relative;transition:var(--transition);}
.footer-credit a::after{content:'';position:absolute;bottom:-1px;left:0;width:0;height:1px;background:var(--gold);transition:width 0.3s ease;}
.footer-credit a:hover::after{width:100%;}
.footer-credit a:hover{color:var(--cream);}
#back-top{position:fixed;bottom:2rem;right:2rem;width:48px;height:48px;border-radius:50%;background:var(--navy);color:var(--white);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;box-shadow:0 8px 25px rgba(14,46,79,0.3);transition:var(--transition);z-index:999;opacity:0;transform:translateY(20px);}
#back-top.visible{opacity:1;transform:translateY(0);}
#back-top:hover{background:var(--gold);color:var(--navy);transform:translateY(-3px);}

/* RESPONSIVE */
@media(max-width:768px){
  .navbar{padding:0 4%;height:64px;}
  .nav-links{display:none;}
  .hamburger{display:flex;}
  .mobile-menu{top:64px;}
  #home{padding:90px 5% 50px;min-height:auto;}
  .hero-content{grid-template-columns:1fr;text-align:center;gap:2rem;}
  .hero-text .greeting{justify-content:center;}
  .hero-bio{max-width:100%;}
  .hero-buttons{justify-content:center;}
  .hero-socials{justify-content:center;}
  .hero-image-wrap{order:-1;}
  .hero-image-outer{width:min(220px,55vw);}
  .hero-badge-1,.hero-badge-2{display:none;}
  .sci-dna,.sci-molecule,.sci-cell{display:none;}
  .stats-grid{grid-template-columns:repeat(3,1fr);gap:0.75rem;}
  .stat-num{font-size:1.6rem;}
  .stat-label{font-size:0.62rem;}
  .about-grid{grid-template-columns:1fr;gap:2rem;}
  .quick-info-grid{grid-template-columns:1fr;}
  .edu-timeline,.exp-timeline{max-width:100%;}
  .edu-item,.exp-item{gap:1rem;}
  .edu-card,.exp-card{padding:1.3rem 1.2rem;}
  .org-grid,.ach-grid{grid-template-columns:1fr;}
  .cert-card{width:240px;}
  .skills-grid{grid-template-columns:1fr;gap:1rem;}
  .contact-grid{grid-template-columns:1fr;gap:2rem;}
  .contact-info-card,.contact-form-card{padding:1.6rem;}
  .footer-grid{grid-template-columns:1fr;gap:2rem;}
  .footer-brand p{max-width:100%;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .form-row{grid-template-columns:1fr;}
  .section{padding:60px 5%;}
  #back-top{bottom:1rem;right:1rem;width:42px;height:42px;}
}
@media(max-width:480px){
  .nav-logo{font-size:1.15rem;}
  .stats-grid{grid-template-columns:repeat(2,1fr);}
  .hero-name{font-size:2.1rem;}
  .hero-role{font-size:0.95rem;}
  .hero-bio{font-size:0.92rem;}
  .hero-buttons{flex-direction:column;width:100%;}
  .hero-buttons .btn-primary,.hero-buttons .btn-secondary{width:100%;justify-content:center;}
  .section-title{font-size:1.6rem;}
  .cert-card{width:78vw;}
}
@media(max-width:360px){
  .hero-image-outer{width:150px;}
  .section{padding:50px 4%;}
}
