/* Neutralise builder defaults only on converted elements. Generated Elementor
   per-element CSS retains higher specificity, so editor controls win. */
:where(.dci-site) .e-con { --display:block; --container-default-padding-top:0px; --container-default-padding-bottom:0px; --container-default-padding-left:0px; --container-default-padding-right:0px; --gap:0px; --width:100%; --border-radius:0px; --flex-wrap:nowrap; --align-items:initial; --justify-content:initial; padding:0; margin:0; gap:0; }
:where(.dci-site) .e-con.e-flex { --flex-wrap:nowrap; }
.dci-site .dci-atom, .dci-site .dci-atom > .elementor-widget-container {display:contents;}
.dci-site .elementor-widget-text-editor {font-family:inherit;color:inherit;}
:where(.dci-site) .elementor-button {font-family:inherit;font-weight:inherit;line-height:inherit;text-align:inherit;background:none;color:inherit;border-radius:0;padding:0;}
.dci-site .elementor-widget-image img {vertical-align:initial;display:block;}
:where(.dci-site) .elementor-heading-title {line-height:1.12;}
.dci-site [hidden] {display:none !important;}

.elementor-editor-active .reveal {opacity:1!important;transform:none!important;}
.elementor-editor-active .hero-video {pointer-events:none;}
.elementor-editor-active .elementor-widget-dci-shared {min-height:40px;}
/* Original block elements must not inherit Elementor's default column layout. */
:where(.dci-site) .e-con{display:block;width:auto;flex-direction:row;align-items:normal;justify-content:normal;align-self:auto;flex-grow:0;flex-shrink:1;}
:where(.dci-site) nav.e-con{display:flex;align-items:center;gap:32px;font-size:12px;}
:where(.dci-site) .elementor-widget-button{--align-self:initial;text-align:initial;}
:where(.dci-site) .elementor-widget-image{text-align:initial;}
:where(.dci-site) .elementor-button{font-size:inherit;}

/* Live appointment availability is rendered by Calendly; service fields stay local. */
.dci-site #appointment-booking{margin-top:24px;min-width:0}
.dci-site #appointment-booking iframe{display:block;width:100%;height:820px;border:0;border-radius:8px;background:#fff}
.dci-site #service-fields{padding:0;margin:0;border:0;min-width:0}
.dci-site #appointment-booking .field-help{display:block;margin:16px 0}
@media(max-width:600px){.dci-site #appointment-booking iframe{height:940px}}
