footer{flex-wrap:wrap;gap:18px}.subpage #navigation{top:110px;bottom:auto}.subpage header{background:#071312cc;backdrop-filter:blur(14px)}.page-hero{position:relative;overflow:hidden;min-height:70svh;padding:230px 7% 80px;background:radial-gradient(ellipse at 85% 20%,#165947 0,transparent 55%)}.page-hero h1{font-size:clamp(42px,6.7vw,100px);line-height:1.06;letter-spacing:-.065em;max-width:1050px;margin:30px 0}.page-hero p{font-size:18px;line-height:1.7;max-width:610px;color:var(--muted)}.page-orbit{position:absolute;right:5%;top:25%;font-size:260px;color:#80f1d122;animation:orbit 40s linear infinite;pointer-events:none}.page-content,.portfolio-section,.legal-section{padding:85px 7%}.editorial{display:grid;grid-template-columns:1fr 2fr;gap:50px}.editorial h2,.page-cta h2{font-size:clamp(36px,5vw,70px);letter-spacing:-.05em;line-height:1.1;margin-bottom:30px}.editorial p{max-width:750px;line-height:1.85;margin-bottom:20px}.light-section em{color:#197f65}.capabilities{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:65px}.capabilities article{border-top:1px solid #183e3333;padding-top:25px}.capabilities h3{font-size:27px;margin:20px 0}.capabilities p{line-height:1.8;max-width:500px}.capabilities article>span{color:#197f65}.page-cta{padding:100px 7%;border-top:1px solid #ffffff20}.page-cta h2{margin:30px 0}.portfolio-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.portfolio-filters button{border:1px solid #ffffff35;border-radius:30px;padding:12px 20px;background:transparent}.portfolio-filters button[aria-pressed=true]{background:var(--mint);color:var(--ink);border-color:var(--mint)}#result-count{color:var(--muted);font-size:13px;margin-bottom:35px}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 30px}.portfolio-card[hidden]{display:none}.portfolio-image{overflow:hidden;border-radius:8px;background:#e9f0ec;aspect-ratio:1}.portfolio-image img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .6s}.portfolio-card a:hover img{transform:scale(1.045)}.portfolio-caption{position:relative;padding:20px 40px 0 0}.portfolio-caption>span{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.portfolio-caption h2{font-size:clamp(21px,2vw,30px);margin-top:8px;line-height:1.3;letter-spacing:-.03em}.portfolio-caption b{position:absolute;right:5px;top:30px;font-size:25px;color:var(--mint)}.contact-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:70px}.contact-layout h2{font-size:35px;margin-bottom:35px;letter-spacing:-.04em}.contact-direct{display:block;font-size:clamp(15px,1.5vw,22px);color:var(--mint);margin-bottom:15px;overflow-wrap:anywhere}.contact-layout p{line-height:1.8;margin:25px 0;color:var(--muted)}.business-info{font-size:13px}.contact-form-panel{border:1px solid #ffffff20;padding:35px;border-radius:12px}.contact-form-panel .form-note{font-size:12px}.legal-section{background:var(--white);color:var(--ink)}.legal-copy{max-width:850px;margin:auto;font-size:16px;line-height:1.9;overflow-wrap:anywhere}.legal-copy p{margin-bottom:22px}.legal-copy h2,.legal-copy h3,.legal-copy h4{margin:40px 0 20px;line-height:1.25;letter-spacing:-.025em}.legal-copy ul,.legal-copy ol{padding-left:24px;margin-bottom:25px}.legal-copy a{text-decoration:underline}.legal-copy table{display:block;overflow:auto;border-collapse:collapse;max-width:100%;font-size:13px}.legal-copy td,.legal-copy th{padding:10px;border:1px solid #143c3230;min-width:150px}@keyframes orbit{to{transform:rotate(360deg)}}@media(max-width:900px){.editorial{grid-template-columns:1fr;gap:25px}.contact-layout{grid-template-columns:1fr;gap:40px}.page-hero{padding-top:220px}.page-orbit{font-size:180px}}@media(max-width:600px){.page-hero{padding:180px 7% 55px;min-height:60svh}.subpage #navigation{top:80px}.page-content,.portfolio-section,.legal-section{padding:50px 7%}.portfolio-grid,.capabilities{grid-template-columns:1fr}.portfolio-grid{gap:35px}.page-orbit{top:100px;font-size:140px}.page-hero p{font-size:16px}.contact-form-panel{padding:22px}.page-cta{padding:65px 7%}.portfolio-filters button{font-size:12px;padding:10px 14px}.subpage header>a{font-size:10px}}@media(prefers-reduced-motion:reduce){.page-orbit{animation:none}.portfolio-image img{transition:none}}
.subpage main{margin-left:var(--rail)}@media(min-width:1100px){.subpage #navigation{top:20px;padding-block:15px}}.subpage .page-content.light-section{padding:85px 7%}@media(max-width:600px){.subpage .page-content.light-section{padding:50px 7%}}

.portfolio-description{margin-top:12px;color:var(--muted);font-size:14px;line-height:1.7;overflow-wrap:anywhere}
footer{display:block}.footer-main{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px}.footer-credit{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;margin-top:25px;padding-top:22px;border-top:1px solid #b6e7d220;font-size:10px}.footer-credit strong{font-weight:600;color:#c5e2d5}.footer-credit a>span{color:var(--mint);margin-left:5px}.article-copy{max-width:850px;margin:auto;line-height:1.9;font-size:17px;overflow-wrap:anywhere}.article-copy p{margin-bottom:24px}.article-copy h2{font-size:clamp(26px,3vw,38px);line-height:1.2;letter-spacing:-.035em;margin:48px 0 20px}.article-copy h2:first-child{margin-top:0}.article-copy h3{font-size:24px;line-height:1.3;margin:35px 0 18px}.article-copy a{color:#48ac87;text-decoration:underline;text-underline-offset:3px}.article-copy ul,.article-copy ol{padding-left:25px;margin-bottom:25px}.article-copy blockquote{border-left:2px solid #6ccfaa;padding-left:25px}.article-copy table{display:block;overflow:auto;max-width:100%;border-collapse:collapse;font-size:13px}.article-copy td,.article-copy th{border:1px solid #81b89d50;padding:12px;min-width:130px}.legal-section .article-copy{font-size:16px}.legal-section .article-copy a{color:#267c5d}.service-page-link{margin-top:20px;display:inline-block}.legal-section.editable-section .article-copy .legal-copy{font-size:inherit}@media(max-width:700px){.footer-main,.footer-credit{flex-direction:column}.article-copy{font-size:16px}}
.service-pages-list{display:grid;grid-template-columns:repeat(3,1fr);gap:0 30px;margin-top:45px;border-top:1px solid #16372d30}.service-pages-list a{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid #16372d30;font-size:14px}.service-pages-list a:hover{color:#27815f}.service-pages-list span{color:#458876}.service-page-link[hidden]{display:none}@media(max-width:700px){.service-pages-list{grid-template-columns:1fr}.service-pages-list a{padding:18px 0}}
