/* Blueprint paper theme */
:root{--orange:#ffa34d;--green:#b8df50;--blue:#8edbff;--ink:#f0f7ff;--muted:#b6cee5;--paper:#103863;--rule:rgba(182,220,255,.24)}
body{background-color:var(--paper);background-image:linear-gradient(rgba(180,217,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(180,217,255,.035) 1px,transparent 1px);background-size:28px 28px}
.header{border-color:var(--rule)}
.brand img{mix-blend-mode:normal;background:#fff;border-radius:5px;padding:3px}
.nav-contact{border-color:#7399bd;background:rgba(255,255,255,.035)}
nav a:hover,.text-link:hover{color:var(--orange)}
.green{color:var(--green)}.blue{color:var(--blue)}
.primary{background:#f58220;color:#142a40;font-weight:bold}.primary:hover{background:#ffa34d}
.text-link{border-color:#7096bb}.hero-bottom{color:#acc8e4}
.hero-art{background:#174a7b;border:1px solid #729dc2;border-radius:4px}
.grid{background-image:linear-gradient(rgba(195,229,255,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(195,229,255,.22) 1px,transparent 1px);opacity:.55}
.hero-art svg path{fill:rgba(171,216,255,.035);stroke:#d4edff;stroke-width:1.8;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.hero-art svg path[stroke-dasharray]{fill:none;stroke:#91badb;stroke-width:1}
.hero-art svg path[fill="url(#lines)"]{fill:none;stroke:none}
.hero-art svg path[fill="#159ed9"]{fill:rgba(142,219,255,.18)}
.art-label,.art-caption{color:#d2e8fa}.color-chips b{outline:1px solid rgba(255,255,255,.35)}
.service-ribbon{background:#174775;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);color:#e2effb}
.service-ribbon span{color:var(--green)}
.service-grid{border-color:var(--rule)}
.service-grid article{background:rgba(10,42,78,.65);border-color:var(--rule)}
.service-grid article:hover{background:#194978}
.number{color:#94b5d3}.tag{color:#a6c9e7}
.service-grid .service-special{background:#214e6a}
.service-special .service-symbol{color:var(--green)}.service-special a{border-color:#89ac6d;color:#d8efaa}
.approach{background:rgba(7,29,55,.72);border-block:1px solid var(--rule)}
.approach .eyebrow{color:var(--green)}.approach p{color:var(--muted)}.approach li{border-color:var(--rule)}
.contact-pending{background:#1b4a71;color:#d5e6f6;border:1px solid var(--rule)}
footer{border-color:var(--rule)}
@media(max-width:620px){.hero-art{border-radius:4px}}
.contact-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px;margin-top:28px}
.contact-actions .contact-pending{margin-top:0;overflow-wrap:anywhere;max-width:100%}
.service-area{margin-top:38px}.service-area h3{font-size:14px;font-weight:normal;color:var(--muted);margin-bottom:18px}
.service-area ul{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
.service-area li{font-size:13px;padding:9px 17px;border:1px solid var(--rule);border-radius:4px;background:rgba(255,255,255,.025)}
@media(max-width:620px){.contact-actions{flex-direction:column}.contact-actions .contact-pending{font-size:11px;padding-inline:14px}.service-area li{font-size:12px;padding:8px 14px}}
.portfolio{padding-block:0 75px}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.portfolio figure{margin:0;border:1px solid var(--rule);background:rgba(10,42,78,.65);min-width:0}.portfolio figure:nth-child(2){grid-column:2;grid-row:1/3}.portfolio figure a{display:block;background:#fff;padding:16px}.portfolio img{display:block;width:100%;height:auto}.portfolio figcaption{padding:23px}.portfolio h3{font-size:18px;margin:10px 0}.portfolio figcaption p,.sample-note{color:var(--muted);font-size:12px;line-height:1.9}.sample-note{margin-top:22px;max-width:800px}@media(max-width:620px){.portfolio{padding-bottom:45px}.portfolio-grid{grid-template-columns:1fr}.portfolio figure:nth-child(2){grid-column:auto;grid-row:auto}.portfolio figure a{padding:8px}.portfolio figcaption{padding:20px}}

.portfolio-grid{align-items:start}.portfolio figure:nth-child(3) a{padding:10px}
.portfolio-heading{margin-bottom:30px;padding-left:22px;border-left:4px solid var(--orange)}
.portfolio-heading h2{font-size:clamp(26px,3.1vw,42px);line-height:1.5;margin:14px 0 18px}
.portfolio-instruction{display:inline-flex;align-items:center;gap:10px;margin:0;padding:11px 16px;background:#214e6a;border:1px solid #7caccd;border-radius:4px;color:#f0f7ff;font-size:15px;line-height:1.7}
.portfolio-instruction span{font-size:23px;color:var(--green)}
@media(max-width:620px){.portfolio-heading{padding-left:16px}.portfolio-instruction{font-size:13px;padding:9px 12px}}
.boq-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.boq-grid figure:first-child{grid-column:1/-1}.boq-grid figure a{padding:10px}.boq-portfolio{padding-top:25px}@media(max-width:620px){.boq-grid{grid-template-columns:1fr}.boq-grid figure:first-child{grid-column:auto}}
.service-grid{align-items:start;background:rgba(10,42,78,.65)}
.service-grid article{height:100%}
.service-samples{margin-top:24px;padding-top:18px;border-top:1px solid var(--rule)}
.service-grid .samples-label{font-size:12px;font-weight:bold;color:var(--ink);margin:0 0 12px;line-height:1.7}
.samples-label span{display:block;font-size:10px;font-weight:normal;color:var(--muted)}
.service-sample-list{display:grid;gap:12px}
.service-sample{display:block;overflow:hidden;border:1px solid var(--rule);border-radius:3px;background:#fff;transition:border-color .15s}
.service-sample:hover{border-color:var(--orange)}
.service-sample img{display:block;width:100%;height:auto;max-height:200px;object-fit:contain;background:#fff;padding:6px}
.service-sample>span{display:block;padding:8px 10px;background:#1b4a71;font-size:11px;line-height:1.6;color:#edf6ff}
@media(prefers-reduced-motion:reduce){.service-sample{transition:none}}
.render-image-grid,.render-extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.render-image-grid>.service-sample:first-child{grid-column:1/-1}
.render-samples .service-sample img{padding:0;aspect-ratio:16/10;object-fit:cover;max-height:none}
.render-samples .service-sample>span{font-size:10px;padding:7px 8px}
.render-more{margin-top:14px}.render-more summary{cursor:pointer;color:var(--green);font-size:12px;padding:10px 0;line-height:1.7}
.render-more summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.render-extra-grid{margin-top:10px}
@media(max-width:380px){.render-image-grid,.render-extra-grid{grid-template-columns:1fr}}
.header{height:auto;min-height:130px;padding-block:18px;gap:24px}
.brand .brand-services{font-size:10px;line-height:1.85;letter-spacing:0;color:var(--muted);font-weight:normal}
@media(max-width:900px){.header{flex-wrap:wrap;gap:14px}.header nav{margin-left:auto}}
@media(max-width:620px){.header{padding:15px 18px;gap:12px}.brand{align-items:flex-start}.brand img{margin-top:4px}.brand .brand-services{font-size:8px;line-height:1.9}.header nav{width:100%;justify-content:flex-end}}
.brand .brand-services{font-size:14px;line-height:1.9;margin-top:10px}
.header{flex-wrap:wrap;min-height:155px}
.header nav{margin-left:auto}
@media(max-width:900px){.brand .brand-services{font-size:13px}}
@media(max-width:620px){.brand{min-width:0;flex:1}.brand>span{min-width:0}.brand .brand-services{font-size:12px;line-height:1.95;overflow-wrap:anywhere}.header{min-height:0}.brand img{width:64px;height:64px;flex-shrink:0}}
.brand{align-items:center;gap:22px}
.brand img{width:130px;height:130px;flex-shrink:0;margin-top:0}
.brand .brand-services{margin-top:0}
.header{min-height:170px}
@media(max-width:900px){.brand img{width:112px;height:112px}.brand{gap:18px}}
@media(max-width:620px){.brand{align-items:center;gap:14px}.brand img{width:96px;height:96px;margin-top:0}.header{min-height:0}}
.hero-services-art{aspect-ratio:1000/1050;background:transparent;border:0;overflow:visible}
.hero-services-art>img{display:block;width:100%;height:auto;border-radius:6px}
@media(max-width:900px){.hero-services-art{aspect-ratio:1000/1050}}
@media(max-width:620px){.hero-services-art{aspect-ratio:1000/1050}}
