.site-header{position:relative;display:flex;justify-content:center;align-items:center;text-align:center;width:100%;padding:clamp(4rem,8vw,7rem) clamp(1.5rem,6vw,3rem);overflow:hidden;background:var(--glass);-webkit-backdrop-filter:var(--blur-md) saturate(1.1);backdrop-filter:var(--blur-md) saturate(1.1);border-bottom:1px solid var(--line);box-shadow:0 6px 18px #00000026}.site-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.06),transparent 70%);pointer-events:none;z-index:0;opacity:.35}.header-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:clamp(2rem,4vw,3rem);max-width:960px;width:100%;margin:0 auto}.header-image-wrapper{max-width:360px;width:100%;aspect-ratio:1 / 1}.header-img{width:100%;height:100%;border-radius:var(--radius-lg);object-fit:cover;box-shadow:var(--shadow-md);transition:transform var(--transition),box-shadow var(--transition)}.header-img:hover{transform:scale(1.02);box-shadow:0 14px 36px #00000040,0 0 24px #ffffff1f}.header-text{display:flex;flex-direction:column;align-items:center;gap:.75rem}.header-name{font-family:Playfair Display,serif;font-size:clamp(2.75rem,6vw,3.75rem);font-weight:700;color:var(--text-strong);margin:0;letter-spacing:1px;line-height:1.05;text-shadow:0 2px 6px rgba(0,0,0,.1)}.header-name:after{content:"";display:block;height:3px;width:80px;margin:1rem auto 0;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--accent));opacity:.9}.header-role{font-size:clamp(1rem,1.8vw,1.25rem);font-weight:500;text-transform:uppercase;letter-spacing:2px;color:var(--accent);opacity:.92;text-shadow:0 1px 3px rgba(0,0,0,.08)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#contact .section-title{color:var(--accent)}.contact-container{max-width:720px}.contact-list{font-style:normal}.contact-list ul{display:grid;gap:1rem;padding:0;margin:0}.contact-item{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:1.05rem;line-height:1.7;color:var(--text);transition:transform .3s var(--ease),color var(--transition)}.contact-item:hover{transform:translate(4px)}.contact-label{font-weight:600;color:var(--highlight);text-transform:uppercase;font-size:.95rem;letter-spacing:.5px}.contact-list a{color:var(--accent);text-decoration:none;position:relative;transition:color var(--transition)}.contact-list a:after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform var(--transition)}.contact-list a:hover,.contact-list a:focus{color:var(--primary)}.contact-list a:hover:after,.contact-list a:focus:after{transform:scaleX(1);transform-origin:left}.contact-list a:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:3px}#dedication .section-title{color:var(--highlight)}#mission .section-title{color:var(--secondary)}#about-me .section-title{color:var(--primary)}.highlight{color:var(--highlight);font-weight:600}#skills .section-title{color:var(--secondary)}.skills-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem;padding:0;list-style:none}.skills-subtitle{font-size:1.25rem;font-weight:600;color:var(--primary);margin-bottom:.75rem}.card p{color:var(--text);line-height:1.65}#projects .section-title{color:var(--accent)}.projects-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem;margin-top:2rem;padding:0;list-style:none}.project-title{font-size:1.35rem;font-weight:600;color:var(--primary);margin-bottom:.75rem}.project-description{color:var(--text);line-height:1.65;margin-bottom:1.25rem}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:0;list-style:none}.tech-tag{background:color-mix(in oklab,var(--accent),white 88%);color:var(--accent);font-size:.85rem;font-weight:500;padding:.35rem .65rem;border-radius:.5rem;letter-spacing:.3px;transition:background var(--transition),color var(--transition)}.tech-tag:hover{background:var(--accent);color:#fff}#history .section-title{color:var(--highlight)}.history-list{list-style:none;padding:0;margin-top:2rem;display:grid;gap:2rem}.history-item{display:flex;align-items:flex-start;gap:1.25rem;position:relative;background:var(--surface);padding:1.5rem 1.75rem;border-radius:1rem;box-shadow:0 6px 18px #0000000d;transition:transform var(--transition),box-shadow var(--transition)}.history-item:hover{transform:translateY(-3px);box-shadow:0 10px 28px #00000014}.history-marker{flex-shrink:0;width:14px;height:14px;background:var(--highlight);border-radius:50%;margin-top:.5rem;box-shadow:0 0 0 3px var(--surface)}.history-role{font-size:1.25rem;font-weight:600;color:var(--primary);margin-bottom:.35rem;transition:color var(--transition)}.history-role:hover{color:var(--accent)}.history-company{font-size:1rem;color:var(--accent);margin-bottom:.25rem}.history-period{font-size:.9rem;color:var(--text-muted)}.footer{background:var(--glass);-webkit-backdrop-filter:var(--blur-md) saturate(1.05);backdrop-filter:var(--blur-md) saturate(1.05);border-top:1px solid var(--line);padding:clamp(2rem,4vw,3rem) 0;transition:background var(--transition)}.footer-container{max-width:760px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.65rem}.footer-message{font-size:1rem;font-weight:500;color:var(--accent);margin:0;opacity:.9}.footer-credit{font-size:.9rem;color:var(--text-muted);margin:0;opacity:.85}.footer-credit strong{font-weight:600;color:var(--accent)}@media (min-width: 768px){.footer{padding:2.5rem 1.25rem}.footer-message{font-size:1.05rem}}.app{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;scroll-behavior:smooth;position:relative;isolation:isolate;color:var(--text);background:var(--bg-base);transition:background var(--transition),color var(--transition)}.app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(circle at 70% 20%,rgba(226,77,77,.1),transparent 70%),radial-gradient(circle at 25% 75%,rgba(60,155,91,.08),transparent 70%),radial-gradient(circle at 60% 50%,rgba(243,233,199,.06),transparent 70%);filter:blur(18px);opacity:.55;transition:opacity 1s ease-in-out}.site-main{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);padding-block:var(--space-lg)}.section{width:100%;display:flex;justify-content:center;padding-block:var(--space-lg)}@media (max-width: 768px){.site-main{gap:3rem;padding-block:2.25rem}.site-main>section{padding-block:clamp(2.5rem,5vw,4rem) 1rem}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}#root{display:flex;flex-direction:column;min-height:100vh}@media (max-width: 600px){#root{padding:0 .75rem}}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16.5px;line-height:1.85;letter-spacing:.3px;color:var(--text);background:var(--bg-base);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{color:var(--text-strong);line-height:1.2;font-weight:600;letter-spacing:.6px}p{color:var(--text);opacity:.9;max-width:68ch;line-height:1.5;margin-bottom:1.5rem}ul{list-style:none;padding:0;margin:0}ul li{position:relative;padding-left:1.6rem}.card{background:transparent;border:none;border-radius:var(--radius-md);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:var(--space-md);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0000004d}a{color:var(--berry);text-decoration:none;font-weight:500;transition:color var(--transition),text-shadow var(--transition)}a:hover{color:var(--ember);text-shadow:0 0 6px color-mix(in srgb,var(--ember) 60%,transparent)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:linear-gradient(var(--primary),var(--secondary));border-radius:4px}.section-content{width:min(90%,1000px);margin-inline:auto;display:flex;flex-direction:column;gap:clamp(1.5rem,2.5vw,2.5rem);position:relative;z-index:2;padding:clamp(2rem,3vw,3rem);background:var(--glass);border:1px solid var(--line);box-shadow:var(--shadow-md);border-radius:var(--radius-lg);-webkit-backdrop-filter:var(--blur-md) saturate(1.1);backdrop-filter:var(--blur-md) saturate(1.1);container-type:inline-size;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}.section-content:hover{transform:translateY(-3px);box-shadow:0 12px 28px #00000059}.section-title{font-family:Playfair Display,serif;font-size:clamp(2rem,3vw,2.75rem);font-weight:700;color:var(--text-strong);letter-spacing:.5px;margin-bottom:1rem}.section-title:after{content:"";display:block;height:2px;width:60px;margin-top:.75rem;background:linear-gradient(90deg,var(--primary),var(--accent),var(--secondary));border-radius:999px;opacity:.8}@media (max-width: 768px){.section-content{width:min(94%,95%);padding:clamp(1.25rem,5vw,2rem)}.section-title:after{width:60px}}@media (prefers-reduced-motion: reduce){.site-main>section{opacity:1!important;transform:none!important;filter:none!important;animation:none!important}}@media (max-width: 768px){html{font-size:15px}}@media (max-width: 480px){html{font-size:clamp(14px,.9vw + .5rem,17px)}}.section[data-animate]{opacity:0;transform:translateY(3svh);animation-delay:calc(.15s * var(--i));animation:fadeSlideIn .85s var(--ease) forwards}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(3svh);filter:blur(4px);background-color:color-mix(in srgb,var(--berry) 5%,transparent)}to{opacity:1;transform:translateY(0);filter:none;background-color:none}}
