/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}input:where([type=text]),input:where(:not([type])),input:where([type=email]),input:where([type=url]),input:where([type=password]),input:where([type=number]),input:where([type=date]),input:where([type=datetime-local]),input:where([type=month]),input:where([type=search]),input:where([type=tel]),input:where([type=time]),input:where([type=week]),select:where([multiple]),textarea,select{appearance:none;--tw-shadow:0 0 #0000;background-color:#fff;border-width:1px;border-color:oklch(55.1% .027 264.364);border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem}:is(input:where([type=text]),input:where(:not([type])),input:where([type=email]),input:where([type=url]),input:where([type=password]),input:where([type=number]),input:where([type=date]),input:where([type=datetime-local]),input:where([type=month]),input:where([type=search]),input:where([type=tel]),input:where([type=time]),input:where([type=week]),select:where([multiple]),textarea,select):focus{outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:oklch(54.6% .245 262.881);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-color:oklch(54.6% .245 262.881);outline:2px solid #0000}input::placeholder,textarea::placeholder{color:oklch(55.1% .027 264.364);opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em}::-webkit-date-and-time-value{text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-month-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-day-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-hour-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-minute-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-second-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-millisecond-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{-webkit-print-color-adjust:exact;print-color-adjust:exact;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='oklch(55.1%25 0.027 264.364)' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}select:where([multiple]),select:where([size]:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;print-color-adjust:unset;padding-right:.75rem}input:where([type=checkbox]),input:where([type=radio]){appearance:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;vertical-align:middle;-webkit-user-select:none;user-select:none;color:oklch(54.6% .245 262.881);--tw-shadow:0 0 #0000;background-color:#fff;background-origin:border-box;border-width:1px;border-color:oklch(55.1% .027 264.364);flex-shrink:0;width:1rem;height:1rem;padding:0;display:inline-block}input:where([type=checkbox]){border-radius:0}input:where([type=radio]){border-radius:100%}input:where([type=checkbox]):focus,input:where([type=radio]):focus{outline-offset:2px;--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:oklch(54.6% .245 262.881);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);outline:2px solid #0000}input:where([type=checkbox]):checked,input:where([type=radio]):checked{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:#0000}input:where([type=checkbox]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors:active){input:where([type=checkbox]):checked{appearance:auto}}input:where([type=radio]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors:active){input:where([type=radio]):checked{appearance:auto}}input:where([type=checkbox]):checked:hover,input:where([type=checkbox]):checked:focus,input:where([type=radio]):checked:hover,input:where([type=radio]):checked:focus{background-color:currentColor;border-color:#0000}input:where([type=checkbox]):indeterminate{background-color:currentColor;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:#0000}@media (forced-colors:active){input:where([type=checkbox]):indeterminate{appearance:auto}}input:where([type=checkbox]):indeterminate:hover,input:where([type=checkbox]):indeterminate:focus{background-color:currentColor;border-color:#0000}input:where([type=file]){background:unset;border-color:inherit;font-size:unset;line-height:inherit;border-width:0;border-radius:0;padding:0}input:where([type=file]):focus{outline:1px solid buttontext;outline:1px auto -webkit-focus-ring-color}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.delay-2{transition-delay:2ms}.delay-3{transition-delay:3ms}.delay-5{transition-delay:5ms}}:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#111827;--muted:#6b7280;--line:#e5e7eb;--panel:#fff;--panel-soft:#f9fafb;--navy:#0d1117;--blue:#2563eb;--blue-light:#dbeafe;--teal:#0891b2;--green:#059669;--green-light:#ecfdf5;--green-border:#a7f3d0;--gold:#d97706;--radius:10px;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#fff;min-width:320px;margin:0}#svelte{display:contents}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}main{overflow-x:clip}img,video{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes ringDraw{0%{stroke-dashoffset:440px}to{stroke-dashoffset:0}}@keyframes pulse{50%{opacity:.5}}@keyframes countUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes chipPop{0%{opacity:0;transform:scale(.7)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes slideRight{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.anim-fade-up{animation:.65s cubic-bezier(.22,1,.36,1) both fadeUp}.anim-fade-in{animation:.5s both fadeIn}.anim-scale-in{animation:.55s cubic-bezier(.22,1,.36,1) both scaleIn}.anim-slide-r{animation:.55s cubic-bezier(.22,1,.36,1) both slideRight}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.delay-6{animation-delay:.6s}.delay-7{animation-delay:.7s}.delay-8{animation-delay:.8s}.reveal{opacity:0;transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);transform:translateY(28px)}.reveal.visible{opacity:1;transform:translateY(0)}.site-nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#ffffffe0;justify-content:center;gap:.25rem;padding:.75rem 1rem;display:flex;position:fixed;top:0;left:0;right:0}.site-nav a{color:var(--muted);border-radius:999px;padding:.45rem .85rem;font-size:.875rem;font-weight:600;transition:color .2s,background .2s}.site-nav a:hover,.site-nav a:focus-visible{color:var(--ink);background:var(--panel-soft);outline:none}.hero{text-align:center;background:#fff;padding:6rem clamp(1rem,4vw,3rem) 5rem;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(70% 55% at 50% 0,#2563eb12 0%,#0000 70%);position:absolute;inset:0}.hero>*{z-index:2;position:relative}.hero__rings{z-index:1;pointer-events:none;width:clamp(300px,55vw,520px);height:clamp(300px,55vw,520px);position:absolute;top:0;left:50%;transform:translate(-50%)}.hero__rings circle{fill:none;cx:50%;cy:50%}.profile-ring{width:148px;height:148px;margin:0 auto 1.5rem;position:relative}.profile-ring svg{width:100%;height:100%;position:absolute;inset:0}.profile-ring svg circle.ring-track{fill:none;stroke:var(--line);stroke-width:2.5px}.profile-ring svg circle.ring-progress{fill:none;stroke:var(--blue);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:440;stroke-dashoffset:440px;transform-origin:50%;transform:rotate(-90deg)}.profile-ring.animated svg circle.ring-progress{animation:1.4s cubic-bezier(.22,1,.36,1) .3s both ringDraw}.profile-ring__img{background:var(--panel-soft);border-radius:50%;position:absolute;inset:8px;overflow:hidden}.profile-ring__img img{object-fit:cover;object-position:50% 18%;width:100%;height:100%;display:block}.profile-ring__dot{background:var(--green);border:3px solid #fff;border-radius:50%;width:18px;height:18px;animation:2s ease-in-out infinite pulse;position:absolute;bottom:10px;right:10px}.avail-badge{color:var(--green);background:var(--green-light);border:1px solid var(--green-border);letter-spacing:.01em;border-radius:999px;align-items:center;gap:.4rem;margin-bottom:1rem;padding:.35rem .85rem;font-size:.8rem;font-weight:700;display:inline-flex}.avail-badge__dot{background:var(--green);border-radius:50%;width:7px;height:7px;animation:1.8s ease-in-out infinite pulse}.hero__name{letter-spacing:-.03em;color:var(--ink);margin:0 0 .5rem;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:850;line-height:1}.hero__role{max-width:520px;color:var(--muted);margin:0 auto .65rem;font-size:clamp(.95rem,1.8vw,1.1rem);line-height:1.6}.hero__chips{flex-wrap:wrap;justify-content:center;gap:.4rem;max-width:560px;margin:0 auto 1.75rem;display:flex}.chip{border:1px solid var(--line);color:#374151;background:var(--panel-soft);border-radius:999px;padding:.32rem .75rem;font-size:.78rem;font-weight:650;transition:border-color .2s,background .2s,transform .2s}.chip:hover{background:var(--blue-light);border-color:#93c5fd;transform:translateY(-1px)}.hero__actions{flex-wrap:wrap;justify-content:center;gap:.65rem;display:flex}.button{border-radius:999px;justify-content:center;align-items:center;gap:.4rem;min-height:2.75rem;padding:.65rem 1.35rem;font-size:.9rem;font-weight:700;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover,.button:focus-visible{outline:none;transform:translateY(-2px)}.button--primary{background:var(--ink);color:#fff;box-shadow:0 4px 14px #1118272e}.button--primary:hover{box-shadow:0 8px 24px #11182738}.button--secondary{color:var(--ink);border:1px solid var(--line);background:#fff}.button--secondary:hover{background:var(--panel-soft);border-color:#9ca3af}.button--cv{background:var(--green-light);color:var(--green);border:1px solid var(--green-border)}.button--cv:hover{background:#d1fae5}.stats{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;width:min(860px,100% - 2rem);margin:0 auto;display:grid;overflow:hidden;box-shadow:0 4px 24px #1118270f}.stats div{text-align:center;background:#fff;padding:clamp(1.25rem,3vw,2rem)}.stats strong{color:var(--blue);font-size:clamp(1.8rem,3.5vw,2.75rem);font-weight:850;line-height:1;animation:.6s cubic-bezier(.22,1,.36,1) both countUp;display:block}.stats span{color:var(--muted);margin-top:.4rem;font-size:.85rem;line-height:1.4;display:block}.stats__sources{color:var(--muted);margin:.5rem 0 0;font-size:.72rem;font-weight:700;line-height:1.35}.stats__sources a{color:var(--blue);text-underline-offset:.16em;text-decoration:underline;text-decoration-thickness:1px}.section,.contact{width:min(1100px,100% - 2rem);margin:0 auto;padding:clamp(3.5rem,7vw,6rem) 0}.section--split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(2rem,5vw,4.5rem);display:grid}.section--muted{background:var(--panel-soft);width:100%;max-width:none;padding-left:max(1rem,50vw - 550px);padding-right:max(1rem,50vw - 550px)}.section--dana{background:#fff}.section-label,.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin:0 0 .75rem;font-size:.72rem;font-weight:800}.section h2,.contact h2{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:clamp(1.75rem,3.5vw,3rem);font-weight:850;line-height:1.05}.section-heading{max-width:700px;margin-bottom:2rem}.prose-block{color:var(--muted);font-size:1rem;line-height:1.85}.prose-block p{margin:0}.prose-block p+p{margin-top:1.1rem}.case-grid{gap:1rem;display:grid}.case-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:minmax(0,1fr) minmax(240px,.8fr);align-items:center;gap:clamp(1rem,3vw,2.5rem);padding:clamp(1rem,2.5vw,1.5rem);transition:box-shadow .25s,transform .25s,border-color .25s;display:grid;box-shadow:0 2px 12px #1118270d}.case-card:hover{border-color:#93c5fd;transform:translateY(-3px);box-shadow:0 12px 40px #1118271a}.case-card__copy{padding:clamp(.25rem,1.5vw,.75rem)}.case-card__category{color:var(--gold);text-transform:uppercase;letter-spacing:.06em;margin:0 0 .6rem;font-size:.75rem;font-weight:800}.case-card h3{color:var(--ink);margin:0;font-size:clamp(1.2rem,2vw,1.65rem);font-weight:800;line-height:1.15}.case-card p{color:var(--muted);margin:.75rem 0 0;font-size:.95rem;line-height:1.7}.case-card ul{flex-wrap:wrap;gap:.45rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.case-card li{border:1px solid var(--line);color:#1e3a5f;background:var(--blue-light);border-radius:999px;padding:.35rem .65rem;font-size:.78rem;font-weight:700}.case-card__media{grid-template-columns:minmax(0,1fr);justify-items:center;gap:.65rem;display:grid}.case-card__media--pair{grid-template-columns:repeat(2,minmax(0,1fr))}.case-card--browser{grid-template-columns:minmax(0,.82fr) minmax(380px,1fr)}.case-card__links{gap:.3rem;margin-top:.85rem;display:grid}.case-card__links a{color:var(--blue);text-underline-offset:.16em;overflow-wrap:anywhere;font-size:.85rem;font-weight:800;text-decoration:underline;text-decoration-thickness:1px}.case-card__links a:hover,.case-card__links a:focus-visible{color:var(--teal);outline:none}.case-card__media img,.case-card__video video{aspect-ratio:9/16;object-fit:cover;object-position:top center;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);width:min(100%,240px);display:block;box-shadow:0 8px 32px #1118271a}.case-card__media--browser{align-items:center}.case-card__media img.case-card__image--browser{aspect-ratio:16/9;object-fit:cover;object-position:top center;width:min(100%,480px)}.case-card__video{justify-items:center;gap:.4rem;width:min(100%,240px);display:grid}.case-card__video h4{color:var(--ink);text-align:center;margin:.1rem 0 0;font-size:.85rem}.case-card__video p{color:var(--muted);text-align:center;margin:0;font-size:.72rem}.skill-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.skill-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:1.25rem;transition:box-shadow .22s,transform .22s;box-shadow:0 2px 10px #1118270a}.skill-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #11182714}.skill-card h3{color:var(--ink);margin:0;font-size:.92rem;font-weight:750}.tag-list{flex-wrap:wrap;gap:.45rem;margin-top:.9rem;display:flex}.tag-list span{border:1px solid var(--line);color:#1e3a5f;background:var(--blue-light);border-radius:999px;padding:.32rem .6rem;font-size:.78rem;font-weight:650;animation:.4s cubic-bezier(.22,1,.36,1) both chipPop}.tag-list--compact{margin-top:1rem}.tag-list--compact span{font-size:.72rem}.timeline{gap:.85rem;display:grid}.timeline-item{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:200px minmax(0,1fr);gap:1.5rem;padding:1.4rem;transition:box-shadow .22s,transform .22s;display:grid;box-shadow:0 2px 10px #1118270a}.timeline-item:first-child{border-left:3px solid var(--blue)}.timeline-item:hover{transform:translateY(-2px);box-shadow:0 8px 30px #11182714}.timeline-item__date{color:var(--blue);font-size:.9rem;font-weight:800}.timeline-item h3{color:var(--ink);margin:0;font-size:clamp(1.1rem,2vw,1.45rem);font-weight:800}.company{color:var(--ink);margin:.3rem 0 0;font-size:.95rem;font-weight:750}.meta,.project-url{color:var(--gold);margin:.15rem 0 0;font-size:.85rem;font-weight:700;display:block}.timeline-item ul{color:var(--muted);margin:.85rem 0 0;padding-left:1.1rem;line-height:1.75}.timeline-item li+li{margin-top:.4rem}.project-columns{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1.1rem;display:grid}.column-title{color:var(--ink);margin:0 0 .85rem;font-size:1.15rem;font-weight:750}.project-grid{gap:.85rem;display:grid}.project-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex-direction:column;justify-content:space-between;min-height:100%;padding:1.15rem;transition:box-shadow .22s,transform .22s,border-color .22s;display:flex;box-shadow:0 2px 10px #1118270a}.project-card:hover{border-color:#93c5fd;transform:translateY(-2px);box-shadow:0 8px 28px #11182714}.project-card h4{color:var(--ink);margin:0;font-size:1rem;font-weight:700}.project-card p{color:var(--muted);margin:.6rem 0 0;font-size:.9rem;line-height:1.65}.award{border-top:1px solid var(--line)}.contact{border-radius:var(--radius);color:#fff;background:var(--ink);grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:2rem;margin-bottom:1rem;padding:clamp(2rem,5vw,3.5rem);display:grid}.contact .section-label{color:#60a5fa}.contact h2{color:#fff;font-size:clamp(1.5rem,3vw,2.4rem)}.contact p{color:#ffffffb3;max-width:540px;margin-top:.75rem;font-size:1rem;line-height:1.75}.contact-links{align-content:center;gap:.6rem;display:grid}.contact-links a{border-radius:var(--radius);color:#ffffffe0;overflow-wrap:anywhere;background:#ffffff0f;border:1px solid #ffffff24;padding:.8rem 1rem;font-size:.9rem;font-weight:700;transition:background .2s,border-color .2s}.contact-links a:hover,.contact-links a:focus-visible{background:#ffffff1f;border-color:#ffffff47;outline:none}@media (width<=900px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-grid,.project-columns,.contact,.case-card,.case-card--browser,.section--split{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr;gap:.6rem}}@media (width<=560px){.site-nav{gap:.15rem;padding:.6rem .5rem}.site-nav a{padding:.4rem .65rem;font-size:.8rem}.hero{padding:5.5rem 1rem 3.5rem}.hero__actions{flex-direction:column;align-items:stretch}.button{width:100%}.case-card__media{grid-template-columns:1fr}.case-card__media--pair{grid-template-columns:repeat(2,minmax(0,1fr))}.case-card__media img{width:100%}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.section,.contact{width:min(100% - 1rem,1100px)}.section--muted{width:100%;padding-left:.5rem;padding-right:.5rem}.skill-card,.project-card,.timeline-item{padding:1rem}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
