@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/manrope-400.ttf') format('truetype')}
@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/manrope-500.ttf') format('truetype')}
@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url('/assets/fonts/manrope-600.ttf') format('truetype')}
@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/manrope-700.ttf') format('truetype')}
:root{--sans:Manrope,"Helvetica Neue",Arial,sans-serif;--copper-glow:#f0c4a0;--trace:rgba(198,137,95,.38)}
body{font-weight:400}h1,h2,h3{font-weight:500}h1 em,h2 em{font-family:var(--sans);font-style:normal;font-weight:400;color:#a66441;letter-spacing:inherit}.work-section h2 em,.strata-copy h2 em,.editorial-copy h1 em{color:var(--copper-light)}
.site-header{background:rgba(25,30,27,.95);backdrop-filter:blur(18px);border-bottom:1px solid rgba(224,171,126,.25)}.desktop-nav a{font-size:.8125rem}.desktop-nav a:hover{color:var(--copper-light)}.brand{width:260px}.button{position:relative;isolation:isolate;transition:background .25s,color .25s,border-color .25s,box-shadow .25s,transform .25s}.button:hover{box-shadow:0 0 25px rgba(203,133,85,.14);transform:translateY(-2px)}.button:active{transform:translateY(0)}.button:after{content:"";position:absolute;width:8px;height:8px;top:4px;right:4px;border-top:1px solid currentColor;border-right:1px solid currentColor;opacity:.5;pointer-events:none}.button.small:after{display:none}
.reading-line{position:fixed;left:0;top:0;height:2px;width:100%;transform-origin:left;transform:scaleX(var(--page-progress,0));background:linear-gradient(90deg,var(--copper),#ffe0bb);box-shadow:0 0 10px #e9b78370;z-index:30;pointer-events:none}
.signature-hero{position:relative}.signature-hero .hero-panel{height:min(820px,calc(100svh - 100px));min-height:740px;padding:390px 9% 52px}.signature-hero .hero-panel:before{background:linear-gradient(180deg,rgba(12,20,17,.65) 0,rgba(12,20,17,.32) 42%,rgba(12,20,17,.74) 82%,rgba(12,20,17,.92) 100%)}.signature-hero .hero-panel:first-of-type{border-right:1px solid rgba(244,196,151,.5)}.signature-hero .hero-top{display:none}.hero-statement{position:absolute;z-index:3;top:75px;left:6%;width:min(950px,83%);pointer-events:none}.hero-statement .eyebrow{color:#efccaf;font-size:.72rem;margin-bottom:25px;letter-spacing:.17em}.hero-statement h1{font-size:clamp(3.7rem,6.5vw,7rem);line-height:1.04;letter-spacing:-.065em;color:var(--paper);font-weight:500}.hero-statement h1 span{color:var(--copper-glow);font-weight:400}.hero-copy{margin-top:auto;position:relative;padding-top:24px;border-top:1px solid rgba(230,190,156,.5)}.hero-copy:before{content:"";position:absolute;left:-3px;top:-3px;width:5px;height:5px;background:var(--copper-glow)}.signature-hero .hero-copy h2{font-size:clamp(2.3rem,3.7vw,4rem)}.signature-hero .hero-copy p{font-size:.95rem;max-width:440px;margin:20px 0}.signature-hero .hero-copy .eyebrow{font-size:.64rem;letter-spacing:.11em}.signature-hero .hero-copy .plus{font-weight:300;font-size:2.7rem}.hero-trace{position:absolute;inset:14px 0;pointer-events:none;z-index:2;opacity:.55}.hero-trace svg{width:100%;height:100%;overflow:visible}.hero-trace path{fill:none;stroke:var(--copper-glow);stroke-width:.8;vector-effect:non-scaling-stroke}.hero-trace path:nth-child(2){opacity:.45}.hero-trace path:nth-child(3){opacity:.2}
.strata-strip{background:linear-gradient(100deg,#b76f49,#cd9069 68%,#d2a07b);position:relative}.strata-strip:before{content:"";position:absolute;inset:8px 12px;border:1px solid #53322030;pointer-events:none}.strip-link{transition:letter-spacing .2s}.strata-strip:hover .strip-link{letter-spacing:.02em}
.intro,.services-preview,.values,.page-title{position:relative}.intro:before,.services-preview:before,.values:before{content:"";position:absolute;left:-3.4%;top:0;bottom:0;border-left:1px solid #b97a4c22;pointer-events:none}.intro:after,.services-preview:after,.values:after{content:"";position:absolute;top:67px;left:-3.4%;width:36px;border-top:1px solid #b97a4c88;pointer-events:none}.eyebrow{position:relative;padding-left:28px}.eyebrow:before{content:"";width:15px;height:1px;background:currentColor;position:absolute;left:0;top:.8em}.project-info .eyebrow,.hero-copy .eyebrow,.strata-strip .eyebrow{padding-left:0}.project-info .eyebrow:before,.hero-copy .eyebrow:before,.strata-strip .eyebrow:before{display:none}
.work-section{position:relative;background:radial-gradient(ellipse at 85% 0,rgba(165,116,75,.075),transparent 45%),var(--ink);overflow:hidden}.work-section:before{content:"";position:absolute;inset:30px 3%;border:1px solid #bf8a5a33;pointer-events:none}.work-section:after{content:"";position:absolute;left:3%;top:30px;width:70px;height:70px;border-top:1px solid var(--copper-light);border-left:1px solid var(--copper-light);pointer-events:none;opacity:.7}.work-section>.container{position:relative;z-index:1}.project-photo{display:block;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,0 100%);transition:box-shadow .3s}.project-photo:after{content:"";position:absolute;inset:13px;border:1px solid rgba(255,218,183,.24);pointer-events:none;transition:inset .4s,border-color .4s}.project-photo:hover:after{inset:20px;border-color:rgba(255,218,183,.65)}.project-card{min-width:0}.photo-action{padding:45px 25px 24px;font-size:.75rem;letter-spacing:.02em}.project-info{border-bottom:1px solid #b582582b;padding-bottom:22px}.project-info h3{font-size:1.1rem}.project-number{font-family:var(--sans);color:var(--copper);font-size:.8125rem}.home-feature-grid{grid-template-columns:1.25fr 1fr 1fr;align-items:start}.home-feature-grid .project-card:nth-child(2){margin-top:76px}.home-feature-grid .project-card:nth-child(3){margin-top:152px}.home-feature-grid .project-photo img{height:420px}.home-feature-grid .project-card:first-child .project-photo img{height:530px}
.service-row{position:relative;isolation:isolate}.service-row:before{content:"";position:absolute;bottom:-1px;height:1px;left:0;width:100%;background:linear-gradient(90deg,var(--copper),#e7b38e,transparent);transform-origin:left;transform:scaleX(0);transition:transform .45s}.service-row:hover:before{transform:scaleX(1)}.service-row:hover{background:linear-gradient(90deg,#ca946f0c,transparent);padding-left:12px}.row-plus{color:#a2623e;transition:transform .3s}.service-row:hover .row-plus{transform:rotate(90deg)}.strata-feature{position:relative}.strata-copy{position:relative;background:linear-gradient(135deg,#29312b,var(--ink))}.strata-copy:before{content:"";position:absolute;top:35px;right:35px;width:65px;height:65px;border-right:1px solid var(--copper);border-top:1px solid var(--copper);opacity:.8}.strata-image{overflow:hidden}.strata-image img{transition:transform .9s}.strata-feature:hover .strata-image img{transform:scale(1.015)}.values-grid article{position:relative}.values-grid article:before{content:"";position:absolute;left:0;top:-1px;height:1px;width:45px;background:var(--copper)}.values-grid span{font-size:.8rem}
.cta{position:relative;overflow:hidden;background:linear-gradient(110deg,#bc7851 10%,#d29a70 100%)}.cta:before{content:"";position:absolute;inset:16px;border:1px solid #6b41294d;pointer-events:none}.cta:after{content:"";position:absolute;width:290px;height:290px;border:1px solid #ffe2bf55;transform:rotate(45deg);right:-120px;top:-150px;box-shadow:0 0 0 18px #ffe2bf10,0 0 0 36px #ffe2bf09;pointer-events:none}.cta-inner{position:relative;z-index:1}.site-footer{overflow:hidden;padding-top:52px}.footer-wordmark{width:88%;margin:0 auto 75px;display:flex;align-items:flex-end;gap:24px;font-size:clamp(4.5rem,14.3vw,16rem);line-height:.9;font-weight:500;letter-spacing:-.065em;color:transparent;-webkit-text-stroke:1px #c3916670;border-bottom:1px solid #b3835340;padding-bottom:25px;user-select:none}.footer-wordmark span{font-size:.7rem;color:var(--copper-light);-webkit-text-stroke:0;letter-spacing:.24em;writing-mode:vertical-rl;padding-bottom:10px}.footer-bottom{border-color:#c69d6940}
.editorial-hero{position:relative}.editorial-copy{position:relative;background:radial-gradient(ellipse at 100% 100%,#b7774720,transparent 65%)}.editorial-copy:after{content:"";pointer-events:none;position:absolute;inset:24px;border:1px solid #c3946035;clip-path:polygon(0 0,85% 0,100% 10%,100% 100%,0 100%)}.editorial-copy>*{position:relative;z-index:1}.editorial-hero>img{filter:saturate(.83)}.page-title{background-image:linear-gradient(90deg,transparent calc(100% - 1px),#c28a5825 1px);background-size:33.333% 100%}.page-title:after{content:"";position:absolute;bottom:25px;right:0;width:90px;height:25px;border-bottom:1px solid var(--copper);border-right:1px solid var(--copper);opacity:.65}.page-title h1{font-size:clamp(3.4rem,6vw,6rem)}
.owner-hero{display:grid;grid-template-columns:1.05fr 1fr;background:var(--ink);color:var(--paper);scroll-margin-top:110px}.owner-story{padding:70px 11%;background:radial-gradient(ellipse at 0 100%,#af704e20,transparent 65%)}.owner-story .eyebrow{color:var(--copper-light)}.owner-story h1{font-size:clamp(3.8rem,6vw,6.2rem);margin-bottom:28px}.owner-story h1 em{color:var(--copper-glow)}.owner-story h2{font-size:1.5rem;letter-spacing:-.03em}.owner-role{font-size:.85rem;color:var(--copper-light);margin-top:10px}.owner-story>.lead{margin:32px 0 20px;line-height:1.65;font-size:1.2rem}.owner-story>p:not(.eyebrow):not(.lead):not(.owner-role){color:#c6cec3;font-size:.95rem;line-height:1.85}.owner-experience{border-top:1px solid #caa17a50;padding-top:24px;margin-top:36px;display:flex;align-items:center;gap:28px}.owner-experience strong{font-weight:400;font-size:4rem;letter-spacing:-.07em;line-height:1;color:var(--copper-glow)}.owner-experience strong span{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;margin-top:10px}.owner-experience p{font-size:.8rem;line-height:1.7;color:#c6cec3}.owner-work{margin:0;position:relative;overflow:hidden;min-width:0}.owner-work>img{width:100%;height:100%;object-fit:cover;object-position:43% 50%;filter:saturate(.75)}.owner-work:before{content:"";position:absolute;inset:22px;border:1px solid #f5d3ac60;z-index:1;pointer-events:none}.owner-work:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#122019dd);pointer-events:none}.owner-work figcaption{position:absolute;bottom:48px;left:45px;color:var(--paper);font-size:1.25rem;line-height:1.5;z-index:2}.photo-corner{position:absolute;right:22px;top:22px;width:70px;height:70px;border-top:2px solid var(--copper-glow);border-right:2px solid var(--copper-glow);z-index:2}
.reveal-pending{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal-pending.reveal-visible{opacity:1;transform:none}
@media(max-width:1150px){.brand{width:225px}.desktop-nav{gap:16px}.signature-hero .hero-panel{min-height:680px;padding-top:350px}.hero-statement{top:65px}.hero-statement h1{font-size:6.5vw}.home-feature-grid .project-photo img{height:320px}.home-feature-grid .project-card:first-child .project-photo img{height:420px}.owner-story{padding:60px 9%}.owner-experience{gap:20px}.owner-experience p{font-size:.75rem}}
@media(max-width:900px){.signature-hero .hero-panel{height:690px;min-height:0;padding-top:315px}.hero-statement{top:65px}.hero-statement h1{font-size:7vw}.hero-statement .eyebrow{font-size:.625rem}.signature-hero .hero-copy h2{font-size:2.4rem}.signature-hero .hero-copy p{font-size:.875rem}.signature-hero .hero-copy .eyebrow{font-size:.6rem}.hero-copy{padding-top:20px}.home-feature-grid{grid-template-columns:1fr 1fr}.home-feature-grid .project-card:nth-child(3){display:none}.home-feature-grid .project-card:nth-child(2){margin-top:65px}.home-feature-grid .project-photo img{height:350px}.home-feature-grid .project-card:first-child .project-photo img{height:440px}.owner-hero{grid-template-columns:1.2fr 1fr}.owner-story{padding:55px 9%}.owner-story h1{font-size:4rem}.owner-experience{align-items:flex-start}.owner-experience strong{font-size:3.25rem}.owner-work figcaption{left:35px;bottom:40px;font-size:1rem}.footer-wordmark{margin-bottom:55px}}
@media(max-width:640px){.brand{width:210px}.site-header{padding:18px 6%}.signature-hero .hero-panel{height:650px;min-height:0;padding:300px 6% 34px}.signature-hero .hero-panel:last-of-type{height:420px;padding:40px 6%}.hero-statement{top:52px;left:6%;width:88%}.hero-statement h1{font-size:clamp(2.7rem,9vw,3.7rem);line-height:1.13}.hero-statement .eyebrow{font-size:.6rem;letter-spacing:.1em;margin-bottom:20px;padding-left:20px}.hero-statement .eyebrow:before{width:11px}.signature-hero .hero-copy h2{font-size:2.85rem}.signature-hero .hero-copy p{font-size:.9375rem;max-width:340px}.signature-hero .hero-copy .eyebrow{font-size:.6rem}.hero-trace{inset:12px 0 auto;height:630px;opacity:.4}.hero-trace path{stroke-width:.75}.hero-trace path:nth-child(2),.hero-trace path:nth-child(3){display:none}.home-feature-grid{grid-template-columns:1fr}.home-feature-grid .project-card:nth-child(2),.home-feature-grid .project-card:nth-child(3){margin-top:0;display:block}.home-feature-grid .project-photo img,.home-feature-grid .project-card:first-child .project-photo img{height:390px}.work-section:before{inset:15px 3%;border-color:#bf8a5a24}.work-section:after{top:15px;width:40px;height:40px}.intro:after,.services-preview:after,.values:after{width:22px;top:35px}.strata-copy:before{width:40px;height:40px;right:20px;top:20px}.cta:before{inset:10px}.footer-wordmark{font-size:17vw;gap:12px;margin-bottom:42px;line-height:1;padding-bottom:15px}.footer-wordmark span{font-size:.5rem;letter-spacing:.1em;padding:0}.page-title h1{font-size:3.25rem}.page-title:after{bottom:15px;width:45px;height:15px}.page-title{background-size:50% 100%}.owner-hero{grid-template-columns:1fr}.owner-story{padding:55px 6%}.owner-story h1{font-size:4rem}.owner-story h2{font-size:1.4rem}.owner-story>.lead{font-size:1.1rem;margin-top:28px}.owner-story>p:not(.eyebrow):not(.lead):not(.owner-role){font-size:.95rem}.owner-experience{align-items:center;gap:30px}.owner-experience strong{font-size:3.75rem}.owner-experience p{font-size:.8rem}.owner-work{height:440px}.owner-work figcaption{left:35px;bottom:35px;font-size:1.1rem}.editorial-copy:after{inset:15px}.eyebrow{font-size:.7rem}.project-info h3{font-size:1.25rem}.project-photo:after{inset:12px}.section-heading h2{font-size:2.55rem}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none;transition:none}.button:hover{transform:none}.reading-line{box-shadow:none}}
/* The complete portfolio: named projects, full galleries and a quieter index. */
.project-address{font-size:.75rem;color:var(--muted);margin-top:8px;line-height:1.6}.work-section .project-address{color:#b4bdb2}.project-info h3 a:hover{color:var(--copper)}.home-portfolio-grid{row-gap:52px;align-items:start}.home-portfolio-grid .project-photo img{height:340px}.home-portfolio-grid .project-card:nth-child(2){margin-top:65px}.home-portfolio-grid .project-card:nth-child(3){margin-top:130px}.home-portfolio-grid .project-card:first-child .project-photo img{height:430px}.home-portfolio-grid .project-card:nth-child(-n+3){margin-bottom:20px}.portfolio-controls{display:flex;align-items:flex-end;gap:25px;border-bottom:1px solid var(--line);padding-bottom:25px}.portfolio-controls .filter-bar{flex:1;border:0;padding:0}.status-filter{font-size:.6875rem;text-transform:uppercase;letter-spacing:.07em;min-width:190px}.status-filter select{font-size:.8125rem;font-weight:400;text-transform:none;min-height:43px;padding:9px 30px 9px 12px;background:transparent}.portfolio-empty{padding-block:55px;color:var(--muted)}.portfolio-empty[hidden]{display:none}.project-masthead{padding-block:42px 60px}.project-back{display:inline-flex;gap:16px;align-items:center;font-size:.8rem;padding-bottom:10px;border-bottom:1px solid #b4775145}.project-back:hover{color:#995837}.project-back>span{font-size:1.2rem}.project-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:55px;margin-top:48px}.project-heading h1{max-width:850px;font-size:clamp(3.2rem,6.5vw,7rem);line-height:1.04;letter-spacing:-.065em}.project-heading .eyebrow{color:#975c3a}.project-facts{border-left:1px solid #b2825960;padding-left:30px;flex:0 0 260px;font-size:.875rem;line-height:1.7}.project-facts>span{display:block;margin-top:14px;font-size:.625rem;letter-spacing:.13em;text-transform:uppercase;color:#8b5537}.project-facts>a{display:inline-block;font-size:.75rem;border-bottom:1px solid var(--copper);padding-bottom:5px;margin-top:20px}.project-facts>a span{margin-left:18px}.project-cover{width:94%;margin:auto;position:relative;background:var(--ink);clip-path:polygon(0 0,calc(100% - 50px) 0,100% 50px,100% 100%,0 100%)}.project-cover>a{display:block;position:relative;overflow:hidden}.project-cover img{width:100%;height:min(720px,65vw);min-height:400px;object-fit:cover;object-position:center;transition:transform .8s}.project-cover>a:hover img{transform:scale(1.015)}.project-cover>a:after{content:"";position:absolute;inset:22px;border:1px solid #ffe0c050;pointer-events:none}.cover-label{position:absolute;bottom:0;left:0;right:0;color:#fff;padding:80px 38px 28px;background:linear-gradient(transparent,#10221fc4);display:flex;align-items:center;justify-content:space-between;font-size:.65rem;letter-spacing:.14em}.cover-label b{font-weight:300;font-size:2rem}.project-gallery{scroll-margin-top:100px}.gallery-intro{font-size:.9rem;color:var(--muted);line-height:1.8}.project-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.gallery-thumb{display:block;position:relative;overflow:hidden;background:#d9ddd6;aspect-ratio:4/3}.gallery-thumb:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s,filter .6s}.gallery-thumb:hover img{transform:scale(1.035);filter:brightness(.84)}.gallery-photo-number{position:absolute;inset:auto 0 0;padding:55px 18px 16px;background:linear-gradient(transparent,#10221f85);color:#fff;font-size:.675rem;display:flex;align-items:center;justify-content:space-between}.gallery-photo-number b{font-weight:300;font-size:1.4rem}.project-pagination{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--line);padding-block:34px 85px}.project-pagination a:last-child{text-align:right}.project-pagination span{display:block;font-size:.75rem;color:var(--muted);margin-bottom:12px}.project-pagination strong{font-size:clamp(1.1rem,2.1vw,2rem);font-weight:500;letter-spacing:-.03em;line-height:1.3}.project-pagination a:hover strong{color:#9b5c38}.gallery-dialog{width:min(1320px,95%);border:1px solid #c2956750;max-height:94dvh;overflow:auto}.lightbox-stage{background:#111614;display:flex;align-items:center;justify-content:center;min-height:180px}.gallery-dialog img{height:75dvh;max-height:75dvh;object-fit:contain;width:100%}.gallery-toolbar{display:flex;align-items:center;gap:20px;padding:17px 24px;border-top:1px solid #c2956733}.gallery-description{flex:1;text-align:center}.gallery-dialog .gallery-description p{padding:0;font-size:.85rem}.gallery-description>span{display:block;font-size:.6875rem;color:var(--copper-light);letter-spacing:.1em;margin-top:4px}.gallery-step{background:transparent;color:var(--paper);border:1px solid #c2956780;width:46px;height:46px;flex:0 0 46px;transition:background .2s;font-size:1.2rem}.gallery-step:hover{background:var(--copper);color:var(--ink)}.gallery-step[hidden]{display:none}.behind-the-work{padding-bottom:100px}.behind-the-work .section-heading{border-top:1px solid var(--line);padding-top:65px}.behind-the-work h2{font-size:clamp(2rem,3.5vw,3.5rem)}.company-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.company-photo{display:block;min-width:0}.company-photo .gallery-thumb{aspect-ratio:4/3}.company-photo>span{display:block;font-size:.8rem;padding-top:15px;color:var(--muted)}
@media(max-width:1150px){.portfolio-controls{align-items:flex-start;flex-direction:column}.status-filter{display:flex;align-items:center;gap:20px}.status-filter select{width:200px;margin:0}.home-portfolio-grid .project-photo img{height:290px}.home-portfolio-grid .project-card:first-child .project-photo img{height:380px}.project-facts{flex-basis:230px}.project-heading{gap:35px}.project-gallery-grid{gap:16px}.company-gallery{gap:16px}}
@media(max-width:900px){.home-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:36px}.home-portfolio-grid .project-card:nth-child(3){margin-top:0}.home-portfolio-grid .project-card:nth-child(2){margin-top:45px}.home-portfolio-grid .project-card:nth-child(-n+3){margin-bottom:0}.home-portfolio-grid .project-photo img{height:320px}.home-portfolio-grid .project-card:first-child .project-photo img{height:365px}.project-heading h1{font-size:4.2rem}.project-heading{align-items:flex-start}.project-facts{flex-basis:210px;padding-left:20px}.company-gallery{grid-template-columns:1fr 1fr;row-gap:30px}}
@media(max-width:640px){.home-portfolio-grid{grid-template-columns:1fr;row-gap:34px}.home-portfolio-grid .project-card:nth-child(2),.home-portfolio-grid .project-card:nth-child(3){margin-top:0}.home-portfolio-grid .project-photo img,.home-portfolio-grid .project-card:first-child .project-photo img{height:360px}.project-address{font-size:.8rem}.project-masthead{padding-block:28px 38px}.project-heading{display:block;margin-top:30px}.project-heading h1{font-size:clamp(2.8rem,11vw,4rem)}.project-facts{margin-top:30px;display:grid;grid-template-columns:1fr auto;padding-left:18px;font-size:.8rem;gap:8px 14px}.project-facts>span{margin:0;align-self:start;font-size:.58rem}.project-facts>a{grid-column:1/-1;justify-self:start;margin-top:10px}.project-cover{width:94%;clip-path:polygon(0 0,calc(100% - 25px) 0,100% 25px,100% 100%,0 100%)}.project-cover img{height:450px;min-height:0}.project-cover>a:after{inset:13px}.cover-label{padding:60px 23px 20px;font-size:.55rem;letter-spacing:.1em}.project-gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.gallery-thumb:first-child{grid-column:span 2;grid-row:auto;aspect-ratio:4/3}.gallery-photo-number{padding:40px 12px 10px}.gallery-photo-number b{font-size:1.2rem}.gallery-intro{margin-top:20px}.project-pagination{gap:25px;padding-block:25px 50px}.project-pagination span{font-size:.65rem}.gallery-dialog img{height:65dvh;max-height:65dvh}.gallery-toolbar{padding:13px 12px;gap:10px}.gallery-step{width:40px;height:44px;flex-basis:40px}.gallery-dialog .gallery-description p{font-size:.75rem}.gallery-description>span{font-size:.625rem}.status-filter{font-size:.625rem;gap:12px}.status-filter select{font-size:.8rem;max-width:185px}.behind-the-work{padding-bottom:65px}.behind-the-work .section-heading{padding-top:45px}.company-gallery{gap:24px 12px}.company-photo>span{font-size:.75rem;padding-top:10px}}

/* Comfortable reading sizes on every viewport. */
.signature-hero .hero-copy p,.owner-story>p:not(.eyebrow):not(.lead):not(.owner-role),.gallery-intro{font-size:1rem}.signature-hero .hero-copy .eyebrow,.hero-statement .eyebrow,.status-filter,.project-facts>span,.cover-label{font-size:.75rem}.status-filter select{font-size:.875rem}.gallery-step{width:92px;flex-basis:92px;font-size:.875rem}.gallery-description>span,.gallery-photo-number{font-size:.75rem}
@media(max-width:640px){.eyebrow{font-size:.75rem}.signature-hero .hero-copy .eyebrow,.hero-statement .eyebrow{font-size:.75rem;letter-spacing:.065em}.project-facts{grid-template-columns:1fr}.project-facts>span{font-size:.75rem}.cover-label{font-size:.75rem;letter-spacing:.06em}.status-filter{font-size:.75rem;flex-wrap:wrap}.status-filter select{font-size:.875rem}.gallery-step{width:68px;flex-basis:68px;font-size:.8125rem}.gallery-dialog .gallery-description p,.gallery-description>span{font-size:.75rem}.project-pagination span{font-size:.75rem}}

/* The gallery entrance belongs to the light introductory surface. */
.portfolio-grid{margin-top:32px}
.home-intro{row-gap:64px;padding-bottom:35px}
.work-portal{grid-column:1/-1;position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:40px;min-height:238px;padding:42px 48px;overflow:hidden;border:1px solid #b3825538;border-radius:14px;color:var(--ink);background:radial-gradient(ellipse at 78% 55%,#cc9b7220,transparent 62%),linear-gradient(115deg,#faf9f5,var(--paper) 58%,#f4f1e9);box-shadow:inset 0 1px 0 #ffffffd9;transition:border-color .35s,box-shadow .35s}
.work-portal:before{content:"";position:absolute;left:48px;top:0;width:74px;height:1px;background:linear-gradient(90deg,transparent,#a96940,#e6ba92,transparent);transition:width .5s}
.work-portal:after{content:"";position:absolute;inset:0 0 0 40%;z-index:-1;background:repeating-linear-gradient(90deg,#a8764810 0 1px,transparent 1px 96px);mask-image:linear-gradient(90deg,transparent,#000 50%,transparent);pointer-events:none}
.work-portal-trace{position:absolute;inset:0 0 0 33%;z-index:-1;opacity:.38;pointer-events:none;transition:transform .7s,opacity .7s}.work-portal-trace svg{width:100%;height:100%;display:block}.work-portal-trace path{fill:none;stroke:#b77c53;stroke-width:.8;vector-effect:non-scaling-stroke}.work-portal-trace path:nth-child(2){opacity:.5}.work-portal-trace path:nth-child(3){opacity:.22}
.work-portal-title{position:relative}.work-portal-label{display:block;color:#71695f;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;margin-bottom:16px;line-height:1.5}.work-portal h2{font-size:clamp(3.2rem,5.6vw,5.4rem);font-weight:500;letter-spacing:-.055em;line-height:1.05}.work-portal h2>span{color:#b87950}
.work-portal-action{display:inline-flex;align-items:center;gap:22px;flex-shrink:0;min-height:64px;padding:12px 14px 12px 22px;border:1px solid #ab805740;border-radius:5px;background:#f9f7f0d9;backdrop-filter:blur(6px);font-size:.875rem;line-height:1.4;transition:border-color .3s,background .3s}
.work-portal-symbol{display:grid;place-items:center;width:36px;height:36px;border:1px solid #b6845555;border-radius:3px;font-size:1.5rem;font-weight:400;line-height:1;color:#9a5f3a;transition:transform .4s,background .4s}
.work-portal:hover,.work-portal:focus-visible{border-color:#b382557a;box-shadow:0 12px 36px #3d362009,inset 0 1px 0 #fff}.work-portal:hover:before,.work-portal:focus-visible:before{width:170px}.work-portal:hover .work-portal-trace,.work-portal:focus-visible .work-portal-trace{transform:translateX(-10px);opacity:.58}.work-portal:hover .work-portal-action,.work-portal:focus-visible .work-portal-action{border-color:#af795689;background:#fffaf1}.work-portal:hover .work-portal-symbol,.work-portal:focus-visible .work-portal-symbol{transform:rotate(90deg);background:#ebd5bc6b}
@media(max-width:900px){.home-intro{row-gap:48px}.work-portal{padding:36px;min-height:215px}.work-portal:before{left:36px}.work-portal h2{font-size:3.8rem}.work-portal-action{gap:14px;padding-left:17px}}
@media(max-width:640px){.portfolio-grid{margin-top:28px}.home-intro{row-gap:36px;padding-bottom:10px}.work-portal{min-height:0;flex-direction:column;align-items:flex-start;gap:27px;padding:32px 27px;border-radius:12px}.work-portal:before{left:27px}.work-portal-label{font-size:.75rem;margin-bottom:12px}.work-portal h2{font-size:clamp(2.75rem,11vw,3.6rem)}.work-portal-trace{inset:0 -10% 0 18%;opacity:.28}.work-portal:after{left:15%}.work-portal-action{font-size:.875rem;min-height:57px;padding:10px 10px 10px 17px;gap:22px}.work-portal-symbol{width:32px;height:32px}}

/* Carry the full-width sections' 6% gutters through the homepage. */
.home-intro.container,.services-preview.container,.values.container{width:88%;max-width:none}
.home-intro:before,.home-intro:after,.services-preview:before,.services-preview:after,.values:before,.values:after{content:none}
.home-intro{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12vw}
.home-intro .intro-copy{max-width:640px}
.values-grid p{max-width:36rem}
@media(min-width:901px){.signature-hero .hero-panel{padding-inline:12%}}
@media(max-width:640px){.home-intro{grid-template-columns:minmax(0,1fr);column-gap:0}}

/* Architectural contours follow the same broad margins as the photographs. */
.owner-hero,.contact-page,.project-collection{position:relative;isolation:isolate}
.contour-frame{position:absolute;inset:12px 1%;pointer-events:none;z-index:2;color:#ae744f;border:1px solid currentColor;opacity:.42}
.home-intro>.contour-frame,.services-preview>.contour-frame,.page-title>.contour-frame{inset:10px -4.2vw}
.home-intro>.contour-frame{bottom:14px}
.page-title{background-image:none}.page-title:after{content:none}
.owner-hero>.contour-frame,.strata-feature>.contour-frame{color:#f0c4a0;inset:12px 1%}
.strata-copy:before{content:none}
.cta>.contour-frame{color:#65402a;inset:4px 1%}
.cta:before,.cta:after{content:none}
.hero-trace{opacity:.78}.hero-trace path{stroke-width:1.15}
.work-portal-trace{opacity:.62}.work-portal-trace path{stroke-width:1.15}
.contact-page{padding-block:22px 50px;background:radial-gradient(ellipse at 95% 8%,#d0a27817,transparent 55%)}
.contact-page>.contour-frame{inset:12px 1%;color:#a56943}
.contact-page .page-title>.contour-frame{display:none}
.contact-page .contact-grid{padding-bottom:50px}
.service-cities{margin-top:14px;max-width:52ch}
.two-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.two-projects .project-photo img{height:420px}
.gallery-photo-number{justify-content:flex-end}
.owner-slides{position:absolute;inset:0;overflow:hidden;background:var(--ink)}
.owner-slide{position:absolute;inset:-5% 0;width:100%;height:110%;object-fit:cover;object-position:center;filter:saturate(.85);opacity:0;transform:translateY(var(--owner-shift,0px));will-change:transform,opacity}
.owner-slide.is-active{opacity:1}
.owner-work:before{border-color:#f5d3ac80}
@media(min-width:641px){.owner-work{min-height:600px}}
@media(max-width:900px){.two-projects .project-photo img{height:350px}}
@media(max-width:640px){
 .contour-frame{inset:10px .5%}
 .home-intro>.contour-frame,.services-preview>.contour-frame,.page-title>.contour-frame{inset:10px -4.6vw}
 .home-intro>.contour-frame{bottom:0}.home-intro{padding-bottom:35px}
 .contact-page{padding-block:12px 20px}.contact-page>.contour-frame{inset:10px .5%}
 .contact-page .contact-grid{padding-bottom:35px}
 .two-projects{grid-template-columns:minmax(0,1fr);gap:30px}
 .two-projects .project-photo img{height:340px}
 .hero-trace{opacity:.68}.hero-trace path{stroke-width:1}
 .work-portal-trace{opacity:.5}
}
@media(prefers-reduced-motion:reduce){.owner-slide{transform:none;will-change:auto}}

/* Keep copper accents deliberate: one line, with space around the content. */
.home-intro>.contour-frame,.services-preview>.contour-frame,.owner-hero>.contour-frame,.strata-feature>.contour-frame{display:none}
.hero-trace path:not(:first-child),.work-portal-trace path:not(:first-child){display:none}
.hero-trace{opacity:.5}.hero-trace path{stroke-width:1}
.work-portal-trace{opacity:.4}.work-portal-trace path{stroke-width:1}
.work-portal:after{display:none}
.work-portal:hover .work-portal-trace,.work-portal:focus-visible .work-portal-trace{transform:none;opacity:.5}
.intro:before,.intro:after{content:none}
.owner-work:before{content:none}
.photo-corner{width:45px;height:45px;border-width:1px;opacity:.65}
.project-photo:after,.project-cover>a:after{content:none}
.editorial-copy:after{clip-path:none;border-color:#c394604a}
@media(max-width:640px){.hero-trace{opacity:.45}.work-portal-trace{opacity:.32}}

/* Confident copper outlines, with the angular detail from the main hero. */
.contour-frame{border:0;opacity:1;color:#ad7047}
.contour-frame svg{display:block;width:100%;height:100%;overflow:visible}
.contour-frame path{fill:none;stroke:currentColor;stroke-width:1.8;vector-effect:non-scaling-stroke;stroke-linejoin:miter}
.home-intro>.contour-frame,.services-preview>.contour-frame,.owner-hero>.contour-frame,.strata-feature>.contour-frame{display:block}
.owner-hero>.contour-frame,.strata-feature>.contour-frame{color:#edba8f}
.home-envelope-feature>.contour-frame{top:35px}
.contact-page>.contour-frame{color:#a36842}
.cta>.contour-frame{color:#70452c}
.hero-trace{opacity:1}
.hero-trace path{stroke:#f3c79f;stroke-width:2.2}
.hero-trace path:nth-child(2){display:block;stroke-width:1.4;opacity:.75}
.hero-trace path:nth-child(3){display:none}
.work-portal-trace{opacity:.9}
.work-portal-trace path{stroke:#b57449;stroke-width:1.8}
.work-portal-trace path:nth-child(2){display:block;stroke-width:1.2;opacity:.7}
.work-portal-trace path:nth-child(3){display:none}
.work-portal:hover .work-portal-trace,.work-portal:focus-visible .work-portal-trace{opacity:1}
.work-portal{border-color:#b382558c}
.project-photo:after,.project-cover>a:after,.gallery-thumb:after{content:"";position:absolute;inset:14px;border:2px solid #edbd95;box-shadow:0 0 0 1px #18211b40,inset 0 0 0 1px #18211b30;z-index:2;pointer-events:none;transition:inset .3s ease,border-color .3s ease}
.project-cover>a:after{inset:22px}
.project-photo:hover:after,.project-photo:focus-visible:after,.gallery-thumb:hover:after,.gallery-thumb:focus-visible:after{inset:18px;border-color:#ffdbb8}
.project-cover>a:hover:after,.project-cover>a:focus-visible:after{border-color:#ffdbb8}
.gallery-thumb:before{content:"";position:absolute;top:14px;right:14px;width:35px;height:35px;border-top:3px solid #ffdbb8;border-right:3px solid #ffdbb8;z-index:3;pointer-events:none;transition:inset .3s ease}
.gallery-thumb:hover:before,.gallery-thumb:focus-visible:before{top:18px;right:18px}
.owner-work:before{content:"";border:2px solid #edbd95}
.photo-corner{width:55px;height:55px;border-width:3px;opacity:1}
.editorial-copy:after{border:1.8px solid #c99469;clip-path:polygon(0 0,85% 0,100% 10%,100% 100%,0 100%)}
@media(max-width:640px){
 .contour-frame path{stroke-width:1.6}
 .hero-trace{opacity:1}.hero-trace path{stroke-width:2}
 .hero-trace path:nth-child(2){display:block;stroke-width:1.2;opacity:.75}
 .work-portal-trace{opacity:.85}
 .project-photo:after,.project-cover>a:after,.gallery-thumb:after{inset:10px;border-width:1.7px}
 .project-photo:hover:after,.project-photo:focus-visible:after,.gallery-thumb:hover:after,.gallery-thumb:focus-visible:after{inset:12px}
 .gallery-thumb:before{top:10px;right:10px;width:26px;height:26px}
 .gallery-thumb:hover:before,.gallery-thumb:focus-visible:before{top:12px;right:12px}
 .home-envelope-feature>.contour-frame{top:24px}
}

/* A charcoal backdrop lets the portfolio photographs and copper frames stand out. */
.portfolio-page{background:#252d28;color:var(--paper)}
.portfolio-page .page-title h1,.portfolio-page .project-info{color:var(--paper)}
.portfolio-page .page-title h1 em,.portfolio-page .eyebrow{color:var(--copper-light)}
.portfolio-page .contour-frame{color:#e0ac82}
.portfolio-page .page-title .lead,.portfolio-page .project-address,.portfolio-page .gallery-intro,.portfolio-page .company-photo>span{color:#cbd2c8}
.portfolio-page .project-info,.portfolio-page .filter-bar,.portfolio-page .behind-the-work .section-heading{border-color:#c7976e66}
.portfolio-page .filter-button{color:var(--paper);border-color:#a68c74;background:transparent}
.portfolio-page .filter-button:hover{background:#374238;border-color:var(--copper-light)}
.portfolio-page .filter-button[aria-pressed=true]{background:var(--copper-light);border-color:var(--copper-light);color:var(--ink)}
.portfolio-page .status-filter{color:#e4e8df}
.portfolio-page .status-filter select{color:var(--paper);background:#303a32;border-color:#a68c74;color-scheme:dark}
.portfolio-page .status-filter option{color:var(--paper);background:#303a32}
.portfolio-page .project-info h3 a:hover{color:var(--copper-light)}
