:root{--background:#0c1b24;--surface:#102631;--surface-strong:#15313f;--text-primary:#f6f7f5;--text-secondary:#aebbc0;--accent:#f0745d;--border:#dae8ea29;--container:1120px;color:var(--text-primary);background:var(--background);font-synthesis:none;font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);margin:0}a{color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}.container{width:min(calc(100% - 3rem),var(--container));margin:auto}.section{padding:6rem 0;scroll-margin-top:4.5rem}h1,h2,h3,p{margin-top:0}h2{letter-spacing:-.06em;font-size:clamp(2rem,5vw,3.4rem);line-height:1.12}p{color:var(--text-secondary);line-height:1.75}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--accent);letter-spacing:.15em;text-transform:uppercase;font-size:.75rem;font-weight:800}.site-header{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);background:#0c1b24e6;position:sticky;top:0}.navbar{justify-content:space-between;align-items:center;min-height:4.7rem;display:flex}.brand{letter-spacing:-.05em;font-size:1rem;font-weight:800;text-decoration:none}.brand span{color:var(--accent);margin-left:.23rem}.nav-links{display:none}.nav-links.open{background:var(--surface);border-bottom:1px solid var(--border);flex-direction:column;gap:1rem;padding:1.2rem 1.5rem;display:flex;position:absolute;top:4.7rem;left:0;right:0}.nav-links a{color:var(--text-secondary);width:max-content;font-size:.86rem;font-weight:700;text-decoration:none}.nav-links a:hover{color:var(--text-primary)}.menu-button{background:0 0;border:0;gap:4px;padding:.5rem;display:grid}.menu-button i{background:var(--text-primary);width:21px;height:2px;display:block}.hero{align-items:center;min-height:calc(100vh - 4.7rem);padding-top:4rem;padding-bottom:4rem;display:grid;overflow:hidden}.hero-grid{align-items:center;gap:3rem;display:grid}.hero h1{letter-spacing:-.095em;margin-bottom:0;font-size:clamp(3.5rem,15vw,7.5rem);line-height:.91}.hero h1 span{color:var(--accent)}.hero-role{color:var(--text-primary);letter-spacing:-.05em;margin:1.4rem 0;font-size:clamp(1.35rem,4.5vw,2.3rem);font-weight:700}.hero-description{max-width:35rem;font-size:1rem}.hero-actions{flex-wrap:wrap;gap:.8rem;margin:2rem 0 1.6rem;display:flex}.button{border:1px solid var(--accent);border-radius:0;padding:.85rem 1.1rem;font-size:.83rem;font-weight:800;text-decoration:none;transition:transform .2s,background-color .2s}.button:hover{transform:translateY(-3px)}.button-primary{color:#fff;background:var(--accent)}.button-secondary{color:var(--text-primary);background:0 0}.email-link{color:var(--text-primary);border-bottom:1px solid var(--accent);gap:.55rem;padding-bottom:.25rem;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.email-link span{color:var(--accent)}.portrait-placeholder{aspect-ratio:1;border:1px solid var(--border);background:radial-gradient(circle at 70% 25%,#f0745d33,transparent 35%),var(--surface);justify-self:center;width:min(86vw,390px);position:relative;overflow:hidden}.portrait-ring{aspect-ratio:1;border:clamp(18px,4vw,28px) solid var(--accent);opacity:.9;border-radius:50%;width:73%;position:absolute;top:13%;left:14%}.portrait-line{background:var(--accent);opacity:.7;width:42%;height:1px;position:absolute}.portrait-line-one{top:23%;left:-10%;transform:rotate(-30deg)}.portrait-line-two{bottom:25%;right:-11%;transform:rotate(-30deg)}.portrait-content{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.portrait-content span{color:var(--accent);letter-spacing:-.2em;font-size:4.5rem;font-weight:800}.portrait-content p{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;line-height:1.7}.tech-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#09161e;overflow:auto}.tech-list{color:#7e9097;justify-content:space-between;gap:2.3rem;min-width:max-content;padding:1.2rem 0;font-size:.83rem;font-weight:800;display:flex}.about{background:var(--surface)}.about-grid{gap:3.5rem;display:grid}.area-list{gap:1rem;display:grid}.area{border-left:1px solid var(--accent);grid-template-columns:2.7rem 1fr;gap:1rem;padding:.8rem 0;display:grid}.area>span{color:var(--accent);text-align:center;font-size:.77rem;font-weight:800}.area h3{margin-bottom:.4rem;font-size:1rem}.area p{margin:0;font-size:.86rem}.about-copy p{max-width:35rem}.section-heading{max-width:43rem;margin-bottom:3.5rem}.section-heading h2{margin-bottom:1rem}.project-list{gap:5rem;display:grid}.project{align-items:center;gap:2.3rem;display:grid}.project-index{color:var(--accent);letter-spacing:.12em;font-weight:800}.project h3{letter-spacing:-.06em;margin-bottom:1rem;font-size:clamp(1.35rem,4vw,2.1rem)}.project-details>p:not(.project-index){font-size:.94rem}.project ul{margin:1.2rem 0;padding:0;list-style:none}.project li{color:var(--text-secondary);padding-left:1.15rem;font-size:.82rem;line-height:1.8;position:relative}.project li:before{content:"+";color:var(--accent);font-weight:800;position:absolute;left:0}.tags{flex-wrap:wrap;gap:.45rem;margin:1.5rem 0;display:flex}.tags span{color:#c6d1d5;border:1px solid var(--border);border-radius:999px;padding:.3rem .55rem;font-size:.68rem;font-weight:700}.text-button{color:var(--text-primary);border:0;border-bottom:1px solid var(--accent);background:0 0;padding:0 0 .35rem;font-size:.85rem;font-weight:800}.text-button span{color:var(--accent);margin-left:.5rem;font-size:.7rem}.project-visual{background:var(--surface);border:1px solid var(--border);place-items:center;min-height:260px;display:grid;position:relative;overflow:hidden}.project-visual:before{content:"";border:1px solid #f0745d59;position:absolute;inset:15px;transform:translate(9px,9px)}.visual-window{z-index:1;border:1px solid var(--border);background:#0a171f;width:75%;min-height:120px;padding:13px;box-shadow:15px 15px #0000001f}.visual-window i{background:var(--accent);opacity:.7;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.visual-window p{text-align:center;color:#61747b;margin:2.4rem 0 .7rem;font-size:.73rem}.code-mark{color:#f0745d59;font-size:2.5rem;font-weight:800;position:absolute;top:13%;right:10%}.project-visual small{color:#8c9fa5;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;position:absolute;bottom:1.3rem}.next-project{border:1px dashed var(--border);align-items:center;gap:1.5rem;min-height:140px;padding:2rem;display:flex}.next-project>span{color:var(--accent);font-weight:800}.next-project h3{margin-bottom:.4rem}.next-project p{margin:0;font-size:.85rem}.workflow{text-align:center;background:var(--surface)}.workflow h2{margin-bottom:2rem}.workflow-list{flex-wrap:wrap;justify-content:center;align-items:center;gap:.9rem;display:flex}.workflow-list span{color:var(--text-primary);font-size:.88rem;font-weight:700}.workflow-list b{color:var(--accent);margin-left:.9rem}.workflow-note{margin:2rem 0 0;font-size:.82rem}.contact-grid{gap:3.5rem;display:grid}.contact h2{max-width:10ch;font-size:clamp(2.7rem,9vw,4.6rem)}.contact form{gap:1.1rem;display:grid}form label{color:var(--text-secondary);gap:.45rem;font-size:.78rem;font-weight:700;display:grid}input,textarea{width:100%;color:var(--text-primary);border:0;border-bottom:1px solid var(--border);resize:vertical;background:0 0;outline:0;padding:.6rem 0}input:focus,textarea:focus{border-color:var(--accent)}.contact form .button{justify-self:start;margin-top:.5rem}.form-note{margin:0;font-size:.75rem}.footer{border-top:1px solid var(--border);background:#09161e;padding:2.3rem 0}.footer .container{flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;display:flex}.footer p{margin:0;font-size:.75rem}.footer>a:last-child{color:var(--text-secondary);margin-left:auto;font-size:.76rem;font-weight:800}[data-reveal]{opacity:0;transition:opacity .55s,transform .55s;transform:translateY(18px)}[data-reveal].is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}}@media (width>=720px){.section{padding:7.5rem 0}.menu-button{display:none}.nav-links{gap:1.65rem;display:flex}.nav-links a{position:relative}.nav-links a:after{content:"";background:var(--accent);width:0;height:1px;transition:width .2s;position:absolute;bottom:-.45rem;left:0}.nav-links a:hover:after{width:100%}.hero-grid{grid-template-columns:1.08fr .92fr}.hero{min-height:620px}.about-grid{grid-template-columns:.9fr 1.1fr;align-items:center}.project{grid-template-columns:1fr 1fr;gap:5rem}.project.reverse .project-details{order:2}.project.reverse .project-visual{order:1}.contact-grid{grid-template-columns:1fr 1fr;align-items:start}.contact form{padding-top:.5rem}.tech-list{gap:1rem}}
