/* Shared finishing pass for the current two designs, including their supporting pages. */
.is-refinement { --max:1120px; }
.is-refinement [data-site-header] { position:sticky;top:0;z-index:40;background:var(--paper);box-shadow:0 2px 12px #0c173b08; }
.is-refinement .site-header { height:76px; }
.is-refinement .main-nav { gap:24px; }
.header-actions { display:none; }
.is-refinement.theme-petrol [data-site-header] { background:var(--petrol); }
.is-refinement .recognition-content,.is-refinement .case-story { max-width:none; }
.is-refinement .revised-services,.is-refinement.home--refined .approach { max-width:calc(var(--max) + 96px); }
.is-refinement .service-name,.is-refinement .service-list h3 { color:var(--ink); }
.is-refinement .service-name .work-mark { color:var(--accent); }
.is-refinement .connected-copy h2 { margin-bottom:20px; }
.is-refinement .connected-copy p { max-width:480px; }
.is-refinement .tools-illustration { --ti-rust:var(--ti-blue); }
.tools-illustration__connections--mobile { display:none; }
.is-refinement .tools-illustration__tool { font-size:14px; }
.is-refinement .tools-illustration__status { font-size:14px; }
.is-refinement .petrol-flow__label { font-size:clamp(14px,2.8cqw,16px); }
.is-refinement .petrol-flow__destination { font-size:clamp(14px,2.8cqw,16px); }
.is-refinement .case-result span { font-size:14px; }
.is-refinement .petrol-about { background:var(--paper); }
.project-reference { margin-top:24px; }
.project-reference a { display:inline-flex;align-items:center;gap:14px;color:var(--accent);font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px; }
.project-reference a:hover { text-decoration-thickness:2px; }
.is-refinement .refined-contact .contact-layout { grid-template-columns:1fr 1fr;gap:72px;align-items:start; }
.is-refinement .refined-contact h2 { font-size:clamp(34px,3.5vw,48px);max-width:500px;margin-bottom:24px; }
.is-refinement .contact-next-step { margin-top:20px; }
.is-refinement .contact-email { margin-top:28px; }
.is-refinement .contact-email a { font-size:16px;text-decoration:underline;text-underline-offset:5px; }
.is-refinement .contact-signoff { margin-top:12px;font-size:14px!important; }
.enquiry-form { display:grid;grid-template-columns:1fr 1fr;gap:22px 20px;min-width:0; }
.enquiry-field { display:flex;flex-direction:column;gap:8px;min-width:0; }
.enquiry-field--message,.enquiry-submit,.enquiry-status,.preview-form-note { grid-column:1/-1; }
.enquiry-field label { font-size:14px;font-weight:700; }
.enquiry-field input,.enquiry-field textarea { width:100%;min-width:0;border:1px solid #78849a;border-radius:3px;background:var(--paper);color:var(--ink);padding:12px 14px;font-size:16px;line-height:1.5; }
.enquiry-field textarea { resize:vertical;min-height:160px; }
.enquiry-field input:focus-visible,.enquiry-field textarea:focus-visible { outline:3px solid var(--accent);outline-offset:3px; }
.enquiry-submit { display:flex;align-items:center;gap:16px; }
.enquiry-submit .button { border:0; }
.is-refinement .preview-form-note { font-size:13px;line-height:1.5;margin:0; }
.enquiry-status { font-size:14px!important;line-height:1.6; }
.enquiry-status:empty { display:none; }
.is-refinement.theme-petrol .contact-section { background:#ecf3f3; }
.is-refinement.theme-petrol .contact-section .button,.is-refinement.theme-petrol .s-project-feature .button,.is-refinement.theme-petrol .s-closing .button { background:var(--petrol);color:var(--paper); }
.is-refinement.theme-petrol .contact-section .button:hover,.is-refinement.theme-petrol .s-project-feature .button:hover,.is-refinement.theme-petrol .s-closing .button:hover { background:#082f3c; }
.is-refinement.theme-petrol .enquiry-field input,.is-refinement.theme-petrol .enquiry-field textarea { border-color:#63838b; }
.is-refinement .s-toc { top:104px; }

@media(max-width:1050px) {
  .is-refinement .main-nav { gap:16px; }
  .is-refinement .refined-contact .contact-layout { gap:40px; }
}
@media(max-width:900px) and (min-width:761px) {
  .is-refinement .wordmark strong { font-size:17px; }
  .is-refinement .wordmark span { font-size:10px; }
  .is-refinement .main-nav { gap:12px;font-size:12px; }
  .is-refinement .main-nav .nav-background { display:none; }
}
@media(max-width:760px) {
  .is-refinement .site-header { height:68px;gap:12px; }
  .is-refinement .site-header .wordmark strong { font-size:17px;letter-spacing:-.025em;text-transform:none; }
  .is-refinement .site-header .wordmark span { display:none; }
  .header-actions { display:flex;align-items:center;gap:10px; }
  .header-actions .button { min-height:44px;font-size:12px;padding:10px 13px;gap:0; }
  .header-actions .menu-toggle { padding:8px 0; }
  .header-actions .menu-icon { display:none; }
  .is-refinement .main-nav { top:62px;gap:4px; }
  .is-refinement .main-nav .nav-background { display:block; }
  .is-refinement .main-nav .button { display:none; }
  .is-refinement.theme-petrol .header-actions .button { background:var(--butter);color:var(--petrol); }
  .is-refinement .refined-contact .contact-layout { grid-template-columns:1fr;gap:32px; }
  .is-refinement .refined-contact h2 { font-size:34px; }
  .is-refinement .contact-layout p { font-size:15px; }
  .is-refinement .contact-email { margin-top:22px; }
  .is-refinement .contact-signoff { font-size:13px!important; }
  .enquiry-form { gap:20px; }
  .is-refinement .preview-form-note { font-size:13px; }
}
/* Recompose the graphic for narrow containers instead of shrinking the labels. */
@container (max-width:520px) {
  .tools-illustration--outcome .tools-illustration__canvas { height:330px;aspect-ratio:auto; }
  .tools-illustration--outcome .tools-illustration__connections:not(.tools-illustration__connections--mobile) { display:none; }
  .tools-illustration--outcome .tools-illustration__connections--mobile { display:block; }
  .tools-illustration--outcome .tools-illustration__tool { width:44%;height:72px;gap:5px;padding:8px;font-size:14px; }
  .tools-illustration--outcome .tools-illustration__tool--email { top:0;left:0; }
  .tools-illustration--outcome .tools-illustration__tool--documents { top:0;right:0; }
  .tools-illustration--outcome .tools-illustration__tool--spreadsheets { bottom:0;left:0; }
  .tools-illustration--outcome .tools-illustration__tool--crm { bottom:0;right:0; }
  .tools-illustration--outcome .tools-illustration__outcome { left:15%;top:41%;width:70%;height:18%;padding:0;font-size:19px;line-height:1.35; }
  .tools-illustration--outcome .tools-illustration__status:not(:empty) { margin-top:20px; }
}
@media(max-width:480px) {
  .enquiry-form { grid-template-columns:1fr; }
  .is-refinement .petrol-flow__canvas { aspect-ratio:600/470; }
  .is-refinement .petrol-flow__drawing { position:absolute;inset:0; }
  .is-refinement .petrol-flow__label { width:29%;font-size:14px; }
}
@media print { .is-refinement [data-site-header] { position:static; }.enquiry-form { display:none; } }
