/* OXO / titanium & smoked glass
   Load LAST, after the existing site, usability, action and discovery styles.
   Public components only. This file does not replace any form markup or code.
   The About timeline owns its chapter and playback controls. */

:root {
  --oxo-titanium: repeating-linear-gradient(0deg, #ffffff10 0, #ffffff10 1px,
    #283c4c04 1px, #283c4c04 2px, transparent 2px, transparent 3px),
    linear-gradient(165deg, #f0f3f5 0%, #dce3e8 34%, #c5cfd7 72%, #b8c3cd 100%);
  --oxo-titanium-hover: repeating-linear-gradient(0deg, #ffffff12 0, #ffffff12 1px,
    #283c4c04 1px, #283c4c04 2px, transparent 2px, transparent 3px),
    linear-gradient(165deg, #fafbfc 0%, #e5ebef 34%, #d1dae2 72%, #c2cdd6 100%);
  --oxo-titanium-press: linear-gradient(165deg, #b7c3ce, #ced8e0 70%, #dce4ea);
  --oxo-titanium-label: #162937;
  --oxo-glass: linear-gradient(155deg, #364958a6 0%, #263745bb 35%, #111e2be8 100%);
  --oxo-glass-hover: linear-gradient(155deg, #435b6bb8 0%, #304656d9 35%, #182b3ce8 100%);
  --oxo-glass-press: linear-gradient(155deg, #162532e8, #253b4ce8);
  --oxo-glass-line: #8b9dab80;
  --oxo-interface-text: #edf2f6;
  --oxo-interface-muted: #aab8c6;
  --oxo-interface-focus: #b4e0ff;
  --oxo-action-radius: 14px;
}

/* Material changes only: the verified action geometry and arrow layout from
   revision 2 remain in force, including the 49px homepage hero CTA. */
body :is(.button, .header .nav-contact, .header .mobile-start,
  .oxo-footer .oxo-footer-cta, .case-visit-button, .ai-edge .ai-edge-link,
  .case-next .case-links :where(a), .oxo-app-nav .app-nav-bottom > :where(a)) {
  --oxo-action-fill: var(--oxo-glass);
  --oxo-action-fill-hover: var(--oxo-glass-hover);
  --oxo-action-fill-press: var(--oxo-glass-press);
  --oxo-action-border: var(--oxo-glass-line);
  --oxo-action-border-hover: #a7bacba8;
  --oxo-action-label: var(--oxo-interface-text);
  --oxo-action-icon-fill: linear-gradient(155deg, #43607485, #162a3be0);
  --oxo-action-icon-line: #9ab0c15c;
  --oxo-action-icon-color: #deedf7;
  background: var(--oxo-action-fill);
  border-color: var(--oxo-action-border);
  border-radius: var(--oxo-action-radius);
  color: var(--oxo-action-label);
  box-shadow: inset 0 1px 0 #f1f8ff29, inset 0 -1px 0 #00000030,
    0 2px 3px #00000020, 0 8px 20px #00000024;
  backdrop-filter: blur(14px) saturate(.85);
  -webkit-backdrop-filter: blur(14px) saturate(.85);
  font-weight: 600;
  letter-spacing: -.005em;
  text-shadow: 0 1px 1px #00000040;
  transition: border-color 180ms ease, color 180ms ease,
    box-shadow 180ms ease, transform 100ms ease;
}

/* Titanium catches the light through a continuous satin gradient. The fine
   horizontal grain stays still; there is no chrome stripe or moving sheen. */
body :is(.button-primary, .header .nav-contact, .header .mobile-start,
  .oxo-footer .oxo-footer-cta, .insight-help .button,
  .case-next .case-links a:first-child, .oxo-app-nav .app-nav-bottom > a) {
  --oxo-action-fill: var(--oxo-titanium);
  --oxo-action-fill-hover: var(--oxo-titanium-hover);
  --oxo-action-fill-press: var(--oxo-titanium-press);
  --oxo-action-border: #e7eef4c9;
  --oxo-action-border-hover: #f5faff;
  --oxo-action-label: var(--oxo-titanium-label);
  --oxo-action-icon-fill: linear-gradient(155deg, #425666, #1c2e3d 85%);
  --oxo-action-icon-line: #1d3448b8;
  --oxo-action-icon-color: #eff7fc;
  background: var(--oxo-action-fill);
  border-color: var(--oxo-action-border);
  color: var(--oxo-action-label);
  box-shadow: inset 0 1px 0 #ffffffeb, inset 0 -1px 0 #344b6154,
    0 1px 0 #63798b, 0 3px 5px #00000033, 0 9px 22px #00000026;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  text-shadow: 0 1px 0 #ffffff8c;
}

/* The preview-dialog return action remains secondary despite its legacy
   button-primary class. Its id-specific variable rules need an explicit reset. */
body #edit-enquiry {
  --oxo-action-fill: var(--oxo-glass);
  --oxo-action-fill-hover: var(--oxo-glass-hover);
  --oxo-action-fill-press: var(--oxo-glass-press);
  --oxo-action-border: var(--oxo-glass-line);
  --oxo-action-border-hover: #a7bacba8;
  --oxo-action-label: var(--oxo-interface-text);
  --oxo-action-icon-fill: linear-gradient(155deg, #43607485, #162a3be0);
  --oxo-action-icon-line: #9ab0c15c;
  --oxo-action-icon-color: #deedf7;
  background: var(--oxo-action-fill);
  border-color: var(--oxo-action-border);
  color: var(--oxo-action-label);
  box-shadow: inset 0 1px 0 #f1f8ff29, inset 0 -1px 0 #00000030, 0 8px 20px #00000024;
  text-shadow: 0 1px 1px #00000040;
}

body :is(.button, .header .nav-contact, .header .mobile-start,
  .oxo-footer .oxo-footer-cta, .case-visit-button, .ai-edge .ai-edge-link,
  .case-next .case-links :where(a), .oxo-app-nav .app-nav-bottom > :where(a)):is(:hover, :focus-visible),
body #edit-enquiry:is(:hover, :focus-visible) {
  background: var(--oxo-action-fill-hover);
  border-color: var(--oxo-action-border-hover);
  color: var(--oxo-action-label);
  box-shadow: inset 0 1px 0 #f1f8ff38, inset 0 -1px 0 #00000030,
    0 3px 5px #00000026, 0 10px 24px #0000002b;
  transform: none;
}
body :is(.button-primary, .header .nav-contact, .header .mobile-start,
  .oxo-footer .oxo-footer-cta, .insight-help .button,
  .case-next .case-links a:first-child, .oxo-app-nav .app-nav-bottom > a):is(:hover, :focus-visible) {
  background: var(--oxo-action-fill-hover);
  border-color: var(--oxo-action-border-hover);
  color: var(--oxo-action-label);
  box-shadow: inset 0 1px 0 #fff, inset 0 -1px 0 #344b6154,
    0 1px 0 #71889a, 0 3px 5px #00000033, 0 10px 24px #00000030;
  text-shadow: 0 1px 0 #ffffff9c;
}
body :is(.button, .header .nav-contact, .header .mobile-start,
  .oxo-footer .oxo-footer-cta, .case-visit-button, .ai-edge .ai-edge-link,
  .case-next .case-links :where(a), .oxo-app-nav .app-nav-bottom > :where(a)):active,
body .case-next .case-links a:first-child:active,
body #edit-enquiry:active {
  background: var(--oxo-action-fill-press);
  box-shadow: inset 0 2px 4px #07162430, 0 1px 2px #00000030;
  transform: translateY(1px);
}

/* Existing shine pseudo-elements remain disabled. Actual arrow glyphs and
   directions are preserved inside a softly recessed gunmetal socket. */
body :is(.button, .header .nav-contact, .header .mobile-start)::before,
body :is(.button, .header .nav-contact, .header .mobile-start)::after {
  content: none;
  display: none;
  animation: none;
}
body :is(.button, .header .nav-contact, .header .mobile-start,
  .oxo-footer .oxo-footer-cta, .case-visit-button, .ai-edge .ai-edge-link,
  .case-next .case-links :where(a)) > span[aria-hidden="true"],
body .oxo-app-nav .app-nav-bottom > a > span {
  background: var(--oxo-action-icon-fill);
  border-color: var(--oxo-action-icon-line);
  color: var(--oxo-action-icon-color);
  box-shadow: inset 0 1px 2px #07152280, 0 1px 0 #eff7ff28;
  text-shadow: 0 1px 1px #00000050;
  transform: none;
}
body :is(.button-primary, .header .nav-contact, .header .mobile-start,
  .oxo-footer .oxo-footer-cta, .insight-help .button,
  .case-next .case-links a:first-child) > span[aria-hidden="true"],
body .oxo-app-nav .app-nav-bottom > a > span {
  box-shadow: inset 0 1px 3px #061524a6, 0 1px 0 #ffffffb3;
}
body #edit-enquiry > span[aria-hidden="true"] {
  box-shadow: inset 0 1px 2px #07152280, 0 1px 0 #eff7ff28;
}

/* Keep the original hero scene measurements exactly: finish changes only. */
body .phoenix-stage .phoenix-intro .button {
  min-height: 49px;
  padding: 8px 10px 8px 18px;
  font-size: 13px;
  letter-spacing: -.01em;
}
body .ai-edge .ai-edge-link { border-color: var(--oxo-glass-line) !important; }
body .ai-edge .ai-edge-link:is(:hover, :focus-visible) { border-color: #a7bacba8 !important; }

/* Smaller controls share the glass, edge reflection and neutral typography. */
body :is(.header .mobile-menu, .app-nav-top button, .dialog-close,
  .oxo-discovery-clear, .page-links a, .insights-categories a,
  .insights-pagination a, .app-nav-quick a) {
  background: var(--oxo-glass);
  border-color: var(--oxo-glass-line);
  color: var(--oxo-interface-text);
  box-shadow: inset 0 1px 0 #f1f8ff24, 0 3px 10px #00000020;
  text-shadow: 0 1px 1px #00000040;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
body :is(.header .mobile-menu, .app-nav-top button, .dialog-close,
  .oxo-discovery-clear, .page-links a, .insights-categories a,
  .insights-pagination a, .app-nav-quick a):is(:hover, :focus-visible) {
  background: var(--oxo-glass-hover);
  border-color: #a7bacba8;
  color: #fff;
  box-shadow: inset 0 1px 0 #f1f8ff38, 0 4px 12px #00000024;
}
body :is(.header .mobile-menu, .app-nav-top button, .dialog-close,
  .oxo-discovery-clear, .page-links a, .insights-categories a,
  .insights-pagination a, .app-nav-quick a):active {
  background: var(--oxo-glass-press);
  box-shadow: inset 0 1px 3px #00000040;
}
body .header .mobile-menu[aria-expanded="true"] {
  background: var(--oxo-glass-hover);
  border-color: #b0c9db;
}
/* The menu appears through 1100px, but the old column rule stops at 760px. */
body .header .mobile-menu {
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
body :is(.insights-categories a, .insights-pagination a)[aria-current="page"] {
  background: var(--oxo-titanium);
  border-color: #e7eef4c9;
  color: var(--oxo-titanium-label);
  font-weight: 600;
  text-shadow: 0 1px 0 #ffffff80;
  box-shadow: inset 0 1px 0 #ffffffdb, inset 0 -1px 0 #344b6140, 0 3px 10px #00000024;
}

/* A modest navigation lift: retain dropdown illustrations, grid, animation,
   positions and current responsive breakpoint. */
body .header nav[aria-label="Main navigation"] > a:not(.nav-contact),
body .header .nav-group > summary {
  color: #dce5ee;
  font-size: 14px !important;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .005em;
  text-shadow: 0 1px 1px #00000040;
}
body .header .nav-group > summary::after { color: #a5b9c9; }
body .oxo-app-nav .app-nav-label strong {
  color: #edf3f8;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -.01em;
}
body .oxo-app-nav .app-nav-label small { color: #b1bfcb; }
body .oxo-app-nav .app-nav-body nav > :is(button, a) {
  background: linear-gradient(145deg, #8da4b31a, #7b91a207 65%), #152431cc;
  border-color: #94a8b747;
  box-shadow: inset 0 1px 0 #ffffff13, 0 4px 12px #00000014;
}
body .oxo-app-nav .app-nav-body nav > :is(button, a):is(:hover, :focus-visible) {
  background: var(--oxo-glass-hover);
  border-color: #a7bacba8;
}
body .oxo-app-nav .app-nav-body nav > :is(button, a):active { background: var(--oxo-glass-press); }
body :is(.work .project-open, .service-list .service-arrow,
  .oxo-project-nav a > span[aria-hidden="true"], .oxo-app-nav .app-nav-arrow) {
  border-color: #9ab0c15c;
  background: linear-gradient(155deg, #43607485, #162a3be0);
  color: #deedf7;
  box-shadow: inset 0 1px 0 #e9f4ff24, 0 2px 5px #00000020;
}
body .work .project-open { color: #deedf7 !important; }
body .work .project:is(:hover, :focus-visible) .project-open {
  border-color: #ecf4fa;
  background: var(--oxo-titanium);
  color: var(--oxo-titanium-label) !important;
  box-shadow: inset 0 1px 0 #fff, 0 2px 7px #00000030;
}
body .service-list .service:is(:hover, :focus-visible) .service-arrow,
body .oxo-project-nav a:is(:hover, :focus-visible) > span[aria-hidden="true"] {
  background: var(--oxo-glass-hover);
  border-color: #b0c9db;
  color: #fff;
}

/* Enquiry: a single smoked-glass surface and inset, high-contrast controls.
   The form stays stationary through hover, focus, validation and typing. */
body .enquiry {
  background: radial-gradient(ellipse at 80% 35%, #23425a38, transparent 60%),
    linear-gradient(180deg, #101923, #0e1721);
}
body .enquiry .enquiry-grid { align-items: start; }
body .enquiry .enquiry-intro { padding-top: 26px; }
body .enquiry .enquiry-intro > p { color: #b6c2ce; }
body .enquiry .enquiry-steps { gap: 22px; color: #d4dee8; }
body .enquiry .enquiry-steps li { align-items: baseline; }
body .enquiry .enquiry-steps li > span {
  color: #8aa7bd;
  padding-right: 13px;
  border-right: 1px solid #8ba1b340;
  line-height: 1.5;
}
body .enquiry form,
body .enquiry form:hover,
body .enquiry form:focus-within {
  margin: 0;
  padding: 34px;
  border: 1px solid #91a5b452;
  border-radius: 22px;
  background: linear-gradient(145deg, #2c3c4bc9 0%, #172533eb 44%, #101c29f5 100%);
  box-shadow: inset 0 1px 0 #f0f7ff24, inset 0 -1px 0 #00000036,
    0 8px 18px #00000014, 0 24px 60px #00000030;
  backdrop-filter: blur(18px) saturate(.85);
  -webkit-backdrop-filter: blur(18px) saturate(.85);
  color: var(--oxo-interface-text);
  color-scheme: dark;
  transform: none;
  transition: none;
  animation: none;
}
body .enquiry .form-heading {
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin: 0 0 26px;
  padding-bottom: 22px;
  border-bottom: 1px solid #a9bdcd29;
  color: #f1f5f9;
}
body .enquiry .form-heading h3 {
  margin: 0;
  color: inherit;
  font-size: 25px;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.035em;
}
body .enquiry .form-heading > span { color: #aebdcb; font-size: 12px; }
body .enquiry form label {
  display: block;
  margin: 0 0 9px;
  color: #e0e8f0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .005em;
}
body .enquiry form label > span { color: #a9b8c6; font-size: 11px; font-weight: 400; }
body .enquiry .form-pair {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 24px;
}
body .enquiry form :is(input, select, textarea),
body .oxo-discovery input[type="search"] {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 52px;
  padding: 13px 14px;
  border: 1px solid #6b7f90;
  border-radius: 10px;
  background: linear-gradient(180deg, #0b1722, #101d29);
  color: #f0f5fa;
  box-shadow: inset 0 1px 3px #02081066, 0 1px 0 #d2e9ff0a;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color-scheme: dark;
  caret-color: #d6ecff;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}
body .enquiry form :is(input, textarea)::placeholder,
body .oxo-discovery input[type="search"]::placeholder { color: #a8b8c6; opacity: 1; }
body .enquiry form :is(input, select, textarea):hover,
body .oxo-discovery input[type="search"]:hover { border-color: #8b9faf; }
body .enquiry form :is(input, select, textarea):focus,
body .oxo-discovery input[type="search"]:focus {
  border-color: #c0e5ff;
  outline: 2px solid #8acfff;
  outline-offset: 3px;
  box-shadow: inset 0 1px 3px #02081066, 0 0 0 5px #5bbaff12;
}
body .enquiry form :is(input, textarea):autofill {
  color: #f0f5fa;
  background: #101d29;
}
body .enquiry form :is(input, textarea):-webkit-autofill {
  -webkit-text-fill-color: #f0f5fa;
  caret-color: #d6ecff;
  box-shadow: 0 0 0 1000px #101d29 inset;
}
body .enquiry form :is(input, select, textarea):is(:user-invalid, [aria-invalid="true"]) {
  border-color: #d8979b;
}
body .enquiry form select { margin-bottom: 0; padding-right: 10px; }
body .enquiry form select:invalid { color: #a8b8c6; }
body .enquiry form select option { background: #111f2d; color: #f0f5fa; }
body .enquiry form textarea { display: block; min-height: 148px; padding: 14px 16px; line-height: 1.65; }
body .enquiry input[type="date"] { height: 52px; color-scheme: dark; }
body .enquiry input[type="date"]::-webkit-calendar-picker-indicator { opacity: .85; cursor: pointer; }

body .enquiry .enquiry-optional {
  margin: 24px 0 0;
  padding: 0 18px;
  border: 1px solid #8fa5b347;
  border-radius: 12px;
  background: linear-gradient(145deg, #b6d1e50a, #101c281f);
  box-shadow: inset 0 1px 0 #ffffff0c;
  color: #e1eaf2;
}
body .enquiry .enquiry-optional > summary {
  margin: 0 -18px;
  padding: 17px 58px 17px 18px;
  border-radius: 11px;
  color: #e1eaf2;
  font-size: 14px;
  font-weight: 600;
}
body .enquiry .enquiry-optional > summary > span {
  margin-top: 4px;
  color: #acbdcc;
  font-size: 12px;
}
body .enquiry .enquiry-optional > summary::after {
  display: grid;
  place-items: center;
  right: 17px;
  width: 28px;
  height: 28px;
  border: 1px solid #9eb5c84d;
  border-radius: 50%;
  background: #9ac1dc08;
  color: #d0e0eb;
  font-size: 20px;
}
body .enquiry .enquiry-optional > summary:hover { background: #c2ddef08; }
body .enquiry .enquiry-optional > summary:focus-visible {
  outline: 2px solid #b4e0ff;
  outline-offset: 3px;
}
body .enquiry .enquiry-optional[open] { padding-bottom: 20px; }
body .enquiry .enquiry-optional[open] > summary {
  margin-bottom: 20px;
  border-bottom: 1px solid #9ab2c529;
  border-radius: 11px 11px 0 0;
}
body .enquiry .enquiry-optional-fields { gap: 20px; }
body .enquiry .enquiry-optional .form-pair { margin-bottom: 0; }
body .enquiry .form-privacy {
  margin-top: 22px;
  color: #b2bfcc;
  font-size: 12px;
  line-height: 1.75;
}
body .enquiry .form-privacy a { color: #d9ebfa; text-decoration-thickness: 1px; text-underline-offset: 3px; }
body .enquiry .form-privacy a:hover { color: #fff; }
body .enquiry .form-bottom { margin-top: 24px; gap: 13px; }
body .enquiry .form-bottom > .form-mode { color: #aabcca; font-size: 12px; letter-spacing: .01em; }
body .enquiry .form-bottom .button {
  min-height: 52px;
  border-radius: 12px;
  padding: 9px 11px 9px 20px;
}
body .enquiry .form-bottom .button:focus-visible { outline-color: #b4e0ff; }
body .enquiry .form-feedback {
  margin-top: 22px;
  padding: 16px 18px;
  border: 1px solid #6c9c88;
  border-radius: 12px;
  background: #16332b;
  color: #d8f3e7;
  font-size: 14px;
  line-height: 1.65;
  box-shadow: inset 0 1px 0 #e3fff00a;
}
body .enquiry .form-feedback.is-error {
  border-color: #b57e85;
  background: #372127;
  color: #ffe0e3;
}
body .enquiry .form-feedback:focus { outline: 2px solid #b4e0ff; outline-offset: 4px; }
body .enquiry .form-feedback[hidden] { display: none; }

/* Discovery search and the existing enquiry review use the same form material. */
body .oxo-discovery {
  border-color: #91a5b452;
  background: linear-gradient(145deg, #2c3c4bb3, #142230eb);
  box-shadow: inset 0 1px 0 #f0f7ff1a, 0 10px 28px #00000024;
}
body .oxo-discovery > label { color: #e1eaf2; }
body .oxo-discovery-clear { min-height: 52px; }
body .oxo-discovery .oxo-discovery-status { color: #acbdcc; }
body .review-dialog {
  padding: 38px;
  border-color: #8fa6b77a;
  border-radius: 22px;
  background: linear-gradient(145deg, #2c3c4bf5, #101d29fc 65%);
  color: #edf2f7;
  box-shadow: inset 0 1px 0 #f0f7ff29, 0 30px 80px #00000070;
}
body .review-dialog > .eyebrow { display: block; padding-right: 40px; color: #a8c1d3; }
body .review-dialog h2 { margin: 24px 0; font-size: clamp(34px, 4vw, 48px); }
body .review-dialog dt { margin-top: 20px; color: #aabfce; font-size: 11px; line-height: 1.5; }
body .review-dialog dd { margin-top: 6px; color: #f0f4f8; font-size: 15px; line-height: 1.65; }
body .review-dialog .review-notice {
  margin: 26px 0 22px;
  padding-top: 22px;
  border-top: 1px solid #9ab2c529;
  color: #b6c6d2;
  font-size: 13px;
  line-height: 1.7;
}

/* Existing disabled and loading state: retain the native handler contract. */
body .enquiry form .button[type="submit"]:disabled {
  background: linear-gradient(165deg, #bdc8d1, #9dabb8);
  border-color: #c8d3dd;
  color: #243847;
  box-shadow: inset 0 1px 0 #ffffff80, inset 0 -1px 0 #344b6140;
  text-shadow: none;
}
body .enquiry form .button[type="submit"]:disabled > span[aria-hidden="true"] {
  border-color: #344e6640;
  border-top-color: #243e54;
  background: none;
  box-shadow: none;
  text-shadow: none;
}
body :is(.button, .header .nav-contact, .header .mobile-start,
  .oxo-footer .oxo-footer-cta, .case-visit-button, .ai-edge .ai-edge-link,
  .case-next .case-links a, .header .mobile-menu, .app-nav-top button,
  .dialog-close, .oxo-discovery-clear, .page-links a, .insights-categories a,
  .insights-pagination a, .app-nav-quick a, .oxo-app-nav .app-nav-bottom > a):focus-visible {
  outline: 3px solid var(--oxo-interface-focus);
  outline-offset: 3px;
}

@media (max-width: 1100px) and (min-width: 981px) {
  body .enquiry form,
  body .enquiry form:hover,
  body .enquiry form:focus-within { padding: 26px; }
}
@media (max-width: 980px) {
  body .enquiry .enquiry-intro { padding-top: 0; }
}
@media (max-width: 640px) {
  body .enquiry form,
  body .enquiry form:hover,
  body .enquiry form:focus-within { padding: 25px 20px; border-radius: 18px; }
  body .enquiry .form-heading { margin-bottom: 24px; padding-bottom: 20px; }
  body .enquiry .form-heading h3 { font-size: 24px; }
  body .enquiry .form-pair { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  body .enquiry .enquiry-optional { padding-right: 16px; padding-left: 16px; }
  body .enquiry .enquiry-optional > summary { margin-right: -16px; margin-left: -16px; padding-left: 16px; }
  body .enquiry .enquiry-optional-fields { gap: 22px; }
  body .enquiry .enquiry-steps { gap: 18px; }
  body .review-dialog { padding: 30px 22px; border-radius: 18px; }
  body .review-dialog #edit-enquiry { width: 100%; }
  body .oxo-footer .oxo-footer-contact > a[href*="/contact/"] {
    background: var(--oxo-glass);
    border-color: var(--oxo-glass-line);
    color: var(--oxo-interface-text);
    box-shadow: inset 0 1px 0 #f1f8ff24, 0 3px 10px #00000020;
    text-shadow: 0 1px 1px #00000040;
  }
  body .oxo-footer .oxo-footer-contact > a[href*="/contact/"]:is(:hover, :focus-visible) {
    background: var(--oxo-glass-hover);
    border-color: #a7bacba8;
    color: #fff;
  }
}
@media (prefers-reduced-motion: reduce) {
  body :is(.button, .header .nav-contact, .header .mobile-start,
    .oxo-footer .oxo-footer-cta, .case-visit-button, .ai-edge .ai-edge-link,
    .case-next .case-links a, .header .mobile-menu, .app-nav-top button,
    .dialog-close, .oxo-discovery-clear, .page-links a, .insights-categories a,
    .insights-pagination a, .app-nav-quick a, .oxo-app-nav .app-nav-bottom > a),
  body .enquiry form :is(input, select, textarea),
  body .oxo-discovery input[type="search"] { transition: none; }
  body :is(.button, .header .nav-contact, .header .mobile-start,
    .oxo-footer .oxo-footer-cta, .case-visit-button, .ai-edge .ai-edge-link,
    .case-next .case-links a, .oxo-app-nav .app-nav-bottom > a):active { transform: none; }
}
@media (forced-colors: active) {
  body :is(.button, .header .nav-contact, .header .mobile-start,
    .oxo-footer .oxo-footer-cta, .case-visit-button, .ai-edge .ai-edge-link,
    .case-next .case-links a, .header .mobile-menu, .app-nav-top button,
    .dialog-close, .oxo-discovery-clear, .page-links a, .insights-categories a,
    .insights-pagination a, .app-nav-quick a, .oxo-app-nav .app-nav-bottom > a) {
    background: ButtonFace !important;
    color: ButtonText !important;
    border-color: ButtonText !important;
    text-shadow: none !important;
    box-shadow: none !important;
  }
  body .enquiry form :is(input, select, textarea),
  body .oxo-discovery input[type="search"] { background: Field; color: FieldText; border-color: FieldText; box-shadow: none; }
}
