:root{--bg:#0f172a;--bg-soft:#111827;--card:#ffffff;--text:#0f172a;--text-muted:#64748b;--text-light:#e5e7eb;--accent:#2563eb;--accent-dark:#1d4ed8;--border:#e5e7eb;--shadow:0 24px 60px rgba(15,23,42,.12);--radius:24px}*{box-sizing:border-box;margin:0;padding:0}html{max-width:100%;overflow-x:hidden;scroll-behavior:smooth;scroll-padding-top:90px}body{max-width:100%;overflow-x:hidden;font-family:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;color:var(--text);background:#f8fafc}a{color:inherit;text-decoration:none}section{scroll-margin-top:96px}.container{width:min(1120px,calc(100% - 32px));margin:0 auto}.section{padding:96px 0}.section-muted{background:#eef2ff}.eyebrow{margin-bottom:12px;color:var(--accent);font-size:.85rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.section-heading{max-width:720px;margin-bottom:42px}.section-heading h2{font-size:clamp(2rem,4vw,3rem);line-height:1.1;letter-spacing:-.04em}.site-header{position:fixed;top:0;left:0;right:0;z-index:99999;width:100%;background:rgba(15,23,42,.94);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}main{padding-top:76px}.navbar{height:76px;display:flex;align-items:center;justify-content:space-between}.logo{color:white;font-size:1.2rem;font-weight:800;letter-spacing:-.03em}.logo-brand{height:52px;display:inline-flex;align-items:center}.logo-brand img{display:block;width:auto;max-width:180px;height:42px;object-fit:contain}.nav-links{list-style:none;display:flex;align-items:center;gap:28px}.nav-links a{color:var(--text-light);font-size:.95rem;font-weight:600}.nav-links a:hover{color:white}.nav-cta{padding:10px 16px;background:var(--accent);border-radius:999px}.nav-cta:hover{background:var(--accent-dark)}.menu-toggle{display:none;border:0;background:transparent;color:white;font-size:1.8rem;cursor:pointer}.hero{min-height:calc(100vh - 76px);display:flex;align-items:center;color:white;background:radial-gradient(circle at top left,rgba(37,99,235,.28),transparent 32%),linear-gradient(135deg,#0f172a 0%,#111827 45%,#020617 100%)}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}.hero-content{max-width:900px}.hero h1{max-width:920px;margin-bottom:24px;font-size:clamp(2.4rem,5vw,4.7rem);line-height:1.05;letter-spacing:-.055em}.hero h1 span{color:#93c5fd}.hero-text{max-width:680px;margin-bottom:32px;color:#cbd5e1;font-size:1.1rem}.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.btn{min-height:48px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:800;transition:.2s ease}.btn-primary{background:var(--accent);color:white}.btn-primary:hover{background:var(--accent-dark);transform:translateY(-2px)}.btn-secondary{border:1px solid rgba(255,255,255,.24);color:white}.btn-secondary:hover{background:rgba(255,255,255,.08);transform:translateY(-2px)}.hero-card{padding:28px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);box-shadow:0 28px 80px rgba(0,0,0,.28)}.profile-photo-wrap{height:320px;margin-bottom:22px;overflow:hidden;background:#1e293b;border-radius:20px}.profile-photo{width:100%;height:100%;object-fit:cover;object-position:center}.hero-card h2{margin-bottom:8px}.hero-card p{color:#cbd5e1}.about-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.about-card,.timeline-content,.contact-card{background:white;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.about-card{padding:32px}.about-card h3{margin-bottom:12px;font-size:1.35rem}.about-card p{color:var(--text-muted)}.skills-grid{display:flex;flex-wrap:wrap;gap:12px}.skill-card{padding:12px 16px;background:white;border:1px solid #dbeafe;border-radius:999px;box-shadow:0 8px 20px rgba(37,99,235,.08);color:#1e3a8a;font-weight:800}.project-tabs{overflow:hidden;background:white;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.project-tab-list{display:flex;gap:10px;padding:18px;background:#f8fafc;border-bottom:1px solid var(--border)}.project-tab{padding:12px 18px;border:1px solid #dbeafe;background:white;border-radius:999px;color:#1e3a8a;font-family:inherit;font-weight:800;cursor:pointer;transition:.2s ease}.project-tab:hover{border-color:var(--accent);transform:translateY(-1px)}.project-tab.active{background:var(--accent);border-color:var(--accent);color:white;box-shadow:0 10px 24px rgba(37,99,235,.22)}.project-panel{display:none;padding:36px}.project-panel.active{display:block}.tab-project-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);column-gap:38px;row-gap:28px;align-items:start}.tab-project-layout>.project-gallery{grid-column:1;grid-row:1 / span 3;align-self:start;min-width:0}.tab-project-details{display:contents;min-width:0}.tab-project-details>.project-kicker{grid-column:2;grid-row:1;margin-bottom:0}.tab-project-details>h3{grid-column:2;grid-row:2;margin-bottom:0}.tab-project-details>p:not(.project-kicker){grid-column:2;grid-row:3;margin-bottom:0}.project-kicker{color:var(--accent);font-size:.8rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.tab-project-details h3{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.05;letter-spacing:-.05em;overflow-wrap:anywhere}.tab-project-details p{color:var(--text-muted);overflow-wrap:anywhere}.project-actions{grid-column:2;grid-row:4;margin-top:2px}.project-cta-link{width:fit-content;padding:13px 18px;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--accent);border-radius:999px;box-shadow:0 12px 26px rgba(37,99,235,.22);color:white;font-size:.92rem;font-weight:900;transition:.2s ease}.project-cta-link:hover{background:var(--accent-dark);transform:translateY(-2px)}.project-cta-link span{font-size:.95rem}.project-stats{grid-column:1 / -1;grid-row:4;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:4px 0 0}.project-actions+.project-stats{grid-row:5}.project-stats div{padding:16px;background:#eff6ff;border:1px solid #dbeafe;border-radius:18px}.project-stats strong{display:block;margin-bottom:4px;color:#1d4ed8;font-size:1rem}.project-stats span{display:block;color:var(--text-muted);font-size:.84rem;font-weight:700}.project-columns{grid-column:1 / -1;grid-row:5;display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-bottom:0}.project-actions+.project-stats+.project-columns{grid-row:6}.project-columns>div{padding:22px;background:#f8fafc;border:1px solid var(--border);border-radius:20px}.project-columns h4{margin-bottom:12px;color:var(--text);font-size:1rem}.project-features{margin-left:18px;color:var(--text-muted);font-size:.92rem}.project-features li{margin-bottom:8px;overflow-wrap:anywhere}.project-tags{grid-column:1 / -1;grid-row:6;display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}.project-actions+.project-stats+.project-columns+.project-tags{grid-row:7}.project-tags span{padding:7px 10px;background:#eff6ff;border-radius:999px;color:#1d4ed8;font-size:.78rem;font-weight:800}.project-gallery,.gallery-stage{width:100%}.gallery-stage{position:relative;isolation:isolate;overflow:hidden;background:#020617;border:1px solid rgba(15,23,42,.08);border-radius:22px;box-shadow:0 18px 45px rgba(15,23,42,.14)}.gallery-slides{position:relative;aspect-ratio:16 / 9}.gallery-slide{position:relative;display:none;width:100%;height:100%;margin:0;background:#020617}.gallery-slide.active{display:block}.gallery-slide img,.project-panel[data-panel="automation"] .gallery-slide img,.project-panel[data-panel="inventory"] .gallery-slide img{width:100%;height:100%;display:block;background:#020617;object-fit:contain}.gallery-slide img{object-position:top center}.project-panel[data-panel="automation"] .gallery-slide img,.project-panel[data-panel="inventory"] .gallery-slide img{object-position:center}.gallery-slide figcaption,.project-panel[data-panel="automation"] .gallery-slide figcaption,.project-panel[data-panel="inventory"] .gallery-slide figcaption{position:absolute;left:0;right:0;bottom:0;min-height:58px;padding:16px 20px;display:flex;align-items:flex-end;justify-content:flex-start;gap:14px;color:white;font-size:.95rem;font-weight:800;line-height:1.25;text-align:left;background:linear-gradient(to top,rgba(2,6,23,.96),rgba(2,6,23,.68),transparent)}.gallery-slide figcaption span{width:auto;display:grid;gap:3px;text-align:left}.gallery-slide figcaption strong{color:white;font-size:.98rem;line-height:1.2}.gallery-slide figcaption small{color:#cbd5e1;font-size:.78rem;font-weight:600}.gallery-slide figcaption a{width:auto;max-width:100%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;background:white;border-radius:999px;color:#1d4ed8;font-size:.78rem;font-weight:900;text-align:left;transition:.2s ease}.gallery-slide figcaption a:hover{background:#dbeafe;transform:translateY(-1px)}.gallery-btn{position:absolute;top:50%;z-index:30;width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 12px 28px rgba(15,23,42,.25);color:#0f172a;font-size:2rem;line-height:1;cursor:pointer;opacity:1;pointer-events:auto;transform:translateY(-50%);transition:.2s ease}.gallery-btn:hover{background:white;transform:translateY(-50%) scale(1.06)}.gallery-prev{left:14px}.gallery-next{right:14px}.gallery-dots{display:flex;justify-content:center;gap:8px;margin-top:14px}.gallery-dots button{width:9px;height:9px;border:0;border-radius:999px;background:#cbd5e1;cursor:pointer;transition:.2s ease}.gallery-dots button.active{width:28px;background:var(--accent)}.project-panel[data-panel="automation"] .gallery-dots{margin-top:12px}.timeline{position:relative;display:grid;gap:26px}.timeline::before{content:"";position:absolute;left:7px;top:22px;bottom:22px;width:2px;background:#dbeafe}.timeline-item{position:relative;padding-left:36px}.timeline-dot{position:absolute;left:0;top:28px;z-index:2;width:16px;height:16px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 8px #dbeafe}.timeline-content{padding:30px}.timeline-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:8px}.timeline-content h3{margin-bottom:6px;font-size:1.35rem;letter-spacing:-.02em}.timeline-role{margin-bottom:0;color:var(--accent);font-weight:800}.timeline-date{flex-shrink:0;padding:8px 12px;background:#eff6ff;border:1px solid #dbeafe;border-radius:999px;color:#1d4ed8;font-size:.82rem;font-weight:900;white-space:nowrap}.timeline-location{margin-bottom:18px;color:var(--text-muted);font-size:.92rem;font-weight:700}.timeline-list{margin-left:18px;color:var(--text-muted)}.timeline-list li{margin-bottom:10px}.timeline-list li:last-child{margin-bottom:0}.contact-section{background:var(--bg);color:white}.contact-grid{display:grid;grid-template-columns:1fr .7fr;gap:32px;align-items:center}.contact-grid h2{margin-bottom:18px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;letter-spacing:-.05em}.contact-grid p{color:#cbd5e1}.contact-card{display:grid;gap:16px;padding:28px;background:white;border-radius:28px}.contact-link{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:14px;padding:16px 18px;background:#eff6ff;border:1px solid transparent;border-radius:18px;color:var(--accent);font-weight:900;transition:.2s ease;word-break:break-word}.contact-link:hover{background:#dbeafe;border-color:#bfdbfe;transform:translateY(-2px)}.contact-icon{width:44px;height:44px;display:grid;place-items:center;background:white;border-radius:14px;box-shadow:0 8px 18px rgba(37,99,235,.12)}.contact-icon svg{width:22px;height:22px;fill:var(--accent)}.contact-arrow{color:#64748b;font-size:1rem;font-weight:900}.footer{padding:24px 0;background:#020617;color:#94a3b8;text-align:center}#about,#skills,#projects,#experience,#contact{content-visibility:auto;contain-intrinsic-size:800px}@media (max-width:980px){.hero-grid{grid-template-columns:1fr;justify-items:center;text-align:center}.hero-content{max-width:760px;margin:0 auto}.hero .eyebrow,.hero h1,.hero-text{text-align:center}.hero-text{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.hero-card{margin-left:auto;margin-right:auto}.profile-photo{object-position:100% 25%}.project-panel{padding:28px}.tab-project-layout{grid-template-columns:1fr;gap:28px}.tab-project-layout>.project-gallery,.tab-project-details>.project-kicker,.tab-project-details>h3,.tab-project-details>p:not(.project-kicker),.project-actions,.project-stats,.project-columns,.project-tags{grid-column:auto;grid-row:auto}.tab-project-layout>.project-gallery{align-self:stretch;margin-bottom:4px}.tab-project-details{display:flex;flex-direction:column;gap:22px}.tab-project-details>.project-kicker,.tab-project-details>h3,.tab-project-details>p,.tab-project-details>p:not(.project-kicker){margin:0}.tab-project-details>.project-kicker{margin-bottom:-10px}.tab-project-details>h3{margin-bottom:-4px}.tab-project-details>p:not(.project-kicker){max-width:720px;line-height:1.65}.project-actions{margin:0}.project-stats{margin:4px 0 0;gap:16px}.project-columns{margin:0;gap:18px}.project-tags{margin-top:0;padding-top:0}}@media (min-width:701px) and (max-width:980px){.hero{align-items:flex-start}.hero-grid{width:min(100% - 48px,760px);margin:0 auto;gap:34px}.hero h1,.hero-content{max-width:760px}.hero h1{font-size:clamp(3rem,7vw,4.3rem)}.hero-text{max-width:700px}.hero-card{width:100%;max-width:620px}.profile-photo-wrap{height:auto;aspect-ratio:16 / 9}}@media (min-width:641px) and (max-width:980px){.project-stats{grid-template-columns:repeat(3,1fr)}.project-columns{grid-template-columns:1fr}}@media (max-width:900px){.menu-toggle{display:block}.nav-links{position:fixed;top:76px;left:0;right:0;z-index:99998;display:none;flex-direction:column;align-items:flex-start;gap:0;padding:20px 18px 22px;background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 24px 60px rgba(2,6,23,.28)}.nav-links.active{display:flex}.nav-links li{width:100%}.nav-links a{width:100%;display:block;padding:14px 0}.nav-links .nav-cta{width:100%;display:flex;align-items:center;justify-content:center;margin:10px 0 0;padding:14px 18px;background:var(--accent);border-radius:999px;color:white;text-align:center}.hero{min-height:auto}.about-grid,.contact-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(2.35rem,9vw,4rem)}.hero-card{max-width:520px}.profile-photo-wrap{height:260px}.project-tab-list{overflow-x:auto;justify-content:flex-start}.project-tab{white-space:nowrap}}@media (max-width:700px){.timeline-header{flex-direction:column;gap:10px}.timeline-date{width:fit-content}.timeline-content{padding:24px}}@media (max-width:640px){.container{width:min(100% - 28px,1120px)}.section{padding:58px 0}.section-heading{margin-bottom:30px}.section-heading h2{font-size:clamp(2rem,10vw,2.65rem);line-height:1.08}.eyebrow{font-size:.78rem;line-height:1.35}.project-tabs{overflow:hidden;border-radius:22px}.project-tab-list{flex-wrap:nowrap;gap:10px;padding:14px;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.project-tab-list::-webkit-scrollbar{height:0}.project-tab{flex:0 0 auto;scroll-snap-align:start;padding:10px 16px;font-size:.9rem}.project-panel{padding:20px}.tab-project-layout{gap:22px}.tab-project-details{gap:20px}.project-stats,.project-columns{grid-template-columns:1fr}.project-stats,.project-columns{gap:14px}.project-columns>div{padding:20px}.project-tags{gap:8px;margin-top:2px}.tab-project-details h3{font-size:1.85rem;line-height:1.08}.tab-project-details p,.project-features{font-size:1rem;line-height:1.65}.project-features{font-size:.95rem}.gallery-btn{width:38px;height:38px;background:rgba(255,255,255,.96);box-shadow:0 10px 26px rgba(15,23,42,.26);font-size:1.7rem}.gallery-prev{left:10px}.gallery-next{right:10px}.gallery-dots{flex-wrap:wrap;margin-top:12px;margin-bottom:18px}.gallery-slide figcaption,.project-panel[data-panel="automation"] .gallery-slide figcaption,.project-panel[data-panel="inventory"] .gallery-slide figcaption{min-height:50px;padding:13px 15px;font-size:.82rem}.gallery-slide figcaption a{padding:7px 10px;font-size:.75rem}.project-panel[data-panel="automation"] .gallery-dots{margin-top:10px}}@media (max-width:560px){html{scroll-padding-top:88px}main{padding-top:68px}section{scroll-margin-top:88px}.navbar{height:68px}.nav-links{top:68px}.logo-brand{height:44px}.logo-brand img{max-width:150px;height:36px}.hero h1{font-size:2.45rem;line-height:1.08;letter-spacing:-.045em}.hero-text{font-size:1rem}.hero-actions,.hero-actions .btn,.btn,.project-cta-link{width:100%}.about-card,.timeline-content,.contact-card{padding:24px}.profile-photo-wrap{height:220px}.contact-card{padding:22px}.contact-link{grid-template-columns:40px 1fr auto;padding:14px}.contact-icon{width:40px;height:40px}}.hero h1{max-width:920px;margin-bottom:24px;font-size:3.5rem;line-height:1.15;letter-spacing:-.05em}.hero-card{padding:28px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);box-shadow:0 28px 80px rgba(0,0,0,.28);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.hero-card:hover{transform:translateY(-4px);box-shadow:0 32px 90px rgba(0,0,0,.4);border-color:rgba(255,255,255,.25)}.profile-photo-wrap{height:320px;margin-bottom:22px;overflow:hidden;border-radius:20px;background:linear-gradient(145deg,#1e293b 0%,#0f172a 100%);border:1px solid rgba(255,255,255,.05)}