/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:#17343a;--cream:#f4f0e6;--paper:#fffdf7;--coral:#ee715f;--blue:#86b9d7;--yellow:#e8bf58}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--font-sans),sans-serif;margin:0}a{color:inherit;text-decoration:none}.nav{z-index:5;border-bottom:1px solid #17343a2e;justify-content:space-between;align-items:center;height:92px;padding:0 5vw;display:flex;position:relative}.brand{letter-spacing:-2px;font-size:24px;font-weight:800}.brand span{color:var(--coral);margin-left:3px;font-size:16px}.navLinks{gap:36px;font-size:14px;display:flex}.navLinks a:hover{opacity:.55}.contactPill{background:var(--ink);color:#fff;border-radius:99px;padding:13px 20px;font-size:14px}.contactPill span{margin-left:14px}.hero{min-height:calc(100vh - 92px);padding:10vh 8vw 8vh;position:relative;overflow:hidden}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.2em;font-size:11px;font-weight:700}.eyebrow{align-items:center;gap:10px;display:flex}.eyebrow span{background:var(--coral);width:24px;height:1px}h1,h2,h3,p{margin-top:0}.hero h1{letter-spacing:-.065em;margin:7vh 0;font-size:clamp(58px,8.4vw,132px);font-weight:600;line-height:.86}.hero h1 em,.sectionIntro i,.about i,footer i{font-family:var(--font-serif),serif;color:var(--coral);font-weight:400}.heroBottom{justify-content:space-between;align-items:end;margin-left:28vw;display:flex}.heroBottom>p{max-width:520px;font-size:17px;line-height:1.6}.scrollLink{align-items:center;gap:10px;font-size:13px;display:flex}.scrollLink span{border:1px solid;border-radius:50%;padding:10px 13px}.orbit{opacity:.35;position:absolute}.orbitOne{color:var(--coral);font-size:58px;top:13vh;right:7vw}.orbitTwo{color:var(--blue);font-size:32px;bottom:5vh;left:3vw}.work{background:var(--paper);padding:120px 5vw}.sectionIntro{grid-template-columns:1fr 2fr auto;align-items:start;margin-bottom:70px;display:grid}.sectionIntro h2,.about h2,.resumeHeading h2{letter-spacing:-.05em;font-size:clamp(42px,6vw,82px);font-weight:600;line-height:.95}.count{font-size:12px}.projectGrid{grid-template-columns:repeat(12,1fr);gap:60px 28px;display:grid}.project:first-child{grid-column:1/8}.project:nth-child(2){grid-column:8/13;margin-top:140px}.project:nth-child(3){grid-column:3/10}.projectVisual{place-items:center;height:430px;transition:transform .35s;display:grid;position:relative;overflow:hidden}.project:hover .projectVisual{transform:translateY(-8px)}.projectVisual.coral{background:var(--coral)}.projectVisual.blue{background:var(--blue)}.projectVisual.yellow{background:var(--yellow)}.projectNumber{font-size:11px;font-weight:700;position:absolute;top:20px;left:22px}.projectArrow{background:#fffc;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:18px;right:20px}.mockWindow{background:var(--paper);width:68%;height:58%;padding:14px;box-shadow:0 24px 50px #14231e2e}.mockWindow span{background:var(--ink);opacity:.35;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.mockWindow strong{font-family:var(--font-serif);margin:18% 8%;font-size:clamp(28px,4vw,56px);font-weight:400;display:block}.projectCopy{padding-top:22px}.projectCopy p{text-transform:uppercase;letter-spacing:.16em;font-size:10px}.projectCopy h3{margin-bottom:10px;font-size:28px}.projectCopy>span{opacity:.7;max-width:460px;font-size:14px;line-height:1.5;display:block}.about{background:var(--ink);color:var(--cream);padding:130px 8vw}.about .kicker{color:var(--coral);margin-bottom:70px}.aboutGrid{grid-template-columns:1.1fr 1fr;gap:10vw;display:grid}.about h2 i{color:var(--blue)}.aboutCopy>p{opacity:.8;font-size:17px;line-height:1.7}.aboutCopy>p:first-child{color:#fff;opacity:1;font-size:22px}.skills{flex-wrap:wrap;gap:9px;margin-top:40px;display:flex}.skills span{border:1px solid #ffffff4d;border-radius:99px;padding:9px 14px;font-size:11px}.resume{background:#d9e2dc;padding:120px 8vw}.resumeHeading{justify-content:space-between;align-items:end;margin-bottom:60px;display:flex}.resumeHeading h2{margin:0}.resumeHeading a{border-bottom:1px solid;font-size:13px}.resumeSheet{background:var(--paper);grid-template-columns:.8fr 1.4fr 1fr;gap:6vw;padding:5vw;display:grid;box-shadow:0 20px 60px #17343a14}.resumeName strong{font-family:var(--font-serif);font-size:36px;font-weight:400;display:block}.resumeName span,.resumeColumn>p,.resumeLabel{text-transform:uppercase;letter-spacing:.15em;font-size:10px}.resumeColumn article{border-top:1px solid #17343a33;padding:18px 0 26px}.resumeColumn time{opacity:.6;margin-bottom:10px;font-size:10px;display:block}.resumeColumn strong{margin-bottom:6px;display:block}.resumeColumn span{opacity:.7;font-size:12px;line-height:1.6}footer{background:var(--coral);color:var(--ink);padding:110px 8vw 35px}footer>p{text-transform:uppercase;letter-spacing:.18em;font-size:11px}footer h2{letter-spacing:-.05em;margin:45px 0;font-size:clamp(50px,7vw,100px);line-height:.9}footer h2 i{color:var(--paper)}.footerLinks{gap:14px;display:flex}.footerLinks a{background:var(--paper);border-radius:99px;padding:14px 20px;font-size:13px}.footerBottom{text-transform:uppercase;letter-spacing:.12em;border-top:1px solid #17343a4d;justify-content:space-between;margin-top:90px;padding-top:24px;font-size:10px;display:flex}.projectGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:72px 28px}.project:nth-child(n){grid-column:auto}.project:nth-child(2n){margin-top:110px}.projectVisual.green{background:#9dbba5}.projectVisual.lavender{background:#b8afd3}.projectVisual.rose{background:#d99a9e}@media (width<=760px){.nav{height:74px;padding:0 20px}.navLinks{display:none}.hero{min-height:760px;padding:70px 22px}.hero h1{font-size:16vw;line-height:.9}.heroBottom{margin:80px 0 0;display:block}.scrollLink{margin-top:35px}.work,.about,.resume,footer{padding:80px 22px}.sectionIntro{grid-template-columns:1fr}.sectionIntro h2{margin-top:30px}.count{display:none}.projectGrid{display:block}.project{display:block;margin:0 0 65px!important}.projectVisual{height:300px}.aboutGrid{grid-template-columns:1fr}.aboutCopy{margin-top:35px}.resumeHeading{display:block}.resumeHeading a{margin-top:20px;display:inline-block}.resumeSheet{grid-template-columns:1fr;gap:38px;padding:32px}.footerLinks{flex-direction:column;align-items:flex-start}.footerBottom{align-items:end;gap:25px}.orbit{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.projectVisual{transition:none}}.workTabs{background:var(--cream);border-radius:99px;gap:6px;margin:0 0 38px;padding:6px;display:inline-flex}.workTabs button{color:var(--ink);font:600 13px var(--font-sans),sans-serif;cursor:pointer;background:0 0;border:0;border-radius:99px;padding:12px 18px;transition:background .2s,color .2s}.workTabs button span{opacity:.55;margin-left:8px;font-size:9px}.workTabs button.active{background:var(--ink);color:var(--paper)}.workTabs button:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.projectGrid.bentoGrid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:155px;gap:18px;display:grid}.bentoCard{background:var(--cream);border-radius:26px;min-width:0;position:relative;overflow:hidden}.bentoCard:nth-child(n){grid-column:auto;margin:0}.bentoCard .projectVisual{border-radius:inherit;height:auto;position:absolute;inset:0}.bentoCard .projectCopy{z-index:2;pointer-events:none;padding:0;position:absolute;bottom:20px;left:22px;right:22px}.bentoCard .projectCopy p{margin-bottom:6px}.bentoCard .projectCopy>span{display:none}.bentoCard .mockWindow{opacity:.28;transform:translate(20%,-12%)}.bentoCard .projectVisual:after{content:"";background:linear-gradient(#0000,#fffdf7f2);position:absolute;inset:38% 0 0}.bento-2,.bento-3{grid-row:span 2;grid-column:span 5!important}.singleProject .bentoCard .projectCopy>span{max-width:520px;margin-top:14px;display:block}.singleProject .bentoCard .mockWindow{width:42%}.emptyProjects{border-top:1px solid #17343a38;border-bottom:1px solid #17343a38;grid-column:1/-1;place-items:center;min-height:220px;display:grid}.emptyProjects p{font-family:var(--font-serif),serif;color:#17343a9e;font-size:clamp(26px,3vw,42px);font-style:italic}@media (width<=760px){.workTabs{width:100%;display:flex}.workTabs button{flex:1;padding:11px 6px;font-size:11px}.workTabs button span{display:none}.projectGrid.bentoGrid{grid-template-columns:1fr;grid-auto-rows:280px;gap:14px;display:grid}.bentoCard,.singleProject .bentoCard{grid-row:span 1;display:block;grid-column:1!important;margin:0!important}.bentoCard .projectVisual{height:auto}.bentoCard .projectCopy h3{font-size:26px}.singleProject .bentoCard .mockWindow{width:68%}.emptyProjects{min-height:180px}}.projectCover{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .5s;position:absolute;inset:0}.bentoCard:hover .projectCover{transform:scale(1.025)}.bentoCard .projectNumber,.bentoCard .projectArrow{z-index:3}.bentoCard .projectNumber{background:#fffdf7e0;border-radius:99px;padding:7px 10px}.bentoCard .projectCopy p,.bentoCard .projectCopy h3{z-index:3;position:relative}.bentoCard{border:2px solid #17343a47;transition:transform .3s,box-shadow .3s,border-color .3s;box-shadow:0 8px 24px #17343a1f}.bentoCard .projectCopy{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf7f0;border:1px solid #17343a29;border-radius:16px;padding:14px 16px;box-shadow:0 8px 22px #17343a24}.projectGrid.bentoGrid{background:#e3f4ef;border:2px solid #17343a38;border-radius:28px;grid-template-rows:repeat(6,110px);grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:110px;gap:14px;padding:18px;box-shadow:0 20px 55px #17343a21}.bentoCard{box-shadow:none;border:1px solid #17343a3d;border-radius:17px}.bentoCard:hover{transform:translateY(-2px);box-shadow:0 12px 28px #17343a2e}.bentoCard .projectCopy{border-radius:12px;max-width:calc(100% - 44px);padding:11px 14px;bottom:16px;right:auto}.bentoCard .projectCopy h3{font-size:clamp(18px,1.9vw,28px)}.bentoCard .projectCopy p{margin-bottom:4px;font-size:8px}@media (width<=760px){.projectGrid.bentoGrid{border-radius:20px;grid-template-rows:none;grid-template-columns:1fr;grid-auto-rows:270px;gap:10px;padding:10px}.bentoCard,.singleProject .bentoCard,.bento-1,.bento-2,.bento-3,.bento-4,.bento-5{grid-area:auto/1!important}.bentoCard .projectCopy{max-width:calc(100% - 28px);bottom:14px;left:14px}.singleProject .bentoCard{min-height:300px}}.resumeName a{border-bottom:1px solid #17343a59;margin-top:22px;font-size:11px;display:inline-block}.resumeEmbed{background:var(--paper);border:1px solid #17343a33;margin-top:24px;box-shadow:0 20px 60px #17343a14}.resumeEmbedBar{text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid #17343a26;justify-content:space-between;align-items:center;min-height:58px;padding:0 22px;font-size:12px;display:flex}.resumeEmbedBar a{border-bottom:1px solid;font-size:11px}.resumeEmbed object{border:0;width:100%;height:780px;display:block}.resumeColumn article:last-of-type{padding-bottom:16px}@media (width<=760px){.resumeEmbed object{height:520px}.resumeEmbedBar{flex-direction:column;justify-content:center;align-items:flex-start;gap:7px}.resumeName a{margin-top:14px}}.heroBottom{margin-left:0}.heroBottom>p{text-align:left}.aboutCopy>p,.aboutCopy>p:first-child{color:var(--cream);opacity:.9;font-size:19px;font-weight:400;line-height:1.75}.aboutCopy>p+p{margin-top:28px}.resumeName>span{margin-top:12px;line-height:1.8;display:block}.resumeName a{width:max-content;margin-top:8px;display:block}.sectionIntro{grid-template-columns:1fr auto 1fr}.sectionIntro h2{text-align:center}.sectionIntro .count{justify-self:end}.resumeHeading{grid-template-columns:1fr auto 1fr;align-items:end;display:grid}.resumeHeading .kicker{justify-self:start;margin:0}.resumeHeading h2{text-align:center}.resumeHeading>a{justify-self:end}@media (width<=760px){.sectionIntro{grid-template-columns:1fr}.sectionIntro h2{text-align:left}.resumeHeading{display:block}.resumeHeading h2{text-align:left}}.projectGrid.bentoGrid{background:#edf3ef;grid-template-rows:repeat(3,240px);grid-auto-rows:240px;gap:20px;padding:24px}.bento-1{grid-row:1/3;grid-column:1/8!important}.bento-2{grid-row:1/2;grid-column:8/13!important}.bento-3{grid-row:2/3;grid-column:8/13!important}.bento-4{grid-row:3/4;grid-column:1/7!important}.bento-5{grid-row:3/4;grid-column:7/13!important}.bentoCard .projectNumber,.bentoCard .projectCopy p{display:none}.bentoCard .projectCopy{background:#fffdf7f0;border-radius:10px;max-width:calc(100% - 72px);padding:10px 13px;bottom:16px;left:16px;right:auto}.bentoCard .projectCopy h3{font-size:clamp(17px,1.55vw,23px);line-height:1.15}.bentoCard .projectVisual:after{background:linear-gradient(#0000,#0c1d212e);inset:60% 0 0}.singleProject .bentoCard{grid-row:1/2;grid-column:1/-1!important}.singleProject .bentoCard .projectCopy>span{margin-top:8px;font-size:12px;display:block}@media (width<=760px){.projectGrid.bentoGrid{grid-template-rows:none;grid-auto-rows:260px;gap:14px;padding:14px}.bentoCard,.singleProject .bentoCard,.bento-1,.bento-2,.bento-3,.bento-4,.bento-5{grid-area:auto/1!important}.bentoCard .projectCopy{max-width:calc(100% - 62px);bottom:12px;left:12px}.singleProject{grid-template-rows:none!important}.singleProject .bentoCard{min-height:300px}}.projectGrid.bentoGrid{box-shadow:none;background:0 0;border:0;border-radius:0;gap:22px;padding:0}.bentoCard{background:#f2f0eb;border:1px solid #17343a24;border-radius:18px;flex-direction:column;display:flex;box-shadow:0 8px 24px #17343a14}.bentoCard .projectCopy{width:100%;max-width:none;min-height:132px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:0 0;border:0;border-radius:0;order:0;padding:24px 26px;position:relative;inset:auto}.bentoCard .projectCopy h3{margin:0 0 12px;font-size:clamp(21px,1.8vw,29px);line-height:1.08}.bentoCard .projectCopy>span,.singleProject .bentoCard .projectCopy>span{opacity:.72;max-width:620px;font-size:14px;line-height:1.5;display:block}.bentoCard .projectCopy>span:after{content:"  →";color:var(--coral);font-weight:700}.bentoCard .projectVisual{border-radius:0;flex:1;order:1;width:100%;height:auto;min-height:0;position:relative;inset:auto;transform:none}.bentoCard:hover .projectVisual{transform:none}.bentoCard .projectVisual:after,.bentoCard .projectArrow,.bentoCard .projectNumber{display:none}.singleProject .bentoCard .projectCopy{max-width:none;right:auto}.singleProject{grid-template-rows:520px!important}@media (width<=760px){.projectGrid.bentoGrid{grid-auto-rows:420px;gap:16px;padding:0}.bentoCard,.singleProject .bentoCard{min-height:420px}.bentoCard .projectCopy{max-width:none;min-height:145px;padding:22px;bottom:auto;left:auto}.bentoCard .projectCopy h3{font-size:23px}.singleProject{grid-template-rows:none!important}}.bentoCard{background:#f1d8cf;border-color:#d7a898;box-shadow:0 10px 28px #60352a21}.bentoCard:hover{border-color:#c98270;box-shadow:0 16px 34px #60352a33}.bentoCard{background:0 0;border:1.5px solid #17343ab8;border-radius:0;box-shadow:0 10px 24px #17343a1a}.bentoCard:hover{border:1.5px solid var(--ink);box-shadow:0 16px 32px #17343a29}.nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f4f0e6f5;position:sticky;top:0;box-shadow:0 4px 18px #17343a0f}#work,#about,#resume{scroll-margin-top:92px}@media (width<=760px){#work,#about,#resume{scroll-margin-top:74px}}
