/* Shared multipage layouts */
/* Approved logo artwork; keep its original proportions on every page. */
.header .brand{width:clamp(207px,20.7vw,270px)}
.brand .brand-logo{width:100%;height:auto;object-fit:contain}
.footer .brand{width:260px;max-width:100%;min-width:0}
@media(min-width:1001px){.header{gap:24px}.header nav{white-space:nowrap}}
@media(min-width:761px) and (max-width:1000px){
 .header{height:96px;gap:20px}
 .header .brand{width:234px}
 .menu-toggle{display:flex;align-items:center;gap:12px;background:none;color:white;border:1px solid #fff6;padding:10px 13px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}
 .menu-icon{width:15px;height:8px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}
 .header nav{display:none;position:absolute;top:96px;left:0;right:0;background:#171613;padding:18px 6% 28px;align-items:stretch;gap:0;border-bottom:1px solid #c1a07970}
 .header nav.open{display:flex;flex-direction:column}
 .header nav a{font-size:11px;padding:15px 0}
 .header nav .portal{display:block}
 .header nav .nav-cta{padding:13px;margin-top:12px}
}

/* Process introduction: keep the project photo uncropped and let the text share its row. */
.process-intro{display:grid;grid-template-columns:minmax(0,.78fr) minmax(460px,1fr);gap:7%;align-items:center;padding-block:68px 60px}
.process-intro .page-intro{padding:0}
.process-intro .intro-lead{max-width:540px}
.process-intro .process-image{width:92%;max-width:620px;height:auto;aspect-ratio:auto;margin:0;justify-self:end;border:3px solid #000;box-sizing:border-box}
.process-intro .process-floorplan-image{display:block;width:100%;height:auto;object-fit:contain;object-position:center}
@media(max-width:900px){
 .process-intro{grid-template-columns:1fr;gap:38px;padding-top:55px;padding-bottom:42px}
 .process-intro .process-image{width:94%;max-width:620px;height:auto;aspect-ratio:auto;justify-self:center}
}
@media(max-width:760px){.header .brand{width:min(198px,calc(90vw - 133.2px))}.menu-toggle{flex-shrink:0}}
[hidden]{display:none!important}.header nav{gap:23px}.header nav a[aria-current="page"]{color:var(--gold)}.header nav a[aria-current="page"]:not(.nav-cta){box-shadow:0 1px 0 var(--gold);padding-bottom:5px}.inner-page .header{position:relative;background:var(--ink);border-color:#ffffff1f}.inner-page .header .brand{color:var(--paper)}
.page-intro{padding-top:85px;padding-bottom:65px}.page-intro h1{font-size:clamp(44px,4.6vw,70px);line-height:1.15;margin-bottom:28px}.intro-lead{max-width:670px;font-size:17px;color:var(--muted);font-weight:300}.page-cta{background:#201d19;color:var(--paper);padding:90px 0;text-align:center}.page-cta h2{font-size:clamp(38px,4vw,60px);margin-bottom:32px}.page-cta em{color:var(--gold)}
.preview-note{display:flex;align-items:center;gap:13px;padding:16px 20px;border:1px solid var(--line);font-size:12px;color:var(--muted)}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--bronze);flex-shrink:0}.portfolio-section{padding-bottom:95px}.portfolio-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:38px 0}.portfolio-toolbar>p{font-size:11px;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap}.filter{background:none;border:1px solid var(--line);padding:10px 17px;font-size:11px;color:var(--muted);transition:background .2s}.filter.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.filter:hover{border-color:var(--bronze)}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 40px}.portfolio-card{min-width:0}.portfolio-card .eyebrow{margin:23px 0 12px}.portfolio-card h2,.portfolio-photo strong{font:400 30px/1.3 var(--serif);margin:0}.portfolio-photo{width:100%;border:0;background:none;text-align:left;padding:0;display:block}.portfolio-photo>span,.portfolio-photo>strong{display:block}.portfolio-image{height:395px;position:relative;display:block;overflow:hidden}.portfolio-image img{transition:transform .6s}.portfolio-tag{position:absolute;top:18px;left:18px;background:#171613c9;color:var(--paper);font-size:8px;letter-spacing:.15em;padding:6px 9px}.card-link{font-size:11px;display:block;margin-top:18px;color:var(--bronze)}
.service-jump{display:flex;flex-wrap:wrap;gap:13px 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:22px;margin-bottom:55px}.service-jump a{font-size:12px;border-bottom:1px solid transparent}.service-jump a:hover{border-color:var(--bronze)}.service-feature{padding:60px 0 90px}.service-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.service-feature figure{position:relative;height:560px}.service-feature-grid>div>p:not(.eyebrow){color:var(--muted);font-size:15px}.service-feature.alternate{background:#e5ddcf;padding:90px 0}.service-feature.alternate figure{order:2}.scope-list{list-style:none;padding:0;margin:30px 0 0;border-top:1px solid var(--line)}.scope-list li{padding:12px 0;border-bottom:1px solid var(--line);font-size:13px;display:flex;gap:12px}.scope-list li:before{content:'\2014';color:var(--bronze)}
.process-image{position:relative;height:430px}.process-floorplan-image{object-position:center 68%}.timeline{padding-block:65px 90px}.timeline-step{display:grid;grid-template-columns:70px 1fr 1.15fr;gap:40px;border-bottom:1px solid var(--line);padding:55px 0}.step-number{font:italic 40px var(--serif);color:var(--bronze)}.timeline-step h2{font-size:32px;margin:0;max-width:340px}.timeline-step .eyebrow{margin-bottom:15px}.timeline-step>div:last-child>p{font-size:15px;color:var(--muted)}.client-step{border-left:1px solid var(--bronze);padding-left:20px;margin-top:26px}.client-step>span{font-size:9px;letter-spacing:.12em;color:var(--bronze)}.client-step p{font-size:13px;margin-top:10px}.portal-callout{background:var(--ink);color:var(--paper);padding:70px 0}.portal-callout>.wrap{display:flex;justify-content:space-between;align-items:center;gap:60px}.portal-callout p:not(.eyebrow){font-size:14px;color:#bcb2a4;max-width:450px}.portal-callout em{color:var(--gold)}.process-overview-link{margin-top:0}
.about-story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding-bottom:100px}.about-story figure{height:620px;position:relative}.about-story p:not(.eyebrow){color:var(--muted);font-size:15px}.values-section{background:var(--ink);color:var(--paper)}.values-section em{color:var(--gold)}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:50px}.values-grid article{border-top:1px solid #bda78455;padding-top:25px}.values-grid span{color:var(--gold);font-size:11px}.values-grid h3{margin:22px 0 18px;font-size:27px}.values-grid p{color:#bcb2a4;font-size:14px}.team-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.team-section>div>p:not(.eyebrow){color:var(--muted);font-size:15px;max-width:440px}.team-list article{display:flex;gap:27px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}.team-list article:first-child{border-top:1px solid var(--line)}.team-initials{display:grid;place-items:center;width:70px;height:80px;background:#e2d8c8;font:26px var(--serif);color:var(--bronze)}
.contact-page-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;padding-bottom:100px}.contact-page-section aside>p:not(.eyebrow){color:var(--muted);font-size:15px}.contact-page-section h2{font-size:38px}.contact-page-section .contact-email{overflow-wrap:anywhere}.contact-info{margin-top:40px}.contact-info .eyebrow{margin:26px 0 10px}.contact-info>p:not(.eyebrow){font-size:14px;color:var(--muted)}.existing-client{border-top:1px solid var(--line);margin-top:35px;padding-top:25px;font-size:13px}.existing-client .text-link{margin-top:8px}.inquiry-panel{background:#e6ddcf;padding:38px}.inquiry-panel>.eyebrow{margin-bottom:32px}.contact-page-section select{max-width:100%}
.project-detail-hero{height:640px;position:relative;isolation:isolate;color:var(--paper);display:flex;align-items:flex-end}.project-detail-hero>img{position:absolute;inset:0;z-index:-2}.project-detail-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0b0a09dc,#0b0a0935 90%)}.project-detail-hero>.wrap{padding-bottom:65px}.project-detail-hero h1{font-size:clamp(40px,4.6vw,68px)}.project-detail-hero h1 em{color:#e2c9a9}.back-link{font-size:11px;display:inline-block;margin-bottom:40px;border-bottom:1px solid #ffffff80;padding-bottom:5px}.project-summary{padding-top:35px}.project-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;border-bottom:1px solid var(--line);padding:38px 0;margin:0}.project-facts dt{font-size:9px;letter-spacing:.14em;color:var(--bronze);margin-bottom:9px}.project-facts dd{font-size:14px;margin:0}.project-story{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-block:90px}.project-story p:not(.eyebrow){color:var(--muted);font-size:15px}.detail-gallery{padding-bottom:90px}.detail-gallery button{border:0;padding:0;background:var(--ink);position:relative;display:block;width:100%;overflow:hidden}.detail-gallery button img{transition:transform .5s}.gallery-wide{height:600px}.gallery-caption{display:flex;justify-content:space-between;gap:30px;padding-top:20px;font-size:12px;color:var(--muted)}.gallery-caption>span{font-size:9px;letter-spacing:.15em;color:var(--bronze)}.detail-pair{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center;margin-top:70px}.detail-pair>button{height:540px}.detail-pair>div>p:not(.eyebrow){font-size:15px;color:var(--muted)}
.portfolio-image img.short-term-rental-image,.project-detail-hero>img.short-term-rental-image{object-position:center top}
.home-page .project-image img.short-term-rental-image{object-position:center calc(50% + 30px)}
@media(max-width:1150px){.header nav{gap:16px}.header nav a{font-size:9px}.header .portal{display:none}.portfolio-image{height:330px}.service-feature-grid,.about-story,.team-section{gap:6%}.service-feature figure{height:480px}.contact-page-section{gap:6%}.inquiry-panel{padding:28px}.timeline-step{gap:25px;grid-template-columns:50px 1fr 1.1fr}}
@media(max-width:760px){.header nav{gap:0}.header nav a{font-size:11px}.header nav a[aria-current="page"]:not(.nav-cta){box-shadow:none;padding:15px 0}.page-intro{padding-top:55px;padding-bottom:42px}.page-intro h1{font-size:41px}.intro-lead{font-size:15px}.page-cta{padding:65px 0}.preview-note{font-size:11px;align-items:flex-start;padding:14px}.status-dot{margin-top:7px}.portfolio-toolbar{display:block;padding:25px 0}.portfolio-toolbar>p{margin-top:16px}.filters{gap:8px}.filter{padding:9px 12px;font-size:10px}.portfolio-grid{grid-template-columns:1fr;gap:40px}.portfolio-image{height:320px}.portfolio-card h2,.portfolio-photo strong{font-size:27px}.portfolio-section{padding-bottom:65px}.service-jump{gap:12px 20px;padding-block:20px;margin-bottom:20px}.service-jump a{font-size:11px}.service-feature,.service-feature.alternate{padding:40px 0 60px}.service-feature-grid{grid-template-columns:1fr;gap:32px}.service-feature figure{height:350px}.service-feature.alternate figure{order:0}.process-image{height:270px}.timeline{padding-block:25px 60px}.timeline-step{grid-template-columns:35px 1fr;gap:20px;padding:36px 0}.timeline-step>div:last-child{grid-column:2}.step-number{font-size:30px}.timeline-step h2{font-size:28px}.portal-callout>.wrap{display:block}.portal-callout .button{margin-top:30px}.about-story{grid-template-columns:1fr;gap:35px;padding-bottom:65px}.about-story figure{height:390px}.values-grid{grid-template-columns:1fr;gap:35px}.team-section{grid-template-columns:1fr;gap:35px}.contact-page-section{grid-template-columns:1fr;gap:40px;padding-bottom:65px}.inquiry-panel{padding:25px 20px}.contact-page-section h2{font-size:36px}.project-detail-hero{height:550px}.project-detail-hero>.wrap{padding-bottom:40px}.project-detail-hero h1{font-size:39px}.project-facts{grid-template-columns:1fr 1fr;gap:25px}.project-facts dd{font-size:13px}.project-story{grid-template-columns:1fr;gap:20px;padding-block:60px}.project-story h2{margin-bottom:8px}.gallery-wide{height:360px}.gallery-caption{display:block}.gallery-caption p{margin-top:10px}.detail-pair{grid-template-columns:1fr;gap:35px;margin-top:40px}.detail-pair>button{height:360px}.detail-gallery{padding-bottom:65px}}
@media(max-width:380px){.inquiry-panel .form-row{grid-template-columns:1fr;gap:0}.page-intro h1{font-size:36px}.project-detail-hero h1{font-size:34px}}
.basement-gallery-pair{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:70px}.basement-gallery-pair figure{margin:0}.basement-gallery-pair button{aspect-ratio:3/2}.basement-gallery-pair button img{width:100%;height:100%;object-fit:cover}@media(max-width:760px){.basement-gallery-pair{grid-template-columns:1fr;gap:35px;margin-top:40px}}
.detail-pair-photo{margin:0}.detail-gallery button[data-category="SHORT TERM RENTAL RENOVATION"]:not(.gallery-wide){height:auto;aspect-ratio:auto;background:transparent}.detail-gallery button[data-category="SHORT TERM RENTAL RENOVATION"]:not(.gallery-wide) img{display:block;height:auto;object-fit:contain;background:transparent}
.detail-gallery .basement-gallery-following{margin-top:70px}@media(max-width:760px){.detail-gallery .basement-gallery-following{margin-top:40px}}
/* Desktop scale: a more compact layout at normal browser zoom. */
@media (min-width:1001px){
 html{scroll-padding-top:80px}
 body{font-size:15px;line-height:1.65}
 .wrap{width:min(1440px,90%)}
 h2{font-size:clamp(29px,2.88vw,45px);margin-bottom:22px}
 h3{font-size:20px}
 p+p{margin-top:14px}
 .section{padding-block:clamp(64px,6.4vw,104px)}
 .eyebrow{font-size:9px;letter-spacing:.18em;margin-bottom:20px}
 .rule{width:48px;margin:25px 0}
 .header{height:90px;padding-inline:5%;gap:24px}
 .header .brand{width:clamp(190px,16.6vw,216px)}
 .header nav{gap:20px}
 .header nav a{font-size:10px;letter-spacing:.09em}
 .nav-cta{padding:10px 15px}
 .hero{height:85svh;min-height:624px;max-height:880px}
 .hero-content{padding-top:clamp(184px,23vh,280px)}
 .hero h1{font-size:clamp(40px,4.56vw,69px);margin-bottom:21px}
 .hero-content>p:not(.eyebrow){font-size:16px;max-width:780px;line-height:1.65}
 .hero-actions{gap:14px;margin-top:30px}
 .button{padding:13px 19px;gap:24px;font-size:10px;letter-spacing:.11em}
 .hero-bottom{bottom:26px;padding-top:19px}
 .point-image{height:488px;margin-bottom:24px}
 .text-link{gap:28px;padding-bottom:6px;margin-top:22px}
 .feature-image{height:592px}
 .feature-copy h2{font-size:clamp(30px,2.88vw,43px)}
 .feature-values{margin-top:28px}
 .feature-values>div{padding:14px 0 14px 32px}
 .feature-values span{top:18px}
 .feature-values h3{font-size:18px}
 summary{font-size:20px;padding:20px 0;gap:16px}
 details>p{padding-bottom:20px;line-height:1.65}
 .section-heading{gap:44px;margin-bottom:40px}
 .project-grid{gap:34px}.project-image{height:336px}
 .project-caption{padding-top:18px}.project-caption strong{font-size:24px}
 .image-action{width:36px;height:36px;right:16px;bottom:16px;font-size:19px}
 .process-grid{gap:28px;margin-top:52px}.process-grid article{padding-top:20px}
 .process-grid article>span{font-size:24px}.process-grid h3{font-size:22px;margin:19px 0 13px}
 .material-banner{height:408px}.material-banner h2{font-size:clamp(35px,4vw,56px)}
 .contact-phone{font-size:25px;margin-top:28px}
 .footer{padding-top:52px}.footer .brand{width:208px}
 .footer-top{gap:32px;padding-bottom:44px}.footer-bottom{padding-block:19px}
 .page-intro{padding-top:68px;padding-bottom:52px}
 .page-intro h1{font-size:clamp(35px,3.68vw,56px);margin-bottom:22px}
 .intro-lead{font-size:15px;max-width:620px}
 .page-cta{padding-block:72px}.page-cta h2{font-size:clamp(30px,3.2vw,48px);margin-bottom:26px}
 .portfolio-section{padding-bottom:76px}.portfolio-toolbar{padding-block:30px}
 .filter{padding:8px 14px}.portfolio-grid{gap:48px 32px}
 .portfolio-image{height:316px}.portfolio-card .eyebrow{margin:18px 0 10px}
 .portfolio-card h2,.portfolio-photo strong{font-size:24px}.card-link{margin-top:14px}
 .service-jump{gap:10px 24px;padding-block:18px;margin-bottom:44px}
 .service-feature{padding:48px 0 72px}.service-feature.alternate{padding-block:72px}
 .service-feature figure{height:448px}.scope-list{margin-top:24px}.scope-list li{padding-block:10px}
 .process-image{height:344px}.timeline{padding-block:52px 72px}
 .timeline-step{padding-block:44px;gap:32px}.timeline-step h2{font-size:26px}.step-number{font-size:32px}
 .portal-callout{padding-block:56px}.about-story{padding-bottom:80px}.about-story figure{height:496px}
 .values-grid{gap:44px;margin-top:40px}.values-grid h3{font-size:22px;margin:18px 0 14px}
 .team-list article{padding-block:24px;gap:22px}.team-initials{width:56px;height:64px;font-size:22px}
 .contact-page-section{padding-bottom:80px}.contact-page-section h2{font-size:31px}
 .contact-info{margin-top:32px}.inquiry-panel{padding:30px}label{margin-bottom:19px}
 .project-detail-hero{height:512px}.project-detail-hero>.wrap{padding-bottom:52px}
 .project-detail-hero h1{font-size:clamp(32px,3.68vw,54px)}.back-link{margin-bottom:32px}
 .project-summary{padding-top:28px}.project-facts{padding-block:30px;gap:24px}
 .project-story{padding-block:72px}.detail-gallery{padding-bottom:72px}
 .gallery-wide{height:480px}.detail-pair{margin-top:56px}.detail-pair>button{height:432px}
 .basement-gallery-pair,.detail-gallery .basement-gallery-following{margin-top:56px}
 .basement-gallery-pair{gap:28px}.gallery-caption{padding-top:16px}
}
