@font-face{font-family:neueMontreal;src:url(../media/PPNeueMontreal_Book-s.p.65d7d08f.otf)format("opentype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:neueMontreal;src:url(../media/PPNeueMontreal_Italic-s.p.109ff67e.otf)format("opentype");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:neueMontreal;src:url(../media/PPNeueMontreal_Medium-s.p.44ff7f84.otf)format("opentype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:neueMontreal;src:url(../media/PPNeueMontreal_Bold-s.p.bfeca283.otf)format("opentype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:neueMontreal Fallback;src:local(Arial);ascent-override:101.42%;descent-override:25.62%;line-gap-override:0.0%;size-adjust:94.46%}.neuemontreal_4df9b1a4-module__ZE0lYG__className{font-family:neueMontreal,neueMontreal Fallback}.neuemontreal_4df9b1a4-module__ZE0lYG__variable{--font-neue-montreal:"neueMontreal","neueMontreal Fallback"}
@font-face{font-family:editorialNew;src:url(../media/PPEditorialNew_Ultralight-s.p.682d4332.otf)format("opentype");font-display:swap;font-weight:200;font-style:normal}@font-face{font-family:editorialNew;src:url(../media/PPEditorialNew_UltralightItalic-s.p.fca85b81.otf)format("opentype");font-display:swap;font-weight:200;font-style:italic}@font-face{font-family:editorialNew;src:url(../media/PPEditorialNew_Regular-s.p.a670947c.otf)format("opentype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:editorialNew;src:url(../media/PPEditorialNew_Italic-s.p.51e4b1bd.otf)format("opentype");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:editorialNew;src:url(../media/PPEditorialNew_Ultrabold-s.p.52ce8704.otf)format("opentype");font-display:swap;font-weight:800;font-style:normal}@font-face{font-family:editorialNew;src:url(../media/PPEditorialNew_UltraboldItalic-s.p.e8ca24ab.otf)format("opentype");font-display:swap;font-weight:800;font-style:italic}@font-face{font-family:editorialNew Fallback;src:local(Arial);ascent-override:95.88%;descent-override:32.69%;line-gap-override:10.9%;size-adjust:91.78%}.editorialnew_9ddaec06-module__EGES2G__className{font-family:editorialNew,editorialNew Fallback}.editorialnew_9ddaec06-module__EGES2G__variable{--font-editorial-new:"editorialNew","editorialNew Fallback"}
@font-face{font-family:neueMontrealMono;src:url(../media/PPNeueMontrealMono_Book-s.p.6c7a8d50.otf)format("opentype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:neueMontrealMono;src:url(../media/PPNeueMontrealMono_Medium-s.p.22596522.otf)format("opentype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:neueMontrealMono;src:url(../media/PPNeueMontrealMono_Bold-s.p.2b79edfb.otf)format("opentype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:neueMontrealMono Fallback;src:local(Arial);ascent-override:72.86%;descent-override:18.4%;line-gap-override:0.0%;size-adjust:131.49%}.neuemontrealmono_99f3ec5c-module__pW-foq__className{font-family:neueMontrealMono,neueMontrealMono Fallback}.neuemontrealmono_99f3ec5c-module__pW-foq__variable{--font-neue-montreal-mono:"neueMontrealMono","neueMontrealMono Fallback"}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;tab-size:4}:root{--color-white:#fff;--color-black:#000;--gray-50:#f7f7f7;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#585a59;--gray-700:#171717;--gray-800:#1f2937;--gray-900:#131413;--gray-950:#030712;--surface-dark-1:#0a0a0a;--surface-dark-2:#131413;--surface-dark-3:#1a1a1a;--surface-dark-4:#2a2a2a;--surface-light-1:#ededed;--red-500:#ef4444;--red-600:#dc2626;--red-700:#b91c1c;--alpha-black-80:#000c;--alpha-black-10:#0000001a;--alpha-black-5:#0000000d;--alpha-white-80:#fffc;--alpha-white-10:#ffffff1a;--alpha-dark-bg-80:#0a0a0acc;--color-background:var(--color-white);--color-background-alt:var(--gray-50);--color-surface:var(--color-white);--color-surface-dark:var(--gray-900);--color-surface-darker:var(--gray-950);--color-foreground:var(--gray-700);--color-text-primary:var(--gray-900);--color-text-secondary:var(--gray-600);--color-text-muted:var(--gray-500);--color-text-accent:var(--alpha-black-80);--color-accent:var(--red-600);--color-accent-hover:var(--red-700);--color-border:var(--alpha-black-5);--color-border-nav:var(--gray-200);--color-nav-bg:var(--alpha-white-80);--color-hover-overlay:var(--alpha-black-5);--color-shadow:var(--alpha-black-10)}body{--font-sans:var(--font-neue-montreal);--font-serif:var(--font-editorial-new);--font-mono:var(--font-neue-montreal-mono)}:root.light{--color-background:var(--color-white);--color-background-alt:var(--gray-50);--color-surface:var(--color-white);--color-surface-dark:var(--gray-900);--color-surface-darker:var(--gray-950);--color-foreground:var(--gray-700);--color-text-primary:var(--gray-900);--color-text-secondary:var(--gray-600);--color-text-muted:var(--gray-500);--color-text-accent:var(--alpha-black-80);--color-accent:var(--red-600);--color-accent-hover:var(--red-700);--color-border:var(--alpha-black-5);--color-border-nav:var(--gray-200);--color-nav-bg:var(--alpha-white-80);--color-hover-overlay:var(--alpha-black-5)}:root.dark{--color-background:var(--surface-dark-1);--color-background-alt:var(--surface-dark-2);--color-surface:var(--surface-dark-2);--color-surface-dark:var(--surface-dark-3);--color-surface-darker:var(--surface-dark-4);--color-foreground:var(--surface-light-1);--color-text-primary:var(--color-white);--color-text-secondary:var(--gray-300);--color-text-muted:var(--gray-400);--color-text-accent:var(--alpha-white-80);--color-accent:var(--red-500);--color-accent-hover:var(--red-600);--color-border:var(--alpha-white-10);--color-border-nav:var(--gray-800);--color-nav-bg:var(--alpha-dark-bg-80);--color-hover-overlay:var(--alpha-white-10)}@media (prefers-color-scheme:dark){html:not(.light):not(.dark){--color-background:var(--surface-dark-1);--color-background-alt:var(--surface-dark-2);--color-surface:var(--surface-dark-2);--color-surface-dark:var(--surface-dark-3);--color-surface-darker:var(--surface-dark-4);--color-foreground:var(--surface-light-1);--color-text-primary:var(--color-white);--color-text-secondary:var(--gray-300);--color-text-muted:var(--gray-400);--color-text-accent:var(--alpha-white-80);--color-accent:var(--red-500);--color-accent-hover:var(--red-600);--color-border:var(--alpha-white-10);--color-border-nav:var(--gray-800);--color-nav-bg:var(--alpha-dark-bg-80);--color-hover-overlay:var(--alpha-white-10)}}@layer base{body{background:var(--color-background);color:var(--color-foreground);font-family:var(--font-neue-montreal),sans-serif;line-height:1.4em}h1,h2,h3,h4,h5,h6,.hero-headline,.pull-quote{font-family:var(--font-editorial-new),serif}blockquote,code,pre,kbd,samp{font-family:var(--font-neue-montreal-mono),monospace}}h1{margin-bottom:1em;font-size:1.875rem;font-weight:600;line-height:1.25}@media (min-width:768px){h1{margin-bottom:1em;font-size:3.75rem}}h2{margin-bottom:1em;font-size:2.25rem;font-weight:600;line-height:1.5em}h3{font-size:1.875rem;font-weight:600;line-height:1.25em}h4{font-size:1.25rem;font-weight:600}.section{align-items:flex-start;min-height:100vh;padding:6rem 0;display:flex}.section-bg-primary{background-color:var(--color-background)}.section-bg-alt{background-color:var(--color-background-alt)}.section-bg-surface{background-color:var(--color-surface)}.container{width:100%;max-width:1280px;margin:0 auto}.container-narrow{width:100%;max-width:896px;margin:0 auto}.container-wide{width:100%;max-width:1536px;margin:0 auto}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:2rem}.card-large{padding:3rem}@media (min-width:768px){.card-large{padding:3rem}}.service-grid{grid-template-columns:1fr;gap:2rem;margin-bottom:3rem;display:grid}@media (min-width:768px){.service-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}.engagement-grid{grid-template-columns:1fr;gap:2rem;margin-bottom:2rem;display:grid}@media (min-width:768px){.engagement-grid{grid-template-columns:repeat(2,1fr);gap:2rem}}.service-card{margin-bottom:1.5rem}.service-card h3,.service-card h4{margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.service-card p:first-of-type{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;font-size:.875rem}.engagement-models h3{margin-top:2rem;margin-bottom:2rem;font-size:1.875rem;font-weight:600}.case-studies-intro{margin-bottom:3rem;font-size:1.25rem}.case-studies-grid{grid-template-columns:1fr;gap:3rem;display:grid}.case-study-card{border-bottom:1px solid var(--color-border-nav);margin-bottom:3rem;padding-bottom:3rem}.case-study-card:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.case-study-card h3{margin-bottom:.5rem;font-size:1.875rem;font-weight:600}.case-study-card>p:first-of-type{color:var(--color-text-secondary);margin-bottom:.25rem;font-size:1.125rem;font-weight:500}.case-study-card>p:nth-of-type(2){color:var(--color-text-muted);margin-bottom:1.5rem;font-size:.875rem}.case-study-card h4{margin-top:1.5rem;margin-bottom:.75rem;font-size:1.125rem;font-weight:600}.case-study-card ul{margin-bottom:1.5rem}.why-me-intro{margin-bottom:3rem;font-size:1.25rem}.why-me-grid{grid-template-columns:1fr;gap:2.5rem;display:grid}@media (min-width:768px){.why-me-grid{grid-template-columns:repeat(2,1fr);gap:3rem}}.why-me-card h3{margin-bottom:.75rem;font-size:1.5rem;font-weight:600}.why-me-card p{font-size:1rem;line-height:1.6}.contact-intro{max-width:48rem;margin-bottom:3rem;font-size:1.25rem}.contact-scheduler{margin-bottom:3rem}.contact-email{text-align:center;font-size:1rem}.contact-email a,.email-link{color:var(--color-accent);text-decoration:none;transition:-webkit-text-decoration .2s,text-decoration .2s}.contact-email a:visited,.email-link:visited{color:var(--color-accent)}.contact-email a:hover,.email-link:hover{text-decoration:underline}.resume-page{padding:4rem 0}.resume-header{margin-bottom:3rem}.resume-contact{color:var(--color-text-secondary);font-size:1rem}.resume-contact a{color:var(--color-accent);text-decoration:none;transition:-webkit-text-decoration .2s,text-decoration .2s}.resume-contact a:hover{text-decoration:underline}.resume-section{padding:4rem 0}.resume-job{margin-bottom:1.875rem}.resume-job:last-child{margin-bottom:0}.resume-job-title{margin-bottom:.25rem;font-size:1.5rem;font-weight:600}.resume-company{color:var(--color-accent);margin-bottom:.25rem;font-size:1.125rem;font-weight:500}.resume-date{color:var(--color-text-muted);margin-bottom:1rem;font-size:.875rem}.resume-description{margin-bottom:1rem;font-size:1rem;line-height:1.6}.resume-achievements h4{margin-bottom:.75rem;font-size:1rem;font-weight:600}.resume-achievements ul{margin-bottom:1rem}.resume-achievements li strong{font-weight:600}.resume-tech{color:var(--color-text-secondary);font-size:.875rem}.resume-tech strong{font-weight:600}.resume-skill-card{margin-bottom:2rem}.resume-skill-card h3{margin-bottom:.75rem;font-size:1.25rem;font-weight:600}.resume-skill-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:768px){.resume-skill-grid{grid-template-columns:repeat(2,1fr)}}.resume-skill-category{margin-bottom:.25rem;font-weight:500}.meetings-iframe-container{background-color:var(--color-white);box-shadow:0 1px 3px var(--color-shadow);border-radius:.5rem;padding:2rem;overflow:hidden}.dark .meetings-iframe-container{background-color:var(--surface-dark-3);box-shadow:0 1px 3px #0000004d}.meetings-iframe-container iframe{border:none;width:100%;min-height:600px}.cta-buttons{flex-direction:column;gap:1.5rem;display:flex}@media (min-width:768px){.cta-buttons{flex-direction:row;align-items:center}}.btn-primary{background-color:var(--color-accent);color:var(--color-white);border-radius:.5rem;justify-content:center;align-items:center;padding:1.5rem 2rem;font-size:1rem;font-weight:500;line-height:1;text-decoration:none;transition:background-color .2s;display:inline-flex}.btn-primary:hover{background-color:var(--color-accent-hover)}.btn-secondary{background-color:var(--color-background);color:var(--color-text-primary);border-radius:.5rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:500;transition:opacity .2s;display:inline-block}.btn-secondary:hover{opacity:.9}.link-underline{color:var(--color-text-primary);text-decoration:none;transition:-webkit-text-decoration .2s,text-decoration .2s}.link-underline:visited{color:var(--color-text-primary)}.link-underline:hover{text-decoration:underline}.nav-container{z-index:50;background-color:var(--color-nav-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border-nav);width:100%;position:sticky;top:0}:root.light .nav-container,:root.dark .nav-container{background-color:var(--color-nav-bg)}.nav-link{color:var(--color-text-secondary);font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s,-webkit-text-decoration .2s,text-decoration .2s}.nav-link:hover{color:var(--color-text-primary);text-decoration:underline}.footer{background-color:var(--color-surface);border-top:1px solid var(--color-border);padding:4rem 0}.footer-link{color:var(--color-text-secondary);font-size:.875rem;transition:color .2s}.footer-link:hover,:root.dark .footer-link:hover{color:var(--color-text-accent)}.footer-heading{color:var(--color-text-primary);margin-bottom:1rem;font-size:1rem;font-weight:600}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-accent,:root.dark .text-accent{color:var(--color-text-accent)}.text-lg{font-size:1rem;line-height:1.5rem}.text-xl{font-size:1.125rem;line-height:1.5rem}.text-2xl,.text-3xl{font-size:1.25rem;line-height:1.75rem}.text-4xl{font-size:1.5rem;line-height:2rem}@media (min-width:768px){.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:3rem}}ul{font-family:var(--font-neue-montreal),sans-serif;margin-bottom:2em;margin-left:-.5em;padding-left:1.25em;list-style-type:disc;list-style-position:outside}ol{font-family:var(--font-neue-montreal),sans-serif;margin-left:-1em;padding-left:1.75em;list-style-type:decimal;list-style-position:outside}ul>li,ol>li{margin-top:.5em;margin-bottom:.5em;margin-left:0;padding-left:.5em;display:list-item}.relative{position:relative}.absolute{position:absolute}.sticky{position:sticky}.fixed{position:fixed}.inset-0{inset:0}.top-0{top:0}.top-4{top:1rem}.right-4{right:1rem}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:justify-center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.m-0{margin:0}.mt-12{margin-top:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-24{margin-bottom:6rem}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-12{gap:3rem}.space-y-1>*+*{margin-top:.25rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-12>*+*{margin-top:3rem}.w-auto{width:auto}.w-full{width:100%}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-10{width:2.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-10{height:2.5rem}.h-full{height:100%}.min-h-screen{min-height:100vh}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-tight{line-height:1.25}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.rounded-md{border-radius:.375rem}.border-t{border-top-width:1px}.border-gray-200{border-color:var(--gray-200)}.border-gray-800{border-color:var(--gray-800)}.bg-white{background-color:var(--color-white)}.bg-transparent{background-color:#0000}.bg-gray-100{background-color:var(--gray-100)}.bg-gray-800{background-color:var(--gray-800)}.bg-gray-950{background-color:var(--gray-950)}.overflow-hidden{overflow:hidden}.object-cover{object-fit:cover}@media (min-width:640px){.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex{display:flex}.md\:hidden{display:none}.md\:py-32{padding-top:8rem;padding-bottom:8rem}.md\:text-6xl{font-size:3.75rem}.md\:text-xl{font-size:1.25rem}}@media (min-width:1024px){.lg\:px-8{padding-left:2rem;padding-right:2rem}}.shadow-lg{box-shadow:0 10px 15px -3px var(--color-shadow),0 4px 6px -4px var(--color-shadow)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:bg-gray-100:hover{background-color:var(--gray-100)}.theme-toggle-btn{background-color:#0000;border:none;transition:background-color .2s}.theme-toggle-btn:hover,.dark .theme-toggle-btn:hover{background-color:var(--color-hover-overlay)}.mobile-menu-button{background-color:var(--color-black);border:none;border-radius:0;outline:none;padding:.5rem}.mobile-menu-button:focus{outline:none}.mobile-menu-button svg{color:var(--color-white)}.dark .mobile-menu-button{background-color:var(--color-white)}.dark .mobile-menu-button svg{color:var(--color-black)}.mobile-menu-flyout{background-color:var(--gray-200);border-color:var(--gray-300);padding:1.5rem 1rem}.dark .mobile-menu-flyout{background-color:var(--surface-dark-4);border-color:var(--gray-600)}.mobile-menu-link{padding:1rem 1.5rem}.mobile-menu-link:hover{background-color:var(--gray-300)}.dark .mobile-menu-link:hover,.dark .dark\:bg-gray-800{background-color:var(--gray-800)}.dark .dark\:bg-gray-950{background-color:var(--gray-950)}.dark .dark\:border-gray-800{border-color:var(--gray-800)}.dark .dark\:hover\:bg-gray-800:hover{background-color:var(--gray-800)}.dark .dark\:bg-\[var\(--color-surface-dark\)\]{background-color:var(--color-surface-dark)}.dark .dark\:hover\:bg-\[var\(--color-surface-darker\)\]:hover{background-color:var(--color-surface-darker)}
