/* Shared drawing-board language across the complete site. */
body .elementor.elementor .adco-solutions{background:#edf6f8;background-image:linear-gradient(#022c5908 1px,transparent 1px),linear-gradient(90deg,#022c5908 1px,transparent 1px);background-size:32px 32px;padding:100px 7%;gap:48px}body .elementor.elementor .adco-solutions>.q-heading{text-align:left;border-bottom:1px solid #022c5933;padding-bottom:30px}body .elementor.elementor .adco-feature{border-radius:0;background:#fff;border:1px solid #022c5922;position:relative}body .elementor.elementor .adco-feature-copy:after{display:none}body .elementor.elementor .adco-feature-copy{padding:50px;gap:22px}body .elementor.elementor .adco-feature-image{overflow:hidden}body .elementor.elementor .adco-feature-image img{filter:saturate(.55);transition:transform 1s}.adco-feature:hover .adco-feature-image img{transform:scale(1.035)}body .elementor.elementor .lifecycle.lifecycle-drawings{display:block;border-top:0;padding-top:0}.lifecycle-detail{border-top:1px solid #022c5933}.lifecycle-detail:last-child{border-bottom:1px solid #022c5933}.lifecycle-detail summary{list-style:none;display:grid;grid-template-columns:65px 1fr 40px;align-items:center;padding:25px 0;cursor:pointer;font:900 clamp(20px,2.5vw,36px) var(--quartz-display);text-transform:uppercase;letter-spacing:-.02em}.lifecycle-detail summary::-webkit-details-marker{display:none}.life-number{font:11px var(--quartz-body);letter-spacing:.1em}.life-plus{font:300 32px var(--quartz-body);justify-self:end;color:#022c59}.lifecycle-detail[open] .life-plus{transform:rotate(45deg)}.life-detail-copy{padding:0 60px 30px 65px;display:grid;grid-template-columns:1fr 1fr;gap:15px 40px}.life-detail-copy h3{font:700 21px var(--quartz-body)}.life-detail-copy p{font:16px/1.6 var(--quartz-body);max-width:540px;color:#022c59b3}.life-detail-copy a{font:700 12px var(--quartz-body);grid-column:2;justify-self:start;border-bottom:1px solid #01c2f5;padding-bottom:8px}.lifecycle-detail summary:hover{color:#007e9f}.lifecycle-detail summary:focus-visible{outline:2px solid #022c59;outline-offset:5px}
.site-footer{background:#022c59;color:white;border-top:0;padding:75px 7% 30px;position:relative;overflow:hidden;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:48px 48px}.footer-top{position:relative;padding:10px 0 65px}.footer-top .eyebrow{color:#01c2f5}.footer-invite{display:block;font:900 clamp(36px,6vw,88px)/1.08 var(--quartz-display);letter-spacing:-.045em;margin-top:30px;padding-right:100px}.footer-invite span{color:#01c2f5;transition:transform .4s}.footer-invite:hover span{transform:translate(8px,-8px)}.footer-bottom{color:#c3d8e7;border-top:1px solid #ffffff30;padding-top:28px;font-family:var(--quartz-body);position:relative}.footer-bottom strong{color:#fff}.footer-nav{display:flex;flex-wrap:wrap;gap:24px;margin:0 0 30px;padding-top:22px;border-top:1px solid #ffffff25;font:700 11px var(--quartz-body);letter-spacing:.1em;text-transform:uppercase}.footer-nav a:hover{color:#01c2f5}.footer-sheet-number{position:absolute;right:0;top:0;font:10px var(--quartz-body);letter-spacing:.15em;color:#a9c8dd}.site-footer .demo-label{color:#aac4d7}
body:not(.home) .site-header{background:#fff}body .elementor.elementor .blueprint-intro{position:relative;overflow:hidden;min-height:490px;justify-content:center;background:#022c59;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:36px 36px;padding:85px 7%;isolation:isolate}body .elementor.elementor .blueprint-intro>.elementor-widget{position:relative;z-index:1;max-width:850px}body .elementor.elementor .blueprint-intro .q-copy{max-width:640px;font-size:18px}.page-blueprint{position:absolute;width:56%;height:100%;right:-12%;top:10%;color:#01c2f5;opacity:.2;z-index:0;pointer-events:none}.page-blueprint path{stroke-dasharray:1;stroke-dashoffset:0}body:not(.home) .elementor .q-section:not(.page-intro):not(.navy-section){border-bottom:1px solid #022c591b}body .elementor.elementor .service-row{padding:42px 0;border-color:#022c5933;transition:background .3s,padding .3s}body .elementor.elementor .service-row:hover{background:#edf6f8;padding-left:20px;padding-right:20px}body:not(.home) .project-image{border-radius:0}body:not(.home) .project-controls{border-top:1px solid #022c5933;border-bottom:1px solid #022c5933;padding:22px 0}body:not(.home) .project-page{background:#f2f7f8}body:not(.home) .project-caption h3{font-size:clamp(22px,2.6vw,36px)}body .elementor.elementor .navy-section{background:#022c59;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:40px 40px}.contact-layout{background:#edf6f8}.demo-form{background:white;padding:35px;border:1px solid #022c5925}.demo-form input,.demo-form textarea,.demo-form select{border-radius:0!important}.full-image{overflow:hidden}.fact-row{background:#edf6f8}.source-note{font-size:12px!important}
@media(prefers-reduced-motion:no-preference){.finish-reveal{transition:opacity .8s,translate .8s cubic-bezier(.2,.7,.2,1)}.finish-waiting{opacity:0;translate:0 30px}.finish-waiting:focus-within{opacity:1;translate:none}.page-blueprint path{animation:quartz-blueprint 2s ease both}@keyframes quartz-blueprint{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}}
@media(max-width:760px){body .elementor.elementor .adco-solutions{padding:60px 6%;gap:30px}body .elementor.elementor .adco-feature-copy{padding:30px 24px}.lifecycle-detail summary{grid-template-columns:35px 1fr 25px;font-size:19px;padding:22px 0}.life-detail-copy{padding:0 0 25px 35px;grid-template-columns:1fr;gap:12px}.life-detail-copy a{grid-column:1}.life-detail-copy h3{font-size:18px}.life-detail-copy p{font-size:15px}.site-footer{padding:55px 6% 25px}.footer-invite{font-size:36px;padding-right:35px}.footer-invite span{font-size:35px}.footer-sheet-number{display:none}.footer-nav{gap:18px;font-size:10px}.footer-top{padding-bottom:40px}body .elementor.elementor .blueprint-intro{padding:65px 6%;min-height:430px}.page-blueprint{width:100%;right:-35%;opacity:.12}body .elementor.elementor .blueprint-intro .q-copy{font-size:16px}.demo-form{padding:24px 18px}}
@media(prefers-reduced-motion:reduce){.finish-waiting{opacity:1;translate:none}.page-blueprint path{stroke-dashoffset:0}}
body .elementor.elementor .blueprint-intro>.elementor-widget{width:100%;max-width:min(850px,100%);min-width:0}body .elementor.elementor .blueprint-intro .q-copy{width:100%;max-width:min(640px,100%)}body .elementor.elementor .blueprint-intro .elementor-heading-title{overflow-wrap:anywhere}
@media(max-width:760px){body .elementor.elementor .blueprint-intro .q-title .elementor-heading-title{font-size:clamp(29px,7.7vw,44px)}}
/* The editor uses explicit content panels, while the front end retains its animation. */
.elementor-editor-active .quartz-legacy-content{display:none!important}
body:not(.elementor-editor-active) .elementor-widget-quartz_homepage_content{margin:0!important;padding:0!important;min-height:0!important}
.quartz-editor-preview p{white-space:normal;font-size:15px!important;line-height:1.6!important}
/* Approved company content remains native Elementor text and headings. */
body .elementor.elementor .content-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:50px 7%}
body .elementor.elementor .content-value{padding:28px 0;border-top:1px solid #022c5933;gap:16px;min-width:0}
body .elementor.elementor .content-value .elementor-heading-title{font-size:25px;line-height:1.2}
body .elementor.elementor .content-value .q-copy{font-size:16px;line-height:1.65}
body .elementor.elementor .sectors-section>.content-values{padding:15px 0 0}
body .elementor.elementor .professional-note{padding-top:22px;padding-bottom:30px;background:#edf6f8}
.service-row ul{padding-left:20px;margin-top:16px;line-height:1.8}
@media(max-width:900px){body .elementor.elementor .content-values{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body .elementor.elementor .content-values{grid-template-columns:1fr;padding:35px 6%;gap:12px}body .elementor.elementor .content-value{padding:22px 0}}
