:root{--bg: #F7F3EC;--bg-card: #FFFFFF;--bg-elevated: #F2EDE4;--text: #130F0A;--muted: #5C5248;--gold: #B5913C;--hairline: #DDD7CC}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.6;min-height:100vh;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}a{color:var(--gold);text-decoration:none;transition:opacity .2s ease}a:hover{opacity:.65}h1,h2,h3,h4,h5,h6{font-family:Didot,Didot LT STD,Bodoni MT,"Bodoni 72",Book Antiqua,Georgia,serif;color:var(--text);font-weight:400;line-height:1.2}button{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;cursor:pointer;background:transparent;border:none}button:focus-visible{outline:1px solid var(--gold);outline-offset:3px}.ghost-title{position:absolute;top:-.15em;left:-.04em;font-family:Didot,Didot LT STD,Bodoni MT,"Bodoni 72",Georgia,serif;font-size:clamp(7rem,16vw,15rem);font-style:italic;font-weight:400;color:var(--text);opacity:.045;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1;white-space:nowrap;z-index:0}.portfolio-container{width:100%;padding:5rem 6rem 7rem}.experiences-section{position:relative;overflow:hidden}.portfolio-nav{display:flex;justify-content:center;gap:0;margin-bottom:4rem;border-bottom:1px solid var(--hairline)}.portfolio-nav-btn{padding:.75rem 1.4rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--muted);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.62rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:color .2s ease,border-color .2s ease;margin-bottom:-1px}.portfolio-nav-btn:hover{color:var(--gold)}.portfolio-nav-btn.active{color:var(--gold);border-bottom-color:var(--gold)}.section-header{margin-bottom:3rem}.section-number{font-size:.62rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;margin-bottom:0;display:block}.section-divider{height:1px;background:linear-gradient(to right,var(--gold),var(--hairline) 50%,transparent);opacity:.6;margin-top:1rem}.experiences-scroll{display:flex;flex-direction:column;gap:1px;background:var(--hairline);border:1px solid var(--hairline)}.experience-card{background:var(--bg-card);transition:background .2s ease}.experience-card:hover{background:var(--bg-elevated)}.card-top{padding:1.8rem 2rem 0}.experience-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.2rem;margin-bottom:.8rem;flex-wrap:wrap}.experience-header h3{font-family:Didot,Didot LT STD,Bodoni MT,"Bodoni 72",Georgia,serif;font-size:1.15rem;font-weight:700;font-style:italic;color:var(--text);margin:0;flex:1;min-width:180px;letter-spacing:-.01em}.status-badge-exp{padding:3px 10px;font-size:.6rem;font-weight:600;letter-spacing:.16em;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;white-space:nowrap;text-transform:uppercase;border:1px solid;flex-shrink:0}.status-active{border-color:var(--gold);color:var(--gold);display:inline-flex;align-items:center;gap:6px}.status-dot-exp{width:5px;height:5px;background:var(--gold);border-radius:50%;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.status-completed{border-color:var(--hairline);color:var(--muted)}.status-upcoming{border-color:var(--muted);color:var(--muted)}.status-ongoing{border-color:var(--gold);color:var(--gold)}.status-category{border-color:var(--hairline);color:var(--muted)}.company{font-size:.82rem;font-weight:400;color:var(--gold);display:block;margin-bottom:.3rem;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;letter-spacing:.02em}.period{display:inline-block;font-size:.75rem;color:var(--text);margin-bottom:1rem;font-weight:400;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;letter-spacing:.03em}.metrics-box{background:var(--bg-elevated);border:1px solid var(--hairline);padding:1.2rem 1.6rem;margin:1rem 2rem}.metrics-header{font-size:.6rem;font-weight:600;letter-spacing:.2em;color:var(--muted);margin-bottom:1rem;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;text-transform:uppercase}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.2rem}.metric-item{display:flex;flex-direction:column;gap:3px}.metric-value{font-family:Didot,Didot LT STD,Bodoni MT,Georgia,serif;font-size:1.4rem;font-style:italic;font-weight:400;color:var(--gold);letter-spacing:-.01em}.metric-label{font-size:.7rem;color:var(--text);font-weight:500;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;letter-spacing:.05em}.description{line-height:1.85;color:var(--text);margin:.8rem 2rem 1rem;font-size:.875rem;font-weight:400;white-space:pre-line;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.technologies{display:flex;flex-wrap:wrap;gap:6px;padding:0 2rem 1.8rem}.tech-tag{border:1px solid var(--hairline);color:var(--text);padding:3px 10px;font-size:.75rem;font-weight:400;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;transition:color .2s ease,border-color .2s ease}.tech-tag:hover{color:var(--gold);border-color:var(--gold)}.cert-link-wrapper{margin:0 2rem 1.8rem}.cert-link{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border:1px solid var(--hairline);color:var(--gold);text-decoration:none;font-size:.78rem;font-weight:400;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;letter-spacing:.04em;transition:opacity .2s ease}.cert-link:hover{opacity:.65}.timeline-wrapper{position:relative;padding:1rem 0 2rem}.timeline-track{position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,var(--hairline) 6%,var(--hairline) 94%,transparent);transform:translate(-50%);pointer-events:none}.timeline-entry{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;margin-bottom:5rem;position:relative;opacity:0;transition:opacity .65s ease,transform .65s ease}.entry-odd{transform:translate(-22px)}.entry-even{transform:translate(22px)}.timeline-entry.visible{opacity:1;transform:none}.entry-odd .entry-details{grid-column:1;grid-row:1;padding-right:2.4rem}.entry-odd .timeline-node{grid-column:2;grid-row:1}.entry-odd .entry-logo-panel,.entry-even .entry-details{grid-column:3;grid-row:1;padding-left:2.4rem}.entry-even .timeline-node{grid-column:2;grid-row:1}.entry-even .entry-logo-panel{grid-column:1;grid-row:1;padding-right:2.4rem}.timeline-node{display:flex;justify-content:center;align-items:center;position:relative;z-index:2;height:100%}.node-dot{width:9px;height:9px;background:var(--bg);border:1.5px solid var(--gold);border-radius:50%;flex-shrink:0;transition:background .3s ease,transform .3s ease}.entry-active .node-dot{background:var(--gold)}.timeline-entry:hover .node-dot{transform:scale(1.4)}.entry-details{display:flex;flex-direction:column;gap:.55rem}.entry-meta{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.entry-period{font-size:.68rem;font-weight:500;letter-spacing:.1em;color:var(--muted);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;text-transform:uppercase}.entry-location{font-size:.68rem;font-weight:400;color:var(--muted);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;opacity:.7}.entry-title{font-family:Didot,Didot LT STD,Bodoni MT,"Bodoni 72",Georgia,serif;font-size:1.15rem;font-weight:700;font-style:italic;color:var(--text);margin:0;letter-spacing:-.01em;line-height:1.3}.entry-company{font-size:.8rem;color:var(--gold);font-weight:400;letter-spacing:.03em;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;margin:0}.entry-desc{font-size:.82rem;line-height:1.9;color:var(--text);font-weight:400;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;margin:.1rem 0 0;white-space:pre-line}.entry-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:.3rem}.entry-metrics{display:flex;flex-wrap:wrap;gap:1.4rem;padding-top:.9rem;border-top:1px solid var(--hairline);margin-top:.3rem}.entry-metric{display:flex;flex-direction:column;gap:2px}.entry-logo-panel{display:flex;align-items:center;justify-content:center;min-height:220px}.entry-logo-img{max-width:380px;max-height:260px;width:100%;object-fit:contain;filter:grayscale(.1) opacity(.88);transition:filter .35s ease,transform .35s ease}.entry-logo-img:hover{filter:grayscale(0) opacity(1);transform:scale(1.06)}.entry-logo-fallback{width:160px;height:160px;background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Didot,Didot LT STD,Georgia,serif;font-size:2rem;font-style:italic;color:var(--gold);letter-spacing:.04em;transition:border-color .3s ease,color .3s ease}.timeline-entry:hover .entry-logo-fallback{border-color:var(--gold)}@media (max-width: 768px){.portfolio-container{padding:4rem 2rem 5rem}.portfolio-nav{flex-wrap:wrap;gap:2px}.portfolio-nav-btn{padding:.65rem 1rem;font-size:.6rem}.card-top{padding:1.4rem 1.2rem 0}.description{margin:.8rem 1.2rem 1rem}.technologies{padding:0 1.2rem 1.4rem}.metrics-box{margin:1rem 1.2rem}.cert-link-wrapper{margin:0 1.2rem 1.4rem}.timeline-track{display:none}.timeline-entry{display:flex;flex-direction:column;margin-bottom:2.5rem;padding-left:1.2rem;border-left:2px solid var(--hairline)}.entry-odd .entry-details,.entry-even .entry-details{order:2;padding:0}.timeline-node{display:none}.entry-odd .entry-logo-panel,.entry-even .entry-logo-panel{order:1;justify-content:flex-start;padding:0;margin-bottom:.8rem;min-height:unset}.entry-logo-img{max-width:80px;max-height:50px}.entry-logo-fallback{width:52px;height:52px;font-size:.95rem}}.hero-wrapper{width:100%;padding:7rem 6rem 5rem;position:relative;overflow:hidden}.hero-container{display:grid;grid-template-columns:1.6fr 1fr;gap:5rem;align-items:start;margin-bottom:5rem}@keyframes hero-enter{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.hero-intro{animation:hero-enter .75s ease both;animation-delay:.05s}.credentials-grid{animation:hero-enter .75s ease both;animation-delay:.18s}.about-section{animation:hero-enter .75s ease both;animation-delay:.28s}.social-links{animation:hero-enter .75s ease both;animation-delay:.36s}.hero-right{animation:hero-enter .75s ease both;animation-delay:.22s}.gallery-section{animation:hero-enter .75s ease both;animation-delay:.45s}.hero-left{display:flex;flex-direction:column;gap:2.5rem}.hero-eyebrow{font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;font-weight:500;color:var(--gold);margin-bottom:.9rem}.hero-name{font-family:Didot,Didot LT STD,Bodoni MT,"Bodoni 72",Book Antiqua,Georgia,serif;font-size:clamp(3rem,7vw,5.5rem);font-weight:400;font-style:italic;letter-spacing:-.02em;line-height:1;color:var(--text)}.hero-rule{border:none;height:1px;background:linear-gradient(to right,var(--gold),var(--hairline) 55%,transparent);margin-top:1.8rem;opacity:.7}.credentials-grid{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--hairline)}.credential-item{padding:1.4rem 1.6rem;border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.credential-item:nth-child(2n){border-right:none}.credential-item:nth-last-child(-n+2){border-bottom:none}.credential-title{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.6rem;font-weight:600;font-style:normal;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem}.credential-institution{font-size:.875rem;font-weight:400;color:var(--text);line-height:1.5;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.about-text{font-size:.9rem;line-height:1.9;color:var(--text);max-width:620px;font-weight:400;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.social-links{display:flex;flex-direction:row;gap:8px;flex-wrap:wrap}.social-link{display:inline-flex;align-items:center;gap:8px;padding:0 14px;height:34px;border:1px solid var(--hairline);background:transparent;color:var(--muted);text-decoration:none;transition:color .2s ease,border-color .2s ease;font-size:.78rem}.social-link:hover{color:var(--gold);border-color:var(--gold);opacity:1}.social-label{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.75rem;font-weight:400;letter-spacing:.03em}.gallery-section{display:flex;flex-direction:column;gap:1rem}.gallery-eyebrow{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.62rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:var(--gold)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:6px}.gallery-img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;filter:saturate(.92);transition:filter .35s ease,transform .35s ease}.gallery-img:hover{filter:saturate(1.1);transform:scale(1.02);z-index:1;position:relative}.lightbox-overlay{position:fixed;inset:0;background:#130f0aed;z-index:10000;display:flex;align-items:center;justify-content:center;animation:lb-in .25s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@keyframes lb-in{0%{opacity:0}to{opacity:1}}.lightbox-img{max-width:84vw;max-height:84vh;object-fit:contain;box-shadow:0 32px 80px #0000008c;animation:lb-img-in .3s ease}@keyframes lb-img-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.lightbox-close{position:absolute;top:2rem;right:2.5rem;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-weight:300;letter-spacing:.05em;color:#f7f3ec80;background:transparent;border:none;transition:color .2s ease;padding:.5rem}.lightbox-close:hover{color:var(--gold)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:200;color:#f7f3ec73;background:transparent;border:none;padding:1rem 2rem;transition:color .2s ease}.lightbox-nav:hover{color:var(--gold)}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.lightbox-counter{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.6rem;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:#f7f3ec59}.hero-right{position:sticky;top:90px}.stats-panel{background:var(--bg-card);border:1px solid var(--hairline)}.panel-header{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.6rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);padding:1rem 1.4rem;border-bottom:1px solid var(--hairline);background:var(--bg-elevated)}.stat-item{padding:1.1rem 1.4rem;border-bottom:1px solid var(--hairline)}.stat-item:last-child{border-bottom:none}.stat-label{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.6rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:.45rem}.stat-value{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.84rem;font-weight:400;color:var(--text);line-height:1.7}@media (max-width: 968px){.hero-wrapper{padding:5rem 3rem 4rem}.hero-container{grid-template-columns:1fr;gap:3rem}.credentials-grid{grid-template-columns:1fr}.credential-item{border-right:none}.credential-item:nth-last-child(-n+2){border-bottom:1px solid var(--hairline)}.credential-item:last-child{border-bottom:none}.hero-right{position:relative;top:0}}@media (max-width: 480px){.hero-wrapper{padding:4rem 1.5rem 3rem}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr)}}.projects-container{width:100%;padding:5rem 6rem 7rem;position:relative;overflow:hidden}.section-header{margin-bottom:3.5rem}.section-divider{height:1px;background:linear-gradient(to right,var(--gold),var(--hairline) 50%,transparent);opacity:.6;max-width:100%}.projects-list{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--hairline)}.project{border-bottom:1px solid var(--hairline);background:transparent;transition:background .2s ease}.project:hover{background:var(--bg-card)}.project-header{padding:2.2rem 0 1.2rem}.project-number{font-size:.6rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;margin-bottom:.6rem}.project-title{font-family:Didot,Didot LT STD,Bodoni MT,"Bodoni 72",Book Antiqua,Georgia,serif;font-size:1.6rem;font-weight:700;font-style:italic;color:var(--text);margin-bottom:.4rem;letter-spacing:-.01em;transition:color .2s ease}.project:hover .project-title{color:var(--gold)}.project-category{font-size:.72rem;font-weight:500;letter-spacing:.08em;color:var(--text);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;text-transform:uppercase}.project-content{padding:0 0 1.5rem}.project-description{font-size:.875rem;line-height:1.9;color:var(--text);margin-bottom:1.5rem;font-weight:400;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;max-width:78ch}.project-highlights{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--hairline);margin-bottom:1.5rem}.highlight{padding:1rem .8rem;text-align:center;border-right:1px solid var(--hairline)}.highlight:last-child{border-right:none}.highlight-value{font-family:Didot,Didot LT STD,Bodoni MT,Georgia,serif;font-size:1.3rem;font-style:italic;font-weight:400;color:var(--gold);margin-bottom:.3rem}.highlight-label{font-size:.62rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.project-technologies{margin-top:.5rem}.tech-label{font-size:.6rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;margin-bottom:.7rem}.tech-list{display:flex;flex-wrap:wrap;gap:6px}.tech-item{padding:3px 10px;border:1px solid var(--hairline);font-size:.75rem;color:var(--text);font-weight:400;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;transition:color .2s ease,border-color .2s ease}.tech-item:hover{color:var(--gold);border-color:var(--gold)}.project-footer{padding:1rem 0 2rem;display:flex;gap:2rem}.project-link{font-size:.78rem;font-weight:400;letter-spacing:.08em;color:var(--gold);text-decoration:none;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;transition:opacity .2s ease;border-bottom:1px solid transparent;padding-bottom:1px}.project-link:hover{opacity:.65;border-bottom-color:var(--gold)}@media (max-width: 768px){.projects-container{padding:4rem 2rem 5rem}.project-highlights{grid-template-columns:1fr}.highlight{border-right:none;border-bottom:1px solid var(--hairline)}.highlight:last-child{border-bottom:none}}.skills-section{width:100%;padding:5rem 6rem 7rem;position:relative;overflow:hidden}.section-header{margin-bottom:4rem}.section-number{font-size:.62rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;margin-bottom:.7rem}.section-title{font-family:Didot,Didot LT STD,Bodoni MT,"Bodoni 72",Book Antiqua,Georgia,serif;font-size:clamp(2.2rem,5vw,3.5rem);font-weight:700;font-style:italic;color:var(--text);letter-spacing:-.01em;margin-bottom:1rem}.section-divider{height:1px;background:linear-gradient(to right,var(--gold),var(--hairline) 50%,transparent);opacity:.6;margin-bottom:1rem;max-width:100%}.section-description{font-size:.88rem;line-height:1.9;color:var(--text);max-width:60ch;font-weight:400;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.1rem;align-items:start}.skill-category{background:var(--bg-card);border:1px solid var(--hairline);overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}.skill-category:hover{box-shadow:0 4px 20px #130f0a0f;transform:translateY(-2px)}.skill-header{padding:.9rem 1.3rem;border-bottom:1px solid var(--hairline);background:var(--bg-elevated)}.skill-category-title{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.62rem;font-weight:600;font-style:normal;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.skill-items{display:flex;flex-direction:column}.skill-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1.3rem;border-bottom:1px solid color-mix(in srgb,var(--hairline) 55%,transparent);transition:background .15s ease}.skill-item:last-child{border-bottom:none}.skill-item:hover{background:var(--bg-elevated)}.skill-name{font-size:.84rem;font-weight:500;color:var(--text);font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.skill-proficiency{display:flex;gap:4px;align-items:center;flex-shrink:0}.proficiency-dot{width:6px;height:6px;border-radius:50%;border:1px solid var(--gold)}.proficiency-dot.filled{background:var(--gold);transform:scale(0);transition:transform .22s ease,opacity .22s ease;transition-delay:var(--dot-delay, 0ms)}.skills-loaded .proficiency-dot.filled{transform:scale(1)}@media (max-width: 768px){.skills-section{padding:4rem 2rem 5rem}.skills-grid{grid-template-columns:1fr}}@media (hover: hover){body,body *{cursor:none!important}}#cursor-dot{position:fixed;width:12px;height:12px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:width .15s ease,height .15s ease,opacity .15s ease;will-change:left,top}#cursor-dot.cursor-hover{width:16px;height:16px;opacity:.6}.app-wrapper{min-height:100vh;display:flex;flex-direction:column}@keyframes page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes page-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.page-enter{animation:page-in .3s ease both}.page-exit{animation:page-out .21s ease both}.site-footer{border-top:1px solid var(--hairline);background:var(--bg-elevated);padding:1.8rem 6rem}.footer-inner{display:flex;justify-content:space-between;align-items:center}.footer-name{font-family:Didot,Didot LT STD,Bodoni MT,Georgia,serif;font-style:italic;font-size:1rem;font-weight:400;color:var(--text)}.footer-links{display:flex;gap:2.5rem}.footer-links a{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.6rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .2s ease}.footer-links a:hover{color:var(--gold)}.footer-year{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.6rem;letter-spacing:.15em;color:var(--muted)}.marquee-strip{position:fixed;top:58px;left:0;right:0;height:28px;background:var(--bg-elevated);border-bottom:1px solid var(--hairline);overflow:hidden;z-index:999;display:flex;align-items:center}.marquee-track{display:flex;align-items:center;white-space:nowrap;animation:marquee-scroll 36s linear infinite}.marquee-item{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.58rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);padding:0 1.2rem}.marquee-sep{color:var(--gold);margin-left:1.2rem}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}
