
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */


:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
/*# sourceURL=global-styles-inline-css */


/* Content-led layout: no fixed card heights or viewport-specific device patches. */
.dma-contact-overview { display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));align-items:stretch; }
.dma-contact-overview .contact-channel { min-width:0;height:auto;display:flex;flex-direction:column;gap:1rem; }
.dma-contact-overview .contact-channel__body { flex:1;min-width:0; }
.dma-contact-overview .contact-channel__actions,
.dma-contact-overview .contact-channel__direct-action { margin-top:auto;display:flex;flex-wrap:wrap;gap:.65rem;position:static; }
.dma-contact-overview .contact-channel__actions a { max-width:100%;white-space:normal;overflow-wrap:anywhere; }
.dma-contact-overview .contact-channel__direct-action { visibility:visible;opacity:1; }
.dma-contact-quote { border-color:var(--color-primary,#16877a); }
.dma-quote-intro { padding-bottom:1.5rem; }
.dma-quote-intro .site-shell { max-width:68rem; }
.dma-quote-form-section { padding-top:1.5rem; }
.dma-quote-form-shell { max-width:68rem; }
.dma-quote-form-shell .contact-form { width:100%;min-width:0; }
.dma-quote-process { display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1rem;padding-inline-start:1.4rem;margin:1.5rem 0; }
.dma-quote-process li { padding-inline-end:1rem; }
.dma-quote-sample { margin-top:1rem;max-width:48rem; }
.dma-quote-sample summary { cursor:pointer;font-weight:600; }
.dma-quote-sample p { margin:.75rem 0; }
[data-dma-contact-overview] .content-section h2,
[data-dma-quote-page] .dma-quote-intro h2 { color:var(--navy-900);font-size:clamp(1.4rem,2.6vw,2rem);font-weight:750;line-height:1.25;margin-bottom:1rem; }
[data-dma-contact-overview] .content-section p,
.dma-quote-intro p { color:var(--slate-600);line-height:1.65;margin-bottom:1rem;max-width:75ch; }
.dma-quote-process { list-style:decimal;line-height:1.6; }
[data-dma-quote-page] .subpage-hero h1 { font-size:clamp(2rem,4vw,3.25rem);margin-bottom:1rem; }
[data-dma-quote-page] .subpage-hero__lead { margin-bottom:0; }
[data-dma-quote-page] .subpage-hero__inner { padding-bottom:clamp(28px,4vw,48px); }
[data-dma-contact-overview] .subpage-hero { min-height:0; }
[data-dma-contact-overview] .subpage-hero__inner { padding-bottom:clamp(28px,4vw,48px); }
[data-dma-contact-overview] .subpage-hero h1 { font-size:clamp(2.2rem,4vw,3.8rem);max-width:24ch; }
[data-dma-contact-overview] .subpage-hero__lead { margin-bottom:0; }
.dma-contact-complaint .contact-channel__actions a:last-child { color:var(--link-on-light);background:var(--brand-50);border-color:var(--brand-200); }
/* The same mobile menu also activates when the desktop links no longer fit. */
.site-header__inner { --shell:1280px;justify-content:flex-start;gap:clamp(20px,2.2vw,36px); }
.main-navigation { gap:clamp(8px,.65vw,12px); }
.main-navigation>a { white-space:nowrap;flex-shrink:0; }
.main-navigation>a:not(.nav-whatsapp) { font-size:.875rem;line-height:1.45; }
.mobile-header-actions { margin-inline-start:auto; }
.dma-contact-primary,.dma-contact-existing { display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem; }
.dma-contact-primary { padding:clamp(22px,3vw,36px);border:1px solid var(--brand-200);border-radius:16px;background:var(--brand-50);margin-bottom:2.5rem; }
.dma-contact-primary>div { flex:1 1 26rem; }
.dma-contact-primary .dma-contact-response { font-weight:700;color:var(--navy-900);margin-bottom:0; }
.dma-contact-existing { border-top:1px solid var(--slate-200);padding-top:1.75rem;margin-top:2rem; }
.dma-contact-existing h2 { font-size:1.2rem; }
.dma-contact-existing p { margin-bottom:0; }
.dma-contact-email { margin-top:1.5rem;overflow-wrap:anywhere; }
.dma-contact-overview { grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr)); }
.availability-status.is-compact.is-opening-soon,.availability-status.is-compact.is-closing-soon,.availability-status.is-compact.is-just-closed { color:#ffd36a; }
.availability-status.is-compact.is-opening-soon i,.availability-status.is-compact.is-closing-soon i,.availability-status.is-compact.is-just-closed i { background:#ffd36a; }
.availability-status.is-compact.is-open { color:#8be1b4; }
.availability-status.is-compact.is-closed { color:#ffbdc5; }
.main-navigation.is-open { gap:0; }
.dma-nav-compact .mobile-header-actions { display:flex; }
.dma-nav-compact .menu-button { display:block;flex-shrink:0; }
.dma-nav-compact .main-navigation { display:grid;position:fixed;inset-inline:0;top:var(--dma-nav-bottom);z-index:53;max-height:calc(100dvh - var(--dma-nav-bottom));overflow-y:auto;align-content:start;gap:0;padding:20px 24px 30px;background:var(--white);border-top:1px solid var(--slate-100);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-15px);box-shadow:0 18px 42px #07192721; }
.dma-nav-compact .main-navigation.is-open { opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0); }
.dma-nav-compact .main-navigation>a:not(.nav-whatsapp) { padding:14px 2px;font-size:.92rem;border-bottom:1px solid var(--slate-100); }
.dma-nav-compact .main-navigation>a:not(.nav-whatsapp):after { display:none; }
.dma-nav-compact .main-navigation>a.nav-contact-cta { text-align:center;border-bottom:0;margin-top:12px;padding:14px 16px; }
body:has(.dma-nav-compact .main-navigation.is-open) { overflow:hidden; }

/* Desktop contact channels live in the topbar; compact navigation retains WhatsApp. */
.main-navigation>.nav-whatsapp{display:none}
.dma-nav-compact .main-navigation>.nav-whatsapp{display:inline-flex}
@media (width<=1080px){.main-navigation>.nav-whatsapp{display:inline-flex}}
.utility-links>[data-availability-status]{margin:0;flex-shrink:0}
.utility-links>a{white-space:nowrap}
.utility-hours{min-width:0}
.utility-hours>span{line-height:1.4}
[data-dma-contact-overview] .subpage-hero__content,[data-dma-quote-page] .subpage-hero__content{min-height:0}

/*# sourceURL=dma-professional-site-inline-css */

.sites-form-status:empty{display:none}.sites-form-status{padding:1rem;border:1px solid #b9d6e3;border-radius:.6rem;background:#f0f8fc;color:#193749;min-height:0}.dma-upload-file__heading strong{overflow-wrap:anywhere;min-width:0}[hidden]{display:none!important}

/* Preview validation: the service choice is one required group, not one required checkbox. */
form :is(input,select,textarea).is-invalid{border-color:#b42318!important;outline-color:#b42318}
form label.is-invalid:has(input[type="checkbox"]){outline:2px solid #b42318;outline-offset:4px;border-radius:4px}
form [data-dma-service-choices].is-invalid{border:2px solid #b42318;border-radius:12px}
form [data-dma-service-choices].is-invalid>summary{color:#912018}
form [data-dma-service-choices] label,form [data-dma-service-choices] input{outline:none}
form .field-error{display:block;color:#912018;font-size:.875rem;line-height:1.5;margin-top:.4rem}
form .enquiry-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}

/* Quote orientation: reuse existing spacing and colours. */
.dma-quote-intro .dma-quote-next{margin-block:1.75rem}.dma-quote-next h3{margin-block:0 .75rem}.dma-quote-next ol{padding-inline-start:1.4em;margin-block:0}.dma-quote-next li+li{margin-block-start:.65rem}.dma-quote-intro .enquiry-help{margin-block:1.25rem;line-height:1.7}

/* Callback date/window are a shared row; supporting copy cannot stretch a control. */
.callback-form .callback-schedule{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;align-items:end;min-width:0}
.callback-form .callback-schedule>label{align-content:start;min-width:0;grid-template-rows:auto 52px}
.callback-form .callback-schedule .enquiry-help{margin:0;font-size:.8125rem;line-height:1.6;font-weight:400}
@media(max-width:640px){.callback-form .callback-schedule{grid-template-columns:minmax(0,1fr);row-gap:18px}.callback-form .callback-schedule>label{grid-template-rows:auto 52px}}
/* The WhatsApp contact remains viewport-fixed on form routes as well. */
.whatsapp-float{position:fixed;right:max(20px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px) + var(--dma-keyboard-offset,0px));margin:0}
@media(max-width:1080px){
 .whatsapp-float{right:max(12px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px) + var(--dma-keyboard-offset,0px))}
 body:has(main form) .whatsapp-float{width:48px;height:48px;min-height:48px;padding:0}
 body:has(main form) .whatsapp-float>span{display:none}
 /* A narrow clear rail beside form contents keeps the fixed control off inputs. */
 body:has(main form) main form[class]{padding-inline-end:48px}
}

/* Service enquiries: existing DMA colours, no additional scripts or fixed positioning. */
.service-page-jumps{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:8px;border-top:1px solid var(--slate-200);padding-top:16px}
.service-page-jumps a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;color:var(--link-on-light);font-size:.9375rem;font-weight:700;text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}
.service-enquiry-section{padding-block:var(--space-section-brief);background:var(--white)}
.service-enquiry-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,4vw,48px);padding:clamp(24px,4vw,40px);border:1px solid var(--brand-200);border-radius:var(--radius-md);background:var(--brand-50)}
.service-enquiry-card>div{min-width:0}.service-enquiry-card h2{font-size:clamp(1.75rem,3vw,2.35rem);line-height:1.2;margin:0 0 18px}.service-enquiry-card h3{font-size:1.125rem;line-height:1.4;margin:0 0 14px}
.service-enquiry-card p{margin:0 0 16px;line-height:1.7;overflow-wrap:anywhere}.service-enquiry-card .service-enquiry-assurance{font-weight:650}.service-enquiry-company{font-size:.9375rem;color:var(--slate-600)}.service-enquiry-company a{color:var(--link-on-light);text-decoration:underline;text-underline-offset:.2em}
.service-enquiry-next ul{list-style:disc;padding-left:1.3em;margin:0 0 22px}.service-enquiry-next li{padding-left:.2em;line-height:1.65}.service-enquiry-next li+li{margin-top:10px}.service-enquiry-next li::marker{color:var(--navy-900)}
.service-enquiry-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.service-enquiry-actions .button{white-space:normal;max-width:100%;text-align:center}.service-enquiry-actions .text-link{min-height:44px;line-height:1.5;overflow-wrap:anywhere}
.service-enquiry-card .service-enquiry-note{margin:16px 0 0;color:var(--slate-600);font-size:.875rem;line-height:1.6}
.service-enquiry-section a:focus-visible,.service-page-jumps a:focus-visible{outline:3px solid var(--link-on-light);outline-offset:4px}
@media(max-width:800px){.service-enquiry-card{grid-template-columns:minmax(0,1fr)}.service-page-jumps{gap:4px 20px}}
@media(max-width:480px){.service-enquiry-actions .button{width:100%}}
@media print{.service-page-jumps,.service-enquiry-actions{display:none!important}.service-enquiry-card{display:block;background:#fff;border:0;padding:0}.service-enquiry-card>div+div{margin-top:16pt}}

/* Open editorial information: one reading column, separate lightweight page navigation. */
.dma-open-info {
  padding-block: clamp(44px, 5.8vw, 76px);
  background: var(--white);
  color: var(--navy-900);
}
.dma-open-info__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, .3fr);
  align-items: start;
  gap: clamp(28px, 5vw, 72px);
}
.dma-open-info__article { min-width: 0; max-width: 860px; }
.dma-open-info .section-kicker {
  margin: 0 0 13px;
  color: var(--link-on-light);
  font-size: .75rem;
  font-weight: 750;
  letter-spacing: .09em;
}
.dma-open-info .section-kicker > span { display: none; }
.dma-open-info .dma-open-info__heading h2 {
  max-width: 28ch;
  margin: 0;
  color: var(--navy-900);
  font-size: clamp(1.85rem, 2.85vw, 2.6rem);
  line-height: 1.18;
  letter-spacing: -.03em;
  text-wrap: balance;
}
.dma-open-info__copy { margin-top: 20px; }
.dma-open-info__copy p {
  max-width: 68ch;
  margin: 0;
  color: var(--slate-700);
  font-size: 1rem;
  line-height: 1.75;
}
.dma-open-info__copy p + p { margin-top: 15px; }
.dma-open-info__copy a {
  color: var(--link-on-light);
  text-decoration: underline;
  text-underline-offset: .22em;
}
.dma-open-info__copy > .text-link { margin-top: 17px; min-height: 44px; }
.dma-open-info__navigation {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  margin: 36px 0 0;
  padding: 0;
}
.dma-open-info__navigation a {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  max-width: 100%;
  min-height: 44px;
  padding: 4px 0;
  color: var(--link-on-light);
  background: transparent;
  border: 0;
  border-radius: 0;
  font-size: .875rem;
  font-weight: 550;
  line-height: 1.5;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .25em;
}
.dma-open-info__navigation .dma-open-info__enquiry { color: var(--link-on-light); font-weight: 550; }
.dma-open-info a:hover { color: var(--navy-900); text-decoration-thickness: 2px; }
.dma-open-info a:focus-visible { outline: 2px solid var(--link-on-light); outline-offset: 5px; }
.dma-open-info--regional { padding-block: clamp(36px, 4.5vw, 60px); }
.dma-open-info--regional .dma-open-info__layout { display: block; }
.dma-open-info--regional .dma-open-info__heading h2 { max-width: 32ch; font-size: clamp(1.7rem, 2.5vw, 2.25rem); }
@media (max-width: 900px) {
  .dma-open-info__layout { grid-template-columns: minmax(0, 1fr); gap: 17px; }
  .dma-open-info__navigation { flex-direction: row; flex-wrap: wrap; gap: 0 23px; margin-top: 0; }
}
@media (max-width: 480px) {
  .dma-open-info { padding-block: 42px; }
  .dma-open-info .dma-open-info__heading h2 { max-width: 26ch; font-size: 1.8rem; line-height: 1.2; }
  .dma-open-info__copy { margin-top: 17px; }
  .dma-open-info__navigation { gap: 0 19px; }
  .dma-open-info__navigation a { font-size: .84rem; }
}
@media print {
  .dma-open-info { padding-block: 16pt; }
  .dma-open-info__layout { display: block; }
  .dma-open-info__navigation { flex-direction: row; margin-top: 12pt; gap: 10pt; }
}

/* DMA section introductions: shared type rhythm, chosen layouts per context. */
main.dma-type-system {
  --intro-title-size: clamp(2rem, 3.05vw, 2.75rem);
  --intro-copy-width: 64ch;
  --intro-label-gap: clamp(11px, 1.3vw, 17px);
  --intro-copy-gap: clamp(16px, 2vw, 25px);
}
main.dma-type-system .content-section .section-kicker {
  margin-bottom: var(--intro-label-gap);
  color: var(--link-on-light);
  font-size: .76rem;
  font-weight: 750;
  letter-spacing: .105em;
}
main.dma-type-system .content-section .section-kicker > span {
  width: 24px;
  background: var(--dma-blue);
}
/* The information panels have an intentionally dark surface. */
main.dma-type-system .dma-info-section .section-kicker,
main.dma-type-system .content-section .section-kicker--light {
  color: var(--brand-200);
}
main.dma-type-system .content-section .section-heading h2,
main.dma-type-system .industries-section h2,
main.dma-type-system .about-section h2,
main.dma-type-system .story-section h2 {
  max-width: 18ch;
  font-size: var(--intro-title-size);
  line-height: 1.16;
  letter-spacing: -.034em;
  text-wrap: balance;
}
main.dma-type-system .content-section .section-heading {
  align-items: start;
  column-gap: clamp(32px, 5.5vw, 82px);
  margin-bottom: clamp(30px, 3.7vw, 49px);
}
main.dma-type-system .content-section .section-heading > p,
main.dma-type-system .content-section .section-heading__side > p {
  max-width: var(--intro-copy-width);
  margin: 6px 0 0;
  color: var(--slate-700);
  font-size: clamp(1rem, 1.22vw, 1.075rem);
  line-height: 1.72;
}
main.dma-type-system .section-heading__side .text-link { margin-top: 15px; }
/* Editorial lead-in: heading and explanation align to one left edge. */
main.dma-type-system .industries-section .section-copy {
  max-width: var(--intro-copy-width);
  margin-top: var(--intro-copy-gap);
  color: var(--slate-700);
  font-size: clamp(1rem, 1.2vw, 1.075rem);
  line-height: 1.72;
}
main.dma-type-system .industries-section .industry-chips { margin-top: clamp(25px, 3vw, 38px); }
/* Image-led company stories retain their composition, with a tighter text hierarchy. */
main.dma-type-system .about-section .about-copy__lead,
main.dma-type-system .story-section .story-copy__lead {
  max-width: var(--intro-copy-width);
  margin-top: var(--intro-copy-gap);
  font-size: clamp(1rem, 1.25vw, 1.1rem);
  line-height: 1.7;
}
main.dma-type-system .story-section .story-copy > p:not(.section-kicker),
main.dma-type-system .about-section .about-copy > p:not(.section-kicker) { max-width: 66ch; }
/* Previously approved office-purpose block keeps its own measured grid. */
main.dma-type-system .dma-office-purpose h2 { text-wrap: balance; }
/* Service introductions retain their contrasting panel and two-column reading order. */
main.dma-type--service .dma-info-section__heading h2 {
  font-size: clamp(1.85rem, 2.8vw, 2.6rem);
  line-height: 1.17;
  text-wrap: balance;
}
main.dma-type--service .service-faq-heading h2 {
  font-size: var(--intro-title-size);
  line-height: 1.16;
  max-width: 22ch;
  text-wrap: balance;
}
/* Region: a left-hand editorial introduction alongside the existing map. */
main.dma-type--region .territory-copy h2,
main.dma-type--region .route-note-grid h2 {
  font-size: var(--intro-title-size);
  line-height: 1.16;
  max-width: 22ch;
  text-wrap: balance;
}
main.dma-type--region .territory-copy > p:not(.section-kicker) {
  max-width: 64ch;
  line-height: 1.72;
}
main.dma-type--region .territory-copy h2 + p { margin-top: var(--intro-copy-gap); }
/* Forms: compact and practical; labels, fieldsets and controls are unaffected. */
main.dma-type--forms .dma-quote-intro h2,
main.dma-type--forms .dma-contact-primary h2 {
  font-size: clamp(1.8rem, 2.65vw, 2.4rem);
  line-height: 1.18;
  max-width: 29ch;
  text-wrap: balance;
}
main.dma-type--forms .dma-quote-intro h2 + p,
main.dma-type--forms .dma-contact-primary h2 + p {
  margin-top: 17px;
  max-width: 68ch;
  line-height: 1.72;
}
main.dma-type--forms .callback-form__heading h2,
main.dma-type--forms .contact-form__heading h2 {
  font-size: clamp(1.65rem, 2.1vw, 2rem);
  line-height: 1.2;
  text-wrap: balance;
}
/* Project reports use an article rhythm, rather than marketing-sized headings. */
main.dma-type--projects .projects-section-head h2,
main.dma-type--projects .project-detail h2 {
  font-size: clamp(1.8rem, 2.7vw, 2.4rem);
  line-height: 1.2;
  max-width: 29ch;
  text-wrap: balance;
}
main.dma-type--projects .projects-section-head > p {
  max-width: 65ch;
  margin-top: 17px;
  line-height: 1.72;
}
/* Explicitly centred introductions stay centred when their grid collapses. */
main.dma-type-system .section-heading--center {
  grid-template-columns: 1fr;
  justify-items: center;
  text-align: center;
  row-gap: 17px;
}
main.dma-type-system .section-heading--center h2 { max-width: 27ch; }
main.dma-type--career .section-heading h2 { max-width: 22ch; }
/* Long enquiry buttons must not squeeze the adjacent title at tablet widths. */
main.dma-type-system .service-detail-cta__inner > * { min-width: 0; }
main.dma-type-system .service-detail-cta__actions .button {
  max-width: 100%;
  white-space: normal;
}
@media (max-width: 1000px) {
  main.dma-type-system .service-detail-cta__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 27px;
  }
  main.dma-type-system .service-detail-cta__inner h2 { max-width: 26ch; text-wrap: balance; }
  main.dma-type-system .service-detail-related { grid-column: 1; }
}
/* The English privacy summary uses document spacing, without marketing decoration. */
main.dma-legal-reading .legal-copy { max-width: 76ch; }
main.dma-legal-reading .legal-copy h2 {
  margin: 34px 0 12px;
  font-size: clamp(1.4rem, 2.1vw, 1.8rem);
  line-height: 1.25;
  letter-spacing: -.025em;
  text-wrap: balance;
}
main.dma-legal-reading .legal-copy p { margin: 0 0 18px; line-height: 1.75; }
@media (max-width: 900px) {
  main.dma-type-system .content-section .section-heading { grid-template-columns: 1fr; row-gap: 15px; }
  main.dma-type-system .about-section h2,
  main.dma-type-system .story-section h2 { max-width: 26ch; }
  main.dma-type-system .content-section .section-heading > p,
  main.dma-type-system .content-section .section-heading__side > p { margin-top: 0; }
}
@media (max-width: 600px) {
  main.dma-type-system { --intro-title-size: clamp(1.78rem, 7.6vw, 2.1rem); --intro-label-gap: 12px; --intro-copy-gap: 17px; }
  main.dma-type-system .content-section .section-heading h2,
  main.dma-type-system .industries-section h2,
  main.dma-type-system .about-section h2,
  main.dma-type-system .story-section h2 { max-width: 22ch; }
  main.dma-type-system .content-section .section-heading { margin-bottom: 30px; }
}

/* Home approach label follows the heading's brand colour and exact text edge. */
main.dma-type-system .content-section .quality-card > .section-kicker {
  color: var(--navy-900);
  display: block;
  margin-inline: 0;
  padding-inline: 0;
  text-indent: 0;
}

/* Review preparation for 6.2.0: existing DMA tokens, scoped editorial refinements. */
main :is(.dma-office-purpose,.dma-open-info,.service-enquiry-section,.story-copy,.service-faq-list,.dma-quote-intro,.dma-industry-planning) p a:not(.button):not(.text-link),
main [data-dma-priority-content] a:not(.button),
main :is(.form-privacy-note,.callback-form__consent,.terms-enquiry-note) a {
 color:var(--link-on-light);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;
}
main :is(.dma-office-purpose,.dma-open-info,.service-enquiry-section,.story-copy,.service-faq-list,.dma-quote-intro,.dma-industry-planning) p a:not(.button):not(.text-link):hover,
main [data-dma-priority-content] a:not(.button):hover,
main :is(.form-privacy-note,.callback-form__consent,.terms-enquiry-note) a:hover {color:var(--navy-900)}
main :is(.dma-office-purpose,.dma-open-info,.service-enquiry-section,.story-copy,.service-faq-list,.dma-quote-intro,.dma-industry-planning,.form-privacy-note,.callback-form__consent) a:focus-visible {outline:2px solid var(--link-on-light);outline-offset:4px}
.dma-industry-planning{background:var(--brand-50);padding-block:clamp(40px,5vw,72px)}
.dma-industry-planning__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
main.dma-type-system .dma-industry-planning .section-kicker{color:var(--link-on-light)}
.dma-industry-planning h2{margin:0;max-width:23ch;font-size:var(--intro-title-size,clamp(2rem,3.05vw,2.75rem));line-height:1.16;letter-spacing:-.034em;color:var(--navy-900);text-wrap:balance}
.dma-industry-planning p:not(.section-kicker){margin:0 0 18px;max-width:65ch;color:var(--slate-700);font-size:1rem;line-height:1.72}
.dma-industry-planning .text-link{margin-top:4px;color:var(--link-on-light)}
.service-enquiry-next .service-enquiry-process{margin:12px 0 22px;max-width:57ch;color:var(--slate-700);font-size:1rem;line-height:1.72}
.dma-provider-change h2{font-size:var(--intro-title-size,clamp(2rem,3.05vw,2.75rem));line-height:1.16;letter-spacing:-.034em;max-width:22ch}
.dma-provider-change .dma-provider-intro{margin-top:var(--intro-copy-gap,20px);line-height:1.72;max-width:54ch}
.dma-provider-layout{column-gap:clamp(32px,5.5vw,82px);row-gap:22px}
.dma-provider-topics{gap:23px}
.dma-provider-change h3{font-size:1rem;line-height:1.4}
.dma-provider-topics p{font-size:.95rem;line-height:1.65}
.dma-provider-change .dma-provider-note{font-size:.875rem;line-height:1.65}
@media(max-width:760px){.dma-industry-planning__inner{grid-template-columns:minmax(0,1fr);gap:22px}.dma-industry-planning h2{max-width:26ch}.dma-provider-layout{row-gap:23px}.dma-provider-topics{gap:20px}.service-enquiry-next .service-enquiry-process{margin-top:10px}}
@media print{.dma-industry-planning{background:white;padding-block:20pt}.dma-industry-planning__inner{display:block}.dma-provider-change h2{font-size:20pt}}

main :is([data-dma-eschborn-home-link],[data-dma-eschborn-industry-link]) .text-link{color:var(--link-on-light)}
main :is([data-dma-eschborn-home-link],[data-dma-eschborn-industry-link]) .text-link:hover{color:var(--navy-900)}
main :is([data-dma-eschborn-home-link],[data-dma-eschborn-industry-link]) .text-link:focus-visible{outline:2px solid var(--link-on-light);outline-offset:4px}

/* Shared field composition: controls stay top-aligned when help/error text wraps. */
.form-grid{align-items:start}.form-grid>label,.form-grid .enquiry-location-fields>label{align-self:start;justify-content:flex-start;align-content:start;min-width:0}
.dma-field-stable{display:flex;flex-direction:column;justify-content:flex-start!important;align-self:start;min-width:0;gap:8px}
.dma-field-stable>.field-error{display:block;position:static;flex:none;order:99;width:100%;margin:0;padding:0;font-size:.82rem;line-height:1.45;overflow-wrap:anywhere}
.dma-field-stable:has(input[type=checkbox]){display:grid;grid-template-columns:auto minmax(0,1fr)}
.dma-field-stable:has(input[type=checkbox])>.field-error{grid-column:1/-1}
#callback-schedule-status{display:block;min-height:1.5em;font-size:.8rem;line-height:1.5;margin-top:4px;color:var(--slate-600)}
.quality-card>.section-kicker{color:var(--navy-900)}
.dma-open-editorial{border-top:0!important}.dma-open-editorial .section-intro,.dma-open-editorial .service-section-heading{border-top:0}
.region-map__legend{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}.region-map__legend>span{display:inline-flex;align-items:center;gap:7px}
/* Remove only repeated decorative editorial rules, leaving table/navigation rules intact. */
.dma-open-editorial .service-enquiry-card,.dma-open-editorial .service-enquiry-next ul,.dma-open-editorial .job-card__body,.dma-open-editorial .service-planning-steps{border-top:0!important}
.dma-open-editorial .service-enquiry-next li,.dma-open-editorial .service-planning-steps>li{border-bottom:0!important}
@media(max-width:700px){.dma-open-editorial .job-card__body>div+div{border-top:0!important}}
.enquiry-address-grid{align-items:start!important}.enquiry-address-grid>.dma-field-stable{align-self:start!important}
.enquiry-location>p{margin-top:0}

/* Form audit: shared dimensions, independent of field type or page. */
form.callback-form,form.contact-form{min-width:0}
form .form-grid>*,form .callback-schedule>*{min-width:0}
form.callback-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),form.contact-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),form.callback-form select,form.contact-form select,form.callback-form textarea,form.contact-form textarea{box-sizing:border-box;width:100%;max-width:100%;min-width:0;font-size:1rem}
form.callback-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),form.contact-form input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),form.callback-form select,form.contact-form select{min-height:48px}
form.callback-form textarea,form.contact-form textarea{display:block;min-height:120px;height:auto;resize:vertical;line-height:1.55}
form .form-grid__wide{grid-column:1/-1}
form .contact-form__heading h2,form .callback-form__heading h2{max-width:24ch;text-wrap:balance;overflow-wrap:normal;word-break:normal}
form .field-error{overflow-wrap:anywhere}
form .dma-field-stable:not(:has(input[type=checkbox])):not(:has(input[type=radio]))::after{content:"";display:block;min-height:1.25em;font-size:.82rem}
form .dma-field-stable:has(.field-error)::after{display:none}
form .sites-form-status:empty,form .dma-submit-status:empty{display:none}
form .dma-upload-picker,form .dma-upload-list,form .dma-upload-summary{max-width:100%;min-width:0;overflow-wrap:anywhere}
form .dma-upload-file__heading{flex-wrap:wrap}
form .dma-upload-file__heading strong{min-width:0;overflow-wrap:anywhere}
.practice-hygiene-editorial .service-competence-grid article{background:transparent;box-shadow:none;border:0;border-radius:0;padding:0}
.practice-hygiene-editorial .service-competence-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 48px;align-items:start}
.practice-hygiene-editorial .practice-working-methods{grid-column:2;grid-row:1/span 2}
.practice-hygiene-editorial .service-competence-grid p+p{margin-top:14px}
.practice-hygiene-editorial [id]{scroll-margin-top:calc(var(--header-height) + 24px)}
.practice-source-note{max-width:80ch;margin-top:32px;font-size:.85rem;line-height:1.6;color:var(--slate-600)}
.practice-source-note p{margin:6px 0 10px}
.practice-source-note a{color:var(--navy-900);text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){form .form-grid,form .callback-schedule,form .enquiry-address-grid,form .enquiry-location-grid{grid-template-columns:minmax(0,1fr)}form .form-grid__wide{grid-column:1/-1}form .form-grid{gap:12px}form .callback-form__heading{gap:12px}form .contact-form__heading h2,form .callback-form__heading h2{font-size:clamp(1.65rem,6vw,2rem);line-height:1.2}form .callback-form__footer{align-items:stretch}}

.practice-planning .service-planning-steps{background:transparent;box-shadow:none;border:0;padding:0}.practice-planning .service-planning-steps>li{display:block;background:transparent;box-shadow:none;border:0;padding:14px 0}.practice-planning .service-planning-steps>li>div{width:100%;min-width:0}.practice-planning .service-planning-steps p,.practice-hygiene-editorial .service-competence-grid p{font-size:1rem;line-height:1.7}

/* Labels retain one explicit fluid grid track, including anonymous label text. */
form .form-grid label.dma-field-stable{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;justify-items:stretch;align-content:start}
form .form-grid label.dma-field-stable:has(input[type=checkbox]),form .form-grid label.dma-field-stable:has(input[type=radio]){grid-template-columns:auto minmax(0,1fr)}
form .dma-upload-input{width:1px;max-width:1px;min-width:0;overflow:hidden}

/* Content order remains methods, hygiene, knowledge when the editorial grid collapses. */
@media(max-width:900px){.practice-hygiene-editorial .service-competence-grid{grid-template-columns:minmax(0,1fr);gap:28px}.practice-hygiene-editorial .practice-working-methods{grid-column:auto;grid-row:auto}}

/* One content column for the callback lead and footer prevents narrow pseudo-table cells. */
.callback-form .callback-form__heading{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
.callback-form .callback-form__heading>p{margin:0;max-width:55ch;line-height:1.65}
.callback-form .callback-form__footer{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
.callback-form .callback-form__footer small{display:block;max-width:65ch;font-size:.875rem;line-height:1.65}
.callback-form .callback-form__footer .button{justify-self:start;max-width:100%;white-space:normal}

/* The hygiene lead follows the heading with readable paragraphs, not a narrow side column. */
.practice-hygiene-editorial .service-competence-heading{grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
.practice-hygiene-editorial .service-competence-heading h2{max-width:30ch}
.practice-hygiene-editorial .practice-hygiene-introduction{max-width:76ch}
.practice-hygiene-editorial .practice-hygiene-introduction p{margin:0;font-size:1rem;line-height:1.7;color:var(--slate-700)}
.practice-hygiene-editorial .practice-hygiene-introduction p+p{margin-top:12px}
