.ai-search{background:#bec7de}.ai-search-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:5rem;align-items:start}.ai-search h2{max-width:650px;font-size:clamp(2rem,3.4vw,3rem);line-height:1.08;letter-spacing:-.045em}.ai-search-copy{max-width:590px;margin:1.5rem 0;line-height:1.65}.ai-search-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem}.ai-search-actions p{font-size:.875rem;flex:1 1 220px;margin:0}.ai-search-checklist{list-style:none;padding:0;margin:0}.ai-search-checklist li{display:flex;align-items:baseline;gap:1rem;padding:1.4rem 0;border-top:1px solid rgba(54,51,51,.2)}.ai-search-checklist li:last-child{border-bottom:1px solid rgba(54,51,51,.2)}.ai-search-checklist span{font-size:.8rem;font-weight:700;color:var(--violet)}.inclusions-intro{max-width:760px}.inclusions-intro h2{font-size:clamp(2.25rem,4.2vw,3.5rem);line-height:1.05;letter-spacing:-.045em}.inclusions-intro>p:last-child{font-size:1.25rem;line-height:1.5;margin-top:1.5rem}.inclusions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3.75rem 3.5rem;margin-top:5.5rem}.inclusion-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:#b1abc2;border-radius:2px}.inclusions-grid h3{font-size:1.4rem;margin:1.5rem 0 1rem;letter-spacing:-.025em}.inclusions-grid p{line-height:1.55;margin:0}@media(max-width:900px){.ai-search-grid{grid-template-columns:1fr;gap:2.5rem}.inclusions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem}}@media(max-width:560px){.inclusions-grid{grid-template-columns:1fr;margin-top:3rem}}.work-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.work-card{display:flex;flex-direction:column;overflow:hidden;border-radius:20px;border:1px solid var(--line);background:var(--paper)}.work-card-image{display:block;padding:2rem 2rem 0;background:var(--paper);overflow:hidden}.work-card-image img{display:block;width:100%;height:auto;border-radius:8px 8px 0 0;outline:1px solid oklch(0 0 0 / .1)}.work-card-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:2rem}.work-card h3{font-size:1.6rem;margin:0 0 1rem}.work-card-copy p{margin:0;line-height:1.65;color:var(--graphite)}.work-card-link{display:inline-flex;align-items:center;min-height:44px;margin-top:auto;padding-top:1.5rem;border-bottom:1px solid currentColor;color:var(--deep-violet);font-weight:600;transition-property:color,border-color;transition-duration:.15s}.work-card-link:hover{color:var(--violet)}.work-pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem}.work-pagination button:disabled{opacity:.4;cursor:default}#archive-title{scroll-margin-top:120px}@media(max-width:700px){.work-card-grid{grid-template-columns:1fr}.work-card-copy{padding:1.5rem}.work-pagination .button{padding-inline:1rem}}.project-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.project-badge{padding:.3rem .65rem;border-radius:99px;background:var(--warm-grey);color:var(--graphite);font-size:.875rem;line-height:1.4}.project-badge.platform-badge{background:var(--deep-violet);color:var(--paper);font-weight:600}@font-face{font-family:Switzer;src:url(/fonts/switzer-variable.woff2) format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/switzer-variable-italic.woff2) format("woff2");font-style:italic;font-weight:100 900;font-display:swap}:root{--graphite: #363333;--grey: #868585;--silver: #a4a3a3;--warm-grey: #e6e3e3;--soft: #f3f1f1;--paper: #f7f7f7;--deep-violet: #4c3e5e;--violet: #71649b;--lilac: #b1abc2;--periwinkle: #bec7de;--line: rgba(54, 51, 51, .17);--shell: min(1440px, calc(100vw - 96px) );color:var(--graphite);background:var(--paper);font-family:Switzer,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px;background:var(--paper)}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden;color:var(--graphite);background:var(--paper)}body,button,input,textarea,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:570;letter-spacing:-.055em;text-wrap:balance}p{text-wrap:pretty}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--violet);outline-offset:4px}.shell{width:var(--shell);margin-inline:auto}.section{padding:clamp(6rem,9vw,9rem) 0}.eyebrow{margin-bottom:18px;color:var(--deep-violet);font-size:.76rem;font-weight:680;letter-spacing:.13em;line-height:1.4;text-transform:uppercase}.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:.85rem 1.35rem;border:1px solid transparent;border-radius:999px;cursor:pointer;font-size:.94rem;font-weight:620;transition-property:color,background-color,border-color,transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.2,0,0,1)}.button:active{transform:scale(.96)}.button-dark{color:var(--paper);background:var(--graphite)}.button-dark:hover{background:var(--deep-violet)}.button-light{color:var(--graphite);background:var(--paper)}.button-light:hover{background:var(--periwinkle)}.button-outline{border-color:#363333b3;color:var(--graphite);background:transparent}.button-outline:hover{border-color:var(--deep-violet);color:var(--paper);background:var(--deep-violet)}.button-small{min-height:46px;padding-inline:1.25rem}.site-header{position:fixed;z-index:40;top:0;left:0;width:100%;padding-top:16px}.header-card{display:flex;min-height:80px;align-items:center;justify-content:space-between;gap:2rem;padding:0 28px;border:1px solid rgba(54,51,51,.12);border-radius:10px;background:#f7f7f785;box-shadow:0 12px 34px #3633330d;backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%)}.brand-link{display:flex;min-height:44px;align-items:center}.brand-link img{width:220px}.desktop-nav{display:flex;align-items:center;gap:clamp(1rem,2vw,2rem);font-size:.94rem}.desktop-nav>a:not(.button){position:relative;display:inline-flex;min-height:44px;align-items:center}.desktop-nav>a:not(.button):after{position:absolute;right:0;bottom:7px;left:0;height:1px;background:currentColor;content:"";transform:scaleX(0);transform-origin:left;transition-property:transform;transition-duration:.15s}.desktop-nav>a:not(.button):hover:after{transform:scaleX(1)}.menu-button,.mobile-nav{display:none}.hero{position:relative;min-height:100svh;overflow:hidden;border-bottom:1px solid rgba(54,51,51,.2);--grid-x: 0px;--grid-y: 0px;background-color:var(--lilac)}.hero:before{position:absolute;top:-2%;right:-2%;bottom:-2%;left:-2%;background-image:linear-gradient(#b1abc2c2,#b1abc2c2),url(/brand/grid-texture.webp);background-position:center;background-size:cover;content:"";pointer-events:none;transform:translate3d(var(--grid-x),var(--grid-y),0) scale(1.025);transition-property:transform;transition-duration:.26s;transition-timing-function:cubic-bezier(.2,0,0,1)}.hero-grid{position:relative;z-index:1;display:grid;min-height:100svh;align-items:center;gap:clamp(2rem,5vw,7rem);grid-template-columns:minmax(0,1fr) minmax(380px,.92fr);padding-top:128px;padding-bottom:46px}.hero-copy{position:relative;z-index:2;max-width:770px}.hero-copy>*{animation:hero-in .65s both cubic-bezier(.2,0,0,1)}.hero-copy h1{max-width:770px;margin-bottom:2rem;font-size:clamp(3.75rem,5.2vw,5rem);line-height:.94}.hero-copy .eyebrow{animation-delay:40ms}.hero-lede{max-width:660px;margin-bottom:2.2rem;font-size:clamp(1.15rem,1.6vw,1.45rem);line-height:1.48;animation-delay:.1s}.hero-actions{display:flex;align-items:center;gap:.8rem;animation-delay:.16s}.hero-mark-wrap{display:flex;align-items:center;justify-content:center}@keyframes hero-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes mark-in{0%{opacity:0;transform:scale(.95) rotate(-2deg)}to{opacity:1;transform:scale(1) rotate(0)}}.section-heading{display:grid;align-items:end;gap:3rem;grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr)}.section-heading h2,.platform h2,.faq h2,.about h2,.testimonials h2{margin-bottom:0;font-size:clamp(2.9rem,3.5vw,3.75rem);line-height:.98}.section-heading>p{max-width:590px;margin-bottom:.25rem;color:var(--graphite);font-size:1.08rem;line-height:1.65}.service-grid{display:grid;margin-top:5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr))}.service-grid article{min-height:300px;padding:2rem 1.7rem 2.5rem}.service-grid article+article{border-left:1px solid var(--line)}.service-grid span,.process-grid span,.project-index{color:var(--violet);font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:680;letter-spacing:.1em}.service-grid h3{margin:4.8rem 0 1rem;font-size:1.65rem}.service-grid p{max-width:300px;margin-bottom:0;color:var(--graphite);line-height:1.6}.services .section-heading>p,.process .section-heading>p,.service-grid p,.process .process-grid p{color:var(--graphite);font-weight:450}.archive{background:#fafafa}.archive-heading{align-items:start}.project-count{justify-self:end;margin:0;font-variant-numeric:tabular-nums;font-size:1rem}.filter-scroller{width:100%;margin:3.5rem 0 2.7rem;overflow:hidden}.filter-row{display:flex;gap:.65rem;flex-wrap:wrap}.filter-button{min-height:44px;padding:.65rem 1rem;border:1px solid var(--line);border-radius:999px;color:var(--graphite);background:var(--paper);cursor:pointer;font-size:.92rem;font-weight:550;transition-property:color,background-color,border-color,transform;transition-duration:.15s}.filter-button:hover{border-color:var(--deep-violet);color:var(--deep-violet)}.filter-button.is-active{border-color:var(--deep-violet);color:var(--paper);background:var(--deep-violet)}.filter-button:active{transform:scale(.96)}.archive-layout{display:grid;align-items:start;gap:clamp(2.5rem,5vw,5.5rem);grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr)}.project-list{border-top:1px solid var(--line)}.project-row{display:grid;min-height:88px;align-items:center;border-bottom:1px solid var(--line);gap:1rem;grid-template-columns:42px minmax(0,1fr) minmax(130px,.42fr) 44px;transition-property:color,background-color,padding-left,padding-right;transition-duration:.17s;transition-timing-function:cubic-bezier(.2,0,0,1)}.project-row:hover,.project-row.is-active{padding-right:1rem;padding-left:1rem;color:var(--paper);background:var(--deep-violet)}.project-row:hover .project-index,.project-row.is-active .project-index{color:var(--periwinkle)}.project-title{overflow:hidden;font-size:clamp(1.25rem,2vw,2rem);font-weight:540;letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap}.project-category,.project-action{font-size:.78rem}.project-action{justify-self:end;font-weight:680}.project-mobile-image{display:none}.project-preview{position:sticky;top:116px}.project-preview-image{overflow:hidden;min-height:300px;background:var(--soft);outline:1px solid oklch(0 0 0 / .1);animation:preview-in .21s both ease-out}.project-preview-image img{width:100%;max-height:600px;object-fit:contain;object-position:top}@keyframes preview-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.project-preview-copy{display:grid;margin-top:1.5rem;align-items:end;gap:1.5rem;grid-template-columns:minmax(0,1fr) auto}.project-preview-copy p{max-width:470px;margin-bottom:0;line-height:1.55}.project-meta{margin-bottom:.65rem!important;color:var(--deep-violet);font-size:.75rem;font-weight:680;letter-spacing:.1em;text-transform:uppercase}.project-preview-copy a{min-height:44px;font-weight:650;text-decoration:underline;text-underline-offset:6px}.platform{background:#e5e7eb}.platform-stack{display:flex;gap:2.5rem;flex-direction:column}.platform h2{max-width:760px;color:var(--deep-violet);font-size:clamp(2.9rem,3.2vw,3.25rem)}.platform-copy{display:grid;gap:1.6rem}.platform-copy .eyebrow,.platform-copy h2,.platform-copy p{margin-bottom:0}.platform-intro{max-width:700px;font-size:1.15rem;line-height:1.58}.platform-logo-grid{display:grid;gap:8px;grid-template-columns:repeat(6,minmax(0,1fr))}.platform-logo{display:flex;min-height:72px;min-width:0;align-items:center;justify-content:center;overflow:hidden;padding:12px 16px;border-radius:6px;background:#f7f7f7e0;outline:1px solid oklch(0 0 0 / .08)}.platform-logo img{width:auto;max-width:82%;height:42px;border-radius:0;background:transparent;object-fit:contain}.platform-logo-webflow img,.platform-logo-framer img{height:56px}.platform-logo-squarespace img{height:34px}.platform-logo-astro .platform-wordmark{display:inline-flex;align-items:center;height:auto;color:#241f23;font-size:1.4rem;font-weight:700;letter-spacing:-.07em;line-height:1}.platform-logo-codex img,.platform-logo-claude img{height:46px}.platform-note{max-width:760px;margin-bottom:0;color:var(--graphite);font-size:1rem;line-height:1.5}.process-grid{display:grid;margin:5rem 0 0;padding:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));list-style:none}.process-grid li{min-height:310px;padding:2rem 1.45rem}.process-grid li+li{border-left:1px solid var(--line)}.process-grid h3{margin:5rem 0 1rem;font-size:1.45rem}.process-grid p{margin-bottom:0;color:var(--graphite);line-height:1.55}.pricing{background:var(--paper)}.project-planner{scroll-margin-top:120px}.project-planner h3{font-size:clamp(2rem,3vw,3rem);margin:0 0 1rem}.planner-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2rem;margin-top:2.5rem;align-items:start}.planner-options{border:0;margin:0 0 2rem;padding:0;min-width:0}.planner-options legend{font-weight:600;margin-bottom:1rem;font-size:1.1rem}.planner-packages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.planner-extras{display:grid;gap:.75rem}.planner-option{display:flex;gap:.9rem;padding:1.25rem;border:1px solid var(--line);border-radius:8px;cursor:pointer;background:var(--soft)}.planner-option:has(input:checked){border-color:var(--deep-violet);background:#e8e4ee;box-shadow:inset 0 0 0 1px var(--deep-violet)}.planner-option:focus-within{outline:2px solid var(--deep-violet);outline-offset:3px}.planner-option input{flex:0 0 20px;width:20px;height:20px;margin-top:3px;accent-color:var(--deep-violet)}.planner-option>span{display:grid;gap:.5rem}.planner-option span span{font-size:1rem;line-height:1.55}.planner-option b{font-weight:550}.planner-summary{background:var(--warm-grey);border-radius:8px;padding:clamp(1.5rem,3vw,2.5rem);position:sticky;top:110px}.planner-summary h4{font-size:1.5rem;margin:0 0 1.5rem}.planner-summary dl>div{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem}.planner-summary dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.planner-total{display:grid;gap:.75rem;border-top:1px solid var(--line);padding-top:1.5rem;margin-top:1.5rem}.planner-total strong{font-size:clamp(2.5rem,4vw,3.5rem);line-height:1.1;font-variant-numeric:tabular-nums}.planner-monthly{font-weight:600}.planner-summary>p{font-size:1rem;line-height:1.6}.planner-summary .button{width:100%;margin:.5rem 0 1rem}.planner-summary .planner-email-note{font-size:.875rem;margin-bottom:0}@media(max-width:820px){.planner-layout{grid-template-columns:1fr}.planner-summary{position:static}}@media(max-width:480px){.planner-packages{grid-template-columns:1fr}}.pricing-grid{display:grid;margin-top:5rem;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.offer-card{display:flex;min-height:630px;padding:clamp(2rem,3.5vw,3.5rem);border-radius:8px;background:var(--soft);flex-direction:column;justify-content:space-between}.offer-tone-1{background:#f3f1f1}.offer-tone-2{background:#e6e3e3}.offer-tone-3{background:#b1abc2}.offer-tone-4{color:var(--paper);background:var(--deep-violet)}.offer-name,.offer-includes,.offer-timeline{font-size:.76rem;font-weight:680;letter-spacing:.1em;text-transform:uppercase}.offer-price{margin:2.2rem 0 .2rem;font-size:clamp(3rem,3.6vw,3.75rem);font-weight:520;letter-spacing:-.065em;line-height:.95;font-variant-numeric:tabular-nums}.offer-timeline{margin-top:.75rem;color:var(--violet)}.offer-tone-4 .offer-timeline{color:var(--periwinkle)}.offer-description{max-width:600px;margin-top:2rem;font-size:1.15rem;line-height:1.58}.offer-includes{margin-bottom:1.1rem;color:var(--deep-violet)}.offer-tone-4 .offer-includes{color:var(--periwinkle)}.offer-card ul{display:grid;margin:0 0 2.2rem;padding:0;gap:0;list-style:none}.offer-card li{display:flex;align-items:center;gap:.75rem;padding:.8rem 0;border-bottom:1px solid var(--line);line-height:1.45}.offer-list-icon{display:inline-flex;width:28px;height:28px;flex:0 0 28px;align-items:center;justify-content:center;border-radius:6px;color:var(--deep-violet);background:#4c3e5e1a}.offer-tone-4 .offer-list-icon{color:var(--paper);background:#f7f7f724}.offer-tone-4 li{border-bottom-color:#f7f7f72e}.offer-card .button{width:100%}.faq-grid{display:grid;align-items:start;gap:clamp(3rem,8vw,10rem);grid-template-columns:minmax(240px,.55fr) minmax(0,1.45fr)}.faq h2{font-size:clamp(3.25rem,3.5vw,3.75rem)}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-question{display:flex;width:100%;min-height:92px;align-items:center;justify-content:space-between;gap:2rem;padding:2rem 0;border:0;cursor:pointer;color:var(--ink);background:transparent;font:inherit;font-size:clamp(1.15rem,1.6vw,1.45rem);font-weight:590;letter-spacing:-.025em;text-align:left}.faq-icon{flex:0 0 auto;color:var(--deep-violet);transform:rotate(0);transition-property:transform,color;transition-duration:.34s,.18s;transition-timing-function:cubic-bezier(.2,0,0,1),ease-out}.faq-item[data-open=true] .faq-question{color:var(--deep-violet)}.faq-item[data-open=true] .faq-icon{color:var(--violet);transform:rotate(45deg)}.faq-answer{display:grid;grid-template-rows:0fr;opacity:0;transform:translateY(-6px);visibility:hidden;transition-property:grid-template-rows,opacity,transform,visibility;transition-duration:.42s,.24s,.32s,0s;transition-timing-function:cubic-bezier(.2,0,0,1),ease-out,cubic-bezier(.2,0,0,1),linear;transition-delay:0s,0s,0s,.42s}.faq-answer-inner{min-height:0;overflow:hidden}.faq-item[data-open=true] .faq-answer{grid-template-rows:1fr;opacity:1;transform:translateY(0);visibility:visible;transition-delay:0s}.faq-answer p{max-width:760px;margin:0;padding:0 2rem 2.2rem 1.25rem;color:var(--graphite);font-size:1.03rem;line-height:1.68}.about{background:var(--soft)}.about-grid{display:grid;align-items:center;gap:clamp(3rem,8vw,9rem);grid-template-columns:minmax(0,1.05fr) minmax(350px,.95fr)}.about-image{overflow:hidden;aspect-ratio:4 / 3;outline:1px solid oklch(0 0 0 / .1)}.about-image img{width:100%;height:100%;object-fit:cover}.about h2{margin-bottom:2rem}.about-copy p:not(.eyebrow){max-width:610px;color:var(--graphite);font-size:1.08rem;line-height:1.68}.testimonials{color:var(--paper);background:var(--deep-violet)}.testimonial-heading{display:grid;align-items:end;gap:3rem;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}.testimonials .eyebrow{color:var(--periwinkle)}.testimonial-heading h2{max-width:760px;margin-bottom:0}.testimonial-heading>p{max-width:520px;margin-bottom:.25rem;color:#f7f7f7c7;font-size:1.05rem;line-height:1.65}.testimonial-grid{display:grid;margin-top:4.5rem;border-top:1px solid rgba(247,247,247,.22);border-bottom:1px solid rgba(247,247,247,.22);grid-template-columns:repeat(3,minmax(0,1fr))}.testimonial-grid blockquote{display:flex;min-height:360px;margin:0;padding:2.25rem;flex-direction:column;justify-content:space-between}.testimonial-grid blockquote+blockquote{border-left:1px solid rgba(247,247,247,.22)}.testimonial-grid blockquote>p{margin-bottom:2.5rem;color:var(--paper);font-size:clamp(1.25rem,1.55vw,1.55rem);line-height:1.48}.testimonial-grid footer{display:grid;gap:.3rem;color:#f7f7f7b3;font-style:normal}.testimonial-grid footer strong{color:var(--paper);font-weight:620}.testimonial-grid.testimonial-slider{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.testimonial-slider::-webkit-scrollbar{display:none}.testimonial-grid.testimonial-slider blockquote{flex:0 0 50%;min-width:0;box-sizing:border-box;scroll-snap-align:start;border:0;padding:clamp(1.5rem,4vw,4rem)}.testimonial-slider blockquote>p{max-width:54rem}.testimonial-grid.testimonial-slider blockquote+blockquote{border-left:1px solid rgba(247,247,247,.22)}@media(max-width:820px){.testimonial-grid.testimonial-slider blockquote{flex-basis:100%}}.testimonial-controls{display:flex;justify-content:space-between;align-items:center;padding-top:1.25rem;color:var(--paper);font-variant-numeric:tabular-nums}.testimonial-controls>div{display:flex;gap:.75rem}.testimonial-controls button{width:48px;height:48px;border:1px solid currentColor;border-radius:50%;color:inherit;background:transparent;font-size:1.5rem;cursor:pointer}.testimonial-controls button:hover:not(:disabled){background:#ffffff1f}.testimonial-controls button:disabled{opacity:.3;cursor:default}.testimonial-controls button:focus-visible,.testimonial-slider:focus-visible{outline:2px solid var(--paper);outline-offset:4px}.testimonial-contact{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-top:2.5rem}.testimonial-contact>p{margin-bottom:0;font-size:1.25rem;font-weight:560}.testimonial-contact>div{display:flex;align-items:center;gap:1.3rem}.email-link{display:inline-flex;width:fit-content;min-height:44px;align-items:center;border-bottom:1px solid currentColor}.footer-compact .footer-shell{width:var(--shell)}.footer-compact .footer-invitation{max-width:760px;margin:1rem auto 4.5rem;text-align:center}.footer-invitation .eyebrow{color:var(--lilac)}.footer-invitation h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;margin-bottom:1.5rem}.footer-invitation>p:not(.eyebrow){color:#e5e0ec;font-size:1.1rem;line-height:1.65}.footer-invitation .button{margin-top:1.5rem;gap:1rem;max-width:100%;overflow-wrap:anywhere}.footer-compact .footer-grid{min-height:0;padding-top:3rem;border-top:1px solid rgba(247,247,247,.2);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,.65fr);gap:3rem}.footer-compact .footer-brand{grid-column:auto}.footer-compact .footer-brand img{width:240px;max-width:100%}.footer-compact .footer-brand>p{max-width:380px;color:#e5e0ec;margin-top:1.2rem;line-height:1.65}.footer-compact .footer-details p:not(.footer-label){text-transform:none;letter-spacing:normal;color:#e5e0ec}.footer-compact .footer-bottom{border-top:1px solid rgba(247,247,247,.2);padding-top:1.75rem;margin-top:3rem;color:#d4cddd}@media(max-width:700px){.footer-compact .footer-grid{grid-template-columns:1fr 1fr;gap:2rem}.footer-compact .footer-brand{grid-column:1 / -1}.footer-invitation .button{font-size:.95rem;padding-inline:1rem}}.footer{padding:4rem 0 2rem;border-top:1px solid rgba(247,247,247,.16);color:var(--paper);background:#352b43}.footer-shell{width:min(1900px,calc(100vw - 120px));margin-inline:auto}.footer-grid{display:grid;align-items:start;min-height:330px;gap:clamp(3rem,7vw,9rem);grid-template-columns:minmax(420px,1.7fr) minmax(280px,.55fr) minmax(150px,.25fr)}.footer-brand a{display:inline-flex}.footer-brand img{width:clamp(500px,33vw,680px);filter:invert(1)}.footer-details{display:grid;gap:2.3rem}.footer-details p,.footer-details a,.footer-links p{margin-bottom:0}.footer-details p:not(.footer-label),.footer-details a{color:#f7f7f7d1;font-size:1rem;line-height:1.5}.footer-details p:not(.footer-label){letter-spacing:.04em;text-transform:uppercase}.footer-label{margin-bottom:.65rem!important;color:var(--paper);font-size:.8rem;font-weight:680;letter-spacing:.04em;text-transform:uppercase}.footer-links{display:flex;flex-direction:column}.footer-links a{display:flex;min-height:44px;align-items:center;color:#f7f7f7d1;transition-property:color,transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.2,0,0,1)}.footer-links a:hover,.footer-details a:hover{color:var(--paper)}.footer-links a:hover{transform:translate(4px)}.footer-project-link{display:flex;width:100%;min-height:90px;margin-top:2.8rem;align-items:center;justify-content:center;border-radius:999px;color:var(--graphite);background:var(--lilac);font-size:clamp(1.6rem,2.1vw,2.25rem);font-weight:620;letter-spacing:-.04em;transition-property:color,background-color,transform;transition-duration:.16s;transition-timing-function:cubic-bezier(.2,0,0,1)}.footer-project-link:hover{background:var(--paper)}.footer-project-link:active{transform:scale(.96)}.footer-bottom{margin-top:4.5rem;color:#f7f7f78f;font-size:.82rem}@media(max-width:1120px){:root{--shell: min(100% - 48px, 1050px)}.brand-link img{width:190px}.desktop-nav{gap:1rem}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.62fr)}.hero-copy h1{font-size:clamp(3.75rem,7vw,5rem)}.platform-logo-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid article:nth-child(3){border-top:1px solid var(--line);border-left:0}.service-grid article:nth-child(4){border-top:1px solid var(--line)}.archive-layout{gap:2rem;grid-template-columns:minmax(0,1fr) 390px}.project-row{grid-template-columns:38px minmax(0,1fr) 44px}.project-category{display:none}.process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.process-grid li:nth-child(4){border-top:1px solid var(--line);border-left:0}.process-grid li:nth-child(5){border-top:1px solid var(--line)}.footer-shell{width:min(100% - 48px,1120px)}.footer-grid{gap:3rem;grid-template-columns:minmax(280px,1.1fr) minmax(230px,.55fr) minmax(140px,.3fr)}.footer-brand img{width:300px}}@media(max-width:820px){:root{--shell: calc(100vw - 32px) }html{scroll-padding-top:16px}.section{padding:5.5rem 0}.site-header{padding-top:16px}.header-card{min-height:58px;padding:0 20px}.brand-link img{width:190px}.desktop-nav{display:none}.menu-button{display:inline-flex;min-width:58px;min-height:44px;align-items:center;justify-content:flex-end;padding:0;border:0;background:transparent;cursor:pointer;font-weight:620}.mobile-nav{position:absolute;top:86px;right:16px;left:16px;display:grid;padding:12px 20px;border-radius:10px;color:var(--paper);background:var(--graphite);box-shadow:0 20px 50px #3633333d}.mobile-nav a{display:flex;min-height:50px;align-items:center;border-bottom:1px solid rgba(247,247,247,.16)}.mobile-nav a:last-child{border-bottom:0}.hero{min-height:auto}.hero-grid{min-height:auto;grid-template-columns:1fr;padding-top:132px;padding-bottom:0}.hero-copy h1{max-width:700px;font-size:clamp(3.5rem,10vw,4.75rem)}.hero-mark-wrap{width:100%;margin:clamp(1.5rem,4vw,2.5rem) 0 0;padding-bottom:clamp(2rem,6vw,3.5rem)}.story-clover{width:min(86vw,600px)}.section-heading,.faq-grid,.about-grid,.testimonial-heading{grid-template-columns:1fr}.section-heading{align-items:start;gap:1.5rem}.project-count{justify-self:start}.filter-scroller{position:relative;width:calc(100% + 16px);margin-top:2.3rem;overflow-x:auto;scrollbar-width:none}.filter-scroller::-webkit-scrollbar{display:none}.filter-row{width:max-content;padding-right:32px;flex-wrap:nowrap}.filter-button{flex:0 0 auto}.archive-layout{grid-template-columns:1fr}.project-preview{display:none}.project-row{padding:1.7rem 0 1.5rem;grid-template-columns:42px minmax(0,1fr) auto;grid-template-rows:auto auto auto}.project-row:hover,.project-row.is-active{padding:1.7rem 0 1.5rem;color:var(--graphite);background:transparent}.project-row:hover .project-index,.project-row.is-active .project-index{color:var(--violet)}.project-mobile-image{display:block;grid-column:1 / -1;grid-row:1;margin-bottom:.5rem;overflow:hidden;background:var(--soft);outline:1px solid oklch(0 0 0 / .1)}.project-mobile-image img{width:100%;max-height:520px;object-fit:contain;object-position:top}.project-index{grid-column:1;grid-row:2}.project-title{grid-column:2;grid-row:2;overflow:visible;white-space:normal}.project-action{grid-column:3;grid-row:2}.project-category{display:block;grid-column:2 / -1;grid-row:3;color:var(--graphite)}.platform-stack,.about-grid{gap:3rem}.testimonial-grid{grid-template-columns:1fr}.testimonial-grid blockquote{min-height:300px}.testimonial-grid blockquote+blockquote{border-top:1px solid rgba(247,247,247,.22);border-left:0}.testimonial-contact{align-items:flex-start;flex-direction:column}.process-grid{grid-template-columns:1fr}.process-grid li,.process-grid li+li,.process-grid li:nth-child(4),.process-grid li:nth-child(5){min-height:auto;padding:1.7rem 0;border-top:0;border-right:0;border-bottom:1px solid var(--line);border-left:0}.process-grid h3{margin:2rem 0 .8rem}.pricing-grid{grid-template-columns:1fr}.offer-card{min-height:580px}.faq-grid{gap:2.5rem}.about-image{aspect-ratio:1 / 1}.footer-shell{width:min(100% - 48px,1120px)}.footer-grid{min-height:0;gap:3rem;grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1 / -1}.footer-brand img{width:300px}}@media(max-width:560px){.brand-link img{width:175px}.hero-copy h1{margin-bottom:1.8rem;font-size:clamp(3.05rem,12vw,3.85rem)}.hero-lede{font-size:1.08rem}.hero-actions{align-items:flex-start;flex-direction:column}.hero-actions .button{width:auto}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid article+article,.service-grid article:nth-child(3),.service-grid article:nth-child(4){min-height:auto;padding:1.8rem 0;border-top:0;border-right:0;border-bottom:1px solid var(--line);border-left:0}.service-grid h3{margin-top:2.4rem}.section-heading h2,.platform h2,.about h2,.testimonials h2{font-size:clamp(2.7rem,10vw,3.25rem)}.faq h2{font-size:clamp(3rem,13vw,3.5rem)}.platform-logo-grid{grid-template-columns:1fr}.pricing-grid{margin-top:3.5rem}.offer-card{min-height:0;gap:4rem;padding:2rem 1.4rem}.offer-price{font-size:clamp(2.85rem,12vw,3.65rem)}.faq-question{min-height:80px;padding:1.5rem 0}.faq-answer p{padding-right:0;padding-left:0}.testimonial-grid{margin-top:3.5rem}.testimonial-grid blockquote{min-height:0;padding:2rem 0}.testimonial-contact>div{align-items:flex-start;flex-direction:column;gap:.8rem}.footer{padding-top:3rem}.footer-shell{width:calc(100vw - 32px)}.footer-grid{min-height:0;gap:3rem;grid-template-columns:1fr}.footer-brand img{width:min(82vw,320px)}.footer-details{gap:1.8rem}.footer-project-link{min-height:64px;margin-top:3rem;font-size:1.45rem}.footer-bottom{margin-top:3.2rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.hero-mark-wrap{padding-block:84px}.story-clover{position:relative;width:min(40vw,560px);aspect-ratio:1;isolation:isolate}.story-clover-canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;touch-action:pan-y}.story-clover-labels{margin:0;padding:0;list-style:none}.story-clover-label{position:absolute;width:47%}.story-clover-label-1{left:1%;bottom:calc(100% + 10px)}.story-clover-label-2{right:1%;bottom:calc(100% + 10px);text-align:right}.story-clover-label-3{left:1%;top:calc(100% + 10px)}.story-clover-label-4{right:1%;top:calc(100% + 10px);text-align:right}.story-clover-label button{display:grid;width:100%;gap:3px;padding:4px 0;border:0;color:var(--graphite);background:none;font:inherit;text-align:inherit;cursor:pointer;opacity:.42;transition:opacity .45s ease,transform .45s cubic-bezier(.2,0,0,1)}.story-clover-label-1 button,.story-clover-label-2 button{transform:translateY(4px)}.story-clover-label-3 button,.story-clover-label-4 button{transform:translateY(-4px)}.story-clover-label button.is-on{opacity:1;transform:none}.story-clover-label button:focus-visible{outline:2px solid var(--deep-violet);outline-offset:4px;border-radius:4px}.story-clover-title{font-size:clamp(1rem,1.5vw,1.25rem);font-weight:600;letter-spacing:-.02em;line-height:1.15}.story-clover-number{margin-right:7px;color:var(--deep-violet);font-size:.7rem;font-weight:680;letter-spacing:.08em;vertical-align:2px}.story-clover-line{color:#3e3946;font-size:clamp(.78rem,1vw,.88rem);line-height:1.35}@media(max-width:1120px){.story-clover{width:min(38vw,440px)}}@media(max-width:820px){.hero-mark-wrap{margin-top:0;padding-block:56px 64px}.story-clover{width:min(84vw,520px)}}@media(max-width:420px){.story-clover-line{display:none}}.pen-mark{position:relative;display:inline-block;white-space:nowrap}.pen-mark-line{position:absolute;left:-3%;bottom:-.1em;width:106%;height:.3em;overflow:visible;pointer-events:none}.pen-mark-line path{fill:none;stroke:var(--violet);stroke-width:3.2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;vector-effect:non-scaling-stroke;animation:pen-draw .9s .8s cubic-bezier(.6,0,.2,1) forwards}@keyframes pen-draw{to{stroke-dashoffset:0}}.mini-clover{display:block;width:26px;height:26px;overflow:visible}.mini-clover path{fill:#36333324;transform-box:fill-box;transform-origin:center;transition:fill .35s ease}.mini-clover path.is-lit{fill:var(--violet);animation:leaf-pop .48s cubic-bezier(.2,0,0,1.4)}@keyframes leaf-pop{0%{transform:scale(.82)}to{transform:scale(1)}}.service-mark{display:flex;align-items:center;justify-content:space-between}.service-mark .mini-clover{transition:transform .5s cubic-bezier(.2,0,0,1.4)}.service-grid article:hover .service-mark .mini-clover{transform:rotate(-10deg) scale(1.18)}.planner-summary-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.planner-summary-head h4{margin:0}.planner-clover{width:38px;height:38px;flex:none}.work-card-image img{border-radius:0;outline:0;transition:transform .6s cubic-bezier(.2,0,0,1)}.site-frame{display:block;overflow:hidden;border-radius:8px 8px 0 0;outline:1px solid rgba(54,51,51,.12)}.site-frame-bar{position:relative;z-index:1;display:flex;height:30px;align-items:center;justify-content:center;padding:0 12px;border-bottom:1px solid rgba(54,51,51,.1);background:#efedf2}.site-frame-dots{position:absolute;left:12px;display:flex;gap:6px}.site-frame-dots i{width:8px;height:8px;border-radius:50%;background:#d6d3d8;transition:background .3s ease}.site-frame-url{max-width:60%;overflow:hidden;padding:3px 12px;border-radius:99px;color:var(--grey);background:#ffffffb3;font-size:.72rem;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;transition:color .3s ease,background .3s ease}.work-card-image:hover .site-frame-dots i:nth-child(1),.work-card-image:focus-visible .site-frame-dots i:nth-child(1){background:var(--violet)}.work-card-image:hover .site-frame-dots i:nth-child(2),.work-card-image:focus-visible .site-frame-dots i:nth-child(2){background:var(--lilac);transition-delay:60ms}.work-card-image:hover .site-frame-dots i:nth-child(3),.work-card-image:focus-visible .site-frame-dots i:nth-child(3){background:var(--periwinkle);transition-delay:.12s}.work-card-image:hover .site-frame-url,.work-card-image:focus-visible .site-frame-url{color:var(--deep-violet);background:#fff}.work-card-image:hover img{transform:scale(1.015)}.process-sketch{display:block;width:30px;height:30px;margin-top:2.6rem;overflow:visible}.process-sketch path,.process-sketch rect{fill:none;stroke:var(--violet);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.2s cubic-bezier(.6,0,.2,1);transition-delay:var(--sketch-delay, 0ms)}.process-grid.is-drawn .process-sketch path,.process-grid.is-drawn .process-sketch rect{stroke-dashoffset:0}.process-grid h3{margin-top:1.6rem}.footer-compact .footer-invitation{margin-bottom:3rem}.start-bar{position:relative;isolation:isolate;display:flex;min-height:clamp(120px,14vw,200px);align-items:center;justify-content:space-between;gap:1.5rem;overflow:hidden;padding:1.5rem clamp(1.5rem,4vw,3.5rem);border-radius:20px;color:var(--graphite);background:var(--lilac)}.start-bar:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background:var(--periwinkle);content:"";transform:scaleX(0);transform-origin:left center;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.start-bar-clover{position:absolute;right:9%;top:50%;z-index:-1;width:clamp(180px,24vw,340px);opacity:.4;pointer-events:none;transform:translateY(-50%) rotate(-8deg);transition:transform .9s cubic-bezier(.2,.7,.2,1),opacity .6s ease}.start-bar-clover svg{display:block;width:100%;height:auto;overflow:visible}.start-bar-clover circle{fill:var(--deep-violet)}.start-bar-label{font-size:clamp(2.5rem,7vw,6.5rem);font-weight:570;letter-spacing:-.055em;line-height:1}.start-bar-arrow{display:inline-flex;width:clamp(56px,6vw,88px);height:clamp(56px,6vw,88px);flex:none;align-items:center;justify-content:center;border-radius:50%;color:var(--paper);background:var(--graphite);transition:transform .5s cubic-bezier(.2,.7,.2,1)}.start-bar-arrow svg{width:40%;height:40%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.start-bar:hover:before,.start-bar:focus-visible:before{transform:scaleX(1)}.start-bar:hover .start-bar-clover,.start-bar:focus-visible .start-bar-clover{opacity:.6;transform:translateY(-50%) rotate(14deg) scale(1.08)}.start-bar:hover .start-bar-arrow,.start-bar:focus-visible .start-bar-arrow{transform:translate(10px)}.start-bar:focus-visible{outline:2px solid var(--paper);outline-offset:4px}.start-bar{margin-bottom:3.5rem}@media(prefers-reduced-motion:reduce){.pen-mark-line path{animation:none;stroke-dashoffset:0}.process-sketch path,.process-sketch rect{transition:none;stroke-dashoffset:0}.mini-clover path.is-lit{animation:none}.story-clover-label button,.start-bar:before,.start-bar-clover,.start-bar-arrow,.work-card-image img,.service-mark .mini-clover{transition:none}}.section-heading h2{max-width:11.5em}::selection{color:var(--graphite);background:var(--lilac)}.brand-logo{position:relative;display:block}.brand-logo-word{clip-path:inset(0 0 0 15.8%)}.brand-logo-clover{position:absolute;top:0;left:0;clip-path:inset(0 84.2% 0 0);transform-origin:7.3% 50%;transition:transform .9s cubic-bezier(.3,0,.1,1)}.brand-link:hover .brand-logo-clover,.brand-link:focus-visible .brand-logo-clover{transform:rotate(180deg)}.platform-logo{position:relative;min-height:112px;margin:0;flex-direction:column}.platform-logo img,.platform-logo .platform-wordmark{transition:transform .45s cubic-bezier(.2,0,0,1)}.platform-note-tip{position:absolute;right:12px;bottom:12px;left:12px;color:var(--deep-violet);font-size:.78rem;line-height:1.3;text-align:center;opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .45s cubic-bezier(.2,0,0,1)}.platform-logo:hover img,.platform-logo:hover .platform-wordmark{transform:translateY(-16px)}.platform-logo:hover .platform-note-tip{opacity:1;transform:none}@media(hover:none){.platform-logo{min-height:auto;gap:10px;padding:18px 16px}.platform-note-tip{position:static;opacity:1;transform:none}}@font-face{font-family:Caveat;src:url(/fonts/caveat-500.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}.project-planner{position:relative}.hand-note{position:absolute;top:.5rem;right:2%;width:min(300px,30%);margin:0;color:var(--violet);font-family:Caveat,Bradley Hand,Segoe Print,cursive;font-size:1.6rem;line-height:1.05;transform:rotate(-3deg)}.hand-note-arrow{display:block;width:80px;height:60px;margin:6px 0 0 12%;overflow:visible}.hand-note-arrow path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}@media(max-width:900px){.hand-note{position:static;width:auto;margin:.5rem 0 0;font-size:1.45rem;transform:rotate(-1.5deg)}.hand-note-arrow{display:none}}.footer-compact .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.back-to-top{display:inline-flex;min-height:44px;align-items:center;gap:10px;padding:0;border:0;color:#e5e0ec;background:none;font:inherit;cursor:pointer}.back-to-top .mini-clover{width:22px;height:22px;transition:transform .6s cubic-bezier(.2,.7,.2,1.25)}.back-to-top .mini-clover path.is-lit{fill:var(--lilac);animation:none}.back-to-top:hover .mini-clover,.back-to-top:focus-visible .mini-clover{transform:rotate(-180deg)}.back-to-top:focus-visible{outline:2px solid var(--paper);outline-offset:4px;border-radius:4px}.work-card-grid.is-shuffling .work-card{animation:card-settle .52s cubic-bezier(.2,0,0,1) both;animation-delay:calc(var(--i, 0) * 60ms)}@keyframes card-settle{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.testimonial-slider blockquote{opacity:.25;transition:opacity .6s ease}.testimonial-slider blockquote.is-current{opacity:1}@media(prefers-reduced-motion:reduce){.brand-logo-clover,.platform-logo img,.platform-logo .platform-wordmark,.platform-note-tip,.back-to-top .mini-clover,.testimonial-slider blockquote{transition:none}.work-card-grid.is-shuffling .work-card{animation:none}}
