:root{color:#111820;font-synthesis:none;--paper:#f5f7fa;--ink:#111820;--muted:#56616e;--line:#aeb7c2;--blue:#1748d1;--blue-dark:#103493;--blue-pale:#e7edff;--white:#fff;--forest:var(--blue);background:#f5f7fa;font-family:Arial,Helvetica Neue,Helvetica,sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);margin:0;line-height:1.5}a{color:inherit;text-underline-offset:4px}a:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.container{width:min(1240px,100% - 48px);margin:0 auto}.skip-link{z-index:20;background:var(--ink);color:#fff;padding:12px 16px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.site-header{border-top:7px solid var(--blue);border-bottom:1px solid var(--ink);background:var(--white)}.header-inner{grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:32px;min-height:78px;display:grid}.wordmark{gap:2px;width:fit-content;line-height:1.15;text-decoration:none;display:grid}.wordmark strong{letter-spacing:-.02em;font-family:Georgia,Times New Roman,serif;font-size:1.05rem}.wordmark span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font:700 .67rem/1.2 Courier New,monospace}nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:0;display:flex}nav a{border-left:1px solid var(--line);align-items:center;gap:7px;min-height:44px;padding:0 15px;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}nav a span{color:var(--blue);font:700 .64rem Courier New,monospace}nav a:hover,.text-link:hover{color:var(--blue);text-decoration:underline}.nav-contact{border:1px solid var(--blue);background:var(--blue);color:#fff;margin-left:12px}.nav-contact:hover{background:var(--blue-dark);color:#fff}.masthead{grid-template-columns:minmax(0,1.55fr) minmax(280px,.7fr);column-gap:70px;padding:66px 0 58px;display:grid}.masthead .eyebrow,.masthead h1{grid-column:1}.masthead .hero-footer{grid-area:1/2/span 2;align-self:end}.eyebrow{color:var(--blue);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;font:700 .7rem/1.3 Courier New,monospace;display:flex}.eyebrow:before{content:"["}.eyebrow:after{content:"]"}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.055em;max-width:850px;margin:28px 0 0;font-size:clamp(2.65rem,5vw,4.65rem);font-weight:800;line-height:.98}h1 em{color:var(--blue);font-style:normal}h2{letter-spacing:-.045em;margin:13px 0 0;font-size:clamp(1.85rem,3vw,3rem);font-weight:800;line-height:1.03}.hero-footer{align-items:start;gap:24px;display:grid}.hero-description{max-width:520px;color:var(--muted);margin:0;font-size:1.04rem;line-height:1.6}.primary-link{border:1px solid var(--blue);background:var(--blue);color:#fff;justify-content:center;align-items:center;gap:24px;width:fit-content;min-height:46px;padding:12px 17px;font-size:.86rem;font-weight:700;text-decoration:none;display:inline-flex}.primary-link:hover{background:var(--blue-dark)}.dark-band{border-block:1px solid var(--ink);background:var(--white);color:var(--ink)}.band-inner{justify-content:space-between;align-items:center;gap:24px;min-height:54px;display:flex}.band-inner p,.band-inner span{letter-spacing:.08em;text-transform:uppercase;margin:0;font:700 .7rem/1.3 Courier New,monospace}.band-inner span{color:var(--blue)}section.section{border-bottom:1px solid var(--ink);padding:68px 0}.section-heading{grid-template-columns:1fr minmax(260px,.55fr);align-items:end;gap:48px;margin-bottom:35px;display:grid}.section-note{max-width:430px;color:var(--muted);margin:0}.service-list{border-top:2px solid var(--ink)}.service-row{border-bottom:1px solid var(--line);grid-template-columns:52px minmax(170px,.72fr) minmax(260px,1.25fr);align-items:baseline;gap:24px;padding:22px 0;display:grid}.service-number{color:var(--blue);font:700 .72rem Courier New,monospace}.service-row h3{letter-spacing:-.025em;margin:0;font-size:1.28rem}.service-detail{grid-template-columns:1fr auto;align-items:baseline;gap:20px;display:grid}.service-detail p{margin:0}.service-detail small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font:700 .66rem/1.35 Courier New,monospace}.future-intro{max-width:660px;color:var(--muted);margin:17px 0 0}.project-grid{border-top:2px solid var(--ink);border-left:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-item{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white);min-height:210px;padding:22px}.project-item:before{content:"PROJECT / CASE";color:var(--blue);letter-spacing:.08em;margin-bottom:30px;font:700 .65rem Courier New,monospace;display:block}.project-item h3{letter-spacing:-.025em;margin-bottom:12px;font-size:1.3rem}.project-item p{color:var(--muted);margin:0 0 12px}.project-item small,.note-list small{color:var(--muted);font-family:Courier New,monospace}.note-list{border-top:2px solid var(--ink)}.note-entry{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:20px;padding:18px 0;display:grid}.note-entry h3{letter-spacing:-.01em;margin:0;font-size:1.04rem}.about-grid{grid-template-columns:minmax(260px,.65fr) 1fr;gap:70px;display:grid}.about-grid h2{max-width:460px}.about-copy{max-width:680px;color:var(--muted);font-size:1.05rem}.about-copy p{margin-bottom:18px}.portrait-placeholder{border:1px solid var(--line);border-left:5px solid var(--blue);min-height:140px;color:var(--muted);background:var(--white);flex-direction:column;justify-content:flex-end;padding:22px;font:.8rem/1.5 Courier New,monospace;display:flex}.portrait-placeholder strong{color:var(--ink);margin-bottom:5px;font-family:Arial,sans-serif}.text-link{font-size:.88rem;font-weight:750;text-decoration:underline}.contact-section{background:var(--blue-pale)}.contact-grid{grid-template-columns:1fr auto;align-items:end;gap:40px;display:grid}.contact-grid h2{max-width:760px}.contact-grid p{max-width:520px;color:var(--muted);margin:18px 0 0}.prose{overflow-wrap:anywhere;max-width:900px;padding-top:55px;padding-bottom:74px}.prose>.eyebrow+h1,.prose>h1{max-width:800px;margin-bottom:34px;font-size:clamp(2.35rem,5vw,4rem)}.prose h2{border-top:1px solid var(--line);letter-spacing:-.025em;margin:44px 0 14px;padding-top:13px;font-size:1.6rem}.prose h3{margin-top:32px}.prose p,.prose li{max-width:760px}.prose li{margin-bottom:10px}.prose article{border-bottom:1px solid var(--line);padding-bottom:22px}.prose pre{max-width:100%;overflow-x:auto}.public-theme .prose{overflow-wrap:anywhere;max-width:1180px;padding-top:68px;padding-bottom:82px}.public-theme .prose>.eyebrow+h1,.public-theme .prose>h1{letter-spacing:-.04em;max-width:880px;margin:22px 0 34px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,5vw,4.2rem);font-weight:400;line-height:1.05}.public-theme .prose>h1+p{max-width:760px;color:var(--muted);font-size:1.08rem;line-height:1.7}.public-theme .prose h2{border-top:1px solid var(--ink);letter-spacing:-.025em;margin:52px 0 16px;padding-top:18px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.55rem,2.4vw,2.15rem);font-weight:400;line-height:1.12}.public-theme .prose h3{margin-top:32px;font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:400}.public-theme .prose p,.public-theme .prose li{max-width:780px}.public-theme .prose li{margin-bottom:10px}.public-theme .prose article{border-bottom:1px solid var(--line);padding:0 0 28px}.public-theme .prose article h2{border-top:0;margin-top:0;padding-top:28px}.public-theme .prose a:not(.primary-link){font-weight:650;text-decoration-thickness:1px}.public-theme .prose a:not(.primary-link):hover{color:var(--blue)}form{gap:18px;margin:28px 0;display:grid}label{gap:7px;font-weight:700;display:grid}input,textarea,select,button{border:1px solid var(--ink);background:var(--white);max-width:100%;color:var(--ink);font:inherit;border-radius:0;padding:12px}textarea{min-height:180px}button{cursor:pointer;background:var(--blue);color:#fff;min-height:44px;font-weight:700}button:disabled{opacity:.7;cursor:wait}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.admin-nav{border-block:1px solid var(--line);flex-wrap:wrap;justify-content:flex-start;gap:0;margin:24px 0;display:flex}.notice{border-left:5px solid var(--blue);background:var(--white);padding:12px 16px}fieldset{min-width:0}footer{border-top:1px solid var(--ink);background:var(--ink);color:#fff;padding:25px 0}.footer-inner{letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;gap:16px;font:.7rem/1.4 Courier New,monospace;display:flex}.footer-inner span:last-child{color:#b9c7ff}@media (width<=900px){.header-inner{grid-template-columns:1fr;gap:12px;padding:18px 0}nav{border-top:1px solid var(--line);justify-content:flex-start}nav a:first-child{border-left:0}.nav-contact{margin-left:8px}.masthead{grid-template-columns:1fr;gap:30px}.masthead .eyebrow,.masthead h1,.masthead .hero-footer{grid-area:auto/1}.section-heading{grid-template-columns:1fr;gap:20px}.service-row{grid-template-columns:42px 1fr}.service-detail{grid-column:2;grid-template-columns:1fr;gap:9px}}@media (width<=620px){.container{width:min(100% - 28px,1240px)}.site-header{border-top-width:5px}nav{grid-template-columns:repeat(2,1fr);width:100%;display:grid}nav a,nav a:first-child{border:0;border-bottom:1px solid var(--line);padding:0 8px}.nav-contact{grid-column:1/-1;justify-content:center;margin:7px 0 0}.masthead{padding:49px 0 44px}h1{font-size:clamp(2.5rem,12vw,3.55rem)}section.section{padding:51px 0}.band-inner,.footer-inner{flex-direction:column;align-items:flex-start;padding-block:14px}.service-row{gap:10px}.project-grid{grid-template-columns:1fr}.project-item{min-height:0}.note-entry{grid-template-columns:1fr;gap:5px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:26px}.prose{padding-top:42px}.public-theme .prose{padding-top:46px;padding-bottom:60px}.public-theme .prose>.eyebrow+h1,.public-theme .prose>h1{font-size:clamp(2.35rem,11vw,3.25rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.app-return[data-astro-cid-q3w3lmez]{background:var(--paper);color:var(--ink);border:0;padding:0}.app-return-inner[data-astro-cid-q3w3lmez]{width:min(980px,100% - 48px);margin:0 auto;padding-block:12px}.app-return[data-astro-cid-q3w3lmez] a[data-astro-cid-q3w3lmez]{align-items:center;min-height:44px;font-size:.9rem;display:inline-flex}@media (width<=700px){.app-return-inner[data-astro-cid-q3w3lmez]{width:min(980px,100% - 28px)}}
