:root{--ink:#172428;--ink-soft:#26383d;--slate:#35535c;--brown:#734630;--clay:#a96e4c;--sand:#e9dfd1;--cream:#f5f1e9;--paper:#fbfaf7;--line:#17242829;--serif:Georgia, "Times New Roman", serif;--sans:"Segoe UI", Arial, sans-serif;--shadow:0 25px 70px #13202421}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--brown);color:#fff}.shell{width:min(1180px,100% - 48px);margin-inline:auto}.site-header{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fbfaf7ed;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:30px;height:88px;display:flex}.brand{align-items:center;gap:11px;min-width:205px;display:flex}.brand-mark{flex:none;width:54px;height:54px;display:block;overflow:hidden}.brand-mark img{object-fit:cover;width:100%;height:100%;transform:scale(1.85)}.brand span{flex-direction:column;line-height:1;display:flex}.brand b{font-family:var(--serif);letter-spacing:.13em;color:var(--brown);font-size:21px}.brand small{text-transform:uppercase;letter-spacing:.1em;margin-top:6px;font-size:8px}.desktop-nav{align-items:center;gap:28px;display:flex}.desktop-nav a{letter-spacing:.03em;font-size:13px;font-weight:600;position:relative}.desktop-nav a:after{content:"";background:var(--brown);height:1px;transition:right .25s;position:absolute;bottom:-10px;left:0;right:100%}.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}.header-actions{align-items:center;gap:20px;display:flex}.phone-link,.text-link{align-items:center;gap:8px;font-size:14px;font-weight:650;display:inline-flex}.menu-button,.mobile-menu{display:none}.button{background:var(--brown);color:#fff;border:1px solid var(--brown);letter-spacing:.02em;cursor:pointer;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 24px;font-size:13px;font-weight:650;transition:background .2s,color .2s,transform .2s;display:inline-flex}.button:hover{background:#583320;border-color:#583320;transform:translateY(-1px)}.button-small{min-height:43px;padding-inline:17px}.button-outline{color:var(--ink);border-color:var(--ink);background:0 0}.button-outline:hover{background:var(--ink);border-color:var(--ink);color:#fff}.button-light{background:var(--cream);color:var(--ink);border-color:var(--cream)}.button-light:hover{background:#fff;border-color:#fff}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--brown);margin:0 0 18px;font-size:11px;font-weight:750}.eyebrow.light,.light .eyebrow{color:#d9bfae}.light{color:#fff}h1,h2,h3{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-weight:400;line-height:1.04}h1{font-size:clamp(3rem,7vw,6.8rem)}h2{font-size:clamp(2.5rem,5vw,4.6rem)}h3{font-size:1.75rem}p{margin:0}.hero{background:var(--ink);color:#fff;min-height:calc(100vh - 88px);position:relative;overflow:hidden}.hero-media{position:absolute;inset:0 0 0 42%}.hero-media img{object-fit:cover}.hero-media:after{content:"";background:linear-gradient(90deg, var(--ink) 0%, #172428c7 13%, #1724280d 65%), linear-gradient(0deg, #17242866, transparent 45%);position:absolute;inset:0}.hero-copy{z-index:2;flex-direction:column;justify-content:center;align-items:flex-start;min-height:calc(100vh - 88px);padding-block:90px;display:flex;position:relative}.hero h1{max-width:790px}.hero h1 em{color:#d4ae96;font-weight:400;display:block}.hero-lede{color:#d6dcdd;max-width:530px;margin:32px 0;font-size:18px}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}.hero-proof{z-index:3;color:var(--ink);box-shadow:var(--shadow);background:#fbfaf7f0;display:flex;position:absolute;bottom:34px;right:max(24px,50vw - 590px)}.hero-proof>div{border-right:1px solid var(--line);min-width:150px;padding:20px 24px}.hero-proof>div:last-child{border:0}.hero-proof strong{font-family:var(--serif);color:var(--brown);font-size:28px;line-height:1;display:block}.hero-proof span{text-transform:uppercase;letter-spacing:.12em;margin-top:7px;font-size:10px;display:block}.section{padding-block:120px}.section-muted{background:var(--cream)}.section-dark{background:var(--ink);color:#fff}.section-heading{max-width:770px;margin-bottom:58px}.section-heading .section-intro{color:#59676a;max-width:590px;margin-top:24px;font-size:17px}.section-heading.light .section-intro{color:#c3cdcf}.intro-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:100px;display:grid}.intro-grid h2{max-width:500px}.intro-copy{padding-top:15px}.intro-copy>p{color:#4e5e61;margin-bottom:20px;font-size:18px}.intro-copy .text-link{color:var(--brown);margin-top:18px}.service-list{border-top:1px solid var(--line)}.service-row{border-bottom:1px solid var(--line);grid-template-columns:80px minmax(230px,.8fr) 1.2fr 28px;align-items:center;gap:30px;min-height:132px;transition:padding .25s,background .25s;display:grid}.service-row:hover{background:#ffffff73;padding-inline:18px}.service-row .number{color:var(--brown);font:13px var(--sans);letter-spacing:.12em}.service-row p{color:#59676a}.service-row svg{color:var(--brown)}.featured-project{background:#102025;grid-template-columns:1.45fr .55fr;min-height:650px;display:grid}.featured-project .project-card{grid-column:1/-1;grid-template-columns:1.45fr .55fr;display:grid}.project-card{display:block;overflow:hidden}.project-image{aspect-ratio:16/10;background:#ccd2d0;position:relative;overflow:hidden}.featured-project .project-image{aspect-ratio:auto;height:100%}.project-image img{object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.project-card:hover .project-image img{transform:scale(1.025)}.project-card-info{justify-content:space-between;align-items:flex-start;gap:24px;padding:26px 0;display:flex}.project-card-copy{min-width:0}.project-card-kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--clay);margin-bottom:8px;font-size:10px}.project-card-summary{color:#59676a;max-width:540px;margin-top:14px;font-size:14px;line-height:1.65}.project-card-info>svg{flex:none;margin-top:4px}.featured-project .project-card-info{color:#fff;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:48px}.featured-project .project-card-info h3{font-size:44px}.featured-project .project-card-summary{color:#adbbbd}.featured-project .project-card-info svg{width:44px;height:44px}.project-note{color:#657376;margin-top:32px;font-size:13px}.review-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.review-card{border:1px solid var(--line);background:#fff;flex-direction:column;min-height:400px;padding:34px;display:flex;position:relative}.quote-icon{color:var(--sand);position:absolute;top:26px;right:28px}.stars{color:var(--brown);gap:3px;margin-bottom:28px;display:flex}.review-card blockquote{font-family:var(--serif);flex-grow:1;margin:0;font-size:21px;line-height:1.55}.review-card footer{border-top:1px solid var(--line);grid-template-columns:1fr auto;margin-top:30px;padding-top:22px;display:grid}.review-images{gap:8px;margin-top:22px;display:flex}.review-images>div{aspect-ratio:1;width:72px;position:relative;overflow:hidden}.review-images img{object-fit:cover}.review-card footer strong{font-size:13px}.review-card footer span{color:var(--brown);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.review-card footer small{color:#7a8587;grid-column:1/-1;margin-top:5px}.review-more{justify-content:space-between;align-items:center;margin-top:35px;display:flex}.rating-summary{align-items:baseline;gap:10px;display:flex}.rating-summary strong{font:44px var(--serif)}.rating-summary span{color:#657376}.process-grid{grid-template-columns:repeat(3,1fr);gap:55px;display:grid}.process-step{border-top:1px solid #fff3;padding-top:25px}.process-step span{color:#d9bfae;letter-spacing:.15em;margin-bottom:50px;font-size:12px;display:inline-block}.process-step h3{margin-bottom:16px;font-size:28px}.process-step p{color:#adbbbd}.page-hero{background:var(--ink);color:#fff;padding:100px 0 85px}.page-hero-inner{grid-template-columns:1.2fr .8fr;align-items:end;gap:90px;display:grid}.page-hero h1{max-width:760px;font-size:clamp(3.4rem,6.5vw,6rem)}.page-hero-inner>div:last-child p{color:#bdc8ca;font-size:18px}.page-hero .text-link{margin-top:28px}.services-page-list .service-detail{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr 1fr;gap:55px;padding:65px 0;scroll-margin-top:100px;display:grid}.service-detail .number{color:var(--brown);letter-spacing:.15em;font-size:12px}.service-detail h2{font-size:40px}.service-detail p{color:#59676a;font-size:17px}.promise-band{background:#ffffff26;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.promise-band div{background:var(--ink);padding:45px}.promise-band strong{font-family:var(--serif);margin:16px 0 10px;font-size:26px;display:block}.promise-band p{color:#afbec0}.projects-page .page-hero h1{font-size:clamp(2.75rem,5vw,4.5rem)}.projects-page .section-heading h2{font-size:clamp(2.25rem,4vw,3.5rem)}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 28px;display:grid}.projects-cta-section{padding-top:0}.projects-cta{background:var(--sand);justify-content:space-between;align-items:center;gap:55px;padding:60px 65px;display:flex}.projects-cta-copy h2{font-size:clamp(2.25rem,4vw,3.75rem)}.projects-cta-copy>p:last-child{color:#59676a;max-width:620px;margin-top:18px}.projects-cta .button{flex:none}.project-detail-hero{padding:70px 0 50px}.project-detail-head{justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px;display:flex}.project-detail-head h1{max-width:770px;font-size:clamp(3rem,6vw,5.5rem)}.project-meta{border-top:1px solid var(--line);min-width:220px}.project-meta div{border-bottom:1px solid var(--line);justify-content:space-between;padding:10px 0;font-size:12px;display:flex}.project-meta span{color:#708083}.project-gallery{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.project-gallery figure{aspect-ratio:1;background:#dde0dc;margin:0;position:relative;overflow:hidden}.project-gallery figure:first-child{aspect-ratio:16/9;grid-column:1/-1}.project-gallery img{object-fit:cover}.project-story{grid-template-columns:.7fr 1.3fr;gap:100px;padding:85px 0;display:grid}.project-story p{color:#526265;font-size:19px}.about-story{grid-template-columns:1fr 1fr;align-items:center;gap:90px;display:grid}.about-image{aspect-ratio:4/5;position:relative}.about-image img{object-fit:cover}.about-copy h2{margin-bottom:30px}.about-copy p{color:#526265;margin-bottom:18px;font-size:17px}.values-grid{grid-template-columns:repeat(3,1fr);gap:25px;display:grid}.value-card{border:1px solid var(--line);background:#fff;min-height:260px;padding:35px}.value-card svg{color:var(--brown)}.value-card h3{margin:45px 0 15px}.value-card p{color:#59676a}.forms-layout{grid-template-columns:.7fr 1.3fr;align-items:start;gap:80px;display:grid}.form-aside{position:sticky;top:120px}.form-aside h2{margin-bottom:25px;font-size:42px}.form-aside>p{color:#566568;margin-bottom:30px}.contact-block{border-top:1px solid var(--line);padding-top:22px}.contact-block span{text-transform:uppercase;letter-spacing:.16em;color:#6b797c;margin-bottom:8px;font-size:10px;display:block}.contact-block a{font:27px var(--serif);color:var(--brown)}.form-card{box-shadow:var(--shadow);background:#fff;padding:42px}.form-card h2{margin-bottom:8px;font-size:38px}.form-card>p{color:#69777a;margin-bottom:35px}.form-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}.field{flex-direction:column;gap:8px;display:flex}.field-full{grid-column:1/-1}.field label{letter-spacing:.03em;font-size:12px;font-weight:700}.field input,.field select,.field textarea{background:var(--paper);width:100%;min-height:52px;color:var(--ink);border:1px solid #cbd0ce;border-radius:0;padding:13px 15px}.field textarea{resize:vertical;min-height:130px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brown);outline:2px solid #73463040}.checkbox-row{color:#5b686a;align-items:flex-start;gap:11px;font-size:12px;display:flex}.checkbox-row input{margin-top:4px}.form-actions{align-items:center;gap:20px;margin-top:28px;display:flex}.form-status{font-size:13px}.form-status.error{color:#a32d22}.success-panel{text-align:center;padding:60px 30px}.success-panel svg{color:var(--brown);margin-bottom:20px}.success-panel h2{margin-bottom:14px}.success-panel p{color:#59676a}.upload-note{color:#778386;font-size:11px}.honeypot-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.reviews-layout{grid-template-columns:1fr 1fr;gap:24px;display:grid}.reviews-layout .review-card{min-height:360px}.reviews-remainder{margin-top:24px}.review-invite{background:var(--sand);justify-content:space-between;align-items:center;gap:45px;margin-top:70px;padding:65px;display:flex}.review-invite h2{max-width:650px;font-size:38px}.site-footer{color:#fff;background:#0f1d21}.footer-cta{border-bottom:1px solid #ffffff26;padding:100px 0 90px}.footer-cta h2{max-width:850px}.footer-cta-actions{align-items:center;gap:30px;margin-top:38px;display:flex}.estimate-conversation{border-top:1px solid #ffffff26;margin-top:80px;padding-top:80px}.estimate-conversation h2{max-width:850px}.footer-grid{grid-template-columns:1.4fr repeat(3,1fr);gap:60px;padding:70px 0;display:grid}.footer-grid>div:not(:first-child){flex-direction:column;gap:10px;display:flex}.footer-grid h3{font:11px var(--sans);text-transform:uppercase;letter-spacing:.15em;color:#d4ae96;margin-bottom:12px}.footer-grid a,.footer-grid p{color:#b9c4c5;font-size:13px}.footer-grid a:hover{color:#fff}.footer-mark{background:#fff;width:85px;height:85px;margin-bottom:20px;display:block;overflow:hidden}.footer-mark img{object-fit:cover;width:100%;height:100%;transform:scale(1.85)}.footer-brand p{max-width:280px}.footer-bottom{color:#7f9295;border-top:1px solid #ffffff1f;justify-content:space-between;padding:20px 0 30px;font-size:11px;display:flex}.not-found{text-align:center;place-items:center;min-height:70vh;display:grid}.not-found h1{color:var(--brown)}.not-found p{margin:18px 0 28px}.legal-copy{max-width:780px}.legal-copy h2{margin:48px 0 15px;font-size:32px}.legal-copy h2:first-child{margin-top:0}.legal-copy p{color:#556568;font-size:17px}.legal-copy a{color:var(--brown);text-decoration:underline}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.admin-login{background:var(--cream);place-items:center;min-height:75vh;padding:60px 20px;display:grid}.admin-login-card{width:min(440px,100%);box-shadow:var(--shadow);background:#fff;padding:45px}.admin-login-card>svg{color:var(--brown);margin-bottom:22px}.admin-login-card h1,.admin-setup h1{font-size:44px}.admin-login-card>p{color:#657376;margin:15px 0 25px}.admin-login-card .button{width:100%;margin-top:20px}.admin-setup{text-align:center;place-content:center;max-width:650px;min-height:70vh;margin:auto;padding:30px;display:grid}.admin-setup svg{color:var(--brown);margin:0 auto 22px}.admin-setup p{color:#657376;margin-top:18px}.admin-setup code{background:var(--sand);padding:2px 6px}.admin-shell{width:min(1280px,100% - 48px);margin:0 auto;padding:65px 0 100px}.admin-head{justify-content:space-between;align-items:end;margin-bottom:40px;display:flex}.admin-head h1{font-size:50px}.admin-head>div>p:last-child{color:#69777a;margin-top:10px}.admin-stats{grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:55px;display:grid}.admin-stats>div{background:var(--ink);color:#fff;grid-template-columns:auto 1fr;align-items:center;column-gap:17px;padding:25px;display:grid}.admin-stats svg{color:#d4ae96;grid-row:1/3}.admin-stats strong{font:32px var(--serif);line-height:1}.admin-stats span{color:#aebcbe;text-transform:uppercase;letter-spacing:.08em;font-size:11px}.admin-section{border:1px solid var(--line);background:#fff;margin-top:45px;padding:30px}.admin-section>header{align-items:center;gap:12px;margin-bottom:25px;display:flex}.admin-section>header h2{font-size:30px}.admin-section>header span{background:var(--sand);border-radius:20px;place-items:center;min-width:25px;height:25px;font-size:11px;display:grid}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:780px}.admin-table th{text-align:left;border-bottom:1px solid var(--ink);text-transform:uppercase;letter-spacing:.1em;padding:10px;font-size:10px}.admin-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:15px 10px;font-size:13px}.admin-table td a,.admin-table td small{color:#677577;font-size:11px;display:block}.admin-table form,.project-admin-list form{gap:6px;display:flex}.admin-table select,.admin-table button,.project-admin-list select,.project-admin-list button{border:1px solid var(--line);background:var(--paper);padding:6px 8px;font-size:11px}.moderation-grid{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.moderation-card{border:1px solid var(--line);padding:25px;position:relative}.moderation-card blockquote{font-family:var(--serif);margin:8px 0 20px;font-size:18px}.moderation-card>p,.moderation-card>small{color:#687577;font-size:11px}.moderation-card .status{position:absolute;top:20px;right:20px}.moderation-actions{gap:8px;margin-top:18px;display:flex}.status{color:#5b6363;text-transform:uppercase;letter-spacing:.08em;background:#e9e6de;padding:4px 8px;font-size:9px;display:inline-block}.status-approved,.status-delivered{color:#245c38;background:#e0eee5}.status-pending,.status-retrying,.status-processing{color:#745b18;background:#f3e9cf}.status-rejected,.status-failed{color:#8b2929;background:#f2dddd}.admin-project-form{background:var(--cream);grid-template-columns:repeat(2,1fr);gap:15px;padding:25px;display:grid}.admin-project-form .button{align-self:end}.project-admin-list{margin-top:20px}.project-admin-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding:15px 0;display:flex}.project-admin-list small{color:#758083;display:block}.event-list>div{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr auto;align-items:start;gap:15px;padding:17px 0;display:grid}.event-list small{color:#718083;display:block}.event-list p{color:#982f28;font-size:11px}.admin-site-link{background:var(--brown);color:#fff;box-shadow:var(--shadow);align-items:center;gap:8px;padding:12px 16px;font-size:12px;display:flex;position:fixed;bottom:24px;right:24px}@media (max-width:1000px){.desktop-nav,.header-actions{display:none}.menu-button{color:var(--ink);background:0 0;border:0;place-items:center;display:grid}.mobile-menu{background:var(--paper);border-top:1px solid var(--line);padding:15px 24px 28px;display:none}.mobile-menu.open{flex-direction:column;gap:17px;display:flex}.mobile-menu a:not(.button){font-family:var(--serif);padding:5px 0;font-size:21px}.hero-media{inset-left:24%}.hero-proof{display:none}.intro-grid,.page-hero-inner,.forms-layout,.about-story,.project-story{gap:50px}.review-grid{grid-template-columns:repeat(2,1fr)}.review-grid .review-card:last-child{display:none}.reviews-page-featured .review-card:last-child{display:flex}.footer-grid{grid-template-columns:1.4fr repeat(2,1fr)}.footer-grid>div:last-child{grid-column:2}}@media (max-width:720px){.shell{width:min(100% - 32px,1180px)}.header-inner{height:76px}.brand-mark{width:46px;height:46px}.hero{min-height:calc(100svh - 76px)}.hero-media{opacity:.56;inset:0}.hero-media:after{background:linear-gradient(90deg,#172428f5,#17242866),linear-gradient(#0000,#172428b8)}.hero-copy{min-height:calc(100svh - 76px);padding-block:75px}.hero h1{font-size:clamp(3.2rem,15vw,5rem)}.hero-lede{font-size:16px}.hero-actions .button{width:100%}.section{padding-block:80px}.intro-grid,.page-hero-inner,.forms-layout,.about-story,.project-story{grid-template-columns:1fr}.service-row{grid-template-columns:40px 1fr 22px;gap:12px;padding:24px 0}.service-row p{display:none}.service-row h3{font-size:22px}.featured-project{grid-template-columns:1fr;min-height:auto}.featured-project .project-card{grid-template-columns:1fr}.featured-project .project-image{aspect-ratio:1}.featured-project .project-card-info{padding:28px 20px 40px}.review-grid,.reviews-layout,.process-grid,.values-grid,.promise-band{grid-template-columns:1fr}.review-grid .review-card:last-child{display:flex}.review-more{flex-direction:column;align-items:flex-start;gap:20px}.page-hero{padding:72px 0 62px}.page-hero-inner{align-items:start}.services-page-list .service-detail{grid-template-columns:38px 1fr;gap:16px;padding:45px 0}.service-detail p{grid-column:2}.project-detail-head{flex-direction:column;align-items:flex-start}.project-meta{width:100%}.project-gallery{grid-template-columns:1fr}.project-gallery figure:first-child{aspect-ratio:1;grid-column:1}.project-story{gap:25px}.about-image{aspect-ratio:1;order:-1}.form-aside{position:static}.form-card{padding:28px 20px}.form-grid{grid-template-columns:1fr}.field-full{grid-column:1}.review-invite{flex-direction:column;align-items:flex-start;padding:38px 25px}.projects-grid{grid-template-columns:1fr;gap:55px}.projects-cta{flex-direction:column;align-items:flex-start;padding:42px 25px}.footer-cta-actions{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr;gap:42px 25px}.footer-grid>.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:6px}.admin-shell{width:min(100% - 28px,1280px)}.admin-head{flex-direction:column;align-items:flex-start;gap:20px}.admin-stats,.moderation-grid,.admin-project-form{grid-template-columns:1fr}.admin-section{padding:20px 14px}.project-admin-list>div{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
