/* A missing/blocked Atomic base stylesheet must not flatten the document. */
:where(body.vdtcc-enabled .elementor) .e-flexbox-base { display:flex; flex-direction:column; }
:where(body.vdtcc-enabled .elementor) .e-div-block-base { display:block; min-width:0; }
body.vdtcc-enabled { font-family:"Montserrat",Arial,sans-serif; }
.vdtcc-main-content { display:block; width:100%; min-width:0; max-width:none; margin:0; padding:0; }
body.vdtcc-enabled .site-header { display:none; }
body.vdtcc-enabled .vdtcc-site-header { display:block; }
body.vdtcc-content-page > .site-footer { display:none; }
body.vdtcc-enabled .vdtcc-legacy-document { display:block; width:100%; max-width:none; min-width:0; }
body.vdtcc-legacy-page.vdtcc-refine .vdtcc-legacy-document > .e-atomic-element:not([data-id="00f84df"]):not([data-id="68597e7"]) { display:flex; flex-direction:column; align-items:stretch; width:100%; min-width:0; max-width:none; box-sizing:border-box; }
body.vdtcc-legacy-page.vdtcc-refine [data-id="56140b5"] [data-id="e664b00"] .e-atomic-element { display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
body.vdtcc-legacy-page.vdtcc-refine #ABOUT [data-id="cb3fc6b"] > .e-con-inner { width:100%; min-width:0; }
body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; --width:100%; min-width:0; padding:0; gap:24px; align-items:stretch; }
body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-card { display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; width:100%; --width:100%; min-width:0; height:100%; padding:32px; gap:24px; background:#fff; border:1px solid #d9e5ec; border-radius:14px; }
body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-copy { display:flex; flex-direction:column; align-items:flex-start; width:100%; min-width:0; border:0; padding:0; gap:15px; }
body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-copy .elementor-heading-title { font-size:25px; font-weight:600; line-height:1.3; letter-spacing:-.025em; color:#172a36; }
body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-copy p { width:100%; font-size:15px; font-weight:400; line-height:1.7; color:#405462; }
body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-price { display:flex; flex-direction:row; align-items:baseline; align-self:stretch; justify-content:flex-start; width:100%; min-width:0; margin-top:auto; padding:0; order:0; gap:12px; border:0; }
body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-price > .e-heading-base { margin:0; font-size:14px; font-weight:500; line-height:1.5; color:#405462; }
body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-price .elementor-heading-title { margin:0; font-size:40px; font-weight:600; line-height:1.2; letter-spacing:-.04em; color:#172a36; }
body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-action { order:1; }
body.vdtcc-legacy-page.vdtcc-refine #BOOKING [data-id="cb4a7d9"] { display:flex; flex-direction:row; align-items:center; gap:24px; }

/* Existing article and index content keeps its own text and URLs. */
body.vdtcc-content-page .vdtcc-content-document { display:block; width:100%; max-width:none; color:#172a36; }
body.vdtcc-content-page .vdtcc-content-document > [data-id="10417738"] { display:none; }
body.vdtcc-content-page .vdtcc-content-document > [data-id="5fd43d1"] { display:flex; flex-direction:column; align-items:stretch; width:min(860px,calc(100% - 80px)); max-width:none; margin:0 auto; padding:64px 0 78px; gap:24px; }
body.vdtcc-content-page .vdtcc-content-document > [data-id="56140b5"] { display:flex; flex-direction:column; align-items:stretch; width:100%; max-width:none; padding:64px max(40px,calc((100% - 1180px)/2)); gap:32px; }
body.vdtcc-content-page .vdtcc-content-document h1 { width:100%; margin:0 0 16px; font-family:"Montserrat",Arial,sans-serif; font-size:clamp(32px,3.4vw,48px); font-weight:600; line-height:1.15; letter-spacing:-.035em; color:#172a36; overflow-wrap:anywhere; }
body.vdtcc-content-page .vdtcc-content-document [data-id="5fd43d1"] h2 { width:100%; font-size:26px; font-weight:600; line-height:1.35; letter-spacing:-.02em; color:#172a36; }
body.vdtcc-content-page .vdtcc-content-document [data-id="5fd43d1"] :is(p,li) { width:100%; font-size:16px; font-weight:400; line-height:1.8; color:#405462; }
body.vdtcc-content-page .vdtcc-content-document :is(p,h1,h2,h3,li,a) { overflow-wrap:anywhere; }
body.vdtcc-content-page main.site-main { width:min(860px,calc(100% - 80px)); max-width:none; margin:0 auto; padding:64px 0 78px; font-family:"Montserrat",Arial,sans-serif; color:#172a36; }
body.vdtcc-content-page main.site-main :is(p,li) { font-size:16px; line-height:1.8; }
body.vdtcc-content-page main.site-main h1 { font-family:inherit; font-size:clamp(32px,3.4vw,48px); line-height:1.2; font-weight:600; letter-spacing:-.035em; }
body.vdtcc-content-page :is(main.site-main,.vdtcc-content-document) img { max-width:100%; height:auto; }
body.vdtcc-content-page pre { max-width:100%; overflow-x:auto; }

/* Footer copies in the older blog templates have different Elementor IDs. */
body.vdtcc-content-page .vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child { display:grid; grid-template-columns:1.1fr 1fr 1fr; align-items:start; width:100%; min-width:0; max-width:none; padding:48px max(40px,calc((100% - 1180px)/2)); gap:48px; background:#172a36; }
body.vdtcc-content-page .vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child > .e-con { width:100%; --width:100%; min-width:0; gap:10px; }
body.vdtcc-content-page .vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child :is(h2,h3,p,a) { color:#e6eef4; overflow-wrap:anywhere; }
body.vdtcc-content-page .vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child :is(h2,h3) { font-size:14px; line-height:1.6; font-weight:500; }
body.vdtcc-content-page .vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child p { font-size:13px; line-height:1.8; }
body.vdtcc-content-page .vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child img { display:block; width:225px; max-width:100%; height:auto; }
body.vdtcc-content-page .vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child a { display:inline-flex; align-items:center; min-height:44px; font-size:13px; }

@media (max-width:900px) {
    body.vdtcc-legacy-page.vdtcc-refine [data-id="e664b00"] > .e-con-inner { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:767px) {
    body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-grid { grid-template-columns:1fr; }
    body.vdtcc-legacy-page.vdtcc-refine :is(#SERVICES,#WALKING) .vdtcc-package-card { padding:26px 22px; }
    body.vdtcc-legacy-page.vdtcc-refine [data-id="e664b00"] > .e-con-inner { grid-template-columns:repeat(2,minmax(0,1fr)); }
    body.vdtcc-legacy-page.vdtcc-refine #BOOKING [data-id="cb4a7d9"] { align-items:flex-start; }
    body.vdtcc-legacy-page.vdtcc-refine #BOOKING [data-id="a60c756"] { display:none; }
    body.vdtcc-content-page .vdtcc-content-document > [data-id="5fd43d1"], body.vdtcc-content-page main.site-main { width:calc(100% - 40px); padding:42px 0 52px; }
    body.vdtcc-content-page .vdtcc-content-document > [data-id="56140b5"] { padding:42px 20px; }
    body.vdtcc-content-page .vdtcc-content-document h1 { font-size:32px; }
    body.vdtcc-content-page .vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child { grid-template-columns:1fr; padding:38px 20px; gap:30px; }
}

/* Keep benefit icons independent of an older icon font and align their labels. */
body.vdtcc-legacy-page.vdtcc-refine [data-id="e664b00"] .elementor-icon-wrapper { display:flex; line-height:1; }
body.vdtcc-legacy-page.vdtcc-refine [data-id="e664b00"] .elementor-icon { flex:0 0 46px; line-height:1; }
body.vdtcc-legacy-page.vdtcc-refine [data-id="e664b00"] h2 { max-width:100%; overflow-wrap:anywhere; }
@media (max-width:360px) {
    body.vdtcc-legacy-page.vdtcc-refine [data-id="e664b00"] > .e-con-inner { grid-template-columns:1fr; }
}
.vdtcc .vdtcc-booking-close:is(:hover,:focus) { background:#e4f2f9; border-color:#086794; color:#172a36; }
.vdtcc-booking-external > span { margin-left:5px; font-family:Arial,sans-serif; }

/* Legacy footer widgets need explicit colour, dimensions and row spacing. */
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-icon { color:#e6eef4; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) svg.e-font-icon-svg { display:block; fill:currentColor; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-icon-wrapper { display:flex; line-height:1; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-widget-icon { flex:0 0 auto; width:auto; --icon-size:20px; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) :is(.elementor-widget-icon .elementor-icon,.elementor-social-icon) { display:inline-flex; align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; min-height:44px; padding:11px; border:1px solid #69808f; border-radius:50%; background:transparent; color:#e6eef4; font-size:20px; line-height:1; box-sizing:border-box; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) :is(.elementor-widget-icon .elementor-icon,.elementor-social-icon) svg { width:20px; height:20px; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) :is(.elementor-widget-icon a.elementor-icon,.elementor-social-icon):is(:hover,:focus-visible) { background:#284351; border-color:#bce5fb; color:#fff; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) a:focus-visible { outline:2px solid #bce5fb; outline-offset:4px; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .e-con:has(> .elementor-widget-icon):not(:has(> :not(.elementor-widget-icon))) { display:flex; flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:flex-start; width:100%; --width:100%; gap:10px; padding:8px 0 0; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-social-icons-wrapper { display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:center; gap:10px; font-size:0; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-icon-box-wrapper { display:flex; flex-direction:row; align-items:center; justify-content:flex-start; gap:12px; text-align:left; min-width:0; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-icon-box-icon { display:flex; flex:0 0 24px; align-items:center; justify-content:center; width:24px; height:44px; margin:0; line-height:1; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-icon-box-icon .elementor-icon { display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; min-height:0; margin:0; padding:0; border:0; background:transparent; color:#bce5fb; font-size:22px; line-height:1; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-icon-box-icon :is(svg,i) { display:block; width:22px; height:22px; font-size:22px; line-height:1; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-icon-box-content { flex:1; min-width:0; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-icon-box-title { margin:0; }
body.vdtcc-enabled :is([data-id="68597e7"],.vdtcc-content-document.vdtcc-has-embedded-footer > .e-con:last-child) .elementor-icon-box-title a { min-height:44px; white-space:normal; overflow-wrap:anywhere; }

/* These saved icon-font glyphs now render from bundled vectors, even if the
   old ElementsKit font is unavailable. Their existing accessible labels stay. */
body.vdtcc-enabled :is(.icon-map-marker1,.icon-calendar3,.icon-checkmark) { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; font-style:normal; line-height:1; }
body.vdtcc-enabled :is(.icon-map-marker1,.icon-calendar3,.icon-checkmark)::before { content:""; display:block; width:1em; height:1em; background:currentColor; -webkit-mask:var(--vdtcc-icon-mask) center/contain no-repeat; mask:var(--vdtcc-icon-mask) center/contain no-repeat; }
body.vdtcc-enabled .icon-map-marker1 { --vdtcc-icon-mask:url("icons/map-pin.svg"); }
body.vdtcc-enabled .icon-calendar3 { --vdtcc-icon-mask:url("icons/calendar.svg"); }
body.vdtcc-enabled .icon-checkmark { --vdtcc-icon-mask:url("icons/check.svg"); }
body.vdtcc-legacy-page.vdtcc-refine [data-id="e664b00"] .icon-checkmark { width:24px; height:24px; font-size:24px; }

/* The payment-plan callout used the same oversized icon defaults. */
body.vdtcc-legacy-page.vdtcc-refine #BOOKING .elementor-widget-icon { flex:0 0 48px; width:48px; }
body.vdtcc-legacy-page.vdtcc-refine #BOOKING .elementor-icon-wrapper { display:flex; line-height:1; }
body.vdtcc-legacy-page.vdtcc-refine #BOOKING .elementor-icon { display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; padding:12px; border:0; border-radius:12px; background:#dceef7; color:#086794; box-sizing:border-box; }
body.vdtcc-legacy-page.vdtcc-refine #BOOKING .elementor-icon svg { display:block; width:24px; height:24px; fill:currentColor; }

/* Shared navigation also replaces the saved ElementsKit header on articles. */
body.vdtcc-enabled .ekit-template-content-header { display:none; }

body.vdtcc-enabled > .site-footer { display:none; }
