:root{--rose-50:#fff1f2;--rose-100:#ffe4e6;--rose-200:#fecdd3;--rose-300:#fda4af;--rose-400:#fb7185;--rose-500:#f43f5e;--rose-600:#e11d48;--pink-50:#fdf2f8;--pink-200:#fbcfe8;--purple-100:#f3e8ff;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-800:#1f2937;--gray-900:#111827;--serif:"Playfair Display", Georgia, serif;--sans:"Inter", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--gray-800);background:linear-gradient(135deg, var(--rose-50), #fff 45%, var(--pink-50));font-family:var(--sans);margin:0}body,button,input{letter-spacing:0}img,svg{display:block}img{max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.container{z-index:1;width:min(100% - 48px,1152px);margin-inline:auto;position:relative}.narrow{width:min(100% - 48px,896px)}.section-head{text-align:center;margin:0 auto 5rem}.section-head span{color:var(--rose-500);letter-spacing:.2em;text-transform:uppercase;margin-bottom:.75rem;font-size:.875rem;font-weight:600;display:block}.section-head h2{color:var(--gray-900);font-family:var(--serif);margin:0 0 1.5rem;font-size:clamp(3rem,6vw,3.75rem);line-height:1}.section-head p{max-width:42rem;color:var(--gray-600);margin:0 auto;font-size:1.125rem;font-weight:300;line-height:1.75}.section-head i,.rule{background:linear-gradient(90deg, var(--rose-400), #f472b6);border-radius:999px;width:6rem;height:.25rem;margin:0 auto;display:block}.blob{filter:blur(24px);mix-blend-mode:multiply;pointer-events:none;border-radius:999px;animation:7s infinite blob;position:absolute}.opacity-0{opacity:0}.translate-y-8{transform:translateY(2rem)}.translate-x-full{transform:translate(100%)}.pointer-events-none{pointer-events:none}[data-reveal]{transition:opacity .7s,transform .7s}.button{border-radius:999px;justify-content:center;align-items:center;min-height:3.5rem;padding:0 2rem;font-weight:500;transition:transform .3s,box-shadow .3s,background .3s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{color:#fff;background:linear-gradient(90deg, var(--rose-500), #ec4899);box-shadow:0 16px 30px #fb718552}.button.secondary{color:var(--rose-600);border:1px solid var(--rose-300);backdrop-filter:blur(8px);background:#ffffff85}@keyframes blob{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-50px)scale(1.1)}66%{transform:translate(-20px,20px)scale(.9)}}@keyframes fade-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.site-nav-shell{z-index:50;padding:1rem 1rem 0;position:fixed;inset:0 0 auto}.nav-inner{backdrop-filter:blur(20px);background:#fffc;border:1px solid #ffffff80;border-radius:999px;justify-content:space-between;align-items:center;width:min(100%,64rem);margin:0 auto;padding:.75rem 1.5rem;display:flex;box-shadow:0 12px 30px #ffe4e659}.logo{color:var(--gray-900);font-family:var(--serif);font-size:1.25rem;font-weight:700}.desktop-links{align-items:center;gap:.25rem;display:flex}.nav-link{color:var(--gray-600);border-radius:999px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:color .3s,background .3s}.nav-link:hover,.nav-link.active{color:var(--rose-600);background:var(--rose-50)}.menu-button{color:var(--gray-800);background:0 0;border:0;border-radius:999px;padding:.5rem;display:none}.menu-button span{background:currentColor;width:1.25rem;height:2px;margin:4px 0;display:block}.mobile-menu{z-index:-1;position:fixed;inset:0}.mobile-backdrop{backdrop-filter:blur(4px);background:#0003;transition:opacity .3s;position:absolute;inset:0}.mobile-panel{background:#fff;flex-direction:column;width:min(75vw,20rem);transition:transform .3s;display:flex;position:absolute;inset:0 0 0 auto;box-shadow:-24px 0 60px #1118272e}.mobile-head{border-bottom:1px solid var(--gray-100);color:var(--gray-900);font-family:var(--serif);justify-content:space-between;align-items:center;padding:1.5rem;font-size:1.25rem;font-weight:700;display:flex}.mobile-head button{width:2.5rem;height:2.5rem;color:var(--gray-500);background:var(--rose-50);border:0;border-radius:999px}.mobile-links{gap:.5rem;padding:2rem 1.5rem;display:grid}.mobile-nav-link{color:var(--gray-600);border-radius:.75rem;padding:.875rem 1rem;font-size:1.125rem;font-weight:500}.mobile-nav-link:hover{color:var(--rose-600);background:var(--rose-50)}.mobile-foot{color:var(--gray-400);text-align:center;background:#f9fafb80;margin:auto 0 0;padding:1.5rem;font-size:.75rem}.hero-section{justify-content:center;align-items:center;min-height:100vh;padding:5rem 1.5rem 0;display:flex;position:relative;overflow:hidden}.wash{background:linear-gradient(135deg, var(--rose-100), var(--pink-50), var(--purple-100));position:absolute;inset:0}.blob-one{background:var(--rose-200);opacity:.7;width:18rem;height:18rem;top:5rem;left:2.5rem}.blob-two{background:var(--pink-200);opacity:.7;width:18rem;height:18rem;animation-delay:2s;top:10rem;right:2.5rem}.blob-three{opacity:.7;background:#e9d5ff;width:18rem;height:18rem;animation-delay:4s;bottom:-2rem;left:5rem}.hero-content{z-index:1;text-align:center;width:min(100%,56rem);position:relative}.portrait-wrap{width:clamp(8rem,20vw,12rem);height:clamp(8rem,20vw,12rem);margin:0 auto 2.5rem;position:relative}.portrait-glow{background:linear-gradient(135deg, var(--rose-400), #ec4899);filter:blur(16px);opacity:.5;border-radius:999px;animation:2s infinite pulse;position:absolute;inset:0}.portrait-ring{background:linear-gradient(135deg, var(--rose-400), #ec4899);border-radius:999px;width:100%;height:100%;padding:.25rem;position:relative;box-shadow:0 25px 50px #0000002e}.portrait-ring img:first-child{object-fit:cover;object-position:center 52%;background:#fff;border-radius:999px;width:100%;height:100%;transform:scale(1.28)}.portrait-ring{overflow:hidden}.bow{z-index:2;filter:drop-shadow(0 4px 4px #0000001f);width:3.5rem;position:absolute;top:-.5rem;right:0;transform:rotate(30deg)}h1{color:var(--gray-900);font-family:var(--serif);margin:0 .5rem .5rem;font-size:clamp(3rem,9vw,6rem);line-height:1}h1 span{color:#0000;background:linear-gradient(90deg, var(--rose-500), #ec4899, var(--rose-500));background-clip:text}.role-line{color:var(--gray-500);letter-spacing:.2em;text-transform:uppercase;margin:0 0 2rem;font-size:clamp(.875rem,2vw,1.125rem);font-weight:500}.hero-copy{max-width:42rem;color:var(--gray-600);margin:0 auto 2.5rem;font-size:clamp(1rem,2vw,1.25rem);font-weight:300;line-height:1.7}.hero-actions,.social-row{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.social-row{gap:2rem;margin-top:3rem}.social-row a{color:var(--gray-400);transition:color .3s,transform .3s}.social-row a:hover{color:var(--rose-500);transform:scale(1.1)}.down-cue{z-index:1;color:var(--rose-500);animation:1s infinite bounce;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.fade-200{opacity:0;animation:.8s .2s forwards fade-up}.fade-400{opacity:0;animation:.8s .4s forwards fade-up}.fade-600{opacity:0;animation:.8s .6s forwards fade-up}.fade-800{opacity:0;animation:.8s .8s forwards fade-up}.fade-1000{opacity:0;animation:.8s 1s forwards fade-up}.about-section,.skills-section,.contact-section{padding:6rem 0;position:relative;overflow:hidden}.section-soft{background:linear-gradient(#fff,#fff1f24d)}.rule{opacity:.6;border-radius:0;width:100%;height:1px}.small{opacity:.3;filter:blur(64px);width:16rem;height:16rem}.left{background:var(--rose-100);top:10rem;left:-5rem}.right{background:var(--pink-200);animation-delay:2s;bottom:10rem;right:-5rem}.about-grid{grid-template-columns:7fr 5fr;align-items:start;gap:3rem;display:grid}.bio{color:var(--gray-600);font-size:1.125rem;font-weight:300;line-height:1.75}.bio p:first-child:first-letter{float:left;color:var(--rose-500);font-family:var(--serif);margin:-.625rem .75rem 0 0;font-size:4.5rem;font-weight:700;line-height:1}.stats-card{border:1px solid var(--rose-100);background:#fff;border-radius:1rem;padding:2rem;box-shadow:0 24px 50px #ffe4e6a6}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.stats-grid div{text-align:center;background:#fff1f280;border-radius:.75rem;padding:1rem}.stats-grid div:last-child{grid-column:1/-1}.stats-grid strong{color:var(--rose-600);font-family:var(--serif);font-size:1.875rem;display:block}.stats-grid span{color:var(--gray-500);letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:600}blockquote{color:var(--gray-800);font-family:var(--serif);text-align:center;margin:2rem 0 0;font-size:1.5rem;font-style:italic;line-height:1.45}.values-grid,.skill-grid{grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:6rem;display:grid}.value-card,.skill-card{text-align:center;background:#fff;border:1px solid #0000;border-radius:1rem;padding:1.75rem;transition:transform .5s,box-shadow .5s,border-color .5s}.value-card:hover,.skill-card:hover{border-color:var(--rose-100);transform:translateY(-4px);box-shadow:0 20px 40px #ffe4e6b3}.value-card div,.skill-icon,.contact-icon{width:4rem;height:4rem;color:var(--rose-500);background:var(--rose-50);border-radius:999px;place-items:center;margin:0 auto 1.5rem;transition:color .5s,background .5s,transform .5s;display:grid}.value-card:hover div,.skill-card:hover .skill-icon{color:#fff;background:var(--rose-500);transform:scale(1.1)}.value-card h3,.skill-card h3,.contact-card h3{color:var(--gray-900);font-family:var(--serif);margin:0 0 .75rem;font-size:1.5rem}.value-card p,.skill-card p,.contact-card p{color:var(--gray-600);margin:0;font-weight:300;line-height:1.7}.timeline-section{background:#fff1f24d;padding:6rem 0;position:relative;overflow:hidden}.bg-one{background:var(--rose-100);opacity:.2;filter:blur(64px);width:24rem;height:24rem;top:0;right:0}.bg-two{background:var(--pink-200);opacity:.2;filter:blur(64px);width:24rem;height:24rem;animation-delay:4s;bottom:0;left:0}.timeline-list{gap:4rem;display:grid;position:relative}.timeline-list:before{content:"";background:linear-gradient(var(--rose-300), #f9a8d4, var(--rose-100));width:2px;position:absolute;inset:0 auto 0 50%;transform:translate(-1px)}.timeline-item{grid-template-columns:1fr 1fr;align-items:center;display:grid;position:relative}.timeline-item.flip .date-side{text-align:left;grid-column:2}.timeline-item.flip .timeline-card{grid-area:1/1}.date-side{text-align:right;padding:0 3rem}.date-side time,.mobile-date{color:var(--rose-500);background:var(--rose-50);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:.25rem 1rem;font-size:.875rem;font-weight:700;display:inline-block}.mobile-date{margin-bottom:1rem;font-size:.75rem;display:none}.timeline-dot{z-index:2;border:4px solid var(--rose-500);background:#fff;border-radius:999px;width:1rem;height:1rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #f43f5e33}.timeline-card{border:1px solid var(--rose-50);background:#fff;border-radius:1rem;margin:0 3rem;padding:2rem;box-shadow:0 10px 24px #11182714}.timeline-title{justify-content:space-between;gap:1rem;margin-bottom:1rem;display:flex}.timeline-title h3{color:var(--gray-900);font-family:var(--serif);margin:0;font-size:1.5rem}.timeline-title p{color:var(--gray-500);align-items:center;gap:.5rem;margin:.25rem 0 0;font-weight:500;display:flex}.timeline-title span{width:2.5rem;height:2.5rem;color:var(--rose-500);background:var(--rose-50);border-radius:.5rem;flex:none;place-items:center;display:grid}.timeline-card>p{color:var(--gray-600);margin:0 0 1.5rem;font-weight:300;line-height:1.7}.tags{flex-wrap:wrap;gap:.5rem;display:flex}.tags em,.toolkit span{border:1px solid var(--gray-100);color:var(--gray-600);background:var(--gray-50);border-radius:999px;padding:.25rem .75rem;font-size:.75rem;font-style:normal;font-weight:500}.skills-section{background:#fff}.skill-one{background:var(--rose-50);opacity:.5;filter:blur(64px);width:18rem;height:18rem;top:10rem;left:0}.skill-two{background:var(--pink-50);opacity:.5;filter:blur(64px);width:18rem;height:18rem;bottom:10rem;right:0}.skill-card{text-align:left;box-shadow:0 10px 24px #11182714}.skill-icon{border-radius:.75rem;width:3.5rem;height:3.5rem;margin-inline:0}.skill-card ul{gap:.75rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.skill-card li{color:var(--gray-600);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.skill-card li svg{color:var(--rose-500);flex:none}.toolkit{text-align:center;margin-top:5rem}.toolkit h3{color:var(--gray-900);font-family:var(--serif);margin:0 0 2rem;font-size:1.5rem}.toolkit div{flex-wrap:wrap;justify-content:center;gap:1rem;max-width:56rem;margin:0 auto;display:flex}.toolkit span{padding:.75rem 1.5rem;transition:color .3s,background .3s,border-color .3s}.toolkit span:hover{color:var(--rose-600);border-color:var(--rose-200);background:var(--rose-50)}.contact-section{background:linear-gradient(#fff,#fff1f280)}.contact-one{background:var(--rose-200);opacity:.6;width:8rem;height:8rem;top:5rem;left:2.5rem}.contact-two{background:var(--pink-200);opacity:.6;width:8rem;height:8rem;animation-delay:2s;bottom:5rem;right:2.5rem}.contact-card{text-align:center;backdrop-filter:blur(12px);background:#fffc;border:1px solid #fff;border-radius:1.5rem;grid-template-columns:1fr auto 1fr;gap:3rem;padding:3rem;display:grid;position:relative;overflow:hidden;box-shadow:0 25px 60px #ffe4e6a6}.top-line{background:linear-gradient(90deg, var(--rose-300), #f472b6, var(--rose-300));height:.25rem;position:absolute;inset:0 0 auto}.contact-card b{background:linear-gradient(transparent, var(--rose-200), transparent);align-self:center;width:1px;height:8rem}.contact-card article{z-index:1;flex-direction:column;align-items:center;display:flex;position:relative}.contact-icon{width:5rem;height:5rem}.contact-card article:hover .contact-icon{transform:scale(1.1)}.contact-card p{margin-bottom:1.5rem;font-size:.875rem}.contact-button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;width:min(100%,20rem);min-height:3rem;margin-top:.75rem;font-weight:500;transition:transform .3s,background .3s,color .3s,border-color .3s;display:inline-flex}.contact-button:hover{transform:translateY(-4px)}.contact-button.dark{color:#fff;background:var(--gray-900)}.contact-button.dark:hover{background:var(--rose-500);box-shadow:0 12px 24px #fb71854d}.contact-button.light{color:var(--gray-600);border-color:var(--gray-200);background:0 0}.contact-button.light:hover{color:var(--rose-500);border-color:var(--rose-400);background:var(--rose-50)}.footer-note{text-align:center;margin-top:4rem}.footer-note p{color:var(--rose-400);font-family:var(--serif);margin:0 0 2rem;font-size:1.25rem;font-style:italic}.footer-note small{color:var(--gray-400);font-weight:300}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{transform:translate(-50%,-25%)}50%{transform:translate(-50%)}}@media (width<=768px){.desktop-links{display:none}.menu-button{display:block}.container,.narrow{width:min(100% - 32px,1152px)}.hero-section{padding-top:6rem}.hero-actions{flex-direction:column;align-items:stretch}.about-grid,.values-grid,.skill-grid,.contact-card{grid-template-columns:1fr}.stats-card{padding:1.25rem}.timeline-list{gap:2rem}.timeline-list:before{left:.5rem}.timeline-item,.timeline-item.flip{grid-template-columns:1fr;padding-left:2.5rem}.date-side{display:none}.mobile-date{display:inline-block}.timeline-dot{top:2rem;left:.5rem}.timeline-card,.timeline-item.flip .timeline-card{grid-area:auto;margin:0}.contact-card{gap:2rem;padding:2rem}.contact-card b{display:none}}@media (width<=480px){.section-head h2{font-size:2.5rem}.role-line{letter-spacing:.1em}.portrait-wrap{margin-bottom:2rem}.bow{width:2.75rem}}.scroll-meter{z-index:80;background:0 0;height:3px;position:fixed;inset:0 0 auto}.scroll-meter span{transform-origin:0;background:linear-gradient(90deg, var(--rose-400), #ec4899, #f59e0b);width:100%;height:100%;display:block;transform:scaleX(0)}.hero-content:after{content:"";z-index:-1;filter:blur(8px);background:radial-gradient(circle,#ffffffad,#0000 68%);border-radius:999px;width:min(44rem,88vw);height:12rem;position:absolute;top:7rem;left:50%;transform:translate(-50%)}.hero-proof{flex-wrap:wrap;justify-content:center;gap:.75rem;margin:-1rem auto 2rem;display:flex}.hero-proof span{color:var(--rose-600);backdrop-filter:blur(14px);background:#ffffff8f;border:1px solid #ffffffb3;border-radius:999px;padding:.5rem .875rem;font-size:.8rem;font-weight:700;box-shadow:0 10px 24px #fb718524}h1 span{background-size:180% 100%;animation:7s ease-in-out infinite sheen}.button,.contact-button{position:relative;overflow:hidden}.button:after,.contact-button:after{content:"";background:linear-gradient(120deg,#0000 20%,#ffffff57,#0000 80%);transition:transform .7s;position:absolute;inset:0;transform:translate(-130%)}.button:hover:after,.contact-button:hover:after{transform:translate(130%)}.value-card,.skill-card,.timeline-card{position:relative}.timeline-card:before,.skill-card:before,.value-card:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff73,#0000 42%);position:absolute;inset:0}.timeline-item.is-revealed .timeline-card,.skill-card.is-revealed,.values-grid.is-revealed .value-card{animation:.6s both card-settle}.values-grid.is-revealed .value-card:nth-child(2){animation-delay:80ms}.values-grid.is-revealed .value-card:nth-child(3){animation-delay:.16s}.contact-button.copied{color:#fff;border-color:var(--rose-500);background:var(--rose-500)}@keyframes sheen{0%,to{background-position:0%}50%{background-position:100%}}@keyframes card-settle{0%{transform:translateY(14px)scale(.98)}to{transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
