:root,html[data-theme=dark]{color-scheme:dark;--bg:#0b1220;--body-bg: radial-gradient(900px 500px at 20% 0%, rgba(121,191,101,.16), transparent 55%), radial-gradient(900px 500px at 80% 10%, rgba(50,140,98,.18), transparent 55%), linear-gradient(180deg, #070b14 0%, var(--bg) 100%);--card:rgba(255,255,255,.06);--text:rgba(255,255,255,.92);--text-strong:#ffffff;--text-soft:rgba(255,255,255,.86);--muted:rgba(255,255,255,.7);--line:rgba(255,255,255,.14);--ash3-dark:#151B26;--ash3-g1:#2C7359;--ash3-g2:#328C62;--ash3-g3:#79BF65;--ash3-y:#D5D973;--surface-1:rgba(255,255,255,.06);--surface-2:rgba(255,255,255,.05);--surface-3:rgba(255,255,255,.04);--surface-4:rgba(255,255,255,.03);--surface-5:rgba(255,255,255,.02);--surface-hover:rgba(255,255,255,.055);--surface-hover-soft:rgba(255,255,255,.035);--surface-hover-softer:rgba(255,255,255,.028);--header-bg:rgba(7,11,20,.55);--mobile-menu-bg:rgba(7,11,20,.78);--footer-bg:rgba(21,27,38,.92);--footer-text:rgba(255,255,255,.92);--footer-muted:rgba(255,255,255,.65);--footer-title:rgba(255,255,255,.7);--footer-kicker:rgba(255,255,255,.72);--footer-link-hover:var(--ash3-y);--modal-overlay:rgba(0,0,0,.72);--modal-bg:rgba(10,14,25,.92);--image-bg:rgba(0,0,0,.25);--image-border:rgba(255,255,255,.1);--accent:var(--ash3-g2);--accent-border:rgba(50,140,98,.6);--accent-border-strong:rgba(50,140,98,.9);--accent-soft:rgba(50,140,98,.08);--accent-soft-2:rgba(50,140,98,.12);--accent-soft-3:rgba(50,140,98,.14);--accent-glow:rgba(50,140,98,.12);--green-soft:rgba(121,191,101,.1);--green-border:rgba(121,191,101,.35);--green-border-strong:rgba(121,191,101,.6);--green-border-soft:rgba(121,191,101,.18);--green-border-tag:rgba(121,191,101,.22);--skill-pill-bg:linear-gradient(135deg, rgba(44,115,89,.94), rgba(50,140,98,.86));--skill-pill-bg-hover:linear-gradient(135deg, rgba(50,140,98,.96), rgba(121,191,101,.42));--skill-pill-text:#ffffff;--skill-pill-border:var(--green-border-strong);--skill-pill-border-hover:var(--accent-border-strong);--skill-pill-shadow:0 10px 26px var(--shadow-softer-color);--skill-pill-shadow-hover:0 14px 30px var(--shadow-soft-color);--brand-dot-shadow:0 0 0 3px rgba(121,191,101,.18);--button-primary-border:rgba(121,191,101,.55);--button-primary-bg:linear-gradient(135deg, rgba(44,115,89,.35), rgba(213,217,115,.12));--icon-pill-bg:radial-gradient(circle at 30% 30%, rgba(255,255,255,.06), transparent 60%), linear-gradient(145deg, rgba(255,255,255,.03), rgba(0,0,0,.25));--icon-pill-bg-soft:radial-gradient(120% 120% at 30% 20%, rgba(255,255,255,.1), rgba(255,255,255,.03));--icon-pill-bg-hover:radial-gradient(120% 120% at 30% 20%, rgba(50,140,98,.22), rgba(255,255,255,.03));--icon-pill-bg-open:radial-gradient(120% 120% at 30% 20%, rgba(50,140,98,.2), rgba(255,255,255,.03));--icon-inset:rgba(255,255,255,.05);--mobile-divider:rgba(255,255,255,.1);--stroke:rgba(255,255,255,.08);--stroke2:rgba(255,255,255,.12);--bgSoft:rgba(255,255,255,.03);--bgSofter:rgba(255,255,255,.02);--pill-bg:rgba(255,255,255,.04);--pill-bg-2:rgba(255,255,255,.06);--radius:16px;--shadow-card:0 18px 60px rgba(0,0,0,.45);--shadow-image:0 18px 60px rgba(0,0,0,.38);--shadow-thumb:0 12px 36px rgba(0,0,0,.35);--shadow-hover:0 18px 60px rgba(0,0,0,.38), 0 0 0 3px var(--accent-glow);--shadow-soft-color:rgba(0,0,0,.32);--shadow-softer-color:rgba(0,0,0,.24);--shadow-icon:rgba(0,0,0,.22);--shadow-icon-hover:rgba(0,0,0,.3)}html[data-theme=light]{color-scheme:light;--bg:#f6efe3;--body-bg: radial-gradient(900px 500px at 20% 0%, rgba(121,191,101,.18), transparent 55%), radial-gradient(900px 500px at 80% 10%, rgba(50,140,98,.13), transparent 55%), linear-gradient(180deg, #fff8eb 0%, var(--bg) 100%);--card:rgba(255,250,240,.78);--text:#172033;--text-strong:#101827;--text-soft:rgba(23,32,51,.86);--muted:rgba(23,32,51,.7);--line:rgba(21,27,38,.14);--surface-1:rgba(255,250,240,.86);--surface-2:rgba(255,255,255,.72);--surface-3:rgba(255,255,255,.58);--surface-4:rgba(255,255,255,.48);--surface-5:rgba(255,255,255,.34);--surface-hover:rgba(255,255,255,.86);--surface-hover-soft:rgba(255,255,255,.68);--surface-hover-softer:rgba(255,255,255,.54);--header-bg:rgba(246,239,227,.8);--mobile-menu-bg:rgba(246,239,227,.94);--footer-bg:rgba(255,248,235,.92);--footer-text:#172033;--footer-muted:rgba(23,32,51,.66);--footer-title:rgba(23,32,51,.7);--footer-kicker:rgba(23,32,51,.72);--footer-link-hover:var(--ash3-g1);--modal-overlay:rgba(7,11,20,.6);--modal-bg:rgba(255,250,240,.96);--image-bg:rgba(255,255,255,.42);--image-border:rgba(21,27,38,.12);--accent-border:rgba(50,140,98,.56);--accent-border-strong:rgba(50,140,98,.82);--accent-soft:rgba(50,140,98,.1);--accent-soft-2:rgba(50,140,98,.13);--accent-soft-3:rgba(50,140,98,.16);--accent-glow:rgba(50,140,98,.12);--green-soft:rgba(121,191,101,.16);--green-border:rgba(50,140,98,.32);--green-border-strong:rgba(50,140,98,.56);--green-border-soft:rgba(50,140,98,.18);--green-border-tag:rgba(50,140,98,.2);--skill-pill-bg:linear-gradient(135deg, rgba(248,253,244,.96), rgba(232,247,224,.74));--skill-pill-bg-hover:linear-gradient(135deg, rgba(251,255,248,.98), rgba(222,244,211,.82));--skill-pill-text:#134b3a;--skill-pill-border:rgba(50,140,98,.24);--skill-pill-border-hover:rgba(50,140,98,.38);--skill-pill-shadow:0 10px 24px rgba(21,27,38,.055), 0 0 18px rgba(121,191,101,.14), inset 0 1px 0 rgba(255,255,255,.88);--skill-pill-shadow-hover:0 14px 28px rgba(21,27,38,.085), 0 0 24px rgba(121,191,101,.22), 0 0 0 3px rgba(50,140,98,.075), inset 0 1px 0 rgba(255,255,255,.94);--brand-dot-shadow:0 0 0 3px rgba(50,140,98,.14);--button-primary-border:rgba(50,140,98,.42);--button-primary-bg:linear-gradient(135deg, rgba(44,115,89,.18), rgba(213,217,115,.2));--icon-pill-bg:radial-gradient(circle at 30% 30%, rgba(255,255,255,.72), transparent 62%), linear-gradient(145deg, rgba(255,255,255,.7), rgba(21,27,38,.08));--icon-pill-bg-soft:radial-gradient(120% 120% at 30% 20%, rgba(255,255,255,.82), rgba(255,255,255,.42));--icon-pill-bg-hover:radial-gradient(120% 120% at 30% 20%, rgba(50,140,98,.15), rgba(255,255,255,.58));--icon-pill-bg-open:radial-gradient(120% 120% at 30% 20%, rgba(50,140,98,.14), rgba(255,255,255,.56));--icon-inset:rgba(255,255,255,.55);--mobile-divider:rgba(21,27,38,.1);--stroke:rgba(21,27,38,.1);--stroke2:rgba(21,27,38,.14);--bgSoft:rgba(255,255,255,.62);--bgSofter:rgba(255,255,255,.44);--pill-bg:rgba(255,255,255,.58);--pill-bg-2:rgba(255,255,255,.72);--shadow-card:0 18px 50px rgba(21,27,38,.13);--shadow-image:0 18px 44px rgba(21,27,38,.16);--shadow-thumb:0 12px 30px rgba(21,27,38,.12);--shadow-hover:0 18px 44px rgba(21,27,38,.15), 0 0 0 3px var(--accent-glow);--shadow-soft-color:rgba(21,27,38,.12);--shadow-softer-color:rgba(21,27,38,.1);--shadow-icon:rgba(21,27,38,.12);--shadow-icon-hover:rgba(21,27,38,.16)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;background:var(--body-bg);color:var(--text)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.container{width:min(1080px,calc(100% - 32px));margin:0 auto}.header{position:sticky;top:0;backdrop-filter:blur(10px);background:var(--header-bg);border-bottom:1px solid var(--line);z-index:10}.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:16px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.2px}.brand:hover{text-decoration:none}.dot{width:10px;height:10px;border-radius:999px;background:linear-gradient(135deg,var(--ash3-g3),var(--ash3-y));box-shadow:var(--brand-dot-shadow)}.nav{display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.nav a{color:var(--muted)}.nav a[data-active=true]{color:var(--text);text-decoration:none}.lang{display:flex;gap:8px;align-items:center;padding-left:12px;margin-left:8px;border-left:1px solid var(--line)}.pill{padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface-3);font-size:13px;color:var(--muted)}.pill[data-active=true]{color:var(--text);border-color:var(--green-border-strong);background:var(--green-soft)}.hero{padding:54px 0 26px}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:26px;align-items:center}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}}.h-title{font-size:44px;line-height:1.05;margin:0 0 10px}.h-sub{margin:0 0 18px;color:var(--muted);font-size:18px;line-height:1.5}.kpis{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0}.kpi{border:1px solid var(--line);background:var(--surface-3);border-radius:999px;padding:8px 12px;font-size:14px;color:var(--muted)}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font-weight:600}.btn.primary{border-color:var(--button-primary-border);background:var(--button-primary-bg)}.card{border:1px solid var(--line);background:var(--surface-3);border-radius:var(--radius);box-shadow:var(--shadow-card);overflow:hidden}.profile{aspect-ratio:4/5;width:100%;object-fit:cover;display:block}.section{padding:26px 0 46px}.h2{font-size:22px;margin:0 0 12px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media(max-width:900px){.grid{grid-template-columns:1fr}}.item{padding:16px;border:1px solid var(--line);background:var(--surface-4);border-radius:14px}.item h3{margin:0 0 8px;font-size:16px}.item p{margin:0;color:var(--muted);line-height:1.5;font-size:14px}.footer{border-top:1px solid var(--line);padding:18px 0 36px;color:var(--muted);font-size:13px}.small-links{display:flex;gap:12px;flex-wrap:wrap}.split{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;align-items:start}@media(max-width:980px){.split{grid-template-columns:1fr}}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.thumb{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface-4);cursor:pointer;padding:0}.thumb img{width:100%;height:120px;object-fit:cover;display:block;transition:transform .18s ease}.thumb:hover img{transform:scale(1.02)}.modal{position:fixed;inset:0;background:var(--modal-overlay);display:none;align-items:center;justify-content:center;padding:18px;z-index:50}.modal[data-open=true]{display:flex}.modal-card{width:min(980px,100%);border:1px solid var(--line);background:var(--modal-bg);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-card)}.modal-top{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line);gap:10px}.modal-title{color:var(--muted);font-size:14px}.modal-actions{display:flex;gap:8px;flex-wrap:wrap}.iconbtn{padding:8px 10px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer;font-weight:600}.modal-body{display:grid;grid-template-columns:1fr}.modal-body img{width:100%;max-height:72vh;object-fit:contain;background:var(--image-bg)}.modal-caption{padding:12px 14px 16px;color:var(--muted);font-size:14px;line-height:1.5;border-top:1px solid var(--line)}.section-image{width:100%;max-width:320px;height:auto;display:block;margin:0 auto;border-radius:16px;border:1px solid var(--image-border);box-shadow:var(--shadow-image);overflow:hidden}.card-link{display:block;text-decoration:none;color:inherit;cursor:pointer;transform:translateY(0);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.card-link:hover,.card-link:focus-visible{transform:translateY(-2px);background:var(--surface-hover);border-color:var(--accent-border-strong);box-shadow:var(--shadow-hover);outline:none}a.item.card-link:hover,a.item.card-link:focus-visible{text-decoration:none}.card-thumb{width:100%;height:140px;object-fit:cover;border-radius:12px;border:1px solid var(--green-border-soft);box-shadow:var(--shadow-thumb);margin-bottom:12px;display:block}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{font-size:12px;line-height:1;padding:8px 10px;border-radius:999px;border:1px solid var(--green-border-tag);background:var(--surface-1);color:var(--text-soft)}.edu .page-hero{max-width:820px}.edu .lead{color:var(--muted);margin-top:10px;line-height:1.6}.edu .caption{color:var(--muted);text-align:center;font-size:13px;margin-top:10px}.edu .stack{display:grid;gap:12px}.edu .details-card{background:var(--bgSoft);border:1px solid var(--stroke);border-radius:18px;overflow:hidden;transform:translateY(0);transition:transform .18s ease,border-color .18s ease,box-shadow .22s ease,background .22s ease}.edu .details-card:hover{transform:translateY(-2px);border-color:var(--accent-border);box-shadow:0 10px 24px var(--shadow-soft-color),0 0 0 1px var(--accent-soft) inset;background:var(--surface-hover-soft)}.edu .details-summary{list-style:none;cursor:pointer;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;user-select:none}.edu .details-summary::-webkit-details-marker{display:none}.edu .details-summary:focus-visible{outline:2px solid var(--accent-border-strong);outline-offset:3px;border-radius:14px}.edu .sum-title{margin:0;font-size:16px}.edu .sum-sub{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.4}.edu .icon-pill{width:38px;height:38px;border-radius:999px;border:1px solid var(--stroke2);background:var(--icon-pill-bg-soft);display:inline-grid;place-items:center;color:var(--muted);box-shadow:0 6px 14px var(--shadow-icon);transform:translate3d(var(--mx, 0px),var(--my, 0px),0);transition:transform .22s cubic-bezier(.22,.61,.36,1),border-color .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease;will-change:transform}.edu .icon-pill--sm{width:34px;height:34px;box-shadow:0 5px 12px var(--shadow-icon)}.edu .details-summary:hover .icon-pill,.edu .sub-summary:hover .icon-pill{transform:translate3d(var(--mx, 0px),var(--my, 0px),0) scale(1.04);border-color:var(--accent-border);color:var(--text);background:var(--icon-pill-bg-hover);box-shadow:0 10px 18px var(--shadow-icon-hover)}.edu details[open]>.details-summary .icon-pill,.edu details.sub-details[open]>.sub-summary .icon-pill{border-color:var(--accent-border-strong);color:var(--accent);background:var(--icon-pill-bg-open)}.edu .chev{transition:transform .26s cubic-bezier(.22,.61,.36,1);transform:rotate(0)}.edu details[open]>.details-summary .chev,.edu details.sub-details[open]>.sub-summary .chev{transform:rotate(180deg)}.edu .details-body{padding:14px 16px 16px;border-top:1px solid var(--stroke);display:grid;gap:10px}.edu .sub-details{background:var(--bgSofter);border:1px solid var(--stroke);border-radius:14px;overflow:hidden;transition:border-color .18s ease,box-shadow .22s ease,background .22s ease}.edu .sub-details:hover{border-color:var(--accent-border);box-shadow:0 8px 18px var(--shadow-softer-color);background:var(--surface-hover-softer)}.edu .sub-summary{list-style:none;cursor:pointer;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;user-select:none}.edu .sub-summary::-webkit-details-marker{display:none}.edu .sub-summary:focus-visible{outline:2px solid var(--accent-border-strong);outline-offset:3px;border-radius:12px}.edu .sub-title{font-size:13px;color:var(--text)}.edu .sub-body{padding:10px 12px 12px;border-top:1px solid var(--stroke);display:grid;gap:10px}.edu .sub-body p{margin:0}.edu .note{color:var(--muted);border-left:3px solid var(--accent-border-strong);padding-left:10px;margin-top:2px}.edu .thanks{color:var(--muted);font-size:13px;margin-top:2px}.edu .links-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}@media(prefers-reduced-motion:reduce){.edu .details-card,.edu .sub-details,.edu .icon-pill,.edu .chev{transition:none!important}.edu .details-card:hover{transform:none}.edu .icon-pill{transform:none!important}}.nav-link-premium{display:inline-flex;align-items:center;gap:.45rem;border:1px solid transparent;border-radius:999px;padding:.42rem .75rem;background:transparent;color:var(--text-soft);text-decoration:none;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease;will-change:transform}.nav-link-premium:hover{transform:translateY(-1px);border-color:var(--accent-border);background:var(--bgSoft);color:var(--text);cursor:pointer}.nav-link-premium.is-active,.nav-link-premium[aria-current=page]{border-color:var(--accent-border-strong);background:var(--accent-soft);color:var(--text-strong)}.nav-link-premium:focus-visible{outline:2px solid var(--accent-border-strong);outline-offset:3px}@media(prefers-reduced-motion:reduce){.nav-link-premium{transition:none}.nav-link-premium:hover{transform:none}}.nav-link-premium,.nav-link-premium:hover,.nav-link-premium:focus,.nav-link-premium:active{text-decoration:none!important}.icon-pill{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--icon-pill-bg);border:1px solid var(--stroke);box-shadow:inset 0 1px 0 var(--icon-inset),0 2px 6px var(--shadow-icon);transition:all .2s ease}.icon-pill i{font-size:18px;color:var(--text-soft);transition:color .2s ease,transform .2s ease}.details-card:hover .icon-pill{border-color:var(--accent-border);box-shadow:inset 0 1px 0 var(--icon-inset),0 4px 10px var(--shadow-icon-hover)}.details-card:hover .icon-pill i{color:var(--text-strong);transform:translateY(-1px)}@media(prefers-reduced-motion:reduce){.icon-pill,.icon-pill i{transition:none}}.nav-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;border-radius:12px;border:1px solid var(--green-border);background:var(--surface-3);color:var(--text);cursor:pointer;padding:0;flex:0 0 auto}.nav-toggle:hover{border-color:var(--green-border-strong);background:var(--surface-hover)}.nav-toggle i{font-size:22px;line-height:1}.nav-mobile{border-top:1px solid var(--line);background:var(--mobile-menu-bg);backdrop-filter:blur(10px)}.nav-mobile-inner{display:flex;flex-direction:column;gap:10px;padding:12px 0 16px}.nav-mobile-inner .nav-link-premium{width:100%;justify-content:flex-start}.nav-mobile-divider{height:1px;background:var(--mobile-divider);margin:6px 0 2px}.lang.lang-mobile{border-left:none;padding-left:0;margin-left:0}@media(max-width:900px){.nav.nav-desktop{display:none}.nav-toggle{display:inline-flex}}body.menu-open{overflow:hidden}.site-footer{margin-top:3rem;background:var(--footer-bg);border-top:1px solid var(--green-border-soft);position:relative}.site-footer:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent-border-strong),transparent);opacity:.75}.footer-inner{padding:1.35rem 0;display:grid;grid-template-columns:1.25fr 1fr 1.15fr;gap:1.25rem;align-items:start}.footer-col{min-width:0}.footer-kicker{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;color:var(--footer-kicker)}.footer-brandline{display:flex;flex-wrap:wrap;gap:.35rem;align-items:baseline}.footer-meta{margin-top:.45rem;font-size:.95rem}.footer-title{font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--footer-title);margin-bottom:.55rem}.footer-muted{color:var(--footer-muted)}.footer-link{display:flex;align-items:center;gap:.55rem;color:var(--footer-text);text-decoration:none;padding:.22rem 0;border-bottom:1px solid transparent;width:fit-content}.footer-link i{opacity:.85}.footer-link:hover{color:var(--footer-link-hover);border-bottom-color:var(--accent-border-strong)}.footer-strong{font-weight:600}.footer-nav{display:grid;gap:.18rem}.footer-contact{display:grid;gap:.18rem;justify-items:start}.footer-lang{margin-top:.65rem;width:100%;max-width:320px}.footer-lang-summary{list-style:none;cursor:pointer;user-select:none;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .7rem;border-radius:12px;border:1px solid var(--green-border-soft);background:var(--surface-5)}.footer-lang-summary::-webkit-details-marker{display:none}.footer-lang-left{display:flex;align-items:center;gap:.55rem;color:var(--text-soft)}.footer-lang-right{display:flex;align-items:center;gap:.55rem;color:var(--muted)}.footer-lang-pill{font-size:.78rem;padding:.18rem .45rem;border-radius:999px;border:1px solid var(--accent-border);color:var(--text-soft);background:var(--accent-soft-2)}.footer-lang-panel{margin-top:.5rem;padding:.45rem;border-radius:12px;border:1px solid var(--green-border-soft);background:var(--surface-4);display:flex;gap:.45rem}.footer-lang-item{flex:1;text-align:center;text-decoration:none;padding:.45rem .5rem;border-radius:10px;color:var(--text-soft);border:1px solid transparent}.footer-lang-item:hover{border-color:var(--accent-border);color:var(--footer-link-hover)}.footer-lang-item.active{border-color:var(--accent-border-strong);background:var(--accent-soft-3);color:var(--text)}@media(max-width:860px){.footer-inner{grid-template-columns:1fr}.footer-lang{max-width:100%}}.footer-langbar{margin-top:.7rem;display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.footer-langlabel{display:inline-flex;align-items:center;gap:.35rem;color:var(--footer-muted);margin-right:.1rem}.footer-langpill{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--green-border-soft);background:var(--surface-5);text-decoration:none;transition:background .18s ease,border-color .18s ease,transform .18s ease}.footer-langpill:hover,.footer-langpill.active{border-color:var(--accent-border);background:var(--accent-soft-2);transform:translateY(-1px)}@media(prefers-reduced-motion:reduce){.footer-langpill{transition:none}.footer-langpill:hover,.footer-langpill.active{transform:none}}.skills-hero{margin-top:60px;margin-bottom:40px;max-width:900px}.skills-hero h1{font-size:2.5rem;margin-bottom:20px}.skills-hero p{font-size:1.1rem;line-height:1.6;opacity:.9}.skills-pill-container{margin-top:25px;display:flex;flex-wrap:wrap;gap:12px}.skill-pill{display:inline-flex;align-items:center;min-height:34px;padding:8px 16px;border-radius:999px;border:1px solid var(--skill-pill-border);background:var(--skill-pill-bg);color:var(--skill-pill-text);font-size:.9rem;font-weight:600;letter-spacing:.01em;box-shadow:var(--skill-pill-shadow);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}.skill-pill:hover{transform:translateY(-1px);background:var(--skill-pill-bg-hover);border-color:var(--skill-pill-border-hover);color:var(--skill-pill-text);box-shadow:var(--skill-pill-shadow-hover)}@media(prefers-reduced-motion:reduce){.skill-pill{transition:none}.skill-pill:hover{transform:none}}.skills-section{margin-top:70px}.skills-section h2{margin-bottom:30px}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:25px}.skill-card{background:var(--surface-1);border-radius:12px;padding:24px;transition:all .25s ease;border:1px solid var(--stroke)}.skill-card:hover{transform:translateY(-4px);border-color:var(--ash3-g2)}.skill-card h3{margin-bottom:15px}.skill-card ul{padding-left:18px}.skill-card li{margin-bottom:6px}.ai-section .ai-description{max-width:800px;margin-bottom:25px;opacity:.9}.education-page{width:100%}.education-hero{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px;align-items:start;margin-bottom:24px}.education-hero-copy{min-width:0}.education-hero-photo{width:100%;max-width:240px}.education-hero-photo img{width:100%;display:block;border-radius:24px;object-fit:cover}.education-hero-photo p{margin-top:12px;text-align:center}.education-cards{display:grid;gap:20px}@media(max-width:768px){.education-hero{grid-template-columns:1fr 150px;gap:16px;align-items:start}.education-hero-copy h1{margin-bottom:12px}.education-hero-copy p{margin-bottom:0}.education-hero-photo{max-width:150px;align-self:start}.education-hero-photo img{border-radius:20px}.education-hero-photo p{font-size:.95rem;line-height:1.35;margin-top:10px}.education-cards{margin-top:8px}.education-cards>*{width:100%;min-width:0}}@media(max-width:520px){.education-hero{grid-template-columns:1fr 130px;gap:14px}.education-hero-photo{max-width:130px}.education-hero-photo p{font-size:.88rem}}.page-hero{max-width:820px}.lead{color:var(--muted);margin-top:10px;line-height:1.6}.caption{color:var(--muted);text-align:center;font-size:13px;margin-top:10px}.stack{display:grid;gap:12px}.details-card{background:var(--bgSoft);border:1px solid var(--stroke);border-radius:18px;overflow:hidden;transform:translateY(0);transition:transform .18s ease,border-color .18s ease,box-shadow .22s ease,background .22s ease}.details-card:hover{transform:translateY(-2px);border-color:var(--accent-border);box-shadow:0 10px 24px var(--shadow-soft-color),0 0 0 1px var(--accent-soft) inset;background:var(--surface-hover-soft)}.details-summary{list-style:none;cursor:pointer;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;user-select:none}.details-summary::-webkit-details-marker{display:none}.details-summary:focus-visible{outline:2px solid var(--accent-border-strong);outline-offset:3px;border-radius:14px}.sum-title{margin:0;font-size:16px}.sum-sub{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.4}.icon-pill{width:38px;height:38px;border-radius:999px;border:1px solid var(--stroke2);background:var(--icon-pill-bg-soft);display:inline-grid;place-items:center;color:var(--muted);box-shadow:0 6px 14px var(--shadow-icon);transform:translate3d(var(--mx, 0px),var(--my, 0px),0);transition:transform .22s cubic-bezier(.22,.61,.36,1),border-color .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease;will-change:transform;flex-shrink:0}.icon-pill--sm{width:34px;height:34px;box-shadow:0 5px 12px var(--shadow-icon)}.details-summary:hover .icon-pill,.sub-summary:hover .icon-pill{transform:translate3d(var(--mx, 0px),var(--my, 0px),0) scale(1.04);border-color:var(--accent-border);color:var(--text);background:var(--icon-pill-bg-hover);box-shadow:0 10px 18px var(--shadow-icon-hover)}details[open]>.details-summary .icon-pill,details.sub-details[open]>.sub-summary .icon-pill{border-color:var(--accent-border-strong);color:var(--accent);background:var(--icon-pill-bg-open)}.chev{transition:transform .26s cubic-bezier(.22,.61,.36,1);transform:rotate(0)}details[open]>.details-summary .chev,details.sub-details[open]>.sub-summary .chev{transform:rotate(180deg)}.details-body{padding:14px 16px 16px;border-top:1px solid var(--stroke);display:grid;gap:10px}.sub-details{background:var(--bgSofter);border:1px solid var(--stroke);border-radius:14px;overflow:hidden;transition:border-color .18s ease,box-shadow .22s ease,background .22s ease}.sub-details:hover{border-color:var(--accent-border);box-shadow:0 8px 18px var(--shadow-softer-color);background:var(--surface-hover-softer)}.sub-summary{list-style:none;cursor:pointer;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;user-select:none}.sub-summary::-webkit-details-marker{display:none}.sub-summary:focus-visible{outline:2px solid var(--accent-border-strong);outline-offset:3px;border-radius:12px}.sub-title{font-size:13px;color:var(--text)}.sub-body{padding:10px 12px 12px;border-top:1px solid var(--stroke);display:grid;gap:10px}.sub-body p{margin:0}.note{color:var(--muted);border-left:3px solid var(--accent-border-strong);padding-left:10px;margin-top:2px}.thanks{color:var(--muted);font-size:13px;margin-top:2px}.links-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}@media(max-width:768px){.education-split{display:block!important}.education-media{width:132px;margin-bottom:16px}.education-media .section-image{width:132px;margin:0;display:block}.education-media .caption{text-align:center;font-size:12px;line-height:1.4;margin-top:8px}.education-stack,.education-stack .details-card{width:100%}}@media(max-width:480px){.education-media,.education-media .section-image{width:118px}.education-media .caption{font-size:11.5px}}@media(prefers-reduced-motion:reduce){.details-card,.sub-details,.icon-pill,.chev{transition:none!important}.details-card:hover{transform:none}.icon-pill{transform:none!important}}.theme-toggle{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--line);background:var(--surface-3);color:var(--text);cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.theme-toggle:hover,.theme-toggle:focus-visible{transform:translateY(-1px);border-color:var(--accent-border);background:var(--surface-hover);outline:none}.theme-toggle i{font-size:18px;line-height:1}.theme-toggle-label{font-size:13px;color:var(--muted)}.theme-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.theme-toggle-row .theme-toggle{width:auto;min-width:104px;padding:0 12px;gap:8px}.theme-toggle-row .theme-toggle i{flex:0 0 auto}@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none}.theme-toggle:hover,.theme-toggle:focus-visible{transform:none}}
