.implementation-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 28px;background:#eeeee6;border-bottom:1px solid #d9d8cc;font-size:12px;color:#515d49}.implementation-bar>a:first-child{font-weight:600}.real-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 30px}.real-project-image{display:block;border:1px solid #d0d5c7;border-radius:5px;overflow:hidden;background:#e3e7d8}.real-project-image img{width:100%;height:auto;aspect-ratio:1280/712;object-fit:cover;transition:transform .25s}.real-project-image:hover img{transform:scale(1.025)}.real-project-label{display:flex;justify-content:space-between;font-size:12px;color:#515d49;margin-top:18px;gap:15px}.real-project h3{font:29px Georgia,serif;letter-spacing:-.7px;margin:12px 0}.real-project h3>a{display:flex;justify-content:space-between}.real-project h3 span{font:24px Arial,sans-serif}.real-project>p{font-size:16px;line-height:1.65;color:#515d49}.real-project>.real-project-role{font-size:13px;color:#3b4c32;margin-top:12px}.real-project>.ep-text-link{margin-top:7px}.workbench{border-top:1px solid #d9d8cc;padding:40px 0;display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;align-items:center}.workbench h2{font:41px/1.15 Georgia,serif;letter-spacing:-1px;margin:20px 0}.workbench p:not(.ep-kicker){font-size:16px;line-height:1.65;color:#515d49;max-width:365px}.workbench .ep-text-link{margin-top:17px}.workbench-image img{width:100%;height:auto;border:1px solid #c9d2be;border-radius:4px}.workbench-image>span{display:block;font-size:12px;color:#515d49;margin-top:13px}.portfolio-contact{display:flex;align-items:center;justify-content:space-between;gap:50px;background:#e8eadf;border:1px solid #d5dbc8;border-radius:5px;padding:42px;margin-bottom:30px}.portfolio-contact h2{font:57px/1.08 Georgia,serif;letter-spacing:-1.8px;margin:18px 0}.portfolio-contact p:not(.ep-kicker){font-size:16px;line-height:1.7;color:#515d49;max-width:420px}.portfolio-contact-links{display:flex;flex-direction:column;gap:20px;align-items:start}.portfolio-site .ep-footer>div{display:flex;gap:24px}.project-intro{padding:32px 0 40px}.project-intro-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:80px;align-items:end;margin-top:35px}.project-intro h1{font:59px/1.1 Georgia,serif;letter-spacing:-2px;margin:18px 0}.project-intro-grid>div>p:last-child{font-size:18px;line-height:1.65;color:#515d49;max-width:600px}.project-intro aside{border-left:1px solid #d9d8cc;padding:15px 0 15px 30px}.project-intro aside>span{display:block;font-size:12px;color:#515d49;letter-spacing:.7px;margin-bottom:12px}.project-intro aside>strong{font:24px/1.4 Georgia,serif}.project-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.project-tags>span{font-size:12px;color:#515d49;border:1px solid #c4ceb8;padding:7px 10px;border-radius:3px}.project-large-image{width:100%;height:auto;border:1px solid #c9d2be;border-radius:5px}.project-story{display:grid;grid-template-columns:1fr 1.6fr;gap:80px;padding:50px 0}.project-story h2{font:39px Georgia,serif;margin-top:17px;letter-spacing:-1px}.project-story p:not(.ep-kicker){font-size:17px;line-height:1.8;color:#515d49}.project-story h3{font:26px Georgia,serif;margin:25px 0 13px}.project-story .ep-button{margin-top:25px}.project-next{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d9d8cc;padding:30px 0 45px}.project-next h2{font:32px Georgia,serif;letter-spacing:-.7px}

.portfolio-site .ep-photo img{object-position:center 35%}.portfolio-current{border-top:1px solid #d9d8cc;padding:35px 0 40px}.portfolio-current h2{font:36px/1.2 Georgia,serif;letter-spacing:-1px;margin:18px 0}.portfolio-current>p:not(.ep-kicker){font-size:16px;line-height:1.7;color:#515d49;max-width:750px}

.portfolio-site .ep-nav [aria-current=page]{color:#34472b;text-decoration:underline;text-underline-offset:7px}.page-heading{padding:50px 0 45px;max-width:820px}.page-heading h1{font:64px/1.08 Georgia,serif;letter-spacing:-2px;margin:22px 0}.page-heading>p:not(.ep-kicker){font-size:18px;line-height:1.7;color:#515d49;max-width:690px}.page-projects{padding:5px 0 50px}.section-more{display:inline-flex;margin-top:30px}.service-detail{display:grid;grid-template-columns:1fr 1.3fr;gap:75px;padding:40px 0;border-top:1px solid #d9d8cc}.service-detail h2,.working-process h2,.contact-start h2{font:39px/1.15 Georgia,serif;letter-spacing:-1px;margin:18px 0}.service-detail p:not(.ep-kicker),.service-detail li,.contact-start p:not(.ep-kicker),.contact-start li{font-size:16px;line-height:1.75;color:#515d49}.service-detail ul,.contact-brief ul{padding-left:20px;margin:18px 0}.service-detail li,.contact-brief li{margin:8px 0}.service-detail .ep-text-link{display:inline-flex;margin-top:15px}.working-process{border-top:1px solid #d9d8cc;padding:38px 0 45px}.working-process .ep-service-grid{margin-top:25px}.working-process h3{font:25px Georgia,serif;margin:15px 0}.working-process article>p{font-size:16px;line-height:1.65;color:#515d49}.contact-start{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;padding:20px 0 45px}.contact-channel{padding:30px;background:#e8eadf;border:1px solid #d5dbc8;border-radius:5px}.contact-channel .ep-button{display:inline-flex;margin:15px 0}.contact-channel .channel-note{font-size:14px!important}.contact-brief{padding:30px 0}.contact-brief h3{font:27px/1.3 Georgia,serif;margin:18px 0}.portfolio-site .portfolio-current .ep-text-link{display:inline-flex;margin-top:15px}

.project-image-note{font-size:13px;line-height:1.6;color:#515d49;margin-top:12px}

.estimate-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;padding:0 0 55px}.estimate-aside{padding:25px 0}.estimate-aside h2{font:35px/1.2 Georgia,serif;letter-spacing:-1px;margin:20px 0}.estimate-aside h3{font:23px Georgia,serif;margin:30px 0 12px}.estimate-aside p:not(.ep-kicker),.form-privacy{font-size:15px;line-height:1.7;color:#515d49}.estimate-aside .ep-text-link{display:inline-flex}.estimate-form fieldset{border:0;padding:0;margin:0;min-width:0}.estimate-form label{display:block;font-size:14px;font-weight:600;margin-bottom:22px}.estimate-form label>span{font-weight:400;color:#515d49;font-size:12px}.estimate-form input,.estimate-form select,.estimate-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:9px;padding:13px 14px;border:1px solid #a8b49b;border-radius:3px;background:#fcfcf7;color:#263321;font-family:inherit;font-size:16px;line-height:1.4}.estimate-form textarea{resize:vertical;font:16px/1.5 Arial,sans-serif}.estimate-form input:focus,.estimate-form select:focus,.estimate-form textarea:focus{outline:2px solid #34472b;outline-offset:2px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.estimate-form button{border:0;font:inherit;cursor:pointer;display:inline-flex;margin-top:20px}.estimate-form fieldset:disabled{opacity:.58}.estimate-form fieldset:disabled button{cursor:not-allowed}.form-status,.form-errors{background:#e8eadf;border:1px solid #b7c2aa;border-radius:4px;padding:20px;margin-bottom:25px;font-size:15px;line-height:1.6}.form-status h2,.form-errors h2{font:24px Georgia,serif;margin:0 0 10px}.form-status a{text-decoration:underline}.form-errors{border-color:#92584a}.sr-only,.form-honeypot{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.estimate-layout{grid-template-columns:1fr;gap:25px}.form-pair{grid-template-columns:1fr;gap:0}.page-heading h1{font-size:44px}.page-heading{padding:30px 0}.estimate-aside{border-top:1px solid #d9d8cc}.estimate-form input,.estimate-form select{font:16px Arial,sans-serif}}

/* Public launch: responsive layouts preserve the editorial design. */
body.portfolio-site{min-width:0}.portfolio-site main,.portfolio-site .ep-hero-copy{min-width:0}.portfolio-site a:focus-visible{outline:2px solid #34472b;outline-offset:5px}
@media(max-width:1000px){.portfolio-site .ep-wrap{padding:0 32px}.portfolio-site .ep-nav{height:auto;min-height:94px;gap:25px;padding:24px 0;flex-wrap:wrap}.portfolio-site .ep-nav nav{gap:20px;flex-wrap:wrap}.portfolio-site .ep-hero{gap:35px;grid-template-columns:1.4fr 1fr}.portfolio-site .ep-hero h1{font-size:52px}.portfolio-site .ep-portrait{max-width:280px}.portfolio-site .project-intro-grid,.portfolio-site .project-story,.portfolio-site .service-detail{gap:35px}.portfolio-site .ep-footer{gap:20px;flex-wrap:wrap}}
@media(max-width:700px){.portfolio-site .ep-wrap{padding:0 22px}.portfolio-site .ep-nav{gap:18px;padding:22px 0}.portfolio-site .ep-brand{font-size:24px}.portfolio-site .ep-nav nav{width:100%;gap:18px;font-size:13px}.portfolio-site .ep-nav-contact{padding:9px 12px}.portfolio-site .ep-nav-contact span{margin-left:6px}.portfolio-site .ep-hero{grid-template-columns:1fr;gap:30px;padding:35px 0}.portfolio-site .ep-hero h1{font-size:46px;letter-spacing:-1.7px}.portfolio-site .ep-portrait{justify-self:start;max-width:305px}.portfolio-site .ep-actions{flex-wrap:wrap;gap:15px}.portfolio-site .ep-section-heading{flex-direction:column;gap:15px}.portfolio-site .ep-section-heading>p{margin-top:0;max-width:100%}.portfolio-site .ep-service-grid,.portfolio-site .real-work-grid,.portfolio-site .service-detail,.portfolio-site .project-intro-grid,.portfolio-site .project-story,.portfolio-site .workbench{grid-template-columns:1fr;gap:28px}.portfolio-site .ep-service-grid article{border-left:0;border-top:1px solid #d9d8cc;padding:22px 0 0}.portfolio-site .ep-service-grid article:first-child{border-top:0;padding-top:0}.portfolio-site .ep-service-grid p{max-width:none}.portfolio-site .portfolio-contact{flex-direction:column;align-items:start;gap:25px;padding:28px 24px}.portfolio-site .portfolio-contact h2{font-size:43px}.portfolio-site .project-intro h1{font-size:43px;letter-spacing:-1.5px}.portfolio-site .project-intro aside{border-left:0;border-top:1px solid #d9d8cc;padding:22px 0 0}.portfolio-site .project-story{padding:35px 0}.portfolio-site .project-next{flex-wrap:wrap;gap:20px}.portfolio-site .ep-footer{flex-direction:column;gap:18px}.portfolio-site .real-project-label{flex-wrap:wrap;gap:6px}.portfolio-site .implementation-bar{flex-wrap:wrap;gap:12px;padding:14px 22px}.portfolio-site .contact-start{grid-template-columns:1fr;gap:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.real-project-image img{transition:none}}

/* Touch-friendly navigation and controls across phones and tablets. */
@media(max-width:1100px){.portfolio-site .ep-nav nav>a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.portfolio-site .ep-text-link{min-height:44px}.portfolio-site .ep-button{min-height:48px;max-width:100%}.portfolio-site .ep-footer a{display:inline-flex;align-items:center;min-height:44px}.portfolio-site .real-project h3>a{min-height:44px;align-items:center}.portfolio-site .ep-footer>span:last-child{line-height:1.8}.portfolio-site .estimate-form input,.portfolio-site .estimate-form select{min-height:48px}.portfolio-site .estimate-form textarea{min-height:170px}.portfolio-site .project-intro-grid>*{min-width:0}.portfolio-site .project-large-image{height:auto}}
@media(max-width:700px){.portfolio-site .ep-nav nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%}.portfolio-site .ep-nav nav>a{font-size:14px;padding:6px 2px}.portfolio-site .ep-nav nav>.ep-nav-contact{grid-column:1/-1;margin-top:4px;padding:10px 14px;gap:18px}.portfolio-site .ep-nav-contact span{margin-left:0}.portfolio-site .ep-nav{gap:15px}.portfolio-site .page-heading h1{font-size:clamp(36px,10vw,44px)}.portfolio-site .working-process{padding:30px 0 40px}.portfolio-site .working-process h2{font:35px/1.2 Georgia,serif;letter-spacing:-1px;margin:15px 0 25px}.portfolio-site .project-image-note{overflow-wrap:anywhere}.portfolio-site .real-project h3>a{gap:15px}.portfolio-site .portfolio-contact-links{width:100%;align-items:stretch}.portfolio-site .portfolio-contact-links .ep-button{width:100%}}
@media(max-width:360px){.portfolio-site .ep-wrap{padding:0 18px}.portfolio-site .ep-hero h1{font-size:40px}.portfolio-site .ep-portrait{max-width:100%}.portfolio-site .portfolio-contact{padding:25px 20px}.portfolio-site .portfolio-contact h2{font-size:36px}.portfolio-site .portfolio-current h2,.portfolio-site .service-detail h2{font-size:32px}.portfolio-site .project-intro h1{font-size:38px}}
