#hero{position:relative;display:flex;align-items:flex-end;min-height:calc(100svh - var(--header-h));background:var(--c-primary);overflow:hidden}
#hero .hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:80% 20%;max-width:none}
#hero .hero__scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(11,11,11,0.93) 0%,rgba(11,11,11,0.86) 44%,rgba(11,11,11,0.56) 76%,rgba(11,11,11,0.32) 100%)}
#hero .hero__inner{position:relative;z-index:2;width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);padding-top:clamp(4rem,14vh,9rem);padding-bottom:clamp(2rem,7vh,4.5rem)}
#hero .hero__stack{max-width:640px}
#hero .hero__beat{margin-bottom:var(--sp-3)}
#hero .hero__rule{max-width:260px;margin-bottom:var(--sp-5)}
#hero h1{font-size:clamp(2.1rem,8.6vw,2.9rem);line-height:0.98;letter-spacing:-0.005em;margin-bottom:var(--sp-4)}
#hero .hero__sub{font-size:1rem;line-height:1.55;max-width:46ch;color:rgba(237,234,227,0.88);margin-bottom:var(--sp-6)}
#hero .hero__cta{display:flex;flex-direction:column;align-items:stretch;gap:14px}
#hero .hero__cta .btn{width:100%}
@media (min-width:600px){#hero .hero__cta{flex-direction:row;align-items:center;flex-wrap:wrap}#hero .hero__cta .btn{width:auto}}
@media (min-width:768px){#hero .hero__scrim{background:linear-gradient(to top right,rgba(11,11,11,0.93) 0%,rgba(11,11,11,0.86) 42%,rgba(11,11,11,0.5) 74%,rgba(11,11,11,0.3) 100%)}#hero h1{font-size:clamp(2.6rem,6.2vw,5.1rem)}#hero .hero__sub{font-size:1.125rem}#hero .hero__stack{max-width:52ch}}
@media (prefers-reduced-motion:no-preference){#hero .hero__stack > *{transition-duration:var(--mo-dur);transition-timing-function:var(--mo-ease)}}

#protect-assess-advise{background:var(--c-bg);padding-block:clamp(3rem,2.2rem + 3vw,5.5rem)}
#protect-assess-advise .svc__inner{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
#protect-assess-advise .svc__head{margin-bottom:var(--sp-6)}
#protect-assess-advise .svc__grid{display:grid;gap:var(--sp-6)}
#protect-assess-advise .svc__intro h2{font-size:var(--fs-h2);line-height:0.98;margin-bottom:var(--sp-4)}
#protect-assess-advise .svc__intro p{font-size:1rem;color:rgba(237,234,227,0.84);max-width:48ch}
#protect-assess-advise .svc__list{border-top:1px solid var(--c-border)}
#protect-assess-advise .svc__row{border-bottom:1px solid var(--c-border);padding-block:20px}
#protect-assess-advise .svc__row .advance-index{margin-bottom:var(--sp-2)}
#protect-assess-advise .svc__row .card-heading{margin-bottom:var(--sp-2)}
#protect-assess-advise .svc__line{font-size:0.96875rem;line-height:1.6;color:rgba(237,234,227,0.82);max-width:58ch;margin:0}
@media (min-width:1100px){#protect-assess-advise .svc__grid{grid-template-columns:5fr 7fr;gap:clamp(2rem,4vw,4.5rem)}#protect-assess-advise .svc__intro{position:sticky;top:calc(var(--header-h) + 2rem);align-self:start}#protect-assess-advise .svc__row{padding-block:26px}}

#who-we-protect{position:relative;display:flex;align-items:center;min-height:44svh;background:var(--c-primary);overflow:hidden}
#who-we-protect .wwp__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;max-width:none}
#who-we-protect .wwp__scrim{position:absolute;inset:0;background:rgba(11,11,11,0.86)}
#who-we-protect .wwp__inner{position:relative;z-index:2;width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);padding-block:clamp(2.5rem,7vh,4rem)}
#who-we-protect h2{font-size:var(--fs-h2);line-height:0.98;margin-bottom:var(--sp-4)}
#who-we-protect .wwp__line{font-size:1rem;line-height:1.6;color:rgba(237,234,227,0.86);max-width:52ch;margin:0}
@media (min-width:768px){#who-we-protect{min-height:58svh}#who-we-protect .wwp__scrim{background:linear-gradient(to right,rgba(11,11,11,0.9) 0%,rgba(11,11,11,0.86) 48%,rgba(11,11,11,0.55) 74%,rgba(11,11,11,0.3) 100%)}#who-we-protect .wwp__copy{max-width:52%}}

#how-a-detail-comes-together{position:relative;background:var(--c-bg);padding-block:clamp(3rem,2.2rem + 3vw,5.5rem);overflow:hidden}
#how-a-detail-comes-together .hw__inner{display:grid;gap:var(--sp-7);width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
#how-a-detail-comes-together .hw__media{margin:0;width:100vw;margin-inline:calc(50% - 50vw)}
#how-a-detail-comes-together .hw__media img{width:100%;aspect-ratio:3 / 4;object-fit:cover;object-position:50% 35%}
#how-a-detail-comes-together .hw__head{margin-bottom:var(--sp-6)}
#how-a-detail-comes-together h2{font-size:var(--fs-h2);line-height:0.98;margin:0}
#how-a-detail-comes-together .hw__steps{list-style:none;margin:0;padding:0 0 0 var(--sp-5);border-left:2px solid var(--c-accent)}
#how-a-detail-comes-together .hw__step{margin:0;max-width:none;padding-block:20px;border-bottom:1px solid var(--c-border)}
#how-a-detail-comes-together .hw__step:first-child{padding-top:0}
#how-a-detail-comes-together .hw__step:last-child{border-bottom:0;padding-bottom:0}
#how-a-detail-comes-together .advance-index{margin-bottom:var(--sp-2)}
#how-a-detail-comes-together .card-heading{margin-bottom:var(--sp-2)}
#how-a-detail-comes-together .hw__line{font-size:0.96875rem;line-height:1.6;color:rgba(237,234,227,0.82);max-width:52ch;margin:0}
@media (min-width:1100px){#how-a-detail-comes-together .hw__inner{grid-template-columns:5fr 7fr;gap:clamp(2.5rem,4vw,4.5rem);align-items:start}
#how-a-detail-comes-together .hw__media{width:auto;margin-inline:0;margin-left:calc(-1 * var(--gutter) - max(0px,(100vw - var(--maxw)) / 2))}
#how-a-detail-comes-together .hw__media img{height:min(78svh,760px);aspect-ratio:auto}
#how-a-detail-comes-together .hw__steps{padding-left:var(--sp-6)}
#how-a-detail-comes-together .hw__step{padding-block:24px}}

#about-rj-security-consulting{background:var(--c-bg);padding-block:clamp(3rem,2.2rem + 3vw,5.5rem)}
#about-rj-security-consulting .ab__inner{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
#about-rj-security-consulting .ab__head{margin-bottom:var(--sp-6)}
#about-rj-security-consulting .ab__grid{display:grid;gap:var(--sp-7)}
#about-rj-security-consulting h2{font-size:var(--fs-h2);line-height:0.98;margin-bottom:var(--sp-5)}
#about-rj-security-consulting .ab__copy p{font-size:1rem;line-height:1.62;color:rgba(237,234,227,0.85);max-width:56ch}
#about-rj-security-consulting .ab__map .post-plate{padding:20px}
#about-rj-security-consulting .map{width:100%;height:auto;margin-top:var(--sp-4);display:block}
#about-rj-security-consulting .map text{font-family:var(--ff-display);font-weight:600;font-size:10px;letter-spacing:0.06em;fill:var(--c-text)}
#about-rj-security-consulting .map__ring-label{fill:rgba(237,234,227,0.62)}
#about-rj-security-consulting .ab__caption{margin:var(--sp-3) 0 0;font-family:var(--ff-display);font-weight:600;font-size:var(--fs-micro);letter-spacing:0.22em;text-transform:uppercase;color:rgba(237,234,227,0.6);max-width:none}
@media (prefers-reduced-motion:no-preference){#about-rj-security-consulting .map__rings{opacity:0;transform:scale(0.94);transform-origin:260px 210px;transition:opacity var(--mo-dur) var(--mo-ease),transform var(--mo-dur) var(--mo-ease)}#about-rj-security-consulting .ab__map.is-visible .map__rings{opacity:1;transform:scale(1)}}
@media (min-width:1100px){#about-rj-security-consulting .ab__grid{grid-template-columns:7fr 5fr;gap:clamp(2.5rem,4vw,4.5rem);align-items:start}#about-rj-security-consulting .ab__map .post-plate{padding:32px}}

#questions-clients-ask{background:var(--c-bg);padding-block:clamp(3rem,2.2rem + 3vw,5.5rem)}
#questions-clients-ask .faq__inner{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
#questions-clients-ask .faq__head{margin-bottom:var(--sp-6)}
#questions-clients-ask h2{font-size:var(--fs-h2);line-height:0.98;margin:0}
#questions-clients-ask .faq__grid{display:grid;gap:16px}
#questions-clients-ask .faq__plate{padding:20px}
#questions-clients-ask .faq__plate h3{margin:0 0 var(--sp-3)}
#questions-clients-ask .faq__plate p{font-size:0.96875rem;line-height:1.6;color:rgba(237,234,227,0.84);margin:0}
@media (min-width:900px){#questions-clients-ask .faq__grid{grid-template-columns:1fr 1fr;gap:20px;align-items:start}
#questions-clients-ask .faq__plate:nth-child(1){grid-column:1;grid-row:1}
#questions-clients-ask .faq__plate:nth-child(2){grid-column:1;grid-row:2}
#questions-clients-ask .faq__plate:nth-child(3){grid-column:1;grid-row:3}
#questions-clients-ask .faq__plate:nth-child(4){grid-column:2;grid-row:1}
#questions-clients-ask .faq__plate:nth-child(5){grid-column:2;grid-row:2 / 4;align-self:start}
#questions-clients-ask .faq__plate{padding:28px}}

#request-a-quote{background:var(--c-dark-bg);padding-block:clamp(3.25rem,2.4rem + 3.4vw,6rem)}
#request-a-quote .qt__inner{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
#request-a-quote .qt__grid{display:grid;gap:var(--sp-7)}
#request-a-quote h2{font-size:var(--fs-h2);line-height:0.98;margin-bottom:var(--sp-4)}
#request-a-quote .qt__line{font-size:1rem;color:rgba(237,234,227,0.84);margin-bottom:var(--sp-5)}
#request-a-quote .qt__phone{width:100%;font-family:var(--ff-display)}
#request-a-quote .qt__plate{padding:20px;background:var(--c-surface)}
#request-a-quote .qt__field{margin-bottom:var(--sp-4)}
#request-a-quote .qt__field input,#request-a-quote .qt__field textarea{background:var(--c-bg);color:var(--c-text)}
#request-a-quote .qt__field input::placeholder,#request-a-quote .qt__field textarea::placeholder{color:rgba(237,234,227,0.55)}
#request-a-quote .qt__row{display:grid;gap:var(--sp-4)}
#request-a-quote .qt__submit{width:100%;margin-top:var(--sp-2)}
@media (min-width:600px){#request-a-quote .qt__row{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){#request-a-quote .qt__grid{grid-template-columns:5fr 7fr;gap:clamp(2.5rem,4vw,4.5rem);align-items:start}
#request-a-quote .qt__plate{padding:32px}
#request-a-quote .qt__phone{display:inline-flex;width:auto;min-height:0;padding:0;border:0;background:transparent;color:var(--c-text);text-transform:none;letter-spacing:0.02em;font-weight:500;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.05}
#request-a-quote .qt__phone:hover,#request-a-quote .qt__phone:focus-visible{background:transparent;color:var(--c-secondary);transform:none}
#request-a-quote .qt__submit{width:auto;min-width:260px}}