.wordmark-name{font-size:21px;font-weight:750;letter-spacing:-.7px}.wordmark{white-space:nowrap}.desktop-nav{gap:23px}.footer-links{display:flex;gap:12px 25px;flex-wrap:wrap;padding:16px 0 24px;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}.footer-bottom>div{display:flex;gap:18px;flex-wrap:wrap}.text-button{border:0;padding:0;background:transparent;font-size:inherit;color:inherit;text-decoration:underline;text-underline-offset:4px}.summary-pair{display:grid;grid-template-columns:1fr 1fr;gap:26px}.summary-panel{border-radius:var(--radius);padding:42px}.summary-panel h2{font-size:34px;line-height:1.25;letter-spacing:-1px}.summary-panel p:not(.section-kicker){color:var(--muted);max-width:430px}.summary-panel .text-link{margin-top:12px;display:inline-flex}.lilac{background:var(--lavender)}.pale-green{background:#e6eee9}.about-summary{max-width:800px;text-align:center}.about-summary h2{font-size:44px;line-height:1.2;letter-spacing:-1.7px}.about-summary>p:not(.section-kicker){max-width:590px;margin:22px auto;color:var(--muted);font-size:18px}.about-summary .hero-actions{justify-content:center}.contact-mini{display:flex;justify-content:space-between;align-items:center;padding:36px 42px;border:1px solid var(--line);border-radius:var(--radius)}.contact-mini h2{font-size:32px;letter-spacing:-1px}.page-heading{padding-top:65px;padding-bottom:40px}.page-heading h1,.case-heading h1,.addon-detail-heading h1{font-size:clamp(35px,4.8vw,59px);letter-spacing:-2px;line-height:1.15;margin:12px 0 22px;max-width:900px}.page-heading>p:not(.section-kicker){max-width:710px;font-size:19px;line-height:1.7;color:var(--muted)}.page-content{padding-bottom:65px}.detail-section{margin-top:65px;margin-bottom:85px}.detail-section h1{font-size:clamp(34px,4.2vw,51px);letter-spacing:-1.7px;line-height:1.2;margin:10px 0 20px}.project-text-logo{font-size:22px;letter-spacing:-.6px}.project-arrow{font-size:24px}.project-grid{row-gap:38px}.inline-note{display:flex;gap:30px;justify-content:space-between;align-items:center;padding:28px 0;margin:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.inline-note p{margin:0;max-width:620px;color:var(--muted)}.inline-note .button{flex-shrink:0}.case-study{padding-top:38px;padding-bottom:70px}.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:13px;color:var(--muted);margin-bottom:40px}.breadcrumbs a:hover{color:var(--ink);text-decoration:underline}.case-heading{max-width:930px}.large-lead{font-size:20px;line-height:1.75;color:var(--muted)}.case-image{padding:34px;border-radius:10px;margin:38px 0}.case-image img{width:100%;height:auto;border-radius:4px;border:1px solid var(--line)}figcaption{font-size:12px;color:var(--muted);margin-top:12px}.case-body{max-width:850px;margin:45px auto}.case-body h2{font-size:30px;letter-spacing:-.8px;line-height:1.3;margin:42px 0 22px}.feature-list section{display:flex;gap:28px;padding:27px 0;border-bottom:1px solid var(--line)}.feature-number{font:500 22px 'Space Grotesk',sans-serif;color:var(--purple-ink)}.feature-list h3{margin:0 0 9px;font-size:21px}.feature-list p{margin:0;color:var(--muted)}.addon-detail-heading{display:flex;gap:30px;align-items:center}.addon-detail-heading img{width:110px;height:110px;object-fit:cover;border-radius:10px}.addon-card>.text-link{display:inline-block;margin-top:20px}.detail-bullets{padding-left:22px}.detail-bullets li{padding:12px 5px;border-bottom:1px solid var(--line)}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 25px}.blog-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}.blog-card-image{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--soft)}.blog-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.blog-card-image:hover img{transform:scale(1.035)}.blog-card-placeholder{height:130px;display:flex;align-items:center;justify-content:space-between;padding:30px;background:var(--lavender);color:var(--purple-ink);font-size:15px}.blog-card-placeholder .icon{width:35px;height:35px}.blog-card-copy{padding:25px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.blog-card h2{font-size:22px;line-height:1.35;letter-spacing:-.5px;margin:14px 0 12px;overflow-wrap:anywhere}.blog-card h2 a:hover{text-decoration:underline;text-underline-offset:4px}.blog-card p{font-size:14px;color:var(--muted);margin:0 0 20px}.blog-card .text-link{margin-top:auto;font-size:14px}.article-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px;color:var(--muted)}.article-meta a{color:var(--purple-ink)}.blog-tools{padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.category-pills{display:flex;gap:9px;flex-wrap:wrap}.category-pills a{border:1px solid var(--line);border-radius:6px;padding:7px 14px;font-size:13px}.category-pills a[aria-current=page]{background:var(--dark-button);color:var(--button-ink);border-color:var(--dark-button)}.blog-search{display:flex;gap:10px;max-width:430px;margin-top:22px}.blog-search input{min-width:0;flex:1;background:var(--surface);border:1px solid var(--line);padding:11px 14px;border-radius:4px;color:var(--ink);font:inherit;font-size:14px}.blog-search button{background:var(--dark-button);color:var(--button-ink);border:0;border-radius:4px;padding:10px 20px;font-size:14px}.results-note{color:var(--muted);font-size:13px;margin:24px 0}.page-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:42px 0 0}.page-pagination a{min-width:38px;text-align:center;padding:8px 12px;border:1px solid var(--line);border-radius:4px;font-size:13px}.page-pagination a[aria-current=page]{background:var(--dark-button);color:var(--button-ink)}.article-page{padding-top:38px;padding-bottom:28px}.article-heading{max-width:870px;margin:0 auto 35px}.article-heading h1{font-size:clamp(31px,4.2vw,54px);line-height:1.18;letter-spacing:-1.6px;overflow-wrap:anywhere;margin:15px 0 22px}.article-heading .article-meta{font-size:14px;margin-top:25px}.article-featured{max-width:940px;margin:35px auto}.article-featured img{display:block;width:100%;height:auto;max-height:570px;object-fit:contain;border-radius:6px;background:var(--soft)}.article-content{max-width:760px;margin:35px auto;font-size:18px;line-height:1.85;overflow-wrap:anywhere}.article-content h2{font-size:29px;line-height:1.3;letter-spacing:-.7px;margin:42px 0 18px}.article-content h3{font-size:24px;line-height:1.35;margin:30px 0 14px}.article-content a{color:var(--purple-ink);text-decoration:underline;text-underline-offset:4px}.article-content img{max-width:100%;height:auto;border-radius:6px}.article-content pre{overflow:auto;background:var(--soft);padding:20px;border:1px solid var(--line);border-radius:6px;font-size:14px;white-space:pre}.article-content table{border-collapse:collapse;display:block;overflow:auto;max-width:100%;font-size:15px}.article-content th,.article-content td{border:1px solid var(--line);padding:10px}.article-content blockquote{border-left:3px solid var(--purple);padding-left:23px;margin-left:0;color:var(--muted)}.article-bottom{display:flex;gap:20px;justify-content:space-between;padding-top:28px;border-top:1px solid var(--line);font-size:14px}.replies{border-top:1px solid var(--line);padding-top:10px}.replies>article{border:1px solid var(--line);padding:24px;border-radius:6px;background:var(--surface);margin:20px 0;font-size:16px}.empty-state{padding:50px 0}.error-page{min-height:55vh}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.about-monogram{font-size:34px!important}.about-monogram .icon{width:85px;height:85px}@media screen {
  .site-footer { display:block; }
  .footer-top { display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
  .site-footer .footer-top .wordmark { width:auto; flex:none; }
  .site-footer .footer-top p { display:block; margin:0; font-size:13px; line-height:1.65; color:var(--muted); }
  .footer-bottom { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; padding-top:20px; }
}
:root[data-theme=dark] .pale-green{background:#263730}:root[data-theme=dark] .visual-peach{background:#3e302d}
@media(min-width:851px){.summary-pair.section-space{margin-top:55px}.desktop-nav a{font-size:13px}}
@media(max-width:1050px){.desktop-nav{gap:15px}.header-contact{padding:9px 12px}.wordmark-name{font-size:19px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-panel{padding:30px}}
@media(max-width:850px){.page-heading{padding-top:38px}.page-heading h1,.case-heading h1,.addon-detail-heading h1{letter-spacing:-1.3px}.summary-pair{grid-template-columns:1fr}.summary-panel h2{font-size:30px}.about-summary h2{font-size:36px}.contact-mini{padding:25px;gap:20px}.contact-mini h2{font-size:26px}.detail-section{margin-top:38px}.case-image{padding:18px}.inline-note{align-items:flex-start;flex-direction:column;gap:18px}.article-content{font-size:17px}.addon-detail-heading{align-items:flex-start;gap:18px}.addon-detail-heading img{width:74px;height:74px;border-radius:6px}}
@media(max-width:560px){.blog-grid{grid-template-columns:1fr}.blog-card-placeholder{height:110px}.page-heading>p:not(.section-kicker){font-size:17px}.article-heading h1{letter-spacing:-1px}.contact-mini{align-items:flex-start;flex-direction:column}.contact-mini h2{margin:0}.feature-list section{gap:18px}.case-study,.article-page{padding-top:25px}.breadcrumbs{margin-bottom:28px}.case-image{margin-left:0;margin-right:0;padding:12px}.article-bottom{align-items:flex-start;flex-direction:column}.footer-bottom>div{gap:12px}.summary-panel{padding:28px}.addon-detail-heading{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.identity-name{font-size:38px;font-weight:750;letter-spacing:-1px;line-height:1.15;margin:35px 0;}

.back-to-top {
  position:fixed;
  right:max(24px,env(safe-area-inset-right));
  bottom:max(24px,env(safe-area-inset-bottom));
  z-index:15;
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  padding:0;
  border:1px solid var(--line);
  border-radius:50%;
  background:var(--dark-button);
  color:var(--button-ink);
  box-shadow:0 4px 16px #0002;
  transition:transform .18s;
}
.back-to-top:hover { transform:translateY(-3px); }
@media(max-width:620px) {
  .back-to-top {
    right:max(16px,env(safe-area-inset-right));
    bottom:max(16px,env(safe-area-inset-bottom));
    width:44px;
    height:44px;
  }
}
@media(prefers-reduced-motion:reduce) {
  .back-to-top { transition:none; }
}
@media print {
  .back-to-top { display:none; }
}

@media(min-width:1051px){.hero~section[aria-labelledby="selected-projects"] .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero~section[aria-labelledby="selected-projects"] .project-visual{height:225px;padding:22px 17px 0}.hero~section[aria-labelledby="selected-projects"] .project-text-logo{font-size:17px}.hero~section[aria-labelledby="selected-projects"] .visual-tag{font-size:9px}.hero~section[aria-labelledby="selected-projects"] .project-description{padding-top:20px}.hero~section[aria-labelledby="selected-projects"] .project-description h3{font-size:21px}}

.project-title-line h2{font-size:24px;line-height:1.3;letter-spacing:-.6px;margin:0}.project-description h2 a:hover{text-decoration:underline;text-underline-offset:4px}

.case-image figcaption{color:#49505a}

/* Keep the original homepage rhythm; trim only these three block groups. */
.portfolio-home > .summary-pair.section-space {
  margin-block:0;
  padding-block:64px;
}
.portfolio-home > .about-summary {
  padding-block:64px;
}
.portfolio-home > .home-contact {
  padding-top:52px;
  padding-bottom:64px;
}
@media(max-width:850px) {
  .portfolio-home > .summary-pair.section-space,
  .portfolio-home > .about-summary,
  .portfolio-home > .home-contact {
    padding-block:40px;
  }
}
