/* ============================================================================
   capsite.css v1.0.0 — 2026-08-06 consolidation pass
   Single static stylesheet replacing the CSS payloads of 21 JS-injected
   cap* registered scripts + the static style blocks that lived in the site
   footer freeform code. Order below preserves the former injection order, so
   the cascade resolves identically. Contested rules (ribbon label/logo, hero
   cue, marquee gap) are deduped to their FINAL 2026-08-06 values, per
   capRibbon0806's header note. History: project docs + Notion change log.
   ========================================================================= */

/* ---- 1. cap_mobile_fixes_vw2 v1.1.1 ---- */
@media screen and (max-width:47.9375rem){
.cap-hiring{font-size:clamp(.75rem,3vw,.9rem) !important}
.cap-foot-citylabel,.cap-post-tag,.cap-flt-group-label{font-size:clamp(.75rem,3.2vw,.95rem) !important}
.cap-foot-social-link{min-width:max(2.75rem,11vw);min-height:max(2.75rem,11vw);display:inline-flex;align-items:center;justify-content:center}
.cap-foot-link,.cap-nl-contact-link{display:inline-flex;align-items:center;min-height:max(2.5rem,6vh)}
.cap-hero-btn,.cap-nl-btn,.cap-dv-hero-btn{min-height:max(2.75rem,6.5vh)}
.cap-mnav-link,.cap-mnav-sublink{display:flex;align-items:center;min-height:max(2.75rem,7vh)}
.cap-dv-hero,.cap-dv-hero-bg{min-height:0 !important}
.cap-dv-hero-img{min-height:0 !important;height:auto !important;object-fit:contain !important}
.cap-dv-hero-content{min-height:0 !important;height:auto !important;justify-content:flex-start !important;align-items:flex-start !important;padding:6vw 5vw 8vw !important}
.cap-dv-intro-h-wrapper{display:flex !important;flex-wrap:wrap;gap:2vw}
.cap-dv-hero-bg{position:relative}
.cap-dv-hero-bg:after{content:"";position:absolute;top:0;left:0;right:0;height:12vh;background:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0));pointer-events:none;z-index:2}
.cap-dv-feat-row{grid-template-columns:1fr !important;display:block !important}
.cap-dv-feat-list,.cap-dv-feat-item,.cap-dv-feat-title{width:100% !important;max-width:100% !important;overflow-wrap:normal;word-break:normal}
.cap-marquee-mask{width:100% !important;max-width:100% !important;flex:1 1 auto !important}
.cap-marquee .cap-logo-img,.cap-dv-marquee .cap-logo-img{width:auto !important;height:6vh !important;min-height:2.25rem;max-height:4rem;object-fit:contain !important}
.cap-ab-break-img,.cap-car-teamimg,.cap-dv-benefit-img,.cap-ar-img,.cap-ar-img4{height:auto !important;min-height:0 !important;aspect-ratio:3/2;object-fit:cover}
.cap-nl-input,.cap-dv-hero-input,input[type=email],input[type=text],input[type=tel],textarea,select{font-size:max(1rem,4vw) !important}
}
@media screen and (min-width:48rem) and (max-width:61.9375rem){.cap-dv-hero{overflow-x:clip}}

/* ---- 2. capCoreA0804 v1.0.1 (= capQaFixes20260730 + capMarqueeMobile0731) ---- */
.cap-nav.is-solid .cap-mnav-toggle{color:#131313 !important}
@media (max-width:47.9375rem){
.cap-dv-hero-form form{display:flex;flex-direction:column;align-items:stretch;row-gap:8px}
.cap-dv-hero-input{width:100%}
.cap-dv-hero-btn{display:flex;justify-content:center;width:100%}
.cap-nl-contact{text-align:center;text-align-last:center}
}
@media (min-width:48rem) and (max-width:61.9375rem){.cap-dv-hero-form{width:25rem}}
@media screen and (max-width:47.9375rem){
.cap-clients{gap:4rem !important}
.cap-marquee .cap-logo-img{width:clamp(7rem,32vw,9rem) !important;height:auto !important;aspect-ratio:3/1 !important;object-fit:cover !important;max-height:none !important;min-height:0 !important}
}

/* ---- 3. capPatchCss0730b v1.0.9 (hero scroll-cue rule removed — superseded
        by capCueOff0806, cue is gone on mobile) ---- */
.cap-purpose-heading .cap-grad-word{color:#131313 !important}
.cap-post-excerpt{display:-webkit-box !important;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.cap-car-acc{justify-content:space-between}
.cap-car-acc-list{flex:1 1 auto;justify-content:space-between}
.cap-faq-list{justify-content:space-between}
:root{--capArrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 11'%3E%3Cpath d='M2 9L9 2M9 2H3.5M9 2V7.5' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
@media screen and (max-width:47.9375rem){
.cap-foot-cols{display:grid!important;grid-template-columns:1fr 1fr!important;gap:2.25rem 1.25rem!important}
.cap-foot-col{width:auto!important;min-width:0!important}
.cap-foot-col.cap-foot-contact{grid-column:1/-1!important}
.cap-foot-divcols{display:flex!important;flex-direction:column!important;gap:.25rem!important}
.cap-foot-contactlist{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1.25rem!important}
.cap-foot-contactlist>.cap-foot-city:last-child{grid-column:1/-1!important}
.cap-foot-cta .cap-nl-form{width:100%!important;max-width:none!important}
.cap-foot-cta .cap-nl-form-inner{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.375rem!important;width:100%!important;max-width:none!important;background:#f5f4f1!important;border:1px solid #e3e1dc!important;border-radius:3rem!important;padding:.25rem .25rem .25rem 1.125rem!important}
.cap-foot-cta .cap-nl-input{flex:1 1 auto!important;width:auto!important;min-width:0!important;height:auto!important;min-height:2.75rem!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;font-size:1rem!important;text-align:left!important}
.cap-foot-cta .cap-nl-btn{flex:0 0 auto!important;width:auto!important;padding:.75rem .75rem!important;border-radius:2.5rem!important;min-height:2.75rem!important;height:auto!important;align-items:center!important;justify-content:center!important}
.cap-foot-cta .cap-nl-btntxt{font-size:.75rem!important;white-space:nowrap!important}
.cap-purpose-heading{line-height:1.2!important;letter-spacing:-.022em!important}
.cap-faq-sub{font-size:1rem!important;line-height:1.5!important}
.cap-wwd-p{font-size:1.03125rem!important;line-height:1.5!important}
.cap-break .cap-ab-break-statement{font-size:2rem!important;line-height:1.14!important;letter-spacing:-.022em!important}
.cap-div-head,.cap-faq-head{align-items:flex-start!important;text-align:left!important}
.cap-div-title,.cap-faq-title,.cap-faq-sub{text-align:left!important}
.cap-div-imgwrap{aspect-ratio:181/220!important;height:auto!important}
.cap-div-learn{display:inline-flex!important;align-items:center!important;gap:.5rem!important;width:fit-content!important;margin-top:.625rem!important;padding:.75rem 1.375rem!important;border-radius:99px!important;background:#131313!important;color:#fff!important;font-size:.84375rem!important;font-weight:500!important;line-height:1!important;letter-spacing:normal!important;text-decoration:none!important;min-height:2.75rem!important;box-sizing:border-box!important}
.cap-div-learn::after{content:''!important;flex:0 0 .6875rem;width:.6875rem;height:.6875rem;font-size:0!important;background-color:#fff;-webkit-mask:var(--capArrow) center/contain no-repeat;mask:var(--capArrow) center/contain no-repeat}
.cap-hero{position:relative!important}
.cap-dv-hero-title{font-size:2.75rem!important;line-height:1.02!important;letter-spacing:-.025em!important}
.cap-dv-hero-tag{font-size:1.125rem!important;line-height:1.45!important}
.cap-dv-feat-title{color:#131313!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:1rem!important}
.cap-dv-feat-title::after,.cap-ab-acc-title::after{content:''!important;flex:0 0 .875rem;width:.875rem;height:.875rem;font-size:0!important;background-image:linear-gradient(#131313,#131313),linear-gradient(#131313,#131313);background-size:100% .09375rem,.09375rem 100%;background-position:center,center;background-repeat:no-repeat;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.cap-dv-feat-item.active .cap-dv-feat-title::after,.cap-ab-acc-item.active .cap-ab-acc-title::after{transform:rotate(45deg)}
.cap-dv-feat-desc{font-size:.9375rem!important;line-height:1.62!important}
.cap-dv-feat-item.active .cap-dv-feat-body{max-height:none!important}
.cap-dv-feat-row>.cap-dv-feat-imgs{display:none!important}
.cap-dv-feat-body .capBenImg{display:block!important;opacity:1!important;position:static!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:181/105!important;object-fit:cover!important;border-radius:1rem!important;margin:0 0 1rem!important;transform:none!important}
.cap-dv-offer-grid{counter-reset:capoffer!important;row-gap:0!important;position:relative!important}
.cap-dv-offer-card{display:grid!important;grid-template-columns:2.75rem 1fr!important;column-gap:1.375rem!important;row-gap:.625rem!important;align-items:start!important;position:relative!important;padding:1.5rem 0!important;z-index:1!important}
.cap-dv-offer-card:has(.cap-dv-offer-title:empty){display:none!important}
.cap-dv-offer-card::before{counter-increment:capoffer;content:counter(capoffer);grid-column:1;grid-row:1/span 2;width:2.75rem;height:2.75rem;box-sizing:border-box;border:.25rem solid #fff;border-radius:50%;background:#131313;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:600;position:relative;z-index:2}
.cap-dv-offer-card::after{display:none!important}
.capTline{position:absolute;left:1.3125rem;top:1.5rem;bottom:1.5rem;width:.125rem;background:#ececec;overflow:hidden;z-index:0}
.capTfill{display:block;width:100%;height:0%;background:#131313;transition:height .2s linear}
.cap-dv-offer-icon{display:none!important}
.cap-dv-offer-title{grid-column:2!important;grid-row:1!important;margin:0!important;font-size:1.25rem!important;line-height:1.22!important;letter-spacing:-.015em!important}
.cap-dv-offer-copy{grid-column:2!important;grid-row:2!important;margin:0!important;font-size:.9375rem!important;line-height:1.6!important}
.cap-dv-offer-divider{display:none!important}
.cap-dv-test-inner{width:100%!important;max-width:none!important}
.cap-dv-test .cap-car-quote-text{font-size:1.3125rem!important;line-height:1.45!important;font-weight:500!important;letter-spacing:-.015em!important;max-width:none!important}
.cap-dv-test-avatar{width:4rem!important;height:4rem!important;flex:0 0 4rem!important}
.cap-ab-stat-num{font-size:1.0625rem!important;font-weight:600!important;line-height:1.35!important}
.cap-ab-stat-num>span{display:block!important;margin-bottom:.25rem!important;font-size:2.875rem!important;font-weight:600!important;line-height:1!important;letter-spacing:-.03em!important}
.cap-ab-stat-desc{font-size:.90625rem!important;line-height:1.55!important}
.cap-ab-founder-imgwrap{order:-1!important}
.cap-ab-quote{font-size:1.15625rem!important;line-height:1.4!important}
.cap-ab-break .cap-ab-break-statement{text-align:left!important;font-size:1.75rem!important;line-height:1.25!important;letter-spacing:-.02em!important}
.cap-ab-break .cap-ab-break-frame{aspect-ratio:181/210!important;height:auto!important;min-height:0!important}
.cap-ab-break .cap-ab-break-img{width:100%!important;height:100%!important;object-fit:cover!important;aspect-ratio:auto!important}
.cap-ab-acc-title{color:#131313!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:1rem!important}
.cap-ab-purpose-row{flex-direction:column!important;align-items:center!important}
.cap-ab-stage{display:flex!important;flex:0 0 auto!important;zoom:.62!important}
.cap-car-hero{align-items:flex-start!important;text-align:left!important}
.cap-car-title{font-size:2.75rem!important;line-height:1.05!important;letter-spacing:-.025em!important;text-align:left!important}
.cap-car-sub{font-size:1.0625rem!important;line-height:1.6!important;text-align:left!important}
.cap-car-values-head{align-items:flex-start!important;text-align:left!important}
.cap-car-h2{font-size:2rem!important;line-height:1.12!important;text-align:left!important}
.cap-car-imgframe{min-height:0!important;height:auto!important}
.cap-car-teamimg{aspect-ratio:181/170!important}
.cap-car-quote .cap-car-quote-text{font-size:1.1875rem!important;line-height:1.5!important}
}

/* ---- 4. capDvHeroOverlay0801 v1.0.3 (must stay after section 1) ---- */
@media screen and (max-width:47.9375rem){
.cap-dv-hero{display:grid!important;height:auto!important;min-height:100svh!important;overflow-x:clip}
.cap-dv-hero-bg{position:relative!important;inset:auto!important;grid-column-start:1;grid-row-start:1;width:100%!important;max-width:100%!important;height:auto!important;min-height:100svh!important;overflow:hidden;transform:none!important}
.cap-dv-hero-bg:after{display:none!important}
.cap-dv-hero-img{position:static!important;display:block;width:100%!important;max-width:100%!important;height:100%!important;min-height:100svh!important;object-fit:cover!important}
.cap-dv-hero-content{position:sticky!important;top:0!important;grid-column-start:1;grid-row-start:1;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;align-items:center!important;text-align:center!important;row-gap:1.5rem;width:100%!important;max-width:100%!important;height:100svh!important;min-height:0!important;background:transparent!important;padding:1.5rem 1.5rem 3.5rem!important}
.cap-dv-hero-txt{align-items:center!important;text-align:center!important;width:100%!important}
.cap-dv-hero-form{width:100%!important;max-width:100%!important;padding:0!important}
.cap-dv-hero-form form{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.375rem!important;width:100%!important;max-width:100%!important;background:#fff!important;border-radius:2.5rem!important;padding:.3125rem .3125rem .3125rem 1.125rem!important;box-shadow:0 .375rem 1.75rem rgba(0,0,0,.18)!important}
.cap-dv-hero-input.w-input{flex:1 1 auto!important;width:auto!important;min-width:0!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;font-size:1rem!important;text-align:left!important}
.cap-dv-hero-btn{flex:0 0 auto!important;width:auto!important;padding:.75rem .875rem!important;border-radius:2rem!important;min-height:2.75rem!important;height:auto!important;align-items:center!important;justify-content:center!important}
.cap-dv-hero-btntxt{font-size:.8125rem!important;white-space:nowrap!important}
.cap-dv-hero-title{text-shadow:0 .25rem 2rem rgba(0,0,0,.45),0 .0625rem .1875rem rgba(0,0,0,.3)!important}
.cap-dv-hero-tag{text-shadow:0 .125rem 1.25rem rgba(0,0,0,.5)!important}
}

/* ---- 5. capSmooth0804 v1.1.1 ---- */
@media screen and (max-width:47.9375rem){
.cap-dv-hero-img{display:none!important}
.cap-dv-hero-img-mob{display:block!important;position:static!important;width:100%!important;height:100svh!important;min-height:100svh!important;object-fit:cover!important;object-position:50% 50%!important}
.cap-ar-hero{height:clamp(15rem,78vw,22rem)!important}
.cap-ar-hero-bg{position:absolute!important;inset:0!important;height:100%!important}
.cap-ar-hero-img{height:100%!important;width:100%!important;object-fit:cover!important;display:block!important}
.cap-ab-acc-body{display:grid!important;grid-template-rows:0fr!important;height:auto!important;max-height:none!important;overflow:hidden!important;opacity:1!important;margin-top:0!important;transition:grid-template-rows .5s cubic-bezier(.22,1,.36,1)!important}
.cap-ab-acc-item.active .cap-ab-acc-body{grid-template-rows:1fr!important}
.capAbWrap{min-height:0!important;overflow:hidden!important}
.cap-ab-acc-body .cap-ab-stage{--capStageW:clamp(12rem,69vw,17rem);zoom:.52!important;zoom:tan(atan2(var(--capStageW),520px))!important;overflow:visible!important;position:relative!important}
.cap-dv-feat-body{display:grid!important;grid-template-rows:0fr!important;height:auto!important;max-height:none!important;overflow:hidden!important;transition:grid-template-rows .55s cubic-bezier(.22,1,.36,1)!important}
.cap-dv-feat-row .cap-dv-feat-item.active .cap-dv-feat-body{grid-template-rows:1fr!important}
.capBenWrap{min-height:0!important;overflow:hidden!important}
.capBenWrap>*{opacity:0;transform:translateY(.5rem);transition:opacity .38s ease,transform .48s cubic-bezier(.22,1,.36,1)}
.cap-dv-feat-item.active .capBenWrap>*{opacity:1;transform:none}
.cap-dv-feat-item.active .capBenWrap>:nth-child(1){transition-delay:.10s}
.cap-dv-feat-item.active .capBenWrap>:nth-child(2){transition-delay:.17s}
.cap-dv-feat-item.active .capBenWrap>:nth-child(3){transition-delay:.24s}
.capBenWrap>.capBenImg{transform:translateY(.5rem) scale(1.02)!important;transition:opacity .44s ease,transform .58s cubic-bezier(.22,1,.36,1)!important}
.cap-dv-feat-item.active .capBenWrap>.capBenImg{transform:translateY(0) scale(1)!important}
.cap-dv-feat-title{cursor:pointer;-webkit-tap-highlight-color:transparent}
.cap-ins-viewport{overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch;scroll-behavior:auto!important;scrollbar-width:none!important;overscroll-behavior-x:contain!important}
.cap-ins-viewport::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.cap-ins-track{transform:none!important;transition:none!important}
.cap-ins-track::after{content:""!important;flex:0 0 1.25rem!important}
.cap-foot-socialdot{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important}
.cap-foot-socialdot>svg{width:2.25rem!important;height:2.25rem!important;flex:0 0 auto!important;display:block!important}
}
@media screen and (max-width:47.9375rem) and (prefers-reduced-motion:reduce){
.cap-ab-acc-body,.cap-dv-feat-body,.capBenWrap>*,.capBenWrap>.capBenImg{transition:none!important}
.capBenWrap>*{opacity:1!important;transform:none!important}
.capBenWrap>.capBenImg{transform:none!important}
}

/* ---- 6. capQaFixes0801 v1.0.7 (ribbon logo/label values superseded by §9) ---- */
@media screen and (max-width:47.9375rem){
.cap-mnav{padding-top:6rem!important;padding-bottom:2.5rem!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}
.cap-mnav-link{padding-top:.5rem!important;padding-bottom:.5rem!important;line-height:1.2!important}
.cap-mnav-sublink{padding-top:.25rem!important;padding-bottom:.25rem!important;line-height:1.3!important}
.cap-mnav-link,.cap-mnav-sublink{min-height:2.75rem!important}
.cap-mnav-group{padding-top:.5rem!important;padding-bottom:.5rem!important}
.cap-ab-attr{flex-direction:column!important;align-items:flex-start!important;row-gap:.25rem!important}
.cap-dv-intro-p{text-align:center!important;font-size:1.25rem!important;line-height:1.6!important}
.cap-dv-test{padding-top:3rem!important;padding-bottom:3rem!important}
.cap-dv-test-name{font-size:.9375rem!important}
.cap-dv-test-role{font-size:.8125rem!important;line-height:1.4!important}
.cap-dv-hero-content{align-items:flex-start!important;text-align:left!important}
.cap-dv-hero-title,.cap-dv-hero-tag{text-align:left!important;width:100%!important}
.cap-hero-content{align-items:flex-start!important;text-align:left!important}
.cap-hero-title,.cap-hero-sub{text-align:left!important;width:100%!important}
.cap-ab-acc-body .cap-ab-stage{display:block!important;flex:none!important;margin:0 auto .75rem!important}
}

/* ---- 7. Page-level 0806 patches (now global; selectors are page-unique) ---- */
/* capMobFix0806g — division hero svh heights */
@media screen and (max-width:47.9375rem){
body header.cap-dv-hero{min-height:100vh !important;min-height:100svh !important}
body .cap-dv-hero .cap-dv-hero-img-mob{min-height:100vh !important;min-height:100svh !important}
body .cap-dv-hero .cap-dv-hero-bg{min-height:100vh !important;min-height:100svh !important}
body .cap-dv-hero .cap-dv-hero-content{height:100vh !important;height:100svh !important;min-height:100vh !important;min-height:100svh !important}
}
/* capMobFix0806j — mnav/footer trims + final marquee gap (label size in §9) */
@media screen and (max-width:47.9375rem){
.cap-mnav .cap-mnav-link,.cap-mnav .cap-mnav-group,.cap-mnav .cap-mnav-dd{border-top:0 !important;border-bottom:0 !important}
.cap-mnav .cap-mnav-link{padding-top:0.3125rem !important;padding-bottom:0.3125rem !important}
.cap-foot-divcols .cap-foot-link,.cap-foot-collinks .cap-foot-link{min-height:0 !important}
.cap-nl-contact .cap-nl-contact-link{min-height:0 !important;font-size:inherit !important}
body .cap-marquee{column-gap:1.52vw !important}
}
/* capMobFix0806n — division break image radius */
@media screen and (max-width:47.9375rem){
body .cap-dv-benefit .cap-dv-benefit-img-mob{border-radius:1.5rem !important}
}
/* capMobFix0806r — careers quote */
@media screen and (max-width:47.9375rem){
body .cap-car-quote .cap-car-quote-text{font-size:1.3125rem !important;line-height:1.45 !important;font-weight:500 !important;text-align:left !important;max-width:none !important}
body .cap-car-quote .cap-car-quote-attr{text-align:left !important;font-size:0.8125rem !important}
}
/* capCueOff0806 — homepage mobile scroll cue stays OFF (creator rule deleted in §3) */

/* ---- 8. Former footer-script CSS: capNavPerf0803, capTypoNavC0803, capMobFix0805i ---- */
html{scroll-behavior:auto!important}
.cap-nav{transition:transform .32s cubic-bezier(.4,0,.2,1),background-color .25s ease,box-shadow .25s ease!important}
.cap-nav.is-open{transform:none!important}
@media (prefers-reduced-motion:reduce){.cap-nav{transition:none!important}.cap-nav.is-hidden{transform:none!important}}
.cap-nav.cap-nav-onhero:not(.is-solid):not(.cap-nav-light):not(.is-open):not(:hover) .cap-nav-link,.cap-nav.cap-nav-onhero:not(.is-solid):not(.cap-nav-light):not(.is-open):not(:hover) .cap-nav-link-dd{text-shadow:0 1px 3px rgba(0,0,0,.28),0 0 14px rgba(0,0,0,.20)}
.cap-nav.cap-nav-onhero:not(.is-solid):not(.cap-nav-light):not(.is-open):not(:hover) .cap-logo-svg,.cap-nav.cap-nav-onhero:not(.is-solid):not(.cap-nav-light):not(.is-open):not(:hover) .cap-mnav-toggle{filter:drop-shadow(0 1px 3px rgba(0,0,0,.28)) drop-shadow(0 0 14px rgba(0,0,0,.20))}
.cap-nav.is-open .cap-nav-link,.cap-nav.is-open .cap-nav-link-dd{text-shadow:none!important}
.cap-nav.is-open .cap-logo-svg,.cap-nav.is-open .cap-mnav-toggle{filter:none!important}
.cap-nav:has(.cap-navitem:hover) .cap-nav-link,.cap-nav:has(.cap-navitem:hover) .cap-nav-link-dd{text-shadow:none}
.cap-nav:has(.cap-navitem:hover) .cap-logo-svg{filter:none}
.cap-nav .cap-nav-link,.cap-nav .cap-nav-link-dd{transition:text-shadow .25s ease}
.cap-nav .cap-logo-svg{transition:filter .25s ease,color .25s ease}
@media (min-width:48rem){.cap-dv-hero-title,.cap-dv-hero-tag{text-shadow:0 1px 3px rgba(0,0,0,.28),0 0 14px rgba(0,0,0,.20)!important}}
@media (prefers-reduced-motion:reduce){.cap-nav .cap-nav-link,.cap-nav .cap-nav-link-dd,.cap-nav .cap-logo-svg{transition:none}}
@media screen and (max-width:47.9375rem){
.cap-dv-hero-tag{max-width:none!important;text-wrap:balance}
.cap-dv-clients{padding-left:1.25rem!important;padding-right:1.25rem!important}
.cap-foot-cta{padding-left:1.25rem!important;padding-right:1.25rem!important}
.cap-foot-cta .flex-block{max-width:none!important;width:100%!important}
.cap-mnav{display:flex!important;flex-direction:column!important}
.cap-mnav>.cap-mnav-link{order:1}
.cap-mnav>.cap-mnav-group{order:2}
.cap-mnav>.cap-nav-cta-btn{order:3}
.cap-dv-into-header-wrapper{width:100%!important;align-items:center!important;text-align:center!important}
.cap-dv-into-header-wrapper .cap-global-eyebrow{width:100%!important;text-align:center!important}
.cap-dv-intro-h-wrapper{width:100%!important;text-align:center!important}
.cap-dv-intro-h{text-align:center!important;text-wrap:balance}
.cap-ab-acc-body .cap-ab-stage>.cap-ab-globe{display:block!important;margin-left:auto!important;margin-right:auto!important}
.cap-nav{padding-top:max(1.5rem,env(safe-area-inset-top))!important}
.cap-nav-wrapper{padding-left:2rem!important;padding-right:2rem!important;gap:1rem!important}
.cap-logo{flex:0 1 auto!important;min-width:0!important}
.cap-logo-svg{max-width:8.875rem!important}
.cap-mnav-toggle{flex:0 0 auto!important;width:2.75rem!important;min-width:2.75rem!important;height:2.75rem!important;margin-left:auto!important;overflow:visible!important}
.cap-mnav-group{padding-top:0!important;padding-bottom:0!important}
.cap-mnav-grouptitle{font-size:clamp(1.625rem,1.44rem + .76vw,2.125rem)!important;font-weight:600!important;text-transform:none!important;letter-spacing:var(--track-tight)!important;color:var(--cap-ink)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;min-height:2.75rem!important;padding:.5rem 0!important;line-height:1.2!important;cursor:pointer;-webkit-tap-highlight-color:transparent}
.cap-mnav-grouptitle::after{content:"";flex:0 0 auto;width:.44em;height:.44em;margin-right:.22em;border-right:.075em solid currentColor;border-bottom:.075em solid currentColor;transform:translateY(-.08em) rotate(45deg);transition:transform .28s cubic-bezier(.4,0,.2,1)}
.cap-mnav-grouptitle.is-open::after{transform:translateY(.06em) rotate(225deg)}
.capDivWrap{display:grid!important;grid-template-rows:0fr;transition:grid-template-rows .34s cubic-bezier(.4,0,.2,1);width:100%}
.capDivWrap>.capDivInner{min-height:0;overflow:hidden;display:flex;flex-direction:column}
.capDivWrap:not(.is-open){pointer-events:none}
.capDivWrap.is-open{grid-template-rows:1fr}
.cap-dv-feat-title{max-height:2.4em!important;overflow:hidden!important;align-items:flex-start!important}
.cap-dv-feat-title::after{align-self:center!important}
.cap-dv-feat-body .capBenImg,.cap-dv-feat-body .cap-dv-feat-img,.cap-dv-feat-imgs .cap-dv-feat-img,.cap-dv-feat-row .cap-dv-feat-img{aspect-ratio:181/220!important;height:auto!important;min-height:0!important}
.cap-dv-hero-form .form{padding:.1875rem .1875rem .1875rem .875rem!important;height:auto!important;min-height:0!important}
.cap-dv-hero-input{font-size:1rem!important;flex:1 1 auto!important;min-width:0!important;text-overflow:ellipsis}
.cap-dv-hero-btn{min-height:2.25rem!important;height:2.25rem!important;padding:.375rem .75rem!important;font-size:.8125rem!important}
}

/* ---- 9. Ribbon FINAL values (capRibbon0806 + capMobFix0806j/m, 2026-08-06).
        Single source of truth; superseded copies removed from §2/§6/§8. ---- */
@media screen and (max-width:47.9375rem){
.cap-clients .cap-marquee-mask .cap-marquee .cap-logo-img,.cap-dv-clients .cap-marquee-mask .cap-marquee .cap-logo-img{width:clamp(7rem,32vw,9rem) !important;height:auto !important;aspect-ratio:3/1 !important;object-fit:cover !important;max-height:none !important;min-height:0 !important}
.cap-clients .cap-clients-label,.cap-dv-clients .cap-clients-label{font-size:1rem !important;letter-spacing:.04em !important;line-height:1.45 !important}
}

/* ---- 10. Former site-footer static style blocks (order preserved: these were
         the last stylesheets in the document) ---- */
.cap-nl-input.w-input::placeholder,.cap-dv-hero-input.w-input::placeholder,.cap-flt-input.w-input::placeholder,.cap-ar-input.w-input::placeholder,.cap-ar-textarea.w-input::placeholder{color:#5d5d5d}
.cap-ar-input.w-input,.cap-ar-textarea.w-input{background:#ffffff}
@media screen and (max-width:47.9375rem){
.cap-nav .cap-logo-svg>svg,.cap-mnav .cap-logo-svg>svg,.cap-foot-logo>svg{overflow:visible !important}
}
.cap-mnav:not(.is-open){display:none !important;background-color:transparent !important}
/* MOBILE PASS 2026-08-05 — must stay after §5 (it re-hides the desktop division
   hero image; see the regression note in the project log) */
@media screen and (max-width:47.9375rem){
.cap-ab-break .cap-ab-break-frame,.cap-break .cap-break-frame{aspect-ratio:2/3 !important;height:auto !important;min-height:0 !important;overflow:hidden !important}
.cap-ab-break-img,.cap-break-img{width:100% !important;height:100% !important;aspect-ratio:auto !important;object-fit:cover !important;object-position:50% 50% !important}
.cap-dv-hero-title{max-width:88% !important;text-wrap:balance}
.cap-dv-hero .cap-dv-hero-txt{align-items:flex-start !important;text-align:left !important}
.cap-dv-hero .cap-dv-hero-form{margin-left:0 !important;margin-right:auto !important}
.cap-dv-hero .cap-dv-hero-input{align-self:stretch !important;height:auto !important}
.cap-ab-acc-body .cap-ab-stage{margin-left:auto !important;margin-right:auto !important}
.cap-ab-acc-body .cap-ab-truck.on{transform:translate(-50%,-50%) !important}
.cap-ab-acc-body .cap-ab-wall,.cap-ab-acc-body .cap-ab-truck,.cap-ab-acc-body .cap-ab-globe{left:50% !important}
.cap-ab-acc-body .cap-ab-globe{margin-left:auto !important;margin-right:auto !important}
header.cap-hero,header.cap-dv-hero{min-height:100vh !important;min-height:100lvh !important;background-color:#131313 !important}
.cap-dv-hero .cap-dv-hero-img{display:none !important}
.cap-dv-hero .cap-dv-hero-img-mob{display:block !important;width:100% !important;max-width:100% !important;height:100% !important;min-height:100vh !important;min-height:100lvh !important;margin:0 !important;object-fit:cover !important}
.cap-hero .cap-hero-img{width:100% !important;max-width:100% !important;height:100% !important;min-height:100vh !important;min-height:100lvh !important;margin:0 !important;object-fit:cover !important}
.cap-dv-hero .cap-dv-hero-bg{width:100% !important;max-width:100% !important;margin:0 !important;min-height:100vh !important;min-height:100lvh !important}
.cap-dv-hero .cap-dv-hero-content{height:100vh !important;height:100lvh !important;min-height:100vh !important;min-height:100lvh !important}
}
/* Insights index load-more batch UI (used by capsite.js; mobile only) */
@media screen and (max-width:47.9375rem){
.capBatchHidden{display:none !important}
.capBatchBar{display:flex;justify-content:center;width:100%;padding:0 1.25rem 2.5rem;box-sizing:border-box}
.capBatchBtn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;min-height:2.75rem;padding:0.75rem 1.5rem;border:0;border-radius:99px;background:#131313;color:#fff;font-family:inherit;font-size:0.9375rem;font-weight:500;line-height:1;letter-spacing:normal;cursor:pointer;-webkit-tap-highlight-color:transparent}
.capBatchCount{opacity:0.55}
}
@media screen and (min-width:48rem){.capBatchBar{display:none !important}}
