*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--orange: #F97316;--orange-light: #FB923C;--orange-glow: rgba(249, 115, 22, .35);--blue: #3B82F6;--green: #22C55E;--bg: #0a0c12;--bg-card: #111520;--bg-elevated: #161b28;--border: rgba(255, 255, 255, .08);--text: #E5E7EB;--text-muted: #9CA3AF;--text-dim: #6B7280;--font: "Inter", system-ui, sans-serif;--font-display: "Space Grotesk", "Inter", sans-serif;--radius: 12px;--radius-lg: 20px;--nav-h: 72px;--transition: .3s cubic-bezier(.4, 0, .2, 1)}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-h)}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:var(--orange);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--orange-light)}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}.container{width:min(1200px,92vw);margin:0 auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;border-radius:50px;font-weight:600;font-size:.95rem;transition:all var(--transition)}.btn--primary{background:linear-gradient(135deg,var(--orange),#EA580C);color:#fff;box-shadow:0 4px 20px var(--orange-glow)}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px var(--orange-glow)}.btn--outline{border:1.5px solid var(--border);color:var(--text);background:#ffffff08}.btn--outline:hover{border-color:var(--orange);color:var(--orange);background:#f9731614}.btn--lg{padding:16px 36px;font-size:1.05rem}.section{padding:100px 0;position:relative}.section__header{text-align:center;margin-bottom:60px}.section__tag{display:inline-block;padding:6px 16px;border-radius:50px;background:#f973161a;color:var(--orange);font-size:.85rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px}.section__title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);font-weight:700;margin-bottom:12px}.section__desc{color:var(--text-muted);max-width:560px;margin:0 auto;font-size:1.05rem}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-h);transition:all var(--transition)}.navbar--scrolled{background:#0a0c12d9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}.navbar__inner{display:flex;align-items:center;justify-content:space-between;height:100%;width:min(1200px,92vw);margin:0 auto}.navbar__brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:1.15rem}.navbar__logo{width:36px;height:36px;border-radius:8px}.navbar__brand-accent{color:var(--orange)}.navbar__links{display:flex;gap:8px;list-style:none}.navbar__links button,.navbar__links a{padding:8px 16px;border-radius:8px;font-size:.9rem;font-weight:500;color:var(--text-muted);transition:all var(--transition);display:inline-block}.navbar__links button:hover,.navbar__links a:hover{color:var(--text);background:#ffffff0d}.navbar__link--active{color:var(--orange)!important;background:#f973161a!important}.logo{display:inline-flex;align-items:center;transition:opacity var(--transition)}.logo:hover{opacity:.9}.logo__img{height:52px;width:auto;display:block}.logo__img--footer{height:48px;width:auto;max-width:min(200px,38vw);display:block;object-fit:contain;filter:brightness(1.1) contrast(1.05)}.logo--footer{flex-shrink:0;display:block}.navbar__cta{padding:10px 24px;border-radius:50px;background:var(--orange);color:#fff;font-weight:600;font-size:.9rem;transition:all var(--transition)}.navbar__cta:hover{background:var(--orange-light);transform:translateY(-1px)}.navbar__burger{display:none;flex-direction:column;gap:5px;padding:8px}.navbar__burger span{display:block;width:24px;height:2px;background:var(--text);transition:all var(--transition);border-radius:2px}.hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:calc(var(--nav-h) + 40px) 4vw 60px;position:relative;overflow:hidden}.hero-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.hero-scene canvas{width:100%!important;height:100%!important}.hero__content{position:relative;z-index:2;padding-left:max(0px,calc((100vw - 1200px)/2))}.hero__badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:50px;background:#22c55e1a;border:1px solid rgba(34,197,94,.25);color:var(--green);font-size:.85rem;font-weight:600;margin-bottom:24px}.hero__badge-dot{width:8px;height:8px;border-radius:50%;background:var(--green);animation:pulse-dot 2s infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.hero__name{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.2rem);font-weight:800;line-height:1.1;margin-bottom:12px}.hero__name-accent{background:linear-gradient(135deg,var(--orange),var(--orange-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero__title{font-size:clamp(1.2rem,3vw,1.8rem);color:var(--text-muted);font-weight:500;margin-bottom:16px;min-height:2.2em}.hero__cursor{color:var(--orange);font-weight:300}.hero__cursor--blink{animation:blink .8s step-end infinite}@keyframes blink{50%{opacity:0}}.hero__subtitle{color:var(--text-dim);font-size:1.1rem;margin-bottom:32px;max-width:480px}.hero__actions{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:48px}.hero__stats{display:flex;gap:32px;flex-wrap:wrap}.hero__stat{display:flex;flex-direction:column}.hero__stat strong{font-family:var(--font-display);font-size:1.8rem;font-weight:700;color:var(--orange)}.hero__stat span{font-size:.8rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.hero__photo-wrap{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;padding-right:max(0px,calc((100vw - 1200px)/2))}.hero__photo-ring{position:absolute;width:380px;height:380px;border-radius:50%;border:2px solid rgba(249,115,22,.2);animation:spin-slow 20s linear infinite}.hero__photo-ring:before{content:"";position:absolute;top:-4px;left:50%;width:8px;height:8px;border-radius:50%;background:var(--orange);box-shadow:0 0 12px var(--orange-glow)}@keyframes spin-slow{to{transform:rotate(360deg)}}.hero__photo-glow{position:absolute;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,var(--orange-glow),transparent 70%);filter:blur(40px)}.hero__photo{width:300px;height:300px;border-radius:50%;object-fit:cover;object-position:top center;border:3px solid rgba(249,115,22,.3);position:relative;z-index:1;animation:float-photo 6s ease-in-out infinite}@keyframes float-photo{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.hero__photo-card{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:12px 20px;background:#111520e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius);z-index:3;white-space:nowrap}.hero__photo-card img{width:40px;height:40px;object-fit:contain}.hero__photo-card strong{display:block;font-size:.85rem}.hero__photo-card span{font-size:.75rem;color:var(--text-dim)}.hero__scroll-hint{position:absolute;bottom:30px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:2;color:var(--text-dim);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.hero__scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--orange),transparent);animation:scroll-line 2s ease-in-out infinite}@keyframes scroll-line{0%,to{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.about{background:var(--bg-card)}.about__grid{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:start}.about__visual{position:relative}.about__img-wrap{position:relative;border-radius:var(--radius-lg);overflow:hidden}.about__img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-lg)}.about__img-frame{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border:2px solid var(--orange);border-radius:calc(var(--radius-lg) + 8px);opacity:.3;pointer-events:none}.about__education{display:flex;align-items:flex-start;gap:16px;margin-top:24px;padding:20px;background:var(--bg-elevated);border-radius:var(--radius);border:1px solid var(--border)}.about__edu-icon{font-size:2rem;flex-shrink:0}.about__education-list{display:flex;flex-direction:column;gap:16px;width:100%}.about__education-item strong{display:block;font-size:.95rem}.about__education-item span{color:var(--text-muted);font-size:.85rem}.about__education-item small{color:var(--text-dim);font-size:.8rem}.about__content h3{font-family:var(--font-display);font-size:1.8rem;margin-bottom:4px}.about__role{color:var(--orange);font-weight:600;margin-bottom:8px}.about__location{color:var(--text-muted);margin-bottom:24px}.about__text{color:var(--text-muted);margin-bottom:16px;line-height:1.8}.about__company{display:flex;align-items:center;gap:16px;margin-top:32px;padding:20px;background:var(--bg-elevated);border-radius:var(--radius);border:1px solid var(--border)}.about__company img{width:48px;height:48px;border-radius:10px}.about__company strong{display:block}.about__company span{color:var(--text-dim);font-size:.85rem}.about__company a{font-size:.85rem;display:block;margin-top:4px}.skills__layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.skills-scene{width:100%;height:420px;border-radius:var(--radius-lg);overflow:hidden;background:radial-gradient(ellipse at center,rgba(249,115,22,.05),transparent);border:1px solid var(--border)}.skills-scene canvas{width:100%!important;height:100%!important}.skills__3d-label{text-align:center;color:var(--text-dim);font-size:.8rem;margin-top:12px;text-transform:uppercase;letter-spacing:.1em}.skill-bar{margin-bottom:20px;opacity:0;transform:translate(-20px);transition:all .6s ease}.skill-bar--visible{opacity:1;transform:translate(0)}.skill-bar__header{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.9rem}.skill-bar__header strong{color:var(--orange)}.skill-bar__track{height:6px;background:var(--bg-elevated);border-radius:3px;overflow:hidden}.skill-bar__fill{height:100%;width:0;border-radius:3px;background:linear-gradient(90deg,var(--color, var(--orange)),var(--orange-light));transition:width 1.2s cubic-bezier(.4,0,.2,1)}.skill-bar--visible .skill-bar__fill{width:var(--level)}.experience{background:var(--bg-card)}.timeline{position:relative;max-width:700px;margin:0 auto}.timeline:before{content:"";position:absolute;left:20px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--orange),var(--border))}.timeline__item{position:relative;padding-left:56px;margin-bottom:40px}.timeline__dot{position:absolute;left:12px;top:8px;width:18px;height:18px;border-radius:50%;background:var(--bg);border:3px solid var(--orange);z-index:1}.timeline__item--current .timeline__dot{background:var(--orange);box-shadow:0 0 16px var(--orange-glow)}.timeline__card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:all var(--transition);position:relative}.timeline__card:hover{border-color:#f973164d;transform:translate(4px)}.timeline__card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:16px}.timeline__card h3{font-family:var(--font-display);font-size:1.15rem}.timeline__company{color:var(--orange);font-size:.9rem;font-weight:500}.timeline__period{color:var(--text-dim);font-size:.8rem;white-space:nowrap}.timeline__card p{color:var(--text-muted);font-size:.9rem;line-height:1.7}.timeline__badge{display:inline-block;margin-top:12px;padding:4px 12px;border-radius:50px;background:#f9731626;color:var(--orange);font-size:.75rem;font-weight:600}.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{position:relative;padding:32px 24px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:all var(--transition);overflow:hidden}.service-card:hover{transform:translateY(-6px);border-color:#f973164d;box-shadow:0 12px 40px #0000004d}.service-card__icon{font-size:2.2rem;display:block;margin-bottom:16px}.service-card h3{font-family:var(--font-display);font-size:1.15rem;margin-bottom:10px}.service-card p{color:var(--text-muted);font-size:.9rem;line-height:1.7}.service-card__glow{position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,var(--orange-glow),transparent 70%);opacity:0;transition:opacity var(--transition);pointer-events:none}.service-card:hover .service-card__glow{opacity:1}.gallery{background:var(--bg-card);overflow:visible}.gallery__header{position:relative;z-index:2;padding-top:8px}.gallery__filters{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:36px}.gallery__filter{padding:10px 22px;border-radius:50px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);font-size:.9rem;font-weight:600;transition:all var(--transition);text-transform:capitalize}.gallery__filter:hover{border-color:#f9731666;color:var(--text)}.gallery__filter--active{background:var(--orange);border-color:var(--orange);color:#fff;box-shadow:0 4px 16px var(--orange-glow)}.gallery__bento{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:dense;gap:18px;grid-auto-rows:minmax(200px,1fr)}.gallery__card--hero{grid-column:span 2;grid-row:span 2;min-height:420px}.gallery__card--portrait{grid-row:span 2;min-height:420px}.gallery__card--landscape{grid-column:span 1;min-height:200px}.gallery__card--landscape-wide{grid-column:span 2;min-height:220px}@keyframes gallery-fade-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.gallery__card{position:relative;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);padding:0;cursor:pointer;background:var(--bg-elevated);transition:all .4s ease;animation:gallery-fade-in .5s ease both;min-height:200px}.gallery__card:hover{border-color:#f9731673;transform:translateY(-4px);box-shadow:0 16px 40px #00000059}.gallery__card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.gallery__card:hover img{transform:scale(1.06)}.gallery__card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.2) 45%,transparent 70%);display:flex;flex-direction:column;justify-content:flex-end;padding:20px;opacity:0;transition:opacity var(--transition)}.gallery__card:hover .gallery__card-overlay{opacity:1}.gallery__card-tag{display:inline-block;width:fit-content;padding:4px 12px;border-radius:50px;background:#f97316d9;color:#fff;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.gallery__card-caption{color:#fff;font-size:.95rem;font-weight:600;line-height:1.3}.gallery__lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#000000eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px;animation:gallery-fade-in .3s ease}.gallery__lightbox-inner{max-width:960px;width:100%;text-align:center;position:relative}.gallery__lightbox-inner img{max-height:78vh;width:auto;max-width:100%;border-radius:var(--radius-lg);margin:0 auto;object-fit:contain;box-shadow:0 20px 60px #00000080}.gallery__lightbox-meta{margin-top:20px}.gallery__lightbox-meta p{margin-top:10px;color:var(--text-muted);font-size:1.05rem}.gallery__close{position:absolute;top:-44px;right:0;font-size:1.5rem;color:var(--text);padding:8px;z-index:1}.gallery-page{padding-top:var(--nav-h)}.linkedin-page{padding-top:var(--nav-h);min-height:calc(100vh - var(--nav-h))}.linkedin-page__hero{padding:56px 0 40px;border-bottom:1px solid var(--border);background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(249,115,22,.08),transparent),var(--bg-card)}.linkedin-page__hero-inner{text-align:center;max-width:640px}.linkedin-page__title{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.75rem);font-weight:800;margin:12px 0 16px}.linkedin-page__subtitle{color:var(--text-muted);font-size:1.05rem;line-height:1.7;margin-bottom:24px}.linkedin-page__open-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:var(--radius);background:#0a66c2;color:#fff;font-weight:600;font-size:.95rem;transition:background var(--transition),transform var(--transition)}.linkedin-page__open-btn:hover{background:#004182;transform:translateY(-2px)}.linkedin-page__body{padding-top:48px;padding-bottom:64px}.linkedin-page__grid{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start;max-width:980px;margin:0 auto}.linkedin-card{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);background:var(--bg-elevated);box-shadow:0 16px 48px #00000047}.linkedin-card__cover{height:120px;background:linear-gradient(135deg,#0a66c2,#004182 55%,#0b1f33)}.linkedin-card__body{padding:0 28px 32px;position:relative}.linkedin-card__avatar{width:112px;height:112px;border-radius:50%;object-fit:cover;object-position:center top;border:4px solid var(--bg-elevated);margin-top:-56px;display:block;box-shadow:0 8px 24px #00000059}.linkedin-card__name{font-family:var(--font-display);font-size:1.6rem;font-weight:800;margin:14px 0 6px}.linkedin-card__headline{color:var(--text-muted);font-size:1rem;line-height:1.5;margin-bottom:6px}.linkedin-card__location{color:var(--text-dim);font-size:.9rem;margin-bottom:4px}.linkedin-card__company-line{color:#4d9de0;font-size:.92rem;font-weight:600;margin-bottom:4px}.linkedin-card__connections{color:var(--text-muted);font-size:.88rem;margin-bottom:12px}.linkedin-card__tagline{color:var(--text-muted);font-size:.95rem;line-height:1.6;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border)}.linkedin-card__actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px}.linkedin-card__connect-btn{display:inline-flex;align-items:center;padding:12px 24px;border-radius:var(--radius);border:1px solid #0a66c2;color:#0a66c2;font-weight:600;font-size:.95rem;transition:background var(--transition),color var(--transition)}.linkedin-card__connect-btn:hover{background:#0a66c21f;color:#4d9de0}.linkedin-card__section{padding-top:22px;border-top:1px solid var(--border);margin-top:8px}.linkedin-card__section h3{font-size:1.05rem;font-weight:700;margin-bottom:12px;color:var(--orange)}.linkedin-card__section p{color:var(--text-muted);font-size:.95rem;line-height:1.7;margin-bottom:12px}.linkedin-card__section p:last-child{margin-bottom:0}.linkedin-card__list{list-style:none;display:flex;flex-direction:column;gap:8px}.linkedin-card__list li{color:var(--text-muted);font-size:.92rem;padding-left:14px;position:relative}.linkedin-card__list li:before{content:"•";position:absolute;left:0;color:var(--orange)}.linkedin-card__tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px}.linkedin-card__tags li{padding:6px 12px;border-radius:999px;background:#f973161a;border:1px solid rgba(249,115,22,.25);color:var(--text-muted);font-size:.82rem}.linkedin-card__tags--skills li{background:#0a66c21f;border-color:#0a66c24d}.linkedin-card__badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;background:#22c55e26;color:#4ade80;font-size:.7rem;font-weight:600;vertical-align:middle}.linkedin-card__experience p{margin-top:6px;font-size:.88rem;line-height:1.6;color:var(--text-dim)}.linkedin-card__education-list{list-style:none;display:flex;flex-direction:column;gap:18px}.linkedin-card__education{display:flex;flex-direction:column;gap:2px}.linkedin-card__education strong{font-size:.95rem}.linkedin-card__education span{color:var(--text-muted);font-size:.9rem}.linkedin-card__education small{color:var(--text-dim);font-size:.82rem}.linkedin-card__contact{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.linkedin-card__contact a{color:#4d9de0;font-size:.88rem}.linkedin-card__contact a:hover{color:var(--orange)}.linkedin-card__experience{list-style:none;display:flex;flex-direction:column;gap:16px}.linkedin-card__experience li{display:flex;flex-direction:column;gap:2px}.linkedin-card__experience strong{font-size:.95rem}.linkedin-card__experience span{color:var(--text-muted);font-size:.9rem}.linkedin-card__experience small{color:var(--text-dim);font-size:.82rem}.linkedin-card__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.linkedin-card__stats strong{display:block;font-family:var(--font-display);font-size:1.25rem;color:var(--orange)}.linkedin-card__stats span{font-size:.75rem;color:var(--text-dim)}.linkedin-badge-panel{padding:24px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-elevated);text-align:center}.linkedin-badge-panel h3{font-size:1rem;font-weight:700;margin-bottom:6px}.linkedin-badge-panel>p{color:var(--text-dim);font-size:.85rem;margin-bottom:20px}.linkedin-badge-wrap{min-height:280px;display:flex;align-items:center;justify-content:center;padding:12px;border-radius:var(--radius);background:#0b1f33;margin-bottom:16px}.linkedin-badge-panel__link{color:var(--orange);font-size:.82rem;word-break:break-all;text-decoration:underline;text-underline-offset:3px}.gallery-banner{position:relative;width:100%;min-height:clamp(320px,52vh,520px);overflow:hidden}.gallery-banner__img{width:100%;height:clamp(320px,52vh,520px);object-fit:cover;object-position:22% 38%;display:block}.gallery-banner__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#0a0c120d,#0a0c1233 35%,#0a0c12bf 58%,#0a0c12eb),linear-gradient(to top,rgba(10,12,18,.85) 0%,transparent 55%)}.gallery-banner__content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:flex-end;padding:0 max(4vw,calc((100vw - 1200px)/2 + 4vw)) 48px 4vw;z-index:2}.gallery-banner__text{max-width:520px;text-align:right;margin-left:auto}.gallery-banner__title{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,3.5rem);font-weight:800;margin-bottom:12px}.gallery-banner__subtitle{color:var(--text-muted);font-size:1.1rem;margin-left:auto}.gallery-page__body{background:var(--bg-card)}.photo-timeline{position:relative;padding:20px 0 40px;perspective:1400px}.photo-timeline:before{content:"";position:absolute;left:28px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--orange),var(--border))}.photo-timeline__year-block{position:relative;margin-bottom:56px;padding-left:72px}.photo-timeline__year-marker{position:relative;margin-bottom:28px}.photo-timeline__year-marker:before{content:"";position:absolute;left:-52px;top:10px;width:18px;height:18px;border-radius:50%;background:var(--orange);box-shadow:0 0 16px var(--orange-glow);border:3px solid var(--bg-card)}.photo-timeline__year{font-family:var(--font-display);font-size:2rem;font-weight:800;color:var(--orange);display:block}.photo-timeline__year-label{color:var(--text-muted);font-size:.95rem}.photo-timeline__events{display:flex;flex-direction:column;gap:28px}.photo-timeline__event{width:100%;max-width:720px;transform-style:preserve-3d}.photo-timeline__event--alt{margin-left:auto;margin-right:0}.photo-timeline__scene{transform-style:preserve-3d;transition:transform .5s cubic-bezier(.23,1,.32,1)}.photo-timeline__event:hover .photo-timeline__scene{transform:translateY(-10px) rotateX(5deg) rotateY(-4deg) translateZ(12px)}.photo-timeline__event--alt:hover .photo-timeline__scene{transform:translateY(-10px) rotateX(5deg) rotateY(4deg) translateZ(12px)}.photo-timeline__card{display:grid;grid-template-columns:1fr 1fr;gap:0;width:100%;height:200px;text-align:left;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-elevated);transition:box-shadow .45s ease,border-color .45s ease;box-shadow:0 6px 16px #00000038,0 2px 4px #0000001f;transform-style:preserve-3d}.photo-timeline__event--alt .photo-timeline__card{grid-template-columns:1fr 1fr}.photo-timeline__event--alt .photo-timeline__img-wrap{order:2}.photo-timeline__event:hover .photo-timeline__card{border-color:#f9731673;box-shadow:0 24px 48px #00000061,0 8px 20px #f973161f,inset 0 1px #ffffff0f}.photo-timeline__img-wrap{position:relative;height:200px;overflow:hidden;background:#0a0c12}.photo-timeline__img-wrap img{width:100%;height:100%;object-fit:cover;object-position:var(--img-pos, center center);display:block;transition:transform .55s ease}.photo-timeline__shine{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(125deg,rgba(255,255,255,.18) 0%,transparent 42%,transparent 100%);pointer-events:none;opacity:.7;transition:opacity .4s ease}.photo-timeline__event:hover .photo-timeline__shine{opacity:1}.photo-timeline__event:hover .photo-timeline__img-wrap img{transform:scale(1.06)}.photo-timeline__meta{padding:20px 22px;height:200px;display:flex;flex-direction:column;justify-content:center;gap:8px;overflow:hidden;background:linear-gradient(135deg,var(--bg-elevated),rgba(22,27,40,.95));border-left:1px solid var(--border)}.photo-timeline__event--alt .photo-timeline__meta{border-left:none;border-right:1px solid var(--border)}.photo-timeline__date{font-size:.75rem;color:var(--orange);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.photo-timeline__meta h3{font-family:var(--font-display);font-size:1.1rem;line-height:1.3}.photo-timeline__meta p{color:var(--text-muted);font-size:.82rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gallery__lightbox-meta small{display:block;margin-top:8px;color:var(--text-dim)}.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.contact__card{display:flex;align-items:center;gap:16px;padding:20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;transition:all var(--transition)}.contact__card:hover{border-color:#f973164d}.contact__icon{font-size:1.5rem}.contact__card strong{display:block;font-size:.8rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.contact__card a,.contact__card span{font-size:.95rem;color:var(--text)}.contact__social{display:flex;gap:12px;margin-top:24px}.contact__social-btn{padding:10px 20px;border-radius:50px;border:1px solid var(--border);font-size:.9rem;font-weight:600;transition:all var(--transition)}.contact__social-btn:hover{border-color:var(--orange);background:#f9731614}.contact__social-btn--whatsapp{background:#25d3661a;border-color:#25d3664d;color:#25d366}.contact__cta-box{text-align:center;padding:48px 32px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg)}.contact__avatar-wrap{width:128px;height:128px;margin:0 auto 24px;border-radius:50%;padding:4px;background:linear-gradient(135deg,var(--orange),var(--orange-light));box-shadow:0 8px 24px var(--orange-glow)}.contact__avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center 12%;display:block;border:3px solid var(--bg-card)}.contact__cta-box h3{font-family:var(--font-display);font-size:1.4rem;margin-bottom:12px}.contact__cta-box p{color:var(--text-muted);margin-bottom:28px;line-height:1.7}.footer{padding:40px 0;border-top:1px solid var(--border)}.footer__inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}.footer__brand{display:flex;align-items:center;gap:20px;flex:1;min-width:280px}.footer__brand img:not(.logo__img){width:36px;height:36px;border-radius:8px}.footer__brand strong{display:block;font-size:.95rem}.footer__brand span{color:var(--text-dim);font-size:.8rem}.footer__copy{color:var(--text-dim);font-size:.85rem}.footer__link{font-size:.9rem;font-weight:600}.whatsapp-btn{position:fixed;bottom:28px;right:28px;z-index:999;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #25d36666;transition:all var(--transition)}.whatsapp-btn:hover{transform:scale(1.1);color:#fff;box-shadow:0 6px 30px #25d36680}@media(max-width:1024px){.hero{grid-template-columns:1fr;text-align:center;padding-top:calc(var(--nav-h) + 60px)}.hero__content{padding-left:0}.hero__subtitle{margin:0 auto 32px}.hero__actions,.hero__stats{justify-content:center}.hero__photo-wrap{padding-right:0;margin-top:20px}.hero__photo{width:240px;height:240px}.hero__photo-ring{width:300px;height:300px}.hero__photo-glow{width:260px;height:260px}.about__grid,.skills__layout{grid-template-columns:1fr}.skills-scene{height:350px}.services__grid{grid-template-columns:repeat(2,1fr)}.contact__grid{grid-template-columns:1fr}}@media(max-width:768px){.gallery-banner__content{justify-content:flex-end;align-items:flex-end;padding:0 20px 32px}.gallery-banner__text{max-width:62%;text-align:right}.gallery-banner__img{object-position:28% 30%}.linkedin-page__grid{grid-template-columns:1fr}.linkedin-card__stats{grid-template-columns:repeat(2,1fr)}.linkedin-card__actions{flex-direction:column}.linkedin-card__actions a{width:100%;justify-content:center}.linkedin-card__contact{flex-direction:column;gap:10px}.navbar__links{display:none;position:absolute;top:var(--nav-h);left:0;right:0;flex-direction:column;background:#0a0c12f2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:20px;border-bottom:1px solid var(--border)}.navbar__links--open{display:flex}.navbar__cta{display:none}.navbar__burger{display:flex}.navbar__burger--open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.navbar__burger--open span:nth-child(2){opacity:0}.navbar__burger--open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.section{padding:70px 0}.services__grid{grid-template-columns:1fr}.gallery__bento{grid-template-columns:repeat(2,1fr)}.gallery__card--hero{grid-column:span 2;grid-row:span 1;min-height:300px}.gallery__card--portrait{grid-row:span 1;min-height:280px}.gallery__card--landscape-wide{grid-column:span 2}.hero__scroll-hint{display:none}.footer__inner{flex-direction:column;text-align:center}}@media(max-width:480px){.hero__photo{width:200px;height:200px}.hero__stats{gap:20px}.photo-timeline:before{left:16px}.photo-timeline__year-block{padding-left:48px}.photo-timeline__year-marker:before{left:-40px}.photo-timeline__event,.photo-timeline__event--alt{max-width:100%;margin-left:0}.photo-timeline__event:hover .photo-timeline__scene,.photo-timeline__event--alt:hover .photo-timeline__scene{transform:translateY(-6px) translateZ(0)}.photo-timeline__card{grid-template-columns:1fr;height:auto}.photo-timeline__event--alt .photo-timeline__img-wrap{order:0}.photo-timeline__img-wrap,.photo-timeline__img-wrap img{height:184px}.photo-timeline__meta{height:auto;min-height:140px;border-left:none!important;border-right:none!important;border-top:1px solid var(--border)}.gallery__filters{gap:8px}.gallery__filter{padding:8px 16px;font-size:.85rem}}
