@font-face{font-family:JDS Lettermark;src:local("Arial Bold"),local("Arial-BoldMT"),url(/fonts/arimo-bold-lettermark.woff2) format("woff2");font-weight:700 900;font-style:normal;font-display:swap}:root{font-family:Arial,Helvetica,sans-serif;color:#17382f;background:#f4f2ed;font-synthesis:none;--ink: #0f2f2a;--sage: #4e6b5b;--line: #cbd0c6;--paper: #f4f2ed;--max-width: 1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0}a{color:inherit;text-underline-offset:5px}button,input,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}img{display:block;max-width:100%;height:auto}p{line-height:1.75;margin:0 0 20px;color:#506057}h1,h2,h3,h4{margin:0;color:var(--ink)}h1,h2{font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.045em;line-height:1.09}h1{font-size:clamp(44px,4.8vw,66px)}h2{font-size:clamp(36px,3.8vw,49px)}h3{font-size:26px;letter-spacing:-.035em;line-height:1.2}h4{font-size:16px}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #936331;outline-offset:5px}section,article[id]{scroll-margin-top:24px}.section-shell{width:min(calc(100% - 96px),var(--max-width));margin-inline:auto}.section{padding-block:96px}.eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--sage);line-height:1.6;margin-bottom:22px}.lead{font-size:24px;line-height:1.45;letter-spacing:-.02em;color:var(--ink)}.accent{color:var(--sage)}.site-header{display:flex;align-items:center;gap:36px;min-height:112px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:15px;text-decoration:none;flex-shrink:0}.lettermark{font-family:JDS Lettermark,Arial,Helvetica,sans-serif;font-size:44px;letter-spacing:-5px;font-weight:800;line-height:1}.lettermark>span{color:var(--sage)}.brand-name{font-size:11px;line-height:1.45;letter-spacing:.015em;border-left:1px solid var(--line);padding-left:15px}.nav-links{display:flex;gap:28px;margin-left:auto}.nav-links a{font-size:13px;text-decoration:none;padding-block:12px}.nav-links a:hover,.text-link:hover{color:#4e6b5b;text-decoration:underline}.button{display:inline-flex;gap:22px;align-items:center;justify-content:center;text-decoration:none;padding:17px 23px;border:1px solid var(--ink);border-radius:4px;font-size:13px;font-weight:600;min-height:48px;transition:background .15s}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:#335846}.button:disabled{opacity:.65;cursor:wait}.nav-cta{padding:12px 19px}.skip-link{position:absolute;left:16px;top:-100px;z-index:10;background:var(--ink);color:#fff;padding:16px}.skip-link:focus{top:12px}.hero{display:grid;grid-template-columns:1.35fr 1fr;column-gap:80px;padding-top:70px}.hero-copy h1{max-width:700px;margin-bottom:27px}.hero-copy h1 em{font-weight:400;color:var(--sage)}.hero-copy>p:not(.eyebrow){max-width:555px;font-size:15px}.hero-copy .hero-intro{font-size:18px!important;color:var(--ink);line-height:1.6;margin-bottom:16px}.small-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--sage);margin-right:8px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:13px;font-weight:600;text-decoration:none;border-bottom:1px solid #87998b;padding-block:8px}.personal-card{margin-top:29px;align-self:start;transform:rotate(1.5deg);background:#fffdf8;border:1px solid #d5d6cc;padding:13px;box-shadow:0 12px 28px #17382f0b}.personal-card-caption{padding:23px 8px 10px;display:flex;justify-content:space-between;gap:12px;align-items:center}.personal-card-caption strong{display:block;font-size:16px;margin-bottom:7px}.personal-card-caption div>span{font-size:10px;color:#566458}.signature{font:italic 28px Georgia,serif;color:var(--sage);transform:rotate(-9deg)}.hero-footnote{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-block:1px solid var(--line);padding:23px 0;margin-top:64px;font-size:11px;letter-spacing:.03em;color:var(--sage)}.services-section{display:grid;grid-template-columns:1fr 1fr;gap:85px}.services-copy p{font-size:15px}.services-copy .lead{font-size:24px}.problem-prompts{display:grid;gap:12px;border-left:2px solid #b7c4b1;margin-top:28px;padding-left:22px;font:italic 17px/1.4 Georgia,serif}.work-section{padding-top:62px;border-top:1px solid var(--line)}.work-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.work-heading>p{font-size:14px;margin:0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.project-card{border:1px solid #cbd0c6;background:#faf9f5;border-radius:5px;overflow:hidden}.project-art{height:450px;padding:25px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:18px;overflow:hidden}.fridge-art{background:#e5e5d8}.art-label{font:italic 17px Georgia,serif;text-align:center;color:var(--ink)}.phone-frame{width:228px;padding:8px;background:#17382f;border-radius:27px;box-shadow:12px 13px #cdd1c2;transform:rotate(-5deg)}.phone-frame img{width:100%;border-radius:20px;background:#fff}.image-caption{font-size:10px;color:#4b5a4b;line-height:1.6;text-align:center}.event-art{background:#c7d4c4}.event-paper{width:285px;padding:28px;background:#f6f1df;box-shadow:10px 12px #aebfa9;transform:rotate(4deg)}.event-paper .eyebrow{font-size:8px;margin-bottom:12px}.event-paper>strong{display:block;position:relative;font:54px/.95 Georgia,serif;letter-spacing:-3px}.event-paper>strong>span{position:absolute;right:0;top:0;font-size:35px;color:var(--sage)}.event-topics{display:grid;margin-top:24px;font-size:11px}.event-topics>span{border-top:1px solid #c5c9b9;padding:10px 0}.project-body{padding:32px}.project-body>.eyebrow{font-size:10px;margin-bottom:12px}.project-body>p:not(.eyebrow){font-size:14px;margin:16px 0 25px}.project-body summary{font-size:13px;font-weight:700;padding:16px 0;border-top:1px solid var(--line);list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:48px}.project-body summary::-webkit-details-marker{display:none}.project-body details[open]>summary>span[aria-hidden]{transform:rotate(90deg)}.case-study{padding-top:15px}.case-study h4{margin:20px 0 8px}.case-study p{font-size:14px}.case-study .case-note{font-size:12px;border-top:1px solid var(--line);padding-top:16px}.about-section{border-top:1px solid var(--line)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px}.location{font-size:13px;margin-top:30px;color:var(--sage)}.about-copy>p:not(.lead){font-size:15px}.process-heading{margin-top:90px}.process-heading h2{font-size:36px}.process-list{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:38px 0 0;gap:28px}.process-list li{border-top:1px solid #aebcac;padding-top:20px}.step-number{display:block;font:italic 26px Georgia,serif;color:var(--sage);margin-bottom:24px}.process-list h3{font-size:18px;margin-bottom:12px;letter-spacing:-.025em}.process-list p{font-size:13px;margin:0}.contact-section{background:var(--ink);color:#f4f2ed;width:100%;max-width:none;padding-inline:max(48px,calc((100% - 1200px)/2))}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact-section h2{color:#f4f2ed;font-size:46px;max-width:510px}.contact-section p{color:#d0dacc;font-size:15px}.contact-section .eyebrow{color:#b8cbb4;font-size:11px}.contact-section .section-header>p:last-child{margin-top:25px;max-width:410px}.contact-details{margin-top:36px;display:grid;gap:8px}.contact-details strong,.contact-details span{display:block}.contact-details strong{font-size:12px;font-weight:400;color:#b8cbb4;margin-bottom:4px}.contact-details span,.contact-details a{font-size:14px;color:#f4f2ed}.contact-form{background:#f4f2ed;color:var(--ink);padding:35px;border-radius:5px;align-self:start;display:grid;gap:22px}.form-row{display:grid;gap:10px}.form-row label{font-size:13px}.form-row input,.form-row textarea{width:100%;min-width:0;background:#fffefa;border:1px solid #adb9ad;border-radius:3px;padding:13px;color:var(--ink)}.form-row textarea{resize:vertical;min-height:145px}.hidden-field{display:none}.contact-form .form-note{color:#506057;font-size:11px;line-height:1.6;margin:0}.contact-form .form-message{font-size:14px;color:var(--ink);margin:0;border-left:3px solid var(--sage);padding-left:12px}.contact-form .form-message-error{color:#8a2921;border-color:#8a2921}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:45px}.site-footer p{font-size:11px;margin:0}.site-footer p span{color:#657264}.site-footer nav{display:flex;gap:23px;font-size:11px}.site-footer nav a{padding-block:12px}.legal-header{width:min(calc(100% - 64px),1200px);margin:auto;min-height:112px;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line)}.legal-nav{display:flex;gap:25px;margin-left:auto;font-size:14px}.legal-nav [aria-current]{font-weight:700}.legal-main{width:min(calc(100% - 48px),800px);margin:70px auto}.legal-title h1{font-size:56px;margin-bottom:25px}.legal-content h2{font-family:Arial,sans-serif;font-size:24px;letter-spacing:-.02em;line-height:1.3;margin:35px 0 16px}.legal-content li{line-height:1.75;margin-bottom:10px}.legal-content address{font-style:normal;line-height:1.8}.legal-effective-date{font-size:14px}.legal-content p{font-size:16px}@media(min-width:1500px){.hero{padding-top:85px}.hero-copy h1{font-size:68px}}@media(max-width:1050px){.section-shell{width:calc(100% - 64px)}.site-header{gap:20px}.nav-links{gap:18px}.hero{column-gap:38px;grid-template-columns:1.2fr 1fr}.hero-actions{gap:17px;flex-wrap:wrap}.personal-card-caption{padding-inline:2px}.signature{display:none}.services-section,.about-layout,.contact-layout{gap:45px}.contact-section{width:100%;padding-inline:32px}.project-art{height:430px}.project-body{padding:25px}.process-list{gap:20px}.site-footer{flex-wrap:wrap}.contact-section h2{font-size:40px}}@media(max-width:760px){.section-shell{width:calc(100% - 40px)}.section{padding-block:64px}.site-header{flex-wrap:wrap;justify-content:space-between;padding-top:24px;gap:20px}.lettermark{font-size:38px}.brand-name{font-size:10px}.nav-cta{font-size:12px;padding:11px 15px}.nav-links{order:3;width:100%;justify-content:space-between;margin:0;gap:12px;padding-bottom:12px}.nav-links a{font-size:12px}.hero{grid-template-columns:1fr;padding-top:44px;gap:0}.hero-copy h1{font-size:clamp(43px,8vw,60px);max-width:650px}.hero-copy>p:not(.eyebrow){max-width:none}.hero-actions{gap:18px}.hero-copy .eyebrow{font-size:9px;letter-spacing:.12em}.personal-card{width:min(100% - 16px,430px);justify-self:center;margin-top:48px}.signature{display:block}.hero-footnote{margin-top:45px;flex-direction:column;gap:10px;padding-block:20px;font-size:10px}.services-section,.about-layout,.contact-layout{grid-template-columns:1fr;gap:28px}.services-copy .lead,.lead{font-size:23px}.work-heading{align-items:start;flex-direction:column;gap:18px}.project-grid{grid-template-columns:1fr;gap:30px}.project-art{height:430px}.project-body{padding:27px}.about-layout{gap:20px}.process-heading{margin-top:55px}.process-heading h2{font-size:32px}.process-list{grid-template-columns:1fr 1fr;gap:30px 24px}.contact-section{width:100%;padding-inline:20px}.contact-section h2{font-size:39px}.contact-details{margin-top:25px}.contact-form{padding:25px}.site-footer{flex-direction:column;align-items:flex-start;gap:24px;padding-block:35px}.legal-header{flex-wrap:wrap;padding-block:24px;gap:20px}.legal-nav{order:3;margin:0;width:100%}.legal-contact-link{margin-left:auto}.legal-main{margin-block:45px}.legal-title h1{font-size:43px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.portfolio-art{height:335px;background:#e5e5d8}.portfolio-art img{width:100%;min-height:0;flex:1;object-fit:cover;object-position:top;border:1px solid #cbd0c6;border-radius:3px}.case-study ul{padding-left:20px;color:#506057;font-size:14px;line-height:1.8}.case-permalink{display:block;width:fit-content;margin-top:24px;font-size:12px}.additional-work{margin-top:32px;border-block:1px solid var(--line)}.additional-work>summary{padding:24px 0;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:15px;font-weight:600}.additional-work>summary::-webkit-details-marker{display:none}.more-work-name{font-weight:400;color:var(--sage);margin-left:12px}.additional-work[open]>summary>span:last-child{transform:rotate(45deg)}.additional-project{display:grid;grid-template-columns:1fr 1fr;margin-bottom:28px}@media(max-width:760px){.additional-project{grid-template-columns:1fr}.more-work-name{display:block;margin:8px 0 0;font-size:13px}}.project-status{display:inline-block;width:fit-content;margin-bottom:14px;padding:5px 10px;border:1px solid #aebcac;border-radius:3px;font-size:10px;font-weight:700;letter-spacing:.08em;line-height:1.5;text-transform:uppercase;color:var(--ink);background:#e3eadf}.project-status--development{background:#efe9db;border-color:#c9bfa9}.project-status--completed{background:#e8e9e3;border-color:#b9c0b5}.primary-project-grid,.development-grid{align-items:stretch}.ipm-2026-art img{object-fit:contain}.project-live-link{margin-top:10px}.development-work{margin-top:48px}.development-work>.eyebrow{margin-bottom:10px}.development-grid{margin-top:24px}.development-card h4{font-size:26px;letter-spacing:-.035em;line-height:1.2}.development-card .project-body>p:last-child{margin-bottom:0}@media(max-width:760px){.portfolio-art{height:310px}}.ipm-production-hero{position:relative;width:100%;aspect-ratio:2.05;border-radius:12px;overflow:hidden}.portfolio-art .ipm-production-hero .ipm-hero-field{width:100%;height:100%;object-fit:cover;object-position:center;border:0;border-radius:0}.portfolio-art .ipm-production-hero .ipm-hero-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:38%;height:auto;aspect-ratio:447 / 559;object-fit:contain;object-position:center;border:0;border-radius:0}@media(min-width:768px)and (max-width:1023px){.ipm-production-hero{aspect-ratio:1.72}.portfolio-art .ipm-production-hero .ipm-hero-logo{width:44%}}@media(max-width:767px){.ipm-production-hero{aspect-ratio:1;width:auto;height:100%;max-width:100%}.portfolio-art .ipm-production-hero .ipm-hero-logo{width:62%}}@media(max-width:767px)and (orientation:landscape){.ipm-production-hero{aspect-ratio:1.5}}.marc-portrait{width:100%;aspect-ratio:1.05;object-fit:cover;object-position:48% center}
