@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@1,600&display=swap');
:root{--paper:#f4f1eb;--ink:#161616;--accent:#e95b36}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}.section{padding:120px max(6vw,24px)}a{color:inherit;text-decoration:none}.nav{position:fixed;z-index:20;top:20px;left:50%;transform:translateX(-50%);width:min(760px,calc(100% - 32px));height:72px;border:1px solid #ddd8ce;background:#f4f1ebeb;backdrop-filter:blur(16px);border-radius:50px;display:grid;grid-template-columns:1fr 84px 1fr;align-items:center;padding:0 30px}.avatar{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:white;font-weight:600;font-size:24px;border:7px solid var(--paper);overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.navlink{text-align:right}.brand,.navlink{font-weight:600}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding-top:150px;background:radial-gradient(circle at 15% 25%,#d8d0c4 0 2px,transparent 3px),radial-gradient(circle at 80% 70%,#d8d0c4 0 2px,transparent 3px);background-size:60px 60px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:600;color:var(--accent)}.hero h1{font-size:clamp(46px,7.5vw,112px);line-height:.98;letter-spacing:-.055em;margin:24px 0;max-width:1200px}.hero h1 em{font-family:'Playfair Display',serif;color:var(--accent)}.lead{font-size:18px;line-height:1.7;max-width:610px;color:#666}.actions{display:flex;gap:12px;margin-top:26px}.btn{display:inline-block;border:1px solid #bbb4a8;border-radius:40px;padding:15px 25px;font-weight:600;cursor:pointer}.btn.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.scroll{position:absolute;bottom:25px;font-size:12px;color:#777}.about{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:9vw;align-items:center;background:#fff}.portrait{aspect-ratio:4/5;border-radius:180px 180px 18px 18px;background:linear-gradient(145deg,#252525,#6c655d);display:grid;place-items:center;color:#fff;text-align:center;box-shadow:25px 25px 0 var(--accent);overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover}.about h2,.resume h2,.portfolio h2,.process h2,.contact h2{font-size:clamp(36px,5vw,72px);line-height:1.05;letter-spacing:-.04em;margin:14px 0 32px}.about>div>p:not(.eyebrow){font-size:20px;line-height:1.8;color:#555}.facts{display:flex;gap:40px;margin-top:42px}.facts span{font-size:13px}.facts b{display:block;font-size:28px;color:var(--accent)}.textlink{display:inline-block;margin-top:35px;border-bottom:1px solid;padding-bottom:4px}.resume{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.timeline article{border-top:1px solid #ccc5b9;padding:24px 0}.timeline h3{font-size:23px;margin:7px 0}.timeline p{color:#777}.skill{display:grid;grid-template-columns:1fr auto;gap:9px;margin:21px 0}.skill i{grid-column:1/-1;background:#d9d4ca;height:5px}.skill u{display:block;height:100%;background:var(--accent);width:0;transition:width 1.2s ease}.sectionhead{display:flex;align-items:end;justify-content:space-between}.portfolio{background:var(--ink);color:#fff}.sectionhead>a{border-bottom:1px solid #777;padding-bottom:5px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 30px}.project:nth-child(even){margin-top:90px}.project-open{display:block;background:none;border:0;color:#fff;text-align:left;width:100%;font:inherit;cursor:pointer;padding:0}.visual{aspect-ratio:16/11;border-radius:5px;padding:22px;font-size:12px;overflow:hidden;position:relative}.visual:after,.modal-visual:after{content:"";position:absolute;width:55%;height:70%;background:#f5f0e7;border-radius:120px 120px 0 0;left:23%;top:18%;box-shadow:0 20px 70px #0005}.visual strong{position:absolute;z-index:2;left:50%;top:53%;transform:translate(-50%,-50%);color:#222;font-size:clamp(18px,3vw,36px);width:60%;text-align:center}.v1{background:#d86542}.v2{background:#7d8d73}.v3{background:#ceb477}.v4{background:#617b92}.v5{background:#9e726d}.v6{background:#716c8f}.project small{display:block;color:#999;margin-top:20px}.project h3{font-size:26px;margin:8px 0}.process>div{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px}.process span{border-top:1px solid #bbb4a8;padding:25px 10px;font-size:18px}.process span b{display:block;color:var(--accent);font-size:12px;margin-bottom:35px}.contact{text-align:center;background:var(--accent);color:#fff}.contact .eyebrow{color:var(--ink)}.contact>p{font-size:18px}.contact form{max-width:680px;margin:35px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact input,.contact textarea{border:1px solid #ffffff80;background:#ffffff18;color:white;padding:17px;border-radius:12px;font:inherit;outline:none}.contact input::placeholder,.contact textarea::placeholder{color:#ffe8df}.contact textarea{grid-column:1/-1;min-height:130px;resize:vertical}.contact .btn{grid-column:1/-1;justify-self:center;background:#fff;color:#161616;border:0}.direct{display:flex;justify-content:center;gap:25px;margin-top:30px}.success{max-width:680px;margin:20px auto;background:#fff;color:#222;padding:15px;border-radius:10px}footer{padding:55px max(6vw,24px);background:#111;color:#fff;display:grid;grid-template-columns:1fr auto 1fr;gap:40px;align-items:center}footer p{color:#888;font-size:13px}.social{display:flex;gap:22px;font-size:13px}.studio{text-align:right;font-weight:600}dialog{width:min(720px,calc(100% - 28px));border:0;border-radius:18px;padding:22px 22px 34px;background:var(--paper);box-shadow:0 20px 100px #0008}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.close{float:right;border:0;background:#fff;width:40px;height:40px;border-radius:50%;font-size:25px;cursor:pointer}.modal-visual{clear:both;height:290px;position:relative;overflow:hidden;border-radius:12px;margin-bottom:28px}.modal-title{font-size:40px;margin:10px 0}.modal-copy{color:#666;font-size:17px;line-height:1.7}.modal-tech{font-weight:600}.reveal{opacity:0;transform:translateY(25px);transition:.7s}.reveal.show{opacity:1;transform:none}
.hero-new{min-height:100vh;position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:center;padding-top:150px;overflow:hidden}.hero-new:before{content:"";position:absolute;width:42vw;height:42vw;max-width:650px;max-height:650px;border:1px solid #d8d0c4;border-radius:50%;left:-18vw;bottom:-24vw}.hero-copy{position:relative;z-index:2}.hero-copy h1{font-size:clamp(56px,7.5vw,120px);line-height:.86;letter-spacing:-.065em;margin:22px 0 30px}.hero-copy h1 em{font-family:'Playfair Display',serif;color:var(--accent);font-weight:600}.hero-card{justify-self:end;width:min(430px,100%);min-height:570px;background:#171717;border-radius:210px 210px 20px 20px;padding:22px;display:flex;flex-direction:column;color:#fff;transform:rotate(2deg);box-shadow:28px 30px 0 var(--accent)}.availability{align-self:center;background:#fff;color:#171717;border-radius:30px;padding:11px 17px;font-size:12px;font-weight:600}.availability i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#27a85e;margin-right:7px;box-shadow:0 0 0 5px #27a85e22}.hero-photo{flex:1;display:grid;place-items:center;margin:22px 0;overflow:hidden;border-radius:180px 180px 12px 12px;background:linear-gradient(145deg,#4d4945,#272421)}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-photo span{font-size:110px;font-weight:600;color:var(--accent)}.hero-card-bottom{display:flex;justify-content:space-between;align-items:end;text-transform:uppercase;font-size:11px;letter-spacing:.13em}.hero-card-bottom b{text-align:right;color:#888;font-weight:500}.hero-side{position:absolute;right:18px;top:50%;writing-mode:vertical-rl;letter-spacing:.18em;font-size:10px;color:#888}.hero-new .scroll{left:50%;transform:translateX(-50%)}
.hero-minimal{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:150px;background:var(--paper)}.hero-hello{margin:0 0 18px;color:#777;font-size:14px}.hero-minimal h1{margin:0;font-size:clamp(66px,11.5vw,184px);line-height:.88;letter-spacing:-.075em;font-weight:500}.hero-role{margin:32px 0 0;text-transform:uppercase;letter-spacing:.17em;font-size:12px;color:var(--accent);font-weight:600}.hero-intro{max-width:560px;margin:22px auto 36px;color:#666;font-size:17px;line-height:1.7}.hero-links{display:flex;gap:34px}.hero-links a{border-bottom:1px solid #999;padding-bottom:7px;font-size:14px;font-weight:600}.hero-links span{margin-left:8px;color:var(--accent)}.hero-minimal .scroll{bottom:28px;text-transform:uppercase;letter-spacing:.15em;font-size:9px}
.project-remote{display:block;color:#fff}.remote-visual{padding:0;background:#252525}.remote-visual:after{display:none}.remote-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.remote-visual>span{position:absolute;z-index:2;top:16px;left:16px;padding:7px 10px;border-radius:999px;background:#111c;color:#fff;font-size:11px}.project-remote:hover .remote-visual img{transform:scale(1.035)}
@media(max-width:760px){.section{padding:85px 22px}.nav{height:62px;padding:0 17px;grid-template-columns:1fr 66px 1fr;font-size:13px}.avatar{width:70px;height:70px;font-size:18px;border-width:5px}.hero-minimal{min-height:100svh;padding-top:125px}.hero-minimal h1{font-size:clamp(58px,20vw,86px);line-height:.9}.hero-role{line-height:1.8;max-width:300px}.hero-intro{font-size:15px;max-width:330px}.hero-links{flex-direction:column;gap:18px}.hero-minimal .scroll{display:none}.actions{flex-direction:column;width:100%;max-width:300px}.about,.resume{grid-template-columns:1fr;gap:70px}.portrait{max-width:360px;margin:auto;box-shadow:14px 14px 0 var(--accent)}.facts{gap:18px;justify-content:space-between}.grid{grid-template-columns:1fr}.project:nth-child(even){margin-top:0}.process>div{grid-template-columns:1fr 1fr}.sectionhead{align-items:start;gap:25px;flex-direction:column}.contact h2{font-size:48px}.contact form{grid-template-columns:1fr}.contact textarea{grid-column:1}.contact .btn{grid-column:1}.direct{flex-direction:column;gap:8px}footer{grid-template-columns:1fr;text-align:center}.social{justify-content:center;flex-wrap:wrap}.studio{text-align:center}.modal-visual{height:220px}}
