*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.mt-12{margin-top:3rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-9{margin-top:2.25rem}.block{display:block}.inline-flex{display:inline-flex}.h-px{height:1px}.min-h-\[70vh\]{min-height:70vh}.min-h-screen{min-height:100vh}.w-14{width:3.5rem}.max-w-\[52rem\]{max-width:52rem}.max-w-xl{max-width:36rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-white\/10{border-color:#ffffff1a}.bg-\[\#09090b\]{--tw-bg-opacity: 1;background-color:rgb(9 9 11 / var(--tw-bg-opacity, 1))}.bg-gold{--tw-bg-opacity: 1;background-color:rgb(200 169 110 / var(--tw-bg-opacity, 1))}.p-8{padding:2rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-24{padding-bottom:6rem}.pt-36{padding-top:9rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-8{line-height:2rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-\[0\.22em\]{letter-spacing:.22em}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-gold{--tw-text-opacity: 1;color:rgb(200 169 110 / var(--tw-text-opacity, 1))}.text-muted{--tw-text-opacity: 1;color:rgb(154 160 168 / var(--tw-text-opacity, 1))}.text-pearl{--tw-text-opacity: 1;color:rgb(244 241 234 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.shadow-soft{--tw-shadow: 0 18px 60px rgba(0, 0, 0, .28);--tw-shadow-colored: 0 18px 60px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--bg:#09090b;--s1:#111115;--s2:#18191e;--bd:#1e2228;--bd2:#2a2f38;--gold:#c8a96e;--gdim:rgba(200,169,110,.12);--gglow:rgba(200,169,110,.22);--tx:#f0ede6;--tm:#7a8088;--td:#2a2f38;--green:#22c55e;--r:1.25rem}.theme-slate{--gold:#7cafc4;--gdim:rgba(124,175,196,.1);--gglow:rgba(124,175,196,.2)}.theme-mono{--gold:#d8d4cc;--gdim:rgba(216,212,204,.08);--gglow:rgba(216,212,204,.15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:76px}body{font-family:"Source Sans 3",system-ui,sans-serif;background:var(--bg);color:var(--tx);-webkit-font-smoothing:antialiased;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.wrap{max-width:72rem;margin:0 auto;padding:0 2rem}.section{padding:6rem 0}@media(max-width:768px){.section{padding:4rem 0}}body:before{content:"";position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px}header{position:fixed;inset:0 0 auto;z-index:900;transition:background .4s,border-color .4s;background:linear-gradient(to bottom,rgba(0,0,0,.55) 0%,transparent 100%)}header.scrolled{background:#09090be6;backdrop-filter:blur(16px);border-bottom:1px solid var(--bd)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:72px}.nav-logo img{height:3.2rem;width:auto}nav{display:flex;gap:2rem}@media(max-width:860px){nav{display:none}}nav a{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#ffffffe6;transition:color .2s;position:relative;padding-bottom:3px;text-shadow:0 1px 8px rgba(0,0,0,.8)}nav a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}nav a:hover,nav a.active{color:var(--tx)}nav a:hover:after,nav a.active:after{width:100%}.nav-cta{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--bg);background:var(--gold);padding:.55rem 1.3rem;border-radius:999px;transition:opacity .2s,transform .2s}.nav-cta:hover{opacity:.85;transform:translateY(-1px)}.nav-actions{display:flex;align-items:center;gap:.75rem}.mob-btn{display:none;background:none;border:1px solid var(--bd);border-radius:.5rem;padding:.4rem .7rem;color:var(--tm);cursor:pointer;font-size:.9rem}@media(max-width:860px){.mob-btn{display:flex}}.mob-nav{display:none;position:fixed;inset:72px 0 0;background:#09090bf7;backdrop-filter:blur(20px);z-index:800;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem}.mob-nav.open{display:flex}.mob-nav a{font-family:Fraunces,serif;font-size:2.2rem;font-weight:600;color:var(--tm);transition:color .2s}.mob-nav a:hover{color:var(--gold)}#home{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:0}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;background-size:cover;background-position:center}.hero-slide.active{opacity:1;animation:kBurns 14s ease-in-out forwards}@keyframes kBurns{0%{transform:scale(1)}to{transform:scale(1.07)}}.hero-slide:nth-child(1){background-image:url(/assets/0ac57cc8-0ad2-4cac-9e19-df28832978ca.jpg)}.hero-slide:nth-child(2){background-image:url(/assets/d7265623-1a10-46fa-bc4a-c13d9b7cf580.jpg)}.hero-slide:nth-child(3){background-image:url(/assets/53b373cb-36a2-43d9-b617-6d84c86cf056.jpg)}.hero-slide:nth-child(4){background-image:url(/assets/0b513000-e554-41ec-8845-c44e981174d2.jpg)}.hero-slide:nth-child(5){background-image:url(/assets/ee7fa75b-464f-433b-8878-3520a2b609c2.jpg)}.hero-ov{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,#09090bf7,#09090b99 45%,#09090b40)}.hero-ov:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 15% 85%,rgba(200,169,110,.07) 0%,transparent 55%)}#neural-canvas{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.35}.hero-content{position:relative;z-index:2;width:100%;padding-bottom:6rem}.h-eyebrow{font-size:.7rem;font-weight:600;letter-spacing:.35em;text-transform:uppercase;color:var(--gold);animation:fadeUp .8s .3s both;display:flex;align-items:center;gap:.75rem}.h-eyebrow-cursor{display:inline-block;width:2px;height:.85em;background:var(--gold);animation:blink .8s step-end infinite;vertical-align:middle}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.h-rule{display:block;width:0;height:1px;background:var(--gold);margin:1.2rem 0;animation:ruleGrow .8s .5s forwards}@keyframes ruleGrow{to{width:56px}}.h-title{font-family:Fraunces,serif;font-size:clamp(3.2rem,8vw,6.5rem);font-weight:600;line-height:1;letter-spacing:-.02em;color:var(--tx);margin-bottom:1.75rem}.word-wrap{overflow:visible;display:block}.word{display:block;animation:wordUp .9s cubic-bezier(.16,1,.3,1) both}.word-wrap:nth-child(1) .word{animation-delay:.6s}.word-wrap:nth-child(2) .word{animation-delay:.78s}@keyframes wordUp{0%{transform:translateY(110%);opacity:0}to{transform:translateY(0);opacity:1}}.h-lead{max-width:38rem;font-size:clamp(1rem,2vw,1.2rem);color:#ffffffeb;line-height:1.65;font-weight:400;animation:fadeUp .9s 1.1s both;text-shadow:0 2px 12px rgba(0,0,0,.7)}.h-lead em{font-style:italic;color:var(--tx);font-family:Fraunces,serif}.h-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.6rem;animation:fadeUp .9s 1.3s both}.h-tag{font-size:.63rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;border:1px solid rgba(200,169,110,.5);border-radius:999px;padding:.28rem .75rem;color:var(--gold);text-shadow:0 1px 6px rgba(0,0,0,.7)}.h-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem;animation:fadeUp .9s 1.5s both}.btn-gold{background:var(--gold);color:var(--bg);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.85rem 1.75rem;border-radius:999px;border:none;cursor:pointer;transition:opacity .2s,transform .2s,box-shadow .2s}.btn-gold:hover{opacity:.88;transform:translateY(-2px);box-shadow:0 8px 24px var(--gglow)}.btn-ghost{border:1px solid rgba(240,237,230,.2);color:var(--tx);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.85rem 1.75rem;border-radius:999px;transition:border-color .2s,color .2s}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.h-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:var(--r);overflow:hidden;margin-top:3.5rem;animation:fadeUp .9s 1.7s both}@media(max-width:600px){.h-cards{grid-template-columns:1fr}}.h-card{background:#ffffff1a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:.7rem 1.25rem;border-right:1px solid rgba(255,255,255,.1)}.h-card-lbl{font-size:.6rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#fff9}.h-card-val{margin-top:.45rem;font-size:.9rem;font-weight:500;color:#fff;line-height:1.35}.scroll-ind{position:absolute;bottom:2.5rem;right:2rem;z-index:2;display:flex;flex-direction:column;align-items:center;gap:.4rem;animation:fadeUp 1s 2s both}.scroll-ind span{font-size:.58rem;letter-spacing:.3em;text-transform:uppercase;color:var(--tm);writing-mode:vertical-rl}.scroll-dot{width:5px;height:5px;border-radius:50%;background:var(--gold);animation:sBounce 1.6s ease-in-out infinite}@keyframes sBounce{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(8px);opacity:.4}}.terminal{background:#0d1117;border:1px solid #30363d;border-radius:.75rem;padding:1.25rem 1.5rem;font-family:SF Mono,Fira Code,monospace;font-size:.8rem;margin-top:2rem;position:relative;overflow:hidden}.terminal:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--gold),transparent)}.t-bar{display:flex;gap:.4rem;margin-bottom:1rem}.t-dot{width:10px;height:10px;border-radius:50%}.t-dot.red{background:#ff5f57}.t-dot.yellow{background:#febc2e}.t-dot.green{background:#28c840}.t-line{line-height:1.8;white-space:pre}.t-prompt{color:#7ee787}.t-cmd{color:#e6edf3}.t-comment{color:#8b949e}.t-output{color:#79c0ff}.t-cursor-line{color:#e6edf3}.t-blink{display:inline-block;width:7px;height:1em;background:#e6edf3;animation:blink .8s step-end infinite;vertical-align:-.1em;margin-left:1px}.stats-strip{border-top:1px solid var(--bd);border-bottom:1px solid var(--bd);background:var(--s1)}.stats-inner{display:grid;grid-template-columns:repeat(3,1fr)}@media(max-width:600px){.stats-inner{grid-template-columns:1fr}}.stat{padding:2.5rem 2rem;border-right:1px solid var(--bd);text-align:center}.stat:last-child{border-right:none}.stat-num{font-family:Fraunces,serif;font-size:3.2rem;font-weight:700;color:var(--gold);line-height:1;letter-spacing:-.02em}.stat-lbl{margin-top:.5rem;font-size:.68rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#9aa4ae}.mq-wrap{padding:2.5rem 0;border-bottom:1px solid var(--bd)}.mq-inner{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;max-width:72rem;margin:0 auto;padding:0 2rem}.mq-item{font-size:.68rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--tm);border:1px solid var(--bd2);border-radius:999px;padding:.4rem 1rem;transition:color .2s,border-color .2s}.mq-item:hover{color:var(--gold);border-color:var(--gold)}.eyebrow{font-size:.68rem;font-weight:600;letter-spacing:.35em;text-transform:uppercase;color:var(--gold)}.sec-title{font-family:Fraunces,serif;font-size:clamp(2rem,3.5vw,2.9rem);font-weight:600;color:var(--tx);margin-top:.7rem;line-height:1.1;letter-spacing:-.01em}.sec-lead{margin-top:.9rem;font-size:1rem;color:#d2d7def2;max-width:42rem;line-height:1.7;font-weight:400;white-space:pre-line}#summary{background:var(--s1)}.sum-grid{display:grid;gap:4rem;align-items:center}@media(min-width:900px){.sum-grid{grid-template-columns:1fr 360px}}.sum-quote{font-family:Fraunces,serif;font-size:clamp(1.15rem,2.5vw,1.65rem);font-weight:400;font-style:italic;line-height:1.45;color:var(--tx);border-left:2px solid var(--gold);padding-left:1.5rem;margin:2rem 0}.portrait-frame{position:relative}.summary-side{display:flex;flex-direction:column;gap:1.5rem}.portrait-frame:before{content:"";position:absolute;inset:-10px;border:1px solid var(--gdim);border-radius:1.2rem;pointer-events:none}.portrait-frame img{width:100%;border-radius:1rem;filter:grayscale(10%) contrast(1.04)}.port-badge{position:absolute;bottom:-1rem;left:-1rem;background:var(--s2);border:1px solid var(--bd2);border-radius:.9rem;padding:.7rem 1rem}.port-badge .num{font-family:Fraunces,serif;font-size:1.6rem;font-weight:700;color:var(--gold);line-height:1}.port-badge .lbl{font-size:.6rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--tm);margin-top:.2rem}#skills{position:relative;background:var(--bg) url(/assets/bb12ded8-8968-415b-9b78-46e42e6c758f.jpg) center/cover no-repeat}#skills:after{content:"";position:absolute;inset:0;background:#09090bd1;pointer-events:none;z-index:0}#skills .wrap{position:relative;z-index:1}#skills-banner,#skills .skills-banner-wrap{display:none}#skills:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.04;z-index:1;background-image:linear-gradient(rgba(200,169,110,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(200,169,110,.6) 1px,transparent 1px);background-size:48px 48px}.sk-grid{display:grid;gap:4rem;align-items:start}@media(min-width:900px){.sk-grid{grid-template-columns:1fr 1fr}}.sk-lead{margin-bottom:2rem}.sk-row{margin-bottom:1.6rem}.sk-meta{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.55rem}.sk-name{font-size:.875rem;font-weight:600;color:var(--tx)}.sk-pct{font-family:Fraunces,serif;font-size:.875rem;color:var(--gold)}.sk-track{height:2px;background:var(--bd);border-radius:1px;overflow:hidden}.sk-fill{height:100%;background:linear-gradient(to right,var(--gold),rgba(200,169,110,.45));transform:scaleX(0);transform-origin:left;transition:transform 1.2s cubic-bezier(.4,0,.2,1)}.sk-cards{display:grid;gap:1px;background:var(--bd);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden}@media(min-width:600px){.sk-cards{grid-template-columns:1fr 1fr}}.sk-card{background:var(--s1);padding:1.6rem;transition:background .2s}.sk-card:hover{background:#1e2530}.sk-cat{font-size:.6rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:.65rem}.sk-card p{font-size:.85rem;color:#c8cdd4e6;line-height:1.65;font-weight:400}#services{background:var(--s1)}.svc-grid{margin-top:3rem;display:grid;gap:1px;background:var(--bd);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden}@media(min-width:900px){.svc-grid{grid-template-columns:repeat(3,1fr)}}.svc-card{background:var(--bg);padding:2.25rem;position:relative;transition:background .3s;overflow:hidden}.svc-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .5s ease}.svc-card:hover{background:var(--s2)}.svc-card:hover:before{transform:scaleX(1)}.svc-card:hover .svc-num{opacity:1}.svc-num{font-family:Fraunces,serif;font-size:2.5rem;font-weight:300;color:var(--gold);line-height:1;margin-bottom:1.4rem;opacity:.78;text-shadow:0 0 18px var(--gglow)}.svc-title{font-size:1rem;font-weight:600;color:var(--tx);line-height:1.3}.svc-sub{font-size:.68rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-top:.45rem}.svc-desc{font-size:.85rem;color:#c8cdd4e6;line-height:1.65;margin-top:.9rem;font-weight:400}#experience{position:relative;background:var(--bg) url(/assets/b9d8b594-aecf-41b2-b6db-9b1c0375590c.jpg) center/cover no-repeat}#experience:after{content:"";position:absolute;inset:0;background:#09090bd1;pointer-events:none;z-index:0}#experience .wrap{position:relative;z-index:1}#experience .skills-banner-wrap{display:none}.exp-grid{margin-top:3rem;display:grid;gap:1px;background:var(--bd);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden}@media(min-width:768px){.exp-grid{grid-template-columns:1fr 1fr}}.exp-card{background:var(--s1);padding:1.85rem;transition:background .25s}.exp-card:hover{background:var(--s2)}.cur-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.58rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--green);margin-bottom:.4rem}.cur-dot{width:5px;height:5px;border-radius:50%;background:var(--green);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.7)}}.exp-co{font-size:.68rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.4rem}.exp-title{font-family:Fraunces,serif;font-size:1.1rem;font-weight:600;color:var(--tx);line-height:1.2}.exp-sum{margin-top:.6rem;font-size:.83rem;color:#c8cdd4e0;line-height:1.6;font-weight:400}.exp-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:1.1rem}.exp-tag{font-size:.6rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.22rem .65rem;border-radius:999px;border:1px solid var(--bd2);color:#9aa4ae;transition:border-color .2s,color .2s}.exp-card:hover .exp-tag{border-color:#c8a96e40;color:var(--tx)}#contact{background:var(--s1);position:relative;overflow:hidden}#contact:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,var(--gdim) 0%,transparent 70%);pointer-events:none}.ct-inner{position:relative;text-align:center;max-width:52rem;margin:0 auto}.ct-title{margin-top:.7rem}.ct-lead{margin:0 auto;max-width:32rem}.ct-email{display:inline-block;font-family:Fraunces,serif;font-size:clamp(1.3rem,3vw,2.3rem);font-weight:600;color:var(--tx);border-bottom:1px solid var(--gold);padding-bottom:.1em;margin:2rem 0 2.5rem;transition:color .2s;letter-spacing:-.01em}.ct-email:hover{color:var(--gold)}.ct-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--bd);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;text-align:left}@media(min-width:600px){.ct-grid{grid-template-columns:repeat(4,1fr)}}.ct-cell{background:var(--bg);padding:1.2rem 1.4rem}.ct-lbl{font-size:.6rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#9aa4ae}.ct-val{margin-top:.35rem;font-size:.875rem;font-weight:500;color:var(--tx)}.ct-val a:hover{color:var(--gold)}footer{border-top:1px solid var(--bd);background:var(--bg)}.ft-inner{display:flex;align-items:center;justify-content:space-between;padding:1.75rem 0;flex-wrap:wrap;gap:1rem}.ft-links{display:flex;gap:2rem;flex-wrap:wrap}.ft-links a{font-size:.78rem;color:var(--tm);transition:color .2s}.ft-links a:hover{color:var(--tx)}.ft-copy{font-size:.72rem;color:var(--tm)}.ft-logo{height:2rem;width:auto;opacity:.65}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:none}.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.32s}.d4{transition-delay:.46s}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}#tp{display:none;position:fixed;bottom:1.5rem;right:1.5rem;z-index:9999;background:#111115;border:1px solid #2a2f38;border-radius:1rem;padding:1.2rem;width:230px;box-shadow:0 24px 48px #0009;font-family:"Source Sans 3",sans-serif}#tp.open{display:block}.tp-hd{font-size:.65rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#7a8088;margin-bottom:.9rem;display:flex;justify-content:space-between;align-items:center}.tp-x{background:none;border:none;color:#7a8088;cursor:pointer;font-size:1.1rem;line-height:1}.tp-sec{font-size:.6rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:.45rem}.tp-opts{display:flex;flex-direction:column;gap:.35rem}.tp-opt{display:flex;align-items:center;gap:.55rem;padding:.5rem .7rem;border-radius:.5rem;border:1px solid #1e2228;cursor:pointer;font-size:.75rem;font-weight:500;color:#7a8088;background:none;transition:border-color .2s,color .2s;text-align:left;width:100%}.tp-opt:hover,.tp-opt.on{border-color:var(--gold);color:var(--tx)}.tp-sw{width:13px;height:13px;border-radius:50%;flex-shrink:0}.last\:border-b-0:last-child{border-bottom-width:0px}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}@media(min-width:768px){.md\:p-10{padding:2.5rem}.md\:text-7xl{font-size:4.5rem;line-height:1}}
