@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/JetBrainsMono-Regular.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/JetBrainsMono-Bold.woff2)format("woff2")}.portfolio-site{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#fff;--surface:#fafafa;--surface-strong:#f3f3f3;--foreground:#111;--muted:#656565;--quiet:#8a8a8a;--border:#dedede;--border-strong:#bdbdbd;--button:#111;--button-text:#fff;--serif:Georgia, "Times New Roman", serif;--sans:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"JetBrains Mono", "Cascadia Mono", Consolas, monospace;font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;background:var(--background);color:var(--foreground)}.portfolio-site[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#090909;--surface:#101010;--surface-strong:#171717;--foreground:#f5f5f5;--muted:#a3a3a3;--quiet:#7b7b7b;--border:#2d2d2d;--border-strong:#464646;--button:#f5f5f5;--button-text:#111}.portfolio-site *{box-sizing:border-box}.portfolio-site{scroll-behavior:smooth;background:var(--background);min-width:320px;min-height:100vh;color:var(--foreground);margin:0;scroll-padding-top:5rem}.portfolio-site.menu-open{overflow:hidden}.portfolio-site a{color:inherit}.portfolio-site button,.portfolio-site a{-webkit-tap-highlight-color:transparent}.portfolio-site button{font:inherit}.portfolio-site img{max-width:100%}.portfolio-site h1,.portfolio-site h2,.portfolio-site h3,.portfolio-site p{margin-top:0}.portfolio-site :focus-visible{outline:2px solid var(--foreground);outline-offset:4px}.portfolio-site .skip-link{z-index:100;background:var(--button);color:var(--button-text);padding:.75rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.portfolio-site .skip-link:focus{transform:translateY(0)}.portfolio-site .site-header{z-index:40;border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:color-mix(in srgb, var(--background) 88%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:1fr auto 1fr;align-items:center;min-height:4.5rem;padding:0 max(1.25rem,50vw - 600px);display:grid;position:sticky;top:0}.portfolio-site .wordmark{width:fit-content;font-family:var(--serif);font-size:1.25rem;font-style:italic;font-weight:700;text-decoration:none}.portfolio-site nav{align-items:center;gap:.15rem;display:flex}.portfolio-site nav a{font-family:var(--mono);text-transform:uppercase;color:var(--muted);padding:.7rem .8rem;font-size:.66rem;text-decoration:none;position:relative}.portfolio-site nav a:after{content:"";background:var(--foreground);width:0;height:1px;transition:width .18s;position:absolute;bottom:.28rem;left:50%;transform:translate(-50%)}.portfolio-site nav a:hover{color:var(--foreground)}.portfolio-site nav a:hover:after{width:55%}.portfolio-site .header-actions{justify-self:end;gap:.4rem;display:flex}.portfolio-site .icon-button{width:2.35rem;height:2.35rem;color:var(--foreground);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;padding:0;display:grid}.portfolio-site .icon-button:hover{border-color:var(--border);background:var(--surface)}.portfolio-site .icon-button svg{width:1rem}.portfolio-site .menu-button{display:none}.portfolio-site .container{width:min(100% - 2.5rem,1120px);margin:0 auto}.portfolio-site .section{border-bottom:1px solid var(--border);padding:clamp(5.5rem,9vw,8.5rem) 0}.portfolio-site .section-soft{background:var(--surface)}.portfolio-site .hero{border-bottom:1px solid var(--border);background:linear-gradient(to bottom, var(--background), var(--surface));text-align:center;isolation:isolate;place-items:center;min-height:calc(100vh - 4.5rem);padding:clamp(5rem,9vw,8rem) 1.25rem;display:grid;position:relative}.portfolio-site .hero:before{z-index:-1;content:"";background-image:linear-gradient(to right, var(--border) 1px, transparent 1px), linear-gradient(to bottom, var(--border) 1px, transparent 1px);opacity:.32;background-size:62px 62px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(78% 62% at 50% 42%,#000 18%,#0000 78%);mask-image:radial-gradient(78% 62% at 50% 42%,#000 18%,#0000 78%)}.portfolio-site .hero>*{position:relative}.portfolio-site .hero-content{flex-direction:column;align-items:center;max-width:850px;display:flex}.portfolio-site .portrait-wrap{aspect-ratio:1;width:clamp(8.5rem,16vw,11rem);margin-bottom:2rem;position:relative}.portfolio-site .portrait-halo{background:var(--surface-strong);filter:blur(18px);opacity:.7;border-radius:50%;position:absolute;inset:-.8rem}.portfolio-site .portrait{border:4px solid var(--background);object-fit:cover;object-position:center 30%;filter:grayscale(.12);border-radius:50%;width:100%;height:100%;position:relative;box-shadow:0 12px 32px #0000002e}.portfolio-site .availability{font-family:var(--mono);text-transform:uppercase;color:var(--muted);align-items:center;gap:.55rem;margin-bottom:1.1rem;font-size:.67rem;display:flex}.portfolio-site .availability span{background:#3ca56a;border-radius:50%;width:.46rem;height:.46rem;box-shadow:0 0 0 4px #3ca56a1f}.portfolio-site .hero h1{font-family:var(--serif);letter-spacing:-.055em;margin-bottom:.65rem;font-size:clamp(3.4rem,8vw,6.6rem);font-style:italic;line-height:.95}.portfolio-site .hero-role{min-height:1.8rem;font-family:var(--mono);color:var(--muted);margin-bottom:1.5rem;font-size:clamp(.78rem,1.4vw,1rem)}.portfolio-site .cursor{margin-left:.2rem;animation:1s step-end infinite blink}.portfolio-site .hero-copy{max-width:720px;color:var(--muted);margin-bottom:1.8rem;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.75}.portfolio-site .hero-links{flex-wrap:wrap;justify-content:center;gap:.55rem;margin-bottom:2rem;display:flex}.portfolio-site .hero-links a{border:1px solid var(--border);font-family:var(--mono);color:var(--muted);border-radius:999px;align-items:center;gap:.45rem;padding:.58rem .78rem;font-size:.66rem;text-decoration:none;transition:border .16s,color .16s,transform .16s;display:inline-flex}.portfolio-site .hero-links a:hover{border-color:var(--border-strong);color:var(--foreground);transform:translateY(-2px)}.portfolio-site .hero-links svg{width:.92rem}.portfolio-site .hero-actions{flex-wrap:wrap;justify-content:center;gap:.7rem;display:flex}.portfolio-site .hero-audience{font-family:var(--mono);color:var(--quiet);margin:1.25rem 0 0;font-size:.63rem}.portfolio-site .hero-audience a{color:var(--foreground);text-underline-offset:.3rem}.portfolio-site .primary-button,.portfolio-site .outline-button{border:1px solid var(--button);background:var(--button);width:fit-content;min-height:2.85rem;color:var(--button-text);font-family:var(--mono);text-transform:uppercase;border-radius:.35rem;justify-content:center;align-items:center;gap:.55rem;padding:.75rem 1rem;font-size:.67rem;text-decoration:none;transition:opacity .16s,transform .16s;display:inline-flex}.portfolio-site .offer-page{background:var(--background);min-height:100vh}.portfolio-site .offer-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:4.5rem;padding:0 max(1.25rem,50vw - 560px);display:flex}.portfolio-site .offer-wordmark,.portfolio-site .offer-header-cta{font-family:var(--mono);text-transform:uppercase;align-items:center;gap:.45rem;font-size:.7rem;text-decoration:none;display:inline-flex}.portfolio-site .offer-wordmark{color:var(--muted)}.portfolio-site .offer-header-cta{color:var(--foreground)}.portfolio-site .offer-wordmark svg,.portfolio-site .offer-header-cta svg{width:.9rem}.portfolio-site .offer-hero{border-bottom:1px solid var(--border);background:linear-gradient(145deg, var(--background), var(--surface));padding:clamp(6rem,12vw,10rem) 1.25rem}.portfolio-site .offer-shell{width:min(100%,1040px);margin:0 auto}.portfolio-site .offer-hero .offer-shell{text-align:center;max-width:900px}.portfolio-site .offer-hero h1,.portfolio-site .offer-section h2{font-family:var(--serif);letter-spacing:-.055em;margin-bottom:1.35rem;font-size:clamp(3rem,7vw,6rem);font-style:italic;line-height:.98}.portfolio-site .offer-lede{max-width:760px;color:var(--muted);margin:0 auto 2rem;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.7}.portfolio-site .offer-actions{flex-wrap:wrap;justify-content:center;gap:.7rem;display:flex}.portfolio-site .offer-price{font-family:var(--mono);color:var(--quiet);margin:1.25rem 0 0;font-size:.72rem;line-height:1.6}.portfolio-site .offer-price strong{color:var(--foreground)}.portfolio-site .offer-section{border-bottom:1px solid var(--border);padding:clamp(4.5rem,8vw,7rem) 1.25rem}.portfolio-site .offer-section-muted{background:var(--surface)}.portfolio-site .offer-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2.5rem,8vw,8rem);display:grid}.portfolio-site .offer-section h2{max-width:560px;font-size:clamp(2.25rem,4vw,3.8rem)}.portfolio-site .offer-list{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.portfolio-site .offer-list li{border-bottom:1px solid var(--border);align-items:flex-start;gap:.85rem;padding-bottom:1rem;font-size:1rem;line-height:1.55;display:flex}.portfolio-site .offer-list svg{width:1.1rem;color:var(--muted);flex:none;margin-top:.2rem}.portfolio-site .offer-fit{grid-template-columns:minmax(0,1fr) minmax(18rem,.7fr);align-items:start;gap:clamp(2.5rem,8vw,8rem);display:grid}.portfolio-site .offer-fit h2{font-size:clamp(2.25rem,4vw,3.8rem)}.portfolio-site .offer-fit>div>p:not(.eyebrow){max-width:620px;color:var(--muted);line-height:1.75}.portfolio-site .offer-cta-card{border:1px solid var(--border-strong);background:var(--surface);gap:1.2rem;padding:1.6rem;display:grid}.portfolio-site .offer-cta-card p{color:var(--muted);margin:0;line-height:1.65}@media (max-width:720px){.portfolio-site .offer-grid,.portfolio-site .offer-fit{grid-template-columns:1fr}.portfolio-site .offer-header{gap:1rem}}.portfolio-site .primary-button:hover,.portfolio-site .outline-button:hover{transform:translateY(-2px)}.portfolio-site .primary-button:hover{opacity:.82}.portfolio-site .primary-button svg,.portfolio-site .outline-button svg{width:.95rem}.portfolio-site .outline-button{border-color:var(--border-strong);color:var(--foreground);background:0 0}.portfolio-site .outline-button:hover{border-color:var(--foreground)}.portfolio-site .section-intro{max-width:830px;margin-bottom:clamp(3.5rem,7vw,5.5rem);padding:.5rem 1.5rem;position:relative}.portfolio-site .eyebrow{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--quiet);margin-bottom:.9rem;font-size:.66rem}.portfolio-site .section-title-row{align-items:flex-start;gap:.8rem;margin-bottom:1rem;display:flex}.portfolio-site .section-title-row>svg{width:1.3rem;color:var(--muted);flex:none;margin-top:.5em}.portfolio-site .section-title-row h2,.portfolio-site .about-copy h2,.portfolio-site .contact-card h2{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:clamp(2.3rem,5vw,4.2rem);font-style:italic;font-weight:700;line-height:1.05}.portfolio-site .section-description{max-width:720px;color:var(--muted);margin:0;font-size:1.03rem;line-height:1.75}.portfolio-site .corner{pointer-events:none;opacity:.7;width:2.8rem;height:2.8rem;position:absolute}.portfolio-site .corner-top{border-top:1px solid var(--border-strong);border-left:1px solid var(--border-strong);top:-.7rem;left:-.7rem}.portfolio-site .corner-bottom{border-right:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);bottom:-.7rem;right:-.7rem}.portfolio-site .about-layout{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;gap:clamp(3rem,8vw,7rem);display:grid}.portfolio-site .framed-block{padding:1.25rem 1.5rem;position:relative}.portfolio-site .about-copy h2{margin-bottom:1.5rem}.portfolio-site .about-copy>p:not(.eyebrow){color:var(--muted);margin-bottom:1.2rem;font-size:1rem;line-height:1.8}.portfolio-site .education-note{border-top:1px solid var(--border);gap:.9rem;margin-top:2rem;padding-top:1.4rem;display:flex}.portfolio-site .education-note svg{width:1.2rem;color:var(--muted);flex:none}.portfolio-site .education-note strong,.portfolio-site .education-note span{display:block}.portfolio-site .education-note strong{font-family:var(--serif);margin-bottom:.4rem;font-size:1rem}.portfolio-site .education-note span{font-family:var(--mono);color:var(--muted);font-size:.65rem;line-height:1.65}.portfolio-site .achievement-panel{border:1px solid var(--border);background:var(--background);border-radius:.75rem;overflow:hidden;box-shadow:0 16px 40px #00000014}.portfolio-site .achievement-heading{border-bottom:1px solid var(--border);align-items:center;gap:.7rem;padding:1.2rem 1.3rem;display:flex}.portfolio-site .achievement-heading svg{width:1.05rem;color:var(--muted)}.portfolio-site .achievement-heading h3{font-family:var(--serif);margin:0;font-size:1.25rem;font-style:italic}.portfolio-site .problem-list{display:grid}.portfolio-site .problem-row{border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);color:var(--foreground);gap:.3rem;padding:1.15rem 1.3rem;text-decoration:none;transition:background .16s;display:grid}.portfolio-site .problem-row:last-child{border-bottom:0}.portfolio-site .problem-row:hover{background:var(--surface-strong)}.portfolio-site .problem-domain{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--quiet);font-size:.57rem}.portfolio-site .problem-statement{font-family:var(--serif);font-size:1.02rem;font-style:italic;line-height:1.32}.portfolio-site .problem-outcome{color:var(--muted);grid-template-columns:auto 1fr;align-items:start;gap:.45rem;margin-top:.15rem;font-size:.82rem;line-height:1.55;display:grid}.portfolio-site .problem-outcome svg{width:.72rem;color:var(--quiet);margin-top:.24rem}.portfolio-site .problem-row:hover .problem-outcome svg{color:var(--foreground)}.portfolio-site .panel-footnote{border-top:1px solid var(--border);font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--quiet);align-items:center;gap:.4rem;padding:1rem 1.3rem;font-size:.6rem;text-decoration:none;transition:color .16s;display:flex}.portfolio-site .panel-footnote:hover:not(.is-static){color:var(--foreground)}.portfolio-site .panel-footnote.is-static{margin:0}.portfolio-site .panel-footnote svg{width:.75rem}.portfolio-site .focus-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.portfolio-site .focus-card{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;padding:clamp(1.5rem,3vw,2rem);transition:border .16s,transform .16s,box-shadow .16s}.portfolio-site .focus-card:hover{border-color:var(--border-strong);transform:translateY(-3px);box-shadow:0 12px 32px #00000012}.portfolio-site .card-heading{justify-content:space-between;gap:1rem;margin-bottom:1rem;display:flex}.portfolio-site .card-heading p{font-family:var(--mono);text-transform:uppercase;color:var(--quiet);margin-bottom:.35rem;font-size:.61rem}.portfolio-site .card-heading h3{font-family:var(--serif);margin:0;font-size:2rem;font-style:italic}.portfolio-site .card-heading a{border:1px solid var(--border);border-radius:50%;place-items:center;width:2.2rem;height:2.2rem;display:grid}.portfolio-site .card-heading a:hover{border-color:var(--foreground)}.portfolio-site .card-heading svg{width:1rem}.portfolio-site .focus-card>p{min-height:5rem;color:var(--muted);font-size:.94rem;line-height:1.7}.portfolio-site .focus-card ul,.portfolio-site .tag-list{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.portfolio-site .focus-card li,.portfolio-site .tag-list li{border:1px solid var(--border);font-family:var(--mono);color:var(--muted);border-radius:999px;padding:.33rem .5rem;font-size:.57rem}.portfolio-site .metrics-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(4,1fr);margin-top:4rem;display:grid}.portfolio-site .metric-card{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:9rem;padding:1.4rem}.portfolio-site .metric-card strong{font-family:var(--serif);margin-bottom:.65rem;font-size:clamp(2rem,3vw,2.8rem);font-style:italic;display:block}.portfolio-site .metric-card span{font-family:var(--mono);text-transform:uppercase;color:var(--muted);font-size:.62rem;line-height:1.55;display:block}.portfolio-site .proof-section{padding-block:clamp(2.5rem,5vw,4.5rem)}.portfolio-site .proof-label{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--quiet);margin:0 0 .9rem;font-size:.66rem}.portfolio-site .hero-metrics{grid-template-columns:repeat(3,1fr);margin-top:0}.portfolio-site .operating-flow{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(5,1fr);gap:0;margin:0;padding:0;list-style:none;display:grid}.portfolio-site .operating-stage{border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--background);align-content:space-between;min-height:18rem;padding:1.5rem;transition:background .18s,transform .18s;display:grid;position:relative}.portfolio-site .operating-stage:hover{z-index:1;background:var(--surface-strong);transform:translateY(-.35rem)}.portfolio-site .operating-number{border:1px solid var(--border-strong);width:2.2rem;height:2.2rem;font-family:var(--mono);color:var(--muted);border-radius:50%;place-items:center;font-size:.62rem;display:grid}.portfolio-site .operating-stage h3{font-family:var(--serif);margin:1.8rem 0 .65rem;font-size:1.45rem;font-style:italic;line-height:1.1}.portfolio-site .operating-stage p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.7}.portfolio-site .operating-arrow{z-index:2;background:var(--background);width:1.1rem;color:var(--quiet);padding:.15rem;position:absolute;top:2.1rem;right:-.58rem}.portfolio-site .operating-stage:hover .operating-arrow{background:var(--surface-strong)}.portfolio-site .principle-list{counter-reset:none;grid-template-columns:1fr 1fr;gap:0 3.5rem;margin:0;padding:0;list-style:none;display:grid}.portfolio-site .principle-row{border-top:1px solid var(--border);grid-template-columns:auto 1fr;gap:1.4rem;padding:2.1rem 0;display:grid}.portfolio-site .principle-row:first-child,.portfolio-site .principle-row:nth-child(2){border-top:0;padding-top:0}.portfolio-site .principle-number{font-family:var(--serif);color:#0000;-webkit-text-stroke:1px var(--border-strong);font-size:2.6rem;font-style:italic;line-height:.9}.portfolio-site .principle-body h3{font-family:var(--serif);letter-spacing:-.01em;margin-bottom:.7rem;font-size:1.4rem;font-style:italic;line-height:1.2}.portfolio-site .principle-body p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.75}.portfolio-site .track-layout{grid-template-columns:minmax(0,1.55fr) minmax(260px,.85fr);align-items:start;gap:3rem;display:grid}.portfolio-site .timeline{margin:0;padding:0 0 0 1.9rem;list-style:none;position:relative}.portfolio-site .timeline:before{content:"";background:linear-gradient(to bottom, transparent, var(--border) 8%, var(--border) 92%, transparent);width:1px;position:absolute;top:.55rem;bottom:.55rem;left:.29rem}.portfolio-site .timeline-row{padding:0 0 2.15rem;position:relative}.portfolio-site .timeline-row:last-child{padding-bottom:0}.portfolio-site .timeline-row:before{content:"";border:1px solid var(--border-strong);background:var(--background);border-radius:50%;width:.6rem;height:.6rem;transition:background .2s,border-color .2s;position:absolute;top:.5rem;left:-1.9rem}.portfolio-site .timeline-row:hover:before{background:var(--foreground);border-color:var(--foreground)}.portfolio-site .timeline-year{font-family:var(--mono);letter-spacing:.12em;color:var(--quiet);margin-bottom:.35rem;font-size:.63rem;display:block}.portfolio-site .timeline-body h3{font-family:var(--serif);margin-bottom:.45rem;font-size:1.28rem;font-style:italic;line-height:1.25}.portfolio-site .timeline-body p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.7}.portfolio-site .consistency-panel{border:1px solid var(--border);background:var(--background);border-radius:.75rem;padding:1.6rem;position:sticky;top:6.5rem}.portfolio-site .consistency-list{gap:.1rem;display:grid}.portfolio-site .consistency-row{border-bottom:1px solid color-mix(in srgb, var(--border) 65%, transparent);color:var(--foreground);padding:1rem 0;text-decoration:none;display:block}.portfolio-site .consistency-row:last-child{border-bottom:0;padding-bottom:0}.portfolio-site .consistency-row:hover .consistency-label{color:var(--foreground)}.portfolio-site .consistency-row:hover .consistency-icon{opacity:1;transform:translate(2px,-2px)}.portfolio-site .consistency-icon{opacity:0;vertical-align:-.08em;width:.68rem;transition:opacity .16s,transform .16s}.portfolio-site .consistency-row strong{font-family:var(--serif);font-size:2.1rem;font-style:italic;line-height:1;display:block}.portfolio-site .consistency-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--foreground);margin-top:.4rem;font-size:.63rem;display:block}.portfolio-site .consistency-detail{font-family:var(--mono);color:var(--quiet);margin-top:.25rem;font-size:.6rem;line-height:1.5;display:block}.portfolio-site .engagement-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.portfolio-site .engagement-card{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;flex-direction:column;padding:clamp(1.5rem,2.8vw,1.9rem);transition:border .16s,transform .16s,box-shadow .16s;display:flex;position:relative}.portfolio-site .engagement-card:hover{border-color:var(--border-strong);transform:translateY(-3px);box-shadow:0 12px 32px #00000012}.portfolio-site .engagement-index{font-family:var(--mono);letter-spacing:.1em;color:var(--quiet);font-size:.62rem;position:absolute;top:1.15rem;right:1.3rem}.portfolio-site .engagement-card h3{min-height:2.4em;font-family:var(--serif);margin-bottom:.4rem;padding-right:2rem;font-size:1.5rem;font-style:italic;line-height:1.2}.portfolio-site .engagement-best{font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--quiet);margin-bottom:1rem;font-size:.6rem}.portfolio-site .engagement-description{color:var(--muted);margin-bottom:1.3rem;font-size:.9rem;line-height:1.7}.portfolio-site .engagement-includes{border-top:1px solid var(--border);gap:.55rem;margin:auto 0 0;padding:1.2rem 0 0;list-style:none;display:grid}.portfolio-site .engagement-includes li{font-family:var(--mono);color:var(--muted);grid-template-columns:auto 1fr;align-items:start;gap:.55rem;font-size:.63rem;line-height:1.55;display:grid}.portfolio-site .engagement-includes svg{width:.78rem;color:var(--foreground);margin-top:.08rem}.portfolio-site .engagement-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.2rem;margin-top:2.5rem;padding-top:2rem;display:flex}.portfolio-site .engagement-footer p{max-width:46ch;color:var(--muted);margin:0;font-size:.94rem;line-height:1.7}.portfolio-site .impact-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.portfolio-site .impact-card{border:1px solid var(--border);background:var(--background);border-radius:.75rem;padding:clamp(1.4rem,2.6vw,1.8rem);transition:border .16s,transform .16s,box-shadow .16s}.portfolio-site .impact-card:hover{border-color:var(--border-strong);transform:translateY(-3px);box-shadow:0 12px 32px #00000012}.portfolio-site .impact-card strong{font-family:var(--serif);margin-bottom:.5rem;font-size:clamp(1.9rem,2.8vw,2.5rem);font-style:italic;display:block}.portfolio-site .impact-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--quiet);margin-bottom:.7rem;font-size:.62rem}.portfolio-site .impact-detail{color:var(--muted);font-size:.9rem;line-height:1.7}.portfolio-site .experience-layout{grid-template-columns:minmax(260px,.75fr) minmax(0,1.5fr);gap:2rem;display:grid}.portfolio-site .experience-tabs{flex-direction:column;gap:.45rem;display:flex}.portfolio-site .experience-tabs button{width:100%;color:var(--foreground);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.5rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;transition:border .16s,background .16s,transform .16s;display:flex}.portfolio-site .experience-tabs button:hover{background:var(--surface-strong);transform:translate(3px)}.portfolio-site .experience-tabs button.active{border-color:var(--border-strong);background:var(--background);box-shadow:inset 3px 0 var(--foreground)}.portfolio-site .experience-tabs strong,.portfolio-site .experience-tabs small{display:block}.portfolio-site .experience-tabs strong{font-family:var(--serif);margin-bottom:.28rem;font-size:1rem;font-style:italic}.portfolio-site .experience-tabs small{font-family:var(--mono);color:var(--muted);font-size:.57rem;line-height:1.4}.portfolio-site .experience-tabs svg{opacity:0;width:.95rem;transition:opacity .16s}.portfolio-site .experience-tabs .active svg{opacity:1}.portfolio-site .experience-detail{border:1px solid var(--border);background:var(--background);border-radius:.75rem;min-height:31rem;padding:clamp(1.5rem,4vw,2.5rem);box-shadow:0 12px 36px #0000000f}.portfolio-site .experience-topline{border-bottom:1px solid var(--border);justify-content:space-between;gap:2rem;margin-bottom:1.8rem;padding-bottom:1.5rem;display:flex}.portfolio-site .experience-topline p,.portfolio-site .experience-topline>span{font-family:var(--mono);text-transform:uppercase;color:var(--muted);margin:0;font-size:.61rem}.portfolio-site .experience-topline h3{font-family:var(--serif);margin:.45rem 0 .35rem;font-size:clamp(1.8rem,3vw,2.7rem);font-style:italic}.portfolio-site .experience-topline strong{font-family:var(--mono);color:var(--muted);font-size:.72rem}.portfolio-site .experience-summary{color:var(--muted);font-size:1rem;line-height:1.75}.portfolio-site .experience-detail>ul,.portfolio-site .project-highlights{margin:1.8rem 0 0;padding:0;list-style:none}.portfolio-site .experience-detail>ul li,.portfolio-site .project-highlights li{color:var(--muted);margin-bottom:.9rem;padding-left:1.3rem;font-size:.9rem;line-height:1.65;position:relative}.portfolio-site .experience-detail>ul li:before,.portfolio-site .project-highlights li:before{content:"•";color:var(--foreground);position:absolute;left:0}.portfolio-site .project-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.portfolio-site .project-card{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;flex-direction:column;min-height:36rem;padding:clamp(1.5rem,3vw,2.25rem);transition:border .16s,box-shadow .16s,transform .16s;display:flex}.portfolio-site .project-card:hover{border-color:var(--border-strong);transform:translateY(-3px);box-shadow:0 14px 36px #00000012}.portfolio-site .project-category{font-family:var(--mono);text-transform:uppercase;color:var(--quiet);margin-bottom:1.5rem;font-size:.61rem}.portfolio-site .project-card h3{font-family:var(--serif);margin-bottom:1rem;font-size:clamp(1.9rem,3.4vw,3rem);font-style:italic;line-height:1.08}.portfolio-site .project-description{color:var(--muted);font-size:.95rem;line-height:1.75}.portfolio-site .project-highlights{margin-bottom:2rem}.portfolio-site .project-highlights li{font-size:.82rem}.portfolio-site .project-footer{border-top:1px solid var(--border);flex-direction:column;gap:1.25rem;margin-top:auto;padding-top:1.25rem;display:flex}.portfolio-site .text-link{width:fit-content;font-family:var(--mono);text-underline-offset:.3rem;text-transform:uppercase;align-items:center;gap:.4rem;font-size:.63rem;display:inline-flex}.portfolio-site .text-link:hover{text-decoration-thickness:2px}.portfolio-site .text-link svg{width:.85rem}.portfolio-site .private-label{font-family:var(--mono);text-transform:uppercase;color:var(--quiet);font-size:.62rem}.portfolio-site .skill-tabs{flex-wrap:wrap;gap:.55rem;margin-bottom:1.2rem;display:flex}.portfolio-site .skill-tabs button{border:1px solid var(--border);color:var(--muted);font-family:var(--mono);cursor:pointer;background:0 0;border-radius:999px;padding:.6rem .8rem;font-size:.62rem}.portfolio-site .skill-tabs button:hover{border-color:var(--border-strong);color:var(--foreground)}.portfolio-site .skill-tabs button.active{border-color:var(--button);background:var(--button);color:var(--button-text)}.portfolio-site .skill-panel{border:1px solid var(--border);background:var(--background);border-radius:.75rem;grid-template-columns:repeat(4,1fr);gap:.8rem;padding:clamp(1.2rem,3vw,2rem);display:grid}.portfolio-site .skill-panel span{border:1px solid var(--border);background:var(--surface);min-height:5.5rem;font-family:var(--mono);text-align:center;border-radius:.55rem;place-items:center;padding:1rem;font-size:.68rem;transition:border .16s,transform .16s;display:grid}.portfolio-site .skill-panel span:hover{border-color:var(--border-strong);transform:translateY(-2px)}.portfolio-site .writing-list{border-top:1px solid var(--border);margin-bottom:2rem}.portfolio-site .writing-row{border-bottom:1px solid var(--border);grid-template-columns:3rem 1fr auto;align-items:center;gap:1rem;padding:1.5rem 0;text-decoration:none;display:grid}.portfolio-site .writing-row>span{font-family:var(--mono);color:var(--quiet);font-size:.62rem}.portfolio-site .writing-row h3{font-family:var(--serif);margin-bottom:.4rem;font-size:clamp(1.2rem,2.2vw,1.65rem);font-style:italic}.portfolio-site .writing-row p{font-family:var(--mono);text-transform:uppercase;color:var(--muted);margin:0;font-size:.6rem}.portfolio-site .writing-row>svg{width:1rem;transition:transform .16s}.portfolio-site .writing-row:hover h3{text-underline-offset:.25rem;text-decoration:underline}.portfolio-site .writing-row:hover>svg{transform:translate(2px,-2px)}.portfolio-site .contact-section{background:var(--surface)}.portfolio-site .contact-card{border:1px solid var(--border);background:var(--background);text-align:center;border-radius:.9rem;padding:clamp(2rem,7vw,5rem);position:relative;box-shadow:0 18px 50px #00000014}.portfolio-site .contact-card h2{max-width:780px;margin:0 auto 1.5rem}.portfolio-site .contact-card>p:not(.eyebrow){max-width:680px;color:var(--muted);margin:0 auto 2rem;font-size:1rem;line-height:1.75}.portfolio-site .contact-actions{flex-wrap:wrap;justify-content:center;gap:.7rem;display:flex}.portfolio-site footer{width:min(100% - 2.5rem,1120px);font-family:var(--mono);text-transform:uppercase;color:var(--quiet);grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;margin:0 auto;padding:2rem 0;font-size:.57rem;display:grid}.portfolio-site footer p{margin:0}.portfolio-site footer>div{gap:1rem;display:flex}.portfolio-site footer a{text-underline-offset:.25rem}.portfolio-site footer p:last-child{justify-self:end}@keyframes blink{0%,52%{opacity:1}53%,to{opacity:0}}@keyframes nav-item-in{0%{opacity:0;transform:translateY(.7rem)}to{opacity:1;transform:translateY(0)}}@keyframes rise-in{0%{opacity:0;transform:translateY(1.2rem)}to{opacity:1;transform:translateY(0)}}@media (max-width:980px){.portfolio-site .site-header{background:var(--background);-webkit-backdrop-filter:none;backdrop-filter:none;grid-template-columns:1fr auto}.portfolio-site .menu-button{display:grid}.portfolio-site nav{z-index:39;background:var(--background);visibility:hidden;opacity:0;flex-direction:column;align-items:stretch;gap:.3rem;height:calc(100svh - 4.5rem);padding:3rem 1.5rem;transition:transform .26s cubic-bezier(.22,1,.36,1),opacity .2s,visibility 0s linear .26s;display:flex;position:fixed;top:4.5rem;left:0;right:0;overflow-y:auto;transform:translateY(-1.5rem)}.portfolio-site nav.nav-open{visibility:visible;opacity:1;transition:transform .26s cubic-bezier(.22,1,.36,1),opacity .2s,visibility;transform:translateY(0)}.portfolio-site nav.nav-open a{animation:.42s cubic-bezier(.22,1,.36,1) backwards nav-item-in}.portfolio-site nav.nav-open a:first-child{animation-delay:40ms}.portfolio-site nav.nav-open a:nth-child(2){animation-delay:80ms}.portfolio-site nav.nav-open a:nth-child(3){animation-delay:.12s}.portfolio-site nav.nav-open a:nth-child(4){animation-delay:.16s}.portfolio-site nav.nav-open a:nth-child(5){animation-delay:.2s}.portfolio-site nav.nav-open a:nth-child(6){animation-delay:.24s}.portfolio-site nav.nav-open a:nth-child(7){animation-delay:.28s}.portfolio-site nav.nav-open a:nth-child(8){animation-delay:.32s}.portfolio-site nav.nav-open a:nth-child(9){animation-delay:.36s}.portfolio-site nav a{border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);font-family:var(--serif);text-transform:none;color:var(--foreground);padding:.62rem 0;font-size:clamp(1.3rem,5.2vw,1.7rem);font-style:italic}.portfolio-site nav a:last-child{border-bottom:0}.portfolio-site nav a:after{display:none}.portfolio-site .about-layout{grid-template-columns:1fr}.portfolio-site .achievement-panel{max-width:680px}.portfolio-site .experience-layout{grid-template-columns:1fr}.portfolio-site .experience-tabs{grid-template-columns:1fr 1fr;display:grid}.portfolio-site .experience-detail{min-height:auto}.portfolio-site .impact-grid{grid-template-columns:1fr 1fr}.portfolio-site .operating-flow{grid-template-columns:repeat(3,1fr)}.portfolio-site .principle-list{grid-template-columns:1fr;gap:0}.portfolio-site .principle-row:nth-child(2){border-top:1px solid var(--border);padding-top:2.1rem}.portfolio-site .track-layout{grid-template-columns:1fr;gap:2.5rem}.portfolio-site .consistency-panel{position:static}.portfolio-site .consistency-list{grid-template-columns:1fr 1fr;gap:0 1.5rem}.portfolio-site .consistency-row:nth-last-child(2){border-bottom:0}.portfolio-site .engagement-grid{grid-template-columns:1fr}.portfolio-site .engagement-includes{margin-top:0}.portfolio-site .skill-panel{grid-template-columns:repeat(3,1fr)}.portfolio-site footer{grid-template-columns:1fr 1fr}.portfolio-site footer>div{justify-self:end}.portfolio-site footer p:last-child{grid-column:1/-1;justify-self:start}}@media (max-width:720px){.portfolio-site .container{width:min(100% - 2rem,1120px)}.portfolio-site .section{padding:5rem 0}.portfolio-site .hero{min-height:calc(100svh - 4.5rem)}.portfolio-site .hero h1{font-size:clamp(3.4rem,18vw,5.4rem)}.portfolio-site .section-intro,.portfolio-site .framed-block{padding-left:.8rem;padding-right:.8rem}.portfolio-site .focus-grid,.portfolio-site .project-grid{grid-template-columns:1fr}.portfolio-site .focus-card>p{min-height:auto}.portfolio-site .metrics-grid{grid-template-columns:1fr 1fr}.portfolio-site .hero-metrics,.portfolio-site .operating-flow{grid-template-columns:1fr}.portfolio-site .operating-stage{grid-template-columns:auto 1fr;align-items:start;gap:1rem;min-height:0}.portfolio-site .operating-stage h3{margin-top:0}.portfolio-site .operating-arrow{inset:auto auto -.58rem 1.95rem;transform:rotate(90deg)}.portfolio-site .experience-tabs{grid-template-columns:1fr}.portfolio-site .experience-topline{flex-direction:column;gap:.8rem}.portfolio-site .project-card{min-height:auto}.portfolio-site .skill-panel{grid-template-columns:1fr 1fr}.portfolio-site .writing-row{grid-template-columns:2rem 1fr auto}.portfolio-site footer{grid-template-columns:1fr}.portfolio-site footer>div,.portfolio-site footer p:last-child{justify-self:start}.portfolio-site .problem-row{padding:1rem 1.1rem}.portfolio-site .problem-statement{font-size:.96rem}.portfolio-site .impact-grid{grid-template-columns:1fr}.portfolio-site .principle-row{grid-template-columns:1fr;gap:.5rem;padding:1.7rem 0}.portfolio-site .principle-number{font-size:1.6rem}.portfolio-site .principle-body h3{font-size:1.25rem}.portfolio-site .consistency-list{grid-template-columns:1fr;gap:0}.portfolio-site .consistency-row:nth-last-child(2){border-bottom:1px solid color-mix(in srgb, var(--border) 65%, transparent)}.portfolio-site .engagement-footer{flex-direction:column;align-items:flex-start}.portfolio-site .timeline{padding-left:1.6rem}.portfolio-site .timeline-row:before{left:-1.6rem}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (min-width:721px){.portfolio-site .focus-card,.portfolio-site .impact-card,.portfolio-site .engagement-card,.portfolio-site .principle-row,.portfolio-site .timeline-row,.portfolio-site .project-card,.portfolio-site .writing-row,.portfolio-site .metric-card{animation:.62s cubic-bezier(.22,1,.36,1) both rise-in;animation-timeline:view();animation-range:entry cover 22%}}}@media (prefers-reduced-motion:reduce){.portfolio-site{scroll-behavior:auto}.portfolio-site *,.portfolio-site :before,.portfolio-site :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.portfolio-site.lightbox-open{overflow:hidden}.portfolio-site .gallery-page{background:var(--background);min-height:100vh}.portfolio-site .gallery-header{z-index:50;color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#09090994;border-bottom:1px solid #ffffff2e;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;min-height:4.5rem;padding:0 max(1.25rem,50vw - 660px);transition:background .18s;display:grid;position:fixed;top:0}.portfolio-site .gallery-header>p{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.72;margin:0;font-size:.58rem}.portfolio-site .gallery-back-link{font-family:var(--mono);text-transform:uppercase;align-items:center;gap:.45rem;padding:.65rem;font-size:.6rem;text-decoration:none;display:inline-flex}.portfolio-site .gallery-back-link svg{width:.88rem}.portfolio-site .gallery-header .icon-button{color:#fff;border-color:#ffffff57}.portfolio-site .gallery-hero{color:#fff;background:#111;min-height:100svh;position:relative;overflow:hidden}.portfolio-site .gallery-hero>img{object-fit:cover;object-position:center 38%;width:100%;max-width:none;height:100%;animation:1.2s cubic-bezier(.22,1,.36,1) both gallery-reveal;position:absolute;inset:0}.portfolio-site .gallery-hero-shade{background:linear-gradient(90deg,#00000094 0%,#00000024 58%,#0003 100%),linear-gradient(#0000 52%,#00000080);position:absolute;inset:0}.portfolio-site .gallery-hero-copy{z-index:1;max-width:760px;position:absolute;bottom:clamp(5.5rem,11vh,8rem);left:max(1.25rem,50vw - 660px)}.portfolio-site .gallery-hero-copy>p{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;opacity:.78;margin-bottom:1.2rem;font-size:.64rem}.portfolio-site .gallery-hero-copy h1{font-family:var(--serif);letter-spacing:-.075em;margin:0 0 2rem;font-size:clamp(4.2rem,11vw,9.8rem);font-weight:400;line-height:.78}.portfolio-site .gallery-hero-copy h1 em{margin-left:clamp(1.4rem,8vw,7rem);font-weight:400}.portfolio-site .gallery-hero-copy>div{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;opacity:.75;gap:2.5rem;font-size:.6rem;display:flex}.portfolio-site .gallery-scroll-cue{z-index:1;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.9rem;font-size:.6rem;text-decoration:none;display:flex;position:absolute;bottom:2.2rem;right:max(1.25rem,50vw - 660px)}.portfolio-site .gallery-scroll-cue span{border:1px solid #ffffff80;border-radius:50%;place-items:center;width:2.2rem;height:2.2rem;display:grid}.portfolio-site .gallery-intro{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:end;gap:clamp(3rem,10vw,11rem);width:min(100% - 3rem,1320px);margin:0 auto;padding:clamp(7rem,12vw,12rem) 0 clamp(4rem,8vw,7rem);display:grid}.portfolio-site .gallery-intro h2,.portfolio-site .gallery-endnote h2{font-family:var(--serif);letter-spacing:-.055em;margin:0;font-size:clamp(3.1rem,7.2vw,7rem);font-weight:400;line-height:.92}.portfolio-site .gallery-intro h2 em,.portfolio-site .gallery-endnote h2 em{font-weight:400}.portfolio-site .gallery-intro>p{max-width:500px;font-family:var(--serif);color:var(--muted);margin:0 0 .5rem;font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.65}.portfolio-site .gallery-toolbar{z-index:30;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--background) 90%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);justify-content:center;gap:0;width:100%;display:flex;position:sticky;top:4.5rem}.portfolio-site .gallery-toolbar button{border:0;border-right:1px solid var(--border);min-width:8rem;color:var(--muted);font-family:var(--mono);text-transform:uppercase;cursor:pointer;background:0 0;padding:1.05rem 1.35rem;font-size:.62rem}.portfolio-site .gallery-toolbar button:first-child{border-left:1px solid var(--border)}.portfolio-site .gallery-toolbar button span{color:var(--quiet);margin-left:.35rem;font-size:.52rem}.portfolio-site .gallery-toolbar button:hover,.portfolio-site .gallery-toolbar button.active{background:var(--foreground);color:var(--background)}.portfolio-site .gallery-toolbar button.active span{color:color-mix(in srgb, var(--background) 65%, transparent)}.portfolio-site .photo-wall{columns:3;background:var(--border);column-gap:1px;width:100%;padding:1px 0 0}.portfolio-site .photo-frame{break-inside:avoid;background:var(--background);vertical-align:top;width:100%;margin:0 0 1px;display:inline-block}.portfolio-site .photo-frame button{color:#fff;cursor:zoom-in;background:#111;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.portfolio-site .photo-frame img{width:100%;height:auto;transition:filter .42s,transform .7s cubic-bezier(.22,1,.36,1);display:block}.portfolio-site .photo-overlay{opacity:0;background:linear-gradient(#0000 55%,#000000b8);justify-content:space-between;align-items:flex-end;gap:1rem;padding:1.25rem;transition:opacity .26s;display:flex;position:absolute;inset:0}.portfolio-site .photo-overlay>span{font-family:var(--serif);text-align:left;gap:.3rem;font-size:1.1rem;font-style:italic;display:grid}.portfolio-site .photo-overlay small{font-family:var(--mono);letter-spacing:.08em;opacity:.72;font-size:.52rem;font-style:normal}.portfolio-site .photo-overlay svg{flex:none;width:1rem}.portfolio-site .photo-frame button:hover img{filter:brightness(.86);transform:scale(1.018)}.portfolio-site .photo-frame button:hover .photo-overlay{opacity:1}.portfolio-site .photo-frame figcaption{display:none}.portfolio-site .gallery-endnote{background:var(--surface);text-align:center;place-items:center;min-height:72vh;padding:clamp(7rem,12vw,12rem) 1.5rem;display:grid}.portfolio-site .gallery-endnote h2{max-width:980px;margin-bottom:2.5rem}.portfolio-site .gallery-endnote a{border-bottom:1px solid var(--foreground);font-family:var(--mono);text-transform:uppercase;align-items:center;gap:.7rem;padding:.9rem 1.15rem;font-size:.65rem;text-decoration:none;transition:gap .18s;display:inline-flex}.portfolio-site .gallery-endnote a:hover{gap:1rem}.portfolio-site .gallery-endnote a svg{width:1rem}.portfolio-site .gallery-footer{width:min(100% - 3rem,1320px);max-width:none}.portfolio-site .gallery-footer>a:last-child{text-underline-offset:.3rem;justify-self:end}.portfolio-site .lightbox{z-index:100;color:#fff;background:#050505f5;place-items:center;padding:4.5rem clamp(3rem,8vw,8rem) 3rem;animation:.16s both lightbox-in;display:grid;position:fixed;inset:0}.portfolio-site .lightbox>img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 10rem);box-shadow:0 24px 90px #00000061}.portfolio-site .lightbox-topline{border-bottom:1px solid #ffffff29;justify-content:space-between;align-items:center;width:100%;min-height:4.5rem;padding:0 1.25rem;display:flex;position:absolute;top:0;left:0}.portfolio-site .lightbox-topline p{font-family:var(--mono);margin:0;font-size:.58rem}.portfolio-site .lightbox-topline p span{color:#fff}.portfolio-site .lightbox-topline button,.portfolio-site .lightbox-nav{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff38;border-radius:50%;place-items:center;width:2.5rem;height:2.5rem;padding:0;display:grid}.portfolio-site .lightbox-topline svg,.portfolio-site .lightbox-nav svg{width:1rem}.portfolio-site .lightbox-caption{font-family:var(--mono);text-transform:uppercase;justify-content:center;gap:.8rem;font-size:.56rem;display:flex;position:absolute;bottom:1.15rem;left:1.25rem;right:1.25rem}.portfolio-site .lightbox-caption p{margin:0}.portfolio-site .lightbox-caption span{color:#ffffff8c}.portfolio-site .lightbox-nav{width:2.8rem;height:2.8rem;position:absolute;top:50%;transform:translateY(-50%)}.portfolio-site .lightbox-previous{left:1.25rem}.portfolio-site .lightbox-next{right:1.25rem}.portfolio-site .lightbox-nav:hover,.portfolio-site .lightbox-topline button:hover{color:#111;background:#fff}@keyframes gallery-reveal{0%{opacity:0;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}@media (max-width:900px){.portfolio-site .gallery-header{grid-template-columns:1fr auto}.portfolio-site .gallery-header>p{display:none}.portfolio-site .gallery-intro{grid-template-columns:1fr;gap:2rem}.portfolio-site .photo-wall{columns:2}}@media (max-width:640px){.portfolio-site .gallery-header{padding:0 1rem}.portfolio-site .gallery-back-link{font-size:0}.portfolio-site .gallery-back-link svg{width:1rem}.portfolio-site .gallery-hero>img{object-position:42% center}.portfolio-site .gallery-hero-copy{bottom:6rem;left:1.25rem;right:1.25rem}.portfolio-site .gallery-hero-copy h1{font-size:clamp(4.3rem,22vw,6.5rem);line-height:.82}.portfolio-site .gallery-hero-copy h1 em{margin-left:1.4rem}.portfolio-site .gallery-hero-copy>div{flex-direction:column;gap:1rem}.portfolio-site .gallery-scroll-cue{bottom:1.5rem;right:1.25rem}.portfolio-site .gallery-intro{width:min(100% - 2rem,1320px);padding:6rem 0 3rem}.portfolio-site .gallery-intro h2,.portfolio-site .gallery-endnote h2{font-size:clamp(3rem,16vw,4.8rem)}.portfolio-site .gallery-toolbar{justify-content:flex-start;overflow-x:auto}.portfolio-site .gallery-toolbar button{min-width:6.1rem;padding:.95rem 1rem}.portfolio-site .photo-wall{columns:1}.portfolio-site .photo-overlay{display:none}.portfolio-site .photo-frame figcaption{font-family:var(--mono);text-transform:uppercase;color:var(--muted);justify-content:space-between;gap:1rem;padding:.75rem .9rem 1rem;font-size:.54rem;display:flex}.portfolio-site .lightbox{padding:4.5rem 0 4rem}.portfolio-site .lightbox>img{max-height:calc(100vh - 9rem)}.portfolio-site .lightbox-nav{top:auto;bottom:.8rem;transform:none}.portfolio-site .lightbox-previous{left:1rem}.portfolio-site .lightbox-next{right:1rem}.portfolio-site .lightbox-caption{max-width:calc(100% - 9rem);margin:0 auto;bottom:1.4rem}.portfolio-site .gallery-footer{width:min(100% - 2rem,1320px)}.portfolio-site .gallery-footer>a:last-child{justify-self:start}}.portfolio-site .gallery-page{--gallery-gutter:max(1.25rem, calc((100vw - 1320px) / 2));overflow:clip}.portfolio-site .cinematic-hero{--hero-scroll:0;color:#fff;background:#080808;min-height:100svh;position:relative;overflow:hidden}.portfolio-site .cinematic-hero-media{cursor:zoom-in;background:#080808;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.portfolio-site .cinematic-hero-media img{object-fit:cover;object-position:var(--focal-x,50%) var(--focal-y,50%);width:100%;max-width:none;height:100%;animation:7s cubic-bezier(.2,.75,.25,1) both cinematic-hero-scale}.portfolio-site .cinematic-hero-shade{pointer-events:none;background:linear-gradient(90deg,#000000ad,#00000014 66%),linear-gradient(#0000 52%,#000000a6);position:absolute;inset:0}.portfolio-site .cinematic-hero-copy{z-index:1;bottom:clamp(5.5rem,11vh,8rem);left:var(--gallery-gutter);pointer-events:none;max-width:760px;transform:translate3d(0, calc(var(--hero-scroll) * -3.5rem), 0);opacity:calc(1 - var(--hero-scroll) * .58);will-change:transform, opacity;position:absolute}.portfolio-site .cinematic-hero-copy>p{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;opacity:.78;margin-bottom:1.2rem;font-size:.64rem}.portfolio-site .cinematic-hero-copy h1{font-family:var(--serif);letter-spacing:-.075em;margin:0 0 2rem;font-size:clamp(4.2rem,11vw,9.8rem);font-weight:400;line-height:.78}.portfolio-site .cinematic-hero-copy h1 em{margin-left:clamp(1.4rem,8vw,7rem);font-weight:400}.portfolio-site .cinematic-hero-copy>div{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;opacity:.75;gap:2.5rem;font-size:.6rem;display:flex}.portfolio-site .cinematic-hero+.gallery-intro{padding-bottom:clamp(5rem,9vw,8rem)}.portfolio-site .chapter-nav{z-index:30;border-block:1px solid var(--border);background:color-mix(in srgb, var(--background) 91%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:100%;padding:0;display:block;position:sticky;inset:4.5rem 0 auto;transform:none}.portfolio-site .chapter-nav>div{justify-content:center;width:min(100%,1320px);margin:0 auto;display:flex}.portfolio-site .chapter-nav a{border-right:1px solid var(--border);min-height:3.6rem;font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.5rem;padding:.8rem clamp(.75rem,2.1vw,1.8rem);font-size:.6rem;text-decoration:none;transition:background .2s,color .2s;display:flex}.portfolio-site .chapter-nav a:first-child{border-left:1px solid var(--border)}.portfolio-site .chapter-nav a span{color:var(--quiet);font-size:.48rem}.portfolio-site .chapter-nav a:hover,.portfolio-site .chapter-nav a.active{background:var(--foreground);color:var(--background)}.portfolio-site .chapter-nav a.active span{color:color-mix(in srgb, var(--background) 64%, transparent)}.portfolio-site .chapter-nav a:after{display:none}.portfolio-site .editorial-story{background:var(--background)}.portfolio-site .editorial-chapter{width:min(100%,1440px);margin:0 auto;padding:clamp(7rem,12vw,12rem) clamp(1rem,4vw,3.75rem);scroll-margin-top:7.6rem}.portfolio-site .editorial-chapter+.editorial-chapter{border-top:1px solid var(--border)}.portfolio-site .chapter-heading{grid-template-columns:4rem minmax(0,1fr) minmax(220px,.45fr);align-items:end;gap:clamp(1rem,4vw,4rem);margin-bottom:clamp(4rem,9vw,8rem);display:grid}.portfolio-site .chapter-heading p{font-family:var(--mono);color:var(--quiet);margin:0 0 .6rem;font-size:.58rem}.portfolio-site .chapter-heading h2{font-family:var(--serif);letter-spacing:-.065em;margin:0;font-size:clamp(3.8rem,9vw,8.4rem);font-style:italic;font-weight:400;line-height:.8}.portfolio-site .chapter-heading>span{max-width:370px;font-family:var(--serif);color:var(--muted);padding-bottom:.5rem;font-size:clamp(1rem,1.8vw,1.25rem);line-height:1.55}.portfolio-site .chapter-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:row;align-items:center;gap:clamp(2rem,5vw,6rem) clamp(1rem,2.5vw,2.5rem);display:grid}.portfolio-site .editorial-frame{min-width:0;margin:0}.portfolio-site .editorial-frame.role-establishing{grid-column:1/-1}.portfolio-site .editorial-frame.role-portrait{grid-column:1/span 7}.portfolio-site .editorial-frame.role-portrait:nth-child(2n){grid-column:6/span 7}.portfolio-site .editorial-frame.role-supporting{grid-column:8/span 5}.portfolio-site .editorial-frame.role-supporting:nth-child(2n){grid-column:1/span 5}.portfolio-site .editorial-frame.role-faceFocus{grid-column:3/span 7}.portfolio-site .editorial-frame.role-faceFocus:nth-child(2n){grid-column:5/span 7}.portfolio-site .editorial-frame button{color:#fff;cursor:zoom-in;background:#111;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.portfolio-site .editorial-frame img{object-fit:cover;object-position:var(--focal-x,50%) var(--focal-y,50%);width:100%;height:auto;transition:filter .5s,transform .9s cubic-bezier(.22,1,.36,1);display:block}.portfolio-site .editorial-frame.role-establishing img{aspect-ratio:16/9}.portfolio-site .editorial-frame.role-portrait img,.portfolio-site .editorial-frame.role-faceFocus img{aspect-ratio:4/5}.portfolio-site .editorial-frame.role-supporting img{aspect-ratio:3/4}.portfolio-site .editorial-overlay{opacity:0;background:linear-gradient(#0000 65%,#00000080);justify-content:space-between;align-items:flex-end;padding:1rem;transition:opacity .3s;display:flex;position:absolute;inset:0}.portfolio-site .editorial-overlay small{font-family:var(--mono);letter-spacing:.08em;font-size:.52rem}.portfolio-site .editorial-overlay svg{width:1rem}.portfolio-site .editorial-frame button:hover img{filter:brightness(.88);transform:scale(1.015)}.portfolio-site .editorial-frame button:hover .editorial-overlay{opacity:1}.portfolio-site .editorial-frame figcaption{max-width:34rem;font-family:var(--serif);color:var(--muted);margin:.8rem 0 0;font-size:.96rem;font-style:italic;line-height:1.5}.portfolio-site [data-gallery-reveal]{opacity:0;transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1);transform:translateY(16px)}.portfolio-site [data-gallery-reveal].is-visible{opacity:1;transform:translate(0,0)}.portfolio-site .gallery-endnote{min-height:84vh}.portfolio-site .lightbox{overscroll-behavior:contain;touch-action:pan-y}.portfolio-site .lightbox>img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}@keyframes cinematic-hero-scale{0%{opacity:.75;transform:scale(1.065)}to{opacity:1;transform:scale(1)}}@media (max-width:900px){.portfolio-site .chapter-nav>div{scrollbar-width:none;justify-content:flex-start;overflow-x:auto}.portfolio-site .chapter-nav>div::-webkit-scrollbar{display:none}.portfolio-site .chapter-nav a{flex:none}.portfolio-site .chapter-heading{grid-template-columns:3rem 1fr}.portfolio-site .chapter-heading>span{grid-column:2}}@media (max-width:640px){.portfolio-site .cinematic-hero-media img{object-position:var(--mobile-focal-x,var(--focal-x,50%)) var(--mobile-focal-y,var(--focal-y,50%))}.portfolio-site .gallery-scroll-cue{left:1.25rem;right:auto}.portfolio-site .cinematic-hero-copy{max-width:calc(100vw - 2.5rem);bottom:6rem;left:1.25rem;right:1.25rem}.portfolio-site .cinematic-hero-copy h1{letter-spacing:-.06em;max-width:100%;font-size:clamp(3.35rem,17vw,5.2rem);line-height:.84}.portfolio-site .cinematic-hero-copy h1 em{white-space:nowrap;margin-left:.75rem}.portfolio-site .cinematic-hero-copy>div{flex-direction:column;gap:.8rem}.portfolio-site .chapter-nav a{min-height:3.2rem;padding:.75rem .9rem;font-size:.54rem}.portfolio-site .editorial-chapter{padding:6rem 1rem;scroll-margin-top:7rem}.portfolio-site .chapter-heading{margin-bottom:3.25rem;display:block}.portfolio-site .chapter-heading p{margin-bottom:1rem}.portfolio-site .chapter-heading h2{margin-bottom:1.5rem;font-size:clamp(3.5rem,19vw,5rem)}.portfolio-site .chapter-heading>span{max-width:29rem;display:block}.portfolio-site .chapter-grid{flex-direction:column;gap:3.5rem;display:flex}.portfolio-site .editorial-frame{width:100%}.portfolio-site .editorial-frame img,.portfolio-site .editorial-frame.role-establishing img,.portfolio-site .editorial-frame.role-portrait img,.portfolio-site .editorial-frame.role-supporting img,.portfolio-site .editorial-frame.role-faceFocus img{aspect-ratio:4/5;object-position:var(--mobile-focal-x,var(--focal-x,50%)) var(--mobile-focal-y,var(--focal-y,50%))}.portfolio-site .editorial-overlay{display:none}.portfolio-site .editorial-frame figcaption{margin:.7rem 0 0;font-size:.9rem;display:block}}@media (prefers-reduced-motion:reduce){.portfolio-site .cinematic-hero-media img{animation:none}.portfolio-site .cinematic-hero-copy,.portfolio-site [data-gallery-reveal]{opacity:1;transform:none}}.portfolio-site .story-index-hero{color:#fff;background:#080808;min-height:88svh;position:relative;overflow:hidden}.portfolio-site .story-index-hero>img{object-fit:cover;object-position:var(--focal-x,50%) var(--focal-y,50%);width:100%;max-width:none;height:100%;animation:7s cubic-bezier(.2,.75,.25,1) both cinematic-hero-scale;position:absolute;inset:0}.portfolio-site .story-index-hero-portrait>img{object-fit:contain;transform-origin:50%;width:100%;max-width:none;left:0;right:0}.portfolio-site .story-index-hero-shade{background:linear-gradient(90deg,#000000c2,#0000000f 72%),linear-gradient(#0000 45%,#00000094);position:absolute;inset:0}.portfolio-site .story-index-hero-copy{z-index:1;bottom:clamp(4rem,9vh,7rem);left:var(--gallery-gutter);max-width:850px;position:absolute}.portfolio-site .story-index-hero-copy>p{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;opacity:.8;margin:0 0 1.35rem;font-size:.62rem}.portfolio-site .story-index-hero-copy h1{font-family:var(--serif);letter-spacing:-.075em;margin:0 0 2.2rem;font-size:clamp(5rem,12vw,10rem);font-weight:400;line-height:.75}.portfolio-site .story-index-hero-copy h1 span{font-style:normal}.portfolio-site .story-index-hero-copy h1 em{margin-left:clamp(1.5rem,8vw,8rem);font-weight:400}.portfolio-site .story-index-hero-copy>a{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid #ffffffc7;align-items:center;gap:.8rem;padding-bottom:.5rem;font-size:.62rem;text-decoration:none;display:inline-flex}.portfolio-site .story-index-hero-copy>a svg{width:1rem;transition:transform .18s}.portfolio-site .story-index-hero-copy>a:hover svg{transform:translate(.3rem)}.portfolio-site .story-index-intro{grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr);align-items:end;gap:clamp(3rem,10vw,10rem);width:min(100% - 3rem,1320px);margin:0 auto;padding:clamp(7rem,12vw,12rem) 0 clamp(6rem,10vw,9rem);display:grid}.portfolio-site .story-index-intro h2{font-family:var(--serif);letter-spacing:-.06em;margin:0;font-size:clamp(3.5rem,7.5vw,7.2rem);font-weight:400;line-height:.88}.portfolio-site .story-index-intro h2 em{font-weight:400}.portfolio-site .story-index-intro>div:last-child>p{font-family:var(--serif);color:var(--muted);margin:0 0 1.5rem;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.55}.portfolio-site .story-index-intro>div:last-child>span{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--quiet);font-size:.58rem}.portfolio-site .story-card-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:clamp(5rem,9vw,9rem) clamp(1.25rem,2.5vw,2.75rem);width:min(100% - 3rem,1440px);margin:0 auto;padding:0 0 clamp(8rem,14vw,14rem);display:grid}.portfolio-site .story-card{grid-column:span 4;min-width:0}.portfolio-site .story-card-wide{grid-column:span 7}.portfolio-site .story-card-tall{grid-column:span 5}.portfolio-site .story-card>a{text-decoration:none;display:block}.portfolio-site .story-card figure{aspect-ratio:4/5;background:#111;margin:0 0 1.7rem;position:relative;overflow:hidden}.portfolio-site .story-card-wide figure{aspect-ratio:16/10}.portfolio-site .story-card figure img{object-fit:cover;object-position:var(--focal-x,50%) var(--focal-y,50%);width:100%;height:100%;transition:filter .5s,transform .9s cubic-bezier(.22,1,.36,1);display:block}.portfolio-site .story-card figure>span{color:#fff;width:2.25rem;height:2.25rem;font-family:var(--mono);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000038;border:1px solid #ffffff8c;border-radius:50%;place-items:center;font-size:.52rem;display:grid;position:absolute;top:1rem;left:1rem}.portfolio-site .story-card>a:hover figure img{filter:brightness(.84);transform:scale(1.018)}.portfolio-site .story-card-copy>p{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--quiet);margin:0 0 .8rem;font-size:.55rem}.portfolio-site .story-card-copy h2{font-family:var(--serif);letter-spacing:-.045em;text-wrap:balance;margin:0 0 1rem;font-size:clamp(2rem,3.5vw,3.8rem);font-weight:400;line-height:.94}.portfolio-site .story-card-standard .story-card-copy h2{font-size:clamp(1.8rem,2.8vw,3rem)}.portfolio-site .story-card-copy>span{max-width:42rem;font-family:var(--serif);color:var(--muted);font-size:clamp(1.05rem,1.35vw,1.25rem);line-height:1.5;display:block}.portfolio-site .story-card-copy>small{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.5rem;margin-top:1.3rem;font-size:.55rem;display:inline-flex}.portfolio-site .story-card-copy>small svg{width:.9rem}.portfolio-site .story-index-endnote{border-top:1px solid var(--border)}.portfolio-site .article-hero{color:#fff;background:#080808;min-height:92svh;position:relative;overflow:hidden}.portfolio-site .article-hero>button{cursor:zoom-in;background:#080808;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.portfolio-site .article-hero>button img{object-fit:cover;object-position:var(--focal-x,50%) var(--focal-y,50%);width:100%;max-width:none;height:100%;animation:7s cubic-bezier(.2,.75,.25,1) both cinematic-hero-scale}.portfolio-site .article-hero-portrait>button{place-items:center;display:grid}.portfolio-site .article-hero-portrait>button img{object-fit:contain;width:auto;max-width:none;height:92svh}.portfolio-site .article-hero-shade{pointer-events:none;background:linear-gradient(90deg,#000000b8,#0000000d 70%),linear-gradient(#0000 46%,#000000ad);position:absolute;inset:0}.portfolio-site .article-hero-copy{z-index:1;right:var(--gallery-gutter);bottom:clamp(4rem,9vh,7rem);left:var(--gallery-gutter);pointer-events:none;position:absolute}.portfolio-site .article-hero-copy>p{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;opacity:.8;margin:0 0 1.1rem;font-size:.61rem}.portfolio-site .article-hero-copy h1{max-width:1100px;font-family:var(--serif);letter-spacing:-.065em;text-wrap:balance;margin:0 0 1.8rem;font-size:clamp(4rem,9vw,8.2rem);font-weight:400;line-height:.82}.portfolio-site .article-hero-copy>span{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;opacity:.78;font-size:.57rem}.portfolio-site .article-lead{grid-template-columns:minmax(110px,.26fr) minmax(0,1fr);gap:clamp(2rem,7vw,7rem);width:min(100% - 3rem,1260px);margin:0 auto;padding:clamp(7rem,13vw,13rem) 0 clamp(7rem,12vw,11rem);display:grid}.portfolio-site .article-lead>div:first-child{flex-direction:column;justify-content:space-between;display:flex}.portfolio-site .article-lead>div:first-child>span{font-family:var(--mono);letter-spacing:.08em;color:var(--quiet);font-size:.56rem}.portfolio-site .article-copy{max-width:900px}.portfolio-site .article-copy>p{font-family:var(--serif);letter-spacing:-.012em;color:var(--muted);text-wrap:pretty;margin:0;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.6}.portfolio-site .article-copy>p+p{margin-top:1.4rem}.portfolio-site .article-copy>.article-deck{letter-spacing:-.035em;color:var(--foreground);margin-bottom:clamp(2rem,4vw,3.5rem);font-size:clamp(2.2rem,4.25vw,4.2rem);line-height:1.12}.portfolio-site .article-lead dl{border-top:1px solid var(--border);grid-column:2;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0 0;padding-top:1.5rem;display:grid}.portfolio-site .article-lead dl div{flex-direction:column;gap:.5rem;display:flex}.portfolio-site .article-lead dt{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--quiet);font-size:.5rem}.portfolio-site .article-lead dd{font-family:var(--serif);margin:0;font-size:1.1rem}.portfolio-site .article-photo-grid{width:min(100%,1440px);margin:0 auto;padding:0 clamp(1rem,4vw,3.75rem) clamp(9rem,15vw,15rem)}.portfolio-site .article-photo-grid .editorial-frame figcaption{margin-top:.9rem}.portfolio-site .article-photo-grid .editorial-frame figcaption>span{margin:0}.portfolio-site .article-pagination{border-top:1px solid var(--border);grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);min-height:34rem;display:grid}.portfolio-site .article-pagination>a{align-items:center;min-height:34rem;padding:clamp(2rem,5vw,5rem);text-decoration:none;display:flex;position:relative;overflow:hidden}.portfolio-site .article-previous{border-right:1px solid var(--border);gap:1.5rem}.portfolio-site .article-previous>svg{flex:none;width:1.2rem;transition:transform .18s}.portfolio-site .article-previous:hover>svg{transform:translate(-.35rem)}.portfolio-site .article-pagination span{z-index:1;max-width:38rem;font-family:var(--serif);letter-spacing:-.045em;flex-wrap:wrap;align-items:center;gap:.8rem;font-size:clamp(2rem,4vw,4.3rem);line-height:.95;display:flex;position:relative}.portfolio-site .article-pagination small{width:100%;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--quiet);margin-bottom:.6rem;font-size:.54rem;display:block}.portfolio-site .article-next{color:#fff}.portfolio-site .article-next>img{object-fit:cover;object-position:var(--focal-x,50%) var(--focal-y,50%);width:100%;max-width:none;height:100%;transition:transform .9s cubic-bezier(.22,1,.36,1),filter .4s;position:absolute;inset:0}.portfolio-site .article-next:after{content:"";background:linear-gradient(90deg,#000000b8,#0000002e);position:absolute;inset:0}.portfolio-site .article-next span{color:#fff}.portfolio-site .article-next small{color:#ffffffb8}.portfolio-site .article-next span>svg{width:1.3rem;transition:transform .18s}.portfolio-site .article-next:hover>img{filter:brightness(.86);transform:scale(1.018)}.portfolio-site .article-next:hover span>svg{transform:translate(.35rem)}.portfolio-site .article-next-index{background:var(--foreground);color:var(--background)}.portfolio-site .article-next-index:after{display:none}.portfolio-site .article-next-index span{color:var(--background)}.portfolio-site .article-next-index small{color:color-mix(in srgb, var(--background) 65%, transparent)}.portfolio-site .article-not-found main{text-align:center;place-content:center;min-height:82svh;padding:9rem 1.5rem 5rem;display:grid}.portfolio-site .article-not-found h1{max-width:800px;font-family:var(--serif);letter-spacing:-.06em;margin:0 0 2rem;font-size:clamp(3.4rem,9vw,8rem);font-weight:400;line-height:.86}.portfolio-site .article-not-found main>a{font-family:var(--mono);text-transform:uppercase;justify-content:center;align-items:center;gap:.7rem;font-size:.6rem;display:inline-flex}@media (max-width:900px){.portfolio-site .story-index-intro{grid-template-columns:1fr;gap:2rem}.portfolio-site .story-card{grid-column:span 6}.portfolio-site .story-card-wide{grid-column:1/-1}.portfolio-site .story-card-tall{grid-column:span 6}.portfolio-site .article-lead{grid-template-columns:7rem 1fr}.portfolio-site .article-pagination{grid-template-columns:1fr 1fr}}@media (max-width:700px){.portfolio-site .story-index-hero{min-height:90svh}.portfolio-site .story-index-hero>img,.portfolio-site .article-hero>button img{object-position:var(--mobile-focal-x,var(--focal-x,50%)) var(--mobile-focal-y,var(--focal-y,50%))}.portfolio-site .story-index-hero-copy,.portfolio-site .article-hero-copy{bottom:4.5rem;left:1.25rem;right:1.25rem}.portfolio-site .story-index-hero-copy h1{font-size:clamp(4.2rem,22vw,6.2rem);line-height:.78}.portfolio-site .story-index-intro{width:min(100% - 2rem,1320px);padding:6rem 0 5rem}.portfolio-site .story-index-intro h2{font-size:clamp(3.4rem,17vw,5rem)}.portfolio-site .story-card-grid{width:min(100% - 2rem,1440px);display:block}.portfolio-site .story-card{margin-bottom:5.5rem}.portfolio-site .story-card figure,.portfolio-site .story-card-wide figure{aspect-ratio:4/5;margin-bottom:1.35rem}.portfolio-site .story-card figure img{object-position:var(--mobile-focal-x,var(--focal-x,50%)) var(--mobile-focal-y,var(--focal-y,50%))}.portfolio-site .article-lead{width:min(100% - 2rem,1260px);padding:6rem 0;display:block}.portfolio-site .article-lead>div:first-child{flex-direction:row;margin-bottom:2.5rem;display:flex}.portfolio-site .article-photo-grid{flex-direction:column;gap:4.5rem;padding:0 1rem 7rem;display:flex}.portfolio-site .article-pagination{min-height:0;display:block}.portfolio-site .article-pagination>a{min-height:25rem}.portfolio-site .article-previous{border-right:0;border-bottom:1px solid var(--border);min-height:15rem!important}}.portfolio-site .calendar-page{background:var(--background);min-height:100vh}.portfolio-site .calendar-header{border-bottom:1px solid var(--border);grid-template-columns:1fr auto 1fr;align-items:center;min-height:4.75rem;padding:0 max(1.25rem,50vw - 660px);display:grid}.portfolio-site .calendar-header>p{font-family:var(--mono);letter-spacing:.08em;text-align:center;text-transform:uppercase;color:var(--quiet);margin:0;font-size:.55rem}.portfolio-site .calendar-home-link{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.42rem;padding:.55rem .7rem;font-size:.56rem;text-decoration:none;display:inline-flex}.portfolio-site .calendar-home-link svg{width:.85rem}.portfolio-site .calendar-home-link:hover{color:var(--foreground)}.portfolio-site .calendar-hero,.portfolio-site .calendar-board,.portfolio-site .calendar-unavailable,.portfolio-site .calendar-loading{width:min(100% - 3rem,1260px);margin:0 auto}.portfolio-site .calendar-hero{padding:clamp(4.5rem,10vw,8rem) 0 clamp(3.5rem,7vw,5.5rem)}.portfolio-site .calendar-eyebrow{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--quiet);margin:0 0 .9rem;font-size:.56rem}.portfolio-site .calendar-hero h1,.portfolio-site .calendar-board h2,.portfolio-site .calendar-unavailable h2,.portfolio-site .calendar-admin-intro h1,.portfolio-site .calendar-admin-card h2{font-family:var(--serif);letter-spacing:-.065em;margin:0;font-weight:400}.portfolio-site .calendar-hero h1{max-width:760px;font-size:clamp(4.2rem,10vw,8.6rem);line-height:.78}.portfolio-site .calendar-hero h1 em,.portfolio-site .calendar-board h2 em,.portfolio-site .calendar-admin-intro h1 em{margin-left:clamp(.75rem,5vw,3.4rem);font-weight:400}.portfolio-site .calendar-deck{max-width:570px;font-family:var(--serif);color:var(--muted);margin:2rem 0 0;font-size:clamp(1.18rem,2vw,1.55rem);line-height:1.42}.portfolio-site .calendar-rules{border-top:1px solid var(--border);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--quiet);flex-wrap:wrap;gap:.65rem 1.5rem;margin-top:2.5rem;padding-top:1rem;font-size:.53rem;display:flex}.portfolio-site .calendar-board{border-top:1px solid var(--border);padding:clamp(2.5rem,6vw,5rem) 0 clamp(4rem,8vw,7rem)}.portfolio-site .calendar-board-heading{grid-template-columns:minmax(0,1fr) minmax(15rem,.7fr);align-items:end;gap:2rem;display:grid}.portfolio-site .calendar-board h2{font-size:clamp(3rem,7vw,6.2rem);line-height:.8}.portfolio-site .calendar-board-note{gap:.9rem;padding-bottom:.4rem;display:grid}.portfolio-site .calendar-board-note p{font-family:var(--mono);letter-spacing:.025em;color:var(--muted);grid-template-columns:6.6rem 1fr;gap:.75rem;margin:0;font-size:.56rem;line-height:1.55;display:grid}.portfolio-site .calendar-board-note strong{color:var(--foreground);text-transform:uppercase;font-weight:500}.portfolio-site .calendar-voting-help{border:1px solid var(--border);grid-template-columns:1fr auto;align-items:center;gap:1.5rem;margin:2.5rem 0;padding:1.1rem 1.25rem;display:grid}.portfolio-site .calendar-voting-help strong{font-family:var(--serif);font-size:1.25rem;font-weight:400}.portfolio-site .calendar-voting-help>div>p{font-family:var(--mono);letter-spacing:.04em;color:var(--quiet);margin:.35rem 0 0;font-size:.54rem}.portfolio-site .calendar-check{justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.portfolio-site .turnstile-widget{min-height:65px}.portfolio-site .calendar-note,.portfolio-site .calendar-notice{font-family:var(--mono);letter-spacing:.03em;color:var(--quiet);margin:0;font-size:.54rem;line-height:1.55}.portfolio-site .calendar-note-ready{color:#287451;align-items:center;gap:.4rem;display:flex}.portfolio-site .calendar-note svg{width:.8rem}.portfolio-site .calendar-notice{border:1px solid var(--border);color:var(--foreground);margin-bottom:1rem;padding:.75rem .9rem}.portfolio-site .calendar-day-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.portfolio-site .calendar-day-grid>li{min-width:0}.portfolio-site .calendar-day{border-right:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;min-height:13.75rem;padding:1rem;display:flex}.portfolio-site .calendar-day h2{letter-spacing:-.045em;overflow-wrap:anywhere;margin:1rem 0 0;font-size:clamp(1.45rem,2.2vw,2.1rem);line-height:1.1}.portfolio-site .calendar-day-topline,.portfolio-site .calendar-day-meta{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--quiet);justify-content:space-between;gap:.45rem;font-size:.52rem;display:flex}.portfolio-site .calendar-day-title{justify-content:space-between;align-items:flex-start;gap:.7rem;margin:1.6rem 0 auto;display:flex}.portfolio-site .calendar-day-title h2{font-family:var(--serif);letter-spacing:-.045em;margin:0;font-size:clamp(1.45rem,2.2vw,2.1rem);font-weight:400;line-height:.92}.portfolio-site .calendar-day-title>span{border:1px solid var(--border);font-family:var(--mono);letter-spacing:.03em;color:var(--quiet);flex:none;padding:.27rem .36rem;font-size:.5rem}.portfolio-site .calendar-day-meta{font-family:var(--sans);letter-spacing:normal;text-transform:none;margin:1rem 0;font-size:.85rem;line-height:1.5;display:block}.portfolio-site .calendar-day-status{color:var(--foreground)}.portfolio-site .calendar-day-status-published{color:#287451}.portfolio-site .calendar-day-status-moved,.portfolio-site .calendar-day-status-missed{color:#a76519}.portfolio-site .calendar-vote-button{border:1px solid var(--foreground);background:var(--foreground);min-height:2.25rem;color:var(--background);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;gap:.4rem;margin-top:.9rem;padding:.5rem .65rem;font-size:.5rem;transition:color .18s,background .18s;display:inline-flex}.portfolio-site .calendar-vote-button:hover:not(:disabled){color:var(--foreground);background:0 0}.portfolio-site .calendar-vote-button:disabled{border-color:var(--border);color:var(--quiet);cursor:not-allowed;background:0 0}.portfolio-site .calendar-vote-button svg{width:.76rem}.portfolio-site .calendar-unavailable,.portfolio-site .calendar-loading{min-height:45svh;padding:clamp(5rem,12vw,10rem) 0}.portfolio-site .calendar-unavailable h2{max-width:650px;font-size:clamp(3rem,7vw,6.5rem);line-height:.84}.portfolio-site .calendar-unavailable p:not(.calendar-eyebrow){max-width:560px;font-family:var(--serif);color:var(--muted);margin:1.4rem 0 0;font-size:1.2rem;line-height:1.55}.portfolio-site .calendar-loading{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--quiet);font-size:.65rem}.portfolio-site .calendar-footer{width:min(100% - 3rem,1320px);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--quiet);justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:2.2rem 0;font-size:.55rem;display:flex}.portfolio-site .calendar-footer p{margin:0}.portfolio-site .calendar-footer>a:last-child{color:var(--foreground);text-decoration:none}@media (max-width:980px){.portfolio-site .calendar-day-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.portfolio-site .calendar-header{grid-template-columns:1fr auto}.portfolio-site .calendar-header>p{display:none}.portfolio-site .calendar-hero,.portfolio-site .calendar-board,.portfolio-site .calendar-unavailable,.portfolio-site .calendar-loading{width:min(100% - 2rem,1260px)}.portfolio-site .calendar-board-heading,.portfolio-site .calendar-voting-help{grid-template-columns:1fr}.portfolio-site .calendar-board-note{padding:0}.portfolio-site .calendar-voting-help{gap:.9rem}.portfolio-site .calendar-check{flex-wrap:wrap;justify-content:flex-start}.portfolio-site .calendar-day-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-site .calendar-day{min-height:12.5rem}.portfolio-site .calendar-footer{grid-template-columns:1fr;display:grid}}@media (max-width:480px){.portfolio-site .calendar-day-grid{grid-template-columns:1fr}}.portfolio-site .calendar-admin-main{width:min(100% - 3rem,1120px);margin:0 auto;padding-bottom:9rem}.portfolio-site .calendar-admin-intro{border-bottom:1px solid var(--border);padding:clamp(6rem,12vw,10rem) 0 5rem}.portfolio-site .calendar-admin-intro h1{font-size:clamp(4rem,9vw,8rem);line-height:.78}.portfolio-site .calendar-admin-intro>p:last-child{max-width:600px;font-family:var(--serif);color:var(--muted);margin:2.5rem 0 0 auto;font-size:1.3rem;line-height:1.5}.portfolio-site .calendar-admin-card{border:1px solid var(--border);background:var(--surface);max-width:720px;margin:4.5rem 0;padding:clamp(1.5rem,4vw,3.2rem)}.portfolio-site .calendar-admin-card h2{font-size:clamp(2.2rem,4vw,4rem);line-height:.88}.portfolio-site .calendar-admin-card>p:not(.calendar-eyebrow){max-width:560px;font-family:var(--serif);color:var(--muted);margin:1.2rem 0 0;line-height:1.5}.portfolio-site .calendar-admin-card label,.portfolio-site .calendar-admin-url{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;gap:.5rem;margin-top:1.8rem;font-size:.55rem;display:grid}.portfolio-site .calendar-admin-card input,.portfolio-site .calendar-admin-url input{border:1px solid var(--border-strong);background:var(--background);width:100%;min-height:2.8rem;color:var(--foreground);font:inherit;text-transform:none;border-radius:0;padding:.55rem .7rem}.portfolio-site .calendar-admin-session{border-bottom:1px solid var(--border);font-family:var(--mono);letter-spacing:.04em;justify-content:space-between;align-items:center;gap:1rem;margin-top:3rem;padding:1rem 0;font-size:.56rem;display:flex}.portfolio-site .calendar-admin-session span,.portfolio-site .calendar-admin-session button{align-items:center;gap:.45rem;display:inline-flex}.portfolio-site .calendar-admin-session svg{width:.85rem}.portfolio-site .calendar-admin-session button,.portfolio-site .calendar-admin-actions button{color:var(--foreground);font-family:var(--mono);letter-spacing:.05em;text-underline-offset:.3rem;text-transform:uppercase;cursor:pointer;background:0 0;border:0;font-size:.55rem;text-decoration:underline}.portfolio-site .calendar-admin-slots{margin-top:4rem}.portfolio-site .calendar-admin-slots>h2{font-family:var(--serif);letter-spacing:-.05em;margin:0 0 1rem;font-size:clamp(2.5rem,4.5vw,4.5rem);font-weight:400}.portfolio-site .calendar-admin-slots article{border-top:1px solid var(--border);grid-template-columns:3rem minmax(10rem,1fr) minmax(14rem,1fr) auto;align-items:end;gap:1rem;padding:1.5rem 0;display:grid}.portfolio-site .calendar-admin-slots article>span,.portfolio-site .calendar-admin-slots small{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--quiet);font-size:.54rem}.portfolio-site .calendar-admin-slots strong{font-family:var(--serif);margin-bottom:.4rem;font-size:1.45rem;font-weight:400;display:block}.portfolio-site .calendar-admin-url{margin:0}.portfolio-site .calendar-admin-actions{gap:.6rem;padding-bottom:.7rem;display:flex}@media (max-width:760px){.portfolio-site .calendar-header{grid-template-columns:1fr auto}.portfolio-site .calendar-header>p{display:none}.portfolio-site .calendar-rules{grid-template-columns:1fr}.portfolio-site .calendar-spotlight{display:block}.portfolio-site .calendar-spotlight article,.portfolio-site .calendar-spotlight article:first-child{border-right:0;border-bottom:1px solid var(--border);min-height:0;padding:3rem 0}.portfolio-site .calendar-section-heading,.portfolio-site .calendar-audit-note{display:block}.portfolio-site .calendar-section-heading .calendar-eyebrow,.portfolio-site .calendar-audit-note .calendar-eyebrow{margin-bottom:1.7rem}.portfolio-site .calendar-slot{grid-template-columns:2.4rem 1fr auto;gap:.65rem}.portfolio-site .calendar-slot time,.portfolio-site .calendar-slot strong{grid-column:2}.portfolio-site .calendar-slot small{grid-area:1/3/span 2;align-self:center}.portfolio-site .calendar-slot a{grid-area:3/3}.portfolio-site .calendar-topic-grid{grid-template-columns:1fr}.portfolio-site .calendar-topic-card{min-height:0}.portfolio-site .calendar-note,.portfolio-site .calendar-notice,.portfolio-site .turnstile-widget{margin-left:0}.portfolio-site .calendar-audit-note p:last-child{grid-column:auto;margin-top:1.8rem}.portfolio-site .calendar-footer{grid-template-columns:1fr;display:grid}.portfolio-site .calendar-admin-slots article{grid-template-columns:2rem minmax(0,1fr)}.portfolio-site .calendar-admin-url,.portfolio-site .calendar-admin-actions{grid-column:2}}
