@import"https://fonts.googleapis.com/css2?family=Work+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;600;700&display=swap";:root{--paper: #f3efe7;--paper-2: #fffdf7;--ink: #1e1b17;--ink-2: #5a524a;--ink-3: #8a8077;--grid: rgba(30, 27, 23, .07);--rule: rgba(30, 27, 23, .14);--accent: #9c3b2a;--accent-soft: rgba(156, 59, 42, .1);--shadow-card: 0 12px 32px rgba(30, 27, 23, .08);--shadow-stamp: 6px 6px 0 var(--ink);--head: "Work Sans", system-ui, -apple-system, sans-serif;--body: "Work Sans", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--body);background:var(--paper);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:32px 32px;background-position:-1px -1px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.head{font-family:var(--head);font-weight:700;letter-spacing:-.025em}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}.container{max-width:1200px;margin:0 auto;padding:0 32px}.stamp{display:inline-block;border:2px solid var(--accent);color:var(--accent);font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.18em;padding:4px 10px;text-transform:uppercase;transform:rotate(-2deg)}.tag{display:inline-block;border:1px solid var(--ink);font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.14em;padding:4px 10px;text-transform:uppercase}.tag.solid{background:var(--ink);color:var(--paper);border-color:var(--ink)}.tag.accent{color:var(--accent);border-color:var(--accent)}.eyebrow{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;border:1.5px solid transparent;cursor:pointer}.btn .arr{transition:transform .25s cubic-bezier(.2,.7,.2,1)}.btn:hover .arr{transform:translate(4px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px #9c3b2a4d}.btn-ink{background:var(--ink);color:var(--paper)}.btn-ink:hover{transform:translateY(-2px);box-shadow:0 10px 24px #1e1b1740}.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-outline:hover{background:var(--ink);color:var(--paper)}.rev{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.rev.r{opacity:1;transform:none}.topbar{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);background:var(--paper);border-bottom:1px solid var(--rule)}.topbar .container{display:flex;justify-content:space-between;align-items:center;padding-top:10px;padding-bottom:10px;gap:16px}.topbar .left,.topbar .right{display:flex;gap:18px}.topbar .right a{transition:color .2s ease}.topbar .right a:hover{color:var(--accent)}.topbar .pulse{width:8px;height:8px;border-radius:50%;background:#2d8259;display:inline-block;margin-right:8px;box-shadow:0 0 #2d825980;animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 #2d825980}70%{box-shadow:0 0 0 8px #2d825900}to{box-shadow:0 0 #2d825900}}.nav{position:sticky;top:0;z-index:50;background:#f3efe7f0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);transition:box-shadow .3s ease}.nav.scrolled{box-shadow:0 4px 20px #1e1b170f}.nav .container{display:flex;align-items:center;justify-content:space-between;padding-top:18px;padding-bottom:18px}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:38px;height:38px;background:var(--ink);border-radius:4px;display:grid;place-items:center;flex-shrink:0}.brand-text .name{font-family:var(--head);font-weight:700;font-size:16px;letter-spacing:-.01em;line-height:1.1}.brand-text .meta{font-family:var(--mono);font-size:10px;color:var(--ink-2);letter-spacing:.14em;text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:28px}.nav-links a{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);position:relative;padding:8px 0}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--accent);transition:width .25s ease}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-cta{margin-left:8px;padding:12px 18px;background:var(--ink)!important;color:var(--paper)!important;letter-spacing:.1em!important;transition:background .2s ease,transform .2s ease!important}.nav-cta:hover{background:var(--accent)!important;transform:translateY(-2px)}.nav-cta:after{display:none}.nav-toggle{display:none;background:none;border:1px solid var(--ink);width:44px;height:44px;align-items:center;justify-content:center;position:relative}.nav-toggle span{display:block;width:18px;height:2px;background:var(--ink);position:absolute;transition:transform .25s ease,opacity .25s ease,top .25s ease}.nav-toggle span:nth-child(1){top:14px}.nav-toggle span:nth-child(2){top:21px}.nav-toggle span:nth-child(3){top:28px}.nav-toggle.open span:nth-child(1){top:21px;transform:rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){top:21px;transform:rotate(-45deg)}.hero{padding:80px 0 88px;position:relative;overflow:hidden}.hero .grid{display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:start}.hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.hero h1{font-family:var(--head);font-size:clamp(2.6rem,6vw,4.6rem);font-weight:700;line-height:.98;letter-spacing:-.038em;margin-bottom:28px}.hero h1 .accent{color:var(--accent);display:block}.hero p.lede{font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--ink-2);line-height:1.6;max-width:560px;margin-bottom:36px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.hero-actions .meta{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}.shop-card-wrap{position:relative}.shop-card{position:relative;background:var(--paper-2);border:1.5px solid var(--ink);padding:28px 30px 26px;box-shadow:var(--shadow-stamp);transition:transform .3s ease,box-shadow .3s ease}.shop-card:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--ink)}.shop-card .header{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1.5px solid var(--ink);padding-bottom:12px;margin-bottom:18px}.shop-card .header .title{font-family:var(--head);font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.05em}.shop-card .header .pg{font-family:var(--mono);font-size:10px;color:var(--ink-2);letter-spacing:.12em}.shop-card .row{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px dashed var(--rule)}.shop-card .row:last-of-type{border-bottom:none}.shop-card .row .lab{font-size:14px;color:var(--ink-2)}.shop-card .row .val{font-family:var(--head);font-size:28px;font-weight:700;color:var(--ink);letter-spacing:-.02em}.shop-card .promise{margin-top:18px;padding-top:16px;border-top:2px solid var(--ink)}.shop-card .promise .lab{font-family:var(--mono);font-size:10px;color:var(--ink-2);letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px}.shop-card .promise blockquote{font-size:14px;color:var(--ink);line-height:1.55;font-style:italic}.shop-card .promise .signed{margin-top:12px;font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.1em}.shop-card-wrap .deco-square{position:absolute;bottom:-22px;left:-22px;width:72px;height:72px;background:var(--accent);z-index:-1}.shop-card-wrap .deco-circle{position:absolute;top:-18px;right:-18px;width:56px;height:56px;border-radius:50%;border:2px solid var(--ink);background:var(--paper)}.section{padding:96px 0}.section-alt{background:var(--paper)}.section-ink{background:var(--ink);color:var(--paper)}.section-ink .eyebrow{color:var(--accent)}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:48px}.section-head h2{font-family:var(--head);font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.05;letter-spacing:-.03em;margin-top:12px}.section-head .lede{font-size:16px;color:var(--ink-2);line-height:1.65;max-width:420px;justify-self:end;text-align:right}.section-ink .section-head .lede{color:#f3efe7b3}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.svc{background:var(--paper-2);border:1.5px solid var(--ink);padding:32px;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;position:relative}.svc:hover{transform:translateY(-6px);box-shadow:var(--shadow-card)}.svc-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.svc-num{font-family:var(--mono);font-size:11px;color:var(--ink-2);letter-spacing:.14em;font-weight:700}.svc-mark{width:28px;height:28px}.svc h3{font-family:var(--head);font-size:22px;font-weight:700;letter-spacing:-.018em;line-height:1.2;margin-bottom:10px}.svc .tagline{font-family:var(--mono);font-size:12px;color:var(--accent);letter-spacing:.04em;margin-bottom:16px;font-weight:600}.svc p{font-size:15px;color:var(--ink-2);line-height:1.65;margin-bottom:18px}.svc ul{list-style:none;padding:0;margin:0}.svc li{position:relative;padding-left:20px;padding-block:6px;font-size:14px;color:var(--ink);line-height:1.5}.svc li:before{content:"+";position:absolute;left:0;top:6px;font-family:var(--mono);color:var(--accent);font-weight:700}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1.5px solid var(--ink);border-left:1.5px solid var(--ink)}.proc{border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);padding:28px 26px 32px;background:var(--paper-2);transition:background .25s ease}.proc:hover{background:var(--accent-soft)}.proc .step{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.14em;margin-bottom:14px}.proc h4{font-family:var(--head);font-size:20px;font-weight:700;letter-spacing:-.015em;margin-bottom:10px}.proc p{font-size:14px;color:var(--ink-2);line-height:1.6}.about-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:64px;align-items:center}.portrait{position:relative}.portrait .square{width:100%;aspect-ratio:1 / 1;background:var(--accent);display:grid;place-items:center;position:relative;overflow:hidden}.portrait .square.logo-treatment{padding:8px}.portrait .initial{font-family:var(--head);font-size:200px;font-weight:700;color:var(--ink);line-height:1;letter-spacing:-.05em}.portrait .placeholder-note{position:absolute;bottom:14px;left:14px;font-family:var(--mono);font-size:9px;letter-spacing:.16em;color:var(--ink);opacity:.6;text-transform:uppercase}.portrait .caption{margin-top:16px;font-size:14px;color:#f3efe7b3;line-height:1.6}.portrait .caption .name{color:var(--paper);margin-bottom:4px}.portrait .caption .meta{font-family:var(--mono);font-size:11px;letter-spacing:.1em}.about-quote{font-family:var(--head);font-size:clamp(1.35rem,2.2vw,1.75rem);font-weight:600;letter-spacing:-.02em;line-height:1.35;margin-bottom:36px}.about-quote .qmark{color:var(--accent);font-size:1.5em;line-height:0;margin-right:4px;vertical-align:-.1em}.promises-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0}.promise-row{padding:22px 24px 22px 0;border-top:1px solid rgba(243,239,231,.18);display:flex;gap:16px;align-items:flex-start}.promise-row .num{font-family:var(--mono);font-size:12px;color:var(--accent);font-weight:700;letter-spacing:.1em;flex-shrink:0;margin-top:4px}.promise-row .body .ttl{font-family:var(--head);font-size:17px;font-weight:700;letter-spacing:-.01em;margin-bottom:6px}.promise-row .body p{font-size:14px;color:#f3efe7b3;line-height:1.55}.faqs{max-width:880px;margin:0 auto}.faq{border-top:1.5px solid var(--ink);background:var(--paper-2)}.faqs .faq:last-child{border-bottom:1.5px solid var(--ink)}.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;background:transparent;border:none;font-family:var(--head);font-size:18px;font-weight:600;text-align:left;letter-spacing:-.01em;transition:background .2s ease}.faq-q:hover{background:#9c3b2a0a}.faq-q .icon{flex-shrink:0;font-family:var(--mono);font-size:22px;font-weight:400;color:var(--accent);transition:transform .3s cubic-bezier(.2,.7,.2,1);width:22px;text-align:center}.faq.open .faq-q .icon{transform:rotate(45deg)}.faq-a{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.2,.7,.2,1)}.faq.open .faq-a{max-height:600px}.faq-a-inner{padding:0 28px 26px;font-size:15px;color:var(--ink-2);line-height:1.7;max-width:720px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}.contact-cards{display:flex;flex-direction:column;gap:14px}.contact-card{border:1.5px solid var(--ink);padding:22px 26px;background:var(--paper-2);transition:transform .25s ease,background .25s ease}.contact-card:hover{transform:translateY(-2px);background:var(--paper)}.contact-card.solid{background:var(--accent);color:#fff;border-color:var(--accent)}.contact-card.solid .lab{color:#ffffffd9}.contact-card.solid:hover{background:#862e1f}.contact-card .lab{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin-bottom:8px}.contact-card .val{font-family:var(--head);font-size:20px;font-weight:700;letter-spacing:-.015em}.contact-form{background:var(--paper-2);border:1.5px solid var(--ink);padding:32px;display:flex;flex-direction:column;gap:16px}.contact-form .field{display:flex;flex-direction:column;gap:6px}.contact-form label{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);font-weight:600}.contact-form input,.contact-form textarea,.contact-form select{font:inherit;font-size:15px;color:var(--ink);background:var(--paper);border:1.5px solid var(--rule);padding:12px 14px;outline:none;transition:border-color .2s ease,background .2s ease}.contact-form textarea{resize:vertical;min-height:120px;line-height:1.5;font-family:inherit}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--accent);background:#fff}.contact-form .err{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.04em}.contact-form .turnstile-field{margin-top:4px}.contact-form .form-err{padding:10px 12px;border:1.5px solid var(--accent);background:var(--accent-soft)}.contact-form .submit-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:4px}.contact-form .note{font-size:13px;color:var(--ink-2)}.contact-success{background:var(--paper-2);border:2px dashed var(--accent);padding:36px 32px;text-align:center}.contact-success .stamp{margin-bottom:16px}.contact-success h3{font-family:var(--head);font-size:24px;font-weight:700;letter-spacing:-.02em;margin-bottom:10px}.contact-success p{color:var(--ink-2);font-size:15px;line-height:1.6}.contact-success button{margin-top:22px;background:none;border:none;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:4px}.footer{background:var(--ink);color:var(--paper);padding:64px 0 32px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}.footer .brand-mark{background:var(--paper)}.footer .brand-text .name{color:var(--paper)}.footer .brand-text .meta{color:#f3efe799}.footer h5{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;font-weight:700}.footer ul{list-style:none;display:flex;flex-direction:column;gap:10px}.footer ul a,.footer ul li{font-size:14px;color:#f3efe7bf;transition:color .2s ease}.footer ul a:hover{color:var(--accent)}.footer-tagline{font-size:14px;color:#f3efe799;line-height:1.6;max-width:280px;margin-top:16px}.footer-bottom{border-top:1px solid rgba(243,239,231,.15);padding-top:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;color:#f3efe780;letter-spacing:.1em;text-transform:uppercase}@media(max-width:960px){.container{padding:0 24px}.hero{padding:48px 0 64px}.hero .grid{grid-template-columns:1fr;gap:48px}.section{padding:64px 0}.section-head{grid-template-columns:1fr;gap:16px}.section-head .lede{text-align:left;justify-self:start;max-width:100%}.services-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr;gap:48px}.promises-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:32px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.topbar .container{font-size:10px}.topbar .left{display:none}}@media(max-width:720px){.nav-toggle{display:inline-flex}.nav-links{position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--rule);flex-direction:column;align-items:stretch;padding:16px 24px 24px;gap:8px;transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.nav-links.open{transform:none;opacity:1;pointer-events:auto}.nav-links a{padding:12px 0}.nav-cta{margin-left:0;margin-top:8px;text-align:center;justify-content:center}.topbar .left{display:none}.process-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:28px}.hero h1{font-size:2.4rem}.shop-card-wrap .deco-square{width:50px;height:50px}.portrait .initial{font-size:140px}}.pastwork-section{padding-top:24px;padding-bottom:24px}.pastwork-box{border:1.5px solid var(--ink);background:var(--paper-2);padding:28px 32px;display:grid;grid-template-columns:1fr 2fr;gap:32px;align-items:center}.pastwork-title{font-size:20px;font-weight:700;letter-spacing:-.015em;line-height:1.3;font-family:var(--head)}.pastwork-note{font-size:13px;color:var(--ink-2);margin-top:10px;font-style:italic;line-height:1.55}.pastwork-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px 24px}.pastwork-list li{font-family:var(--mono);font-size:13px;color:var(--ink);letter-spacing:.02em;padding:8px 0;border-bottom:1px dashed var(--rule);display:flex;gap:10px;align-items:center}.pastwork-list .plus{color:var(--accent);font-weight:700}@media(max-width:720px){.pastwork-box{grid-template-columns:1fr;gap:20px}.pastwork-list{grid-template-columns:1fr}}.about-h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:28px;line-height:1.05;letter-spacing:-.03em}.about-serving{margin-top:32px;font-size:14px;color:#f3efe799;font-style:italic;line-height:1.65}.contact-val-sm{font-size:16px;line-height:1.5}.contact-sub{font-family:var(--mono);font-size:11px;color:var(--ink-2);letter-spacing:.1em}
