@font-face{font-family:Montserrat;src:url('assets/montserrat-400.woff2')}@font-face{font-family:Montserrat;src:url('assets/montserrat-700.woff2');font-weight:700}
:root{--ink:#000;--paper:#fff;--red:#ff3030;--line:#d4d4d4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.5}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,a,input,textarea,select{outline-offset:5px}button{cursor:pointer}header{position:sticky;top:0;z-index:20;background:#ffffffed;backdrop-filter:blur(12px);border-bottom:1px solid #ededed}.header-inner{max-width:1280px;min-height:84px;margin:auto;padding:12px 5%;display:flex;align-items:center;justify-content:space-between;gap:40px}.logo{display:block;width:163px;height:auto}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav a[aria-current=page]{font-weight:700}.button,button.primary{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:46px;padding:12px 23px;border:1px solid var(--ink);border-radius:7px;background:transparent;color:inherit;font-size:14px;text-decoration:none;transition:.2s}.button:hover,button.primary:hover{background:#000;color:white;text-decoration:none}.button.inverse{border-color:#fff}.button.inverse:hover{background:#fff;color:#000}.button.solid,button.solid{background:#000;color:#fff}.button.solid:hover{background:#333}.arrow{font-size:20px}.mobile-toggle{display:none;background:none;border:0;font-size:25px}.container{width:min(980px,88%);margin:auto}.hero{position:relative;height:620px;overflow:hidden}.hero video,.hero>img{position:absolute;width:100%;height:100%;object-fit:cover}.hero video{object-position:center 35%}.hero-title{position:absolute;bottom:22px;left:0;right:0;text-align:center;font-size:40px;line-height:1.4;font-weight:400;letter-spacing:.08em;margin:0}.intro{padding:85px 0 55px}.eyebrow{font-size:14px;letter-spacing:.16em;font-weight:400;margin:0 0 25px;text-transform:uppercase}.lead{font-size:24px;line-height:1.6;font-weight:400;margin:0 0 24px;max-width:940px}.lead strong{font-weight:700}.muted{color:#555}.body{max-width:690px}.intro .actions{margin-top:32px;display:flex;gap:16px;flex-wrap:wrap}.support{font-size:16px;margin:0;line-height:1.8}.service-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:440px;gap:40px;padding:30px 0 65px}.service-row.reverse .service-copy{order:2}.service-copy h2{font-size:40px;font-weight:400;letter-spacing:.08em;line-height:1.5;margin:0 0 22px}.service-copy p{line-height:1.8;max-width:385px;margin-bottom:26px}.service-graphic{width:100%;height:355px;object-fit:cover;object-position:50% 50%}.who{padding:85px 0;border-top:1px solid #ddd}.who .two-column{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.who .photo{width:100%;height:340px;object-fit:cover}.section{padding:75px 0}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:70px}.section-title{font-size:40px;line-height:1.35;font-weight:400;letter-spacing:.04em;margin:0 0 24px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #bbb;border-bottom:1px solid #bbb}.feature{padding:55px 45px 55px 0}.feature+ .feature{border-left:1px solid #bbb;padding-left:45px}.feature h2{font-size:24px;font-weight:400;letter-spacing:.08em;margin:0 0 25px}.feature p{min-height:78px;line-height:1.8}.roles{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.role{padding:10px 17px;border:1px solid #aaa;border-radius:5px;font-size:14px}.dark{background:#000;color:#fff;padding:80px 0}.dark .two-column{align-items:center}.dark p{max-width:460px;line-height:1.8}.dark .section-title{font-size:44px}.footer{padding:65px 0 28px;border-top:1px solid #bbb}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:50px;font-size:14px}.footer h3{font-size:16px;letter-spacing:.08em;margin:0 0 24px;font-weight:400}.footer p{margin:0 0 17px;line-height:1.8}.footer-links{display:flex;flex-direction:column;gap:14px}.footer-bottom{display:flex;justify-content:space-between;margin-top:60px;font-size:12px}.subscribe{display:flex;border-bottom:1px solid #000}.subscribe input{width:100%;border:0;padding:10px 0;background:transparent}.subscribe button{border:0;background:none;padding:8px 0 8px 15px;font-size:13px}.form-status{font-size:12px;min-height:20px}.demo-badge{position:fixed;bottom:15px;right:18px;z-index:30;background:#fff;border:1px solid #aaa;border-radius:20px;padding:5px 12px;font-size:11px;box-shadow:0 2px 12px #0001}.page-top{padding:80px 0 48px}.steps{counter-reset:steps}.step{display:grid;grid-template-columns:65px 1fr 1.4fr;gap:25px;padding:32px 0;border-top:1px solid #ccc}.step:before{counter-increment:steps;content:'0' counter(steps);font-size:14px}.step h3{margin:0;font-size:20px;font-weight:400}.step p{margin:0;line-height:1.8}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:35px}.plan{padding:35px;border:1px solid #000;border-radius:8px;display:flex;flex-direction:column}.plan h2{font-size:27px;font-weight:400;margin:6px 0 12px}.plan .term{font-size:14px;color:#555;margin-bottom:20px}.plan ul{padding-left:20px;line-height:1.9;font-size:15px;flex:1}.plan .price{font-size:22px;margin:20px 0 5px}.plan small{display:block;font-size:12px;margin-bottom:25px}.plan .button{width:100%}.note{font-size:13px;line-height:1.8;color:#555}.plain-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0 0;padding:0;list-style:none}.plain-list li{border-bottom:1px solid #ddd;padding:15px 0}.faq details{border-top:1px solid #bbb;padding:21px 0}.faq details:last-child{border-bottom:1px solid #bbb}.faq summary{cursor:pointer;font-size:18px}.faq p{max-width:780px;line-height:1.8}.form{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form label{display:flex;flex-direction:column;font-size:14px;gap:8px}.form input,.form textarea,.form select{width:100%;padding:13px 10px;border:1px solid #999;border-radius:0;background:#fff;color:#000}.full{grid-column:1/-1}.form textarea{resize:vertical;min-height:110px}.form button{justify-self:start}.form label.check{flex-direction:row;align-items:flex-start;font-size:12px;line-height:1.6}.check input{width:16px;margin-top:4px}.company-names{font-size:21px;line-height:2.3;word-spacing:10px;max-width:850px}.page-image{width:100%;max-height:380px;object-fit:cover}.split-band{background:#f4f4f4;padding:55px 0}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:60px}.success{padding:28px;border:1px solid #000;background:#f4f4f4}.dialog{width:min(700px,94vw);border:1px solid #000;border-radius:9px;padding:40px;max-height:90vh}.dialog::backdrop{background:#0008}.dialog h2{font-size:28px;font-weight:400;margin:0 30px 15px 0}.close{position:absolute;right:20px;top:15px;border:0;background:none;font-size:26px}.hidden{display:none!important}.anchor{scroll-margin-top:110px}body:has(dialog[open]){overflow:hidden}
@media(max-width:750px){.header-inner{padding:12px 6%;min-height:72px}.logo{width:145px}.mobile-toggle{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:22px 6%;border-bottom:1px solid #aaa;flex-direction:column;align-items:flex-start;gap:20px}nav.open{display:flex}.hero{height:460px}.hero-title{font-size:26px;bottom:25px}.container{width:86%}.intro,.page-top{padding-top:55px}.lead{font-size:21px}.service-row,.who .two-column,.two-column,.plan-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.service-row{padding:20px 0 45px;min-height:0}.service-row.reverse .service-copy{order:0}.service-copy h2,.section-title{font-size:30px}.service-graphic{height:240px;object-fit:contain}.who,.section{padding:50px 0}.who .photo{height:250px}.feature-grid{grid-template-columns:1fr}.feature,.feature+.feature{padding:32px 0;border-left:0}.feature+.feature{border-top:1px solid #bbb}.feature p{min-height:0}.dark{padding:50px 0}.dark .section-title{font-size:34px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{margin-top:40px;gap:20px;padding-bottom:20px}.step{grid-template-columns:35px 1fr;gap:15px}.step p{grid-column:2}.plain-list{grid-template-columns:1fr}.form{gap:17px}.form label{grid-column:1/-1}.dialog{padding:30px 22px}.plan{padding:27px}.demo-badge{font-size:10px;bottom:8px;right:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero video{display:none}.hero{background:url('assets/hero.jpg') center/cover}}

.experience-logos{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;align-items:center;padding:35px 0}.experience-logos img{width:100%;max-width:160px;height:85px;object-fit:contain;justify-self:center}.skip{position:fixed;top:-80px;left:15px;z-index:100;background:#fff;padding:10px;border:1px solid #000}.skip:focus{top:10px}@media(max-width:750px){.experience-logos{grid-template-columns:repeat(3,1fr);gap:20px}.experience-logos img{height:60px}}
.three-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.three-plans .plan{padding:26px 23px}.three-plans .plan h2{font-size:25px}.three-plans .plan .eyebrow{min-height:42px;font-size:11px}.three-plans .plan .price{font-size:18px}.three-plans .plan .button{gap:10px}.sourcing-photo{object-fit:contain}@media(max-width:900px){.three-plans{grid-template-columns:1fr}.three-plans .plan .eyebrow{min-height:0}}

/* Keep the welcome heading in its own row below the animation. */
.hero{height:auto;overflow:visible;display:block;background:#fff}
.hero-media{position:relative;width:100%;height:clamp(230px,34vw,480px);overflow:hidden}
.hero .hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.hero .hero-title{position:static;inset:auto;padding:22px 6% 44px;margin:0;line-height:1.45;font-size:clamp(25px,3.1vw,40px);letter-spacing:.08em;text-align:center}
@media(max-width:750px){.hero-media{height:clamp(200px,55vw,340px)}.hero .hero-title{padding:18px 6% 30px}.intro{padding-top:48px}}
@media(prefers-reduced-motion:reduce){.hero{background:#fff}.hero-media{background:url('assets/hero.jpg') center/contain no-repeat}}

.pricing-grid .rate{font-size:clamp(38px,4vw,52px);font-weight:700;line-height:1.2;margin:15px 0 22px;letter-spacing:-.04em}.rate span{font-size:16px;font-weight:400;letter-spacing:0;margin-left:5px}.pricing-grid .plan{padding:36px}.pricing-grid .monthly-plan{border-top:5px solid var(--red);padding-top:32px}.pricing-grid .plan h2{font-size:26px}.pricing-grid .plan .eyebrow{font-size:11px}.pricing-grid .plan>p:not(.eyebrow):not(.rate){min-height:48px}.pricing-grid .plan ul{margin-bottom:28px}@media(max-width:750px){.pricing-grid .plan{padding:27px}.pricing-grid .monthly-plan{padding-top:23px}}

/* Enlarge the animated Hi, retaining the original welcome type size. */
.hero .hero-media video{transform:scale(1.5);transform-origin:center}
@media(prefers-reduced-motion:reduce){.hero-media{background-size:auto 150%}}

/* Align the visible artwork edges with the welcome lettering. The source
   video contains wide white margins, which are excluded from this sizing. */
.hero{--welcome-width:500px}
.hero .hero-title{display:flex;flex-direction:column;align-items:center}
.hero-title span{display:block;width:max-content;max-width:100%}
.hero .hero-media{width:min(var(--welcome-width),88vw);height:auto;aspect-ratio:556/472;margin:24px auto 0;overflow:hidden}
.hero .hero-media video{width:230.2158%;height:auto;max-width:none;inset:auto;left:-65.4676%;top:-25.4237%;object-fit:initial;transform:none}
@media(max-width:750px){.hero .hero-media{height:auto;margin-top:22px}}
@media(prefers-reduced-motion:reduce){.hero .hero-media{background-size:230.2158% auto;background-position:center}}

.jobs-section{padding-bottom:75px}.job-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;margin:30px 0}.job-filters label{font-size:13px;display:flex;flex-direction:column;gap:8px}.job-filters input,.job-filters select{padding:13px 12px;width:100%;min-width:0;background:white;color:black;border:1px solid #999}.job-card{border-top:1px solid #bbb;padding:32px 0;display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center}.job-card[hidden]{display:none}.job-card h3{font-weight:400;font-size:25px;line-height:1.4;margin:0 0 15px}.job-card .eyebrow{margin-bottom:12px;font-size:11px}.job-card p{max-width:710px}.job-meta{font-size:15px;line-height:1.7}.job-heading h1{font-size:clamp(29px,3.5vw,42px);font-weight:400;line-height:1.35;max-width:900px}.back-link{display:inline-block;margin-bottom:35px;font-size:14px}.job-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:60px;padding-bottom:80px;align-items:start}.job-description h2{font-size:24px;font-weight:400;margin-top:36px}.job-description ul{padding-left:20px}.job-description li{margin-bottom:14px;line-height:1.8}.job-description p{line-height:1.8}.job-aside{border:1px solid #ccc;padding:24px;font-size:14px}.job-aside h2{font-size:19px;font-weight:400;margin-top:0}.job-aside dt{font-weight:700;margin-top:18px}.job-aside dd{margin:5px 0 0}.job-notice{border-left:3px solid var(--red);padding:15px 20px;background:#f6f6f6}.apply-section{border-top:1px solid #bbb;margin-top:40px;padding-top:10px}@media(max-width:750px){.job-filters,.job-card,.job-detail-layout{grid-template-columns:1fr}.job-card{gap:15px}.job-card>.button{justify-self:start}.job-detail-layout{gap:30px}.job-aside{order:-1}.job-card h3{font-size:22px}}

/* A tighter, consistent rhythm between sections, with readable space retained. */
.page-top{padding:54px 0 24px}
.section{padding:44px 0}
.page-top+section.section{padding-top:24px}
.intro{padding:54px 0 32px}
.eyebrow{margin-bottom:18px}
.lead{margin-bottom:20px}
.service-row{min-height:0;padding:20px 0 38px;gap:36px}
.service-copy h2{margin-bottom:18px}
.service-copy p{margin-bottom:22px}
.who{padding:54px 0}
.two-column,.who .two-column{gap:44px}
.feature,.feature+.feature{padding-top:36px;padding-bottom:36px}
.feature h2{margin-bottom:18px}
.split-band{padding:38px 0}
.dark{padding:52px 0}
.footer{padding-top:44px}
.footer-bottom{margin-top:38px}
.plan-grid{margin-top:26px}
.roles{margin-top:22px}
.step{padding:24px 0}
.jobs-section{padding-bottom:48px}
.job-detail-layout{padding-bottom:48px}
@media(max-width:750px){
 .page-top{padding:38px 0 18px}
 .section{padding:32px 0}
 .page-top+section.section{padding-top:20px}
 .intro{padding:36px 0 24px}
 .eyebrow{margin-bottom:16px}
 .service-row{padding:16px 0 28px;gap:20px}
 .who{padding:36px 0}
 .two-column,.who .two-column{gap:28px}
 .feature,.feature+.feature{padding:26px 0}
 .split-band{padding:30px 0}
 .dark{padding:36px 0}
 .footer{padding-top:34px}
 .footer-bottom{margin-top:28px}
 .step{padding:22px 0}
 .jobs-section,.job-detail-layout{padding-bottom:36px}
}

.footer-privacy{display:flex;gap:20px;flex-wrap:wrap}.footer-privacy button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:pointer}.footer-privacy button:hover{text-decoration:underline}.cookie-banner{position:fixed;left:20px;right:20px;bottom:20px;max-width:1140px;margin:auto;z-index:60;background:#fff;border:1px solid #bbb;box-shadow:0 8px 35px #0002;border-radius:8px;padding:22px 26px;display:flex;gap:28px;align-items:center}.cookie-banner h2{font-size:17px;margin:0 0 8px}.cookie-banner p{font-size:13px;margin:0;line-height:1.7;max-width:620px}.cookie-banner a,.privacy-copy a,.cookie-dialog a{text-decoration:underline}.cookie-actions{display:flex;gap:10px;flex-shrink:0}.cookie-actions .button{font-size:12px;padding:10px 14px;gap:0}.cookie-dialog{width:min(600px,92vw);max-height:88vh;overflow:auto;border:1px solid #aaa;border-radius:8px;padding:34px}.cookie-dialog::backdrop{background:#0008}.cookie-dialog h2{font-size:26px;font-weight:400;margin:0 30px 18px 0}.cookie-dialog p{font-size:14px;line-height:1.7}.cookie-category{border-top:1px solid #ddd;padding:17px 0;font-size:14px}.cookie-category>span{display:block;color:#555;font-size:12px;margin-top:5px}.cookie-category p{margin-bottom:0;font-size:13px}.cookie-close{position:absolute;right:20px;top:14px;font-size:26px;background:none;border:0}.privacy-copy{max-width:850px}.privacy-copy h2{font-size:23px;font-weight:400;margin-top:30px}.privacy-copy p{line-height:1.8}.privacy-copy .actions{display:flex;gap:12px;flex-wrap:wrap}@media(max-width:900px){.cookie-banner{flex-direction:column;align-items:stretch;gap:16px}.cookie-actions{flex-wrap:wrap}}@media(max-width:750px){.cookie-banner{left:10px;right:10px;bottom:10px;padding:18px}.cookie-actions .button{flex:1}.cookie-dialog{padding:26px 22px}}

.careers-specialisms{padding-top:16px;padding-bottom:38px}.careers-specialisms .roles{margin-top:18px}@media(max-width:750px){.careers-specialisms{padding-top:12px;padding-bottom:30px}}

/* Keep persistent notices out of the reading and form areas. */
header{background:#fff;backdrop-filter:none}
.cookie-banner{position:static;inset:auto;width:100%;max-width:none;margin:0;border:0;border-bottom:1px solid #ccc;border-radius:0;box-shadow:none;padding:18px max(6%,calc((100vw - 980px)/2));gap:24px;z-index:auto}
.cookie-banner>div:first-child{flex:1;min-width:0}
.cookie-banner p{max-width:none}
.form button.primary.solid,.button.solid,button.button.solid{background:#000;color:#fff;border-color:#000;opacity:1;text-shadow:none;line-height:1.45;white-space:normal;height:auto;min-height:48px}
.form button.primary.solid:hover,.button.solid:hover,button.button.solid:hover{background:#292929;color:#fff}
.form button.primary.solid:focus-visible,.button.solid:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.form button.primary.solid{padding:14px 23px}
@media(max-width:900px){.cookie-banner{gap:12px}}
@media(max-width:750px){.cookie-banner{padding:16px 7%}.form button.primary.solid{justify-self:stretch;width:100%}}

/* Clear, unclipped calls to action on the black page sections. */
.dark .button.inverse{background:#fff;color:#000;border:1px solid #fff;min-height:50px;height:auto;padding:14px 24px;line-height:1.5;white-space:normal;overflow:visible;vertical-align:middle;box-shadow:none;text-shadow:none}
.dark .button.inverse:hover{background:#ededed;color:#000;border-color:#ededed}
.dark .button .arrow{display:block;line-height:1.2;flex-shrink:0}
.dark .two-column>div{min-width:0;overflow:visible}

/* Keep outlined calls to action legible on pale sections as well. */
.split-band .button{background:#fff;color:#000;border:1px solid #000;min-height:50px;height:auto;line-height:1.5;padding:14px 24px;white-space:normal;overflow:visible;opacity:1;text-shadow:none;vertical-align:middle}
.split-band .button:hover{background:#000;color:#fff}
.split-band .button .arrow{display:block;line-height:1.2;flex-shrink:0}
.split-band .two-column>div{min-width:0;overflow:visible}

/* Supplied photography: natural proportions, paired with the existing copy. */
.image-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:center}
.editorial-image{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
.careers-opening .lead{margin-bottom:0}
.image-pair .section-title{font-size:34px;line-height:1.35}
.about-lower-image{max-height:430px}
@media(max-width:750px){.image-pair{grid-template-columns:1fr;gap:25px}.image-pair .section-title{font-size:29px}.careers-opening .editorial-image{margin-top:2px}.about-lower-image{max-height:none}}

.nav-group{position:relative}.nav-parent{display:flex;align-items:center;gap:5px}.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:30px;height:36px;border:0;background:transparent;color:#000;padding:0;font-size:20px}.nav-submenu{position:absolute;left:-14px;top:100%;min-width:165px;padding:10px 0;background:#fff;border:1px solid #ccc;box-shadow:0 8px 18px #0001}.nav-submenu[hidden]{display:none}.nav-submenu a{display:block;padding:10px 16px;font-size:14px}.nav-submenu a:hover{background:#f3f3f3}.footer-employer-group{display:flex;flex-direction:column;gap:10px}.footer-sub-link{font-size:12px;margin-left:14px}@media(max-width:750px){.nav-group{width:100%}.nav-parent{justify-content:space-between}.nav-submenu{position:static;margin-top:6px;padding:0 0 0 12px;border:0;box-shadow:none;border-left:1px solid #bbb}.submenu-toggle{width:40px}}

/* Centre the original service artwork: its source has extra white space below
   the circle, so centre-cropping the whole file was cutting off the top. */
.service-row .service-graphic{width:100%;height:355px;aspect-ratio:auto;object-fit:cover;object-position:center 22%;align-self:center;justify-self:center;margin-top:0}
@media(max-width:750px){.service-row .service-graphic{width:min(100%,380px);height:300px;aspect-ratio:auto;object-fit:cover;object-position:center 22%;margin-top:0}}

/* Single-link employer submenu sized to its label. */
.nav-submenu{left:-12px;min-width:0;width:max-content;padding:4px 0;border:0;border-radius:5px;background:#fff;box-shadow:0 4px 14px #00000014}
.nav-submenu a{padding:8px 12px;line-height:1.4;white-space:nowrap}
.nav-submenu a:hover,.nav-submenu a:focus-visible{background:#f4f4f4}
@media(max-width:750px){.nav-submenu{left:auto;margin-top:4px;padding:0 0 0 10px;border:0;box-shadow:none;background:transparent}.nav-submenu a{padding:8px 12px}}
/* Approved static imagery and consistent experience artwork. */
.who .photo.home-robot{height:auto;aspect-ratio:483/475;object-fit:contain}
.employers-opening{align-items:center}
.experience-logos{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:20px 0}
.experience-logo{height:86px;min-width:0;display:flex;align-items:center;justify-content:center}
.experience-logo-art{position:relative;width:min(var(--logo-width),100%);overflow:hidden;flex-shrink:1}
.experience-logos .experience-logo-art img{position:absolute;display:block;max-width:none;object-fit:fill;justify-self:auto}
.application-dialog{width:min(670px,94vw);max-height:90vh;overflow:auto;border:1px solid #aaa;border-radius:8px;padding:34px}
.application-dialog::backdrop{background:#0008}
.application-dialog h2{font-size:26px;font-weight:400;line-height:1.35;margin:0 32px 18px 0}
.application-dialog label{display:block;font-size:14px;margin:18px 0 6px}
.application-dialog input,.application-dialog textarea{display:block;width:100%;padding:12px;border:1px solid #aaa;background:#fff;color:#000;font:inherit;font-size:14px}
.application-dialog textarea{min-height:200px;resize:vertical;line-height:1.6}
.application-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 8px}
.application-actions .button{min-height:44px;gap:0}
.application-close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:28px;color:#000}
.application-copy-status{min-height:24px;font-size:13px;margin-bottom:0}
@media(max-width:750px){.experience-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.experience-logo{height:80px}.application-dialog{padding:28px 20px}.application-actions .button{flex:1 1 auto}}

.employers-globe{aspect-ratio:574/447;object-fit:cover;background:#001526}

.form-honey{display:none!important}.candidate-form label{margin-top:0}.candidate-form input[type=file]{padding:12px;max-width:100%}.email-fallback{margin-top:20px}.email-fallback summary{cursor:pointer}
/* One compact language menu; options are visible only when opened. */
.language-control{flex:0 0 auto;margin-inline-start:0;max-width:148px}.language-control select{display:block;max-width:148px;width:128px;min-height:38px;padding:7px 24px 7px 10px;border:1px solid #b8b8b8;border-radius:5px;background:#fff;color:#111;font:inherit;font-size:13px;cursor:pointer}.header-inner{gap:24px}nav{gap:23px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.language-original-note{grid-column:1/-1;border-inline-start:2px solid #aaa;padding:8px 14px;margin:0 0 24px}.language-original-note p{margin:4px 0}.language-original-note[hidden]{display:none}.candidate-form input[type=email],input[type=url],input[type=tel],input[type=file]{direction:ltr;text-align:start}html[dir=rtl] .eyebrow,html[dir=rtl] .section-title,html[dir=rtl] .service-copy h2{letter-spacing:normal}html[dir=rtl] .close,html[dir=rtl] .application-close,html[dir=rtl] .cookie-close{right:auto;left:20px}html[dir=rtl] .plan ul,html[dir=rtl] .job-description ul{padding-left:0;padding-right:20px}html[dir=rtl] .hero-title{letter-spacing:normal}html[dir=rtl] .arrow{transform:scaleX(-1)}html[lang=ja] .eyebrow,html[lang=ko] .eyebrow,html[lang=zh-CN] .eyebrow{letter-spacing:.05em}.header-inner nav{min-width:0;margin-inline-start:auto}html:not([lang=en]) .header-inner nav{font-size:13px;gap:18px}
@media(min-width:751px) and (max-width:1050px){.header-inner{flex-wrap:wrap;gap:12px 20px}.header-inner nav{order:3;flex-basis:100%;justify-content:flex-end;flex-wrap:wrap}.language-control{margin-inline-start:auto}.header-inner .logo{width:145px}}
@media(max-width:750px){.header-inner{gap:12px}.language-control{margin-inline-start:auto;order:1}.language-control select{width:112px;max-width:112px;min-height:36px;font-size:12px}.mobile-toggle{order:2}.header-inner .logo{width:125px}html:not([lang=en]) .header-inner nav{gap:20px;font-size:14px}.language-original-note{margin-top:12px}}
@media(max-width:360px){.header-inner .logo{width:105px}.language-control select{width:102px;max-width:102px}.header-inner{gap:8px}}

/* Navigation sits beside the language menu, with flexible space after the logo. */
@media(min-width:1051px){.header-inner{justify-content:flex-start;gap:20px}.header-inner nav{margin-inline-start:auto;flex:0 1 auto;justify-content:flex-end}.language-control{margin-inline-start:0}}
.pricing-grid .rate span{display:inline-block;white-space:nowrap;font-size:14px;letter-spacing:0}
.subscribe input[type=hidden],.subscribe .form-honey{display:none!important}

/* Compact language label and nearby chevron in every language. */
.language-control{position:relative;display:inline-flex;align-items:center;max-width:none}
.language-control select{appearance:none;-webkit-appearance:none;width:auto;max-width:none;min-width:0;padding:7px 25px 7px 10px}
.language-chevron{position:absolute;right:9px;top:50%;transform:translateY(-56%);pointer-events:none;line-height:1;font-size:17px;color:#111}
.language-measure{position:absolute;visibility:hidden;white-space:pre;pointer-events:none}
@media(max-width:750px){.language-control select{width:auto;max-width:none}}
@media(max-width:360px){.language-control select{width:auto;max-width:none}}
.employers-chip{height:auto;object-fit:contain}
.about-opening .editorial-image{height:auto;object-fit:contain}

/* Service terms belong with the services, below the two descriptions. */
.service-terms{display:flex;align-items:center;justify-content:space-between;gap:28px;border-top:1px solid #ddd;padding-top:28px;margin-top:28px}
.service-terms p{margin:0 0 8px;line-height:1.65}.service-terms .button{flex-shrink:0}
@media(max-width:750px){.service-terms{align-items:flex-start;flex-direction:column;gap:14px}}

/* Restore the original service cards and their own full-width black actions. */
#services .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
#services .plan{min-width:0;display:flex;flex-direction:column}
#services .plan .button{display:flex;width:100%;margin-top:auto}
#services .service-terms{margin-top:18px;padding-top:16px;border-top:0}
#services .service-terms strong{font-size:20px;line-height:1.5}
@media(max-width:560px){#services .plan-grid{grid-template-columns:1fr}}

/* Keep the service basis together and reduce the gap before specialisms. */
#services .service-terms p{margin:0;line-height:1.6}
#services .service-terms p+p{margin-top:6px}
#services{padding-bottom:32px}
#services+.split-band{padding-top:32px}

/* Bring the team and experience sections together without crowding them. */
.about-team{padding-bottom:20px}
.about-team .eyebrow{margin-bottom:18px}
.about-team .lead{margin-bottom:18px}
.about-team .body{margin-top:0;margin-bottom:12px}
.about-team .body:last-child{margin-bottom:0}
.about-experience{padding-top:22px}

/* Align both opening text blocks and let their words wrap naturally. */
.intro .lead,.intro .support{max-width:940px;text-wrap:pretty}

/* Optional hero demonstrations, isolated from the approved homepage. */
.hero.hero-demo-hi{width:min(980px,88%);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:38px;padding:22px 0 10px}
.hero-demo-hi .hero-media{width:min(100%,360px);margin:0 auto}
.hero-demo-hi .hero-title{align-items:flex-start;text-align:left;padding:0;font-size:clamp(25px,3vw,38px);letter-spacing:.055em}
.hero-demo-hi .hero-title span{width:auto;max-width:100%}
.hero.hero-demo-wide{position:relative;overflow:hidden;background:#000;color:#fff}
.hero-demo-wide .hero-media{width:100%;height:clamp(340px,42vw,560px);aspect-ratio:auto;margin:0;background:#111}
.hero-demo-wide .hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 46%;animation:hero-photo-drift 22s ease-in-out infinite alternate}
.hero-demo-wide:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(0,0,0,.75));pointer-events:none}
.hero.hero-demo-wide .hero-title{position:absolute;inset:auto 6% 34px;z-index:1;padding:0;align-items:flex-start;text-align:left;font-size:clamp(26px,3.6vw,48px);text-shadow:0 2px 14px #0008}
@keyframes hero-photo-drift{from{transform:scale(1)}to{transform:scale(1.06)}}
@media(max-width:620px){.hero.hero-demo-hi{grid-template-columns:1fr;gap:8px;padding-top:12px}.hero-demo-hi .hero-media{width:min(62vw,290px)}.hero-demo-hi .hero-title{align-items:center;text-align:center;font-size:25px;padding-bottom:12px}.hero-demo-wide .hero-media img{object-position:54% center}}
@media(prefers-reduced-motion:reduce){.hero-demo-wide .hero-media img{animation:none}}

/* Two cinematic review pages; the live-design homepage keeps its original hero. */
.hero.impact-hero{position:relative;isolation:isolate;overflow:hidden;height:clamp(430px,45vw,620px);background:#090909;color:#fff}
.impact-media,.impact-shade{position:absolute;inset:0}
.impact-media video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:62% center;filter:grayscale(1) contrast(1.15);transform:none}
.impact-shade{z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.42) 42%,rgba(0,0,0,.06) 76%),linear-gradient(0deg,rgba(0,0,0,.7),transparent 25%)}
.impact-content{position:relative;z-index:2;max-width:1180px;margin:auto;padding:clamp(48px,6vw,88px) 6% 80px}
.impact-kicker{font-size:13px;letter-spacing:.24em;margin:0 0 28px;color:#fff;font-weight:700}
.impact-content h1{font-size:clamp(44px,5.8vw,80px);line-height:1.09;font-weight:700;letter-spacing:-.045em;margin:0;max-width:810px}
.impact-content h1 span{color:#fff}
.impact-rule{display:block;width:92px;height:6px;background:#ff3030;margin-top:30px}
.impact-bottom{position:absolute;z-index:3;bottom:24px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;gap:16px}
.impact-bottom>span{font-size:11px;letter-spacing:.17em;color:#eee}
.impact-playback{background:#0005;border:1px solid #ffffff70;color:#fff;border-radius:4px;padding:8px 11px;font-size:11px;display:flex;gap:12px;align-items:center;white-space:nowrap}
.impact-playback:hover{background:#fff;color:#000}
.impact-network .impact-media video{object-position:center;filter:grayscale(1) sepia(1) saturate(7) hue-rotate(315deg) contrast(1.18)}
.impact-network .impact-shade{background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.28) 60%,rgba(0,0,0,.1)),linear-gradient(0deg,rgba(0,0,0,.8),transparent 30%)}
@media(max-width:620px){.hero.impact-hero{height:460px}.impact-content{padding-top:58px}.impact-content h1{font-size:clamp(37px,8.8vw,54px)}.impact-kicker{margin-bottom:25px;font-size:11px}.impact-media video{object-position:60% center}.impact-bottom>span{max-width:180px;font-size:9px;line-height:1.7;letter-spacing:.1em}.impact-bottom{bottom:20px}.impact-rule{margin-top:24px}}

/* Review 1 retains the original footage colours. */
.impact-cinematic .impact-media video{filter:none}

.impact-processor .impact-media video{filter:none;object-position:center}
.impact-particles .impact-media video{filter:hue-rotate(325deg) saturate(1.2);object-position:center}

/* Keep the video opening focused; the service explanation follows below. */
.impact-bottom{left:0;right:0;width:100%;max-width:1180px;margin-inline:auto;padding-inline:6%;justify-content:flex-start}
.impact-engineers .impact-media video{filter:none;object-position:62% center}
.impact-engineers .impact-shade{background:linear-gradient(90deg,rgba(0,0,0,.74),rgba(0,0,0,.24) 48%,rgba(0,0,0,.04) 80%),linear-gradient(0deg,rgba(0,0,0,.6),transparent 22%)}

/* Give the selected processor demo control more breathing room below it. */
.impact-processor .impact-bottom{bottom:48px}
@media(max-width:620px){.impact-processor .impact-bottom{bottom:36px}}

/* Small optional character guide, shown only on its selected demo. */
.scout-helper{position:fixed;z-index:45;bottom:22px;right:24px;font-family:Montserrat,Arial,sans-serif;color:#111;width:300px;max-width:calc(100vw - 32px);pointer-events:none}
.scout-helper button,.scout-helper a{pointer-events:auto}
.scout-helper [hidden]{display:none!important}
.scout-welcome{position:relative;display:flex;justify-content:flex-end}
.scout-launch{display:flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.scout-launch img{display:block;width:96px;height:120px;object-fit:contain;filter:drop-shadow(0 3px 7px #0002);transform-origin:bottom center;animation:scout-hello 1.3s ease-out 1}
.scout-greeting{position:relative;background:#fff;border:1px solid #ddd;box-shadow:0 4px 22px #0001;padding:12px 14px;border-radius:13px 13px 0 13px;font-size:12px;line-height:1.45;max-width:168px}
.scout-launch:hover .scout-greeting{border-color:#ff3030}
.scout-dismiss{position:absolute;right:0;top:0;border:1px solid #ddd;background:#fff;color:#555;border-radius:50%;width:24px;height:24px;padding:0;font-size:18px;line-height:20px}
.scout-panel{pointer-events:auto;background:#fff;border:1px solid #ddd;border-top:3px solid #ff3030;padding:18px;border-radius:12px;box-shadow:0 12px 38px #0003;margin-bottom:10px}
.scout-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
.scout-panel h2{font-size:17px;line-height:1.4;margin:0;font-weight:700;letter-spacing:0}
.scout-panel-close{background:transparent;border:0;font-size:24px;line-height:1;padding:0 2px;color:#444}
.scout-panel p{font-size:12px;line-height:1.5;margin:8px 0 14px;color:#666}
.scout-panel a{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;padding:13px 0;text-decoration:none;border-top:1px solid #eee}
.scout-panel a span{color:#ff3030;font-size:17px}
.scout-panel a:hover{text-decoration:underline;text-underline-offset:4px}
.scout-restore{display:block;margin-left:auto;background:#fff;border:1px solid #ddd;border-radius:20px;padding:9px 14px;font-size:12px;color:#111;box-shadow:0 2px 12px #0001}
@keyframes scout-hello{0%{opacity:0;transform:translateY(12px) rotate(0)}35%{opacity:1;transform:translateY(0) rotate(-4deg)}65%{transform:rotate(3deg)}100%{transform:rotate(0)}}
@media(max-width:620px){.scout-helper{right:14px;bottom:14px;width:270px}.scout-launch img{width:76px;height:96px}.scout-greeting{font-size:11px;padding:10px 12px;max-width:150px}.scout-dismiss{width:22px;height:22px;font-size:16px}.scout-panel{max-height:60vh;overflow:auto}}
@media(prefers-reduced-motion:reduce){.scout-launch img{animation:none}}

/* Matching service diagrams use the same canvas and visual centre. */
.service-row .service-diagram{height:300px;object-fit:contain;object-position:center}
.employers-opening .employers-people{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
@media(max-width:750px){.service-row .service-diagram{height:240px}}

/* Preserve the original Our Story photograph at its natural proportions. */
.about-lower-image{height:auto;max-height:none;object-fit:contain}

/* Show the supplied Employers photograph at its natural proportions. */
.employers-opening .employers-people{height:auto;aspect-ratio:auto;object-fit:contain}

/* About page processor animation shares the existing editorial image scale. */
.about-processor{position:relative;min-width:0;background:#07151d;overflow:hidden}
.about-opening .about-processor video{display:block;width:100%;height:auto;aspect-ratio:484/350;object-fit:cover}
.about-video-toggle{position:absolute;left:14px;bottom:14px;background:#0009;border:1px solid #ffffff80;border-radius:4px;padding:7px 10px;color:white;font:inherit;font-size:11px;cursor:pointer}
.about-video-toggle:hover,.about-video-toggle:focus-visible{background:white;color:black}

.about-corridor{position:relative;aspect-ratio:1377/1033;overflow:hidden;background:#052039}
.about-corridor img{position:absolute;max-width:none;width:132.61%;height:135.14%;left:-13.51%;top:-11.62%;object-fit:fill}
.recruit-disciplines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:32px}
.recruit-disciplines article{border-top:2px solid #141414;padding-top:18px}
.recruit-disciplines h3{font-size:19px;line-height:1.3;margin:0 0 10px}.recruit-disciplines p{font-size:15px;line-height:1.6;margin:0}
@media(max-width:850px){.recruit-disciplines{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.recruit-disciplines{grid-template-columns:1fr}}

/* Compact disciplines: symbols and titles, with examples on demand. */
.recruit-disciplines{gap:14px 28px}
.discipline{border-bottom:1px solid #e7e7e7;padding:0 0 16px;align-self:start}
.discipline summary{display:flex;align-items:center;gap:13px;list-style:none;cursor:pointer;min-height:58px;font-size:17px;font-weight:500;line-height:1.35}
.discipline summary::-webkit-details-marker{display:none}
.discipline summary svg{width:32px;height:32px;flex:none;color:var(--red)}
.discipline-plus{margin-left:auto;color:#777;font-size:21px;font-weight:400}
.discipline[open] .discipline-plus{transform:rotate(45deg)}
.discipline p{padding:4px 24px 0 45px;color:#555}
.discipline summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}

/* Match the homepage accent and strengthen small line symbols. */
.discipline summary svg{color:#ff3030;stroke:#ff3030;stroke-width:2;opacity:1}

/* Black discipline symbols for visual comparison. */
.discipline summary svg{color:#000;stroke:#000;opacity:1}

.employers-neon-engineer{position:relative;aspect-ratio:3/2;overflow:hidden;background:#141027}
.employers-neon-engineer img{position:absolute;max-width:none;width:105.787%;height:114.757%;left:-3.819%;top:-8.681%;object-fit:fill}

/* Photography comparison: preserve the site and use genuine photo crops. */
body[data-photo-demo] .image-pair .editorial-image{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
body[data-photo-demo] .about-lower-image{aspect-ratio:1.08;object-position:50% 57%;max-height:450px}
body[data-photo-demo] .careers-opening .editorial-image{object-position:50% 40%}

/* Technical photography comparison, with original photo colours. */
body[data-technical-demo] .image-pair .editorial-image{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
body[data-technical-demo] .about-lower-image{aspect-ratio:1.15;object-position:50% 45%;max-height:430px}
body[data-technical-demo] .careers-opening .editorial-image{object-position:50% 50%}

.about-opening .about-global-network video{aspect-ratio:16/9;object-fit:contain}

/* Aligned opening images across the three interior pages. */
.about-opening .about-global-still,.careers-opening>.editorial-image{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
body[data-page="employers"] #how-we-work{padding-top:32px}
#services+.split-band{padding-bottom:24px}
#how-we-work{padding-top:32px}

.home-services-intro{padding-top:12px;padding-bottom:0}.home-services-intro .body{max-width:780px;margin-bottom:0}

/* Recruitment specialisms: descriptions are always visible. */
.recruit-disciplines article.discipline{border-top:0;padding-top:0}
.recruit-disciplines .discipline-heading{display:flex;align-items:center;gap:13px;min-height:58px;margin:0;font-size:17px;font-weight:500;line-height:1.35}
.discipline-heading svg{width:32px;height:32px;flex:none;color:#000;stroke:#000;stroke-width:2}
.discipline p{padding:4px 0 0 45px}

body[data-real-hardware] .impact-media video{filter:grayscale(1) sepia(1) hue-rotate(155deg) saturate(1.8) brightness(.8)}

/* Side action and video comparison demo. */
body[data-side-demo] .quick-actions{position:fixed;right:0;top:38%;z-index:45;display:flex;flex-direction:column;width:145px;background:#050505;color:#fff;box-shadow:0 3px 18px #0003}
.quick-actions a,.quick-actions button{display:flex;justify-content:space-between;gap:8px;text-align:left;padding:18px 13px;color:inherit;background:none;border:0;border-bottom:1px solid #ffffff40;font:inherit;font-size:13px;line-height:1.4;text-decoration:none;cursor:pointer}
.quick-actions a:hover,.quick-actions button:hover,.quick-actions a:focus-visible,.quick-actions button:focus-visible{background:#282828;outline:2px solid #ff3030;outline-offset:-2px}
.quick-actions span{font-size:17px}.candidate-shortcuts{margin-top:26px}.candidate-shortcuts .button{font-size:13px;padding:12px 15px}.video-demo-chooser{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;align-items:center;padding:18px;background:#f2f2f2;font-size:12px}.video-demo-chooser>span{color:#555}.video-demo-chooser a{padding:7px 10px;border:1px solid #777;border-radius:3px;text-decoration:none}.video-demo-chooser a[aria-current]{background:#000;color:#fff;border-color:#000}
body[data-side-demo] .impact-shade{background:linear-gradient(90deg,rgba(0,0,0,.65),rgba(0,0,0,.18) 70%,rgba(0,0,0,.12))}
body[data-side-demo] .impact-media video{filter:saturate(1.2)}
@media(max-width:1200px){body[data-side-demo]{padding-bottom:63px}body[data-side-demo] .quick-actions{top:auto;bottom:0;right:0;left:0;width:100%;flex-direction:row}.quick-actions a,.quick-actions button{width:33.333%;justify-content:center;text-align:center;align-items:center;border-bottom:0;border-right:1px solid #ffffff40;padding:17px 8px}}
@media(max-width:540px){.quick-actions a,.quick-actions button{font-size:11px;gap:6px}.candidate-shortcuts{flex-wrap:wrap}}

body[data-side-demo] #jobs{scroll-margin-top:110px}

/* No persistent quick links in the approved site. */
.navigation-quick,.quick-actions,.mobile-quick-group{display:none!important}
body[data-navigation-demo],body[data-side-demo]{padding-bottom:0!important;padding-right:0!important}

body[data-navigation-demo]{padding-right:0}
.navigation-quick{position:fixed;right:0;top:50%;transform:translateY(-50%);width:43px;z-index:45;display:flex;flex-direction:column;gap:11px;background:transparent}
.navigation-quick a{display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;text-orientation:mixed;width:43px;min-height:164px;padding:17px 10px;border-radius:7px 0 0 7px;background:#080808;color:white;font-size:12px;line-height:1.4;text-decoration:none;box-shadow:-2px 2px 7px #0002;transition:background .15s}
.navigation-quick a:hover,.navigation-quick a:focus-visible{background:#333;outline:2px solid #777;outline-offset:-3px}
.navigation-quick b{display:none}
body[data-navigation-demo] .candidate-shortcuts{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
body[data-navigation-demo] .discipline summary{color:#000}
body[data-navigation-demo] .discipline summary svg{color:#000;stroke:#000}
body[data-navigation-demo] #jobs,body[data-navigation-demo] #services{scroll-margin-top:30px}
#candidate-conversations{margin-top:30px;margin-bottom:55px}
@media(max-width:700px){body[data-navigation-demo]{padding-bottom:76px}.navigation-quick{top:auto;bottom:0;left:0;right:0;transform:none;width:100%;flex-direction:row;gap:1px;background:#333}.navigation-quick a{writing-mode:horizontal-tb;width:33.333%;min-height:62px;border-radius:0;padding:12px 10px;font-size:11px;text-align:center;box-shadow:none}}
@media(max-height:620px) and (min-width:701px){.navigation-quick{gap:7px}.navigation-quick a{min-height:140px;font-size:11px;padding:12px 8px}}
@media(prefers-reduced-motion:reduce){.navigation-quick a{transition:none}}

/* Homepage audience links share the red rule and body content alignment. */
body[data-navigation-demo] .impact-content{width:min(980px,88%);max-width:none;padding-left:0;padding-right:0}
body[data-navigation-demo] .impact-bottom{width:min(980px,88%);max-width:none;padding:0;left:0;right:0;bottom:36px;display:flex;flex-direction:column;align-items:flex-start;gap:22px}
body[data-navigation-demo] .hero-audience-actions{display:flex;gap:14px;flex-wrap:wrap;margin:0}
body[data-navigation-demo] .hero-audience-actions .button{color:white;border-color:#fff;background:#0005;font-size:14px}
body[data-navigation-demo] .hero-audience-actions .button:hover{background:#fff;color:#000}
body[data-navigation-demo] .careers-feature-only{display:block;padding-top:20px;padding-bottom:20px}
body[data-navigation-demo] .careers-feature-only .feature{display:grid;grid-template-columns:1fr 1.5fr auto;gap:36px;align-items:center;padding:34px 0;border-left:0}
body[data-navigation-demo] .careers-feature-only h2,body[data-navigation-demo] .careers-feature-only p{margin:0;min-height:0}
@media(max-width:750px){body[data-navigation-demo] .impact-content,body[data-navigation-demo] .impact-bottom{width:86%}body[data-navigation-demo] .careers-feature-only .feature{grid-template-columns:1fr;gap:18px}body[data-navigation-demo] .careers-feature-only .button{justify-self:start}}
@media(max-width:620px){body[data-navigation-demo] .impact-bottom{bottom:26px;gap:17px}body[data-navigation-demo] .hero-audience-actions .button{font-size:12px;padding:10px 16px;min-height:42px}body[data-navigation-demo] .hero.impact-hero{height:500px}}

body[data-navigation-demo] .impact-content .hero-audience-actions{margin-top:38px}
@media(max-width:620px){body[data-navigation-demo] .impact-content .hero-audience-actions{margin-top:30px}}

/* Match the spacing and scale of the surrounding sections. */
body[data-navigation-demo] .hero > .hero-audience-actions{position:absolute;z-index:3;margin:0}
body[data-navigation-demo][data-page="job-seekers"] .jobs-section{padding-bottom:16px}
body[data-navigation-demo] #candidate-conversations{margin-top:0;margin-bottom:40px;padding-top:40px;padding-bottom:40px}
body[data-navigation-demo] #candidate-conversations .button{padding:10px 16px;gap:14px;font-size:13px;min-height:42px}
body[data-navigation-demo] #candidate-conversations .button .arrow{font-size:17px}
body[data-navigation-demo][data-page="home"] section.who{padding-bottom:100px}
body[data-navigation-demo][data-page="home"] section.who + .dark{padding-top:85px}
@media(max-width:750px){body[data-navigation-demo][data-page="home"] section.who{padding-bottom:65px}body[data-navigation-demo][data-page="home"] section.who + .dark{padding-top:60px}body[data-navigation-demo] #candidate-conversations{padding-top:32px;padding-bottom:32px}}

/* Careers follows the same heading and text rhythm as other homepage sections. */
body[data-navigation-demo] .careers-feature-only .feature{display:block;padding:34px 0;max-width:760px}
body[data-navigation-demo] .careers-feature-only .feature h2.eyebrow{font-size:14px;font-weight:400;letter-spacing:.16em;line-height:1.5;margin:0 0 18px}
body[data-navigation-demo] .careers-feature-only .feature p{margin:0 0 22px;max-width:680px;min-height:0}
body[data-navigation-demo] .careers-feature-only .feature .button{display:inline-flex}

/* Careers action sits to the right of its introduction on wider screens. */
body[data-navigation-demo] .careers-feature-only .feature{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px 28px;max-width:none;align-items:center}
body[data-navigation-demo] .careers-feature-only .feature h2.eyebrow{grid-column:1/-1;margin:0}
body[data-navigation-demo] .careers-feature-only .feature p{margin:0;max-width:680px}
body[data-navigation-demo] .careers-feature-only .feature .button{justify-self:end;white-space:nowrap}
@media(max-width:750px){body[data-navigation-demo] .careers-feature-only .feature{grid-template-columns:1fr}body[data-navigation-demo] .careers-feature-only .feature .button{justify-self:start}}

/* Side quick links removed from the current demo. */
body[data-navigation-demo]{padding-bottom:0;padding-right:0}

@media(max-width:700px){body[data-navigation-demo].has-quick-links{padding-bottom:76px}}

.mobile-quick-group{display:none}
@media(max-width:750px){
 body[data-mobile-quick="menu"],body[data-mobile-quick="hide"]{padding-bottom:0!important}
 body[data-mobile-quick] .navigation-quick{display:none}
 body[data-mobile-quick="menu"] .mobile-quick-group{display:flex;flex-direction:column;gap:0;border-top:1px solid #ddd;margin-top:5px;padding-top:14px;width:100%}
 .mobile-quick-group p{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#666;margin:0 0 6px}
 .mobile-quick-group a{display:block;padding:12px 0;font-size:14px;font-weight:500;min-height:44px}
 body[data-mobile-quick] header nav.open{max-height:calc(100dvh - 72px);overflow:auto;padding-bottom:26px}
}

.country-flag{display:inline-block;font-size:1em;line-height:1;vertical-align:-.05em;margin-right:.4em;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}

.about-image-option{height:308px;overflow:hidden;background:#050505}
.about-image-option img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-image-option.image-gold img{transform:scale(1.18);transform-origin:0% 50%;object-position:left center}
.about-image-chooser{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:14px 20px;background:#f3f3f3;font-size:12px}
.about-image-chooser>span{color:#666}
.about-image-chooser a{border:1px solid #aaa;padding:8px 12px;border-radius:20px}
.about-image-chooser a[aria-current]{background:#111;color:white;border-color:#111}
@media(max-width:750px){.about-image-option{height:auto;aspect-ratio:484/350}}

.about-image-option.image-blue img{object-position:center;transform:translateY(-2%) scale(1.1);transform-origin:center}

/* International hiring experience: flags stay small; regional detail opens on tap. */
.international-reach{margin-top:32px}
.international-reach .reach-intro{margin-bottom:17px}
.reach-countries{display:flex;align-items:flex-start;flex-wrap:wrap;gap:7px 16px;max-width:940px}
.reach-country{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:5px 0;font-size:14px;line-height:1.6}
.reach-flag{font-size:17px;line-height:1;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}
.reach-region{position:relative;font-size:14px}
.reach-region>summary{list-style:none;display:flex;align-items:center;gap:13px;cursor:pointer;padding:5px 10px;border-bottom:1px solid #80a4c5;background:#f0f6fb;line-height:1.6}
.reach-region>summary::-webkit-details-marker{display:none}
.reach-region>summary:hover{background:#e1eef8}
.reach-region>summary:focus-visible{outline:2px solid #2478b8;outline-offset:3px}
.reach-region-panel{position:absolute;left:0;top:calc(100% + 7px);z-index:5;width:330px;padding:16px 20px;background:white;border:1px solid #d5e2ed;box-shadow:0 10px 30px #142d461a;display:grid;grid-template-columns:1fr 1fr;gap:5px 12px}
.reach-region-panel>.reach-region{grid-column:1/-1;margin-top:8px}
.reach-region-panel .reach-region-panel{position:static;width:auto;box-shadow:none;border:0;padding:10px 0 0;grid-template-columns:1fr}
.international-reach .reach-outro{margin-top:20px}
@media(max-width:750px){.reach-countries{gap:4px 13px}.reach-country,.reach-region{font-size:13px}.reach-region-panel{width:275px;max-width:calc(100vw - 65px)}}

@media(max-width:750px){.reach-countries>.reach-region[open]{flex-basis:100%}.reach-countries>.reach-region[open]>summary{width:max-content}.reach-countries>.reach-region>.reach-region-panel{position:static;margin-top:8px;width:100%;max-width:100%;box-sizing:border-box;box-shadow:none}}
.reach-region-panel{width:max-content;min-width:330px;grid-template-columns:max-content max-content}
@media(max-width:750px){.reach-countries>.reach-region>.reach-region-panel{min-width:0;grid-template-columns:1fr 1fr}.reach-region-panel .reach-country{white-space:normal}}
@media(max-width:420px){.reach-countries>.reach-region>.reach-region-panel{grid-template-columns:1fr}}

/* Open regional lists, six rows per column. */
.reach-groups{display:grid;grid-template-columns:minmax(135px,1fr) repeat(2,minmax(0,2fr));gap:32px;margin:23px 0 26px}
.reach-group{min-width:0;border-top:1px solid #b7ccde;padding-top:15px}
.reach-group h3{font-size:13px;letter-spacing:.1em;font-weight:500;margin:0 0 12px;text-transform:uppercase}
.reach-group-countries{display:grid;grid-template-rows:repeat(6,auto);grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:start;gap:2px 18px}
.reach-group .reach-country{padding:3px 0;white-space:normal;font-size:13px;gap:6px;line-height:1.65}
@media(max-width:1000px){.reach-groups{gap:24px;grid-template-columns:1fr}.reach-group-countries{max-width:560px;gap:3px 24px}.reach-group:not(.reach-group-wide) .reach-group-countries{grid-template-rows:repeat(3,auto)}}
@media(max-width:420px){.reach-group .reach-country{font-size:12px}.reach-group .reach-flag{font-size:16px}.reach-group-countries{column-gap:14px}}

/* Match the scale of company experience and international hiring experience. */
.about-experience > p.lead,.about-experience .reach-intro{font-size:18px;line-height:1.6;font-weight:400;max-width:none}
.about-experience .experience-logo-art{transform:scale(.84);transform-origin:center}
.about-experience .experience-logo{height:70px}
.about-experience .experience-logos{gap:16px 20px;padding:16px 0}
.about-experience .reach-flag{font-size:20px}
.about-experience .reach-country{align-items:center;min-height:26px;box-sizing:border-box}
@media(max-width:750px){.about-experience > p.lead,.about-experience .reach-intro{font-size:17px}.about-experience .reach-flag{font-size:19px}.about-experience .experience-logo{height:66px}}

.about-experience{padding-bottom:42px}
.about-experience .reach-groups{margin-bottom:0}

.experience-company-button{width:100%;border:0;padding:0;background:transparent;border-radius:5px;color:inherit;cursor:pointer;transition:background .15s}
.experience-company-button:hover{background:transparent}
.experience-company-button:focus-visible{outline:2px solid #2478b8;outline-offset:3px}
.company-dialog{width:min(510px,calc(100vw - 40px));max-height:85dvh;overflow:auto;border:1px solid #d5dce2;border-radius:8px;padding:38px 34px 32px;color:#000;background:#fff;box-shadow:0 20px 80px #0003}
.company-dialog::backdrop{background:#05101c85}
.company-dialog h2{font-size:25px;line-height:1.35;font-weight:500;margin:0 25px 18px 0}
.company-dialog p{font-size:16px;line-height:1.75;margin:0 0 24px}
.company-dialog-close{position:absolute;right:15px;top:10px;border:0;background:transparent;font-size:27px;line-height:1;padding:7px;color:#333}
.company-dialog-website{display:inline-flex;gap:14px;align-items:center;font-size:13px;border-bottom:1px solid #777;padding-bottom:4px}
@media(max-width:520px){.company-dialog{padding:34px 24px 28px}.company-dialog h2{font-size:23px}.company-dialog p{font-size:15px}}

/* Consistent type hierarchy across the main pages. */
body[data-navigation-demo] main .lead{font-size:22px;line-height:1.55}
body[data-navigation-demo] .service-copy h2{font-size:32px;line-height:1.35;letter-spacing:.045em}
body[data-navigation-demo] .plan h2{font-size:24px;line-height:1.35}
body[data-navigation-demo] .section-title{font-size:32px;line-height:1.35}
body[data-navigation-demo] .image-pair .section-title{font-size:30px;line-height:1.35}
body[data-navigation-demo] .dark .section-title{font-size:34px;line-height:1.3}
body[data-navigation-demo] .job-card h3{font-size:22px;line-height:1.4}
body[data-navigation-demo] .about-team .lead{font-size:20px}
body[data-navigation-demo] .about-experience > p.lead,body[data-navigation-demo] .about-experience .reach-intro{font-size:18px;line-height:1.6}
body[data-navigation-demo] .recruit-section .lead{font-size:16px;line-height:1.6}
@media(max-width:750px){
 body[data-navigation-demo] main .lead{font-size:20px}
 body[data-navigation-demo] .service-copy h2{font-size:28px}
 body[data-navigation-demo] .section-title,body[data-navigation-demo] .image-pair .section-title,body[data-navigation-demo] .dark .section-title{font-size:28px}
 body[data-navigation-demo] .plan h2{font-size:23px}
 body[data-navigation-demo] .about-team .lead{font-size:19px}
 body[data-navigation-demo] .about-experience > p.lead,body[data-navigation-demo] .about-experience .reach-intro{font-size:17px}
 body[data-navigation-demo] .recruit-section .lead{font-size:16px}
}
/* Balance the visible circle-to-copy gaps in the mirrored service rows. */
@media(min-width:751px){body[data-navigation-demo] .service-row:not(.reverse) .service-graphic{transform:translateX(calc(-100% + 300px));clip-path:inset(0 24.5%)}}

/* Align both service rows to the same visible left and right columns. */
@media(min-width:751px){
 body[data-navigation-demo] .service-row.reverse .service-graphic{transform:translateX(-24.576271%);clip-path:inset(0 24.5%)}
 body[data-navigation-demo] .service-row.reverse .service-copy{transform:translateX(calc(300px - 75.423729%))}
}

/* Review-only service box alternatives; the approved page remains the default. */
.service-card-chooser{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:28px 0 20px;font-size:12px}
.service-card-chooser>span{color:#666;margin-right:10px}
.service-card-chooser a{padding:8px 12px;border:1px solid #aaa;border-radius:4px;text-decoration:none}
.service-card-chooser a[aria-current]{background:#111;border-color:#111;color:#fff}
#services .service-card-preview{margin-top:0;gap:26px;scroll-margin-top:110px}
.service-card-preview .plan{padding:30px;border-color:#bbb;border-radius:6px;box-shadow:none}
.service-card-preview .plan>.eyebrow{display:none}
body[data-navigation-demo] .service-card-preview .plan h2{font-size:24px;line-height:1.35;letter-spacing:0;margin:0 0 16px}
.service-card-preview .service-card-intro p{font-size:16px;line-height:1.7;margin:0;min-height:0}
.service-card-preview .plan ul{font-size:15px;line-height:1.7;padding-left:19px;margin:26px 0 30px}
.service-card-preview .plan li{margin-bottom:13px;padding-left:3px}
.service-card-preview .plan li:last-child{margin-bottom:0}
.service-card-preview .plan>.button{margin-top:auto;font-size:13px;gap:18px}
.service-card-clear .plan{border-top:4px solid #111;padding-top:29px}
.service-card-clear .service-card-intro{min-height:106px}
#services .service-card-wide{grid-template-columns:1fr;gap:20px}
#services .service-card-wide .plan{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px 40px;padding:32px}
.service-card-wide .plan ul{grid-column:2;grid-row:1/3;margin:0;align-self:center}
.service-card-wide .plan>.button{justify-self:start;grid-column:1;min-width:190px;margin:0}
.service-card-wide .service-card-intro p{max-width:330px}
.service-card-compact{gap:24px}
.service-card-compact .plan{padding:25px;background:#f7f8f9;border:1px solid #e0e3e6}
body[data-navigation-demo] .service-card-compact .plan h2{font-size:22px;margin-bottom:12px}
.service-card-compact .service-card-intro p{font-size:15px;line-height:1.65}
.service-card-compact .service-card-intro{min-height:116px}
.service-card-compact .plan ul{list-style:none;padding:0;margin:20px 0 24px;line-height:1.6;font-size:14px}
.service-card-compact .plan li{position:relative;border-top:1px solid #d7dce1;padding:12px 0 12px 19px;margin:0}
.service-card-compact .plan li:before{content:'•';position:absolute;left:0;color:#555}
@media(max-width:750px){#services .service-card-preview{grid-template-columns:1fr}.service-card-preview .plan{padding:25px}.service-card-clear .service-card-intro,.service-card-compact .service-card-intro{min-height:0}#services .service-card-wide .plan{display:flex;gap:0}.service-card-wide .plan ul{margin:23px 0}.service-card-wide .plan>.button{align-self:stretch}.service-card-chooser{gap:8px}.service-card-chooser>span{width:100%;margin-bottom:3px}}

/* Keep regional lists in two columns as confirmed hiring countries are added. */
.reach-group-wide .reach-group-countries{grid-template-rows:repeat(var(--reach-rows,6),auto)}
.about-experience .reach-flag{font-size:24px}
.about-experience .reach-country{min-height:29px;gap:8px}
@media(max-width:750px){.about-experience .reach-flag{font-size:22px}}
.reach-group-wide .reach-group-countries{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}

/* Three EMEA columns keep the growing country list compact on larger screens. */
.reach-emea .reach-group-countries{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr)}
@media(min-width:1001px){.reach-groups{grid-template-columns:130px minmax(0,3fr) minmax(0,2fr)}}
@media(max-width:620px){.reach-emea .reach-group-countries{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-rows:repeat(var(--reach-rows-mobile,10),auto)}}

/* Keep the sourcing-first country display in regional order and aligned rows. */
.reach-americas .reach-group-countries{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(7,auto);grid-auto-flow:row}
@media(min-width:1001px){.reach-americas .reach-group-countries,.reach-emea .reach-group-countries,.reach-apac .reach-group-countries{grid-template-rows:repeat(7,29px)}}
@media(max-width:1000px){.reach-group.reach-americas .reach-group-countries{grid-template-rows:repeat(7,auto);max-width:200px}}

@media(min-width:1001px){.reach-groups:has(.reach-americas){grid-template-columns:130px minmax(0,3.4fr) minmax(0,1.8fr)}.reach-americas~.reach-emea .reach-group-countries{grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr) minmax(0,1.4fr)}}

body[data-navigation-demo] .job-heading h1{font-size:clamp(26px,2.6vw,32px);line-height:1.3}

/* Give job location flags the same visual presence as About Us flags. */
.job-meta .country-flag{font-size:24px;line-height:1;vertical-align:-.2em;margin-right:8px}
@media(max-width:750px){.job-meta .country-flag{font-size:22px}}

.region-buttons{display:flex;align-items:stretch;justify-content:flex-start;gap:24px;margin:24px 0 0}.region-button{font:inherit;background:white;color:#151515;border:1px solid #d0d0d0;min-width:170px;padding:17px 23px;text-align:left;cursor:pointer;transition:background .15s,border-color .15s}.region-button:hover{background:#f4f7fa;border-color:#252525}.region-button:focus-visible{outline:2px solid #171717;outline-offset:4px}.region-button-name{font-size:22px;line-height:1.2;display:block;font-weight:700}.region-button-link{font-size:11px;line-height:1.4;display:flex;gap:22px;align-items:center;margin-top:8px}.region-button-link>span{font-size:18px}.region-country-dialog{width:min(690px,calc(100vw - 36px));max-height:85dvh;overflow:auto;border:1px solid #222;padding:34px 38px 38px;color:#111;background:white}.region-country-dialog::backdrop{background:#0008}.region-country-dialog h2{font-family:Montserrat,Arial,sans-serif;font-size:27px;margin:0 45px 8px 0;font-weight:700}.region-caption{font-size:14px;line-height:1.5;margin:0 0 25px;color:#555}.region-close{position:absolute;top:13px;right:17px;background:none;border:0;font-size:30px;cursor:pointer;color:#111;line-height:1}.region-country-list{display:grid;grid-template-columns:1fr 1fr;gap:9px 30px}.region-country-list .reach-country{font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.5;display:flex;gap:12px;align-items:center;white-space:normal;padding:5px 0}.region-country-list .reach-flag{font-size:25px;line-height:1;flex-shrink:0}.region-country-dialog button:focus-visible{outline:2px solid #111;outline-offset:4px}.about-experience .international-reach{margin-bottom:0}@media(max-width:750px){.region-buttons{gap:10px;flex-wrap:wrap}.region-button{flex:1;min-width:110px;padding:15px 12px}.region-button-name{font-size:18px}.region-button-link{font-size:10px;gap:12px}.region-country-dialog{padding:30px 23px}.region-country-list{gap:8px 20px}.region-country-list .reach-country{font-size:12px;gap:8px}.region-country-list .reach-flag{font-size:22px}}@media(max-width:390px){.region-country-list{grid-template-columns:1fr}}

/* More breathing room between the regional buttons and Our Story. */
body[data-page="about"] .about-experience{padding-bottom:82px}
@media(max-width:750px){body[data-page="about"] .about-experience{padding-bottom:66px}}
/* Center and evenly distribute the regions across the company-logo area. */
.region-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-items:center;gap:28px;width:100%}
.region-button{width:170px;max-width:100%;min-width:0;text-align:center}
.region-button-link{justify-content:center}
@media(max-width:750px){.region-buttons{gap:12px}.region-button{width:100%;padding:15px 10px}.region-button-name{font-size:17px}.region-button-link{gap:8px}}
/* Match the breathing room beneath the two experience statements. */
.region-buttons{margin-top:44px}
@media(max-width:750px){.region-buttons{margin-top:34px}}
/* Align both sets of experience graphics with the text above them. */
.about-experience .experience-logo{justify-content:flex-start;padding-left:0;padding-right:0}
.about-experience .experience-logo-art{transform-origin:left center}
.region-buttons{justify-items:start}
.region-button{text-align:left}
.region-button-link{justify-content:flex-start}

.pricing-demo-notice{padding:9px 5%;background:#fff4d9;color:#4b3b14;text-align:center;font-family:Arial,sans-serif;font-size:12px;line-height:1.6;display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid #e9dbb8}.pricing-demo-notice>span{font-size:10px;letter-spacing:.08em;font-weight:700}.pricing-demo-notice a{text-decoration:underline;margin-left:15px}.hourly-price{display:flex;align-items:baseline;gap:12px;margin:3px 0 12px;line-height:1.15}.hourly-amount{font-size:42px;font-weight:700;letter-spacing:-1px}.hourly-unit{font-size:14px;font-weight:400;color:#555;letter-spacing:0}.plan .hourly-price{margin-bottom:8px}.plan .hourly-card-note{font-size:13px;color:#555;margin:0 0 25px}.service-copy .hourly-price{margin-bottom:24px}.hourly-home-note{margin-top:23px}.hourly-budget{border-top:1px solid #ddd;padding:26px 0 0;margin-top:35px;display:grid;grid-template-columns:1.2fr 1fr;gap:45px}.hourly-budget h3{font-size:19px;font-weight:700;line-height:1.4;margin:0 0 12px}.hourly-budget p{font-size:14px;line-height:1.7;max-width:470px;margin:0}.hourly-examples{display:flex;align-items:center;justify-content:flex-end;gap:36px}.hourly-examples>div{display:grid;gap:7px;font-size:13px}.hourly-examples strong{font-size:21px;white-space:nowrap}.plan{border:1px solid #000!important;box-shadow:none!important}@media(max-width:750px){.hourly-budget{grid-template-columns:1fr;gap:24px}.hourly-examples{justify-content:flex-start;gap:45px}.hourly-amount{font-size:35px}.pricing-demo-notice{gap:3px 10px;padding:7px 5%;font-size:11px}.pricing-demo-notice a{margin-left:0}.hourly-budget h3{font-size:18px}}

.hourly-demo-disclaimer{font-size:12px;color:#6a5b36;margin:24px 0 -10px}
.pricing-options-intro{font-size:18px;line-height:1.6;margin:32px 0 25px}.engagement-prices{display:grid;grid-template-columns:1fr 1.35fr;gap:20px;border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:20px 0;margin:5px 0 26px}.price-label{font-size:12px;color:#555}.engagement-prices p{margin:8px 0 0!important;line-height:1.2!important;display:flex;flex-direction:column;gap:8px}.engagement-prices strong{font-size:34px;font-weight:700;letter-spacing:-.03em;white-space:nowrap}.engagement-prices p>span{font-size:12px;color:#555}.monthly-capacity-note{font-size:13px;color:#555;margin:20px 0 0;line-height:1.6}@media(max-width:750px){.engagement-prices{gap:15px}.engagement-prices strong{font-size:30px}.pricing-options-intro{font-size:17px}}

/* Consistent spacing and outlined action links throughout this demo. */
.pricing-options-intro{margin:30px 0 26px;max-width:880px;font-size:18px;line-height:1.6}
.pricing-options-intro>span{display:block;font-size:15px;margin-top:8px}
#services .plan-grid{max-width:880px;width:100%;gap:24px;margin-top:0}
#services .plan{padding:28px;min-width:0}
#services .plan h2{font-size:25px;line-height:1.4;margin-bottom:18px}
.engagement-prices{gap:16px;padding:18px 0;margin-bottom:24px}
.engagement-prices strong{font-size:32px}
.engagement-prices p>span{font-size:11px;line-height:1.5}
.engagement-prices small{display:block;font-size:11px;white-space:nowrap}
body[data-navigation-demo] .section{padding-top:64px;padding-bottom:64px}
body[data-navigation-demo] .page-top{padding-top:60px;padding-bottom:36px}
body[data-navigation-demo] .split-band{padding-top:48px;padding-bottom:48px}
body[data-navigation-demo] .who{padding-top:72px;padding-bottom:72px}
body[data-navigation-demo] .home-services-intro{padding-top:24px;padding-bottom:8px}
body[data-navigation-demo] .about-experience{padding-bottom:82px}
body[data-navigation-demo] .button,body[data-navigation-demo] button.primary{background:transparent;color:#000;border:1px solid #000;box-shadow:none}
body[data-navigation-demo] .button:hover,body[data-navigation-demo] .button:active,body[data-navigation-demo] button.primary:hover,body[data-navigation-demo] button.primary:active{background:#000;color:#fff;border-color:#000;text-decoration:none}
body[data-navigation-demo] .dark .button,body[data-navigation-demo] .hero .button{background:transparent;color:#fff;border:1px solid #fff}
body[data-navigation-demo] .dark .button:hover,body[data-navigation-demo] .dark .button:active,body[data-navigation-demo] .hero .button:hover,body[data-navigation-demo] .hero .button:active{background:#fff;color:#000;border-color:#fff}
@media(max-width:750px){body[data-navigation-demo] .section{padding-top:46px;padding-bottom:46px}body[data-navigation-demo] .page-top{padding-top:42px;padding-bottom:28px}body[data-navigation-demo] .split-band{padding-top:38px;padding-bottom:38px}body[data-navigation-demo] .who{padding-top:48px;padding-bottom:48px}body[data-navigation-demo] .about-experience{padding-bottom:66px}#services .plan-grid{gap:24px}#services .plan{padding:24px}.pricing-options-intro{font-size:17px}.engagement-prices strong{font-size:29px}}

#services .pricing-heading{margin-top:36px;margin-bottom:16px}
.pricing-heading+.pricing-options-intro{margin-top:0}
.pricing-scope-note{max-width:880px;margin:24px 0 0;font-size:15px;line-height:1.6}

/* Shared action sizing: compact arrows, room for longer labels. */
body[data-navigation-demo] .button,body[data-navigation-demo] button.primary{width:auto;min-width:180px;max-width:100%;gap:16px;padding:12px 20px;justify-content:center;font-size:14px;min-height:46px}
body[data-navigation-demo] .button .arrow{font-size:18px}
body[data-navigation-demo] #services .plan>.button{width:auto;align-self:flex-start;margin-top:auto}
.pricing-heading+.pricing-options-intro{margin-bottom:36px}
.pricing-scope-note{margin-top:30px;font-weight:400}
body[data-navigation-demo][data-page="employers"] #services{padding-bottom:80px}
body[data-navigation-demo][data-page="employers"] .recruit-section{padding-top:64px}
body[data-navigation-demo] .about-team{padding-bottom:24px}
body[data-navigation-demo] .about-experience{padding-top:32px}
body[data-navigation-demo] .about-experience>.lead,body[data-navigation-demo] .about-experience .reach-intro{font-family:Montserrat,Arial,sans-serif;font-size:18px;line-height:1.6;font-weight:400}
body[data-navigation-demo] .about-experience .experience-logo-art{transform:scale(.96)}
body[data-navigation-demo] .region-button{width:150px;padding:13px 16px;border-color:#000;transition:background .18s,color .18s}
body[data-navigation-demo] .region-button-name{font-size:19px}
body[data-navigation-demo] .region-button-link{gap:12px}
body[data-navigation-demo] :is(.region-button):is(:hover,:active,:focus-visible){background:#000;color:#fff;border-color:#000}
body[data-navigation-demo] .experience-company-button:hover .experience-logo-art,body[data-navigation-demo] .experience-company-button:focus-visible .experience-logo-art{background:#fff;border-radius:2px}
body[data-navigation-demo] :is(.company-dialog-website,.email-fallback a){display:inline-flex;align-items:center;gap:16px;border:1px solid #000;border-radius:7px;padding:11px 18px;background:transparent;color:#000;text-decoration:none;transition:background .18s,color .18s}
body[data-navigation-demo] :is(.button,button.primary,.company-dialog-website,.email-fallback a):is(:hover,:active,:focus-visible){background:#000;color:#fff;border-color:#000;text-decoration:none}
body[data-navigation-demo] :is(.dark,.hero) .button:is(:hover,:active,:focus-visible){background:#fff;color:#000;border-color:#fff}
body[data-navigation-demo] :is(.dialog,.application-dialog,.cookie-dialog,.company-dialog,.region-country-dialog) button:not(.experience-company-button):not(.region-button){color:#000;background:transparent;border:1px solid #000}
body[data-navigation-demo] :is(.dialog,.application-dialog,.cookie-dialog,.company-dialog,.region-country-dialog) button:is(:hover,:active,:focus-visible){background:#000;color:#fff}
.hiring-work-types{margin:0;padding:0;border:0;min-width:0}
.hiring-work-types legend{font-size:14px;margin-bottom:12px}
.hiring-work-types legend span{font-size:12px;color:#555}
.hiring-work-types>div{display:flex;flex-wrap:wrap;gap:12px 24px}
.form .hiring-work-types label{display:inline-flex;flex-direction:row;align-items:center;gap:8px;font-size:14px;margin:0}
.form .hiring-work-types input{width:18px;height:18px;margin:0;padding:0;accent-color:#000}
@media(max-width:750px){body[data-navigation-demo] .about-experience{padding-top:26px}body[data-navigation-demo] .about-experience>.lead,body[data-navigation-demo] .about-experience .reach-intro{font-size:17px}body[data-navigation-demo] .region-button{width:100%;padding:13px 10px}body[data-navigation-demo] .region-button-name{font-size:16px}body[data-navigation-demo][data-page="employers"] #services{padding-bottom:60px}body[data-navigation-demo][data-page="employers"] .recruit-section{padding-top:46px}}
/* Interaction states take precedence over form-specific base styles. */
body[data-navigation-demo] :is(.button,button.primary,.region-button,.company-dialog-website,.email-fallback a):is(:hover,:active,:focus-visible),body[data-navigation-demo] :is(.dialog,.application-dialog,.cookie-dialog,.company-dialog,.region-country-dialog) button:is(:hover,:active,:focus-visible){background:#000!important;color:#fff!important;border-color:#000!important;text-decoration:none}
body[data-navigation-demo] :is(.dark,.hero) .button:is(:hover,:active,:focus-visible){background:#fff!important;color:#000!important;border-color:#fff!important}
/* Bring the first content section closer to each page opening. */
body[data-navigation-demo] .page-top{padding-bottom:24px}
body[data-navigation-demo] .page-top+.section{padding-top:40px}
body[data-navigation-demo][data-page="contact"] .page-top{padding-bottom:30px}
body[data-navigation-demo][data-page="contact"] .page-top+.section{padding-top:52px}
body[data-navigation-demo][data-page="home"] .intro{padding-top:72px}
@media(max-width:750px){body[data-navigation-demo] .page-top{padding-bottom:22px}body[data-navigation-demo] .page-top+.section{padding-top:30px}body[data-navigation-demo][data-page="contact"] .page-top{padding-bottom:24px}body[data-navigation-demo][data-page="contact"] .page-top+.section{padding-top:38px}body[data-navigation-demo][data-page="home"] .intro{padding-top:54px}}
body[data-navigation-demo] #site-language{width:124px;min-width:124px;padding:9px 12px;border:1px solid #000;border-radius:5px;background:#fff;color:#000;transition:background .18s,color .18s;cursor:pointer}
body[data-navigation-demo] #site-language:is(:hover,:active,:focus-visible){background:#000!important;color:#fff!important;border-color:#000!important}
body[data-navigation-demo] #site-language option{background:#fff;color:#000}
@media(max-width:620px){body[data-navigation-demo] #site-language{width:116px;min-width:116px}}

#services .service-basis{margin:30px 0 28px;font-size:17px;line-height:1.6;max-width:920px}
#services .plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:920px;gap:24px;margin-top:0;align-items:stretch}
#services .plan{width:100%;min-width:0;height:100%;padding:28px;box-sizing:border-box}
@media(max-width:750px){#services .plan-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:1fr}#services .plan{padding:24px}}

/* Equal outer dimensions and consistent internal alignment. */
#services .plan-grid{grid-auto-rows:1fr;align-items:stretch}
#services .plan{display:grid;grid-template-rows:auto auto auto 1fr auto;align-content:stretch;min-height:440px;margin:0}
#services .plan>.eyebrow{margin:0 0 20px;line-height:1.5}
#services .plan>h2{margin:0 0 22px;line-height:1.4}
#services .plan>p:not(.eyebrow){margin:0 0 20px;min-height:3.2em;line-height:1.6}
#services .plan>ul{margin:12px 0 24px}
body[data-navigation-demo] #services .plan>.button{justify-self:start;align-self:end;margin:0}
/* Keep the language selector light in every interaction state. */
body[data-navigation-demo] #site-language,body[data-navigation-demo] #site-language:is(:hover,:active,:focus,:focus-visible){background:#fff!important;color:#222!important;border-color:#bbb!important;transition:none}
body[data-navigation-demo] #site-language option{background:#fff;color:#222}
/* Regional controls match the company logos' visual scale. */
body[data-navigation-demo] .region-button{width:132px;max-width:100%;height:68px;min-height:68px;padding:10px 12px;box-sizing:border-box}
body[data-navigation-demo] .region-button-name{font-size:16px;line-height:1.2}
body[data-navigation-demo] .region-button-link{font-size:10px;line-height:1.3;gap:8px;margin-top:5px}
body[data-navigation-demo] .region-button-link>span{font-size:14px}
@media(max-width:750px){body[data-navigation-demo] .region-button{width:132px;max-width:100%;padding:10px}body[data-navigation-demo] .region-button-name{font-size:15px}}
/* The final content band meets the footer divider on every page. */
body[data-navigation-demo] main>section:last-child{margin-bottom:0}
body[data-navigation-demo][data-page="job-seekers"] #candidate-conversations{margin-bottom:0;padding-top:48px;padding-bottom:48px}
@media(max-width:750px){body[data-navigation-demo][data-page="job-seekers"] #candidate-conversations{padding-top:38px;padding-bottom:38px}}
/* Center the careers action beside the heading and description together. */
@media(min-width:751px){body[data-navigation-demo] .careers-feature-only .feature h2.eyebrow{grid-column:1;grid-row:1}body[data-navigation-demo] .careers-feature-only .feature p{grid-column:1;grid-row:2}body[data-navigation-demo] .careers-feature-only .feature>.button{grid-column:2;grid-row:1 / span 2;align-self:center;justify-self:end;margin:0}}

#services .service-scope-note{max-width:920px;margin:28px 0 0;font-size:15px;line-height:1.6;font-weight:400}
/* A shorter transition from specialisms to job search. */
body[data-navigation-demo][data-page="job-seekers"] .careers-specialisms{padding-bottom:40px}
@media(max-width:750px){body[data-navigation-demo][data-page="job-seekers"] .careers-specialisms{padding-bottom:30px}}

/* Preserve regional sequence down the first column, then down the second. */
body[data-navigation-demo] .region-country-list{grid-auto-flow:column;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(var(--country-rows),auto)}
@media(max-width:390px){body[data-navigation-demo] .region-country-list{grid-auto-flow:row;grid-template-columns:minmax(0,1fr);grid-template-rows:none}}
/* Company logos open details without a filled hover background. */
body[data-navigation-demo] .experience-company-button,body[data-navigation-demo] .experience-company-button:is(:hover,:active,:focus-visible){background:transparent!important;color:inherit!important;border-color:transparent!important;box-shadow:none;cursor:pointer}
body[data-navigation-demo] .experience-company-button:is(:hover,:active,:focus-visible) .experience-logo-art{background:transparent;border-radius:0}

/* Preserve the original service-section layout and full image dimensions. */
.service-row .service-graphic,body[data-navigation-demo] .service-row .service-graphic,body[data-navigation-demo] .service-row.reverse .service-graphic{width:100%;height:355px;object-fit:contain;object-position:center;transform:none!important;clip-path:none!important;max-width:100%;}
body[data-navigation-demo] .service-row.reverse .service-copy{transform:none!important;}
.plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:750px){.service-row .service-graphic,body[data-navigation-demo] .service-row .service-graphic{height:auto;max-height:355px;object-fit:contain}.plan-grid{grid-template-columns:1fr}}

/* Final review: three services aligned in one row on desktop */
@media (min-width:751px){#services .plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1120px;gap:16px}#services .plan{min-width:0;padding:22px 18px}#services .plan h2{font-size:clamp(19px,2vw,25px);overflow-wrap:normal}#services .plan .button{font-size:12px;padding:12px 10px}}
@media (max-width:750px){#services .plan-grid{grid-template-columns:1fr}}
/* Country flags stay visible under regional headings. */
.reach-flag{display:inline-block;min-width:1.6em;font-size:18px;line-height:1.3;vertical-align:middle}

/* Review adjustments: consistent text/photo geometry across all three homepage services. */
@media(min-width:751px){
 body[data-navigation-demo] .service-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:28px;align-items:center;min-height:405px;padding-top:18px;padding-bottom:30px}
 body[data-navigation-demo] .service-row .service-copy{width:100%;max-width:440px;align-self:center;justify-self:center;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:355px}
 body[data-navigation-demo] .service-row .service-graphic{display:block;width:100%;height:355px;object-fit:cover;object-position:center center;align-self:center;justify-self:center}
 body[data-navigation-demo] .service-row.reverse .service-copy{order:2}
}
/* Employer cards: preserve three equal columns, keep the short service titles on one line where space permits. */
@media(min-width:751px){
 #services .plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
 #services .plan{padding:20px 14px}
 #services .plan h2{font-size:clamp(17px,1.8vw,23px);letter-spacing:0;white-space:nowrap}
 #services .plan .eyebrow{font-size:11px;letter-spacing:.06em}
 #services .plan ul{font-size:14px}
}
@media(min-width:751px) and (max-width:960px){#services .plan h2{font-size:16px}}

/* Review correction: increase the space between the Permanent Placement image and text ONLY.
   The image stays in the left grid column; the copy is moved inward in the right column. */
@media(min-width:751px){
 body[data-navigation-demo] .service-row.reverse .service-copy{padding-left:38px!important;box-sizing:border-box}
}
@media(max-width:750px){body[data-navigation-demo] .service-row.reverse .service-copy{padding-left:0!important}}

/* Review: shift the entire Permanent Placement copy block, including its button,
   away from the image while retaining the established photo/grid alignment. */
@media(min-width:751px){
 body[data-navigation-demo] .service-row.reverse .service-copy{
  position:relative;left:22px;
 }
}
@media(max-width:750px){
 body[data-navigation-demo] .service-row.reverse .service-copy{left:auto}
}

/* About Us: modestly reduce the gap between Our Story photo and copy. */
@media(min-width:751px){body[data-navigation-demo][data-page="about"] .split-band .image-pair{column-gap:32px}}

/* Employers pricing statement: consistent with existing content width */
.service-pricing-model { margin: 28px 0 0; max-width: 820px; }
.service-pricing-model h3 { font-size: 1.15rem; margin: 0 0 10px; }
.service-pricing-model p { margin: 0; line-height: 1.65; }

/* Agency quick links: three proportional, unobtrusive actions. */
.bds-quick-links{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:19;display:flex;flex-direction:column;width:154px;background:#080808;color:#fff;box-shadow:0 3px 14px #0003;border-radius:6px 0 0 6px;overflow:hidden}
.bds-quick-links a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:53px;padding:12px 11px;font-size:12px;line-height:1.3;color:#fff;text-decoration:none;border-bottom:1px solid #ffffff35}
.bds-quick-links a:last-child{border-bottom:0}
.bds-quick-links a span{font-size:16px;flex-shrink:0}
.bds-quick-links a:hover,.bds-quick-links a:focus-visible{background:#303030;text-decoration:none}
@media(max-width:1100px){.bds-quick-links{top:auto;bottom:0;left:0;right:0;transform:none;width:100%;flex-direction:row;border-radius:0;z-index:21}.bds-quick-links a{flex:1;min-width:0;justify-content:center;text-align:center;border-bottom:0;border-right:1px solid #ffffff35;min-height:55px}.bds-quick-links a:last-child{border-right:0}body{padding-bottom:55px}}
@media(max-width:480px){.bds-quick-links a{font-size:10px;padding:10px 5px;gap:3px}.bds-quick-links a span{font-size:12px}}

/* Employers: align bullet-list starts across the three desktop service cards.
   Reserve a consistent description row; preserve all text and mobile sizing. */
@media (min-width:751px){
  #services .plan-grid > .plan{grid-template-rows:auto auto minmax(5.2em,auto) 1fr auto;}
  #services .plan-grid > .plan > p:not(.eyebrow){min-height:0;}
}

/* Keep the three quick links as slim, vertically stacked side tabs at every viewport width.
   Override the former tablet/mobile bottom navigation without changing other cards. */
.bds-quick-links{position:fixed;top:50%;bottom:auto;left:auto;right:0;transform:translateY(-50%);width:132px;display:flex;flex-direction:column;border-radius:6px 0 0 6px;z-index:21;}
.bds-quick-links a{flex:0 0 auto;box-sizing:border-box;min-width:0;min-height:49px;padding:10px 9px;justify-content:space-between;text-align:left;border-right:0;border-bottom:1px solid #ffffff35;font-size:11px;line-height:1.3;}
.bds-quick-links a:last-child{border-bottom:0;}
.bds-quick-links a span{font-size:13px;}
@media(max-width:1100px){body{padding-bottom:0;}}
@media(max-width:600px){.bds-quick-links{width:112px;}.bds-quick-links a{font-size:10px;min-height:46px;padding:9px 7px;gap:4px;}.bds-quick-links a span{font-size:12px;}}

/* Final correction: genuine rotated-text vertical edge tabs, not horizontal labels. */
.bds-quick-links{
 position:fixed;right:0;left:auto;top:50%;bottom:auto;
 transform:translateY(-50%);width:auto;height:auto;
 display:flex;flex-direction:row;align-items:stretch;gap:0;
 background:transparent;box-shadow:none;border-radius:0;overflow:visible;z-index:21;
}
.bds-quick-links a{
 box-sizing:border-box;display:flex;flex:0 0 36px;
 width:36px;height:154px;min-width:36px;min-height:0;
 padding:12px 8px;align-items:center;justify-content:center;
 writing-mode:vertical-rl;text-orientation:mixed;
 transform:rotate(180deg);
 white-space:nowrap;text-align:center;
 font-size:12px;line-height:1.15;font-weight:500;
 color:#fff;background:#080808;
 border:0;border-left:1px solid #ffffff35;
 border-radius:0 0 5px 5px;
}
.bds-quick-links a:last-child{border:0;}
.bds-quick-links a span{display:none;}
.bds-quick-links a:hover,.bds-quick-links a:focus-visible{background:#303030;}
@media(max-width:600px){
 .bds-quick-links{right:0;left:auto;top:50%;bottom:auto;transform:translateY(-50%);width:auto;flex-direction:row;}
 .bds-quick-links a{flex:0 0 29px;width:29px;min-width:29px;height:132px;min-height:0;padding:9px 5px;font-size:10px;}
 .bds-quick-links a span{display:none;}
}

/* Side-by-side vertical edge tabs: neutral black/white only, with deliberate spacing. */
.bds-quick-links{position:fixed;right:0;left:auto;top:50%;bottom:auto;transform:translateY(-50%);display:flex;flex-direction:row;align-items:stretch;gap:4px;width:auto;height:auto;background:transparent;box-shadow:none;border-radius:0;overflow:visible;z-index:21;}
.bds-quick-links a,.bds-quick-links a:last-child{box-sizing:border-box;flex:0 0 38px;width:38px;min-width:38px;height:166px;min-height:0;padding:12px 8px;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);white-space:nowrap;text-align:center;font-size:12px;line-height:1.2;font-weight:600;letter-spacing:.15px;color:#fff;background:#080808;border:1px solid #080808;border-radius:5px;box-shadow:0 2px 8px #0002;text-decoration:none;transition:background-color .15s,color .15s;}
.bds-quick-links a:hover,.bds-quick-links a:focus-visible{background:#fff;color:#000;border-color:#080808;text-decoration:none;outline-offset:2px;}
.bds-quick-links a span{display:none;}
@media(max-width:600px){.bds-quick-links{right:0;left:auto;top:50%;bottom:auto;transform:translateY(-50%);width:auto;flex-direction:row;gap:3px}.bds-quick-links a,.bds-quick-links a:last-child{flex:0 0 29px;width:29px;min-width:29px;height:151px;min-height:0;padding:9px 5px;font-size:10px;letter-spacing:0;}body{padding-bottom:0;}}

/* Final right-edge quick links: ONE narrow column, three separated vertical tabs. */
.bds-quick-links{
 position:fixed!important;right:0!important;left:auto!important;top:50%!important;bottom:auto!important;
 transform:translateY(-50%)!important;display:flex!important;flex-direction:column!important;
 align-items:flex-end!important;gap:9px!important;width:34px!important;height:auto!important;
 background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;
 overflow:visible!important;z-index:30!important;
}
.bds-quick-links a,.bds-quick-links a:last-child{
 display:flex!important;flex:0 0 auto!important;box-sizing:border-box!important;
 width:34px!important;min-width:34px!important;height:143px!important;min-height:143px!important;
 margin:0!important;padding:10px 6px!important;align-items:center!important;justify-content:center!important;
 writing-mode:vertical-rl!important;text-orientation:mixed!important;
 white-space:nowrap!important;line-height:1!important;letter-spacing:0!important;
 font-size:11px!important;font-weight:400!important;text-align:center!important;
 color:#fff!important;background:#080808!important;border:1px solid #080808!important;
 border-radius:0 5px 5px 0!important;box-shadow:0 2px 7px #0002!important;text-decoration:none!important;
}
.bds-quick-links a:hover,.bds-quick-links a:focus-visible{
 background:#fff!important;color:#000!important;border-color:#080808!important;
 text-decoration:none!important;
}
.bds-quick-links a span{display:none!important;}
@media(max-width:600px){
 .bds-quick-links{width:29px!important;gap:7px!important;}
 .bds-quick-links a,.bds-quick-links a:last-child{width:29px!important;min-width:29px!important;height:135px!important;min-height:135px!important;font-size:10px!important;padding:8px 4px!important;}
 body{padding-bottom:0!important;}
}

/* Correct reading direction: top-to-bottom vertical text, not upside-down. */
.bds-quick-links a,.bds-quick-links a:last-child{transform:none!important;writing-mode:vertical-rl!important;text-orientation:mixed!important;border-radius:6px 0 0 6px!important;}

/* Requested preview: transparent tabs with black lettering; black with white lettering on hover.
   Preserve the three stacked vertical tabs, their size, spacing and orientation. */
.bds-quick-links a,.bds-quick-links a:last-child{
  background:transparent!important;color:#080808!important;
  border-color:transparent!important;box-shadow:none!important;
}
.bds-quick-links a:hover,.bds-quick-links a:focus-visible{
  background:#080808!important;color:#fff!important;border-color:#080808!important;
}

/* Preserve original service row placement while displaying the supplied full circle graphics without cropping */
.service-row .service-graphic[src="assets/full-cycle.png"],.service-row .service-graphic[src="assets/sourcingandscreening.png"]{object-fit:contain!important;object-position:center!important;clip-path:none!important;transform:none!important;background:#fff!important;}

/* Service circle images: exact formatting from user-supplied BDSDATA-AI reference. */
.service-graphic{width:100%;height:355px;object-fit:cover;object-position:50% 50%}
.service-graphic{height:240px;object-fit:contain}


/* Centre the original service artwork: its source has extra white space below
   the circle, so centre-cropping the whole file was cutting off the top. */
.service-row .service-graphic{width:100%;height:355px;aspect-ratio:auto;object-fit:cover;object-position:center 22%;align-self:center;justify-self:center;margin-top:0}
.service-row .service-graphic{width:min(100%,380px);height:300px;aspect-ratio:auto;object-fit:cover;object-position:center 22%;margin-top:0}
body[data-navigation-demo] .service-row:not(.reverse) .service-graphic{transform:translateX(calc(-100% + 300px));clip-path:inset(0 24.5%)}

 body[data-navigation-demo] .service-row.reverse .service-graphic{transform:translateX(-24.576271%);clip-path:inset(0 24.5%)}

.service-row .service-graphic[src="assets/sourcing.png"],
.service-row .service-graphic[src="assets/screening.png"]{
  object-fit:cover!important;
  object-position:center 22%!important;
  clip-path:inset(0 24.5%)!important;
}
body[data-navigation-demo] .service-row:not(.reverse) .service-graphic[src="assets/sourcing.png"]{
  transform:translateX(calc(-100% + 300px))!important;
}
body[data-navigation-demo] .service-row.reverse .service-graphic[src="assets/screening.png"]{
  transform:translateX(-24.576271%)!important;
}

/* Requested final adjustments: sourcing text alignment and employer service box widths only. */
@media (min-width: 751px) {
  .service-row.reverse .service-copy { position:relative; left:-58px; }
  #services .plan-grid { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:1120px; gap:28px; }
}
@media (max-width: 750px) {
  .service-row.reverse .service-copy { left:auto; }
  #services .plan-grid { grid-template-columns:minmax(0,1fr); }
}

/* Requested homepage alignment: move only the two circles and sourcing copy.
   Keep circle sizes, cropping, typography, and all other styling unchanged. */
@media (min-width: 751px) {
  body[data-navigation-demo] .service-row:not(.reverse) .service-graphic[src="assets/sourcing.png"] {
    transform: translateX(-67px) !important;
  }
  body[data-navigation-demo] .service-row.reverse .service-graphic[src="assets/screening.png"] {
    transform: translateX(-87px) !important;
  }
  .service-row.reverse .service-copy,
  body[data-navigation-demo] .service-row.reverse .service-copy {
    left: -67px !important;
    padding-left: 0 !important;
    transform: none !important;
  }
  #services .plan-grid {
    max-width: 840px !important;
  }
}

/* Precise two-column alignment: each circle's visible left edge shares the
   exact same grid-column start as the text in the opposite row. */
@media (min-width: 751px) {
 body[data-navigation-demo][data-page="home"] .service-row .service-copy {
   justify-self: start !important;
   position: static !important;
   left: auto !important;
   transform: none !important;
   padding-left: 0 !important;
   margin-left: 0 !important;
   max-width: 440px !important;
 }
 body[data-navigation-demo][data-page="home"] .service-row .service-graphic[src="assets/sourcing.png"],
 body[data-navigation-demo][data-page="home"] .service-row .service-graphic[src="assets/screening.png"] {
   width: 380px !important;
   max-width: none !important;
   justify-self: start !important;
   margin-left: -93.1px !important;
   transform: none !important;
   clip-path: inset(0 24.5%) !important;
 }
}

/* Restore original BDSDATA-AI graphic dimensions; retain the corrected column alignment. */
@media(min-width:751px){
 body[data-navigation-demo][data-page="home"] .service-row .service-graphic[src="assets/sourcing.png"],
 body[data-navigation-demo][data-page="home"] .service-row .service-graphic[src="assets/screening.png"]{
   width:100%!important;max-width:100%!important;height:355px!important;
   object-fit:cover!important;object-position:center 22%!important;
   margin-left:-24.5%!important;transform:none!important;
   clip-path:inset(0 24.5%)!important;
 }
}

/* Final single adjustment: raise only the Full-Cycle Recruiting circle vertically.
   Preserve its original width, height, horizontal position, and all other styling. */
@media (min-width:751px){
 body[data-navigation-demo][data-page="home"] .service-row:not(.reverse) .service-graphic[src="assets/sourcing.png"]{
   position:relative!important;top:-32px!important;
 }
}

/* Both service images: their visible artwork must start no higher than the
   corresponding heading. Preserve existing widths and horizontal alignment. */
@media (min-width:751px) {
 body[data-navigation-demo][data-page="home"] .service-row .service-copy {
   align-self:start!important;
   justify-content:flex-start!important;
   min-height:0!important;
 }
 body[data-navigation-demo][data-page="home"] .service-row .service-graphic[src="assets/sourcing.png"],
 body[data-navigation-demo][data-page="home"] .service-row .service-graphic[src="assets/screening.png"] {
   align-self:start!important;
   position:relative!important;
   top:0!important;
 }
}

/* Vertical-only adjustment: center both service images against the complete
   heading-to-Read-More text block. No horizontal or image-size changes. */
@media (min-width:751px) {
 body[data-navigation-demo][data-page="home"] .service-row { align-items:center!important; }
 body[data-navigation-demo][data-page="home"] .service-row .service-copy {
   align-self:center!important; justify-content:center!important; min-height:0!important;
 }
 body[data-navigation-demo][data-page="home"] .service-row .service-graphic[src="assets/sourcing.png"],
 body[data-navigation-demo][data-page="home"] .service-row .service-graphic[src="assets/screening.png"] {
   align-self:center!important; top:0!important; margin-top:0!important;
 }
}

/* Keep the approved image positions and left-edge alignment unchanged.
   Allow the sourcing paragraph to use the same full copy-column width,
   reducing unnecessary line wrapping and visual distance from its image. */
@media (min-width:751px) {
 body[data-navigation-demo][data-page="home"] .service-row.reverse .service-copy p {
   max-width:440px!important;
 }
}

/* Minimal homepage refinement: keep original video and styling; move both red CTAs below it. */
body[data-page="home"] .homepage-offering-strip{display:flex;justify-content:center;align-items:center;padding:28px 5% 8px;background:#fff}
body[data-page="home"] .homepage-offering-strip .actions{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;width:100%;margin:0}
body[data-page="home"] .homepage-offering-strip .actions .button{background:#c91e25!important;color:#fff!important;border:1px solid #c91e25!important;border-radius:6px;min-width:185px;text-align:center;font-weight:600}
body[data-page="home"] .homepage-offering-strip .actions .button:hover{background:#a4161c!important;border-color:#a4161c!important}
@media(max-width:600px){body[data-page="home"] .homepage-offering-strip .actions .button{min-width:140px}}

/* Two existing red buttons returned to the video, with the original layout intact. */
body[data-page="home"] .hero-offering-actions{display:flex!important;gap:14px;flex-wrap:wrap;margin-top:30px!important;position:relative;z-index:4}
body[data-page="home"] .hero-offering-actions .button{background:#c91e25!important;color:#fff!important;border:1px solid #c91e25!important;border-radius:6px;min-width:165px;justify-content:center;font-weight:600}
body[data-page="home"] .hero-offering-actions .button:hover{background:#a4161c!important}
body[data-page="home"] .hero.impact-hero .impact-content{padding-bottom:110px}
@media(max-width:600px){body[data-page="home"] .hero-offering-actions .button{min-width:130px;padding:10px 12px}}

/* Visible text label for the standard language dropdown. */
.language-control{display:flex;align-items:center;gap:7px;max-width:none}.language-visible-label{display:inline!important;position:static!important;width:auto!important;height:auto!important;clip:auto!important;overflow:visible!important;white-space:nowrap!important;font-size:13px;font-weight:500}.language-control select{flex:0 0 auto}


/* Uniform opening layout: About Us, Our Services, and Job Board */
body[data-navigation-demo] .page-top > .image-pair {
  align-items:start;
}
body[data-navigation-demo] .page-top > .image-pair > div:first-child {
  align-self:start;
}
body[data-navigation-demo] .page-top > .image-pair .eyebrow {
  font-family:Montserrat,Arial,sans-serif;
  font-size:14px;
  line-height:1.5;
  font-weight:400;
  letter-spacing:.16em;
  margin:0 0 18px;
}
body[data-navigation-demo] .page-top > .image-pair .lead {
  font-family:Montserrat,Arial,sans-serif;
  font-size:22px;
  line-height:1.55;
  font-weight:400;
  margin:0;
}
body[data-navigation-demo] .page-top > .image-pair .editorial-image,
body[data-navigation-demo] .page-top > .image-pair .employers-neon-engineer,
body[data-navigation-demo] .page-top > .image-pair .employers-neon-engineer img {
  width:100%;
  height:auto;
  aspect-ratio:3/2;
  object-fit:cover;
}
@media(max-width:750px){
 body[data-navigation-demo] .page-top > .image-pair .lead {font-size:20px;}
}

/* Single consistent top-section specification for About Us and Our Services. */
@media(min-width:751px){
body[data-navigation-demo][data-page="about"] .page-top,
body[data-navigation-demo][data-page="employers"] .page-top{padding:60px 0 36px!important}
body[data-navigation-demo][data-page="about"] .page-top>.image-pair,
body[data-navigation-demo][data-page="employers"] .page-top>.image-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:44px!important;align-items:start!important}
}
body[data-navigation-demo][data-page="about"] .page-top .eyebrow,
body[data-navigation-demo][data-page="employers"] .page-top .eyebrow{font-family:inherit!important;font-size:14px!important;line-height:1.5!important;font-weight:400!important;letter-spacing:.16em!important;margin:0 0 18px!important}
body[data-navigation-demo][data-page="about"] .page-top .lead,
body[data-navigation-demo][data-page="employers"] .page-top .lead{font-family:inherit!important;font-size:24px!important;line-height:1.6!important;font-weight:400!important;margin:0!important}
body[data-navigation-demo][data-page="about"] .page-top .editorial-image,
body[data-navigation-demo][data-page="employers"] .page-top .employers-neon-engineer{width:100%!important;height:auto!important;aspect-ratio:3/2!important;overflow:hidden!important;display:block!important}
body[data-navigation-demo][data-page="employers"] .page-top .employers-neon-engineer img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}

/* Employer photo: same aspect ratio and fixed display geometry as About Us top photo. */
body[data-navigation-demo][data-page="employers"] .page-top .employers-neon-engineer,
body[data-navigation-demo][data-page="employers"] .page-top .employers-neon-engineer img{
  display:block!important;width:100%!important;aspect-ratio:3/2!important;
  height:auto!important;min-height:0!important;max-height:none!important;
  object-fit:cover!important;object-position:center!important;
  transform:none!important;overflow:hidden!important;
}


/* Exact photo frames: no baked-in white border, black sidebars or stretching. */
body[data-navigation-demo][data-page="employers"] .page-top .employers-neon-engineer{
  position:relative!important;width:100%!important;aspect-ratio:3/2!important;
  height:auto!important;overflow:hidden!important;background:transparent!important;
  padding:0!important;border:0!important;
}
body[data-navigation-demo][data-page="employers"] .page-top .employers-neon-engineer img{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  max-width:none!important;object-fit:cover!important;object-position:center!important;
  transform:none!important;border:0!important;padding:0!important;
}

/* Scoped pricing-choice preview */
.engagement-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}
.engagement-choices>div{padding:22px;border:1px solid #d8d8d8;background:#fff}
.engagement-choices strong{display:block;font-size:19px;margin-bottom:8px}
.engagement-choices p{line-height:1.55}
@media(max-width:700px){.engagement-choices{grid-template-columns:1fr}}

/* Clear, consultation-led pricing within each service card */
#services .plan>p:not(.eyebrow){flex:1}
#services .service-rates{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 24px;padding-top:18px;border-top:1px solid #ddd}
#services .service-rates>div{display:flex;flex-direction:column;gap:4px}
#services .service-rates strong{font-size:clamp(23px,2.4vw,32px);line-height:1.2;white-space:nowrap}
#services .service-rates span{font-size:12px;color:#555}
#services .service-price-note{margin-top:22px}
@media(max-width:480px){#services .service-rates{gap:8px}#services .service-rates strong{font-size:23px}}

/* Review adjustment: slightly narrower centered service pricing cards. */
@media(min-width:751px){
 #services .plan-grid{max-width:990px!important;gap:22px!important;margin-left:auto;margin-right:auto;grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Hourly-only service cards and consistent section spacing */
#services .service-rates{grid-template-columns:1fr;gap:0;margin:18px 0 20px;padding-top:16px}
#services .service-rates strong{font-size:clamp(24px,2.4vw,31px)}
body[data-navigation-demo][data-page="employers"] #services{padding-bottom:32px!important}
body[data-navigation-demo][data-page="employers"] #services + .split-band{padding-top:38px!important}
#services .service-price-note{margin-top:16px;margin-bottom:0}
@media(max-width:750px){body[data-navigation-demo][data-page="employers"] #services{padding-bottom:28px!important}}

/* Service cards: narrower, with comfortable spacing between cards */
@media(min-width:751px){
  body[data-page="employers"] #services .plan-grid{
    max-width:860px!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:46px!important;
    margin-left:auto!important;margin-right:auto!important;
  }
}
#services .service-rates strong{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}
#services .service-rates .rate-currency{font-size:14px;color:inherit;font-weight:600;letter-spacing:.03em}
#services .service-rates .rate-unit{font-size:16px;color:inherit;font-weight:500}
@media(max-width:750px){body[data-page="employers"] #services .plan-grid{gap:24px!important}}

/* Requested refinement: align cards with the left content column, add
   breathing room below the HR/TA paragraph, and make the rate note readable. */
@media (min-width:751px) {
 body[data-page="employers"] #services .plan-grid {
   max-width:860px!important;
   margin-left:0!important;
   margin-right:auto!important;
   gap:46px!important;
   margin-top:38px!important;
 }
}
@media (max-width:750px) {
 body[data-page="employers"] #services .plan-grid { margin-top:30px!important; }
}
body[data-page="employers"] #services .service-price-note {
 font-size:17px!important;
 line-height:1.65!important;
 color:#252525!important;
 margin-top:26px!important;
 max-width:920px;
}

/* November 10 review: clearer services hierarchy and stronger service cards. */
body[data-page="employers"] #services .services-pricing-heading{font-size:32px;line-height:1.35;margin:32px 0 0;letter-spacing:.04em;font-weight:400}
body[data-page="employers"] #services .plan-grid{margin-top:24px!important}
body[data-page="employers"] #services .plan{border:1.5px solid #111!important;border-top:4px solid #111!important;background:#fff!important;padding:30px!important;min-height:370px!important}
body[data-page="employers"] #services .plan h2{font-weight:600!important;line-height:1.25!important}
body[data-page="employers"] #services .plan .service-rates strong{font-size:clamp(29px,3vw,38px);font-weight:700}
body[data-page="employers"] #services .plan .rate-currency,body[data-page="employers"] #services .plan .rate-unit{font-size:14px;font-weight:500}
body[data-page="employers"] #services .service-price-note{margin-top:24px!important}
@media(max-width:750px){body[data-page="employers"] #services .services-pricing-heading{font-size:28px;margin-top:26px}body[data-page="employers"] #services .plan{padding:24px!important;min-height:0!important}}

/* Consistent section heading and cohesive pricing section */
body[data-page="employers"] #services .services-pricing-heading{font-size:14px!important;line-height:1.5!important;font-weight:400!important;letter-spacing:.16em!important;text-transform:uppercase!important;margin:36px 0 18px!important}
body[data-page="employers"] #services .services-pricing-intro{font-size:17px;line-height:1.7;margin:0 0 18px;max-width:740px}
body[data-page="employers"] #services .plan-grid{margin-top:22px!important}
body[data-page="employers"] #services .service-price-note{font-size:17px!important;line-height:1.65!important;margin-top:24px!important;max-width:920px}
/* Match the three main page introductions */
body[data-page="employers"] .page-top .eyebrow,body[data-page="about"] .page-top .eyebrow{font-size:14px!important;font-weight:400!important;letter-spacing:.16em!important;text-transform:uppercase!important}
body[data-page="employers"] .page-top .lead,body[data-page="about"] .page-top .lead{font-size:24px!important;line-height:1.6!important;font-weight:400!important}

/* Equal-height recruitment service cards: descriptions may differ in length. */
body[data-page="employers"] #services .plan-grid{align-items:stretch!important}
body[data-page="employers"] #services .plan{display:flex!important;flex-direction:column!important}
body[data-page="employers"] #services .plan>p:not(.eyebrow){flex:1 1 auto!important}
body[data-page="employers"] #services .plan .service-rates{margin-top:auto!important}

/* Latest review: align service CTAs with hourly prices; subordinate supporting price note. */
body[data-page="employers"] #services .plan {align-items:stretch!important}
body[data-page="employers"] #services .plan > button[data-plan] {align-self:flex-start!important;margin-left:0!important;margin-right:auto!important}
body[data-page="employers"] #services .service-price-note {font-size:15px!important;line-height:1.6!important;font-weight:400!important;margin-top:32px!important;max-width:780px!important;color:#555!important}
body[data-page="employers"] #pricing {scroll-margin-top:110px}

/* Pricing review: supporting note matches How We Work step body text (16px). */
body[data-page="employers"] #services .service-price-note{font-size:16px!important;}

/* Homepage job board: existing text-link treatment, vertically stacked */
body[data-page="home"] .careers-feature-only .feature {padding-left:clamp(18px,3vw,48px)}
body[data-page="home"] .careers-feature-only .feature .home-post-job-link {display:block;width:fit-content;margin-top:14px}

/* Homepage Job Board: keep both actions in one vertically spaced column. */
body[data-navigation-demo] .careers-feature-only .feature .home-job-board-actions{grid-column:2;grid-row:1 / span 2;display:flex;flex-direction:column;align-items:flex-start;justify-self:end;gap:12px;min-width:230px}
body[data-navigation-demo] .careers-feature-only .feature .home-job-board-actions .button{position:static;display:inline-flex;justify-self:auto;margin:0;min-width:230px;box-sizing:border-box;white-space:nowrap}
@media(max-width:750px){body[data-navigation-demo] .careers-feature-only .feature .home-job-board-actions{grid-column:1;grid-row:auto;justify-self:start;min-width:0}}

/* Footer navigation: service links left, company links right. */
.footer-nav-groups{display:grid;grid-template-columns:1fr 1fr;gap:20px 30px}.footer-nav-groups .footer-links{min-width:0}@media(max-width:480px){.footer-nav-groups{gap:12px}}

/* Five-link footer navigation in one left-aligned column. */
.footer-grid > div:first-child > .footer-links{align-items:flex-start;text-align:left}

/* Align homepage Job Board content with other section text, without changing links. */
body[data-page="home"] .careers-feature-only .feature{padding-left:0!important;}
body[data-page="home"] .careers-feature-only .feature .home-job-board-actions{justify-self:start!important;}

body[data-page="employers"] .services-job-post-note{margin-top:20px;font-size:16px;line-height:1.6}body[data-page="employers"] .services-job-post-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}

body[data-page="employers"] .services-job-post-note{margin:24px 0 0;padding:16px 20px;border-left:3px solid #cf1d2c;background:#f6f6f6;color:#171717;font-size:17px;font-weight:500;line-height:1.55;}
body[data-page="employers"] .services-job-post-note a{color:#b81928;font-weight:700;text-decoration:underline;text-underline-offset:3px;}
