/* ZYVAROX / October 2026. Shared finishing system and signature homepage. */
:root { --paper:#f6f4ef; --white:#fffefa; --muted:#56636d; --forest:#142b3b; --deep:#0d1c28; --line:#ccd2d5; --copper:#945033; }
.company-assurance { background:var(--paper); border-bottom:1px solid var(--line); }
.assurance-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding-block:36px; }
.assurance-grid>a { padding:12px 32px; text-decoration:none; color:var(--ink); border-right:1px solid var(--line); }
.assurance-grid>a:first-child { padding-left:0; }
.assurance-grid>a:last-child { border-right:0; }
.assurance-grid>a>span:first-child { font-size:10px; letter-spacing:1.2px; color:var(--muted); }
.assurance-grid strong { display:block; font-size:20px; font-weight:550; margin-block:12px; }
.assurance-grid p { font-size:13px; line-height:1.8; max-width:310px; }
.assurance-link { display:inline-flex; align-items:center; min-height:44px; font-size:12px; color:var(--copper); text-decoration:underline; text-underline-offset:4px; }
.enquiry-extra { margin-block:26px; padding-block:20px; border-block:1px solid var(--line); }
.enquiry-extra summary { cursor:pointer; min-height:44px; font-size:15px; font-weight:600; }
.enquiry-extra summary span { font-weight:400; color:var(--muted); }
.enquiry-extra>p { font-size:13px; margin-bottom:22px; }
.enquiry-next { margin-block:28px; padding-top:24px; border-top:1px solid var(--line); }
.enquiry-next h3 { font-size:21px; margin-bottom:12px; }
.delivery-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; margin-block:25px; }
.delivery-status { font-size:13px; line-height:1.7; max-width:320px; }
.send-online { cursor:pointer; }
.send-online:disabled { opacity:.65; cursor:wait; transform:none; }
.delivery-error { padding:16px; margin-bottom:20px; background:#fff1ed; color:#8c251c; border:1px solid #dba79e; font-size:14px; line-height:1.7; }
.alternative-delivery { padding-top:18px; border-top:1px solid var(--line); }
.delivery-receipt { padding-block:20px; }
.delivery-receipt h2 { max-width:540px; }
.delivery-receipt>p { font-size:15px; margin-block:18px; }
.receipt-reference { overflow-wrap:anywhere; font-family:ui-monospace,monospace; }
.contact-aside a:focus-visible,.site-header a:focus-visible,.site-header button:focus-visible { outline-color:#efb38b; }
@media(max-width:700px) { .editing-enquiry .quick-actions { visibility:hidden; pointer-events:none; } }
@media(max-width:700px) {
  .assurance-grid { grid-template-columns:1fr; padding-block:18px; }
  .assurance-grid>a,.assurance-grid>a:first-child,.assurance-grid>a:last-child { padding:22px 0; border-right:0; border-bottom:1px solid var(--line); }
  .assurance-grid>a:last-child { border-bottom:0; }
  .assurance-grid p { max-width:none; }
}
html { scroll-padding-top:100px; }
main:focus { outline:none; }
.section { padding-block:96px; }
h2 { font-size:clamp(32px,3.2vw,48px); line-height:1.17; font-weight:550; letter-spacing:-1.8px; text-wrap:balance; }
h3 { text-wrap:balance; }
.eyebrow,.section-id { font-size:11px; letter-spacing:1.35px; }
.btn,.text-link { font-size:13px; }
.btn { min-height:52px; border-radius:2px; padding-inline:23px; }
.text-link { gap:24px; }
.btn:hover { transform:translateY(-1px); }
a:focus-visible,button:focus-visible,summary:focus-visible { outline-color:#a95631; outline-offset:5px; }
.site-header { background:#0d1c28f7; color:#eef2f4; border-bottom:1px solid #344550; backdrop-filter:blur(16px); }
.site-header .wordmark strong { font-size:23px; letter-spacing:2.5px; }
.site-header .wordmark small { color:#c4ced4; letter-spacing:1px; }
.navigation { gap:24px; }
.navigation>a { font-size:12px; font-weight:550; }
.navigation>a[href='/careers/'] { color:#efb38b; }
.navigation .btn { color:#0d1c28; background:#efb38b; border-color:#efb38b; font-size:12px; }
.navigation .btn:hover { background:#f6caaa; }
.site-header :focus-visible { outline-color:#efb38b; }
.brand-mark { border:1px solid #81939f55; }

/* One continuous, photographic first impression. */
.signature-hero { position:relative; isolation:isolate; background:#0d1c28; color:#f6f4ef; overflow:hidden; }
.signature-image { position:absolute; inset:0 0 0 31%; z-index:-3; }
.signature-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:62% 42%; }
.signature-image:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#0d1c28 0%,#0d1c28cc 15%,#0d1c2833 55%,#0d1c281a),linear-gradient(0deg,#0d1c28 0%,transparent 38%,#0d1c284d); }
.signature-grid { position:absolute; z-index:-1; inset:0; opacity:.35; background:linear-gradient(90deg,transparent calc(50% - 1px),#e4e9ec22 50%,transparent calc(50% + 1px)); pointer-events:none; }
.signature-content { min-height:min(790px,calc(100svh - 84px)); display:flex; flex-direction:column; }
.signature-top { display:flex; justify-content:space-between; align-items:center; gap:24px; padding-block:28px; border-bottom:1px solid #ced6db30; }
.signature-top .eyebrow { color:#d5e0e7; margin:0; font-size:10px; }
.signature-top .eyebrow:before { background:#efb38b; }
.signature-index { font-size:9px; letter-spacing:1.8px; color:#c9d5dd; }
.signature-copy { padding:64px 0 60px; }
.signature-slogan { font-size:14px; color:#dbe2e7; margin-bottom:24px; letter-spacing:.15px; }
.signature-copy h1 { font:550 clamp(62px,7.1vw,103px)/1.04 Manrope,Arial,sans-serif; text-transform:none; letter-spacing:-5px; max-width:900px; }
.signature-copy h1 em { font-style:normal; color:#efb38b; }
.signature-description { margin-top:30px; color:#d8e1e7; font-size:16px; line-height:1.85; max-width:520px; }
.signature-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px 32px; margin-top:33px; }
.signature-actions .btn { min-width:186px; }
.signature-secondary { display:flex; align-items:center; gap:22px; font-size:13px; text-decoration:none; min-height:48px; color:#f1f4f5; }
.signature-secondary span { font-size:22px; color:#efb38b; }
.signature-secondary:hover { text-decoration:underline; }
.signature-bottom { margin-top:auto; border-top:1px solid #ced6db30; padding:22px 0 29px; display:flex; gap:30px; justify-content:space-between; align-items:center; }
.signature-bottom>span { font-size:9px; letter-spacing:1.6px; color:#b5c7d1; line-height:1.9; }
.signature-bottom strong { font-size:12px; color:#e1e7eb; letter-spacing:0; font-weight:450; }
.signature-bottom .intro-replay { color:#d4dfe7; margin:0; font-size:11px; }
.signature-bottom .intro-replay:hover { color:#efb38b; }
.signature-caption { text-align:right; font-size:10px; line-height:1.6; color:#aebfc9; padding:0 max(24px,calc((100vw - 1320px)/2)) 15px; }
.signature-hero :focus-visible { outline-color:#efb38b; }

/* Careers is a prominent second destination, with all five roles visible. */
.home-hiring { background:var(--paper); color:var(--ink); padding-block:72px; border-bottom:1px solid var(--line); }
.home-hiring .eyebrow { color:var(--copper); }
.home-hiring-layout { grid-template-columns:1fr 1.07fr; gap:90px; }
.home-hiring-copy h2 { font:550 clamp(58px,6vw,86px)/1.05 Manrope,Arial,sans-serif; text-transform:none; letter-spacing:-4px; }
.home-hiring-copy h2 em { color:var(--copper); }
.home-hiring-copy>p { color:var(--muted); font-size:15px; max-width:390px; margin-block:24px; }
.home-hiring .btn.gold { color:var(--white); background:var(--forest); border-color:var(--forest); }
.home-hiring .btn.gold:hover { background:var(--deep); }
.home-hiring-location { font-size:10px; color:var(--muted); letter-spacing:1.1px; }
.home-hiring-column { border-color:#aebbc4; }
.home-hiring-role { border-color:#ccd2d5; padding-block:18px; gap:24px; }
.home-hiring-role:hover { background:#e8ecee; }
.home-role-number { font-size:10px; color:#607480; }
.home-hiring-role h3 { font-size:25px; }
.home-hiring-role p { font-size:12px; color:var(--muted); margin-top:5px; }
.home-role-arrow { color:var(--copper); }

.principle-layout { display:grid; grid-template-columns:1.2fr 1fr; gap:90px; }
.principle-layout .section-id { margin-bottom:28px; }
.principle-layout h2 { max-width:590px; }
.principle-layout h2 em { color:#697e8c; font-style:normal; }
.principle-detail>p { font-size:15px; line-height:1.9; }
.leadership-proof { margin:25px 0 17px; padding:22px 0; border-block:1px solid var(--line); }
.leadership-proof>span { display:block; font-size:9px; letter-spacing:1.3px; color:var(--muted); }
.leadership-proof strong { display:block; font-size:17px; font-weight:650; margin:12px 0 5px; }
.leadership-proof p { font-size:13px; line-height:1.8; }
.section-top>p,.leadership-heading>div:last-child p { font-size:15px; line-height:1.85; }

/* Service scope stays beside its choice; mobile uses a labelled native picker. */
.mobile-service-picker { display:none; }
.service-layout { gap:56px; grid-template-columns:1fr 1.13fr; }
.service-choice { min-height:70px; font-size:16px; padding-block:21px; }
.service-note { font-size:12px; line-height:1.8; }
.service-preview { min-width:0; }
.service-panel { border:1px solid #ccd5da; border-radius:3px; background:#eef1f2; min-height:0; }
.service-art { height:225px; background:#e5ebee; }
.service-art:before,.service-art:after { color:#556b78; font-size:9px; }
.service-panel-body { padding:27px 32px 25px; }
.service-panel-kicker { color:#526774; font-size:10px; letter-spacing:1.3px; margin-bottom:15px; }
.service-panel h3 { font-size:28px; font-weight:550; }
.service-panel p { font-size:14px; line-height:1.8; margin-bottom:18px; }
.service-scope { list-style:none; padding:0; margin:0 0 25px; display:grid; gap:10px; }
.service-scope li { font-size:13px; line-height:1.6; display:flex; gap:12px; }
.service-scope li:before { content:'+'; color:var(--copper); font-weight:650; }
.service-panel-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px 24px; border-top:1px solid #c6d0d5; padding-top:13px; }
.service-panel .text-link { margin-top:0; }
.service-detail-link { display:inline-flex; align-items:center; min-height:44px; font-size:12px; color:var(--muted); }
.operations .section-top h2 { font-size:clamp(32px,3.4vw,49px); }
.operations-body { gap:72px; }
.ops-list h3 { font-size:28px; }
.ops-list p { font-size:15px; line-height:1.85; }
.operations-image img { height:470px; }
.operations-image figcaption { font-size:10px; }
.digital-feature h2 { font-size:clamp(32px,3.1vw,45px); }
.digital-feature-copy>p,.digital-introduction p { font-size:15px; line-height:1.85; }
.digital-highlights li { font-size:13px; }
.digital-visual-top { font-size:10px; letter-spacing:1px; }
.digital-visual figcaption { font-size:12px; }
.leadership-section { background:var(--white); }
.leader .leader-role { font-size:10px; color:#556c7a; }
.leader-number { font:500 48px/1 Manrope,sans-serif; color:#788d9a; margin-bottom:25px; letter-spacing:-2px; }
.leader h3 { font-size:24px; }
.leader .credential,.leader .bio { font-size:14px; }
.coverage-copy>p { font-size:15px; }
.area-list li { font-size:14px; }
.qualification { font-size:12px!important; }
.faqs summary { font-size:16px; }
.faqs details p { font-size:14px; }
.closing h2 { font:550 clamp(44px,5.3vw,74px)/1.08 Manrope,sans-serif; text-transform:none; letter-spacing:-3px; }
.closing p { font-size:15px; line-height:1.8; }
.closing .eyebrow { font-size:11px; }
.closing .closing-call { font-size:13px; }
.footer-grid p,.footer-bottom { color:#b9c6cf; font-size:12px; }
.footer-heading { color:#efb38b!important; font-size:11px; }
.footer-links a,.footer-contact a { font-size:13px; min-height:38px; }
.footer-brandline { -webkit-text-stroke-color:#4f697b; border-color:#344a59; }
.footer-bottom { border-color:#344a59; font-size:10px; }
.quick-actions { border:1px solid #a5b4be; border-radius:3px; box-shadow:0 5px 24px #0d1c2820; }
.quick-actions a { min-height:50px; font-size:12px; }

/* Internal pages inherit the same calmer typography and larger reading sizes. */
.inner-hero h1 { font:550 clamp(46px,5.5vw,78px)/1.12 Manrope,sans-serif; letter-spacing:-3px; text-transform:none; max-width:1150px; text-wrap:balance; }
.inner-hero { padding-bottom:58px; }
.inner-hero .eyebrow,.breadcrumb { font-size:11px; }
.inner-hero .lead { font-size:17px; line-height:1.85; max-width:760px; }
.service-nav a { font-size:12px; border-color:#b8c6ce; }
.service-detail-visual { background:#e5ebee; }
.service-detail p,.split p,.editorial-row p,.strength-grid p,.value p,.prose p { font-size:15px; line-height:1.85; }
.service-detail li,.training-grid li,.facts>div,.process p { font-size:14px; }
.contact-option p,.contact-aside p,.contact-aside li { font-size:14px; line-height:1.85; }
.contact-aside .fine { font-size:12px; }
.careers-hero h1 { font:550 clamp(48px,5.1vw,75px)/1.1 Manrope,sans-serif; text-transform:none; letter-spacing:-3px; }
.careers-hero-meta { font-size:10px; letter-spacing:1px; }
.careers-hero-image figcaption { font-size:10px; }
.career-role-kicker { font-size:10px; }
.career-role-description,.career-process p { font-size:14px; line-height:1.8; }
.career-apply { font-size:13px; }
.career-process>.container>div>span { font-size:10px; }
.monitoring-capability p,.monitoring-flow li p { font-size:14px; }
.monitoring-scope { font-size:13px; }
.form-steps { list-style:none; padding:0 0 22px; margin:0 0 32px; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; gap:14px; font-size:12px; color:var(--muted); }
.form-steps span { font-size:10px; margin-right:6px; }
.form-steps [aria-current] { font-weight:750; color:var(--ink); }
.form-steps [aria-current]>span { color:var(--copper); }
.form-field label { font-size:13px; }
.form-field label span { font-size:12px; }
.form-field input,.form-field select,.form-field textarea { min-height:52px; font-size:16px; }
.form-field small { display:block; font-size:11px; line-height:1.65; color:var(--muted); margin-top:8px; }
.form-grid { gap:26px 22px; }
.form-note,.consent { font-size:12px; }
.review-explanation,.enquiry-review pre { font-size:14px; }
.enquiry-review .form-steps { margin-top:0; }
#apply,#enquiry { scroll-margin-top:95px; }

/* Shorter native-scroll introduction, retaining its reversible assembly. */
.scroll-intro { height:125svh; }
.scroll-brand>span { font-size:9px; letter-spacing:1.1px; }
.scroll-side>span { font-size:10px; }
.scroll-skip { font-size:12px; }
.scroll-statement>span,.scroll-location { font-size:10px; }
.scroll-statement>p { font:550 clamp(27px,3.2vw,43px)/1.15 Manrope,sans-serif; text-transform:none; letter-spacing:-1.3px; }
.scroll-chapters li { font-size:10px; }
.scroll-chapters li>span { font-size:9px; }
.scroll-cue>span { font-size:10px; }
@media(prefers-reduced-motion:no-preference) {
  .service-panel:not([hidden]) .service-panel-body { animation:service-enter .28s ease-out both; }
  @keyframes service-enter { from { opacity:.65; transform:translateY(7px); } to { opacity:1; transform:none; } }
}
@media(min-width:1100px) { .service-preview { align-self:start; position:sticky; top:105px; } }
@media(max-width:1199px) {
  .navigation { gap:17px; }.navigation>a { font-size:11px; }.site-header .wordmark strong { font-size:21px; }
  .signature-copy h1 { letter-spacing:-3.7px; }.signature-copy { padding-block:56px; }
  .principle-layout,.operations-body { gap:48px; }.service-layout { gap:35px; }
  .signature-description { max-width:430px; }
  .home-hiring-layout { gap:60px; }
}
@media(max-width:1000px) {
  .navigation { background:#0d1c28; border-color:#344550; padding-block:18px 26px; }
  .navigation>a { font-size:16px; min-height:49px; }.navigation .btn { font-size:14px; }
  .site-header .menu-toggle { color:#eff3f5; border-color:#8c9eaa; font-size:12px; }
  .site-header .menu-lines:before,.site-header .menu-lines:after { background:#e4edf2; }
  .signature-content { min-height:650px; }.signature-top .eyebrow { font-size:9px; }
  .signature-index { font-size:8px; }.signature-copy { padding-block:60px; }
  .signature-copy h1 { font-size:68px; }.signature-image { left:20%; }
  .signature-image:after { background:linear-gradient(90deg,#0d1c28,#0d1c28c9 27%,#0d1c2844 85%),linear-gradient(0deg,#0d1c28,transparent 65%); }
  .signature-description { font-size:15px; max-width:430px; }
  .principle-layout { gap:36px; grid-template-columns:1fr 1fr; }
  .principle-layout h2 { font-size:34px; }.principle-detail>p { font-size:14px; }
  .service-choice { font-size:14px; }.service-panel-body { padding:25px; }
  .digital-feature h2 { font-size:32px; }.digital-feature-copy>p { font-size:14px; }
  .digital-visual-top { font-size:8px; }.digital-highlights li { font-size:12px; }
  .home-hiring-copy h2 { font-size:64px; }.home-hiring-copy>p { font-size:14px; }
  .home-hiring-layout { gap:40px; }.home-hiring-role { gap:15px; }.home-hiring-role h3 { font-size:24px; }
  .ops-list h3 { font-size:24px; }.ops-list p { font-size:14px; }.operations-image img { height:450px; }
  .footer-grid { gap:35px; }.site-header .wordmark small { font-size:6px; }
  .careers-hero h1 { font-size:52px; }.career-role-kicker { font-size:9px; }
}
@media(max-width:700px) {
  .section { padding-block:64px; }.container { width:calc(100% - 40px); }
  h2 { font-size:33px; letter-spacing:-1.3px; }.eyebrow,.section-id { font-size:10px; letter-spacing:1.1px; }
  .section-id:after { width:25px; }.site-header .wordmark strong { font-size:22px; }
  .signature-content { min-height:0; }.signature-top { padding-block:23px; }
  .signature-top .eyebrow { font-size:9px; letter-spacing:1px; }.signature-index { display:none; }
  .signature-image { inset:0; }.signature-image img { object-position:70% 25%; }
  .signature-image:after { background:linear-gradient(90deg,#0d1c28ef,#0d1c28a6 80%),linear-gradient(0deg,#0d1c28 0%,#0d1c2833 65%); }
  .signature-copy { padding:56px 0 47px; }.signature-copy h1 { font-size:clamp(43px,11.25vw,76px); letter-spacing:-2.3px; line-height:1.12; }
  .signature-slogan { font-size:12px; margin-bottom:23px; }.signature-description { font-size:15px; line-height:1.8; margin-top:26px; max-width:410px; }.signature-description br { display:none; }
  .signature-actions { gap:12px 25px; margin-top:27px; }.signature-actions .btn { min-width:175px; font-size:13px; }
  .signature-secondary { font-size:12px; gap:15px; }
  .signature-bottom { align-items:start; flex-direction:column; gap:7px; padding:22px 0 8px; }
  .signature-bottom>span { font-size:9px; }.signature-bottom strong { font-size:12px; }.signature-bottom .intro-replay { min-height:44px; font-size:11px; }
  .signature-caption { text-align:left; padding:0 20px 22px; font-size:9px; max-width:360px; }
  .home-hiring-layout,.principle-layout { grid-template-columns:1fr; gap:34px; }
  .home-hiring-copy h2 { font-size:62px; letter-spacing:-3px; }.home-hiring-copy>p { font-size:15px; margin-block:21px; }
  .home-hiring-location { font-size:9px; margin-top:22px; }.home-hiring-role { padding-block:19px; }
  .home-hiring-role h3 { font-size:24px; }.home-hiring-role p { font-size:12px; }.home-role-number { font-size:10px; }
  .principle-layout h2 { font-size:33px; }.principle-layout .section-id { margin-bottom:24px; }
  .principle-detail>p { font-size:15px; }.leadership-proof>span { font-size:9px; }.leadership-proof p { font-size:13px; }
  .section-top { margin-bottom:30px; }.section-top>p { font-size:14px; }
  .service-layout { grid-template-columns:1fr; gap:23px; }
  .services-ready .mobile-service-picker { display:block; font-size:12px; font-weight:650; }
  .mobile-service-picker select { width:100%; margin-top:12px; min-height:54px; border:1px solid #758b9a; border-radius:2px; padding:12px; color:var(--ink); background:var(--white); font:500 16px/1.5 Manrope,sans-serif; }
  .mobile-service-picker select:focus-visible { outline:2px solid var(--copper); outline-offset:3px; }
  .services-ready .service-choices { display:none; }.service-note { font-size:12px; margin-top:16px; }
  .service-layout>div:first-child>.text-link { margin-top:8px; }
  .service-art { height:210px; }.service-panel-body { padding:25px 23px; }.service-panel h3 { font-size:26px; }
  .service-panel p { font-size:14px; }.service-scope li { font-size:13px; }.service-panel-actions .text-link { font-size:13px; }
  .service-panel-kicker { font-size:10px; }.service-detail-link { font-size:12px; }
  .operations-body { gap:35px; }.operations-image img { height:330px; }.operations .section-top h2 { font-size:33px; }
  .ops-list h3 { font-size:26px; }.ops-list p { font-size:14px; }.ops-list li { padding-block:23px; }
  .digital-feature h2 { font-size:31px; letter-spacing:-1.25px; }.digital-feature-copy>p,.digital-introduction p { font-size:14px; }
  .digital-highlights { grid-template-columns:1fr; gap:12px; }.digital-highlights li { font-size:14px; }
  .digital-visual-top { font-size:9px; gap:10px; }.digital-visual figcaption { font-size:11px; }
  .leader h3 { font-size:26px; }.leader .leader-role { font-size:10px; min-height:0; margin-bottom:22px; }
  .leader .credential,.leader .bio { font-size:14px; }.leader-number { font-size:40px; }
  .leadership-heading>div:last-child p,.coverage-copy>p { font-size:14px; }.coverage-copy h2 { font-size:33px; }
  .area-list li { font-size:14px; }.haryana-block .hr-office { font-size:12px; }
  .faqs summary { font-size:15px; }.faqs details p { font-size:14px; padding-right:16px; }
  .closing h2 { font-size:46px; letter-spacing:-2px; }.closing p { font-size:14px; }.closing-actions .btn { font-size:13px; }
  .footer-grid p { font-size:12px; }.footer-links { grid-template-columns:1fr 1fr; }.footer-links a,.footer-contact a { font-size:13px; min-height:42px; }
  .footer-bottom { font-size:10px; line-height:1.8; }.quick-actions { border-width:1px 0 0; border-radius:0; }.quick-actions a { font-size:11px; min-height:56px; }
  .inner-hero { padding:26px 0 42px; }.inner-hero h1 { font-size:clamp(37px,10vw,55px); letter-spacing:-1.8px; line-height:1.16; }
  .inner-hero .lead { font-size:15px; line-height:1.8; margin-top:24px; }.inner-hero .eyebrow,.breadcrumb { font-size:10px; }
  .service-nav a { font-size:12px; }.service-detail p,.split p,.editorial-row p,.strength-grid p,.value p,.prose p { font-size:14px; }
  .service-detail li,.training-grid li,.facts>div { font-size:13px; }.service-detail h2 { font-size:30px; }
  .contact-number { font-size:42px; }.email-address { font-size:24px; }.contact-option p { font-size:14px; }
  .careers-hero h1 { font-size:clamp(43px,11.6vw,65px); letter-spacing:-2px; }.careers-hero-copy>p { font-size:15px; }
  .careers-hero-meta { font-size:9px; }.careers-hero-image figcaption { font-size:9px; }
  .career-role-kicker { font-size:9px; }.career-role-description,.career-process p { font-size:14px; }.career-apply { font-size:13px; }
  .form-grid { grid-template-columns:1fr; gap:23px; }.form-field.full { grid-column:auto; }
  .form-field label { font-size:13px; }.form-field select,.form-field input,.form-field textarea { font-size:16px; }
  .form-heading p { font-size:13px; }.form-steps { font-size:11px; gap:8px; }.form-steps span { font-size:10px; margin-right:3px; }
  .form-note,.consent { font-size:12px; }.enquiry-review pre { padding:20px; font-size:13px; }
  .scroll-intro { height:115svh; }.scroll-brand>span { font-size:7px; }.scroll-skip { font-size:11px; }
  .scroll-statement>span { font-size:8px; }.scroll-statement>p { font-size:28px; letter-spacing:-1px; }
  .scroll-chapters li { font-size:10px; }.scroll-cue>span { font-size:10px; }
}
@media(max-width:360px) {
  .signature-copy h1 { font-size:39px; letter-spacing:-2px; }.signature-slogan { font-size:11px; }
  .signature-actions { gap:10px; }.signature-actions .btn { min-width:160px; }.signature-secondary { font-size:12px; }
  .site-header .wordmark strong { font-size:19px; }.site-header .wordmark small { font-size:5px; }
  .digital-feature h2 { font-size:28px; }.inner-hero h1 { font-size:35px; }.home-hiring-copy h2 { font-size:57px; }
  .quick-actions a { font-size:10px; }.form-steps { font-size:10px; }
}
@media(prefers-reduced-motion:reduce) { *,*:before,*:after { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }
@media print { .signature-hero { background:white; color:black; }.signature-image,.signature-grid { display:none; }.signature-copy h1 em,.signature-hero p { color:black; } }
/* The root scroll-padding already reserves the sticky header. */
#apply,#enquiry,.enquiry-form,.enquiry-review,.career-role,.service-detail { scroll-margin-top:10px; }

/* Progressive enhancement: failed scripts must not remove navigation or contact options. */
html:not(.navigation-ready) .menu-toggle { display:none; }
.form-ready .form-fallback { display:none; }
.form-fallback { margin-top:20px; font-size:14px; line-height:1.7; }
.enquiry-form button:disabled { opacity:.55; cursor:not-allowed; }
@media(max-width:1000px) {
  .navigation { max-height:calc(100vh - 148px); max-height:calc(100dvh - 148px); overflow-y:auto; overscroll-behavior:contain; }
  html:not(.navigation-ready) .site-header { position:static; }
  html:not(.navigation-ready) .header-inner { height:auto; min-height:68px; flex-wrap:wrap; padding-top:16px; }
  html:not(.navigation-ready) .navigation { position:static; width:100%; max-height:none; flex-direction:row; flex-wrap:wrap; padding:12px 0; gap:8px 20px; border:0; box-shadow:none; }
  html:not(.navigation-ready) .navigation .btn { margin:0; }
}

@media(min-width:801px) and (max-width:1000px) {
  .career-role { grid-template-columns:60px minmax(0,1fr) minmax(0,1fr) max-content; }
}

.field-error { color:#962b23; font-size:13px; line-height:1.6; margin-top:8px; }
[aria-invalid="true"] { border-color:#962b23; }
html { scroll-padding-bottom:85px; }
/* Preserve the palette while meeting contrast for small supporting labels. */
.home-role-number { color:#596e7b; }
.career-role-kicker,.career-role-symbol>span,.career-process>.container>div>span,.capability-top>span { color:#546978; }
.monitoring-flow li>span { color:#945939; }

.review-tools { display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.copy-message { min-height:44px; margin-top:17px; padding:10px 0; border:0; background:none; text-decoration:underline; font:600 12px Manrope,Arial,sans-serif; cursor:pointer; color:var(--ink); }
.copy-status,.manual-copy label { display:block; font-size:13px; line-height:1.7; }
.manual-copy textarea { width:100%; padding:12px; margin-top:8px; font:16px/1.6 Manrope,Arial,sans-serif; border:1px solid var(--line); background:var(--white); color:var(--ink); }
/* Visible control boundaries remain distinguishable before focus. */
.form-field input,.form-field select,.form-field textarea,.mobile-service-picker select,.manual-copy textarea { border-color:#7a8994; }
.form-field [aria-invalid="true"] { border-color:#962b23; }
