/* Midnight blueprint + warm ivory. Keep after styles.css. */
:root{--navy:#102a43;--deep:#061d30;--gold:#d9ad4b;--gold-dark:#91600c;--pale:#eeeae0;--muted:#5b6671;--line:#dedbd2;--ivory:#f8f6ef;--blueprint-lines:repeating-linear-gradient(0deg,transparent 0 49px,#b8cde50a 49px 50px),repeating-linear-gradient(90deg,transparent 0 69px,#b8cde50a 69px 70px),linear-gradient(118deg,transparent 68%,#d9ad4b40 68.1%,transparent 68.25%)}
body{background:var(--ivory)}
.blueprint{background-color:var(--ivory);background-image:linear-gradient(116deg,transparent 69%,#cbbf9f25 69.1%,transparent 69.3%),repeating-linear-gradient(0deg,transparent 0 59px,#a3a69b0c 59px 60px)}
.button{background:linear-gradient(120deg,#ffda7c,#e9b344);border-color:#d4a441;color:#102335;box-shadow:inset 0 1px #fff6}
.button.outline{background:transparent;color:var(--navy);box-shadow:none}
.button:focus-visible,a:focus-visible,button:focus-visible{outline-color:#c6952f}
#site-header{position:sticky;top:0;z-index:20}
.site-header{position:relative;background:#061d30f7;color:#f8f5eb;border-color:#d3b56950}
.header-inner{min-height:90px;gap:24px}
.brand img{width:265px;height:72px}
.site-header nav{gap:24px}
.site-header nav a{font-size:12px}
.site-header nav a span{font-size:10px;letter-spacing:.2px;color:#c7d1dd}
.site-header nav a[aria-current],.site-header nav a:hover{color:#f2c96f}
.header-cta{background:transparent;color:#f1c96d;box-shadow:none;font-size:13px}
.header-cta:hover{background:#d5a84114}
.menu-toggle{background:transparent;color:#f2ca71;border-color:#c8a25880}
.hero{background:var(--deep)}
.hero-actions .button.outline{color:#fff;background:#061d3099;border-color:#e1bb67}
.intro>img{mix-blend-mode:multiply}
.intro .eyebrow{color:#6b6c65}
#services{position:relative;isolation:isolate;background:var(--ivory);overflow:hidden;padding-block:30px}
#services:before{content:'';position:absolute;inset:0 auto 0 0;width:calc((100% - min(1380px,100% - var(--gutter)*2))/2 + 260px);background-color:var(--deep);background-image:var(--blueprint-lines);clip-path:polygon(0 0,100% 0,86% 100%,0 100%);z-index:-1}
#services>.wrap>.section-heading{color:#fff;padding-right:15px;align-self:center;padding-top:0}
#services .section-heading>p:not(.eyebrow){color:#d0dbe5}
#services .eyebrow,.projects .eyebrow,#process .eyebrow,.video-strip .eyebrow{color:#e9bd5d}
.service-card{border-color:#e9e4d9;background:#fbf9f2;box-shadow:0 3px 12px #152b3e05}
.service-copy{min-height:105px;padding-block:11px 15px}
.service-copy p{color:#425364}
.projects{position:relative;isolation:isolate;padding-block:25px 30px}
.projects:before,#process:before,.video-strip:before{content:'';position:absolute;inset:0 calc(-1 * (100vw - 100%)/2);z-index:-1;background-color:var(--deep);background-image:var(--blueprint-lines)}
.projects>.section-heading{color:#fff;align-self:center}
.projects>.section-heading p:not(.eyebrow),.projects>.section-heading small{color:#c7d2dd}
.project-tabs{margin-bottom:14px;gap:8px}
.project-tabs button{color:#e4e9ed;border-radius:0;position:relative}
.project-tabs button:not(:last-child):after{content:'';height:35%;width:1px;background:#68798b;position:absolute;right:-4px;top:32%}
.project-tabs button[aria-selected=true]{color:#102335;background:linear-gradient(120deg,#ffda7c,#e8b242)}
.project-feature{padding:12px;background:var(--ivory);gap:18px}
.project-copy .eyebrow{color:var(--gold-dark)}
.project-photo{min-height:310px}
.project-copy .button{background:#fff8}
.art-banner{background:var(--deep)}
.art-banner picture,.art-banner img{display:block;width:100%;height:auto;margin:0;max-width:100%}
.material-grid img{height:230px}
.portfolio-strip{display:grid;grid-template-columns:230px 1fr;gap:35px;align-items:center;padding-block:30px;border-bottom:1px solid var(--line)}
.portfolio-strip h2{font-size:25px}
.portfolio-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.portfolio-grid>a{min-width:0;display:block;background:#e9e7e0}
.portfolio-grid img{width:100%;aspect-ratio:1.45;object-fit:cover}
.portfolio-grid span{display:block;padding:7px 9px 10px;font-size:12px;line-height:1.45}
.portfolio-grid b{display:block;font:400 26px/1.2 Georgia,serif}
.portfolio-grid a:hover{background:#e5d8b9}
.plans-preview{padding-block:42px}
.plan-card{border-color:#e1ddd1;background:#fffdf8;border-radius:4px;box-shadow:0 5px 20px #061d3005}
.plan-code{background:var(--deep);color:#f5cf7c}
.plan-card-bottom{border-top:1px solid #e9e3d6;margin-top:19px;padding-top:18px;flex-wrap:wrap}
.plan-card-body{padding:20px}
.plan-name{min-height:2.8em}
.plan-card-bottom .button{margin-left:auto}
.plan-card-bottom strong{font-size:26px}
.plan-photo img{aspect-ratio:1.5}
.plan-stats{font-size:15px;grid-template-columns:1fr 1fr;gap:12px 8px}
.plan-stats li:first-child{grid-column:1/-1}
.plan-stats li{gap:8px}
.plan-stats .icon{width:21px;height:21px;flex-basis:21px}
.compact .plan-stats{font-size:14px}
.scope table th{background:#e5e2d9}
.scope table td{background:#fffdf6}
#process{position:relative;isolation:isolate;color:#fff;padding-block:34px}
#process .section-top p:not(.eyebrow),.process-grid p{color:#c1cedb}
.process-grid li>span{color:#f2c969}
.process-grid img{border:1px solid #859bae30}
.team-section{padding-block:32px}
.team-grid blockquote{padding:32px 26px;background:var(--deep);background-image:var(--blueprint-lines);color:#e7eef5;font-size:19px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.team-grid blockquote small{font-size:13px;color:#e5bd6c}
.team-grid blockquote .gold-line{margin-block:17px}
.video-strip{position:relative;isolation:isolate;color:#fff;padding-block:30px}
.video-strip>div>p:not(.eyebrow){color:#c5d2df}
.video-strip .text-link{color:#e6c173}
.video-quote{background:transparent;border-left:1px solid #d7b36a66}
.contact-section{background-color:var(--ivory)}
.contact-grid form{border-color:#d9d6cc;background:#fffdf8;box-shadow:none}
input,select,textarea{border-color:#d7d8d6}
.site-footer{background:var(--deep);color:#dce5ee;border-top-color:#b99a5855}
.footer-top>p{color:#e0b861}
.footer-bottom{border-color:#8ba0b52b;color:#b2c0ce}
.to-top{color:var(--deep)}
.page-hero{background-color:var(--deep);background-image:var(--blueprint-lines);color:#fff;padding-block:25px 60px}
.page-hero>.wrap>p:not(.eyebrow){color:#dbe5ef}
.page-hero .eyebrow{color:#e4bb66}
.page-hero .breadcrumb{color:#b7c7d7}
.page-hero>img{mix-blend-mode:normal;opacity:.8;bottom:0;right:0;width:60%;height:100%;max-height:none;object-fit:cover;mask-image:linear-gradient(90deg,transparent,#000 45%)}
.filter-shell{background:#fffdf7;border-color:#dfd9c9;box-shadow:0 12px 30px #051e3010}
.filter-toggle{background:var(--deep);color:#f5cc72;border-color:var(--deep);box-shadow:none}
.catalog-note,.detail-note{background:#eeeae0}
.consult-band{background:var(--deep);background-image:var(--blueprint-lines)}
.detail-render img,.project-detail-hero img{border-radius:2px}
.plan-summary{background:#fffdf8;padding:25px;border:1px solid var(--line);border-top:3px solid var(--gold)}
.detail-code{color:var(--gold-dark)}
.related-services a{background:#fffdf8;border:1px solid var(--line)}
.related-services h3{padding:0 14px 16px;font-size:18px}
@media(min-width:1600px){#services:before{width:calc((100% - min(1580px,100% - var(--gutter)*2))/2 + 300px)}.header-inner{min-height:104px}.brand img{width:300px;height:85px}.portfolio-strip{grid-template-columns:270px 1fr}.plan-card-bottom{flex-wrap:nowrap}.site-header nav a{font-size:13px}.site-header nav a span{font-size:11px}}
@media(max-width:1180px){.header-inner{gap:18px}.brand img{width:230px}.site-header nav{gap:17px}.site-header nav a{font-size:11px}.site-header nav a span{font-size:9px}.header-cta{font-size:12px}#services:before{width:calc(var(--gutter) + 210px)}.project-feature{gap:18px}.portfolio-strip{grid-template-columns:190px 1fr;gap:25px}.portfolio-strip h2{font-size:23px}.portfolio-grid{gap:8px}.portfolio-grid span{font-size:10px}.plan-stats{grid-template-columns:1fr}.team-grid blockquote{padding:20px;font-size:17px}.plan-summary{padding:22px}.plan-card-bottom .button{width:100%}}
@media(max-width:950px){.header-inner{min-height:82px;gap:0}.brand img{width:250px;height:68px}.site-header nav a{font-size:13px;border-color:#c3d0dd33}.site-header nav a span{font-size:10px}#services:before{display:none}#services{background:var(--deep);background-image:var(--blueprint-lines);padding-block:30px}#services>.wrap>.section-heading{padding:0}.service-card{border:0}.projects{padding-top:28px}.projects>.section-heading small{font-size:11px}.portfolio-strip{grid-template-columns:1fr;gap:20px}.portfolio-strip h2 br{display:none}.portfolio-grid span{font-size:12px}.team-grid blockquote{border:0;padding:24px}.team-grid blockquote br{display:none}.team-grid blockquote small{margin-top:8px}.plan-card-bottom{flex-wrap:wrap}.plan-card-bottom .button{width:auto}.plan-summary .plan-stats{grid-template-columns:1fr}}
@media(max-width:640px){.header-inner{min-height:76px}.brand img{width:232px;height:62px}.site-header nav a{min-height:52px}.hero-actions{top:41.2%}.hero-actions .button{font-size:12px}.intro>img{height:160px}.intro .editorial{font-size:clamp(24px,7vw,34px)}#services{padding-block:30px}.service-copy{padding:12px 10px 34px;min-height:137px}.service-copy h3{font-size:16px}.service-copy p{font-size:12px}.project-feature{padding:10px;gap:18px}.project-copy{padding:0 7px 12px}.project-photo{height:auto;aspect-ratio:1.5;min-height:0}.project-copy .check-list{gap:12px 8px}.project-copy .check-list li{font-size:13px}.project-tabs{grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;gap:4px}.project-tabs button{font-size:10px;min-width:0;padding:10px 3px}.project-tabs button strong{font-size:8px}.project-tabs button:after{display:none}.art-banner picture,.art-banner img{width:100%;height:auto;max-width:100%;margin:0}.material-grid img{height:220px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portfolio-grid>a:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center}.portfolio-grid>a:last-child img{aspect-ratio:1.8}.portfolio-grid span{font-size:13px;padding:10px 12px}.portfolio-grid b{font-size:27px}.plans-preview{padding-block:30px}.plan-card-body{padding:22px}.plan-name{min-height:0;font-size:17px}.plan-stats{grid-template-columns:1fr;font-size:17px;gap:11px}.plan-stats li{gap:12px}.plan-stats .icon{width:23px;height:23px;flex-basis:23px}.plan-card-bottom{flex-wrap:nowrap;gap:10px;margin-top:22px}.plan-card-bottom strong{font-size:27px}.plan-card-bottom .button{width:auto;font-size:12px;padding:12px;gap:7px}.plan-photo img{aspect-ratio:4/3}.plan-code{font-size:25px}.compact .plan-stats{grid-template-columns:1fr 1fr;font-size:14px}.team-grid blockquote{padding:25px;font-size:20px}.video-strip{padding-block:30px}.page-hero{min-height:300px;padding-bottom:48px}.page-hero>img{opacity:.15}.plan-summary{padding:24px 20px}.plan-summary h1{font-size:27px}.plan-summary .plan-stats{grid-template-columns:1fr 1fr;font-size:14px}.detail-main .breadcrumb{line-height:1.8}.footer-top .brand img{width:240px;height:66px}.contact-grid form{padding:20px}}
@media(max-width:360px){.brand img{width:215px}.hero-actions .button{font-size:11px;padding-inline:8px}.plan-card-body{padding:18px}.plan-card-bottom{flex-wrap:wrap}.plan-card-bottom .button{width:100%}.plan-summary .plan-stats{grid-template-columns:1fr}.service-copy h3{font-size:14px}.service-copy{min-height:143px}.project-tabs button strong{font-size:7px}.project-tabs button{font-size:9px}}
