.elementor-185 .elementor-element.elementor-element-dc3-pcchk.elementor-element{--align-self:stretch;}.elementor-185 .elementor-element.elementor-element-722595e{--animation-duration:1200ms;--dynamic-text-color:#18360D;}.elementor-185 .elementor-element.elementor-element-722595e .elementor-headline{text-align:center;font-size:42px;font-weight:400;}.elementor-185 .elementor-element.elementor-element-722595e .elementor-headline-plain-text{color:#18360D;}.elementor-185 .elementor-element.elementor-element-722595e .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-astglobalcolor8 );stroke-linecap:round;stroke-linejoin:round;}.elementor-185 .elementor-element.elementor-element-1e0fb73{--animation-duration:1200ms;--dynamic-text-color:#18360D;}.elementor-185 .elementor-element.elementor-element-1e0fb73 .elementor-headline{text-align:center;font-size:42px;font-weight:400;}.elementor-185 .elementor-element.elementor-element-1e0fb73 .elementor-headline-plain-text{color:#18360D;}.elementor-185 .elementor-element.elementor-element-1e0fb73 .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-astglobalcolor8 );stroke-linecap:round;stroke-linejoin:round;}.elementor-185 .elementor-element.elementor-element-8c99e03{--animation-duration:1200ms;--dynamic-text-color:#18360D;}.elementor-185 .elementor-element.elementor-element-8c99e03 .elementor-headline{text-align:center;font-size:40px;font-weight:400;}.elementor-185 .elementor-element.elementor-element-8c99e03 .elementor-headline-plain-text{color:#18360D;}.elementor-185 .elementor-element.elementor-element-8c99e03 .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-astglobalcolor8 );stroke-linecap:round;stroke-linejoin:round;}.elementor-185 .elementor-element.elementor-element-9a1c57f{--animation-duration:1200ms;--dynamic-text-color:#18360D;}.elementor-185 .elementor-element.elementor-element-9a1c57f .elementor-headline{text-align:center;font-size:40px;font-weight:400;}.elementor-185 .elementor-element.elementor-element-9a1c57f .elementor-headline-plain-text{color:#18360D;}.elementor-185 .elementor-element.elementor-element-9a1c57f .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-astglobalcolor8 );stroke-linecap:round;stroke-linejoin:round;}.elementor-185 .elementor-element.elementor-element-e9fb49e{--animation-duration:1200ms;--dynamic-text-color:#18360D;}.elementor-185 .elementor-element.elementor-element-e9fb49e .elementor-headline{text-align:start;font-size:40px;font-weight:400;}.elementor-185 .elementor-element.elementor-element-e9fb49e .elementor-headline-plain-text{color:#18360D;}.elementor-185 .elementor-element.elementor-element-e9fb49e .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-astglobalcolor8 );stroke-linecap:round;stroke-linejoin:round;}.elementor-185 .elementor-element.elementor-element-dcts-1{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:64px;--padding-right:64px;}.elementor-185 .elementor-element.elementor-element-dcts-2{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:64px;--padding-right:64px;}.elementor-185 .elementor-element.elementor-element-dcts-3{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:64px;--padding-right:64px;}.elementor-185 .elementor-element.elementor-element-dctc-carousel{--e-n-carousel-swiper-slides-to-display:1;--e-n-carousel-swiper-slides-gap:20px;width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;--e-n-carousel-arrow-prev-left-align:0%;--e-n-carousel-arrow-prev-translate-x:0px;--e-n-carousel-arrow-prev-left-position:0px;--e-n-carousel-arrow-prev-top-align:50%;--e-n-carousel-arrow-prev-translate-y:-50%;--e-n-carousel-arrow-prev-top-position:0px;--e-n-carousel-arrow-next-right-align:0%;--e-n-carousel-arrow-next-translate-x:0%;--e-n-carousel-arrow-next-right-position:0px;--e-n-carousel-arrow-next-top-align:50%;--e-n-carousel-arrow-next-translate-y:-50%;--e-n-carousel-arrow-next-top-position:0px;--e-n-carousel-arrow-size:20px;--e-n-carousel-arrow-normal-color:#1C450C;--e-n-carousel-arrow-hover-color:#1C450C;--e-n-carousel-swiper-pagination-size:10px;--e-n-carousel-dots-normal-color:rgba(255, 255, 255, 0.5);--e-n-carousel-dots-hover-color:#FFFFFF;--e-n-carousel-swiper-pagination-spacing:24px;}.elementor-185 .elementor-element.elementor-element-dctc-carousel :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {background-color:#FADF7D;border-radius:50% 50% 50% 50%;padding:12px 12px 12px 12px;}.elementor-185 .elementor-element.elementor-element-dctc-carousel :is(.elementor-swiper-button-prev:hover, .elementor-swiper-button-next:hover) {background-color:#FADF7D;}.elementor-185 .elementor-element.elementor-element-dctc-carousel .swiper-pagination-bullet{--swiper-pagination-bullet-horizontal-gap:6px;--swiper-pagination-bullet-vertical-gap:6px;}.elementor-185 .elementor-element.elementor-element-b32e5af{--animation-duration:1200ms;--dynamic-text-color:#18360D;}.elementor-185 .elementor-element.elementor-element-b32e5af .elementor-headline{text-align:start;font-size:40px;font-weight:400;}.elementor-185 .elementor-element.elementor-element-b32e5af .elementor-headline-plain-text{color:#18360D;}.elementor-185 .elementor-element.elementor-element-b32e5af .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-astglobalcolor8 );stroke-linecap:round;stroke-linejoin:round;}.elementor-185 .elementor-element.elementor-element-4fca7a3{--animation-duration:1200ms;--dynamic-text-color:#18360D;}.elementor-185 .elementor-element.elementor-element-4fca7a3 .elementor-headline{text-align:center;font-size:40px;font-weight:400;}.elementor-185 .elementor-element.elementor-element-4fca7a3 .elementor-headline-plain-text{color:#18360D;}.elementor-185 .elementor-element.elementor-element-4fca7a3 .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-astglobalcolor8 );stroke-linecap:round;stroke-linejoin:round;}.elementor-185 .elementor-element.elementor-element-7afd5ce{--animation-duration:1200ms;--dynamic-text-color:#18360D;}.elementor-185 .elementor-element.elementor-element-7afd5ce .elementor-headline{text-align:center;font-size:40px;font-weight:400;}.elementor-185 .elementor-element.elementor-element-7afd5ce .elementor-headline-plain-text{color:#18360D;}.elementor-185 .elementor-element.elementor-element-7afd5ce .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-astglobalcolor8 );stroke-linecap:round;stroke-linejoin:round;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-item{border-width:0px;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-item .elementor-tab-content{border-width:0px;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-item .elementor-tab-title.elementor-active{border-width:0px;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title{background-color:#FEFCF4;padding:8px 30px 8px 30px;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon, .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-title{color:#18360D;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon svg{fill:#18360D;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-active .elementor-accordion-icon, .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-active .elementor-accordion-title{color:#FFFFFF;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-active .elementor-accordion-icon svg{fill:#FFFFFF;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-title{font-family:"Merriweather", Sans-serif;font-size:21px;font-weight:400;line-height:1.3em;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title .elementor-accordion-icon i:before{color:#18360D;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title .elementor-accordion-icon svg{fill:#18360D;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon i:before{color:#18360D;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon svg{fill:#18360D;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon{margin-inline-end:20px;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-content{background-color:#FFFFFF;color:#565656;font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:400;padding:10px 30px 0px 30px;}.elementor-185 .elementor-element.elementor-element-67c2292{--animation-duration:1200ms;--dynamic-text-color:#111111;}.elementor-185 .elementor-element.elementor-element-67c2292 .elementor-headline{text-align:start;font-size:40px;font-weight:400;}.elementor-185 .elementor-element.elementor-element-67c2292 .elementor-headline-plain-text{color:#111111;}.elementor-185 .elementor-element.elementor-element-67c2292 .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-astglobalcolor8 );stroke-linecap:round;stroke-linejoin:round;}@media(max-width:1024px){.elementor-185 .elementor-element.elementor-element-dctc-carousel{--e-n-carousel-swiper-slides-to-display:1;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title{padding:8px 30px 8px 30px;}}@media(max-width:767px){.elementor-185 .elementor-element.elementor-element-dcts-1{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-185 .elementor-element.elementor-element-dcts-2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-185 .elementor-element.elementor-element-dcts-3{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-185 .elementor-element.elementor-element-dctc-carousel{--e-n-carousel-swiper-slides-to-display:1;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-title{font-size:18px;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title{padding:12px 20px 12px 20px;}.elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-content{padding:10px 20px 0px 20px;}}/* Start custom CSS for template, class: .elementor-element-dc3-pcchk *//* Page 185 only: centre the postcode checker on mobile; field narrowed (4 digits) */
@media (max-width:767px){
.elementor-185 .elementor-element.elementor-element-dc3-pcchk .fpc-pc__label{text-align:center}
.elementor-185 .elementor-element.elementor-element-dc3-pcchk .fpc-pc__row{flex-direction:column;align-items:center;gap:16px}
.elementor-185 .elementor-element.elementor-element-dc3-pcchk .fpc-pc__input{flex:0 0 auto;width:220px;max-width:100%}
}
/* Page 185 only: centre the postcode checker at tablet (768-1024px); input keeps its 200px width */
@media (min-width:768px) and (max-width:1024px){
.elementor-185 .elementor-element.elementor-element-dc3-pcchk .fpc-pc__label{text-align:center}
.elementor-185 .elementor-element.elementor-element-dc3-pcchk .fpc-pc__row{flex-direction:column;align-items:center}
.elementor-185 .elementor-element.elementor-element-dc3-pcchk .fpc-pc__input{flex:0 0 auto;width:200px;max-width:100%}
}/* End custom CSS */
/* Start custom CSS for nested-carousel, class: .elementor-element-dctc-carousel *//* FPC About dct testimonial carousel - MOBILE ONLY (max 767px).
   Native Carousel arrows cannot be repositioned per breakpoint, so on mobile
   place the navigation below the card in two rows:
   row 1 = prev/next arrows, each inset 64px from the card's left/right edge;
   row 2 = pagination dots, centred, 10px below the arrows.
   This leaves the dots the full card width for future testimonials.
   Note: Elementor's carousel CSS already lifts the dot row by its own height
   (10px), so the dots sit 10-20px above the widget bottom.
   Desktop/tablet use the native side arrows. */
@media (max-width: 767px) {
  .elementor-185 .elementor-element.elementor-element-dctc-carousel { padding-bottom: 60px; } /* room for the arrow row + dot row */
  .elementor-185 .elementor-element.elementor-element-dctc-carousel .elementor-swiper-button { top: auto; bottom: 30px; transform: none; } /* above the dot row + 10px gap */
  .elementor-185 .elementor-element.elementor-element-dctc-carousel .elementor-swiper-button-prev { left: 64px; right: auto; } /* 64px in from the card's left edge (symmetrical inset) */
  .elementor-185 .elementor-element.elementor-element-dctc-carousel .elementor-swiper-button-next { right: 64px; left: auto; } /* 64px in from the card's right edge: clears the fixed 3CX chat bubble tap area */
  .elementor-185 .elementor-element.elementor-element-dctc-carousel .swiper-pagination { top: auto; bottom: 0; } /* centred dot row */
}/* End custom CSS */
/* Start custom CSS for accordion, class: .elementor-element-dc12-accordion *//* FAQ accordion: matches the approved Bacchus Marsh FAQ (page 783, widget 5b07f36).
   Applies at all breakpoints. Previously desktop-only (min-width:1025px), which left the open
   question white-on-cream and the rows unpadded on tablet/mobile. Phase 2 fix 2026-10-08.
   Scoped to this widget only via the ".elementor-185 .elementor-element.elementor-element-dc12-accordion" prefix. */
/* Spacing between rows: Figma gap-[15px] separating the open row+answer from the closed list,
     gap-[10px] between each closed row */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-item + .elementor-accordion-item {
    margin-top: 10px;
  }
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-item:first-child {
    margin-bottom: 15px;
  }

  /* Row shape + height: Figma rounded-[73px] pill, min h-[60px] on every question row
     (min-height, not a hard height, so the row can grow if a title ever wraps).
     Vertical title_padding is set natively (Style tab: 8px desktop/tablet, 12px mobile) so wrapped questions keep breathing room; single-line rows stay at this 60px min-height. Horizontal padding is 30px (20px mobile). Same rule for active
     and inactive rows. */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title {
    border-radius: 73px;
    overflow: hidden;
    display: flex;
    align-items: center;
    min-height: 60px;
  }

  /* Actual rendered DOM (verified via REST API) has the icon <span> BEFORE the title <a>,
     so default flex row order puts the icon first/left. Explicit "order" fixes this
     regardless of DOM order: title first visually (order:1) and given flex:1 so it fills
     the row, icon last visually (order:2) at a fixed width so it lands at the true right
     edge - no absolute positioning, no dependency on Elementor's own markup order. */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title .elementor-accordion-title {
    order: 1;
    flex: 1 1 auto;
    min-width: 0;
  }

  /* Active/open row fill: Figma bg-[#18360d], applied only while the row is expanded.
     Closed rows keep the native "title_background" (#FEFCF4) set on the Style tab. */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title.elementor-active {
    background-color: #18360D;
  }


  /* Open row title text (kept from this widget's previous CSS) */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title.elementor-active .elementor-accordion-title {
    color: #FFFFFF;
  }

  /* Expand/collapse control: Figma 43x43 circle bg-[#fadf7d] behind the chevron icon,
     present on both open and closed rows. order:2 (paired with the title's order:1 above)
     puts it last in visual flex order regardless of its earlier position in the DOM. */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 43px;
    height: 43px;
    border-radius: 50%;
    background-color: #FADF7D;
    flex-shrink: 0;
    order: 2;
  }

  /* Icon state wrappers: base sizing only, no display set here - display is decided
     explicitly below per state so exactly ONE of closed/opened ever renders. */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon-closed,
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon-opened {
    position: relative;
    width: 24px;
    height: 24px;
  }

  /* Inactive row: show the closed-state icon only, hide the opened-state one */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title:not(.elementor-active) .elementor-accordion-icon-closed {
    display: inline-flex;
  }
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title:not(.elementor-active) .elementor-accordion-icon-opened {
    display: none;
  }

  /* Active row: show the opened-state icon only, hide the closed-state one
     (same glyph either way, per Figma - both states use one identical chevron) */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed {
    display: none;
  }
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened {
    display: inline-flex;
  }

  /* Icon glyph: reproduces the ACTUAL Figma vector (node icon-park-outline:down inside
     16669:754 - 24x24, single path "M18 9L12 15L6 9", stroke #18360D, stroke-width 2,
     round linecap/linejoin) instead of the Font Awesome "angle-down" SVG Elementor actually
     renders (verified via REST API: <svg class="e-font-icon-svg e-fas-angle-down">).
     Hides that rendered SVG inside whichever wrapper is visible, then paints the exact
     Figma shape as a CSS mask on a pseudo-element, sized 24x24 and centered in the badge. */
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon-closed > *,
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon-opened > * {
    visibility: hidden;
  }
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon-closed::after,
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon-opened::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #18360D;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M18 9L12 15L6 9' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M18 9L12 15L6 9' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
  }

/* Mobile: slightly smaller chevron circle so long questions keep more width */
@media (max-width: 767px) {
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon { width: 36px; height: 36px; }
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon-closed, .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-accordion-icon-opened { width: 20px; height: 20px; }
}

/* Spacing refinement 2026-10-08: at 1024px and below keep at least 12px between the question text and the chevron
   (the native icon spacing lands on the outer side of the chevron because CSS re-orders it to the right). */
@media (max-width: 1024px) {
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title { gap: 12px; }
}

/* Spacing refinement 2026-10-08: on mobile cap the corner radius at 28px (approved Tier 1 treatment) so wrapped
   questions are not cut into by a full-height pill curve. */
@media (max-width: 767px) {
  .elementor-185 .elementor-element.elementor-element-dc12-accordion .elementor-tab-title { border-radius: 28px; }
}/* End custom CSS */