body{background:#f8f7f2;margin:0}.portfolio{--paper:#f8f7f2;--ink:#242a25;--muted:#535a50;--green:#253d2d;--line:#d9ddd2;--light:#ecefe6;background:var(--paper);color:var(--ink);min-height:100vh;font-family:Inter,system-ui,sans-serif;font-size:17px;line-height:1.62}.portfolio *,.portfolio :before,.portfolio :after{box-sizing:border-box}.portfolio a{color:inherit;text-underline-offset:.2em}.portfolio button{font:inherit}.portfolio :is(a,button):focus-visible{outline-offset:4px;outline:3px solid #89712d}.portfolio h1,.portfolio h2,.portfolio h3,.portfolio p{margin:0}.portfolio h1,.portfolio h2,.portfolio h3{letter-spacing:-.042em;overflow-wrap:anywhere;line-height:1.11}.portfolio h1{font-size:clamp(2.5rem,5vw,4.45rem);font-weight:680}.portfolio h2{font-size:clamp(1.85rem,3.65vw,3.15rem);font-weight:655}.portfolio h3{font-size:1.28rem;font-weight:660}.portfolio :is(section[id],main[id]){scroll-margin-top:96px}.portfolio img{width:100%;max-width:100%;display:block}.portfolio-wrap{width:min(100% - 80px,1184px);margin-inline:auto}.portfolio-sr{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.portfolio-skip{z-index:2;background:#fff;padding:.6rem 1rem;position:absolute;top:.6rem;left:1rem;transform:translateY(-160%)}.portfolio-skip:focus{transform:translateY(0)}.portfolio-header{z-index:5;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0}.portfolio-header-inner{justify-content:space-between;align-items:center;gap:32px;min-height:76px;display:flex}.portfolio-brand{white-space:nowrap;letter-spacing:-.045em;align-items:center;gap:.6rem;font-size:1.15rem;font-weight:750;text-decoration:none;display:inline-flex}.portfolio-mark{background:var(--green);color:#fff;border-radius:8px;flex:none;place-items:center;width:34px;height:34px;font-size:1rem;display:grid}.portfolio-menu,.portfolio-main-nav,.portfolio-languages{align-items:center;display:flex}.portfolio-menu{gap:clamp(14px,2.7vw,36px)}.portfolio-main-nav{gap:clamp(12px,2.1vw,28px);font-size:.88rem;font-weight:570}.portfolio-main-nav a,.portfolio-languages a{text-decoration:none}.portfolio-main-nav a:is(:hover,[aria-current]),.portfolio-footer a:hover{text-decoration:underline}.portfolio-languages{gap:4px;font-size:.76rem;font-weight:680}.portfolio-languages a{border-radius:6px;place-items:center;min-width:35px;min-height:38px;display:grid}.portfolio-languages [aria-current]{background:#e7ebe1}.portfolio-menu-toggle{display:none}.portfolio .portfolio-button{border:1px solid var(--green);color:#fff;background:var(--green);border-radius:7px;justify-content:center;align-items:center;gap:.7rem;min-height:48px;padding:.59rem 1.15rem;font-size:.9rem;font-weight:640;line-height:1.35;text-decoration:none;display:inline-flex}.portfolio .portfolio-button:hover{background:#3b5943}.portfolio .portfolio-button-header{white-space:nowrap;min-height:42px;font-size:.83rem}.portfolio .portfolio-button-secondary{color:var(--green);background:0 0}.portfolio .portfolio-button-secondary:hover{background:var(--light)}.portfolio .portfolio-button-light{background:0 0;border-color:#a4b1a0}.portfolio .portfolio-button-light:hover{background:#43594a}.portfolio-actions{flex-wrap:wrap;gap:10px;display:flex}.portfolio-hero{grid-template-columns:.95fr 1.14fr;align-items:center;gap:clamp(32px,6vw,88px);padding-block:clamp(42px,7vw,98px);display:grid}.portfolio-hero-copy p{max-width:36ch;color:var(--muted);margin:1.25rem 0 1.65rem;font-size:clamp(1rem,1.7vw,1.19rem)}.portfolio-hero-photo{aspect-ratio:1.13;border-radius:11px;overflow:hidden}.portfolio-hero-photo img,.portfolio-card-image img{object-fit:cover;height:100%}.portfolio-offer{background:var(--light);padding-block:clamp(50px,7vw,83px)}.portfolio-services{grid-template-columns:repeat(3,1fr);gap:clamp(14px,4vw,55px);margin-top:2rem;display:grid}.portfolio-services div{border-top:1px solid #abb6a7;padding-top:1.15rem}.portfolio-services p{color:var(--muted);margin-top:.55rem;font-size:1rem}.portfolio-section,.portfolio-list{padding-block:clamp(48px,7vw,96px)}.portfolio-section h2{margin-bottom:1.5rem}.portfolio-all{margin-top:1.8rem}.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(16px,2.5vw,30px);display:grid}.portfolio-card{border:1px solid var(--line);background:#fffdf8;border-radius:10px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.portfolio-card-image{aspect-ratio:4/3;display:block;overflow:hidden}.portfolio-card-body{flex-direction:column;flex:1;align-items:flex-start;gap:.7rem;padding:clamp(16px,2vw,25px);display:flex}.portfolio-card :is(h2,h3){font-size:1.28rem;font-weight:660}.portfolio-card :is(h2,h3) a{text-decoration:none}.portfolio-card :is(h2,h3) a:hover{text-decoration:underline}.portfolio-card :is(a,button):focus-visible{outline-offset:2px}.portfolio-card-summary{-webkit-line-clamp:3;color:var(--muted);-webkit-box-orient:vertical;font-size:.92rem;display:-webkit-box;overflow:hidden}.portfolio .portfolio-text-link{min-height:44px;color:var(--green);align-items:center;gap:.42rem;margin-top:auto;font-size:.86rem;font-weight:700;display:inline-flex}.portfolio-fallback{color:#494f3c;font-size:.84rem;font-weight:590}.portfolio-about{border-top:1px solid var(--line);padding-block:clamp(42px,6vw,80px)}.portfolio-about-inner,.portfolio-contact-inner,.portfolio-footer-inner{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(22px,6vw,78px);display:grid}.portfolio-about p{max-width:48ch;color:var(--muted)}.portfolio-contact{background:var(--green);color:#fffdf5;padding-block:clamp(45px,6vw,82px)}.portfolio-contact-inner p{color:#edf0e8;max-width:49ch;margin-top:.85rem}.portfolio-contact-note{border-left:1px solid #8d9e90;align-self:center;padding-left:1.4rem}.portfolio-contact-note p{margin-top:0}.portfolio-contact-note .portfolio-button{margin-top:1rem}.portfolio-footer{border-top:1px solid var(--line);padding-block:35px}.portfolio-footer p{color:var(--muted);max-width:53ch;margin-top:.6rem;font-size:.8rem}.portfolio-footer nav{flex-wrap:wrap;justify-content:flex-end;align-self:start;gap:.35rem 1.1rem;display:flex}.portfolio-footer nav a{align-items:center;min-height:42px;font-size:.86rem;text-decoration:none;display:grid}.portfolio-list{min-height:58vh}.portfolio-list-heading{max-width:52ch;margin-bottom:clamp(28px,5vw,56px)}.portfolio-list-heading p{color:var(--muted);margin-top:.9rem;font-size:clamp(1.02rem,1.7vw,1.2rem)}.portfolio-empty{border-top:1px solid var(--line);color:var(--muted);padding-top:1rem}.portfolio-detail{padding-block:clamp(24px,4.8vw,56px) clamp(50px,7vw,96px)}.portfolio-breadcrumb{color:var(--muted);overflow-wrap:anywhere;flex-wrap:wrap;gap:.12rem .55rem;margin-bottom:clamp(20px,4vw,46px);font-size:.84rem;display:flex}.portfolio-detail-heading{max-width:850px;margin-bottom:clamp(24px,4.5vw,48px)}.portfolio-detail-heading .portfolio-fallback{margin-bottom:.6rem}.portfolio-main-photo button,.portfolio-thumbnails button{cursor:zoom-in;background:0 0;border:0;border-radius:9px;width:100%;padding:0;display:block;overflow:hidden}.portfolio-main-photo img{object-fit:cover;height:auto;max-height:min(61vw,635px)}.portfolio-description{max-width:64ch;margin-block:clamp(35px,6vw,70px)}.portfolio-description h2,.portfolio-thumbnails h2{margin-bottom:.85rem;font-size:clamp(1.55rem,3vw,2.25rem)}.portfolio-description p{white-space:pre-line;color:var(--muted);margin-top:.65rem}.portfolio-thumbnails{margin-top:1.5rem}.portfolio-thumbnails>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,2vw,23px);display:grid}.portfolio-thumbnails img{aspect-ratio:4/3;object-fit:cover;height:auto}.portfolio-lightbox{color:#f9f8ee;background:#212d23;border:1px solid #667265;border-radius:10px;width:min(94vw,1040px);max-width:none;max-height:94dvh;margin:auto;padding:0;position:fixed;inset:0;overflow:auto}.portfolio-lightbox::backdrop{background:#111a12e0}.portfolio-lightbox img{object-fit:contain;width:100%;height:min(66dvh,700px)}.portfolio-lightbox-toolbar,.portfolio-lightbox-controls{justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .8rem;display:flex}.portfolio-lightbox button{color:inherit;cursor:pointer;background:0 0;border:1px solid #b1bcab;border-radius:6px;min-height:44px;padding:.38rem .75rem;font-size:.83rem}@media (max-width:960px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-wrap{width:min(100% - 48px,1184px)}.portfolio-header-inner{gap:12px}}@media (max-width:800px){.portfolio-header-inner{min-height:64px}.portfolio-menu-toggle{cursor:pointer;border:1px solid var(--line);width:46px;height:44px;color:var(--green);background:0 0;border-radius:7px;place-items:center;font-size:1.38rem;display:grid}.portfolio-menu{background:var(--paper);border-bottom:1px solid var(--line);max-height:calc(100dvh - 64px);padding:14px 24px 20px;display:none;position:absolute;top:100%;left:0;right:0;overflow:auto}.portfolio-menu[data-open=true]{justify-items:start;gap:10px;display:grid}.portfolio-main-nav{gap:0;width:100%;display:grid}.portfolio-main-nav a{align-items:center;min-height:44px;display:grid}.portfolio-languages a{min-width:44px;min-height:44px}}@media (max-width:600px){.portfolio{font-size:16px}.portfolio-wrap{width:calc(100% - 36px)}.portfolio-hero,.portfolio-services,.portfolio-grid,.portfolio-about-inner,.portfolio-contact-inner,.portfolio-footer-inner{grid-template-columns:minmax(0,1fr)}.portfolio-hero{gap:25px;padding-top:36px}.portfolio-hero-photo{aspect-ratio:1.32}.portfolio-services{margin-top:1.3rem}.portfolio-footer nav{justify-content:flex-start}.portfolio-detail-heading .portfolio-fallback{margin-bottom:.4rem}.portfolio-main-photo img{max-height:72vw}.portfolio-thumbnails>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:359px){.portfolio h1{font-size:2.24rem}.portfolio-wrap{width:calc(100% - 32px)}}
