:root{--bg: #f4efe7;--surface: rgba(255, 252, 247, .72);--surface-strong: #151311;--surface-dark: #1f1b18;--text: #171412;--muted: #5f5851;--line: rgba(23, 20, 18, .08);--line-strong: rgba(23, 20, 18, .14);--accent: #cc6b3c;--accent-soft: #f3ba87;--accent-deep: #174b46;--cream: #f7f3ea;--shadow-soft: 0 18px 40px rgba(23, 20, 18, .08);--shadow-strong: 0 28px 80px rgba(23, 20, 18, .14);--font-sans: "Sora", sans-serif;--font-mono: "IBM Plex Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;width:100%;overflow-x:hidden}body{margin:0;min-width:320px;min-height:100vh;width:100%;max-width:100%;background:radial-gradient(circle at top right,rgba(23,75,70,.08),transparent 28rem),radial-gradient(circle at bottom left,rgba(204,107,60,.12),transparent 30rem),var(--bg);color:var(--text);font-family:var(--font-sans);line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(23,20,18,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(23,20,18,.02) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),transparent 72%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),transparent 72%);pointer-events:none;z-index:-4}a{color:inherit;text-decoration:none}p,h1,h2,h3{margin:0}ul{margin:0;padding:0}.page-shell{position:relative;width:100%;max-width:100%;padding:6.6rem clamp(1rem,2vw,2rem) 2.5rem}.ambient{position:fixed;border-radius:999px;filter:blur(90px);pointer-events:none;z-index:-3;animation:drift 18s ease-in-out infinite}.ambient-one{top:6rem;right:-8rem;width:22rem;height:22rem;background:#cc6b3c1f}.ambient-two{bottom:-5rem;left:-5rem;width:26rem;height:26rem;background:#174b461f;animation-duration:22s}.site-header,.section,.recruiter-cta,.site-footer{width:min(1200px,100%);margin:0 auto}.site-header{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;justify-content:space-between;gap:1rem;width:min(1200px,calc(100% - 2rem));padding:.9rem 1.1rem;background:#f4efe7c2;border:1px solid rgba(255,255,255,.45);border-radius:999px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-soft)}.brand{display:flex;align-items:center;gap:.75rem;min-width:0}.brand-mark{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;background:var(--surface-strong);color:var(--cream);font-family:var(--font-mono);font-size:.82rem;letter-spacing:.12em}.brand-name{font-weight:700;letter-spacing:-.04em}.site-nav{display:flex;align-items:center;gap:1.2rem}.site-nav a{color:var(--muted);font-size:.96rem;transition:color .18s ease}.site-nav a:hover,.site-nav a:focus-visible{color:var(--text)}.site-main{display:block}.recruiter-cta{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:clamp(1.4rem,3vw,2.4rem);padding:1rem 1.15rem;border:1px solid var(--line);border-radius:26px;background:#ffffff94;box-shadow:var(--shadow-soft)}.recruiter-cta-copy{max-width:42rem;color:var(--muted);font-size:1rem}.recruiter-cta .button{flex:0 0 auto}.section{padding:clamp(4rem,8vw,7rem) 0;scroll-margin-top:7rem}.section:not(.hero){content-visibility:auto;contain-intrinsic-size:900px}.section-tight{padding-top:1rem}.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:clamp(1.5rem,4vw,3rem);align-items:end;min-height:calc(100vh - 8rem)}.reveal{animation:fade-up .9s cubic-bezier(.22,1,.36,1) both}.hero-copy{display:grid;gap:1.4rem}.eyebrow,.card-label,.project-badge,.principle-number{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase}.eyebrow{color:var(--accent-deep)}.hero h1{max-width:11ch;font-size:clamp(3.8rem,9vw,7.2rem);line-height:.94;letter-spacing:-.08em}.lead{max-width:42rem;color:var(--muted);font-size:clamp(1.1rem,2vw,1.34rem)}.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:.85rem}.button,.contact-link{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;padding:.85rem 1.2rem;border-radius:999px;font-weight:600;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.button:hover,.button:focus-visible,.contact-link:hover,.contact-link:focus-visible{transform:translateY(-2px)}.button-primary,.contact-link-primary{background:var(--surface-strong);color:var(--cream);box-shadow:var(--shadow-soft)}.button-secondary,.contact-link{background:#fff9;border:1px solid var(--line)}.hero-note{color:var(--text);font-size:.96rem}.hero-panel,.highlight-card,.skill-card,.project-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.42);background:linear-gradient(180deg,#ffffffa8,#ffffff75);box-shadow:var(--shadow-strong)}.hero-panel{border-radius:34px;padding:1.6rem;background:#060606;border:1px solid rgba(255,255,255,.12)}.hero-panel-beams{position:absolute;inset:0}.hero-panel-fallback{position:absolute;inset:0;background:radial-gradient(circle at 22% 24%,rgba(243,186,135,.22),transparent 26%),radial-gradient(circle at 78% 72%,rgba(255,255,255,.1),transparent 28%),linear-gradient(180deg,#080808eb,#060606fa)}.hero-panel .eyebrow,.hero-panel .card-label,.hero-panel .metric-value,.hero-panel .panel-top h2,.hero-panel .status-item p:first-of-type{position:relative;z-index:1}.hero-panel .eyebrow{color:#f3ba87eb}.hero-panel .panel-top h2,.hero-panel .metric-value,.hero-panel .status-item p,.hero-panel .card-label{color:var(--cream)}.hero-panel .panel-copy,.hero-panel .status-item p:last-child{color:#f7f3eac7}.hero-panel:after{content:"";position:absolute;right:-5rem;bottom:-5rem;width:14rem;height:14rem;border-radius:999px;background:radial-gradient(circle,rgba(243,186,135,.55),transparent 70%)}.panel-top{position:relative;display:grid;gap:.8rem;z-index:1}.panel-top h2{max-width:14ch;font-size:clamp(1.9rem,3vw,2.7rem);line-height:1;letter-spacing:-.06em}.panel-copy{max-width:28rem;color:var(--muted)}.metric-grid,.status-list{position:relative;z-index:1}.metric-grid{display:grid;gap:.85rem;margin-top:1.6rem}.metric-card,.status-item{padding:1rem;border-radius:22px;background:#ffffff85;border:1px solid rgba(23,20,18,.08)}.hero-panel .metric-card,.hero-panel .status-item{background:#1010107a;border-color:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.metric-value{margin-top:.4rem;font-size:1.02rem;font-weight:600}.status-list{display:grid;gap:.75rem;margin-top:1rem}.status-item p:last-child{margin-top:.4rem;color:var(--muted)}.highlights-grid,.skill-grid,.project-grid,.principles-grid,.story-layout,.contact-card,.section-heading{display:grid;gap:1rem}.highlights-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.highlight-card{min-height:17rem;padding:1.5rem;border-radius:30px;animation:fade-up .9s cubic-bezier(.22,1,.36,1) both}.highlight-card h3,.skill-card h3,.project-card h3,.principle-card h3,.contact-panel h3{font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.08;letter-spacing:-.05em}.highlight-card p,.skill-card p,.project-summary,.project-detail,.project-outcome,.principle-card p,.section-description,.story-copy p,.contact-copy p,.contact-panel p{color:var(--muted)}.highlight-card-2{background:linear-gradient(180deg,#f8f1e9eb,#e8f4f1e6)}.highlight-card-3{background:linear-gradient(180deg,#ffffffc7,#fcf0e5db)}.section-heading{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:end;margin-bottom:2rem}.section-heading h2{max-width:12ch;font-size:clamp(2.4rem,5vw,4.5rem);line-height:.98;letter-spacing:-.07em}.section-description{max-width:38rem;font-size:1.03rem}.story-layout{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.story-copy{display:grid;gap:1rem;padding:1.7rem;border-radius:34px;background:#ffffff7a;border:1px solid var(--line);box-shadow:var(--shadow-soft)}.story-copy p{font-size:1.02rem}.story-quote{display:grid;align-content:space-between;gap:2rem;padding:1.8rem;border-radius:34px;background:linear-gradient(135deg,var(--surface-strong),#102927);box-shadow:var(--shadow-strong)}.story-quote .quote-text{color:var(--cream);font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.08;letter-spacing:-.05em}.story-quote .quote-meta{color:#f7f3eacc;font-size:.95rem}.projects-intro-quote{width:min(720px,100%);margin-bottom:1.4rem;padding:1.4rem 1.5rem;border-radius:28px;background:linear-gradient(135deg,var(--surface-strong),#102927);box-shadow:var(--shadow-strong)}.projects-intro-quote .quote-text{color:var(--cream);font-size:clamp(1.55rem,2.7vw,2.3rem);line-height:1.08;letter-spacing:-.05em}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-card,.project-card,.principle-card{padding:1.5rem;border-radius:30px}.skill-card{display:grid;gap:1rem}.skill-list,.project-stack-list{display:flex;flex-wrap:wrap;gap:.7rem;list-style:none}.skill-chip,.project-stack-chip{padding:.55rem .8rem;border-radius:999px;background:#ffffff94;border:1px solid var(--line);font-size:.92rem}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.project-card{display:grid;gap:1rem;min-height:27rem;animation:fade-up .9s cubic-bezier(.22,1,.36,1) both}.project-card:nth-child(2){transform:translateY(1rem)}.project-badge{display:inline-flex;width:fit-content;padding:.45rem .7rem;border-radius:999px;background:#174b4614;color:var(--accent-deep)}.project-gallery,.project-gallery-strip{display:grid;gap:.75rem}.project-gallery-main,.project-gallery-thumb{overflow:hidden;border-radius:20px;border:1px solid var(--line);background:#ffffffb8}.project-gallery-main a,.project-gallery-thumb a{display:block;width:100%;height:100%}.project-gallery-main{aspect-ratio:16 / 10}.project-gallery-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.project-gallery-thumb{aspect-ratio:16 / 10}.project-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s ease}.project-card:hover .project-gallery img{transform:scale(1.03)}.project-detail{margin-top:-.3rem}.project-outcome{margin-top:auto;padding-top:1rem;border-top:1px solid var(--line-strong)}.project-links{display:flex;flex-wrap:wrap;gap:.75rem}.project-link-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.8rem 1rem;border-radius:999px;background:var(--surface-strong);color:var(--cream);font-weight:600;box-shadow:var(--shadow-soft);transition:transform .18s ease,box-shadow .18s ease}.project-link-button:hover,.project-link-button:focus-visible{transform:translateY(-2px)}.principles-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.principle-card{background:linear-gradient(160deg,#181715f2,#122826f2);color:var(--cream);box-shadow:var(--shadow-strong)}.principle-number{color:#f7f3eab8}.principle-card p:last-child{margin-top:.8rem;color:#f7f3eacc}.contact-card{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);padding:clamp(1.8rem,4vw,3rem);border-radius:40px;background:linear-gradient(135deg,#171412,#102926);box-shadow:var(--shadow-strong);overflow:hidden}.contact-card:after{content:"";position:absolute;top:-4rem;right:-4rem;width:14rem;height:14rem;border-radius:999px;background:radial-gradient(circle,rgba(243,186,135,.35),transparent 72%)}.contact-copy,.contact-panel{position:relative;z-index:1}.contact-copy{display:grid;gap:1rem}.contact-copy .eyebrow,.contact-panel .card-label{color:#f7f3eab8}.contact-copy h2{max-width:12ch;color:var(--cream);font-size:clamp(2.4rem,5vw,4.4rem);line-height:.96;letter-spacing:-.07em}.contact-copy p{max-width:34rem;color:#f7f3eacc}.contact-about-title{color:var(--cream);font-size:clamp(1.5rem,3vw,2rem);line-height:1.04;letter-spacing:-.05em}.contact-about-text{margin-top:-.25rem}.contact-panel{align-self:end;padding:1.5rem;border-radius:30px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.about-profile-image{width:150px;aspect-ratio:1;margin-bottom:1rem;overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.18)}.about-profile-image img{width:100%;height:100%;object-fit:cover;display:block}.contact-profile-image{width:144px;margin:.4rem 0 .2rem}.contact-panel h3{margin-top:.45rem;color:var(--cream)}.contact-panel p:last-child{margin-top:.8rem;color:#f7f3eab8}.site-footer{display:flex;justify-content:space-between;gap:1rem;padding:0 0 1rem;color:var(--muted);font-size:.92rem}.site-footer p:last-child{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.highlight-card,.skill-card,.project-card,.principle-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.highlight-card:hover,.skill-card:hover,.project-card:hover,.principle-card:hover{transform:translateY(-4px);border-color:#17141224}@keyframes fade-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes drift{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,16px,0)}}@media(max-width:1080px){.hero,.section-heading,.story-layout,.contact-card{grid-template-columns:1fr}.hero{min-height:auto;padding-top:1rem}.highlights-grid,.project-grid,.principles-grid{grid-template-columns:1fr}.project-card:nth-child(2){transform:none}}@media(max-width:760px){html,body{overscroll-behavior-x:none}body{touch-action:pan-y pinch-zoom}.page-shell{padding:5.65rem .8rem 2rem}.site-header{top:.75rem;width:calc(100% - 1.6rem);padding:.75rem .9rem;border-radius:22px;gap:.7rem}.brand{gap:.45rem;min-width:0}.brand-mark{width:2rem;height:2rem;font-size:.7rem}.brand-name{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-nav{display:flex;gap:.6rem;flex-wrap:nowrap;justify-content:flex-end}.site-nav a{font-size:.78rem;white-space:nowrap}.section{padding:3.25rem 0}.recruiter-cta{display:grid;gap:.85rem;padding:1rem;border-radius:22px}.recruiter-cta .button{width:100%}.section-tight{padding-top:.75rem}.hero{gap:1.25rem;padding-top:1rem}.hero-copy{gap:1rem}.hero h1,.section-heading h2,.contact-copy h2{max-width:none}.hero h1{font-size:clamp(3rem,15vw,4.15rem);line-height:.96;letter-spacing:-.065em}.lead{font-size:1rem}.hero-note{font-size:.92rem}.hero-actions,.contact-actions,.project-links{display:grid;grid-template-columns:1fr}.button,.contact-link,.project-link-button{width:100%;min-height:3.05rem}.hero-panel,.highlight-card,.skill-card,.project-card,.story-copy,.story-quote,.contact-card,.contact-panel{padding:1.2rem;border-radius:24px}.metric-card,.status-item{border-radius:18px;padding:.95rem}.section-heading{gap:.75rem;margin-bottom:1.5rem}.projects-intro-quote{margin-bottom:1rem;padding:1.1rem 1.2rem;border-radius:22px}.section-heading h2{font-size:clamp(2.05rem,11vw,3rem);line-height:1}.section-description,.story-copy p,.contact-copy p{font-size:.97rem}.skill-grid{grid-template-columns:1fr}.project-gallery-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.project-gallery-main,.project-gallery-thumb{aspect-ratio:4 / 3}.project-gallery-thumb:last-child{grid-column:1 / -1}.project-summary,.project-detail{font-size:.97rem}.project-stack-list,.skill-list{gap:.55rem}.project-stack-chip,.skill-chip{font-size:.86rem;padding:.5rem .72rem}.story-quote .quote-text{font-size:1.45rem}.contact-copy h2{font-size:clamp(2.1rem,11vw,3rem)}.contact-about-title{font-size:1.35rem}.about-profile-image{width:120px;margin:0 auto 1rem}.contact-profile-image{width:124px;margin:.2rem auto .35rem}.contact-panel{text-align:center}.site-footer{flex-direction:column;gap:.45rem;font-size:.86rem}}@media(max-width:480px){.page-shell{padding:5.35rem .7rem 2rem}.site-header{width:calc(100% - 1.4rem);padding:.7rem .85rem;gap:.55rem}.brand-mark{width:1.9rem;height:1.9rem}.brand-name{font-size:.78rem}.site-nav{gap:.45rem}.site-nav a{font-size:.72rem}.hero h1{font-size:2.8rem}.panel-top h2,.contact-copy h2{font-size:1.95rem}.hero-panel,.highlight-card,.skill-card,.project-card,.story-copy,.story-quote,.contact-card,.contact-panel{padding:1.05rem;border-radius:22px}.about-profile-image{width:110px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
