.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:1rem 0;background:transparent;border-bottom:1px solid transparent;transition:background-color var(--transition-normal),border-color var(--transition-normal),padding var(--transition-normal),backdrop-filter var(--transition-normal)}.navbar.scrolled{background:rgba(255,255,255,.78);border-bottom-color:var(--color-border);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}:root[data-theme=dark] .navbar.scrolled{background:rgba(0,0,0,.72)}.navbar-container{display:flex;align-items:center;justify-content:space-between;width:min(calc(100% - 2rem),var(--container-width));margin-inline:auto}.navbar-logo{color:var(--color-text);font-size:1rem;font-weight:650;letter-spacing:-.02em;transition:opacity var(--transition-fast)}.navbar-logo:hover{opacity:.7}.navbar-right{display:flex;align-items:center;gap:1rem}.navbar-links{display:flex;align-items:center;gap:1.75rem;margin:0;padding:0;list-style:none}.navbar-links a{color:var(--color-text-secondary);font-size:.9rem;font-weight:500;transition:color var(--transition-fast),opacity var(--transition-fast)}.navbar-links a:hover{color:var(--color-text)}.navbar-professional-links{display:flex;align-items:center;gap:.5rem}.navbar-linkedin{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);color:var(--color-text);transition:transform var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.navbar-linkedin svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.navbar-linkedin:hover{transform:translateY(-2px);border-color:#0a66c2;background:rgba(10,102,194,.1);color:#0a66c2}.navbar-cv{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:36px;padding:.45rem .8rem;border:1px solid var(--color-accent);border-radius:999px;background:var(--color-accent);color:#fff;font-size:.8rem;font-weight:650;letter-spacing:-.01em;transition:transform var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.navbar-cv span{font-size:.9rem}.navbar-cv:hover{transform:translateY(-2px);background:var(--color-accent-hover);border-color:var(--color-accent-hover);box-shadow:0 7px 20px #2997ff33}.theme-toggle{position:relative;display:flex;align-items:center;width:74px;height:40px;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:999px;cursor:pointer;box-shadow:0 5px 18px #00000029;transition:transform var(--transition-fast),background .4s ease,border-color .4s ease,box-shadow .4s ease}.theme-toggle:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000038}.theme-toggle:active{transform:scale(.97)}.theme-icon{position:absolute;top:50%;display:flex;align-items:center;justify-content:center;width:32px;height:32px;transform:translateY(-50%);font-size:.95rem;line-height:1;pointer-events:none;transition:opacity .35s ease,transform .4s ease}.theme-icon-day{left:5px}.theme-icon-night{right:5px}.theme-thumb{position:absolute;top:4px;left:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#f5f5f5;color:#3a3a3a;box-shadow:0 3px 10px #00000040;transition:transform .42s cubic-bezier(.22,1,.36,1),background-color .35s ease,color .35s ease,box-shadow .35s ease}.theme-thumb-icon{display:block;font-size:.95rem;line-height:1;transition:transform .42s ease}.theme-toggle-light{background:linear-gradient(110deg,#f2f4f7 0%,#dfe5eb 45%,#b8c4cf 100%);border-color:#0000001f}.theme-toggle-light .theme-icon-day{opacity:.95}.theme-toggle-light .theme-icon-night{opacity:.22}.theme-toggle-light .theme-thumb{transform:translate(0);background:#ffffff;color:#e9a31a}.theme-toggle-dark{background:linear-gradient(110deg,#47515e 0%,#272d36 48%,#171b22 100%);border-color:#ffffff1f}.theme-toggle-dark .theme-icon-day{opacity:.24}.theme-toggle-dark .theme-icon-night{opacity:.98}.theme-toggle-dark .theme-thumb{transform:translate(34px);background:#f2f2f6;color:#5a48d7}.theme-toggle-dark .theme-thumb-icon{transform:rotate(-12deg)}.menu-toggle{display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:42px;height:42px;padding:0;border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface);cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast)}.menu-toggle:hover{background:var(--color-surface-elevated)}.menu-toggle:active{transform:scale(.96)}.menu-toggle span{display:block;width:17px;height:1.5px;border-radius:999px;background:var(--color-text);transition:transform var(--transition-fast),opacity var(--transition-fast)}.menu-toggle.active span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}@media (max-width: 768px){.navbar{padding:.875rem 0}.navbar-right{gap:.55rem}.menu-toggle{display:inline-flex}.navbar-navigation{position:fixed;top:72px;left:1rem;right:1rem;padding:.75rem;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity var(--transition-normal),transform var(--transition-normal),visibility var(--transition-normal)}.navbar-navigation.open{opacity:1;visibility:visible;transform:translateY(0)}.navbar-links{flex-direction:column;align-items:stretch;gap:0}.navbar-links li{width:100%}.navbar-links a{display:block;padding:.9rem 1rem;border-radius:var(--radius-sm);color:var(--color-text);font-size:1rem}.navbar-links a:hover{background:var(--color-surface)}.navbar-professional-links{gap:.4rem}.navbar-linkedin{width:36px;height:36px}.navbar-cv{min-height:36px;padding:.45rem .7rem}.theme-toggle{width:70px;height:38px}.theme-thumb{width:30px;height:30px}.theme-toggle-dark .theme-thumb{transform:translate(32px)}}.hero{display:flex;align-items:center;min-height:100vh;padding:7rem 0 5rem;background:var(--color-bg)}.hero-container{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:clamp(3rem,7vw,7rem)}.hero-content{max-width:720px}.hero-eyebrow{display:inline-flex;align-items:center;margin-bottom:1.25rem;color:var(--color-accent);font-size:.82rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.hero h1{margin-bottom:1rem;font-size:clamp(3.5rem,8vw,7rem);font-weight:700;line-height:.98;letter-spacing:-.055em}.hero h1 span{color:var(--color-accent)}.hero h2{margin-bottom:1.5rem;color:var(--color-text);font-size:clamp(1.35rem,2.5vw,2rem);font-weight:500;letter-spacing:-.025em}.hero-description{max-width:620px;margin-bottom:2.25rem;font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.25rem;border:1px solid transparent;border-radius:999px;font-size:.95rem;font-weight:600;transition:transform var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--color-accent);color:#fff}.button-primary:hover{background:var(--color-accent-hover);color:#fff}.button-secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.button-secondary:hover{background:var(--color-surface-elevated);border-color:var(--color-text-tertiary)}.hero-image-placeholder{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;min-height:420px;padding:2rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.hero-avatar{width:clamp(238px,31.25vw,325px);aspect-ratio:1;border-radius:50%;overflow:hidden;background:var(--color-accent);box-shadow:0 20px 50px var(--color-accent-soft)}.hero-avatar-image{width:100%;height:100%;object-fit:cover;display:block}.hero-image-placeholder p{margin:0;color:var(--color-text-tertiary);font-size:.9rem}@media (max-width: 900px){.hero{min-height:auto;padding:7rem 0 4rem}.hero-container{grid-template-columns:1fr;gap:3.5rem}.hero-image-placeholder{min-height:320px;max-width:650px;width:100%}}@media (max-width: 600px){.hero{padding:6rem 0 3.5rem}.hero h1{font-size:clamp(3rem,15vw,4.5rem)}.hero-actions{flex-direction:column;width:100%}.button{width:100%}.hero-image-placeholder{min-height:280px;padding:1.5rem}}.about{padding:var(--space-3xl) 0}.about-container{display:grid;gap:var(--space-2xl)}.about-header{max-width:850px}.section-eyebrow{margin-bottom:var(--space-sm);color:var(--color-accent);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.about-header h2{margin:0;font-size:clamp(2.5rem,5vw,5rem);font-weight:700;line-height:1.05;letter-spacing:-.05em}.about-content{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:clamp(2.5rem,6vw,7rem);align-items:start}.about-text{max-width:700px}.about-text p{margin-bottom:var(--space-md);font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.75}.about-text p:last-child{margin-bottom:0}.about-highlight{padding:clamp(1.5rem,3vw,2.25rem);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.about-highlight-label{display:block;margin-bottom:var(--space-sm);color:var(--color-accent);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.about-highlight p{margin:0;color:var(--color-text);font-size:clamp(1.25rem,2vw,1.7rem);font-weight:600;line-height:1.35;letter-spacing:-.03em}@media (max-width: 800px){.about{padding:var(--space-2xl) 0}.about-content{grid-template-columns:1fr;gap:var(--space-xl)}.about-highlight{max-width:600px}}@media (max-width: 600px){.about-header h2{font-size:clamp(2.25rem,11vw,3.5rem)}.about-text p{font-size:1rem}}.skills-scene{position:relative;height:220vh}.skills-sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;overflow:hidden;background:var(--color-bg)}.skills{width:100%}.skills-header{max-width:800px;margin-bottom:var(--space-xl)}.section-title{margin-bottom:var(--space-md);font-size:clamp(2.5rem,5vw,5rem);font-weight:700;line-height:1.05;letter-spacing:-.05em}.section-description{max-width:650px;font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.7}.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);perspective:1800px}.skill-card{min-height:220px;perspective:1600px;--card-start: calc( var(--card-index) * .12 );--card-progress: clamp( 0, calc( ( var(--scroll-progress) - var(--card-start) ) / .64 ), 1 )}.skill-card-inner{position:relative;width:100%;height:100%;min-height:220px;transform-style:preserve-3d;transform:rotateY(calc(180deg - (var(--card-progress) * 180deg)));will-change:transform}.skill-card-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding:clamp(1.5rem,3vw,2.25rem);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);backface-visibility:hidden;-webkit-backface-visibility:hidden}.skill-card-front{background:var(--color-surface);color:var(--color-text)}.skill-card:nth-child(1) .skill-card-front,.skill-card:nth-child(2) .skill-card-front{background:linear-gradient(145deg,var(--color-surface),rgba(41,151,255,.035));border-color:#2997ff3d}.skill-card-back{transform:rotateY(180deg);background:rgba(22,22,23,.42);border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px #ffffff0f,0 8px 30px #0003;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:hidden}.skill-card-back-content{width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;opacity:.22;filter:blur(2.5px) grayscale(.25);transform:scaleX(-1);pointer-events:none}.skill-card h3{margin-bottom:var(--space-md);color:var(--color-text);font-size:clamp(1.35rem,2vw,1.7rem);font-weight:600;letter-spacing:-.03em}.skill-card:nth-child(1) h3,.skill-card:nth-child(2) h3{color:var(--color-accent)}.skill-card-back h3{color:var(--color-text);opacity:.55}.skill-tags{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:auto}.skill-tag{display:inline-flex;align-items:center;padding:.55rem .85rem;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text-secondary);font-size:.85rem;font-weight:500;letter-spacing:-.01em;transition:transform var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.skill-tag-featured{background:var(--color-accent-soft);border-color:#2997ff52;color:var(--color-accent);font-weight:650}.skill-card-back .skill-tag{background:rgba(255,255,255,.04);border-color:#ffffff14;color:#ffffff7a}.skill-card-back .skill-tag-featured{background:rgba(41,151,255,.08);border-color:#2997ff29;color:#2997ff99}.skill-tag:hover{transform:translateY(-2px);background:var(--color-accent-soft);border-color:#2997ff4d;color:var(--color-accent)}.skills-scroll-hint{margin-top:var(--space-lg);color:var(--color-text-tertiary);font-size:.9rem}@media (max-width: 700px){.skills-scene{height:180vh}.skills-sticky{height:100svh}.skills-grid{grid-template-columns:1fr}.skill-card,.skill-card-inner{min-height:180px}.skills-header{margin-bottom:var(--space-lg)}.skills-scroll-hint{display:none}}@media (prefers-reduced-motion: reduce){.skills-scene{height:auto}.skills-sticky{position:static;height:auto;padding:var(--space-2xl) 0}.skill-card-inner{transform:none!important}.skill-card-back{display:none}}.experience{padding:var(--space-3xl) 0}.experience-container{display:grid;gap:var(--space-2xl)}.experience-header{max-width:850px}.experience-header h2{margin-bottom:var(--space-md);font-size:clamp(2.5rem,5vw,5rem);font-weight:700;line-height:1.05;letter-spacing:-.05em}.experience-intro{max-width:680px;font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-size:clamp(1rem,1.5vw,1.15rem);font-weight:400;line-height:1.7;letter-spacing:-.008em}.experience-timeline{position:relative}.timeline-line{position:absolute;top:2.4rem;bottom:0;left:11rem;width:1px;background:var(--color-border)}.experience-item{position:relative;display:grid;grid-template-columns:8rem 4rem minmax(0,1fr);gap:1rem;align-items:start}.experience-period{display:flex;flex-direction:column;gap:.35rem;padding-top:.6rem;color:var(--color-text-secondary);font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-size:.85rem;font-weight:500;line-height:1.4}.period-line{width:2rem;height:1px;background:var(--color-border)}.timeline-dot{position:relative;width:16px;height:16px;margin-top:.8rem;margin-left:1.5rem;border:4px solid var(--color-bg);border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent);z-index:2}.experience-card{padding:clamp(1.5rem,3vw,2.5rem);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal)}.experience-card:hover{transform:translateY(-4px);border-color:var(--color-text-tertiary);box-shadow:var(--shadow-md)}.experience-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.experience-role{margin-bottom:.35rem;color:var(--color-accent);font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-size:.85rem;font-weight:600;letter-spacing:.06em;line-height:1.3;text-transform:uppercase}.experience-card h3{margin-bottom:.25rem;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:650;letter-spacing:-.04em}.experience-location{color:var(--color-text-tertiary);font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-size:.9rem;font-weight:400;line-height:1.4}.experience-status{display:inline-flex;align-items:center;padding:.45rem .75rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-accent-soft);color:var(--color-accent);font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-size:.8rem;font-weight:600;line-height:1.2}.experience-description{max-width:720px;margin-bottom:var(--space-lg);color:var(--color-text-secondary);font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-size:1.05rem;font-weight:400;line-height:1.7;letter-spacing:-.008em}.experience-list{display:grid;gap:.85rem;margin:0;padding:0;list-style:none}.experience-list li{position:relative;padding-left:1.4rem;color:var(--color-text-secondary);font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.6;letter-spacing:-.008em}.experience-list li:before{content:"";position:absolute;top:.65rem;left:0;width:6px;height:6px;border-radius:50%;background:var(--color-accent)}@media (max-width: 800px){.experience{padding:var(--space-2xl) 0}.experience-item{grid-template-columns:6rem 2rem minmax(0,1fr)}.timeline-line{left:7rem}.timeline-dot{margin-left:.6rem}}@media (max-width: 600px){.experience-header h2{font-size:clamp(2.25rem,11vw,3.5rem)}.experience-item{grid-template-columns:1fr;gap:1rem}.experience-period{flex-direction:row;align-items:center;padding-top:0}.period-line{width:1.5rem}.timeline-line,.timeline-dot{display:none}.experience-card-header{flex-direction:column}}.projects{padding:var(--space-3xl) 0;background:var(--color-bg)}.projects-header{max-width:850px;margin-bottom:var(--space-2xl)}.projects-header h2{margin-bottom:var(--space-md);font-size:clamp(2.5rem,5vw,5rem);font-weight:700;line-height:1.05;letter-spacing:-.05em}.projects-intro{max-width:680px;font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.7}.projects-rows,.projects-row{width:100%}.projects-row+.projects-row{margin-top:var(--space-md)}.projects-row-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.project-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease,border-color var(--transition-fast),box-shadow var(--transition-fast);transition-delay:var(--card-delay)}.project-card-visible{opacity:1;transform:translateY(0)}.project-card-featured{background:linear-gradient(145deg,var(--color-surface),rgba(41,151,255,.045));border-color:#2997ff61;box-shadow:0 18px 55px #2997ff14}.project-card-featured:hover{border-color:var(--color-accent);box-shadow:0 22px 65px #2997ff1f}.project-card:hover{transform:translateY(-6px);border-color:var(--color-accent);box-shadow:var(--shadow-md)}.project-image{display:flex;align-items:center;justify-content:center;aspect-ratio:16 / 10;padding:var(--space-lg);background:linear-gradient(135deg,var(--color-accent-soft),transparent);border-bottom:1px solid var(--color-border);color:var(--color-accent)}.project-card-featured .project-image{background:linear-gradient(135deg,rgba(41,151,255,.2),rgba(41,151,255,.025))}.project-image-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;text-align:center}.project-featured-label{color:var(--color-accent);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.project-image-title{color:var(--color-accent);font-size:.85rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.project-content{display:flex;flex:1;flex-direction:column;padding:clamp(1.25rem,2vw,1.75rem)}.project-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-sm)}.project-content h3{margin:0;color:var(--color-text);font-size:1.4rem;font-weight:650;letter-spacing:-.03em}.project-card-featured .project-content h3{color:var(--color-accent)}.project-status{flex-shrink:0;padding:.4rem .65rem;background:var(--color-accent-soft);border:1px solid rgba(41,151,255,.24);border-radius:999px;color:var(--color-accent);font-size:.7rem;font-weight:650;line-height:1.2}.project-description{margin-bottom:var(--space-lg);line-height:1.65}.project-technologies{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:auto;margin-bottom:var(--space-lg)}.project-tag{padding:.45rem .75rem;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text-secondary);font-size:.8rem;font-weight:500}.project-tag-featured{background:var(--color-accent-soft);border-color:#2997ff47;color:var(--color-accent);font-weight:650}.project-links{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.project-links a{color:var(--color-accent);font-size:.9rem;font-weight:600;transition:opacity var(--transition-fast),transform var(--transition-fast)}.project-links a:hover{opacity:.75;transform:translate(2px)}.project-private{color:var(--color-text-tertiary);font-size:.8rem;font-weight:500}.projects-scroll-hint{margin-top:var(--space-lg);color:var(--color-text-tertiary);font-size:.9rem}@media (max-width: 700px){.projects{padding:var(--space-2xl) 0}.projects-header{margin-bottom:var(--space-xl)}.projects-header h2{font-size:clamp(2.25rem,11vw,3.5rem)}.projects-row-grid{grid-template-columns:1fr}.projects-row+.projects-row{margin-top:var(--space-md)}.project-image{aspect-ratio:16 / 9}.project-title-row{flex-direction:column}.project-status{align-self:flex-start}}@media (prefers-reduced-motion: reduce){.project-card{opacity:1;transform:none;transition:none}.project-card:hover{transform:none}}.education{padding:var(--space-3xl) 0}.education-container{display:grid;gap:var(--space-2xl)}.education-header{max-width:850px}.education-header h2{margin-bottom:0;font-size:clamp(2.5rem,5vw,5rem);font-weight:700;line-height:1.05;letter-spacing:-.05em}.education-card{display:grid;grid-template-columns:minmax(140px,.35fr) minmax(0,1fr);gap:clamp(2rem,5vw,6rem);align-items:start;padding:clamp(1.5rem,3vw,2.5rem);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal)}.education-card:hover{transform:translateY(-4px);border-color:var(--color-text-tertiary);box-shadow:var(--shadow-md)}.education-period{display:flex;flex-direction:column;gap:.5rem;padding-top:.3rem;color:var(--color-text-secondary);font-size:.9rem;font-weight:600}.education-period-line{width:2.5rem;height:1px;background:var(--color-border)}.education-type{margin-bottom:.5rem;color:var(--color-accent);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.education-content h3{margin-bottom:.35rem;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:650;line-height:1.2;letter-spacing:-.04em}.education-location{margin-bottom:var(--space-md);color:var(--color-text-tertiary);font-size:.95rem}.education-description{max-width:700px;margin-bottom:0;font-size:1.05rem;line-height:1.7}@media (max-width: 700px){.education{padding:var(--space-2xl) 0}.education-card{grid-template-columns:1fr;gap:var(--space-md)}.education-period{flex-direction:row;align-items:center}.education-period-line{width:2rem}}@media (max-width: 600px){.education-header h2{font-size:clamp(2.25rem,11vw,3.5rem)}.education-description{font-size:1rem}}.contact{padding:var(--space-3xl) 0 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif}.contact-container{display:grid;gap:var(--space-2xl);padding-bottom:var(--space-3xl)}.contact-header{max-width:850px;margin-inline:auto;text-align:center}.contact-header h2{margin-bottom:var(--space-lg);font-size:clamp(2.7rem,6vw,5.8rem);font-weight:700;line-height:1.02;letter-spacing:-.055em}.contact-intro{max-width:760px;margin-inline:auto;color:var(--color-text-secondary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:clamp(1rem,1.5vw,1.15rem);font-weight:400;line-height:1.7;letter-spacing:-.01em}.contact-content{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:var(--space-xl);max-width:1000px;width:100%;margin-inline:auto;padding:clamp(1.5rem,3vw,2.25rem);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.contact-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2rem}.contact-detail{display:flex;align-items:center;gap:.85rem;min-width:0}.contact-detail-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:38px;height:38px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface-elevated);color:var(--color-accent);transition:border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast)}.contact-detail:hover .contact-detail-icon{transform:translateY(-2px);border-color:var(--color-accent);background:var(--color-accent-soft)}.contact-detail-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.contact-detail-info{display:flex;flex-direction:column;gap:.25rem;min-width:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif}.contact-detail-label{color:var(--color-text-tertiary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:.72rem;font-weight:700;line-height:1.2;letter-spacing:.1em;text-transform:uppercase}.contact-detail-value{color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:.95rem;font-weight:500;line-height:1.5;letter-spacing:-.01em;transition:color var(--transition-fast)}a.contact-detail-value:hover{color:var(--color-accent)}.contact-actions{display:flex;flex-direction:column;justify-content:center;gap:.7rem;min-width:230px;padding-left:var(--space-xl);border-left:1px solid var(--color-border)}.contact-button{display:grid;grid-template-columns:24px 1fr 18px;align-items:center;gap:.75rem;min-width:220px;padding:.75rem .9rem;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:.88rem;font-weight:600;line-height:1.3;letter-spacing:-.01em;transition:transform var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.contact-button:hover{transform:translateY(-2px);border-color:var(--color-text-tertiary);box-shadow:var(--shadow-sm)}.contact-button-icon{display:flex;align-items:center;justify-content:center;color:var(--color-accent)}.contact-button-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.contact-button-text{text-align:left;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif}.contact-button-arrow{color:var(--color-accent);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:1rem;text-align:center}.contact-button-primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff;box-shadow:0 8px 25px #2997ff2e}.contact-button-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:#fff;box-shadow:0 12px 30px #2997ff3d}.contact-button-primary .contact-button-icon,.contact-button-primary .contact-button-arrow{color:#fff}.contact:after{content:"";display:block;width:100%;height:1px;background:var(--color-border)}@media (max-width: 800px){.contact{padding-top:var(--space-2xl)}.contact-container{padding-bottom:var(--space-2xl)}.contact-content{grid-template-columns:1fr;gap:var(--space-xl)}.contact-actions{padding-left:0;padding-top:var(--space-xl);border-left:0;border-top:1px solid var(--color-border)}.contact-button{width:100%}}@media (max-width: 600px){.contact-header h2{font-size:clamp(2.3rem,11vw,3.5rem)}.contact-details{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.contact-button,.contact-detail-icon{transition:none}.contact-button:hover,.contact-detail:hover .contact-detail-icon{transform:none}}.footer{padding:var(--space-lg) 0;border-top:1px solid var(--color-border);background:var(--color-surface)}.footer-container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.footer-text{margin:0;color:var(--color-text-tertiary);font-size:.9rem}.footer-back-to-top{display:inline-flex;align-items:center;color:var(--color-text-secondary);font-size:.9rem;font-weight:600;transition:color var(--transition-fast),transform var(--transition-fast)}.footer-back-to-top:hover{color:var(--color-accent);transform:translateY(-2px)}@media (max-width: 600px){.footer-container{flex-direction:column;align-items:flex-start}}.scroll-reveal{opacity:0;transform:translateY(40px);transition:opacity .7s ease,transform .7s ease;will-change:opacity,transform}.scroll-reveal-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.scroll-reveal{opacity:1;transform:none;transition:none}}:root{color-scheme:light;--color-bg: #ffffff;--color-surface: #f5f5f7;--color-surface-elevated: #ffffff;--color-text: #1d1d1f;--color-text-secondary: #6e6e73;--color-text-tertiary: #86868b;--color-border: rgba(0, 0, 0, .1);--color-accent: #0071e3;--color-accent-hover: #0077ed;--color-accent-soft: rgba(0, 113, 227, .1);--shadow-sm: 0 2px 10px rgba(0, 0, 0, .04);--shadow-md: 0 12px 35px rgba(0, 0, 0, .08);--shadow-lg: 0 25px 60px rgba(0, 0, 0, .12);--container-width: 1200px;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 5rem;--space-3xl: 8rem;--radius-sm: .75rem;--radius-md: 1.25rem;--radius-lg: 2rem;--transition-fast: .18s ease;--transition-normal: .3s ease}:root[data-theme=dark]{color-scheme:dark;--color-bg: #000000;--color-surface: #161617;--color-surface-elevated: #1d1d1f;--color-text: #f5f5f7;--color-text-secondary: #a1a1a6;--color-text-tertiary: #86868b;--color-border: rgba(255, 255, 255, .12);--color-accent: #2997ff;--color-accent-hover: #40a9ff;--color-accent-soft: rgba(41, 151, 255, .12);--shadow-sm: 0 2px 10px rgba(0, 0, 0, .2);--shadow-md: 0 12px 35px rgba(0, 0, 0, .3);--shadow-lg: 0 25px 60px rgba(0, 0, 0, .5)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--color-bg);color:var(--color-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;transition:background-color var(--transition-normal),color var(--transition-normal)}body,button,input,textarea{font-family:inherit}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{color:var(--color-text);line-height:1.1;letter-spacing:-.03em}p{color:var(--color-text-secondary);font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.65;letter-spacing:-.008em}a{color:inherit;text-decoration:none;font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif}small,label{font-family:Segoe UI Variable,Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif}button{border:0;font:inherit;cursor:pointer}img,picture,svg{display:block;max-width:100%}.container{width:min(calc(100% - 2rem),var(--container-width));margin-inline:auto}::selection{background:var(--color-accent);color:#fff}:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
