/* Design–Build: an architectural story, distinct from the service overview pages. */
.design-build-page{--db-muted:#64655f;--db-line:#c9c6ba}
.db-shell{max-width:1770px;margin-inline:auto;padding-inline:var(--gutter)}
.db-eyebrow{margin:0;font-size:.6875rem;line-height:1.7;letter-spacing:.17em;font-weight:500;text-transform:uppercase;color:var(--db-muted)}
.db-opening{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(30px,5vw,85px);padding-top:152px;padding-bottom:85px;align-items:start}
.db-opening-copy{padding-top:22px}
.design-build-page h1{margin:43px 0 39px;font-size:clamp(5.2rem,10.3vw,10.9rem);line-height:.9;letter-spacing:-.073em;font-weight:400}
.design-build-page h1>span{display:block;margin-top:15px;font-family:var(--serif);font-style:italic;letter-spacing:-.07em;color:#81745e;white-space:nowrap}
.design-build-page h1 i{font-family:var(--sans);font-size:.66em;vertical-align:.08em;font-weight:300;font-style:normal;letter-spacing:-.05em}
.db-opening-description{max-width:350px;font-size:.9375rem;line-height:1.9;color:var(--db-muted);margin:0 0 25px}
.db-link{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:48px;padding-block:13px;border-bottom:1px solid #9e9582;font-size:.8125rem;line-height:1.6}
.db-link svg{width:20px;height:20px;transition:transform .25s}
.db-link:hover svg{transform:translate(2px,-2px)}
.db-opening-copy>.db-link{max-width:350px}
.db-scroll{display:flex;align-items:center;gap:17px;width:max-content;max-width:100%;min-height:44px;margin-top:48px;font-size:.6875rem;text-transform:uppercase;letter-spacing:.13em}
.db-scroll>span{display:grid;place-items:center;border:1px solid var(--db-line);border-radius:50%;width:39px;height:39px;font-size:1.25rem}
.db-cover{margin:0}
.db-cover>img{width:100%;height:auto;aspect-ratio:1.04;object-fit:cover;object-position:52% 50%;background:#ddd9d0}
.db-cover figcaption,.db-study-main figcaption{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-top:15px;font-size:.6875rem;line-height:1.8;color:var(--db-muted)}
.db-cover figcaption>a,.db-study-main figcaption>a{display:flex;gap:15px;align-items:center;min-height:44px;color:var(--ink)}
.db-cover figcaption>a:hover,.db-study-main figcaption>a:hover{text-decoration:underline;text-underline-offset:5px}
.db-section-marker{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:20px;border-top:1px solid var(--db-line);font-size:.6875rem;letter-spacing:.06em}
.db-section-marker>a{display:flex;gap:18px;align-items:center;min-height:44px}
.design-build-page main .db-section-title{margin:0;font-size:clamp(2.65rem,5.6vw,6rem);line-height:1.08;font-weight:400;letter-spacing:-.052em;text-wrap:balance}
.design-build-page main .db-section-title em{font-family:var(--serif);font-weight:400;color:#81745e;letter-spacing:-.05em}
.db-approach{background:#242a26;color:var(--paper);padding-block:52px 85px;--db-muted:#c0c3b9;--db-line:#586057}
.db-approach-heading{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(230px,.65fr);gap:6vw;align-items:end;padding-top:39px}
.design-build-page main .db-approach .db-section-title{font-size:clamp(2.9rem,6.1vw,6.8rem)}
.design-build-page main .db-approach .db-section-title em{color:#c7b99e}
.db-approach-heading>p{margin:0 0 5px;font-size:1rem;line-height:1.9;color:#d1d4c9;max-width:400px}
.db-approach-bottom{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:10vw;margin-top:75px}
.db-approach-note{max-width:290px;margin:0;color:var(--db-muted);font-size:.875rem;line-height:1.9}
.db-scope{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:32px 45px}
.db-scope li{padding-top:18px;border-top:1px solid var(--db-line)}
.design-build-page main .db-scope h3{font-size:1.125rem;line-height:1.4;margin:0 0 13px;font-weight:400;letter-spacing:-.02em}
.db-scope p{font-size:.8125rem;line-height:1.85;color:var(--db-muted);margin:0}
.db-journey{padding-top:80px;padding-bottom:90px}
.db-journey-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.42fr);gap:8vw;align-items:end;padding-block:40px 65px}
.db-journey-heading>p{font-size:.9375rem;line-height:1.9;color:var(--db-muted);max-width:330px;margin:0}
.db-chapters{list-style:none;margin:0;padding:0}
.db-chapter{display:grid;grid-template-columns:.32fr .83fr 1fr;gap:clamp(24px,5vw,75px);align-items:start;border-top:1px solid var(--db-line);padding-block:32px 42px}
.db-chapter-number{font-size:clamp(3.2rem,5.3vw,5.5rem);line-height:1;letter-spacing:-.07em;color:#8b806b;font-weight:300}
.design-build-page main .db-chapter h3{font-size:clamp(1.7rem,2.8vw,3rem);line-height:1.16;margin:5px 0 0;font-weight:400;letter-spacing:-.05em;max-width:270px}
.db-chapter>p{color:var(--db-muted);font-size:.9375rem;line-height:1.9;margin:4px 0 0;max-width:480px}
.db-image-study{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:clamp(30px,7vw,120px);align-items:start;margin:26px 0 70px}
.db-image-study figure{margin:0}
.db-image-study img{width:100%;height:auto;object-fit:cover;object-position:var(--image-position,50% 50%);background:#ddd9d0}
.db-study-main img{aspect-ratio:1.32}
.db-image-study .db-study-detail{padding-top:110px}
.db-study-detail img{aspect-ratio:.8;object-position:58% 50%}
.db-study-detail figcaption{font-family:var(--serif);font-size:1.6rem;font-style:italic;line-height:1.5;padding-top:19px}
.db-study-detail figcaption span{font-family:var(--sans);font-size:.6875rem;font-style:normal;color:var(--db-muted)}
.db-perspective{background:#e3ded3;padding-top:70px}
.db-perspective-heading{display:grid;grid-template-columns:1fr .45fr;gap:25px 7vw;align-items:end;margin-bottom:48px}
.db-perspective-heading>.db-eyebrow{grid-column:1/-1}
.db-perspective-heading>p:last-child{font-size:.875rem;line-height:1.9;color:var(--db-muted);max-width:320px;margin:0}
.db-panorama{position:relative;margin:0;background:#343f35}
.db-panorama>img{width:100%;height:auto;aspect-ratio:2.15;object-fit:cover;object-position:50% 50%}
.db-panorama figcaption{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:27px var(--gutter);background:#242a26;color:var(--paper)}
.db-panorama .db-eyebrow{color:#c7b99e}
.design-build-page main .db-panorama h3{font-size:clamp(1.8rem,3vw,3.2rem);line-height:1.2;letter-spacing:-.045em;margin:8px 0 0;font-weight:400}
.db-panorama figcaption>a{display:flex;align-items:center;gap:40px;min-height:48px;font-size:.8125rem;border-bottom:1px solid #7f8a7a}
.db-portfolio-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:22px 30px}
.db-portfolio-bottom>p{font-size:.6875rem;letter-spacing:.11em;text-transform:uppercase;color:var(--db-muted)}
.db-portfolio-bottom>.db-link{width:330px;max-width:100%}
.db-questions{padding-top:100px;padding-bottom:90px}
.db-question-heading{display:grid;grid-template-columns:.65fr 1.7fr .65fr;gap:30px;align-items:baseline;padding-bottom:45px}
.db-question-heading>p:last-child{font-size:.875rem;color:var(--db-muted);margin:0}
.design-build-page main .db-question-heading .db-section-title{font-size:clamp(2.4rem,4.4vw,4.7rem)}
.db-questions .service-faq-list{counter-reset:db-question;margin-left:24%}
.db-questions .service-faq-list details{counter-increment:db-question}
.db-questions .service-faq-list summary{position:relative;padding-left:48px;font-size:1.0625rem;min-height:91px}
.db-questions .service-faq-list summary:before{content:counter(db-question,decimal-leading-zero);position:absolute;left:0;color:#81745e;font-size:.6875rem}
.db-questions .service-faq-list details>p{margin-left:48px;max-width:720px}
.db-next{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:11vw;padding-top:60px;padding-bottom:90px;border-top:1px solid var(--db-line)}
.db-next-note{max-width:310px;padding-top:6px}
.db-next-note>p:not(.db-eyebrow){font-size:.875rem;line-height:1.9;color:var(--db-muted);margin-block:24px}
.design-build-page main .db-next .db-section-title{font-size:clamp(2.9rem,5.2vw,5.6rem)}
.db-start{display:inline-flex;justify-content:space-between;align-items:center;gap:75px;min-height:60px;padding:17px 23px;background:var(--ink);color:var(--paper);font-size:.8125rem;margin-top:32px;transition:background .2s}
.db-start:hover{background:#393f36}
.db-phone{display:block;width:max-content;max-width:100%;min-height:44px;margin-top:10px;padding-block:12px;font-size:.75rem;color:var(--db-muted)}
@media(max-width:1100px){
 .db-opening{gap:35px;padding-top:125px;padding-bottom:65px}.db-opening-copy{padding-top:10px}.design-build-page h1{font-size:10vw;margin-block:35px 27px}.db-cover>img{aspect-ratio:.8}.db-scroll{margin-top:30px}.db-cover figcaption{display:block}.db-approach-heading{grid-template-columns:1.4fr .75fr;gap:40px}.db-approach-bottom{gap:50px}.db-scope{gap:30px}.db-chapter{grid-template-columns:.25fr .85fr 1fr;gap:30px}.db-image-study .db-study-detail{padding-top:80px}.db-question-heading{grid-template-columns:1fr 2.2fr}.db-question-heading>p:last-child{grid-column:2}.db-questions .service-faq-list{margin-left:0}.db-next{gap:60px}
}
@media(max-width:760px){
 .db-opening{grid-template-columns:1fr;gap:32px;padding-top:110px;padding-bottom:55px}.db-opening-copy{padding-top:0}.design-build-page h1{font-size:clamp(5.4rem,20vw,9.1rem);margin-top:25px;margin-bottom:30px}.design-build-page h1>span{margin-left:12%;margin-top:6px}.db-opening-description{max-width:450px;margin-bottom:16px}.db-opening-copy>.db-link{max-width:450px}.db-scroll{display:none}.db-cover>img{aspect-ratio:1.3}.db-cover figcaption{display:flex;gap:14px;font-size:.625rem}.db-cover figcaption>a{gap:8px}.db-approach{padding-block:30px 55px}.db-section-marker{gap:15px;padding-block:17px}.db-section-marker>span{font-size:.625rem}.db-approach-heading{display:block;padding-top:28px}.design-build-page main .db-section-title,.design-build-page main .db-approach .db-section-title{font-size:clamp(2.65rem,9.5vw,4.5rem)}.db-approach-heading>p{margin:30px 0 0;max-width:550px;font-size:.9375rem}.db-approach-bottom{display:block;margin-top:30px}.db-approach-note{max-width:550px}.db-scope{margin-top:35px;gap:25px}.db-scope p{font-size:.8125rem}.db-journey{padding-top:35px;padding-bottom:50px}.db-journey-heading{display:block;padding-block:25px 38px}.db-journey-heading>p{margin-top:25px;max-width:450px}.db-chapter{grid-template-columns:46px 1fr;gap:15px 20px;padding-block:25px 30px}.db-chapter-number{font-size:2.5rem}.design-build-page main .db-chapter h3{font-size:1.7rem;max-width:100%;margin-top:3px}.db-chapter>p{grid-column:2;margin:0;font-size:.875rem}.db-image-study{display:block;margin-block:8px 35px}.db-study-main img{aspect-ratio:1.25}.db-study-main figcaption{display:block}.db-image-study .db-study-detail{width:70%;margin-left:auto;padding-top:30px}.db-study-detail img{aspect-ratio:1}.db-study-detail figcaption{padding-top:13px;font-size:1.4rem}.db-perspective{padding-top:45px}.db-perspective-heading{display:block;margin-bottom:30px}.db-perspective-heading>.db-eyebrow{margin-bottom:25px}.db-perspective-heading>p:last-child{margin-top:25px;max-width:450px}.db-panorama>img{aspect-ratio:1.25}.db-panorama figcaption{display:block;padding:23px var(--gutter)}.db-panorama figcaption>a{justify-content:space-between;gap:20px;margin-top:15px;max-width:300px}.db-portfolio-bottom{display:block;padding-block:20px 27px}.db-portfolio-bottom>.db-link{width:100%;margin-top:12px}.db-questions{padding-top:55px;padding-bottom:45px}.db-question-heading{display:block;padding-bottom:30px}.design-build-page main .db-question-heading .db-section-title{font-size:clamp(2.5rem,9.5vw,4rem);margin-block:20px 15px}.db-questions .service-faq-list{margin-top:0}.db-questions .service-faq-list summary{font-size:.9375rem;padding-left:32px;gap:20px;min-height:85px}.db-questions .service-faq-list details>p{margin-left:32px;margin-right:15px}.db-next{display:flex;flex-direction:column;gap:40px;padding-top:40px;padding-bottom:50px}.db-next-invitation{order:-1}.db-next-note{max-width:450px;padding-top:30px;border-top:1px solid var(--db-line)}.design-build-page main .db-next .db-section-title{font-size:clamp(2.8rem,10vw,4.5rem)}.db-start{margin-top:26px;gap:60px}.db-next-note>p:not(.db-eyebrow){margin-block:18px}
}
@media(max-width:390px){.design-build-page h1{font-size:19vw}.db-scope{grid-template-columns:1fr}.db-cover figcaption{display:block}.db-chapter{grid-template-columns:36px 1fr;gap:14px}.db-chapter-number{font-size:2.1rem}.db-section-marker>a{font-size:.625rem;gap:10px}}
@media(prefers-reduced-motion:reduce){.db-link:hover svg{transform:none}.db-start,.db-link svg{transition:none}}
