@import "https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700;800&family=Newsreader:ital,wght@1,400&display=swap";:root{--color-bg:#faf9f7;--color-surface:#fff;--color-bg-alt:#efede9;--color-text:#1a1d24;--color-muted:#555b66;--color-accent:#1d3557;--color-accent-hover:#142741;--color-border:#e0ddd7;--color-on-accent:#fff;--font-heading:"Figtree", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-body:"Figtree", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-ui:"Figtree", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-quote:"Newsreader", Georgia, "Times New Roman", serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--max-width:1080px;--radius:2px;--transition:.2s ease;--spring:linear(0, .0063, .0246, .0537, .0925, .1399, .195, .2567, .3243, .3967, .4731, .5527, .6346, .718, .8021, .886, .9691, 1.0505, 1.0877, 1.0989, 1.0921, 1.0731, 1.0463, 1.0153, .9828, .9956, 1);--spring-fast:cubic-bezier(.32, .72, 0, 1);--press:.11s cubic-bezier(.4, 0, .6, 1);--chevron-down:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");flex-direction:column;min-height:100vh;font-size:1.0625rem;line-height:1.62;display:flex}h1,h2,h3{font-family:var(--font-heading);color:var(--color-text);text-wrap:balance;font-optical-sizing:auto;font-weight:600}h1{letter-spacing:-.03em;font-size:clamp(2.5rem,4.6vw,3.5rem);font-weight:700;line-height:1.06}h2{letter-spacing:-.018em;font-size:clamp(1.5rem,2.3vw,1.75rem);font-weight:700;line-height:1.2}h3{letter-spacing:-.006em;font-size:1.1875rem;line-height:1.3}p{max-width:66ch}a{color:var(--color-accent);text-underline-offset:.18em;transition:color var(--transition);text-decoration-thickness:1px}a:hover{color:var(--color-accent-hover)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}.container{width:100%;max-width:var(--max-width);padding:0 var(--space-6);margin:0 auto}.site-header{z-index:10;background:color-mix(in srgb, var(--color-bg) 72%, transparent);-webkit-backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid #0000;transition:border-color .28s,box-shadow .28s;position:sticky;top:0}.site-header[data-scrolled=true]{border-bottom-color:var(--color-border);box-shadow:0 1px 12px #1a1d240a}.site-header .container{padding-top:var(--space-4);padding-bottom:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.site-title{font-family:var(--font-heading);color:var(--color-text);padding-bottom:5px;font-size:1.25rem;font-weight:600;text-decoration:none;position:relative}.site-title:after{content:"";background:var(--color-accent);height:2px;position:absolute;bottom:0;left:0;right:0}.site-title:hover{color:var(--color-accent)}.site-nav ul{gap:var(--space-8);margin:0;padding:0;list-style:none;display:flex}.site-nav a{padding:var(--space-2) 0;color:var(--color-text);font-family:var(--font-ui);letter-spacing:.005em;font-size:.875rem;font-weight:450;text-decoration:none;display:inline-block;position:relative}.site-nav a:after{content:"";background:var(--color-accent);height:2px;transition:right var(--transition);position:absolute;bottom:0;left:0;right:100%}.site-nav a:hover{color:var(--color-accent)}.site-nav a:hover:after{right:0}.site-nav a[aria-current=page]{color:var(--color-accent);font-weight:600}.site-nav a[aria-current=page]:after{right:0}.nav-toggle{border:1px solid var(--color-border);border-radius:var(--radius);width:40px;height:40px;color:var(--color-text);cursor:pointer;transition:border-color var(--transition), color var(--transition);background:0 0;justify-content:center;align-items:center;padding:0;display:none}.nav-toggle:hover{color:var(--color-accent);border-color:var(--color-accent)}.nav-toggle:active{transition:transform var(--press);transform:scale(.94)}.nav-toggle,.site-nav a,.faq-item summary{touch-action:manipulation}.site-nav a:active{opacity:.55;transition:opacity var(--press)}.nav-toggle svg{width:22px;height:22px}main{padding:var(--space-16) 0 var(--space-24);flex:1}.page-header{margin-bottom:var(--space-16)}.page-header p{color:var(--color-muted);max-width:48ch;font-size:1.25rem;line-height:1.55}section+section{margin-top:var(--space-16)}section h2{margin-top:0;margin-bottom:var(--space-4)}@media (width>=900px){main section.split{column-gap:var(--space-12);border-top:1px solid var(--color-border);padding-top:var(--space-8);grid-template-columns:13rem 1fr;align-items:start;display:grid}main section.split+section.split{margin-top:var(--space-12)}main section.split>h2{grid-column:1;margin-bottom:0;font-size:1.25rem;line-height:1.3}main section.split>:not(h2){grid-column:2}main section.split>*+:not(h2){margin-top:var(--space-6)}main section.split>.card-grid,main section.split>.scope-grid,main section.split>.card-grid~*,main section.split>.scope-grid~*{grid-column:1/-1}main section.split>.card-grid,main section.split>.scope-grid{margin-top:var(--space-8)}}.hero{padding-bottom:var(--space-8);gap:var(--space-12);align-items:center;display:grid}@media (width>=960px){.hero{gap:var(--space-16);grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}}.hero h1{letter-spacing:-.032em;max-width:14ch;font-size:clamp(2.75rem,5.6vw,4.25rem)}.hero-copy>p{max-width:42ch;color:var(--color-muted);font-size:1.25rem;line-height:1.5}.hero-figure{margin:0}.hero-figure img{aspect-ratio:16/9;object-fit:cover;object-position:top;border:1px solid var(--color-border);border-radius:calc(var(--radius) + 2px);background:var(--color-surface);width:100%;height:auto;display:block;box-shadow:0 18px 44px -20px #1a1d2447}.hero-figure figcaption{margin-top:var(--space-4);color:var(--color-muted);font-size:.875rem;line-height:1.45}.hero-figure figcaption strong{color:var(--color-text);font-weight:600;display:block}.work-strip{gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin:0;padding:0;list-style:none;display:grid}.work-shot{aspect-ratio:16/10;object-fit:cover;object-position:top;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;height:auto;display:block}.work-strip .work-name{margin:var(--space-4) 0 0;max-width:none;font-weight:600}.work-strip .work-client{max-width:none;color:var(--color-muted);margin:0;font-size:.9375rem;line-height:1.45}.work-strip-link{margin-top:var(--space-6)}.panel{background:var(--color-bg-alt);border-radius:var(--radius);padding:var(--space-8) var(--space-12)}@media (width<=640px){.panel{padding:var(--space-6)}}.testimonial{border:none;border-left:2px solid var(--color-accent);padding-left:var(--space-6);margin:0}.testimonial p{font-family:var(--font-quote);color:var(--color-text);text-indent:-.42em;max-width:54ch;font-size:1.4375rem;font-style:italic;line-height:1.5}.testimonial cite{margin-top:var(--space-4);font-family:var(--font-ui);letter-spacing:.01em;color:var(--color-muted);font-size:.875rem;font-style:normal;font-weight:500;display:block}.card-grid{gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.card{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-6);background:var(--color-surface);position:relative}.card-icon{width:1.5rem;height:1.5rem;margin-bottom:var(--space-4);color:var(--color-accent)}.card h3,.card .project-title{margin-top:0;margin-bottom:var(--space-2);font-size:1.1875rem;line-height:1.25}.card-price{margin:0 0 var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);font-family:var(--font-heading);color:var(--color-text);font-size:1.875rem;font-weight:600;line-height:1.1}.card-price .price-lead,.card-price .price-suffix{font-family:var(--font-ui);color:var(--color-muted);font-size:.8125rem;font-weight:500}.card-price .price-lead{margin-right:.3em}.project-preview{align-items:center;gap:var(--space-4);margin:calc(var(--space-6) * -1) calc(var(--space-6) * -1) var(--space-6);padding:var(--space-3) var(--space-4);background:var(--color-bg-alt);border-bottom:1px solid var(--color-border);border-radius:calc(var(--radius) - 2px) calc(var(--radius) - 2px) 0 0;display:flex}.project-dots{background:var(--color-border);width:8px;height:8px;box-shadow:15px 0 0 var(--color-border), 30px 0 0 var(--color-border);border-radius:50%;flex:none;margin-right:22px}.project-url{font-family:var(--font-ui);color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.project-shot{aspect-ratio:16/10;object-fit:cover;object-position:top;width:100%;height:auto;margin:0 0 var(--space-6);border:1px solid var(--color-border);border-radius:calc(var(--radius) - 2px);background:var(--color-bg-alt);display:block}.card p{color:var(--color-muted);margin-bottom:0}.card p+p{margin-top:var(--space-3)}.button{align-items:center;gap:var(--space-2);background:var(--color-accent);color:var(--color-on-accent);border-radius:var(--radius);font-family:var(--font-ui);border:1px solid var(--color-accent);cursor:pointer;touch-action:manipulation;transition:background var(--transition), border-color var(--transition), transform .24s var(--spring);padding:.8rem 1.5rem;font-size:.9375rem;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.button:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:var(--color-on-accent)}.button:active{transition:transform var(--press);transform:scale(.97)}.button.secondary{color:var(--color-text);border-color:var(--color-border);background:0 0}.button.secondary:hover{border-color:var(--color-text);color:var(--color-text);background:0 0}.hero-actions{gap:var(--space-4);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.button[type=submit]{font:inherit;font-weight:600}form{max-width:32rem}form p{max-width:none}label{font-family:var(--font-ui);margin-bottom:var(--space-1);font-size:.8125rem;font-weight:500;display:block}input,textarea{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;font:inherit;background:var(--color-surface);transition:border-color var(--transition), box-shadow var(--transition);padding:.65rem .85rem}input:focus-visible,textarea:focus-visible{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #1d35572b}.site-footer{border-top:1px solid var(--color-border);background:var(--color-bg-alt);color:var(--color-muted);font-size:.9rem}.footer-grid{justify-content:space-between;gap:var(--space-6);padding-top:var(--space-8);flex-wrap:wrap;display:flex}.footer-grid p{max-width:28rem;margin:0}.footer-grid p.footer-brand{font-family:var(--font-heading);color:var(--color-text);margin-bottom:var(--space-1);font-weight:600}.footer-nav{gap:var(--space-2) var(--space-6);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.footer-nav a{color:var(--color-muted);font-family:var(--font-ui);font-size:.8125rem;text-decoration:none}.footer-nav a:hover{color:var(--color-accent)}.footer-copyright{padding:var(--space-6) 0;border-top:1px solid var(--color-border);margin:0;font-size:.85rem}.site-footer .container+.container{margin-top:var(--space-2)}@media (width<=640px){.nav-toggle{display:inline-flex}.site-nav{flex-basis:100%}.site-nav ul{gap:var(--space-1);padding-top:var(--space-3);padding-bottom:var(--space-2);flex-direction:column;display:none}.site-nav.is-open ul{display:flex}.site-nav a{padding:var(--space-2) 0;display:block}}.steps{counter-reset:step;gap:var(--space-8);max-width:46rem;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;padding-left:4rem;position:relative}.steps li:before{content:counter(step);background:var(--color-accent);width:2.5rem;height:2.5rem;color:var(--color-on-accent);font-family:var(--font-heading);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;top:0;left:0}.steps li:not(:last-child):after{content:"";top:3rem;left:calc(1.25rem - 1px);bottom:calc(var(--space-8) * -1);background:var(--color-border);width:2px;position:absolute}.steps h3{margin:0 0 var(--space-1);font-size:1.05rem}.steps p{color:var(--color-muted);margin:0}.scope-grid{gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.scope-grid h3{margin-top:0;margin-bottom:var(--space-4);font-size:1.05rem}.scope-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.scope-list li{color:var(--color-muted);padding-left:1.9rem;position:relative}.scope-list li:before{content:"";background-position:50%;background-repeat:no-repeat;background-size:contain;width:1.15rem;height:1.15rem;position:absolute;top:.3rem;left:0}.scope-list.included li:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d3557' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E")}.scope-list.excluded li:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23555b66' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6L6 18M6 6l12 12'/%3E%3C/svg%3E")}.scope-note{margin-top:var(--space-6);color:var(--color-muted);font-size:.95rem}.faq{border-top:1px solid var(--color-border);max-width:46rem}.faq-item{border-bottom:1px solid var(--color-border)}.faq-item summary{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;cursor:pointer;font-family:var(--font-heading);transition:color var(--transition);font-size:1.05rem;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:hover,.faq-item[open] summary{color:var(--color-accent)}.faq-item summary:after{content:"";width:1.1rem;height:1.1rem;-webkit-mask:var(--chevron-down) center / contain no-repeat;mask:var(--chevron-down) center / contain no-repeat;transition:transform .42s var(--spring);background-color:currentColor;flex:none}.faq-item[open] summary:after{transform:rotate(180deg)}.faq-item summary:active{opacity:.6;transition:opacity var(--press)}.faq-answer{overflow:hidden}.faq-answer p{margin:0 0 var(--space-4);color:var(--color-muted);max-width:60ch}.cta-band{background:var(--color-accent);border-radius:var(--radius);padding:var(--space-16) var(--space-8);text-align:center}.cta-band h2{color:var(--color-on-accent)}.cta-band p{color:#ffffffd9;margin-left:auto;margin-right:auto}.cta-band .hero-actions{justify-content:center}.cta-band .button{background:var(--color-on-accent);color:var(--color-accent)}.cta-band .button:hover{background:var(--color-bg-alt);color:var(--color-accent-hover)}.cta-band .button.secondary{color:var(--color-on-accent);background:0 0;border-color:#ffffff73}.cta-band .button.secondary:hover{color:var(--color-on-accent);background:#ffffff1f}@media (prefers-reduced-transparency:reduce){.site-header{background:var(--color-bg);-webkit-backdrop-filter:none}}@media (prefers-contrast:more){.site-header{background:var(--color-bg);-webkit-backdrop-filter:none;border-bottom-color:var(--color-text)}.card,input,textarea{border-color:var(--color-text)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button[disabled]{opacity:.55;cursor:not-allowed}
