/* Architectural rhythm: white space, blueprint blue, tactile photography. */
body{--build-ink:var(--wp--preset--color--contrast,#172a3b);--build-blue:var(--wp--preset--color--accent,#174970);--build-paper:var(--wp--preset--color--surface,#f2f4f3);--build-width:1240px;color:var(--build-ink)}
.wp-site-blocks{padding-top:0;padding-bottom:0}.wp-site-blocks>*,.build-main>*,.build-page>*{margin-block-start:0}
.build-main{max-width:none!important;padding:0!important}.build-page{max-width:none!important}
:where(.build-page,.build-header,.build-footer,.build-main) :where(h1,h2,h3,p){white-space:pre-line;overflow-wrap:anywhere}
:where(.build-page,.build-header,.build-footer,.build-main) :where(a){text-decoration:none}
:where(.build-page,.build-main) figure{margin:0}.build-page img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.build-eyebrow{font-family:Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--build-blue);margin:0 0 18px!important;line-height:1.5}
.build-header{height:100px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fff;position:relative;z-index:10;box-sizing:border-box}
.build-brand{flex-shrink:0}.build-brand .wp-block-site-title{font-size:27px!important;line-height:1.1!important;font-weight:800;letter-spacing:.025em;margin:0}.build-brand .wp-block-site-title a{color:var(--build-blue);text-decoration:none!important}.build-brand-caption{font:9px/1.2 Arial,sans-serif;letter-spacing:.23em;margin:9px 0 0!important}
.build-header .wp-block-navigation{font-size:13px;font-weight:700;margin:0}.build-header .wp-block-navigation__container{gap:22px}.build-header .wp-block-navigation-item__content{padding:12px 2px;border-radius:4px;transition:background .25s,color .25s}.build-header .wp-block-navigation-item__content:hover{background:var(--build-paper);color:var(--build-blue);text-decoration:none!important}
.build-hero{position:relative;min-height:650px;height:calc(100svh - 100px);max-height:860px;display:grid;grid-template-columns:55% 45%;padding-bottom:55px;box-sizing:border-box}
.build-hero .build-hero-photo{height:100%;min-height:0;grid-column:1;grid-row:1}.build-hero-copy{grid-column:2;grid-row:1;align-self:center;position:relative;padding:44px 5vw 44px 3.5vw;background:#fff;margin-left:-40px;box-shadow:-24px 28px 60px #172a3b0a;border-radius:8px 0 0 8px}
.build-hero h1{font-size:clamp(42px,5.3vw,78px);line-height:1.35;letter-spacing:.015em;color:var(--build-blue);margin:0 0 28px}.build-hero-copy>p:not(.build-eyebrow){font-size:15px;line-height:2.1}.build-hero-caption{position:absolute;bottom:12px;left:4vw;font:11px/1.5 Arial,sans-serif;letter-spacing:.2em;color:var(--build-blue)}
.build-section{width:min(var(--build-width),calc(100% - 96px));margin:0 auto!important;padding:100px 0;box-sizing:border-box}.build-section-heading{margin-bottom:42px}.build-section-heading h2{margin:0;letter-spacing:.025em}.build-section-heading .build-eyebrow{margin-bottom:12px!important}
.build-split{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.build-split>figure{aspect-ratio:4/5}.build-copy p:not(.build-eyebrow){font-size:15px;line-height:2.2;max-width:490px}.build-copy h2{margin:0 0 26px}
.build-grid{display:grid;gap:32px}.build-two{grid-template-columns:repeat(2,minmax(0,1fr))}.build-three{grid-template-columns:repeat(3,minmax(0,1fr))}.build-grid>*{min-width:0;margin:0!important}
.build-work{background:#fff;box-shadow:0 14px 35px #172a3b16;border-radius:8px;overflow:hidden;transition:box-shadow .35s,transform .35s}.build-work>figure{aspect-ratio:4/3;overflow:hidden}.build-work img{transition:transform .65s,filter .4s}.build-work:hover{box-shadow:0 20px 44px #172a3b25;transform:translateY(-4px)}.build-work:hover img{transform:scale(1.025);filter:brightness(.93)}.build-work-copy{padding:30px 32px 34px}.build-work-copy h3{font-size:24px;margin:0 0 12px}.build-work-copy>p:not(.build-eyebrow){font-size:13px}
.build-tinted{background:var(--build-paper)}.build-service{padding:40px;background:white;border-radius:8px;box-shadow:0 8px 30px #172a3b09}.build-service h3{font-size:27px;margin:0 0 22px}.build-service>p:not(.build-eyebrow){font-size:15px;max-width:460px}
.build-info{padding:30px;background:var(--build-paper);border-radius:8px}.build-info h3{font-size:21px;margin:0 0 15px}.build-info>p:not(.build-eyebrow){font-size:14px;line-height:2}.build-info .build-eyebrow{margin-bottom:18px!important}
.build-photo-band{position:relative;margin:35px 0!important;height:570px}.build-photo-band>figure{height:100%}.build-band-copy{position:absolute;left:max(48px,calc((100% - 1240px)/2));bottom:50px;background:white;padding:35px 44px;border-radius:8px;box-shadow:0 15px 40px #172a3b18}.build-band-copy h2{margin:0;font-size:clamp(28px,3vw,44px)}
:where(.build-page,.build-main,.build-footer) .wp-block-buttons{margin-top:28px}.build-action-row{display:flex;gap:22px;flex-wrap:wrap}
:where(.build-page,.build-main,.build-footer) .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:14px 26px!important;background:var(--build-blue);color:#fff;border:0;border-radius:6px;font-size:14px;font-weight:700;box-shadow:0 7px 18px #172a3b15;text-decoration:none!important;transition:background .25s,transform .25s,box-shadow .25s}
:where(.build-page,.build-main,.build-footer) .wp-block-button__link::after{content:'+';position:static;font:24px/1 Arial,sans-serif;width:auto;height:auto;background:none;mask:none;transform:none;transition:transform .3s}.build-page .wp-block-button__link:hover,.build-main .wp-block-button__link:hover{background:var(--build-ink);color:white;transform:translateY(-2px);box-shadow:0 10px 25px #172a3b28}.build-page .wp-block-button__link:hover::after{transform:rotate(90deg)}
.build-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:75px max(48px,calc((100% - 1240px)/2));background:var(--build-blue);color:white}.build-cta .build-eyebrow,.build-cta h2{color:white}.build-cta h2{font-size:clamp(28px,3vw,42px);margin:0 0 20px}.build-cta p{font-size:14px}.build-cta>.wp-block-buttons{flex-shrink:0;margin:0}.build-cta .wp-block-button__link{background:white;color:var(--build-blue)}
.build-footer{padding:70px max(48px,calc((100% - 1240px)/2)) 25px;display:grid;grid-template-columns:1fr 1fr;gap:40px;background:var(--build-paper);color:var(--build-ink)}.build-footer .wp-block-site-title{font-size:30px;line-height:1.4;margin:0 0 20px}.build-footer .wp-block-site-title a{color:var(--build-blue)}.build-footer-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}.build-footer-links .wp-block-buttons{margin:0}.build-footer-links .wp-block-button__link{background:transparent;color:var(--build-ink);box-shadow:none;justify-content:flex-start;padding:12px!important;min-height:0;font-size:13px}.build-footer-links .wp-block-button__link::after{display:none}.build-footer-links .wp-block-button__link:hover{background:white;transform:translateY(-2px)}.build-demo-note,.build-copyright{grid-column:1/-1;font-size:11px;line-height:1.8;margin:0!important}.build-copyright{font-family:Arial,sans-serif;letter-spacing:.05em}.build-small{font-size:12px;line-height:1.8}
.build-title{display:grid;grid-template-columns:44% 56%;height:430px;background:var(--build-paper)}.build-title-copy{align-self:center;padding:40px 24px 40px max(48px,calc((100vw - 1240px)/2))}.build-title h1{font-size:clamp(30px,3.3vw,49px);color:var(--build-blue);margin:0;line-height:1.5}.build-title>figure{height:100%;min-height:0}
.build-reading{max-width:840px}.build-wide-photo{width:min(1240px,calc(100% - 96px));height:520px;margin:0 auto!important}.build-steps{display:grid;gap:20px}.build-steps .build-info{display:grid;grid-template-columns:70px 1fr 1.5fr;align-items:start;gap:25px;padding:34px}.build-steps .build-eyebrow{font-size:32px;margin:0!important}.build-steps h3{margin:0}.build-steps p{margin:0}
.build-main .wp-block-details{background:var(--build-paper);border:0;border-radius:8px;padding:24px;margin-bottom:16px}.build-main .wp-block-details summary{font-weight:700;cursor:pointer}.build-main .wp-block-details[open]{box-shadow:0 8px 22px #172a3b12}.build-main .wp-block-details p{font-size:15px}
.build-journal .wp-block-post-template{display:grid;grid-template-columns:1fr;gap:15px;padding:0}.build-journal .wp-block-post{margin:0!important}.build-post-card{padding:25px 30px;background:var(--build-paper);border-radius:8px;transition:background .25s}.build-post-card:hover{background:#e4eaed}.build-post-card .wp-block-post-date{font-size:12px}.build-post-card h3{font-size:18px;margin:10px 0}.build-post-card a{color:var(--build-ink);text-decoration:none!important}.build-post-card .wp-block-post-excerpt{font-size:14px}.build-main .wp-block-query-pagination{gap:12px;margin-top:35px}.build-main .wp-block-query-pagination a,.build-main .page-numbers{padding:10px 15px;border-radius:6px;background:var(--build-paper);text-decoration:none}.build-main .page-numbers.current{background:var(--build-blue);color:#fff}
.build-article{width:min(900px,calc(100% - 48px));margin:0 auto;padding:75px 0 95px}.build-article>.wp-block-post-title{font-size:clamp(28px,4vw,46px);line-height:1.5}.build-article>.wp-block-post-featured-image{margin:35px 0}.build-article img{max-width:100%;height:auto}.build-article .wp-block-post-content{margin-top:40px}.build-article .wp-block-post-date,.build-article .wp-block-post-terms{font-size:13px}.build-main input,.build-main textarea,.build-main select{max-width:100%;box-sizing:border-box;border-radius:6px;padding:12px;border:1px solid #8a9ba8}.build-main input[type=submit],.build-main .wp-block-search__button{background:var(--build-blue);color:white;border:0;border-radius:6px;padding:12px 20px}.build-main table{width:100%;border-collapse:collapse}.build-main td,.build-main th{padding:14px;background:var(--build-paper)}
:where(.build-main,.build-header,.build-footer) a:focus-visible,:where(.build-main,.build-header) button:focus-visible,.build-main summary:focus-visible{outline:3px solid #bf8735;outline-offset:5px}
@media(max-width:1050px){.build-header{height:84px}.build-header .wp-block-navigation__container{gap:12px}.build-header .wp-block-navigation{font-size:11px}.build-hero{height:650px;min-height:0}.build-hero-copy{padding:30px;margin-left:-25px}.build-hero h1{font-size:48px}.build-three{grid-template-columns:1fr}.build-cta{align-items:flex-start;flex-direction:column}.build-section{padding:70px 0}.build-title-copy{padding-left:35px}}
@media(max-width:700px){.build-header{height:78px;padding:0 22px}.build-brand .wp-block-site-title{font-size:24px!important}.build-brand-caption{font-size:8px}.build-header .wp-block-navigation__responsive-container-open{display:flex}.build-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}.build-header .wp-block-navigation__responsive-container.is-menu-open{padding:24px;background:#fff;color:var(--build-ink)}.build-header .wp-block-navigation__responsive-container-close{top:27px;right:22px}.build-header .wp-block-navigation__responsive-container-content{padding-top:65px;align-items:stretch}.build-header .wp-block-navigation__responsive-container-content .wp-block-navigation__container{align-items:stretch;width:100%;gap:12px}.build-header .is-menu-open .wp-block-navigation-item__content{padding:18px;background:var(--build-paper);font-size:16px;display:block;width:100%;box-sizing:border-box}
.build-hero{height:auto;display:flex;flex-direction:column;padding-bottom:42px}.build-hero .build-hero-photo{height:340px;width:100%}.build-hero-copy{margin:-40px 18px 0;align-self:stretch;padding:30px 24px;border-radius:8px;box-shadow:0 14px 30px #172a3b10}.build-hero h1{font-size:44px;margin-bottom:18px}.build-hero .build-eyebrow{font-size:10px}.build-hero-copy>p:not(.build-eyebrow){font-size:15px;line-height:1.95;white-space:normal;text-wrap:balance}.build-hero-caption{display:none}.build-section{width:calc(100% - 44px);padding:55px 0}.build-section-heading{margin-bottom:28px}.build-split,.build-two{grid-template-columns:1fr;gap:28px}.build-split>figure{aspect-ratio:4/3}.build-work-copy{padding:25px}.build-service{padding:28px}.build-work-copy h3,.build-service h3{font-size:23px}.build-photo-band{height:370px;margin:0!important}.build-band-copy{bottom:24px;left:22px;padding:22px}.build-band-copy h2{font-size:27px}.build-band-copy .build-eyebrow{font-size:9px}.build-cta{padding:46px 24px;gap:18px}.build-footer{padding:46px 24px 25px;grid-template-columns:1fr;gap:28px}.build-footer-links{gap:8px}.build-title{height:auto;grid-template-columns:1fr}.build-title-copy{padding:42px 24px}.build-title h1{font-size:32px}.build-title>figure{height:240px}.build-wide-photo{width:calc(100% - 44px);height:300px}.build-steps .build-info{grid-template-columns:1fr;padding:25px;gap:10px}.build-steps .build-eyebrow{font-size:26px}.build-post-card{padding:22px}.build-article{padding-top:42px}.build-main .wp-block-query-pagination{flex-wrap:wrap}.build-main .wp-block-query-pagination-numbers{display:flex;gap:5px;flex-wrap:wrap}}
.build-footer{grid-template-columns:repeat(2,minmax(0,1fr))}.build-footer>*{min-width:0}.build-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}.build-footer .wp-block-buttons .wp-block-button{width:100%;min-width:0}.build-footer .wp-block-buttons .wp-block-button__link{width:100%;min-width:0;box-sizing:border-box}.build-main .wp-block-button{max-width:100%}.build-main .wp-block-button__link{min-width:0;max-width:100%;box-sizing:border-box}
@media(max-width:700px){.build-footer{grid-template-columns:minmax(0,1fr)}.build-cta .wp-block-buttons{width:100%}.build-cta .wp-block-button{width:100%}}
@media(prefers-reduced-motion:reduce){.build-page *,.build-header *,.build-footer *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:700px){
 .build-header:has(.is-menu-open) .build-brand{position:fixed;top:22px;left:22px;z-index:100002}
 .build-header .wp-block-navigation__responsive-container.is-menu-open{padding:22px!important}
 .build-header .is-menu-open .wp-block-navigation__responsive-container-close{position:fixed!important;top:27px!important;right:22px!important}
 .build-header .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:80px!important;align-items:stretch!important;width:100%}
 .build-header .is-menu-open .wp-block-navigation__container{align-items:stretch!important;gap:12px!important;width:100%!important}
 .build-header .is-menu-open .wp-block-navigation-item{width:100%;align-items:stretch!important;margin:0!important}
 .build-header .is-menu-open .wp-block-navigation-item__content{padding:18px!important;width:100%!important;text-align:left!important;font-size:16px!important}
}

/* COLLECTION ART DIRECTION 2026-09 */
/* Architecture first: photographs, project captions, precise typography. */
.build-hero{grid-template-columns:65% 35%;height:690px;min-height:0;padding-bottom:32px}.build-hero-copy{margin:0;padding:40px 35px;background:transparent;box-shadow:none;border-radius:0}.build-hero h1{font-size:clamp(34px,3.5vw,52px);line-height:1.6;color:var(--build-ink)}.build-hero .build-eyebrow,.build-hero-caption{display:none}.build-work{box-shadow:none;border-radius:2px;background:transparent}.build-work:hover{box-shadow:none;transform:none}.build-work-copy{padding:25px 0 35px}.build-work-copy h3{font-size:26px}.build-work-copy>p:not(.build-eyebrow){font-size:15px;line-height:1.9;max-width:36em}.build-work-copy .wp-block-button__link{background:var(--build-paper);color:var(--build-ink)}.build-work>figure{aspect-ratio:3/2}.build-works-section .build-two{grid-template-columns:1.3fr 1fr;align-items:start;gap:48px}.build-works-section .build-work:nth-child(2){margin-top:100px!important}.build-service{border-radius:2px;box-shadow:none;padding:42px}.build-brand-caption{display:none}
@media(max-width:760px){.build-hero{height:auto;display:flex}.build-hero-copy{margin:0;padding:30px 24px}.build-hero h1{font-size:34px}.build-hero .build-hero-photo{height:350px}.build-works-section .build-two{grid-template-columns:1fr;gap:30px}.build-works-section .build-work:nth-child(2){margin-top:0!important}.build-work-copy{padding:20px 0}.build-work-copy h3{font-size:23px}}



/* MOBILE READING QUALITY 2026-09-14 */
.build-main .build-small,.build-footer .build-small{font-size:14px;line-height:1.9}
.build-main .wp-block-post-content{overflow-wrap:break-word}

/* Small screens: shrink layout items rather than clip their content. */
.build-split>*{min-width:0}.build-main .wp-block-button{max-width:100%;min-width:0}.build-main .wp-block-button__link{max-width:100%;box-sizing:border-box}

.build-main .wp-block-buttons{min-width:0;max-width:100%}

/* Homepage photographic direction: stable crops and optional desktop reading anchors. */
body.home .build-hero-photo,body.home .build-split>figure{overflow:hidden}
@media(min-width:1100px) and (min-height:700px) and (prefers-reduced-motion:no-preference){body.home .build-works-section{display:grid;grid-template-columns:240px minmax(0,1fr);gap:48px;align-items:start}body.home .build-works-section>.build-section-heading{position:sticky;top:140px}body.home .build-works-section>.wp-block-buttons{grid-column:2}body.home .build-works-section .build-two{grid-template-columns:1fr;gap:60px}body.home .build-works-section .build-work:nth-child(2){margin-top:0!important}}

/* Article rhythm: readable measure, grouped metadata, deliberate heading spacing. */
.build-article > .wp-block-post-title { text-wrap:balance; word-break:auto-phrase; overflow-wrap:break-word; }
.build-article .build-article-meta { display:flex; align-items:center; flex-wrap:wrap; gap:8px 18px; }
.build-article .build-article-meta > * { margin:0!important; }
.build-article .wp-block-post-content { box-sizing:border-box; padding-inline:0; max-width:720px; margin-inline:auto; }
.build-article .wp-block-post-content > :where(p,ul,ol) { font-size:16px; line-height:2; }
.build-article .wp-block-post-content > :where(h2,h3,h4) { margin-block:48px 18px; line-height:1.65; text-wrap:balance; word-break:auto-phrase; }
.build-article .wp-block-post-content > h2 { font-size:clamp(24px,2.2vw,30px); }
.build-article .wp-block-post-content > h3 { font-size:clamp(21px,1.8vw,25px); }
.build-article .wp-block-post-content > .wp-block-image { margin-block:28px; }
@media(max-width:700px) {
 .build-article .wp-block-post-content > :where(h2,h3,h4) { margin-top:36px; }
 .build-article > .wp-block-post-title { letter-spacing:.04em; }
}
