﻿:root{--paper:#f7f5f2;--ink:#282726;--pink:#bc746f;--muted:#696561;--line:#d6d0cb;--rail:88px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible{outline:3px solid var(--pink);outline-offset:5px}::selection{background:#e8b7b0}[hidden]{display:none!important}.rail{position:fixed;inset:0 auto 0 0;width:var(--rail);background:var(--ink);z-index:30;display:flex;align-items:center;flex-direction:column;color:var(--paper)}.toggle{margin-top:28px;width:48px;height:48px;border:0;border-radius:50%;background:var(--paper);color:var(--ink);font-size:25px}.rail-label{position:absolute;top:50%;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);text-transform:uppercase;letter-spacing:3px;font-size:12px}.rail-bottom{margin-top:auto;margin-bottom:28px;font-size:12px;color:#bcb5ae}.menu{position:fixed;inset:0 auto 0 var(--rail);width:min(470px,calc(100% - var(--rail)));background:var(--ink);color:var(--paper);z-index:25;padding:120px 48px 40px}.menu a{display:block;font-family:'Barlow Condensed',sans-serif;font-size:54px;padding:10px 0}.menu a:hover{color:#e6a69d}.menu button{margin-top:35px;background:none;border:0;border-bottom:1px solid #777;padding:12px 0;color:#bcb5ae}.veil{position:fixed;inset:0;background:#0005;z-index:20;border:0;width:100%;height:100%}main,footer{margin-left:var(--rail)}.topbar{position:absolute;top:32px;left:calc(var(--rail) + 5vw);right:4vw;z-index:5;display:flex;justify-content:space-between;align-items:center}.languages{display:flex;align-items:center;gap:12px}.languages button{padding:5px 0;border:0;background:none;font-size:14px}.languages button[aria-pressed=true]{color:var(--pink);font-weight:600}.languages span{color:#aaa}.linkedin{font-size:14px;border-bottom:1px solid var(--ink);padding:5px 0 7px;letter-spacing:1px}.hero{min-height:830px;height:100svh;max-height:1150px;position:relative;overflow:hidden;padding:180px 5vw 65px;display:flex;flex-direction:column;align-items:flex-start}.art{position:absolute;inset:0 0 0 48%;background:linear-gradient(130deg,#b7b0aa,#e9e4de 46%,#b5aaa1);overflow:hidden}.stone{position:absolute;width:120%;height:45%;background:linear-gradient(140deg,#f1ede7,#a69b91);border-radius:60px;transform:rotate(-28deg);box-shadow:20px 40px 50px #34251b55}.stone.one{top:-22%;left:5%}.stone.two{bottom:-25%;left:10%}.ribbon{position:absolute;width:64%;height:74%;left:22%;top:14%;border:70px solid #b87f78;border-radius:48%;transform:rotate(33deg);box-shadow:inset 9px 12px 14px #f9d5cd,inset -10px -8px 15px #6e4745,12px 24px 32px #51403866;border-left-color:#e5bbb0;border-top-color:#d0a39b;border-bottom-color:#a46561}.hero-content{position:relative;z-index:2;width:100%}.role{display:flex;align-items:center;gap:12px;font-size:19px}.asterisk{color:var(--pink);font-size:52px;line-height:1}.hero h1{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;font-size:clamp(76px,10.6vw,175px);line-height:.89;letter-spacing:-.035em;text-transform:uppercase;margin:32px 0 24px;max-width:1050px}.location{font-size:12px;letter-spacing:3px}.intro{font-size:clamp(19px,1.7vw,27px);line-height:1.5;max-width:420px;margin-top:30px}.hero-cta{position:relative;z-index:2;margin-top:auto;padding-top:48px;display:flex;gap:20px;align-items:center;font-size:17px}.circle{width:56px;height:56px;border:1px solid;display:inline-grid;place-items:center;border-radius:50%;font-size:28px;transition:background .2s,transform .2s}.hero-cta:hover .circle{background:#e9c3bc;transform:rotate(-35deg)}.section{padding:105px 6vw;border-top:1px solid var(--line)}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:2px;margin:0 0 28px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:48px}h2{font-size:clamp(40px,5vw,70px);font-weight:500;line-height:1.08;letter-spacing:-2px;margin:0}.section-head>p{max-width:300px;color:var(--muted);line-height:1.6}.projects{display:grid;grid-template-columns:1fr 1fr;gap:48px 28px}.project:last-child{grid-column:1/-1}.cover{height:330px;padding:35px;display:flex;flex-direction:column;justify-content:space-between;transition:filter .25s}.project:hover .cover{filter:brightness(1.06)}.cover small{font-size:10px;text-transform:uppercase;letter-spacing:2px}.cover strong{font-size:clamp(60px,7vw,108px);font-weight:500;letter-spacing:-5px}.cover span{font-size:12px;opacity:.65}.forlex{background:#292e2d;color:#e3dfcc}.purple{background:#dcd0eb;color:#56397b}.portal{background:#ddaaa0;color:#4c3431}.project-meta{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.project-meta h3{font-size:23px;font-weight:500;margin:18px 0 8px}.project p{color:var(--muted);max-width:530px;line-height:1.6;margin:0}.dark{background:var(--ink);color:var(--paper)}.contributions{margin-top:55px}.contribution{display:grid;grid-template-columns:45px 1fr 1fr;gap:28px;border-top:1px solid #ffffff30;padding:28px 0}.contribution>span{color:#d6a198;font-size:12px}.contribution h3{font-weight:400;font-size:26px;margin:0}.contribution p{margin:0;color:#c4beb8;line-height:1.7}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.body-copy{font-size:20px;line-height:1.7}.text-link{display:inline-block;border-bottom:1px solid;padding:10px 0;margin-top:15px}.contact{background:#e3b8b0}.contact h2{max-width:800px}.contact-links{display:flex;gap:30px;margin-top:40px;flex-wrap:wrap}.pending{border:0;border-bottom:1px solid #8c6a65;background:none;padding:12px 0;font-size:15px;opacity:.7}.contact small{display:block;margin-top:24px;color:#745852}footer{padding:28px 6vw;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.page{padding-top:150px;min-height:85vh}.page h1{font:700 clamp(65px,9vw,130px)/.95 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:30px 0}.page-lead{max-width:780px;font-size:25px;line-height:1.5}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;margin:45px 0}.facts dt{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.facts dd{margin:12px 0 0;line-height:1.5}.chapters{max-width:850px}.chapters article{padding:32px 0;border-bottom:1px solid var(--line)}.chapters h2{font-size:32px;letter-spacing:-.6px}.chapters p{color:var(--muted);line-height:1.8}.draft{font-size:12px;color:var(--muted);border-left:2px solid var(--pink);padding-left:15px;margin:30px 0}.skip{position:fixed;top:-70px;left:100px;z-index:100;background:white;padding:15px}.skip:focus{top:10px}@media(max-width:900px){:root{--rail:64px}.hero{padding-top:170px;min-height:800px}.art{left:56%;opacity:.8}.ribbon{border-width:45px;width:100%;left:0}.hero h1{font-size:12vw}.intro{max-width:50%;font-size:19px}.section{padding:75px 5vw}.cover{height:260px}.contribution{grid-template-columns:25px 1fr}.contribution p{grid-column:2}.about-grid{gap:30px}.facts{grid-template-columns:1fr 1fr}}@media(max-width:600px){:root{--rail:54px}.toggle{width:36px;height:36px;margin-top:20px;font-size:21px}.topbar{top:22px;left:76px;right:22px}.languages{gap:8px}.linkedin{font-size:11px}.hero{padding:150px 24px 38px;height:auto;min-height:850px}.art{inset:460px 0 0 30%;opacity:.8}.hero h1{font-size:19vw;margin-top:26px}.role{font-size:14px}.asterisk{font-size:38px}.intro{font-size:18px;max-width:100%;margin-top:26px}.location{letter-spacing:1.5px;font-size:10px}.hero-cta{font-size:13px;gap:10px;max-width:210px;padding-top:200px}.circle{width:44px;height:44px;flex-shrink:0}.section{padding:60px 24px}.section-head,.about-grid{display:block}.section-head>p{font-size:14px}.projects{grid-template-columns:1fr;gap:34px}.project:last-child{grid-column:auto}.cover{height:240px;padding:24px}.cover strong{font-size:64px;letter-spacing:-3px}.project-meta h3{font-size:20px}.project p{font-size:14px}h2{font-size:39px;letter-spacing:-1.4px}.contribution{gap:12px}.contribution h3{font-size:22px}.contribution p{font-size:14px}.body-copy{font-size:18px}.menu{padding:110px 25px 30px}.menu a{font-size:44px}footer{padding:24px;gap:20px;line-height:1.6}.page{padding-top:115px}.page h1{font-size:66px}.page-lead{font-size:20px}.facts{grid-template-columns:1fr}.contact-links{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.contact-links .resume-download{border-bottom:1px solid #8c6a65;padding:12px 0;font-size:15px}

.moodboard{--mood-accent:#ae3265;background:#faf8f6}.moodboard h1,.moodboard h2{font-family:Georgia,serif;letter-spacing:-1.5px}.mood-intro{padding:150px 6vw 90px;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.mood-intro h1{font-size:clamp(52px,6.5vw,100px);line-height:1;margin:18px 0}.mood-intro h1 span,.mood-role:before{color:var(--mood-accent)}.mood-role:before{content:'•';margin-right:10px}.mood-role{font-size:17px}.mood-description{color:var(--muted);line-height:1.7}.mood-tags{display:flex;flex-wrap:wrap;gap:10px;padding:0;list-style:none;margin:26px 0}.mood-tags li{padding:8px 13px;border:1px solid #ded9d6;border-radius:30px;font-size:11px}.mood-intro .mood-tags li:first-child{background:var(--mood-accent);border-color:var(--mood-accent);color:white}.mood-facts{list-style:none;padding:0;margin:30px 0;display:grid;gap:15px;color:var(--mood-accent)}.mood-facts span{color:var(--ink);font-size:14px;margin-left:10px}.mood-photo{margin:0;overflow:hidden;border-radius:14px;background:#eae4e3;min-width:0}.mood-photo img{width:100%;height:100%;display:block;object-fit:cover}.mood-portrait{aspect-ratio:4/5;box-shadow:0 18px 40px #30202212}.mood-photo-placeholder{height:100%;min-height:180px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;text-align:center;color:#78686e;padding:24px}.mood-photo-placeholder>span{font-size:38px;color:var(--mood-accent)}.mood-photo figcaption{font-size:14px}.mood-photo small{display:block;margin-top:8px;font-size:11px;color:var(--muted)}.mood-section{padding:75px 10vw}.mood-section h2{font-size:clamp(32px,3.5vw,52px);margin-bottom:38px}.mood-dark{background:#232322;color:#faf8f6}.mood-education,.mood-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.mood-education article,.mood-principles article{padding:24px;border-radius:12px;background:#ffffff08}.moodboard h3{font-size:16px;line-height:1.5;margin:0 0 12px}.mood-education .eyebrow,.mood-timeline .eyebrow{color:var(--mood-accent);margin:0 0 10px}.mood-dark .eyebrow{color:#e090b0}.mood-education article>p:last-child{color:#c7bfbc;font-size:12px;line-height:1.6}.mood-dark .mood-tags li{border-color:#ffffff20;color:#d1c9c6}.mood-timeline article{display:grid;grid-template-columns:170px 1fr;gap:30px;padding:24px 0}.mood-date{font-size:12px;color:var(--muted);line-height:1.7}.mood-timeline article>div{border-left:1px solid #ded3d7;padding-left:28px;position:relative}.mood-timeline article>div:before{content:'';position:absolute;left:-5px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--mood-accent)}.mood-timeline article>div>p:last-child,.mood-principles p{color:var(--muted);font-size:14px;line-height:1.7;margin:0}.mood-gallery{display:flex;gap:20px;overflow-x:auto;padding:20px 6vw 30px;scroll-snap-type:x proximity}.mood-gallery .mood-photo{flex:0 0 250px;height:180px;scroll-snap-align:center}.mood-gallery:focus-visible{outline:3px solid var(--mood-accent);outline-offset:-3px}.mood-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;list-style:none;padding:0;margin:0 0 45px}.mood-steps li{text-align:center;text-transform:uppercase;font-size:10px;letter-spacing:1px}.mood-steps span{display:grid;place-items:center;background:var(--ink);color:white;width:36px;height:36px;border-radius:50%;margin:0 auto 15px;font-size:12px}.mood-principles article{background:#f0ece9}.mood-contact{text-align:center;background:#eee7e5}.mood-contact .contact-links{justify-content:center}.mood-contact h2{margin-bottom:20px}@media(max-width:900px){.mood-intro{gap:30px}.mood-section{padding:65px 6vw}.mood-education,.mood-principles{gap:12px}.mood-education article,.mood-principles article{padding:18px}}@media(max-width:600px){.mood-intro{grid-template-columns:1fr;padding:120px 24px 55px}.mood-portrait{width:100%;max-width:400px;justify-self:center}.mood-section{padding:55px 24px}.mood-education,.mood-principles{grid-template-columns:1fr}.mood-timeline article{grid-template-columns:1fr;gap:8px}.mood-date{margin:0}.mood-steps{grid-template-columns:repeat(3,1fr);gap:25px 12px}.mood-gallery{padding-left:24px}.mood-gallery .mood-photo{flex-basis:220px}}
