@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.flex{display:flex}.grid{display:grid}.hidden{display:none}.rounded{border-radius:.25rem}}:root{--paper:#f6f3eb;--paper-alt:#f1e7c4;--ink:#202522;--muted:#58605a;--line:#c8ccc7;--green:#23483b;--green-dark:#173329;--green-pale:#dfe8e1;--blue:#2d6673;--blue-pale:#dce9ea;--yellow:#dfb532;--yellow-pale:#f2e4aa;--coral:#ae452f;--white:#fbfbf8;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1rem}body{background:var(--paper);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.62}a{color:inherit}img{display:block}::selection{color:var(--ink);background:#bcd1c3}.shell{width:min(1120px,100% - 48px);margin-inline:auto}.skip-link{z-index:100;background:var(--white);border:2px solid var(--ink);padding:.65rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.back-to-top{z-index:50;background:var(--green-dark);min-height:44px;color:var(--white);font:700 .78rem var(--sans);cursor:pointer;opacity:0;visibility:hidden;border:1px solid #607269;align-items:center;gap:.5rem;padding:.6rem .85rem;transition:opacity .16s,transform .16s,visibility .16s;display:inline-flex;position:fixed;bottom:clamp(1rem,3vw,2rem);right:clamp(1rem,3vw,2rem);transform:translateY(.65rem)}.back-to-top span{font-size:1rem;line-height:1}.back-to-top:hover{background:var(--white);color:var(--green-dark)}.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:72px;display:flex}.logo{color:var(--ink);letter-spacing:-.025em;align-items:center;gap:.65rem;font-size:1rem;font-weight:750;text-decoration:none;display:inline-flex}.logo-symbol{width:32px;height:32px}.logo-full{width:176px;display:block}.logo-full img{width:100%;height:auto}.site-header nav,.site-footer nav{align-items:center;gap:1.7rem;display:flex}.site-header nav a,.site-footer nav a{color:var(--muted);font-size:.86rem;text-decoration:none}.site-header nav a:hover,.site-footer nav a:hover{color:var(--ink);text-underline-offset:.35em;text-decoration:underline}.site-header .nav-contact{background:var(--green);min-height:38px;color:var(--white);padding:.4rem .8rem;font-weight:700}.site-header .nav-contact:hover{background:var(--green-dark);color:var(--white);text-decoration:none}.hero{padding:clamp(4.5rem,8vw,7rem) 0 clamp(4rem,7vw,6rem)}.hero-layout{grid-template-columns:1.15fr .85fr;align-items:end;gap:clamp(3rem,9vw,8rem);display:grid}.hero-meta{color:var(--muted);margin:0 0 1rem;font-size:.8rem}.hero h1{letter-spacing:-.065em;max-width:650px;margin:0;font-size:clamp(3.3rem,6.1vw,5.6rem);font-weight:660;line-height:.96}.hero-copy{max-width:480px;padding-bottom:.3rem}.hero-copy p{color:var(--muted);margin:.75rem 0 0}.hero-copy .hero-lead{color:var(--ink);margin-top:0;font-size:clamp(1.15rem,1.7vw,1.35rem);line-height:1.5}.hero-actions{align-items:center;gap:1.6rem;margin-top:2rem;display:flex}.button{border:1px solid var(--green);background:var(--green);min-height:46px;color:var(--white);justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.05rem;font-weight:700;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.button:hover{color:var(--green);background:0 0}.text-link,.visit-link{text-underline-offset:.3em;font-weight:650;text-decoration-thickness:1px}.problem-section{background:var(--blue-pale);border-block:1px solid #b9cacc;padding:clamp(3.8rem,7vw,6rem) 0}.problem-layout{grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,7rem);display:grid}.section-name{color:var(--green);align-items:center;gap:.55rem;margin:0 0 .75rem;font-size:.8rem;font-weight:750;display:flex}.section-name:before{background:var(--coral);content:"";width:18px;height:4px}.section-intro h2,.about-section h2,.contact-section h2{letter-spacing:-.045em;margin:0;font-size:clamp(2rem,3.8vw,3.35rem);font-weight:650;line-height:1.08}.section-intro>p:last-child{max-width:650px;color:var(--muted);margin:1.25rem 0 0}.question-list{background:#ffffff3d;border-top:1px solid #9fb7ba;border-left:1px solid #9fb7ba;grid-template-columns:1fr 1fr;display:grid}.question-list p{border-bottom:1px solid #9fb7ba;border-right:1px solid #9fb7ba;grid-template-columns:2rem 1fr;gap:.4rem;margin:0;padding:1rem 1.1rem;font-size:.93rem;display:grid}.question-list p>span{color:var(--blue);font:700 .7rem/1.7 var(--mono)}.problem-close{border-left:5px solid var(--coral);background:#ffffff6b;margin-top:2.5rem;padding:1.2rem 1.3rem;font-size:.93rem;font-weight:650}.section{padding:clamp(4.5rem,8vw,7rem) 0}.section+.section,.projects-section{border-top:1px solid var(--line)}.narrow-intro{grid-template-columns:.45fr 1.3fr 1fr;align-items:start;gap:2.5rem;display:grid}.narrow-intro .section-name{margin-top:.35rem}.narrow-intro>p:last-child{margin-top:.3rem}.service-list{border-top:1px solid var(--line);margin-top:3.5rem}.service-row{border-bottom:1px solid var(--line);grid-template-columns:42px .7fr 1.3fr;align-items:start;gap:2rem;padding:1.8rem 0;display:grid}.service-number{background:var(--yellow);width:30px;height:30px;color:var(--ink);font:750 .68rem var(--mono);place-items:center;display:grid}.service-row:nth-child(2n) .service-number{background:var(--blue);color:var(--white)}.service-row h3{letter-spacing:-.015em;margin:0;font-size:1.08rem;font-weight:700}.service-row p{max-width:650px;color:var(--muted);margin:0}.supporting-note{color:var(--muted);margin-top:1.2rem;font-size:.82rem}.work-section{background:var(--white)}.work-heading{grid-template-columns:.45fr 1.3fr 1fr;gap:2.5rem;display:grid}.work-heading .section-name{margin-top:.35rem}.work-heading>p:last-child{margin-top:.3rem}.work-list{border-top:1px solid var(--line);margin-top:3.5rem}.work-row{border-bottom:1px solid var(--line);grid-template-columns:1.2fr .8fr;align-items:center;gap:clamp(2.5rem,7vw,6rem);padding:3rem 0;display:grid}.work-image{border:1px solid var(--line);width:100%;height:auto}.relationship,.project-kind{color:var(--muted);font:600 .7rem/1.4 var(--mono);margin:0}.work-copy h3{letter-spacing:-.045em;margin:.55rem 0 1rem;font-size:clamp(1.8rem,3vw,2.65rem);font-weight:680;line-height:1}.work-number{color:var(--coral);font:750 1.35rem/1 var(--mono);margin-bottom:.7rem;display:block}.work-copy>p:not(.relationship){color:var(--muted);margin:0}.visit-link{color:var(--green);margin-top:1rem;display:inline-block}.product-row{background:var(--blue);color:var(--white);border:0;margin-top:1.5rem;padding-inline:1.5rem}.product-row .work-image{border-color:#69929b}.product-row .work-number{color:var(--yellow-pale)}.product-row .relationship,.product-row .work-copy>p:not(.relationship){color:#d8e6e8}.product-row .visit-link{color:var(--white)}.projects-section{background:#efeee8}.project-list{border-top:1px solid var(--line);margin-top:3.5rem}.project{border-bottom:1px solid var(--line);grid-template-columns:.62fr 1.7fr;gap:clamp(2rem,6vw,5rem);padding:2.8rem 0;display:grid}.project h3{letter-spacing:-.035em;margin:.45rem 0 0;font-size:clamp(1.35rem,2.5vw,2rem);font-weight:680;line-height:1.08}.project-kind{align-items:center;gap:.65rem;display:flex}.project-kind span{background:var(--coral);width:24px;height:24px;color:var(--white);font:700 .63rem var(--mono);place-items:center;display:grid}.project dl{grid-template-columns:repeat(3,1fr);gap:2rem;margin:0;display:grid}.project dt{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.55rem;font-size:.69rem;font-weight:750}.project dd{color:#4e554f;margin:0;font-size:.88rem}.project dl div:last-child{border-left:4px solid var(--yellow);padding-left:1rem}.project details{color:var(--muted);grid-column:2;font-size:.78rem}.project summary{cursor:pointer;width:max-content;color:var(--ink)}.project details ul{flex-wrap:wrap;gap:.5rem 1.4rem;margin:.8rem 0 0;padding:0;list-style-position:inside;display:flex}.about-section{background:var(--paper-alt);border-top:1px solid #d2c17e;padding:clamp(4.5rem,8vw,7rem) 0}.about-layout{grid-template-columns:.45fr 2.3fr;gap:clamp(3rem,8vw,7rem);display:grid}.about-layout>div{max-width:760px}.about-lead{color:var(--ink);margin:1.5rem 0 1rem;font-size:1.2rem}.about-layout div>p:last-child{color:var(--muted)}.contact-section{background:var(--coral);color:var(--white);padding:clamp(4.5rem,8vw,7rem) 0}.contact-grid{grid-template-columns:1.15fr .85fr;gap:clamp(3rem,8vw,7rem);display:grid}.contact-section .section-label{color:var(--white);margin:0 0 .75rem;font-size:.8rem;font-weight:700}.contact-copy>p{color:#fae4df;margin:.2rem 0 0}.contact-actions{gap:.85rem;margin-top:1.8rem;display:grid}.contact-option{color:var(--white);border:1px solid #ffffffb3;gap:.3rem;padding:1rem 1.1rem;text-decoration:none;transition:background .15s,color .15s,transform .15s;display:grid}.contact-option:hover{background:#ffffff1a;transform:translateY(-2px)}.contact-option-primary{border-color:var(--white);background:var(--white);color:#762c1e}.contact-option-primary:hover{background:var(--paper);color:#762c1e}.contact-option-label{font:700 .67rem/1.4 var(--mono);text-transform:uppercase;letter-spacing:.035em}.contact-option strong{justify-content:space-between;align-items:center;gap:1rem;font-size:1rem;display:flex}.contact-option strong span{font-size:1.2rem}.contact-option>span:last-child{color:#fae4df;font-size:.78rem}.contact-option-primary>span:last-child{color:#8a4b3e}.config-note{color:#fae4df;font:.75rem var(--mono)}.site-footer{color:var(--white);background:#101c17;padding:2.8rem 0 1.3rem}.footer-grid{justify-content:space-between;gap:3rem;display:flex}.footer-grid .logo{color:var(--white)}.footer-grid p{color:#9daea4;max-width:420px;margin:.9rem 0 0;font-size:.82rem}.site-footer nav{flex-wrap:wrap}.site-footer nav a{color:#becac2}.site-footer nav a:hover{color:var(--white)}.footer-base{color:#91a097;font:.68rem var(--mono);border-top:1px solid #35463e;justify-content:space-between;margin-top:2.6rem;padding-top:1.1rem;display:flex}.legal{max-width:860px;padding-top:4.5rem;padding-bottom:7rem}.back-link{color:var(--muted);text-underline-offset:.25em;font-size:.88rem}.legal header{border-bottom:1px solid var(--line);margin:3.5rem 0;padding-bottom:2rem}.legal header .section-index{color:var(--green);margin:0 0 1rem;font-size:.76rem;font-weight:700}.legal header h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.8rem,7vw,5rem);font-weight:660;line-height:1}.legal header>p:last-child{color:var(--muted);font:.72rem var(--mono);margin:1.4rem 0 0}.legal-copy{max-width:700px}.legal-copy h2{margin:2.7rem 0 .65rem;font-size:1.35rem}.legal-copy p{color:#4b524d}.not-found{min-height:65vh;padding-top:clamp(5rem,12vw,9rem);padding-bottom:7rem}.not-found h1{letter-spacing:-.06em;margin:.8rem 0 0;font-size:clamp(3rem,8vw,6rem);font-weight:660;line-height:1}.not-found>p:not(.section-index){color:var(--muted);margin:1.5rem 0 2rem}.team-hero{padding:clamp(4rem,8vw,7rem) 0}.team-hero-grid{grid-template-columns:.8fr 1.2fr;align-items:center;gap:clamp(3rem,9vw,8rem);display:grid}.team-photo-wrap{max-width:460px}.team-photo{border:1px solid var(--line);width:100%;height:auto}.team-photo-wrap>p{color:var(--muted);font:.7rem/1.5 var(--mono);margin:.8rem 0 0}.team-intro h1{letter-spacing:-.065em;margin:0;font-size:clamp(3.2rem,6.5vw,5.8rem);font-weight:660;line-height:.95}.team-intro>p:not(.section-name){max-width:650px;color:var(--muted)}.team-intro .team-lead{color:var(--ink);margin:1.7rem 0 1rem;font-size:clamp(1.15rem,1.8vw,1.4rem);line-height:1.5}.story-section{border-top:1px solid var(--line);background:var(--white)}.story-grid,.skills-grid{grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,9vw,8rem);display:grid}.story-grid h2,.skills-grid h2{letter-spacing:-.045em;margin:0;font-size:clamp(2rem,3.8vw,3.35rem);font-weight:650;line-height:1.08}.story-copy{max-width:680px}.story-copy p{color:var(--muted);margin:0 0 1.15rem}.story-copy p:first-child{color:var(--ink);font-size:1.15rem}.skills-section{background:var(--blue-pale);border-block:1px solid #b9cacc;padding:clamp(4.5rem,8vw,7rem) 0}.skills-lead{max-width:650px;margin:0 0 1.8rem;font-size:1.1rem}.skills-list{border-top:1px solid #9fb7ba;border-left:1px solid #9fb7ba;grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.skills-list li{border-bottom:1px solid #9fb7ba;border-right:1px solid #9fb7ba;padding:.9rem 1rem;font-size:.9rem}.engagement-list{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:1fr 1fr;margin-top:3.5rem;padding:0;list-style:none;display:grid}.engagement-list li{border-right:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:2.5rem 1fr;gap:1rem;padding:1.5rem;display:grid}.engagement-list li>span{background:var(--yellow);width:30px;height:30px;font:750 .68rem var(--mono);place-items:center;display:grid}.engagement-list li:nth-child(2n)>span{background:var(--blue);color:var(--white)}.engagement-list h3{margin:0 0 .45rem;font-size:1.05rem}.engagement-list p{color:var(--muted);margin:0;font-size:.9rem}.response-note{border-left:5px solid var(--coral);background:var(--white);margin-top:1.5rem;padding:1rem 1.2rem;font-size:.9rem}@media (max-width:800px){.shell{width:min(100% - 32px,1120px)}.header-inner{min-height:66px}.site-header nav{gap:1.1rem}.site-header nav a:not(.nav-contact){display:none}.hero{padding-top:3.5rem}.hero-layout,.problem-layout,.narrow-intro,.work-heading,.about-layout,.contact-grid,.team-hero-grid,.story-grid,.skills-grid{grid-template-columns:1fr}.hero-layout{gap:2rem}.hero h1{font-size:clamp(3.2rem,15vw,4.6rem)}.hero-copy{max-width:600px}.question-list{grid-template-columns:1fr}.narrow-intro,.work-heading{gap:.8rem}.narrow-intro>p:last-child,.work-heading>p:last-child{margin-top:.4rem}.service-list,.work-list,.project-list{margin-top:2.5rem}.service-row{grid-template-columns:38px 1fr;gap:.75rem 1rem;padding:1.5rem 0}.service-row p{grid-column:2}.work-row{grid-template-columns:1fr;gap:1.8rem;padding:2.5rem 0}.product-row{margin-top:1rem;padding-inline:1rem}.project{grid-template-columns:1fr;gap:1.5rem}.project dl{grid-template-columns:1fr;gap:1.35rem}.project details{grid-column:1}.footer-grid{flex-direction:column}.team-hero-grid,.story-grid,.skills-grid{gap:2.2rem}.team-photo-wrap{max-width:520px}}@media (max-width:480px){.hero h1{font-size:3.5rem}.hero-actions{flex-direction:column;align-items:flex-start;gap:1rem}.site-footer nav{gap:1rem 1.3rem}.footer-base{gap:1rem}.skills-list,.engagement-list{grid-template-columns:1fr}.engagement-list{margin-top:2.5rem}.back-to-top{justify-content:center;width:44px;padding:0;font-size:0}.back-to-top span{font-size:1.1rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}:focus-visible{outline-offset:4px;outline:3px solid #6a957e}
