:root{--pf-bg: #f1ecdf;--pf-card: rgba(255, 255, 255, .65);--pf-card-h: rgba(255, 255, 255, .95);--pf-border: rgba(143, 155, 107, .2);--pf-border-h: rgba(143, 155, 107, .52);--pf-olive: #8f9b6b;--pf-olive-d: #6f7b52;--pf-gold: #b7a66a;--pf-gold-l: #d4c48a;--pf-text: #2f2f2a;--pf-sub: #6a6d5d;--pf-muted: #9a9d8c;--pf-shadow: 0 4px 24px rgba(90, 90, 60, .1);--pf-shadow-h: 0 16px 48px rgba(90, 90, 60, .18), 0 2px 8px rgba(143,155,107,.12);--pf-glow: rgba(143, 155, 107, .32);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1)}html.capaci{--pf-bg: #f5f4fc;--pf-card: rgba(255, 255, 255, .88);--pf-card-h: rgba(255, 255, 255, .97);--pf-border: rgba(102, 126, 234, .18);--pf-border-h: rgba(102, 126, 234, .4);--pf-olive: #667eea;--pf-olive-d: #5a6fd6;--pf-gold: #764ba2;--pf-gold-l: #9b7bc8;--pf-text: #1a1a2e;--pf-sub: #6b7280;--pf-muted: #9ca3af;--pf-shadow: 0 4px 24px rgba(102, 126, 234, .1);--pf-shadow-h: 0 16px 48px rgba(102, 126, 234, .16), 0 2px 8px rgba(102, 126, 234, .1);--pf-glow: rgba(102, 126, 234, .28)}.dark,html.dark{--pf-bg: #0c0f14;--pf-card: rgba(22, 28, 38, .78);--pf-card-h: rgba(30, 38, 52, .96);--pf-border: rgba(160, 185, 210, .14);--pf-border-h: rgba(180, 200, 230, .32);--pf-olive: #7c90a8;--pf-olive-d: #94a8c0;--pf-gold: #a0b0c8;--pf-gold-l: #b4c2d8;--pf-text: #e8ebf2;--pf-sub: #8c9cb2;--pf-muted: #5a6578;--pf-shadow: 0 6px 28px rgba(4, 8, 18, .42);--pf-shadow-h: 0 18px 52px rgba(4, 8, 18, .5), 0 2px 10px rgba(100, 125, 160, .1);--pf-glow: rgba(124, 144, 168, .22)}.fire,html.fire{--pf-bg: #1a1b1d;--pf-card: rgba(34, 35, 38, .88);--pf-card-h: rgba(40, 41, 44, .96);--pf-border: rgba(200, 120, 85, .14);--pf-border-h: rgba(220, 140, 95, .3);--pf-olive: #c47a42;--pf-olive-d: #d49058;--pf-gold: #c9a24a;--pf-gold-l: #d8b860;--pf-text: #ebe4de;--pf-sub: #9a8578;--pf-muted: #6a5850;--pf-shadow: 0 6px 28px rgba(10, 4, 2, .42);--pf-shadow-h: 0 18px 52px rgba(8, 3, 2, .5), 0 2px 10px rgba(160, 80, 50, .1);--pf-glow: rgba(196, 122, 66, .2)}.sepia,html.sepia{--pf-bg: #e8dcc8;--pf-card: rgba(255, 252, 246, .82);--pf-card-h: rgba(255, 253, 250, .96);--pf-border: rgba(150, 125, 82, .24);--pf-border-h: rgba(130, 105, 65, .45);--pf-olive: #6d5c38;--pf-olive-d: #5a4a2a;--pf-gold: #a68940;--pf-gold-l: #c4a060;--pf-text: #2a2218;--pf-sub: #5e5346;--pf-muted: #8a7c68;--pf-shadow: 0 6px 26px rgba(55, 42, 26, .1), 0 1px 0 rgba(255, 255, 255, .5) inset;--pf-shadow-h: 0 18px 48px rgba(55, 42, 26, .14), 0 2px 8px rgba(122, 106, 66, .12);--pf-glow: rgba(122, 106, 66, .28)}.portfolio-page{max-width:1100px;margin:0 auto;padding:clamp(44px,7vw,88px) clamp(18px,4vw,48px) clamp(72px,12vw,120px);display:flex;flex-direction:column;gap:clamp(56px,9vw,112px)}.pf-hero{display:grid;grid-template-columns:1fr auto;gap:clamp(32px,6vw,72px);align-items:center;animation:pfFadeUp .7s var(--ease-smooth) both;padding:clamp(28px,4vw,40px);margin:0;border-radius:20px;border:1px solid var(--pf-border);background:var(--pf-card);-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);box-shadow:var(--pf-shadow)}.pf-hero-left{display:flex;flex-direction:column;gap:clamp(16px,2.5vw,22px)}.pf-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--pf-olive)}.eyebrow-line{display:block;width:28px;height:1.5px;background:var(--pf-olive);border-radius:99px;opacity:.55}.pf-name{font-size:clamp(3rem,8vw,6rem);line-height:.92;letter-spacing:-4px;margin:0;font-variant:small-caps}.pf-name-first{display:block;font-weight:300;color:var(--pf-sub)}.pf-name-last{display:block;font-weight:900;background:linear-gradient(125deg,var(--pf-text) 20%,var(--pf-olive) 60%,var(--pf-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pf-role{font-size:clamp(.82rem,1.5vw,.95rem);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pf-olive);margin:-4px 0 0}.pf-tagline{font-size:clamp(.98rem,2vw,1.12rem);line-height:1.75;color:var(--pf-sub);max-width:36em;margin:0}.pf-hero-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:520px}.pf-hero-stats li{padding:12px 14px;border-radius:12px;border:1px solid var(--pf-border);background:#8f9b6b0f;display:flex;flex-direction:column;gap:4px;transition:border-color .28s var(--ease-smooth),background .28s var(--ease-smooth)}.pf-hero-stats li:hover{border-color:var(--pf-border-h);background:#8f9b6b1a}.dark .pf-hero-stats li,:is(html.dark,html.fire) .pf-hero-stats li{background:#7891b912}.dark .pf-hero-stats li:hover,:is(html.dark,html.fire) .pf-hero-stats li:hover{background:#7891b91f}.sepia .pf-hero-stats li,html.sepia .pf-hero-stats li{background:#7a6a4214}.pf-stat-num{font-size:1.05rem;font-weight:900;letter-spacing:-.5px;color:var(--pf-olive);line-height:1.1}.pf-stat-label{font-size:10px;font-weight:600;letter-spacing:.04em;color:var(--pf-muted);line-height:1.35}.pf-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.pf-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;border-radius:99px;font-size:14px;font-weight:700;letter-spacing:.2px;text-decoration:none;transition:all .38s var(--ease-spring);cursor:pointer;border:none}.pf-btn svg{width:16px;height:16px;flex-shrink:0}.pf-btn-primary{background:linear-gradient(135deg,var(--pf-olive),var(--pf-gold));color:#fff;box-shadow:0 6px 22px var(--pf-glow)}.pf-btn-primary:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 12px 32px var(--pf-glow)}.pf-btn-ghost{background:transparent;color:var(--pf-olive);border:1.5px solid var(--pf-border-h)}.pf-btn-ghost:hover{background:#8f9b6b1a;border-color:var(--pf-olive);transform:translateY(-2px)}.dark .pf-btn-ghost:hover,:is(html.dark,html.fire) .pf-btn-ghost:hover{background:#7891b91f;color:var(--pf-olive-l)}html.sepia .pf-btn-ghost:hover{background:#7a6a421f;border-color:var(--pf-olive);color:var(--pf-olive-d)}.pf-btn-icononly{padding:11px 14px;min-width:44px;justify-content:center}.pf-btn-icononly svg{width:18px;height:18px}.pf-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}.pf-chip{font-size:11px;font-weight:700;letter-spacing:.5px;padding:4px 12px;border-radius:99px;background:#8f9b6b1a;border:1px solid rgba(143,155,107,.25);color:var(--pf-olive-d);transition:all .26s var(--ease-spring)}.pf-chip:hover{background:#8f9b6b33;transform:translateY(-2px)}.dark .pf-chip,:is(html.dark,html.fire) .pf-chip{background:#7891b91a;border-color:#8ca5c338;color:var(--pf-olive-l)}.sepia .pf-chip,html.sepia .pf-chip{background:#7a6a421c;border-color:#967d5247;color:var(--pf-olive-d)}.pf-hero-right{position:relative;width:200px;height:200px;flex-shrink:0}.pf-avatar-wrap{position:relative;width:160px;height:160px;margin:20px auto 0}.pf-avatar-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1.5px solid transparent}.pf-avatar-ring--outer{top:-16px;right:-16px;bottom:-16px;left:-16px;border-color:#8f9b6b38;animation:pfSpin 18s linear infinite}.pf-avatar-ring--inner{top:-8px;right:-8px;bottom:-8px;left:-8px;border-color:#b7a66a2e;animation:pfSpin 12s linear infinite reverse}.dark .pf-avatar-ring--outer,:is(html.dark,html.fire) .pf-avatar-ring--outer{border-color:#8ca5c338}.dark .pf-avatar-ring--inner,:is(html.dark,html.fire) .pf-avatar-ring--inner{border-color:#7891b929}.sepia .pf-avatar-ring--outer,html.sepia .pf-avatar-ring--outer{border-color:#967d5247}.sepia .pf-avatar-ring--inner,html.sepia .pf-avatar-ring--inner{border-color:#b4965f38}.pf-avatar{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,var(--pf-olive),var(--pf-gold));display:flex;align-items:center;justify-content:center;font-size:2.8rem;font-weight:900;color:#fff;letter-spacing:-2px;box-shadow:0 8px 32px var(--pf-glow);font-variant:small-caps;position:relative;z-index:1}.pf-stat-float{position:absolute;display:flex;flex-direction:column;align-items:center;background:var(--pf-card);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border:1px solid var(--pf-border);border-radius:12px;padding:8px 14px;box-shadow:var(--pf-shadow);animation:pfFloat 4s ease-in-out infinite}.pf-stat-float--1{top:0;right:-10px;animation-delay:0s}.pf-stat-float--2{bottom:0;left:-10px;animation-delay:2s}.psf-n{font-size:1.1rem;font-weight:900;color:var(--pf-olive);line-height:1;letter-spacing:-.5px}.psf-l{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--pf-muted)}.pf-section{animation:pfFadeUp .65s var(--ease-smooth) backwards}.pf-section-head{margin-bottom:clamp(28px,4vw,44px);display:flex;flex-direction:column;gap:8px}.pf-section-tag{font-size:10px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--pf-olive);display:flex;align-items:center;gap:8px}.pf-section-tag:after{content:"";display:inline-block;width:32px;height:1.5px;background:linear-gradient(90deg,var(--pf-olive),transparent);border-radius:99px}.pf-section-head h2{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900;letter-spacing:-2px;line-height:1;color:var(--pf-text);font-variant:small-caps;margin:0}.pf-section-lead{font-size:clamp(.95rem,1.8vw,1.05rem);line-height:1.65;color:var(--pf-sub);margin:4px 0 0;max-width:52ch}.pf-about-body{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,48px);align-items:start}.pf-about-text{display:flex;flex-direction:column;gap:16px}.pf-about-text p{font-size:1rem;line-height:1.78;color:var(--pf-sub);margin:0}.pf-about-text strong{color:var(--pf-text);font-weight:700}.pf-pullquote{margin:8px 0;padding:18px 20px;border-left:4px solid var(--pf-olive);border-radius:0 12px 12px 0;background:#8f9b6b14;font-size:1.05rem;line-height:1.65;font-style:italic;color:var(--pf-text)}.dark .pf-pullquote,:is(html.dark,html.fire) .pf-pullquote{background:#7891b917}.sepia .pf-pullquote,html.sepia .pf-pullquote{background:#7a6a4217}.pf-pullquote strong{font-style:normal;color:var(--pf-olive)}.pf-about-cards{display:flex;flex-direction:column;gap:10px}.pf-info-card{display:flex;align-items:center;gap:14px;padding:14px 18px;background:var(--pf-card);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border:1px solid var(--pf-border);border-radius:12px;box-shadow:var(--pf-shadow);transition:all .32s var(--ease-spring)}.pf-info-card:hover{border-color:var(--pf-border-h);transform:translate(4px);box-shadow:var(--pf-shadow-h)}a.pf-info-card--link{text-decoration:none;color:inherit;cursor:pointer}a.pf-info-card--link:hover div span{color:var(--pf-olive)}.pf-info-card svg{width:20px;height:20px;color:var(--pf-olive);flex-shrink:0;opacity:.8}.pf-info-card div{display:flex;flex-direction:column;gap:2px}.pf-info-card strong{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--pf-muted)}.pf-info-card span{font-size:14px;font-weight:500;color:var(--pf-text)}.pf-skills-bento{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:14px;align-items:stretch}.pf-skill-panel{background:var(--pf-card);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border:1px solid var(--pf-border);border-radius:16px;padding:22px 20px 24px;box-shadow:var(--pf-shadow);transition:all .32s var(--ease-spring);position:relative;overflow:hidden}.pf-skill-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--pf-olive),var(--pf-gold));transform:scaleX(0);transform-origin:left;transition:transform .38s var(--ease-smooth)}.pf-skill-panel:hover{border-color:var(--pf-border-h);transform:translateY(-3px);box-shadow:var(--pf-shadow-h)}.pf-skill-panel:hover:before{transform:scaleX(1)}.pf-skill-panel--accent{background:linear-gradient(160deg,rgba(143,155,107,.1),var(--pf-card) 55%)}.dark .pf-skill-panel--accent,:is(html.dark,html.fire) .pf-skill-panel--accent{background:linear-gradient(160deg,rgba(120,145,185,.12),var(--pf-card) 55%)}.sepia .pf-skill-panel--accent,html.sepia .pf-skill-panel--accent{background:linear-gradient(160deg,rgba(122,106,66,.11),var(--pf-card) 55%)}.pf-skill-cat{font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--pf-olive);margin:0 0 16px}.pf-skill-bars{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.pf-skill-bars li{display:grid;grid-template-columns:minmax(100px,38%) 1fr;align-items:center;gap:10px 14px}.pf-sb-name{font-size:13px;font-weight:600;color:var(--pf-text)}.pf-sb-track{height:7px;border-radius:99px;background:#8f9b6b1f;border:1px solid rgba(143,155,107,.2);overflow:hidden}.dark .pf-sb-track,:is(html.dark,html.fire) .pf-sb-track{background:#7891b91c;border-color:#8ca5c333}.sepia .pf-sb-track,html.sepia .pf-sb-track{background:#7a6a421f;border-color:#967d5242}.pf-sb-fill{display:block;height:100%;width:calc(var(--lvl) * 1%);border-radius:inherit;background:linear-gradient(90deg,var(--pf-olive),var(--pf-gold));box-shadow:0 0 12px #8f9b6b59;transition:width .8s var(--ease-smooth)}.dark .pf-sb-fill,:is(html.dark,html.fire) .pf-sb-fill{box-shadow:0 0 12px #6482af52}.pf-skill-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px}.pf-skill-list--compact li{font-size:13.5px}.pf-skill-list li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--pf-text)}.pf-skill-dot{width:6px;height:6px;border-radius:50%;background:linear-gradient(135deg,var(--pf-olive),var(--pf-gold));flex-shrink:0}.pf-skill-dot--dim{background:var(--pf-muted);opacity:.5}.pf-timeline{position:relative;display:flex;flex-direction:column;gap:0}.pf-timeline:before{content:"";position:absolute;left:169px;top:12px;bottom:12px;width:1.5px;background:linear-gradient(180deg,var(--pf-olive),rgba(143,155,107,.1))}.dark .pf-timeline:before,:is(html.dark,html.fire) .pf-timeline:before{background:linear-gradient(180deg,var(--pf-olive),rgba(120,145,185,.1))}.sepia .pf-timeline:before,html.sepia .pf-timeline:before{background:linear-gradient(180deg,var(--pf-olive),rgba(150,125,82,.12))}.pf-tl-item{display:grid;grid-template-columns:140px 28px 1fr;gap:0 16px;align-items:start;padding-bottom:28px;animation:pfFadeUp .55s var(--ease-smooth) backwards}.pf-tl-item:nth-child(1){animation-delay:.06s}.pf-tl-item:nth-child(2){animation-delay:.1s}.pf-tl-item:nth-child(3){animation-delay:.14s}.pf-tl-item:nth-child(4){animation-delay:.18s}.pf-tl-item:nth-child(5){animation-delay:.22s}.pf-tl-item:nth-child(6){animation-delay:.26s}.pf-tl-item:last-child{padding-bottom:0}.pf-tl-date{font-size:11px;font-weight:600;color:var(--pf-muted);text-align:right;padding-top:3px;line-height:1.4}.pf-tl-dot{width:12px;height:12px;border-radius:50%;background:var(--pf-bg);border:2px solid var(--pf-olive);margin-top:4px;justify-self:center;transition:all .3s ease;position:relative;z-index:1}.pf-tl-item--primary .pf-tl-dot{background:linear-gradient(135deg,var(--pf-olive),var(--pf-gold));border-color:transparent;box-shadow:0 0 0 3px #8f9b6b40}.pf-tl-item:hover .pf-tl-dot{transform:scale(1.3);box-shadow:0 0 0 4px #8f9b6b33}.dark .pf-tl-item--primary .pf-tl-dot,:is(html.dark,html.fire) .pf-tl-item--primary .pf-tl-dot{box-shadow:0 0 0 3px #6482af59}.dark .pf-tl-item:hover .pf-tl-dot,:is(html.dark,html.fire) .pf-tl-item:hover .pf-tl-dot{box-shadow:0 0 0 4px #6482af40}.sepia .pf-tl-item--primary .pf-tl-dot,html.sepia .pf-tl-item--primary .pf-tl-dot{box-shadow:0 0 0 3px #967d5247}.sepia .pf-tl-item:hover .pf-tl-dot,html.sepia .pf-tl-item:hover .pf-tl-dot{box-shadow:0 0 0 4px #967d5238}.pf-tl-content{padding-top:0;display:flex;flex-direction:column;gap:5px}.pf-tl-badge{font-size:9px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--pf-olive);background:#8f9b6b1a;border:1px solid rgba(143,155,107,.22);border-radius:99px;padding:2px 9px;align-self:flex-start}.dark .pf-tl-badge,:is(html.dark,html.fire) .pf-tl-badge{background:#7891b91f;border-color:#8ca5c342;color:var(--pf-olive-l)}.sepia .pf-tl-badge,html.sepia .pf-tl-badge{background:#7a6a421c;border-color:#967d5247;color:var(--pf-olive-d)}.pf-tl-content h3{font-size:1.1rem;font-weight:800;color:var(--pf-text);letter-spacing:-.4px;margin:0}.pf-tl-content p{font-size:13.5px;color:var(--pf-sub);line-height:1.6;margin:0}.pf-featured-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;grid-template-rows:auto auto;gap:14px}.pf-feat-card--main{grid-column:1;grid-row:1 / span 2;justify-content:space-between}.pf-featured-grid>.pf-feat-card:nth-child(2){grid-column:2;grid-row:1}.pf-featured-grid>.pf-feat-card:nth-child(3){grid-column:3;grid-row:1}.pf-feat-card--all{grid-column:2 / -1;grid-row:2}.pf-feat-card{background:var(--pf-card);-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid var(--pf-border);border-radius:18px;padding:26px 24px 22px;text-decoration:none;color:var(--pf-text);display:flex;flex-direction:column;gap:10px;box-shadow:var(--pf-shadow);position:relative;overflow:hidden;transition:transform .38s var(--ease-spring),box-shadow .32s var(--ease-smooth),background .28s var(--ease-smooth),border-color .28s var(--ease-smooth)}.pf-feat-card:after{content:"";position:absolute;top:0;left:0;width:0;height:2.5px;background:linear-gradient(90deg,var(--pf-olive),var(--pf-gold));transition:width .44s var(--ease-smooth)}.pf-feat-card:hover{transform:translateY(-5px);background:var(--pf-card-h);border-color:var(--pf-border-h);box-shadow:var(--pf-shadow-h)}.pf-feat-card:hover:after{width:100%}.pf-feat-top{display:flex;flex-direction:column;gap:10px}.pf-feat-tag{font-size:9px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--pf-olive);background:#8f9b6b1a;border:1px solid rgba(143,155,107,.22);border-radius:99px;padding:3px 10px;align-self:flex-start}.dark .pf-feat-tag,:is(html.dark,html.fire) .pf-feat-tag{background:#7891b91f;border-color:#8ca5c33d;color:var(--pf-olive-l)}.sepia .pf-feat-tag,html.sepia .pf-feat-tag{background:#7a6a421c;border-color:#967d5242;color:var(--pf-olive-d)}.pf-feat-card h3{font-size:1.4rem;font-weight:900;letter-spacing:-1px;color:var(--pf-text);margin:0;line-height:1.1}.pf-feat-card--main h3{font-size:2rem}.pf-feat-card p{font-size:13.5px;color:var(--pf-sub);line-height:1.6;margin:0}.pf-feat-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--pf-olive);transition:gap .26s var(--ease-spring)}.pf-feat-link svg{width:14px;height:14px}.pf-feat-card:hover .pf-feat-link{gap:10px}.pf-feat-card--all{background:linear-gradient(145deg,#8f9b6b14,#b7a66a0f);border-style:dashed;align-items:center;text-align:center;justify-content:center;gap:12px}.dark .pf-feat-card--all,:is(html.dark,html.fire) .pf-feat-card--all{background:linear-gradient(145deg,#6482af1f,#506e960f)}.sepia .pf-feat-card--all,html.sepia .pf-feat-card--all{background:linear-gradient(145deg,#7a6a421a,#b4965f0f)}.pf-feat-card--all h3{font-size:1rem}.pf-feat-card--all p{font-size:12px}.pf-feat-all-icon{font-size:2.4rem;color:var(--pf-olive);font-weight:900;line-height:1;transition:transform .32s var(--ease-spring)}.pf-feat-card--all:hover .pf-feat-all-icon{transform:translate(6px)}.pf-cta{border-radius:24px;background:linear-gradient(135deg,#8f9b6b1f,#b7a66a14);border:1px solid var(--pf-border-h);padding:clamp(40px,7vw,64px) clamp(28px,5vw,60px);text-align:center;box-shadow:var(--pf-shadow);animation:pfFadeUp .7s var(--ease-smooth) .2s both}.dark .pf-cta,:is(html.dark,html.fire) .pf-cta{background:linear-gradient(135deg,#6482af24,#465f8214);border-color:var(--pf-border-h)}.sepia .pf-cta,html.sepia .pf-cta{background:linear-gradient(135deg,#7a6a421c,#b4965f14)}.pf-cta-inner{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:540px;margin:0 auto}.pf-cta h2{font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:900;letter-spacing:-1.5px;line-height:1.1;color:var(--pf-text);margin:0;font-variant:small-caps}.pf-cta p{font-size:1rem;color:var(--pf-sub);margin:0}.pf-cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:8px}@keyframes pfFadeUp{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes pfSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pfFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.pf-section.pf-featured{animation-delay:.04s}.pf-section.pf-about{animation-delay:.06s}.pf-section.pf-skills{animation-delay:.08s}.pf-section.pf-xp{animation-delay:.1s}.pf-cta{animation-delay:.12s}@media(max-width:900px){.pf-hero{grid-template-columns:1fr}.pf-hero-right{display:none}.pf-about-body{grid-template-columns:1fr}.pf-skills-bento{grid-template-columns:1fr 1fr}.pf-skill-panel:first-child{grid-column:1 / -1}.pf-timeline:before{left:100px}.pf-tl-item{grid-template-columns:100px 24px 1fr}.pf-tl-date{font-size:10px}.pf-featured-grid{grid-template-columns:1fr 1fr}.pf-feat-card--main{grid-column:1 / -1;grid-row:auto}.pf-featured-grid>.pf-feat-card:nth-child(2){grid-column:1;grid-row:auto}.pf-featured-grid>.pf-feat-card:nth-child(3){grid-column:2;grid-row:auto}.pf-feat-card--all{grid-column:1 / -1;grid-row:auto}}@media(max-width:600px){.portfolio-page{padding:32px 16px 60px;gap:52px}.pf-name{letter-spacing:-2.5px}.pf-hero-stats{grid-template-columns:1fr;max-width:none}.pf-skills-bento{grid-template-columns:1fr}.pf-skill-panel:first-child{grid-column:1}.pf-skill-bars li{grid-template-columns:1fr;gap:6px}.pf-timeline:before{display:none}.pf-tl-item{grid-template-columns:1fr;gap:4px}.pf-tl-dot{display:none}.pf-tl-date{text-align:left}.pf-featured-grid{grid-template-columns:1fr}.pf-hero-actions{flex-direction:column}.pf-btn{justify-content:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}html.capaci .pf-hero-stats li{background:#667eea0f}html.capaci .pf-hero-stats li:hover,html.capaci .pf-btn-ghost:hover{background:#667eea1a}html.capaci .pf-chip{background:#667eea1a;border-color:#667eea40}html.capaci .pf-chip:hover{background:#667eea2e}html.capaci .pf-avatar-ring--outer{border-color:#667eea47}html.capaci .pf-avatar-ring--inner{border-color:#9b78c838}html.capaci .pf-pullquote{background:#667eea14}html.capaci .pf-skill-panel--accent{background:linear-gradient(160deg,rgba(102,126,234,.1),var(--pf-card) 55%)}html.capaci .pf-sb-track{background:#667eea1f;border-color:#667eea38}html.capaci .pf-sb-fill{box-shadow:0 0 12px #667eea59}html.capaci .pf-timeline:before{background:linear-gradient(180deg,var(--pf-olive),rgba(102,126,234,.1))}html.capaci .pf-tl-item--primary .pf-tl-dot{box-shadow:0 0 0 3px #667eea47}html.capaci .pf-tl-item:hover .pf-tl-dot{box-shadow:0 0 0 4px #667eea38}html.capaci .pf-feat-tag{background:#667eea1a;border-color:#667eea38}html.capaci .pf-feat-card--all{background:linear-gradient(145deg,#667eea14,#764ba20f)}
