/* DaddyCandle Testimonials Suite v1.7.9
 * Responsive, namespaced styles for the account endpoint, form controls, media upload and public cards.
 */
.dcts-scope {
  --dcts-accent: #12382A;
  --dcts-text: #08100D;
  --dcts-card: #E8E2D4;
  --dcts-border: #D8CFBA;
  --dcts-gold: #D1B05E;
  color: var(--dcts-text);
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.6;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: break-word;
}
.dcts-scope *,
.dcts-scope *::before,
.dcts-scope *::after { box-sizing: border-box; }
.dcts-scope img,
.dcts-scope video,
.dcts-scope iframe,
.dcts-scope audio { max-width: 100%; }
.dcts-scope button,
.dcts-scope input,
.dcts-scope select,
.dcts-scope textarea { font: inherit; }
.dcts-scope a { color: var(--dcts-accent); }
.dcts-scope :focus-visible {
  outline: 3px solid var(--dcts-gold);
  outline-offset: 2px;
}

/* My Account endpoint: preserve WooCommerce's left navigation and place the review workspace at the top-right. */
body.dcts-account-testimonials-page .woocommerce {
  display: grid;
  grid-template-columns: minmax(220px, 250px) minmax(0, 1fr);
  column-gap: clamp(22px, 2.8vw, 38px);
  row-gap: 18px;
  align-items: start;
  width: 100%;
  max-width: 1320px;
  min-width: 0;
  margin: 0 auto;
  padding-inline: clamp(12px, 1.6vw, 24px);
}
body.dcts-account-testimonials-page .woocommerce > .woocommerce-MyAccount-navigation,
body.dcts-account-testimonials-page .woocommerce > .woocommerce-MyAccount-content {
  float: none;
  position: relative;
  inset: auto;
  width: auto;
  min-width: 0;
  max-width: 100%;
  margin: 0;
  padding: 0;
  clear: none;
  align-self: start;
}
body.dcts-account-testimonials-page .woocommerce > .woocommerce-MyAccount-navigation {
  grid-column: 1;
  grid-row: 1;
}
body.dcts-account-testimonials-page .woocommerce > .woocommerce-MyAccount-content {
  grid-column: 2;
  grid-row: 1;
  overflow-wrap: anywhere;
}
body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-content > :first-child {
  margin-top: 0;
}
body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-navigation ul {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 4px;
  list-style: none;
  margin: 0;
  padding: 8px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 12px;
  background: rgba(232, 226, 212, .42);
}
body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-navigation li {
  margin: 0;
  padding: 0;
  min-width: 0;
  list-style: none;
}
body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-navigation a {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 42px;
  padding: 10px 12px;
  border-radius: 8px;
  color: #12382A;
  font-size: .94rem;
  font-weight: 550;
  line-height: 1.4;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
  transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
}
body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-navigation a:hover {
  background: rgba(209, 176, 94, .16);
  color: #08100D;
}
body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-navigation .is-active a {
  background: #12382A;
  color: #FFFFFF;
  box-shadow: inset 3px 0 0 #D1B05E;
  font-weight: 700;
}
body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-navigation a:focus-visible {
  outline: 3px solid #D1B05E;
  outline-offset: 2px;
}

/* Endpoint heading and review form: compact top spacing, consistent readable widths. */
/* Base card styles also apply when the submission shortcode is used outside My Account. */
.dcts-scope .dcts-form-card {
  width: 100%;
  max-width: 860px;
  min-width: 0;
  margin: 24px auto;
  padding: clamp(18px, 2.5vw, 30px);
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 15px;
  background: var(--dcts-card, #E8E2D4);
  box-shadow: 0 6px 20px rgba(8, 16, 13, .04);
}
body.dcts-account-testimonials-page .dcts-account-center {
  width: 100%;
  max-width: 840px;
  min-width: 0;
  margin: 0 auto;
  padding: 0 0 12px;
  color: var(--dcts-text, #08100D);
}
.dcts-account-title {
  width: 100%;
  max-width: 660px;
  margin: 0 auto 20px;
  padding: 0 8px;
  text-align: center;
}
.dcts-account-title .dcts-eyebrow { margin: 0 0 7px; }
.dcts-account-title h1 {
  margin: 0 0 9px;
  color: var(--dcts-text, #08100D);
  font-size: clamp(1.7rem, 2.3vw, 2.15rem);
  font-weight: 650;
  line-height: 1.18;
  letter-spacing: -.025em;
  text-wrap: balance;
}
.dcts-account-title p:last-child {
  max-width: 58ch;
  margin: 0 auto;
  color: #3F4943;
  font-size: clamp(.96rem, 1.2vw, 1.04rem);
  line-height: 1.6;
  text-align: center;
}
.dcts-account-center .dcts-submit-scope {
  width: 100%;
  max-width: 820px;
  min-width: 0;
  margin: 0 auto;
  text-align: left;
}
.dcts-account-center .dcts-notice {
  width: 100%;
  max-width: 760px;
  margin: 0 auto 16px;
}
.dcts-account-center .dcts-form-card {
  width: 100%;
  max-width: 760px;
  min-width: 0;
  margin: 0 auto;
  padding: clamp(20px, 2.4vw, 30px);
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 16px;
  background: var(--dcts-card, #E8E2D4);
  box-shadow: 0 8px 24px rgba(8, 16, 13, .045);
}
.dcts-form-head {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  margin: 0 0 22px;
  padding: 0 0 19px;
  border-bottom: 1px solid var(--dcts-border, #D8CFBA);
}
.dcts-customer-avatar { width: 56px; max-width: 100%; }
.dcts-customer-avatar img {
  display: block;
  width: 56px;
  height: 56px;
  margin: 0;
  border-radius: 50%;
  object-fit: cover;
}
.dcts-eyebrow {
  margin: 0 0 5px;
  color: var(--dcts-accent, #12382A);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .105em;
  line-height: 1.35;
  text-transform: uppercase;
}
.dcts-scope h2,
.dcts-scope h3 {
  margin: 0 0 9px;
  color: var(--dcts-text, #08100D);
  line-height: 1.22;
  text-wrap: balance;
}
.dcts-scope h2 { font-size: clamp(1.35rem, 2vw, 1.7rem); letter-spacing: -.02em; }
.dcts-lead {
  max-width: 62ch;
  margin: 0;
  color: #3F4943;
  font-size: .96rem;
  line-height: 1.6;
}
.dcts-review-form { width: 100%; max-width: 100%; min-width: 0; }
.dcts-field { min-width: 0; margin: 0 0 16px; }
.dcts-field label {
  display: block;
  margin: 0 0 7px;
  color: var(--dcts-text, #08100D);
  font-size: .91rem;
  font-weight: 700;
  line-height: 1.42;
}
.dcts-field input[type="text"],
.dcts-field input[type="email"],
.dcts-field input[type="file"],
.dcts-field input[type="number"],
.dcts-field select,
.dcts-field textarea {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  min-height: 46px;
  margin: 0;
  padding: 11px 13px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 8px;
  background: #FFFEFA;
  color: var(--dcts-text, #08100D);
  font: inherit;
  font-size: 1rem;
  line-height: 1.4;
  box-shadow: none;
}
.dcts-field input[type="file"] { padding: 8px; }
.dcts-field input[type="file"]::file-selector-button {
  margin-right: 10px;
  padding: 7px 10px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 6px;
  background: #F8F5ED;
  color: var(--dcts-accent, #12382A);
  font: inherit;
  cursor: pointer;
}
.dcts-field textarea { min-height: 132px; resize: vertical; }
.dcts-field select { padding-right: 34px; }
.dcts-field input:focus,
.dcts-field select:focus,
.dcts-field textarea:focus {
  border-color: #D1B05E;
  outline: 2px solid rgba(209, 176, 94, .28);
  outline-offset: 1px;
}
.dcts-field small,
.dcts-privacy-note {
  display: block;
  margin: 6px 0 0;
  color: #465149;
  font-size: .82rem;
  line-height: 1.55;
}
.dcts-form-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 16px;
  min-width: 0;
}
.dcts-form-row .dcts-field { min-width: 0; }
.dcts-consents { display: grid; gap: 10px; margin: 19px 0; }
.dcts-consents label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  color: var(--dcts-text, #08100D);
  font-size: .88rem;
  font-weight: 450;
  line-height: 1.55;
}
.dcts-consents input { flex: 0 0 auto; margin: 4px 0 0; accent-color: var(--dcts-accent, #12382A); }
.dcts-consent-optional {
  padding: 10px 11px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 8px;
  background: rgba(255, 254, 250, .65);
}
.dcts-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  max-width: 100%;
  padding: 11px 17px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: var(--dcts-accent, #12382A);
  color: #FFFFFF !important;
  font: inherit;
  font-size: .94rem;
  font-weight: 750;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease, transform .15s ease;
}
.dcts-button:hover { background: #194A37; }
.dcts-button:active { transform: translateY(1px); }
.dcts-button:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.dcts-secondary {
  border-color: var(--dcts-border, #D8CFBA);
  background: #FFFEFA;
  color: var(--dcts-accent, #12382A) !important;
}
.dcts-secondary:hover { background: #F1EBD9; }
.dcts-quiet {
  border-color: transparent;
  background: transparent;
  color: var(--dcts-accent, #12382A) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.dcts-submit { min-width: 190px; }
.dcts-account-center .dcts-submit { min-width: 190px; }
.dcts-record-buttons,
.dcts-file-action-buttons {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 8px;
  margin: 11px 0 16px;
}
.dcts-record-buttons .dcts-button,
.dcts-file-action-buttons .dcts-button { flex: 0 1 auto; }
.dcts-record-preview { margin: 12px 0; }
.dcts-record-preview video,
.dcts-record-preview audio {
  display: block;
  width: 100%;
  max-width: 100%;
  max-height: 320px;
  border-radius: 9px;
  background: #08100D;
}
.dcts-record-preview audio { min-height: 42px; }
.dcts-media-tools[hidden],
.dcts-record-preview[hidden],
.dcts-progress-wrap[hidden],
.dcts-upload-status[hidden] { display: none !important; }
.dcts-progress-wrap {
  margin: 15px 0 10px;
  padding: 13px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 10px;
  background: #FFFEFA;
}
.dcts-progress-label { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.dcts-progress { height: 9px; border-radius: 999px; background: #DCD8CC; overflow: hidden; }
.dcts-progress span { display: block; width: 0; height: 100%; border-radius: 999px; background: var(--dcts-accent, #12382A); transition: width .15s linear; }
.dcts-upload-status { margin: 9px 0; color: #465149; font-size: .88rem; line-height: 1.5; overflow-wrap: anywhere; }
.dcts-upload-status.is-error { color: #8B2525; }
.dcts-upload-status.is-success { color: #17623A; }
.dcts-upload-status.is-info { color: var(--dcts-accent, #12382A); }
.dcts-notice {
  width: 100%;
  max-width: 760px;
  margin: 16px auto;
  padding: 13px 15px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-left: 3px solid var(--dcts-accent, #12382A);
  border-radius: 8px;
  background: rgba(232, 226, 212, .58);
  color: var(--dcts-text, #08100D);
  line-height: 1.55;
  overflow-wrap: anywhere;
}
.dcts-notice.dcts-error { border-left-color: #A33131; }
.dcts-notice.dcts-success { border-left-color: #246B45; }
.dcts-data-notice {
  margin: 15px 0 10px;
  padding: 12px 13px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 8px;
  background: rgba(255, 254, 250, .72);
  color: #3F4943;
  font-size: .82rem;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
.dcts-data-notice a,
.dcts-removal-request a { color: var(--dcts-accent, #12382A); text-decoration: underline; text-underline-offset: 3px; font-weight: 650; }
.dcts-privacy-note { max-width: 70ch; margin-top: 9px; }
.dcts-removal-request { max-width: 760px; margin: 14px auto 0; padding: 0 2px; color: #465149; font-size: .82rem; line-height: 1.55; }
.dcts-category-pill {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  margin: 0 0 10px;
  padding: 4px 9px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 999px;
  background: rgba(232, 226, 212, .72);
  color: var(--dcts-accent, #12382A);
  font-size: .74rem;
  font-weight: 750;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

/* Form controls: consistent alignment, bounded widths and readable notices. */
.dcts-scope .dcts-review-form,
.dcts-scope .dcts-form-row,
.dcts-scope .dcts-field,
.dcts-scope .dcts-consents { min-width: 0; }
.dcts-scope .dcts-field input[type="text"],
.dcts-scope .dcts-field input[type="email"],
.dcts-scope .dcts-field input[type="file"],
.dcts-scope .dcts-field input[type="number"],
.dcts-scope .dcts-field select,
.dcts-scope .dcts-field textarea {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.dcts-scope .dcts-field input[type="file"] { min-height: 46px; }
.dcts-scope .dcts-field select { text-overflow: ellipsis; }
.dcts-scope .dcts-field label { overflow-wrap: anywhere; }
.dcts-scope .dcts-form-row > .dcts-field { min-width: 0; }
.dcts-scope .dcts-form-row > .dcts-field > label { min-height: 2.7em; }
.dcts-scope .dcts-notice,
.dcts-scope .dcts-data-notice,
.dcts-scope .dcts-upload-status,
.dcts-scope .dcts-privacy-note { overflow-wrap: anywhere; }
.dcts-scope .dcts-button { white-space: normal; touch-action: manipulation; }
.dcts-scope .dcts-submit { justify-self: start; }

/* Public testimonial sections/cards retain their existing shortcode behaviour. */
.dcts-public-section { width: 100%; max-width: 100%; margin: 24px auto; min-width: 0; }
.dcts-public-heading { max-width: 760px; margin: 0 auto 20px; padding: 0 10px; text-align: center; }
.dcts-public-heading h2 { margin: 0 0 9px; font-size: clamp(1.55rem, 2.6vw, 2rem); line-height: 1.2; letter-spacing: -.02em; }
.dcts-public-heading .dcts-lead { margin: 0 auto; }
.dcts-filter-row { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; margin: 17px 0 22px; }
.dcts-filter {
  min-height: 40px;
  padding: 8px 13px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 999px;
  background: transparent;
  color: var(--dcts-text, #08100D);
  font: inherit;
  font-size: .9rem;
  font-weight: 700;
  cursor: pointer;
}
.dcts-filter.is-active,
.dcts-filter:hover { border-color: var(--dcts-accent, #12382A); background: var(--dcts-accent, #12382A); color: #FFFFFF; }
.dcts-category-filter-label { display: inline-flex; align-items: center; max-width: 100%; }
.dcts-category-filter {
  width: auto;
  max-width: 260px;
  min-height: 40px;
  padding: 8px 30px 8px 12px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 999px;
  background: #FFFEFA;
  color: var(--dcts-text, #08100D);
  font: inherit;
  font-size: .9rem;
}
.dcts-public-grid {
  display: grid;
  grid-template-columns: repeat(var(--dcts-cols, 3), minmax(0, 1fr));
  gap: 18px;
  width: 100%;
  min-width: 0;
}
.dcts-review-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 17px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 13px;
  background: var(--dcts-card, #E8E2D4);
  color: var(--dcts-text, #08100D);
  box-shadow: 0 4px 16px rgba(8, 16, 13, .035);
  overflow: hidden;
}
.dcts-review-card[hidden] { display: none !important; }
.dcts-card-media { position: relative; min-height: 50px; margin: 0 0 12px; border-radius: 8px; background: rgba(8, 16, 13, .06); overflow: hidden; }
.dcts-card-media img { display: block; width: 100%; height: auto; max-height: 360px; object-fit: contain; }
.dcts-card-media audio { display: block; width: 100%; margin: 0; padding: 10px; }
.dcts-card-media iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; background: #08100D; }
.dcts-text-mark { padding: 10px 14px; color: var(--dcts-accent, #12382A); font-family: Georgia, serif; font-size: 3.6rem; line-height: .95; }
.dcts-pinned-label { position: absolute; z-index: 2; top: 10px; left: 10px; padding: 4px 8px; border-radius: 999px; background: var(--dcts-accent, #12382A); color: #FFFFFF; font-size: .7rem; font-weight: 800; letter-spacing: .03em; }
.dcts-verified-badge { position: absolute; z-index: 2; top: 10px; right: 10px; max-width: calc(100% - 120px); padding: 4px 8px; border-radius: 999px; background: #E7EFE8; color: #12382A; font-size: .68rem; font-weight: 800; line-height: 1.35; text-align: center; }
.dcts-review-copy-wrap { min-width:0; margin:0 0 13px; }
.dcts-review-card blockquote.dcts-review-copy { display:block; margin:0; padding:0; border:0; color:var(--dcts-text,#08100D); font-size:.98rem; line-height:1.55; overflow-wrap:anywhere; white-space:normal; }
.dcts-review-card blockquote.dcts-review-copy.is-clamped { max-height:7.75em; overflow:hidden; }
.dcts-review-card blockquote.dcts-review-copy.is-expanded { max-height:7.75em; overflow-y:auto; overflow-x:hidden; padding-right:5px; scrollbar-width:thin; scrollbar-color:var(--dcts-border,#D8CFBA) transparent; }
.dcts-read-more { display:inline-flex; align-items:center; justify-content:center; margin:7px 0 0; padding:5px 0; border:0; background:transparent; color:var(--dcts-accent,#12382A); font:inherit; font-size:.82rem; font-weight:800; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.dcts-read-more:hover,.dcts-read-more:focus-visible { color:#2F444D; outline-offset:3px; }
.dcts-read-more[hidden] { display:none !important; }
.dcts-rating { display: flex; align-items: center; gap: 2px; flex-wrap: wrap; margin: 0 0 9px; color: #A6A69F; font-size: 1rem; line-height: 1; }
.dcts-rating span.is-filled { color: #D1B05E; }
.dcts-rating small { margin-left: 6px; color: #465149; font-size: .75rem; }
.dcts-review-author { display: flex; align-items: center; gap: 10px; margin-top: auto; padding-top: 11px; border-top: 1px solid var(--dcts-border, #D8CFBA); }
.dcts-review-card .dcts-avatar { flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
.dcts-review-author strong { display: block; font-size: .93rem; overflow-wrap: anywhere; }
.dcts-review-author small { display: block; color: #465149; font-size: .8rem; }
.dcts-empty { padding: 26px 16px; border: 1px dashed var(--dcts-border, #D8CFBA); border-radius: 12px; background: rgba(232, 226, 212, .45); text-align: center; }
.dcts-empty h3 { margin-bottom: 7px; }
.dcts-empty p { margin: 0; }
.dcts-public-disclaimer { max-width: 980px; margin: 20px auto 0; color: #465149; font-size: .8rem; line-height: 1.55; text-align: center; }
.dcts-home-section .dcts-public-grid { grid-template-columns: repeat(var(--dcts-cols, 3), minmax(0, 1fr)); }
.dcts-form-card .is-optional-hidden { display: none !important; }

@media (max-width: 980px) {
  body.dcts-account-testimonials-page .woocommerce {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 18px;
    max-width: 860px;
    padding-inline: clamp(10px, 2vw, 18px);
  }
  body.dcts-account-testimonials-page .woocommerce > .woocommerce-MyAccount-navigation {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
  }
  body.dcts-account-testimonials-page .woocommerce > .woocommerce-MyAccount-content {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
  }
  body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-navigation ul {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 145px), 1fr));
    gap: 4px 8px;
    padding: 8px;
  }
  body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-navigation a { justify-content: center; text-align: center; }
  body.dcts-account-testimonials-page .dcts-account-center { max-width: 820px; }
  .dcts-public-grid,
  .dcts-home-section .dcts-public-grid { grid-template-columns: repeat(var(--dcts-cols-tablet, 2), minmax(0, 1fr)); gap: 15px; }
}
@media (max-width: 720px) {
  .dcts-account-title { margin-bottom: 17px; padding: 0 5px; }
  .dcts-account-title h1 { font-size: 1.7rem; }
  .dcts-account-title p:last-child { max-width: 48ch; font-size: .94rem; }
  .dcts-account-center .dcts-form-card { padding: 19px 16px; border-radius: 12px; }
  .dcts-form-row { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .dcts-scope .dcts-form-row > .dcts-field > label { min-height: 0; }
  .dcts-field { margin-bottom: 15px; }
  .dcts-account-center .dcts-submit { width: 100%; min-width: 0; }
  .dcts-record-buttons,
  .dcts-file-action-buttons { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .dcts-record-buttons .dcts-button,
  .dcts-file-action-buttons .dcts-button { width: 100%; min-width: 0; padding: 10px 9px; font-size: .88rem; }
  .dcts-public-grid,
  .dcts-home-section .dcts-public-grid { grid-template-columns: repeat(var(--dcts-cols-mobile, 1), minmax(0, 1fr)); gap: 12px; }
  .dcts-review-card { padding: 14px; border-radius: 11px; }
  .dcts-filter-row { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; padding: 2px 0 8px; -webkit-overflow-scrolling: touch; }
  .dcts-filter { flex: 0 0 auto; white-space: nowrap; }
  .dcts-category-filter-label { width: 100%; }
  .dcts-category-filter { width: 100%; max-width: 100%; }
  .dcts-submit { width: 100%; }
}
@media (max-width: 420px) {
  .dcts-form-card { padding: 16px 12px; }
  .dcts-form-head { grid-template-columns: 44px minmax(0, 1fr); gap: 11px; margin-bottom: 17px; padding-bottom: 15px; }
  .dcts-customer-avatar,
  .dcts-customer-avatar img { width: 44px; height: 44px; }
  .dcts-scope h2 { font-size: 1.32rem; }
  .dcts-lead { font-size: .91rem; }
  .dcts-account-title h1 { font-size: 1.55rem; }
  .dcts-account-center .dcts-form-card { padding: 16px 12px; }
  .dcts-record-buttons,
  .dcts-file-action-buttons { grid-template-columns: minmax(0, 1fr); }
  .dcts-record-buttons .dcts-button,
  .dcts-file-action-buttons .dcts-button { width: 100%; }
  .dcts-notice { padding: 11px 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .dcts-button,
  .dcts-filter,
  body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-navigation a { transition: none; }
}


/* v1.3.2 — Desktop-only correction for Testimonials / Your Review.
   Keep the existing tablet/mobile breakpoints and all form behaviour unchanged.
   Targets both native WooCommerce markup and the optional Customer Account Suite wrapper. */
@media (min-width: 1024px) {
  body.dcts-account-testimonials-page .dctcas-account-layout-v351,
  body.dcts-account-testimonials-page .woocommerce {
    align-items: start;
    min-width: 0;
  }

  /* The wrapper-aware branch selectors are needed when the account plugin wraps
     the native WooCommerce navigation/content in separate grid items. */
  body.dcts-account-testimonials-page .dctcas-account-layout-v351 > .dctcas-account-navigation-branch-v351,
  body.dcts-account-testimonials-page .dctcas-account-layout-v351 > .woocommerce-MyAccount-navigation,
  body.dcts-account-testimonials-page .woocommerce > .woocommerce-MyAccount-navigation {
    grid-column: 1;
    grid-row: 1;
    align-self: start;
    justify-self: stretch;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
  }

  body.dcts-account-testimonials-page .dctcas-account-layout-v351 > .dctcas-account-content-branch-v351,
  body.dcts-account-testimonials-page .dctcas-account-layout-v351 > .woocommerce-MyAccount-content,
  body.dcts-account-testimonials-page .woocommerce > .woocommerce-MyAccount-content {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    justify-self: stretch;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    float: none;
    clear: none;
    box-sizing: border-box;
  }

  /* Anchor the testimonial workspace to the right-hand content column; do not
     let it size/center itself against the full account page and sit below nav. */
  body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center {
    display: block;
    position: static;
    inset: auto;
    transform: none;
    float: none;
    clear: none;
    width: 100%;
    max-width: 840px;
    min-width: 0;
    margin: 0 auto 0 0;
    padding: 0 0 12px;
    box-sizing: border-box;
  }

  body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center > .dcts-account-title {
    width: 100%;
    max-width: 660px;
    margin: 0 auto 20px;
    box-sizing: border-box;
  }

  body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center > .dcts-submit-scope {
    display: block;
    position: static;
    inset: auto;
    transform: none;
    float: none;
    width: 100%;
    max-width: 820px;
    min-width: 0;
    margin: 0 auto;
    box-sizing: border-box;
  }

  body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center .dcts-form-card {
    width: 100%;
    max-width: 760px;
    min-width: 0;
    margin: 0 auto;
    box-sizing: border-box;
  }

  body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center .dcts-removal-request {
    width: 100%;
    max-width: 760px;
    margin: 14px auto 0;
    box-sizing: border-box;
  }
}

/* v1.4.0 — multi-photo gallery, camera selector and upload-limit helpers.
   Every selector remains inside DCTS-owned markup to avoid affecting the theme/site. */
.dcts-scope .dcts-photo-gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  width: 100%;
  min-width: 0;
}
.dcts-scope .dcts-photo-gallery a {
  display: block;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 10px;
  background: var(--dcts-card, #E8E2D4);
}
.dcts-scope .dcts-photo-gallery img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 330px;
  object-fit: contain;
}
.dcts-scope .dcts-camera-choice {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: min(100%, 190px);
  color: var(--dcts-text, #08100D);
  font-size: .9rem;
  font-weight: 600;
}
.dcts-scope .dcts-camera-choice select {
  width: 100%;
  max-width: 100%;
  min-height: 42px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 8px;
  padding: 8px 10px;
  background: #fff;
  color: var(--dcts-text, #08100D);
}
.dcts-scope .dcts-photo-count {
  margin: 6px 0 0;
  font-size: .88rem;
  color: var(--dcts-accent, #12382A);
  font-weight: 600;
}
.dcts-scope .dcts-removal-request {
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 12px;
  padding: 16px;
  background: rgba(255,255,255,.55);
}
.dcts-scope .dcts-removal-request p { margin: 0 0 10px; }
.dcts-scope .dcts-removal-form { margin: 8px 0; }
.dcts-scope .dcts-admin-photo-gallery { display: flex; flex-wrap: wrap; gap: 8px; max-width: 340px; }
.dcts-scope .dcts-admin-photo-gallery a { display: block; max-width: 100px; }
.dcts-scope .dcts-admin-photo-gallery img { display: block; width: 100%; height: auto; max-height: 100px; object-fit: contain; }
@media (max-width: 420px) {
  .dcts-scope .dcts-photo-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; }
  .dcts-scope .dcts-camera-choice { width: 100%; }
}


/* v1.5.1 — reliable asset/cache refresh, compact media controls and luxury form treatment.
   All rules are deliberately scoped to this plugin's own markup. */
.dcts-scope [hidden],
.dcts-scope .dcts-media-tools[hidden],
.dcts-scope .dcts-record-preview[hidden],
.dcts-scope .dcts-photo-capture-panel[hidden],
.dcts-scope .dcts-progress-wrap[hidden] { display: none !important; }
.dcts-scope {
  font-size: 16px !important;
  line-height: 1.65;
  color: var(--dcts-text, #08100D);
}
.dcts-scope .dcts-form-card {
  display: block;
  width: 100%;
  max-width: 980px;
  min-width: 0;
  margin: 22px auto;
  padding: clamp(22px, 3vw, 42px);
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 20px;
  background: #FFFEFA;
  box-shadow: 0 16px 42px rgba(8, 16, 13, .065);
}
.dcts-scope .dcts-form-head {
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-bottom: 26px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--dcts-border, #D8CFBA);
}
.dcts-scope .dcts-customer-avatar,
.dcts-scope .dcts-customer-avatar img { width: 64px; height: 64px; }
.dcts-scope .dcts-eyebrow { color: #9A7845; letter-spacing: .14em; font-size: .72rem; }
.dcts-scope h2 { font-size: clamp(1.5rem, 2vw, 2rem); font-weight: 700; letter-spacing: -.025em; }
.dcts-scope .dcts-lead { max-width: 66ch; font-size: 1rem; color: #4A554F; }
.dcts-scope .dcts-field { display: block; width: 100%; margin: 0 0 20px; }
.dcts-scope .dcts-field > label {
  display: block !important;
  width: 100%;
  margin: 0 0 8px;
  color: #202B26;
  font-size: .94rem;
  font-weight: 650;
  line-height: 1.4;
}
.dcts-scope .dcts-field input[type="text"],
.dcts-scope .dcts-field input[type="email"],
.dcts-scope .dcts-field input[type="number"],
.dcts-scope .dcts-field select,
.dcts-scope .dcts-field textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid #D8CFBA;
  border-radius: 10px;
  background: #FFFFFF;
  color: #202B26;
  font: inherit;
  font-size: 1rem;
  line-height: 1.45;
  box-shadow: none;
}
.dcts-scope .dcts-field textarea { min-height: 150px; resize: vertical; }
.dcts-scope .dcts-field small { color: #59645F; font-size: .84rem; }
/* Keep the actual file picker accessible to script, but do not show a duplicate native picker beside branded buttons. */
.dcts-scope .dcts-field input[type="file"].dcts-file-input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.dcts-scope .dcts-form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.dcts-scope .dcts-media-tools {
  margin: 22px 0;
  padding: clamp(16px, 2.2vw, 24px);
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 15px;
  background: linear-gradient(145deg, #FFFEFA 0%, #F5F0E5 100%);
}
.dcts-scope .dcts-file-action-buttons,
.dcts-scope .dcts-record-buttons,
.dcts-scope .dcts-photo-camera-tools {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 10px;
  margin: 12px 0;
}
.dcts-scope .dcts-button {
  min-height: 46px;
  padding: 12px 18px;
  border-radius: 9px;
  border-color: #12382A;
  background: #12382A;
  font-size: .94rem;
  font-weight: 700;
  letter-spacing: .005em;
  box-shadow: none;
}
.dcts-scope .dcts-button:hover { background: #1B4A37; border-color: #1B4A37; }
.dcts-scope .dcts-button.dcts-secondary {
  border-color: #C9B98D;
  background: #FFFEFA;
  color: #17382C !important;
}
.dcts-scope .dcts-button.dcts-secondary:hover { background: #F1E9D7; }
.dcts-scope .dcts-button.dcts-quiet { color: #59645F !important; }
.dcts-scope .dcts-photo-capture-panel {
  margin: 14px 0;
  padding: 14px;
  border: 1px solid #C9B98D;
  border-radius: 12px;
  background: #FFFFFF;
}
.dcts-scope .dcts-photo-camera-tools { align-items: end; }
.dcts-scope .dcts-photo-camera-tools label {
  display: grid !important;
  gap: 6px;
  min-width: 180px;
  margin: 0;
  font-weight: 650;
}
.dcts-scope .dcts-photo-camera-tools select,
.dcts-scope .dcts-camera-choice select {
  min-height: 42px;
  padding: 9px 12px;
  border: 1px solid var(--dcts-border, #D8CFBA);
  border-radius: 8px;
  background: #FFFFFF;
  color: #202B26;
  font: inherit;
}
.dcts-scope [data-photo-camera-preview] {
  display: block;
  width: 100%;
  max-height: min(56vh, 480px);
  margin: 10px 0;
  border-radius: 10px;
  background: #08100D;
  object-fit: contain;
}
.dcts-scope .dcts-consents {
  display: grid;
  gap: 12px;
  margin: 24px 0 18px;
  padding: 18px;
  border: 1px solid #DED7C6;
  border-radius: 13px;
  background: #F8F5ED;
}
.dcts-scope .dcts-consents label { font-size: .91rem; line-height: 1.55; color: #2B342F; }
.dcts-scope .dcts-consents input { width: 18px; height: 18px; }
.dcts-scope .dcts-data-notice,
.dcts-scope .dcts-privacy-note {
  color: #58625D;
  font-size: .86rem;
  line-height: 1.6;
}
.dcts-scope .dcts-progress-wrap { margin: 18px 0; padding: 16px; border-radius: 12px; }
.dcts-scope .dcts-progress { height: 10px; background: #E2DED3; }
.dcts-scope .dcts-progress span { background: linear-gradient(90deg, #12382A 0%, #9A7845 100%); }
.dcts-scope .dcts-account-center { width: 100%; max-width: 1120px; min-width: 0; }
body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center { width: 100%; max-width: 1120px; }
body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center > .dcts-submit-scope { width: 100%; max-width: 100%; }
body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center .dcts-form-card { width: 100%; max-width: 100%; }
.dcts-scope .dcts-submit { min-width: 220px; }
@media (max-width: 760px) {
  .dcts-scope .dcts-form-card { padding: 21px 17px; border-radius: 15px; }
  .dcts-scope .dcts-form-row { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .dcts-scope .dcts-submit { width: 100%; min-width: 0; }
  .dcts-scope .dcts-record-buttons,
  .dcts-scope .dcts-file-action-buttons { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dcts-scope .dcts-record-buttons .dcts-button,
  .dcts-scope .dcts-file-action-buttons .dcts-button { width: 100%; min-width: 0; }
}
@media (max-width: 440px) {
  .dcts-scope .dcts-form-head { grid-template-columns: 46px minmax(0, 1fr); gap: 12px; }
  .dcts-scope .dcts-customer-avatar,
  .dcts-scope .dcts-customer-avatar img { width: 46px; height: 46px; }
  .dcts-scope .dcts-form-card { padding: 17px 13px; }
  .dcts-scope .dcts-record-buttons,
  .dcts-scope .dcts-file-action-buttons { grid-template-columns: minmax(0, 1fr); }
}


/* v1.5.3 responsive and accessibility hardening */
.dcts-removal-request,
body.dcts-account-testimonials-page .dcts-removal-request {
  display: block !important; visibility: visible !important; opacity: 1 !important;
  width: 100%; max-width: 760px; box-sizing: border-box;
}
.dcts-removal-request form { display: block; width: 100%; }
.dcts-removal-request .dcts-button { min-height: 44px; white-space: normal; overflow-wrap: anywhere; }
.dcts-scope [hidden], .dcts-account-center [hidden] { display: none !important; }
.dcts-verified-badge { display: inline-flex; align-items: center; gap: 5px; flex-wrap: wrap; max-width: 100%; overflow-wrap: anywhere; }
.dcts-verified-badge::before { content: "✓"; font-weight: 900; }
.dcts-record-buttons, .dcts-file-action-buttons, .dcts-photo-camera-tools { min-width: 0; flex-wrap: wrap; }
.dcts-record-buttons .dcts-button, .dcts-file-action-buttons .dcts-button, .dcts-photo-camera-tools .dcts-button { min-height: 44px; }
.dcts-photo-camera-tools select, .dcts-camera-choice select { max-width: 100%; min-height: 44px; }
.dcts-scope .dcts-customer-avatar img, .dcts-scope .dcts-review-card .dcts-avatar { object-fit: cover; border-radius: 50%; }
@media (max-width: 767px) {
  .dcts-removal-request { padding: 12px 0 0; font-size: .9rem; }
  .dcts-removal-request .dcts-button { width: 100%; }
  .dcts-photo-camera-tools { display: grid; grid-template-columns: minmax(0,1fr); align-items: stretch; }
  .dcts-photo-camera-tools label, .dcts-photo-camera-tools select { width: 100%; }
  .dcts-record-buttons .dcts-button, .dcts-file-action-buttons .dcts-button { min-width: 0; }
}


/* v1.5.4 — clear live recording state, elapsed timer, camera readiness and audio level meter */
.dcts-scope .dcts-recording-indicator {
  display: block; margin: 12px 0 16px; padding: 15px 16px; border: 1px solid #C9B98D;
  border-radius: 12px; background: linear-gradient(135deg, #F8F5EB 0%, #FFFDF7 100%); color: #202B26;
}
.dcts-scope .dcts-recording-indicator[hidden],
.dcts-scope .dcts-audio-meter[hidden],
.dcts-scope .dcts-camera-live-state[hidden] { display: none !important; }
.dcts-scope .dcts-recording-indicator-top { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.dcts-scope .dcts-recording-indicator-top strong { font-size: .88rem; letter-spacing: .06em; color: #17382C; }
.dcts-scope .dcts-recording-indicator time { margin-left: auto; padding: 5px 10px; min-width: 76px; border-radius: 7px; background: #17382C; color: #FFF; font: 800 1.1rem/1.25 ui-monospace, SFMono-Regular, Consolas, monospace; text-align: center; font-variant-numeric: tabular-nums; }
.dcts-scope .dcts-recording-indicator p { margin: 9px 0 0; font-size: .92rem; line-height: 1.5; }
.dcts-scope .dcts-live-dot { display: inline-block; width: 10px; height: 10px; flex: 0 0 10px; border-radius: 50%; background: #C43D36; box-shadow: 0 0 0 4px rgba(196,61,54,.12); }
.dcts-scope .dcts-recording-indicator .dcts-live-dot { animation: dcts-live-pulse 1.2s ease-in-out infinite; }
.dcts-scope .dcts-camera-live-state { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; margin: 10px 0; padding: 10px 12px; border: 1px solid #B8D6C1; border-radius: 9px; background: #F0F8F1; color: #17452F; font-size: .9rem; }
.dcts-scope .dcts-camera-live-state strong { font-size: .83rem; letter-spacing: .05em; }
.dcts-scope .dcts-camera-live-state span:last-child { flex-basis: 100%; padding-left: 19px; line-height: 1.45; }
.dcts-scope .dcts-audio-meter { display: flex; align-items: center; justify-content: center; gap: 5px; min-height: 42px; margin: 12px 0 5px; padding: 8px 10px; border-radius: 8px; background: #17382C; }
.dcts-scope .dcts-audio-meter span { display: block; width: 5px; height: 5px; min-height: 5px; max-height: 34px; flex: 1 1 5px; border-radius: 99px; background: linear-gradient(180deg, #C7A66A 0%, #E7D8B8 100%); transition: height .08s linear; }
.dcts-scope [data-audio-meter-help] { display: block; margin-top: 4px; }
.dcts-scope .dcts-camera-choice.is-recording { opacity: .75; }
.dcts-scope .dcts-record-buttons .dcts-button[data-stop-recording] { background: #A6322E; border-color: #A6322E; color: #FFF !important; }
.dcts-scope .dcts-record-buttons .dcts-button[data-stop-recording]:hover { background: #8D2825; border-color: #8D2825; }
.dcts-scope [data-record-video-preview] { min-height: 180px; object-fit: contain; }
@keyframes dcts-live-pulse { 0%,100% { opacity: 1; box-shadow: 0 0 0 4px rgba(196,61,54,.12); } 50% { opacity: .62; box-shadow: 0 0 0 7px rgba(196,61,54,.04); } }
@media (max-width: 760px) {
  .dcts-scope .dcts-recording-indicator { padding: 13px; }
  .dcts-scope .dcts-recording-indicator-top { gap: 8px; }
  .dcts-scope .dcts-recording-indicator time { min-width: 72px; }
  .dcts-scope .dcts-camera-live-state { align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .dcts-scope .dcts-recording-indicator .dcts-live-dot { animation: none; }
  .dcts-scope .dcts-audio-meter span { transition: none; }
}


/* v1.5.5 — stable media previews, mobile-visible filters and submission feedback. */
.dcts-scope .dcts-optional-label { color: #59666B; font-size: .82em; font-weight: 500; }
.dcts-scope .dcts-notice[role="status"],
.dcts-scope .dcts-notice[role="alert"] { scroll-margin-top: 24px; }
.dcts-scope .dcts-notice[role="status"]:focus,
.dcts-scope .dcts-notice[role="alert"]:focus { outline: 3px solid rgba(64, 88, 98, .28); outline-offset: 3px; }
.dcts-card-media { display: flex; align-items: center; justify-content: center; min-height: 0; }
.dcts-card-media--photo { aspect-ratio: 4 / 3; }
.dcts-card-media--video { aspect-ratio: 16 / 9; }
.dcts-card-media--audio { min-height: 76px; aspect-ratio: auto; }
.dcts-card-media--text { min-height: 60px; aspect-ratio: auto; }
.dcts-card-media--photo .dcts-photo-gallery { height: 100%; grid-template-rows: minmax(0, 1fr); align-items: stretch; }
.dcts-card-media--photo .dcts-photo-gallery a { height: 100%; min-height: 0; }
.dcts-card-media--photo .dcts-photo-gallery img { width: 100%; height: 100%; max-height: none; object-fit: contain; }
.dcts-card-media--photo .dcts-photo-gallery--count-1 { grid-template-columns: minmax(0, 1fr); }
.dcts-card-media--photo .dcts-photo-gallery--count-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dcts-card-media--photo .dcts-photo-gallery--count-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); }
.dcts-card-media--photo .dcts-photo-gallery--count-3 a:first-child { grid-row: span 2; }
.dcts-card-media--video iframe { width: 100%; height: 100%; aspect-ratio: auto; }
.dcts-card-media--audio audio { width: 100%; max-width: 100%; }
.dcts-scope .dcts-review-form select:focus-visible,
.dcts-scope .dcts-review-form input:focus-visible,
.dcts-scope .dcts-review-form textarea:focus-visible,
.dcts-scope .dcts-review-form button:focus-visible { outline: 3px solid rgba(64, 88, 98, .28); outline-offset: 2px; }
@media (max-width: 720px) {
  .dcts-filter-row { justify-content: flex-start; flex-wrap: wrap; overflow: visible; gap: 7px; }
  .dcts-filter { max-width: 100%; white-space: normal; }
  .dcts-card-media--photo { aspect-ratio: 4 / 3; }
  .dcts-card-media--photo .dcts-photo-gallery { gap: 5px; }
}


/* v1.5.6 — accessible submission confirmation modal and consistent responsive controls. */
body.dcts-modal-open { overflow: hidden; }
.dcts-success-modal { position: fixed; z-index: 999999; inset: 0; display: flex; align-items: center; justify-content: center; padding: 20px; box-sizing: border-box; background: rgba(12, 22, 19, .62); backdrop-filter: blur(4px); }
.dcts-success-modal__panel { width: min(100%, 480px); max-height: min(86vh, 680px); overflow: auto; box-sizing: border-box; padding: clamp(22px, 4vw, 34px); border: 1px solid #D8CFBA; border-radius: 18px; background: #FFFEFA; color: #20292E; box-shadow: 0 24px 80px rgba(0,0,0,.22); text-align: center; }
.dcts-success-modal__icon { display: grid; place-items: center; width: 54px; height: 54px; margin: 0 auto 14px; border-radius: 50%; background: #E8F2E9; color: #1C6743; font-size: 30px; font-weight: 800; }
.dcts-success-modal__panel h2 { margin: 0 0 12px; color: #20292E; font-size: clamp(1.25rem, 3vw, 1.65rem); line-height: 1.25; }
.dcts-success-modal__panel p { margin: 0 0 22px; font-size: 1rem; line-height: 1.6; overflow-wrap: anywhere; }
.dcts-success-modal__close { min-width: 132px; min-height: 46px; }
@media (max-width: 480px) { .dcts-success-modal { padding: 14px; } .dcts-success-modal__panel { border-radius: 14px; padding: 24px 18px; } .dcts-success-modal__panel p { font-size: .95rem; } }
@media (prefers-reduced-motion: reduce) { .dcts-success-modal * { animation: none !important; transition: none !important; } }

.dcts-scope, .dcts-scope * { box-sizing: border-box; }
.dcts-scope .dcts-form-card, .dcts-scope .dcts-public-section { max-width: 100%; }
.dcts-scope .dcts-form-row { align-items: start; }
.dcts-scope .dcts-field label { line-height: 1.45; }
.dcts-scope .dcts-field input:not([type="checkbox"]), .dcts-scope .dcts-field select, .dcts-scope .dcts-field textarea { max-width: 100%; min-width: 0; font: inherit; }
.dcts-scope .dcts-button { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.dcts-scope .dcts-review-card { min-width: 0; overflow: hidden; }
.dcts-scope .dcts-review-card img, .dcts-scope .dcts-review-card video, .dcts-scope .dcts-review-card iframe { max-width: 100%; }
@media (min-width: 768px) and (max-width: 1100px) { .dcts-scope { font-size: 15px !important; } .dcts-scope .dcts-form-card { padding: clamp(20px, 3vw, 30px); } }
@media (max-width: 767px) { .dcts-scope { font-size: 15px !important; line-height: 1.55; } .dcts-scope .dcts-form-card { padding: clamp(16px, 4vw, 22px); } .dcts-scope .dcts-form-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; } .dcts-scope .dcts-field { min-width: 0; } .dcts-scope .dcts-field small, .dcts-scope .dcts-privacy-note, .dcts-scope .dcts-data-notice { font-size: .86rem; overflow-wrap: anywhere; } .dcts-scope .dcts-record-preview video { width: 100%; max-height: 48vh; object-fit: contain; } }

/* v1.7.5 — audited responsive layer. Preserve media/form styles; correct rail sizing and review expansion. */
.dcts-scope{
 --dcts-space-1:4px;--dcts-space-2:8px;--dcts-space-3:12px;--dcts-space-4:16px;--dcts-space-5:24px;--dcts-space-6:32px;
 --dcts-radius-control:10px;--dcts-radius-card:16px;--dcts-shadow-card:0 5px 18px rgba(32,41,46,.045),inset 0 1px 0 rgba(255,255,255,.5);
 width:100%;max-width:min(100%,1280px);min-width:0;margin-inline:auto;padding-inline:clamp(12px,2vw,24px);box-sizing:border-box;
 color:var(--dcts-text,#20292E);font-size:16px;line-height:1.55;overflow-wrap:anywhere
}
.dcts-scope,.dcts-scope *,.dcts-scope *::before,.dcts-scope *::after{box-sizing:border-box;min-width:0}
.dcts-scope img,.dcts-scope video,.dcts-scope iframe,.dcts-scope audio{max-width:100%}
.dcts-scope .dcts-public-section{width:100%;max-width:100%;margin-inline:auto}
.dcts-scope.dcts-home-section{width:min(100%,1320px);max-width:1320px;margin:clamp(20px,3vw,38px) auto;padding:clamp(14px,2vw,24px);border:1px solid rgba(216,207,186,.8);border-radius:20px;background:linear-gradient(180deg,#FFFEFA 0%,#F8F4EB 100%);box-shadow:0 12px 32px rgba(32,41,46,.045)}
.dcts-scope .dcts-public-heading{width:min(100%,800px);margin:0 auto clamp(18px,2vw,26px);padding:0 6px;text-align:center}
.dcts-scope .dcts-public-heading .dcts-eyebrow{margin:0 0 10px;color:#9A7845;font-size:.72rem;font-weight:850;letter-spacing:.15em;line-height:1.45;text-transform:uppercase}
.dcts-scope .dcts-public-heading h2{max-width:28ch;margin:0 auto 10px;color:#20292E;font-size:clamp(1.65rem,2.8vw,2.4rem);font-weight:760;line-height:1.18;letter-spacing:-.025em;text-wrap:balance;overflow-wrap:anywhere}
.dcts-scope .dcts-public-heading .dcts-lead{max-width:68ch;margin:0 auto;color:#59666B;font-size:clamp(.92rem,1.05vw,1.04rem);line-height:1.6;overflow-wrap:anywhere}
.dcts-scope .dcts-filter-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;max-width:100%;margin:0 auto 20px}
.dcts-scope .dcts-filter{min-height:42px;padding:8px 15px;border:1px solid #D8CFBA;border-radius:999px;background:#FFFEFA;color:#12382A;font:inherit;font-size:.88rem;font-weight:750;line-height:1.25;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}
.dcts-scope .dcts-filter.is-active,.dcts-scope .dcts-filter:hover{border-color:#12382A;background:#12382A;color:#FFFEFA}
.dcts-scope .dcts-filter:focus-visible,.dcts-scope .dcts-category-filter:focus-visible,.dcts-scope .dcts-rail-button:focus-visible{outline:3px solid rgba(64,88,98,.28);outline-offset:2px}
.dcts-scope .dcts-category-filter{width:auto;max-width:100%;min-height:42px;padding:8px 30px 8px 12px;border:1px solid rgba(154,120,69,.42);border-radius:999px;background:#FFFEFA;color:#20292E;font:inherit;font-size:.88rem}
.dcts-scope .dcts-category-filter-label{display:inline-flex;align-items:center;max-width:100%}
.dcts-scope .dcts-public-grid{display:grid;grid-template-columns:repeat(var(--dcts-cols,3),minmax(0,1fr));gap:16px;width:100%;min-width:0}
.dcts-scope .dcts-review-card{position:relative;display:flex;flex-direction:column;min-width:0;max-width:100%;padding:15px;border:1px solid #DED4C0;border-radius:16px;background:linear-gradient(155deg,#FFFEFA 0%,#F0E9DB 100%);color:#20292E;box-shadow:var(--dcts-shadow-card);overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease}
.dcts-scope .dcts-review-card[hidden]{display:none!important}
.dcts-scope .dcts-review-card:focus-within{outline:2px solid rgba(64,88,98,.24);outline-offset:2px}
.dcts-scope .dcts-review-card__topline{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:7px;width:100%;margin:0 0 10px}
.dcts-scope .dcts-review-card__topline-start,.dcts-scope .dcts-review-card__topline-end{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0;max-width:100%}
.dcts-scope .dcts-format-chip{display:inline-flex;align-items:center;max-width:100%;padding:4px 8px;border:1px solid rgba(64,88,98,.14);border-radius:999px;background:#F2F0E9;color:#405862;font-size:.65rem;font-weight:800;letter-spacing:.04em;line-height:1.3;text-transform:uppercase;overflow-wrap:anywhere}
.dcts-scope .dcts-pinned-label,.dcts-scope .dcts-verified-badge{position:static!important;inset:auto!important;display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;width:auto;max-width:100%;margin:0;padding:5px 9px;border:1px solid transparent;border-radius:999px;font-size:.66rem;font-weight:800;line-height:1.3;text-align:center;white-space:normal;overflow-wrap:anywhere;box-shadow:none}
.dcts-scope .dcts-pinned-label{background:#12382A;color:#FFFEFA}
.dcts-scope .dcts-verified-badge{border-color:rgba(18,56,42,.08);background:#E7EFE8;color:#12382A}
.dcts-scope .dcts-card-media{position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:100%;min-width:0;min-height:0;margin:0 0 10px;border:1px solid rgba(216,207,186,.72);border-radius:12px;background:#E8E2D4;overflow:hidden}
.dcts-scope .dcts-card-media--text{justify-content:flex-start;height:24px;min-height:24px;max-height:24px;margin:0 0 5px;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}
.dcts-scope .dcts-text-mark{padding:0 0 0 2px;color:#12382A;font-family:Georgia,serif;font-size:2.4rem;line-height:.75}
.dcts-scope .dcts-card-media--photo{height:clamp(180px,20vw,250px);min-height:180px;max-height:250px}
.dcts-scope .dcts-card-media--photo .dcts-photo-gallery{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-items:stretch;width:100%;height:100%;min-height:0;gap:5px;padding:0}
.dcts-scope .dcts-card-media--photo .dcts-photo-gallery a{display:grid;place-items:center;width:100%;height:100%;min-height:0;overflow:hidden;background:#F7F3EB}
.dcts-scope .dcts-card-media--photo .dcts-photo-gallery img{display:block;width:100%;height:100%;max-height:100%;margin:auto;object-fit:contain;object-position:center center}
.dcts-scope .dcts-card-media--photo .dcts-photo-gallery--count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.dcts-scope .dcts-card-media--photo .dcts-photo-gallery--count-3{grid-template-columns:1.15fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr))}
.dcts-scope .dcts-card-media--photo .dcts-photo-gallery--count-3 a:first-child{grid-row:span 2}
.dcts-scope .dcts-card-media--video{display:flex;flex-direction:column;align-items:stretch;height:auto;min-height:0;max-height:none;aspect-ratio:auto;overflow:hidden;border-color:rgba(154,120,69,.3);background:#07100D;box-shadow:0 4px 12px rgba(8,16,13,.08)}
.dcts-scope .dcts-card-media--video .dcts-video-frame-wrap>iframe.dcts-public-video-frame{display:block;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;aspect-ratio:auto;margin:0;padding:0;border:0;border-radius:11px;background:#07100D}
.dcts-scope .dcts-card-media--audio{height:auto;min-height:0;max-height:none;padding:0;border:0;background:transparent;overflow:visible}
.dcts-scope .dcts-video-frame-wrap{display:block;flex:0 0 auto;width:100%;min-width:0;aspect-ratio:16/9;overflow:hidden;background:#07100D}
.dcts-scope .dcts-video-timing{flex:0 0 auto;min-width:0;padding:5px 9px 7px;background:#FFFEFA}
.dcts-scope .dcts-audio-player-wrap .dcts-media-timebar,.dcts-scope .dcts-video-timing .dcts-media-timebar{display:block;width:100%;height:4px;margin:3px 0 1px;overflow:hidden;border-radius:999px;background:#E6E0D3}
.dcts-scope .dcts-media-timebar>span{display:block;width:0;height:100%;border-radius:inherit;background:#9A7845;transition:width .12s linear}
.dcts-scope .dcts-video-player-status{display:block;width:100%;min-width:0;margin:0;padding:0 2px;color:#59666B;font-size:.72rem;line-height:1.4;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.dcts-scope .dcts-video-player-status.is-ready{color:#405862}
.dcts-scope .dcts-video-player-status.is-error{color:#9E3932}
.dcts-scope .dcts-audio-player-wrap{display:flex;flex-direction:column;align-items:stretch;gap:5px;width:100%;min-width:0;max-width:100%;padding:8px;border:1px solid #E0D7C5;border-radius:12px;background:#FFFEFA}
.dcts-scope .dcts-audio-player-wrap .dcts-audio-player{display:block;width:100%;min-width:0;max-width:100%;height:42px;min-height:42px;margin:0;padding:0;border:0;border-radius:999px;background:#F2F4F4;accent-color:#9A7845}
.dcts-scope .dcts-audio-player-status{display:block;width:100%;min-height:1.2em;margin:0;padding:0 2px;color:#59666B;font-size:.68rem;font-weight:550;line-height:1.25;overflow-wrap:anywhere}
.dcts-scope .dcts-audio-player-status.is-ready{color:#405862}.dcts-scope .dcts-audio-player-status.is-error{color:#9E3932;white-space:normal}
.dcts-scope .dcts-admin-audio-preview{display:block;width:min(100%,280px);min-width:180px;height:44px}
.dcts-scope .dcts-rating{display:flex;align-items:center;gap:2px;flex-wrap:wrap;flex:0 0 auto;margin:0 0 7px;color:#A6A69F;font-size:.92rem;line-height:1.15}
.dcts-scope .dcts-rating span.is-filled{color:#D1B05E}.dcts-scope .dcts-rating small{margin-left:6px;color:#465149;font-size:.78rem}
.dcts-scope .dcts-review-copy-wrap{display:block;flex:0 0 auto;min-width:0;max-width:100%;margin:0 0 8px;overflow:visible}
.dcts-scope.dcts-home-section .dcts-review-copy-wrap.has-read-more.is-expanded{display:flex!important;flex:1 1 0!important;flex-direction:column!important;min-height:0!important;margin:0 0 6px!important;overflow:hidden!important}
.dcts-scope .dcts-review-card blockquote.dcts-review-copy{display:block;min-width:0;max-width:100%;margin:0;padding:0;border:0;color:#20292E;font-size:.94rem;line-height:1.5;white-space:normal;overflow-wrap:anywhere;word-break:normal}
.dcts-scope .dcts-review-card blockquote.dcts-review-copy.is-clamped{max-height:6em;overflow:hidden}
.dcts-scope.dcts-home-section .dcts-review-card blockquote.dcts-review-copy.is-clamped{max-height:4.7em}
.dcts-scope .dcts-review-card blockquote.dcts-review-copy.is-expanded{max-height:6em;overflow-y:auto;overflow-x:hidden;padding-right:6px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#9A7845 rgba(216,207,186,.28)}
.dcts-scope.dcts-home-section .dcts-review-copy-wrap.has-read-more.is-expanded>blockquote.dcts-review-copy.is-expanded{display:block!important;flex:1 1 0!important;min-height:0!important;height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable}
.dcts-scope:not(.dcts-home-section) .dcts-review-copy-wrap.has-read-more.is-expanded{display:block!important;flex:0 0 auto!important;min-height:0!important;margin:0 0 8px!important;overflow:visible!important}
.dcts-scope:not(.dcts-home-section) .dcts-review-copy-wrap.has-read-more.is-expanded>blockquote.dcts-review-copy.is-expanded{display:block!important;flex:none!important;height:auto!important;min-height:0!important;max-height:min(52vh,520px)!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable}
.dcts-scope .dcts-review-card blockquote.dcts-review-copy.is-expanded::-webkit-scrollbar{width:5px;height:5px}
.dcts-scope .dcts-review-card blockquote.dcts-review-copy.is-expanded::-webkit-scrollbar-track{background:rgba(216,207,186,.28);border-radius:999px}
.dcts-scope .dcts-review-card blockquote.dcts-review-copy.is-expanded::-webkit-scrollbar-thumb{background:#9A7845;border:1px solid rgba(255,254,250,.6);border-radius:999px}
.dcts-scope .dcts-review-card blockquote.dcts-review-copy.is-expanded::-webkit-scrollbar-button{display:none;width:0;height:0}
.dcts-scope .dcts-read-more,.dcts-scope .dcts-read-more:hover,.dcts-scope .dcts-read-more:active,.dcts-scope .dcts-read-more:focus,.dcts-scope .dcts-read-more:focus-visible{appearance:none!important;-webkit-appearance:none!important;display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:flex-start!important;width:auto!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:30px!important;margin:3px 0 4px!important;padding:4px 2px!important;border:0!important;border-radius:5px!important;background:transparent!important;color:#12382A!important;-webkit-text-fill-color:#12382A!important;box-shadow:none!important;font-family:inherit!important;font-size:.82rem!important;font-weight:800!important;line-height:1.45!important;letter-spacing:normal!important;text-align:left!important;text-decoration:underline!important;text-underline-offset:3px!important;text-transform:none!important;white-space:normal!important;overflow:visible!important;opacity:1!important;visibility:visible!important;cursor:pointer!important;position:relative!important;z-index:2!important}
.dcts-scope .dcts-read-more .dcts-read-more-label{display:inline-block!important;max-width:100%!important;margin:0!important;padding:0!important;background:transparent!important;color:#12382A!important;-webkit-text-fill-color:#12382A!important;font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;white-space:normal!important;opacity:1!important;visibility:visible!important}
.dcts-scope .dcts-read-more:hover{background:rgba(154,120,69,.1)!important}.dcts-scope .dcts-read-more:focus-visible{outline:2px solid #405862!important;outline-offset:2px!important}.dcts-scope .dcts-read-more[hidden]{display:none!important}
.dcts-scope.dcts-home-section .dcts-public-grid--rail{display:grid!important;grid-template-columns:none!important;grid-template-rows:minmax(440px,max-content);grid-auto-rows:minmax(440px,max-content);grid-auto-flow:column;grid-auto-columns:minmax(265px,calc((100% - 32px)/3));align-items:stretch;gap:16px;width:100%;min-width:0;margin:0;padding:4px 3px 12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:3px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#9A7845 #F0E9DB}
.dcts-scope.dcts-home-section .dcts-public-grid--rail::-webkit-scrollbar{height:7px}.dcts-scope.dcts-home-section .dcts-public-grid--rail::-webkit-scrollbar-track{background:#F0E9DB;border-radius:999px}.dcts-scope.dcts-home-section .dcts-public-grid--rail::-webkit-scrollbar-thumb{background:#9A7845;border:1px solid #F0E9DB;border-radius:999px}
.dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card{display:flex;flex-direction:column;align-self:stretch;width:100%;height:auto;min-height:440px;max-height:none;margin:0;padding:14px;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;border:1px solid #DED4C0;border-radius:17px;background:linear-gradient(155deg,#FFFEFA 0%,#F0E9DB 100%);box-shadow:0 5px 16px rgba(32,41,46,.045),inset 0 1px 0 rgba(255,255,255,.65)}
.dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card[data-review-type="text"] .dcts-card-media--text{height:18px;min-height:18px;max-height:18px}
.dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card .dcts-card-media--photo{height:clamp(205px,20vw,245px);min-height:195px;max-height:245px}
.dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card .dcts-card-media--audio{height:auto;min-height:0;max-height:none}
/* The card body fills the space between badges and the customer footer.
   No-comment media and short text-only reviews are vertically balanced; media with a written comment stays at the top. */
.dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card>.dcts-review-card__body{display:flex;flex:1 1 auto;flex-direction:column;min-width:0;min-height:0;width:100%}
.dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card.dcts-review-card--media-only>.dcts-review-card__body,
.dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card.dcts-review-card--short-copy>.dcts-review-card__body{justify-content:center}
.dcts-scope.dcts-home-section .dcts-review-card__body .dcts-card-media--photo{width:100%;align-self:stretch}

.dcts-scope.dcts-home-section .dcts-review-card .dcts-category-pill{display:block;flex:0 0 auto;max-width:100%;margin:3px 0 7px;padding:6px 10px;border:1px solid rgba(154,120,69,.32);border-radius:999px;background:rgba(255,254,250,.52);color:#12382A;font-size:.72rem;font-weight:750;line-height:1.3;overflow-wrap:anywhere}
.dcts-scope.dcts-home-section .dcts-review-card .dcts-review-author{display:flex;flex:0 0 auto;align-items:flex-start;gap:8px;min-width:0;margin-top:auto;padding-top:8px;border-top:1px solid rgba(154,120,69,.22)}
.dcts-scope.dcts-home-section .dcts-review-author .dcts-avatar-wrap{--dcts-avatar-size:32px;width:32px;height:32px;min-width:32px;flex:0 0 32px}
.dcts-scope .dcts-review-author__meta{display:flex;flex:1 1 0%;flex-direction:column;gap:3px;min-width:0;max-width:100%;overflow:visible;overflow-wrap:anywhere}
.dcts-scope .dcts-review-author__meta strong{display:block;max-width:100%;color:#20292E;font-size:.83rem;font-weight:800;line-height:1.3;white-space:normal;overflow-wrap:anywhere}
.dcts-scope .dcts-review-author__meta small,.dcts-scope .dcts-product-label{display:block;max-width:100%;margin-top:0;color:#59666B;font-size:.72rem;font-weight:550;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.dcts-scope .dcts-home-rail{width:100%;min-width:0;margin-inline:auto}
.dcts-scope .dcts-home-rail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}
.dcts-scope .dcts-home-rail-hint{min-width:0;color:#59666B;font-size:.8rem;line-height:1.45}
.dcts-scope .dcts-home-rail-buttons{display:flex;flex:0 0 auto;gap:8px}
.dcts-scope .dcts-rail-button{display:inline-grid;place-items:center;width:40px;height:40px;flex:0 0 40px;padding:0;border:1px solid rgba(154,120,69,.42);border-radius:50%;background:#FFFEFA;color:#12382A;font:inherit;font-size:1rem;cursor:pointer;box-shadow:0 2px 8px rgba(32,41,46,.04)}
.dcts-scope .dcts-rail-button:hover:not(:disabled){background:#12382A;border-color:#12382A;color:#FFFEFA}.dcts-scope .dcts-rail-button:disabled{opacity:.4;cursor:not-allowed}
.dcts-scope .dcts-home-rail-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin-top:9px;padding-top:10px;border-top:1px solid rgba(216,207,186,.7);color:#59666B;font-size:.75rem;line-height:1.45}
.dcts-scope .dcts-home-rail-footer a{color:#12382A;font-weight:800;text-decoration:underline;text-underline-offset:3px}.dcts-scope .dcts-home-rail-footer span{max-width:70ch;text-align:right;overflow-wrap:anywhere}
.dcts-scope .dcts-public-disclaimer{max-width:88ch;margin:16px auto 0;color:#59666B;font-size:.76rem;line-height:1.6;text-align:center}
.dcts-scope:not(.dcts-home-section) .dcts-review-card{padding:clamp(14px,1.5vw,20px);border-radius:16px;background:linear-gradient(155deg,#FFFEFA 0%,#F0E9DB 100%);box-shadow:0 5px 16px rgba(32,41,46,.045)}
.dcts-scope:not(.dcts-home-section) .dcts-review-card__topline{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:7px;margin:0 0 10px}
.dcts-scope:not(.dcts-home-section) .dcts-card-media--photo{height:clamp(190px,22vw,255px);min-height:180px;max-height:255px}
.dcts-scope:not(.dcts-home-section) .dcts-card-media--audio{height:auto;min-height:0;max-height:none}
.dcts-scope .dcts-avatar-wrap{position:relative;display:inline-flex;flex:0 0 var(--dcts-avatar-size,40px);align-items:center;justify-content:center;width:var(--dcts-avatar-size,40px);height:var(--dcts-avatar-size,40px);min-width:var(--dcts-avatar-size,40px);overflow:hidden;border-radius:50%;background:#E7EFE8;color:#12382A}
.dcts-scope .dcts-avatar-fallback{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:linear-gradient(145deg,#E7EFE8,#D8E4DC);color:#12382A;font-size:clamp(12px,calc(var(--dcts-avatar-size,40px)*.32),20px);font-weight:800;line-height:1;text-transform:uppercase}
.dcts-scope .dcts-avatar-wrap img.dcts-avatar{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:100%;min-height:100%;max-width:none;max-height:none;margin:0;border-radius:50%;object-fit:cover;opacity:0;transition:opacity .16s ease}
.dcts-scope .dcts-avatar-wrap img.dcts-avatar.is-loaded{opacity:1}
.dcts-scope .dcts-product-label{overflow-wrap:anywhere;word-break:normal}
.dcts-scope.dcts-submit-scope{display:flow-root!important;width:100%!important;max-width:1060px!important;min-width:0!important;margin:0 auto!important;padding:0 clamp(12px,2vw,24px)!important;overflow:visible!important;text-align:initial}
.dcts-scope.dcts-submit-scope>.dcts-form-card{display:block!important;float:none!important;width:100%!important;max-width:var(--dcts-form-max-desktop,920px)!important;min-width:0!important;margin:20px auto!important;padding:clamp(18px,2.8vw,32px);box-sizing:border-box!important}
.dcts-scope .dcts-form-head,.dcts-scope .dcts-form-head>div,.dcts-scope .dcts-field,.dcts-scope .dcts-review-form,.dcts-scope .dcts-consents,.dcts-scope .dcts-data-notice,.dcts-scope .dcts-privacy-note,.dcts-scope .dcts-notice{min-width:0;max-width:100%}
.dcts-scope .dcts-form-head h2{margin-top:0;font-size:clamp(1.4rem,2.6vw,1.85rem);line-height:1.25;overflow-wrap:anywhere}
.dcts-scope .dcts-form-head h2,.dcts-scope .dcts-form-head p,.dcts-scope .dcts-field>label,.dcts-scope .dcts-field small,.dcts-scope .dcts-consents label,.dcts-scope .dcts-consents label span,.dcts-scope .dcts-data-notice,.dcts-scope .dcts-privacy-note,.dcts-scope .dcts-notice{height:auto;max-height:none;white-space:normal!important;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:normal;line-height:1.55}
.dcts-scope .dcts-field>label{display:block;margin:0 0 8px;font-weight:700}
.dcts-scope .dcts-field input:not([type=checkbox]),.dcts-scope .dcts-field select,.dcts-scope .dcts-field textarea{display:block;width:100%;max-width:100%;min-width:0;font:inherit}
.dcts-scope .dcts-field textarea{min-height:140px;line-height:1.6}
.dcts-scope .dcts-consents{display:grid;gap:10px;max-width:100%}
.dcts-scope .dcts-consents label{display:flex!important;align-items:flex-start!important;justify-content:flex-start;gap:10px;width:100%;margin:0;padding:5px 0;text-align:left;font-size:.9rem}
.dcts-scope .dcts-consents label span{display:block;flex:1 1 0%;min-width:0;margin:0;padding:0}
.dcts-scope .dcts-consents input[type=checkbox]{display:block;position:relative;flex:0 0 18px;width:18px;min-width:18px;height:18px;margin:3px 0 0;accent-color:#12382A}
.dcts-scope .dcts-consent-optional{padding:10px 12px;border:1px solid #D8CFBA;border-radius:10px;background:rgba(255,254,250,.74)}
.dcts-scope .dcts-submit{display:inline-flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;line-height:1.3;white-space:normal;overflow-wrap:anywhere}
.dcts-scope .dcts-button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.dcts-scope .dcts-removal-request{width:min(100%,760px);margin:22px auto 0;padding:clamp(16px,2.5vw,24px);border:1px solid #D8CFBA;border-radius:14px;background:rgba(255,254,250,.76)}
.dcts-scope.dcts-removal-request h2{margin:0 0 10px;font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.25;overflow-wrap:anywhere}
.dcts-scope.dcts-removal-request p{margin:0 0 12px;overflow-wrap:anywhere}.dcts-scope.dcts-removal-request .dcts-removal-sla{padding:12px 14px;border-left:3px solid #12382A;border-radius:6px;background:rgba(18,56,42,.055)}
.dcts-scope.dcts-removal-request .dcts-removal-form{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;min-width:0;margin:14px 0}
.dcts-scope.dcts-removal-request .dcts-field{min-width:0;margin:0}.dcts-scope.dcts-removal-request .dcts-field label{display:block;margin:0 0 6px;font-weight:700;line-height:1.45;overflow-wrap:anywhere}
.dcts-scope.dcts-removal-request .dcts-field select,.dcts-scope.dcts-removal-request .dcts-field textarea{display:block;width:100%;max-width:100%;min-width:0;border:1px solid #D8CFBA;border-radius:9px;padding:11px 12px;background:#FFFEFA;color:#20292E;font:inherit}
.dcts-scope.dcts-removal-request .dcts-field textarea{min-height:120px;resize:vertical;line-height:1.55}.dcts-scope.dcts-removal-request .dcts-field small{display:block;margin-top:6px;color:#59666B;line-height:1.45}
.dcts-scope.dcts-removal-request .dcts-button{justify-self:start;min-height:46px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.dcts-removal-details{width:min(100%,760px);margin:22px auto 0}.dcts-removal-details>summary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:10px 16px;cursor:pointer;list-style:none;white-space:normal;overflow-wrap:anywhere}
.dcts-removal-details>summary::-webkit-details-marker{display:none}.dcts-removal-details>summary::after{content:'+';font-size:1.2em;line-height:1;font-weight:800}.dcts-removal-details[open]>summary::after{content:'−'}.dcts-removal-details>[class*="dcts-removal-request"]{width:100%;margin:12px 0 0}
body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-content .dcts-account-center{display:block!important;width:100%!important;max-width:1120px!important;min-width:0!important;margin-inline:auto!important;padding-inline:0!important;box-sizing:border-box!important}
body.dcts-account-testimonials-page .woocommerce .woocommerce-MyAccount-content .dcts-account-center .dcts-form-card{width:100%;max-width:var(--dcts-form-max-desktop,920px);margin-inline:auto}
.dcts-success-modal[open]{position:fixed!important;z-index:999999!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:clamp(12px,3vw,24px)!important;border:0!important;border-radius:0!important;box-sizing:border-box!important;overflow:auto!important;background:rgba(12,22,19,.68)!important;color:#20292E!important}
dialog.dcts-success-modal:not([open]){display:none!important;visibility:hidden!important;pointer-events:none!important}dialog.dcts-success-modal[open]{visibility:visible!important;pointer-events:auto!important}.dcts-success-modal::backdrop{background:rgba(12,22,19,.68)}
.dcts-success-modal .dcts-success-modal__panel{width:min(100%,520px)!important;max-width:520px!important;max-height:min(86vh,720px)!important;overflow:auto!important;margin:auto!important;padding:clamp(22px,4vw,34px)!important;border:1px solid #D8CFBA!important;border-radius:18px!important;background:#FFFEFA!important;color:#20292E!important;box-shadow:0 24px 80px rgba(0,0,0,.22)!important;text-align:center!important}
.dcts-success-modal .dcts-success-modal__panel h2{margin:0 0 12px!important;color:#20292E!important;font-size:clamp(1.25rem,3vw,1.65rem)!important;line-height:1.3!important;white-space:normal!important;overflow-wrap:anywhere!important}
.dcts-success-modal .dcts-success-modal__panel p{margin:0 0 22px!important;color:#414D52!important;font-size:1rem!important;line-height:1.65!important;white-space:normal!important;overflow-wrap:anywhere!important}.dcts-success-modal .dcts-success-modal__close{min-width:132px!important;min-height:46px!important}
@media (min-width:1024px){
 body.dcts-account-testimonials-page .dctcas-account-layout-v351,body.dcts-account-testimonials-page .woocommerce{align-items:start;min-width:0}
 body.dcts-account-testimonials-page .dctcas-account-layout-v351>.dctcas-account-navigation-branch-v351,body.dcts-account-testimonials-page .dctcas-account-layout-v351>.woocommerce-MyAccount-navigation,body.dcts-account-testimonials-page .woocommerce>.woocommerce-MyAccount-navigation{grid-column:1;grid-row:1;align-self:start;justify-self:stretch;width:100%;max-width:100%;min-width:0;margin:0}
 body.dcts-account-testimonials-page .dctcas-account-layout-v351>.dctcas-account-content-branch-v351,body.dcts-account-testimonials-page .dctcas-account-layout-v351>.woocommerce-MyAccount-content,body.dcts-account-testimonials-page .woocommerce>.woocommerce-MyAccount-content{grid-column:2;grid-row:1;align-self:start;justify-self:stretch;width:100%;min-width:0;margin:0;padding:0;float:none;clear:none;box-sizing:border-box}
 body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center{width:100%;max-width:840px;margin:0 auto 0 0;padding:0 0 12px}
 body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center>.dcts-account-title{width:100%;max-width:660px;margin:0 auto 20px}
 body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center>.dcts-submit-scope{display:block;position:static;inset:auto;transform:none;float:none;width:100%;max-width:820px;min-width:0;margin:0 auto}
 body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center .dcts-form-card{width:100%;max-width:760px;margin:0 auto}
 body.dcts-account-testimonials-page .woocommerce-MyAccount-content .dcts-account-center .dcts-removal-request{width:100%;max-width:760px;margin:14px auto 0}
}
@media(max-width:1100px){
 .dcts-scope.dcts-home-section{padding:16px;border-radius:18px}
 .dcts-scope.dcts-home-section .dcts-public-grid--rail{grid-auto-columns:minmax(260px,47%);gap:13px}
 .dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card{height:auto;min-height:440px;max-height:none;padding:12px}
 .dcts-scope:not(.dcts-home-section) .dcts-public-grid{grid-template-columns:repeat(var(--dcts-cols-tablet,2),minmax(0,1fr));gap:14px}
 .dcts-scope.dcts-submit-scope>.dcts-form-card{max-width:var(--dcts-form-max-tablet,900px)!important;padding:clamp(20px,3vw,30px)}
}
@media(max-width:767px){
 .dcts-scope{padding-inline:12px;font-size:15.5px;line-height:1.55}
 .dcts-scope.dcts-home-section{width:100%;max-width:100%;margin:20px auto;padding:14px 10px 12px;border-radius:16px}
 .dcts-scope.dcts-home-section .dcts-public-heading{margin-bottom:16px;padding-inline:3px}
 .dcts-scope.dcts-home-section .dcts-public-heading h2{font-size:clamp(1.45rem,6vw,1.9rem);line-height:1.2}
 .dcts-scope.dcts-home-section .dcts-public-heading .dcts-lead{font-size:.91rem;line-height:1.55}
 .dcts-scope.dcts-home-section .dcts-home-rail-toolbar{gap:8px;margin-bottom:8px}
 .dcts-scope.dcts-home-section .dcts-home-rail-hint{max-width:calc(100% - 88px);font-size:.74rem}
 .dcts-scope.dcts-home-section .dcts-rail-button{width:36px;height:36px;flex-basis:36px}
 .dcts-scope.dcts-home-section .dcts-public-grid--rail{grid-auto-columns:min(88vw,440px);gap:11px;padding:3px 2px 10px}
 .dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card{height:auto;min-height:440px;max-height:none;padding:12px;border-radius:15px}
 .dcts-scope.dcts-home-section .dcts-public-grid--rail>.dcts-review-card .dcts-card-media--photo{height:clamp(175px,52vw,220px);min-height:170px;max-height:220px}
 .dcts-scope.dcts-home-section .dcts-review-card blockquote.dcts-review-copy{font-size:.91rem;line-height:1.48}
 .dcts-scope .dcts-review-card .dcts-review-author{gap:7px}
 .dcts-scope .dcts-review-card .dcts-review-author__meta strong{font-size:.8rem;line-height:1.3}
 .dcts-scope .dcts-review-card .dcts-review-author__meta small,.dcts-scope .dcts-review-card .dcts-product-label{font-size:.69rem;line-height:1.3}
 .dcts-scope.dcts-home-section .dcts-format-chip{font-size:.61rem}.dcts-scope.dcts-home-section .dcts-pinned-label,.dcts-scope.dcts-home-section .dcts-verified-badge{font-size:.61rem;padding:4px 7px}
 .dcts-scope.dcts-home-section .dcts-home-rail-footer{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;padding-top:9px;font-size:.72rem}
 .dcts-scope.dcts-home-section .dcts-home-rail-footer span{text-align:left}
 .dcts-scope:not(.dcts-home-section) .dcts-public-grid{grid-template-columns:repeat(var(--dcts-cols-mobile,1),minmax(0,1fr));gap:12px}
 .dcts-scope.dcts-submit-scope{padding-inline:8px!important}
 .dcts-scope.dcts-submit-scope>.dcts-form-card{width:100%!important;max-width:100%!important;margin:12px auto!important;padding:16px 13px!important;border-radius:13px!important}
 .dcts-scope.dcts-submit-scope .dcts-form-head{grid-template-columns:minmax(0,1fr)!important;gap:10px;text-align:center!important}
 .dcts-scope.dcts-submit-scope .dcts-form-head>div{width:100%!important}
 .dcts-scope .dcts-consents{padding:10px;gap:8px}.dcts-scope .dcts-consents label{gap:8px;font-size:.86rem}
 .dcts-scope .dcts-data-notice,.dcts-scope .dcts-privacy-note{font-size:.83rem}
 .dcts-scope .dcts-submit{width:100%;min-width:0}
 .dcts-scope .dcts-removal-request{padding:14px;border-radius:12px}.dcts-scope.dcts-removal-request .dcts-button{width:100%;justify-self:stretch}
 .dcts-removal-details>summary{width:100%}
 .dcts-success-modal .dcts-success-modal__panel{padding:22px 17px!important;border-radius:14px!important}.dcts-success-modal .dcts-success-modal__panel p{font-size:.95rem!important}
}
@media(max-width:420px){.dcts-scope{padding-inline:10px}.dcts-scope .dcts-form-card{padding:14px 11px}.dcts-scope .dcts-consents{padding:9px}.dcts-scope .dcts-consents label{font-size:.82rem}.dcts-scope.dcts-home-section .dcts-public-grid--rail{grid-auto-columns:min(91vw,360px)}.dcts-scope.dcts-home-section .dcts-review-card__topline-end{margin-left:auto}}
@media(hover:hover) and (pointer:fine){.dcts-scope .dcts-review-card:hover{border-color:rgba(154,120,69,.55);box-shadow:0 10px 24px rgba(32,41,46,.07),inset 0 1px 0 rgba(255,255,255,.7)}}
@media(prefers-reduced-motion:reduce){.dcts-scope *,.dcts-success-modal *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.dcts-scope .dcts-public-grid--rail{scroll-behavior:auto!important}}
