/* DCA Core 2.11.7 | Unified interaction design
 * Strict component scoping; all colours and radii inherit the active Style Studio.
 * Earlier Elementor overrides are preserved by avoiding !important declarations.
 */
:root {
  --dca-ui-space-xs: 8px;
  --dca-ui-space-sm: 14px;
  --dca-ui-space-md: clamp(18px,2.2vw,28px);
  --dca-ui-space-lg: clamp(26px,4vw,48px);
  --dca-ui-field-height: 52px;
  --dca-ui-line: var(--dca-card-border,var(--dca-border));
  --dca-ui-panel: var(--dca-surface);
  --dca-ui-radius: var(--dca-radius-card,6px);
}
/* One interactive surface language for checkout, enquiry forms and comments. */
.dca-event-single__tickets .dca-ticket-form--pro,
.dca-form-section .dca-form-card,
.dca-news-page .dca-news-comment-form {
  color:var(--dca-text);
  border-color:var(--dca-ui-line);
  border-radius:var(--dca-ui-radius);
}
.dca-event-single__tickets :is(.dca-ticket-basket,.dca-ticket-option-group),
.dca-news-page .dca-news-comments .comment-body {
  border-color:var(--dca-ui-line);
  border-radius:var(--dca-ui-radius);
}
.dca-event-single__tickets :is(.dca-ticket-basket__head,.dca-ticket-customer-head),
.dca-news-page .dca-news-comments__head,
.dca-form-section .dca-form-intro {
  min-width:0;
}
.dca-event-single__tickets :is(.dca-ticket-basket__head strong,.dca-ticket-customer-head strong),
.dca-news-page .dca-news-comments__title,
.dca-form-section .dca-form-intro h2 {
  font-family:var(--dca-font-heading,inherit);
  letter-spacing:-.035em;
  text-wrap:balance;
}
.dca-event-single__tickets .dca-ticket-basket__row {
  align-items:center;
  min-width:0;
  border-color:var(--dca-ui-line);
}
.dca-event-single__tickets .dca-ticket-basket__info {min-width:0;overflow-wrap:anywhere}
.dca-event-single__tickets .dca-ticket-basket__quantity select {
  min-height:var(--dca-ui-field-height);
  border-radius:var(--dca-radius-sm,3px);
}
.dca-event-single__tickets .dca-ticket-basket__row:focus-within {
  outline:2px solid var(--dca-orange);
  outline-offset:-2px;
}
.dca-event-single__tickets .dca-ticket-order-summary {
  border:1px solid var(--dca-ui-line);
  border-radius:var(--dca-ui-radius);
  padding:var(--dca-ui-space-md);
  background:var(--dca-ui-panel);
  gap:var(--dca-ui-space-sm);
}
.dca-event-single__tickets .dca-ticket-order-summary strong {
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.dca-event-single__tickets .dca-ticket-methods label {min-height:60px;}
.dca-event-single__tickets .dca-ticket-methods label:focus-within {
  outline:2px solid var(--dca-orange);
  outline-offset:2px;
}
/* Form elements share height, border and focus feedback but keep Elementor sizing. */
.dca-event-single__tickets .dca-ticket-form--pro :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea),
.dca-form-section .dca-form-field :is(input,select,textarea),
.dca-news-page .dca-news-comment-form :is(input:not([type="checkbox"]),textarea) {
  box-sizing:border-box;
  max-width:100%;
  color:var(--dca-text);
  border-color:var(--dca-ui-line);
  border-radius:var(--dca-radius-sm,3px);
}
.dca-event-single__tickets .dca-ticket-form--pro :is(input,select,textarea):focus-visible,
.dca-form-section .dca-form-field :is(input,select,textarea):focus-visible,
.dca-news-page .dca-news-comment-form :is(input,textarea):focus-visible {
  outline:2px solid var(--dca-orange);
  outline-offset:2px;
  border-color:var(--dca-orange);
}
.dca-event-single__tickets .dca-ticket-form--pro :is(input,select,textarea):disabled,
.dca-form-section .dca-form-field :is(input,select,textarea):disabled {
  opacity:.6;
  cursor:not-allowed;
}
.dca-event-single__tickets .dca-ticket-form--pro :is(input,select,textarea)[aria-invalid="true"],
.dca-form-section .dca-form-field.is-invalid :is(input,select,textarea),
.dca-news-page .dca-news-comment-form :is(input,textarea)[aria-invalid="true"] {
  border-color:#cf675a;
}
.dca-news-page .dca-news-comments .comment-list {padding-left:0;}
.dca-news-page .dca-news-comments .comment-body {box-shadow:0 10px 28px rgba(0,0,0,.08)}
.dca-news-page .dca-news-comments .comment-content {max-width:72ch;}
.dca-news-page .dca-news-comment-form :is(.comment-form-comment,.comment-form-author,.comment-form-email,.comment-form-url) label,
.dca-form-section .dca-form-field>span {
  display:block;
  margin-bottom:8px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
  line-height:1.45;
}
.dca-news-page .dca-news-comment-form .submit,
.dca-form-section .dca-form .dca-btn,
.dca-event-single__tickets .dca-ticket-submit {
  min-height:var(--dca-ui-field-height);
  border-radius:var(--dca-button-radius,3px);
  font-weight:750;
}
.dca-form-section .dca-form-errors:not([hidden]) {scroll-margin-top:110px;}
.dca-event-single__tickets :is(input,select,textarea),
.dca-form-section :is(input,select,textarea),
.dca-news-page .dca-news-comment-form :is(input,textarea) {accent-color:var(--dca-orange)}
@media(max-width:767px) {
  .dca-event-single__tickets .dca-ticket-basket__row {min-width:0;}
  .dca-event-single__tickets .dca-ticket-order-summary strong {white-space:normal;overflow-wrap:anywhere;}
  .dca-news-page .dca-news-comment-form {padding:clamp(18px,5vw,28px)}
  .dca-news-page .dca-news-comments .comment-body {padding:clamp(16px,4.5vw,24px)}
  .dca-form-section .dca-form-field :is(input,select,textarea),
  .dca-event-single__tickets .dca-ticket-form--pro :is(input,select,textarea),
  .dca-news-page .dca-news-comment-form :is(input,textarea) {font-size:16px}
}
@media(prefers-reduced-motion:reduce) {
  .dca-event-single__tickets :is(input,select,textarea,button),
  .dca-form-section :is(input,select,textarea,button),
  .dca-news-page .dca-news-comment-form :is(input,textarea,button) {transition:none}
}
