{"id":428,"date":"2026-09-21T02:11:56","date_gmt":"2026-09-21T00:11:56","guid":{"rendered":"https:\/\/dlabtest.hu\/?page_id=428"},"modified":"2026-09-30T18:06:12","modified_gmt":"2026-09-30T16:06:12","slug":"book-an-appointment","status":"publish","type":"page","link":"https:\/\/dlabtest.hu\/hu\/book-an-appointment\/","title":{"rendered":"Book an Appointment"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"428\" class=\"elementor elementor-428\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8ca515c e-con-full dnb-booking-page e-flex e-con e-parent\" data-id=\"8ca515c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-77e1525 elementor-widget elementor-widget-html\" data-id=\"77e1525\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\n\/* ===== DNB \u00b7 BOOK AN APPOINTMENT ===== *\/\r\n.dnb-reserve {\r\n  --paper: #faf7f2;\r\n  --ink: #4b3528;\r\n  --olive: #6c7062;\r\n  --green: #243e34;\r\n  --muted: #75685e;\r\n  --line: rgba(75, 53, 40, .18);\r\n  --header-space: 149px;\r\n  --dnb-form-height: 760px;\r\n  --dnb-calendar-height: 380px;\r\n\r\n  position: relative;\r\n  isolation: isolate;\r\n  width: 100%;\r\n  margin-top: calc(-1 * var(--header-space));\r\n  padding: calc(var(--header-space) + 48px) 0 72px;\r\n  background: var(--paper);\r\n  color: var(--ink);\r\n  font-family: \"Manrope\", sans-serif;\r\n}\r\n\r\n.dnb-reserve,\r\n.dnb-reserve * {\r\n  box-sizing: border-box;\r\n}\r\n\r\n.dnb-reserve__wrap {\r\n  width: calc(100% - 80px);\r\n  max-width: 1280px;\r\n  margin-inline: auto;\r\n}\r\n\r\n\/* ===== PAGE HEADING ===== *\/\r\n.dnb-reserve__heading {\r\n  display: grid;\r\n  grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr);\r\n  align-items: end;\r\n  gap: 64px;\r\n  padding-bottom: 40px;\r\n  border-bottom: 1px solid var(--line);\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__eyebrow {\r\n  margin: 0 0 20px;\r\n  color: var(--muted);\r\n  font-size: 11px;\r\n  font-weight: 500;\r\n  line-height: 1.6;\r\n  letter-spacing: .17em;\r\n  text-transform: uppercase;\r\n}\r\n\r\n.dnb-reserve__heading h1 {\r\n  margin: 0;\r\n  color: var(--ink);\r\n  font-family: inherit;\r\n  font-size: clamp(42px, 5vw, 69px);\r\n  font-weight: 500;\r\n  line-height: 1.07;\r\n  letter-spacing: -.045em;\r\n  text-wrap: balance;\r\n}\r\n\r\n.dnb-reserve__heading h1 > span {\r\n  display: block;\r\n}\r\n\r\n.dnb-reserve__heading h1 em {\r\n  color: var(--olive);\r\n  font-family: Georgia, serif;\r\n  font-weight: 400;\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__intro {\r\n  max-width: 380px;\r\n  margin: 0 0 4px auto;\r\n  color: #65564c;\r\n  font-size: 16px;\r\n  line-height: 1.85;\r\n}\r\n\r\n\/* ===== INFORMATION ABOVE THE FORM ===== *\/\r\n.dnb-reserve__body {\r\n  width: 100%;\r\n  max-width: 1280px;\r\n  min-width: 0;\r\n  margin-inline: auto;\r\n  padding-top: 32px;\r\n}\r\n\r\n.dnb-reserve__notice {\r\n  display: flex;\r\n  align-items: flex-start;\r\n  gap: 14px;\r\n  margin-bottom: 32px;\r\n  padding: 20px 24px;\r\n  border: 1px solid rgba(36, 62, 52, .18);\r\n  border-radius: 10px;\r\n  background: #f0f1eb;\r\n  color: var(--green);\r\n}\r\n\r\n.dnb-reserve__notice-icon {\r\n  flex: 0 0 22px;\r\n  width: 22px;\r\n  height: 22px;\r\n  margin-top: 2px;\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__notice-title {\r\n  margin: 0 0 5px;\r\n  color: var(--green);\r\n  font-family: inherit;\r\n  font-size: 16px;\r\n  font-weight: 600;\r\n  line-height: 1.5;\r\n  letter-spacing: 0;\r\n  text-transform: none;\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__notice-text {\r\n  max-width: 940px;\r\n  margin: 0;\r\n  color: #4d5b50;\r\n  font-size: 14px;\r\n  line-height: 1.8;\r\n}\r\n\r\n.dnb-reserve__notice-text strong {\r\n  font-weight: 600;\r\n}\r\n\r\n\/* ===== SELECTED SERVICE ABOVE THE FORM ===== *\/\r\n.dnb-reserve__selection {\r\n  width: 100%;\r\n  margin: 0 0 24px;\r\n  padding: 0 16px;\r\n  text-align: center;\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__selection-label {\r\n  margin: 0 0 8px;\r\n  color: var(--muted);\r\n  font-size: 10px;\r\n  font-weight: 600;\r\n  line-height: 1.6;\r\n  letter-spacing: .15em;\r\n  text-transform: uppercase;\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__selection-title {\r\n  margin: 0;\r\n  color: var(--green);\r\n  font-family: inherit;\r\n  font-size: clamp(22px, 2.4vw, 30px);\r\n  font-weight: 500;\r\n  line-height: 1.3;\r\n  letter-spacing: -.025em;\r\n  text-transform: none;\r\n  overflow-wrap: anywhere;\r\n}\r\n\r\n\/* ===== AMELIA \u00b7 LAYOUT 2 ===== *\/\r\n\/* Colours and labels are managed in Amelia > Customize. *\/\r\n.dnb-reserve__booking {\r\n  width: 100%;\r\n  min-width: 0;\r\n  margin-inline: auto;\r\n}\r\n\r\n\/* Only Amelia is scaled. All surrounding content keeps the 1280px grid.\r\n   A 1280px form at 80% occupies 1024px by 608px on desktop. *\/\r\n@media (min-width: 1200px) {\r\n  .dnb-reserve__booking {\r\n    width: 1280px;\r\n    zoom: 0.8;\r\n  }\r\n\r\n  .dnb-reserve__notice > div {\r\n    display: grid;\r\n    grid-template-columns: 170px minmax(0, 1fr);\r\n    align-items: baseline;\r\n    gap: 24px;\r\n    flex: 1;\r\n    min-width: 0;\r\n  }\r\n\r\n  .dnb-reserve .dnb-reserve__notice-title {\r\n    margin: 0;\r\n  }\r\n}\r\n\r\n.dnb-reserve__booking [id^=\"amelia-app-booking\"],\r\n.dnb-reserve__booking .am-fs {\r\n  width: 100% !important;\r\n  max-width: 100% !important;\r\n  margin: 0 !important;\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container.am-fs__wrapper {\r\n  width: 100% !important;\r\n  max-width: 100% !important;\r\n  height: var(--dnb-form-height) !important;\r\n  max-height: none !important;\r\n  margin: 0 !important;\r\n  border: 1px solid var(--line);\r\n  border-radius: 12px !important;\r\n  box-shadow: 0 16px 42px rgba(58, 44, 33, .08) !important;\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs__main {\r\n  flex: 1 1 0%;\r\n  min-width: 0;\r\n  max-width: none !important;\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs__main-inner {\r\n  height: 100%;\r\n}\r\n\r\n\/* Keep the native footer reachable; allow long steps to scroll. *\/\r\n\/* Package and confirmation screens retain their own native sizing. *\/\r\n.dnb-reserve__booking #amelia-container .am-fs__main-content:not(.am-cap):not(.am-capi):not(.am-caep):not(.am-fs__congrats) {\r\n  height: calc(100% - 136px) !important;\r\n  overflow-y: auto !important;\r\n  scrollbar-width: thin;\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs__main-footer {\r\n  background: var(--am-c-main-bgr, var(--paper));\r\n  border-top: 1px solid var(--line);\r\n  box-shadow: none;\r\n}\r\n\r\n\/* A clearer selected card, using Amelia's own accent colour. *\/\r\n.dnb-reserve__booking #amelia-container .am-fs__init-item.am--selected {\r\n  box-shadow: inset 0 0 0 1px var(--am-c-primary, var(--green));\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs__init-item__footer-actions {\r\n  font-size: 13px;\r\n  line-height: 1.6;\r\n  text-decoration: underline;\r\n  text-underline-offset: 4px;\r\n}\r\n\r\n\/* ===== SESSION DETAILS \u00b7 NATIVE PANEL ===== *\/\r\n\/* Fill the booking content area, rather than opening partway down it. *\/\r\n.dnb-reserve__booking #amelia-container .am-fs-iipu .am-slide-popup__block-inner {\r\n  inset: 0 !important;\r\n  display: flex;\r\n  flex-direction: column;\r\n  width: 100%;\r\n  height: 100%;\r\n  min-height: 0 !important;\r\n  max-height: 100%;\r\n  padding: 24px 30px;\r\n  border: 2px solid var(--am-c-primary, var(--green));\r\n  border-radius: 10px;\r\n  box-shadow: 0 8px 28px rgba(36, 62, 52, .12);\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs-iipu .am-slide-popup__block-header {\r\n  flex: 0 0 auto;\r\n  gap: 16px;\r\n  margin-bottom: 18px;\r\n  padding-bottom: 14px;\r\n  border-bottom: 1px solid var(--line);\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs-iipu .am-icon-close {\r\n  display: inline-flex;\r\n  flex: 0 0 44px;\r\n  align-items: center;\r\n  justify-content: center;\r\n  width: 44px;\r\n  height: 44px;\r\n  border: 1px solid currentColor;\r\n  border-radius: 7px;\r\n  cursor: pointer;\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs-iipu .am-icon-close:focus-visible {\r\n  outline: 2px solid currentColor;\r\n  outline-offset: 3px;\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs-iipu__content {\r\n  flex: 1 1 auto;\r\n  min-height: 0;\r\n  max-height: none !important;\r\n  overflow-y: auto;\r\n  overscroll-behavior-y: contain;\r\n  padding-right: 12px;\r\n  scrollbar-width: thin;\r\n}\r\n\r\n\/* Only these metadata rows inside the information panel are hidden. *\/\r\n.dnb-reserve__booking #amelia-container .am-fs-iipu__employee,\r\n.dnb-reserve__booking #amelia-container .am-fs-iipu__location {\r\n  display: none !important;\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs-iipu__heading {\r\n  flex-shrink: 0;\r\n  margin-bottom: 12px;\r\n}\r\n\r\n.dnb-reserve__booking #amelia-container .am-fs-iipu__description {\r\n  flex-shrink: 0;\r\n  overflow-wrap: anywhere;\r\n  line-height: 1.75;\r\n}\r\n\r\n\/* Hide location metadata on the native package information screen. *\/\r\n.dnb-reserve__booking #amelia-container .am-fs__package-info2 > div:has(> .am-icon-locations) {\r\n  display: none !important;\r\n}\r\n\r\n\/* ===== CALENDAR \u00b7 SIZE ONLY ===== *\/\r\n\/* Keep a compact monthly grid when the booking form becomes wider. *\/\r\n.dnb-reserve__booking #amelia-container .am-advsc .fc-view-harness {\r\n  height: var(--dnb-calendar-height) !important;\r\n}\r\n\r\n\/* Prevent WordPress table striping from colouring calendar rows. *\/\r\n.dnb-reserve__booking #amelia-container .am-advsc :is(table, thead, tbody, tr, th, td) {\r\n  background: transparent !important;\r\n  box-shadow: none !important;\r\n}\r\n\r\n\/* ===== CONTACT BELOW THE FORM ===== *\/\r\n.dnb-reserve__help {\r\n  display: flex;\r\n  flex-wrap: wrap;\r\n  align-items: center;\r\n  justify-content: center;\r\n  gap: 12px 28px;\r\n  margin-top: 30px;\r\n  padding: 28px 24px;\r\n  border-top: 1px solid var(--line);\r\n  border-bottom: 1px solid var(--line);\r\n  background: #f3ede3;\r\n  text-align: center;\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__help-text {\r\n  margin: 0;\r\n  color: var(--muted);\r\n  font-size: 16px;\r\n  line-height: 1.7;\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__help-link {\r\n  display: inline-flex;\r\n  align-items: center;\r\n  gap: 12px;\r\n  min-height: 44px;\r\n  color: var(--green);\r\n  font-size: 16px;\r\n  font-weight: 500;\r\n  line-height: 1.5;\r\n  text-decoration: none;\r\n}\r\n\r\n.dnb-reserve__help-link span:first-child {\r\n  border-bottom: 1px solid currentColor;\r\n  padding-bottom: 3px;\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__help-link:hover {\r\n  color: var(--ink);\r\n}\r\n\r\n.dnb-reserve .dnb-reserve__help-link:focus-visible {\r\n  outline: 2px solid var(--green);\r\n  outline-offset: 5px;\r\n  border-radius: 2px;\r\n}\r\n\r\n\/* Animate the heading only: the booking panel stays stationary. *\/\r\n.dnb-reserve__heading {\r\n  animation: dnb-reserve-enter .7s ease-out both;\r\n}\r\n\r\n@keyframes dnb-reserve-enter {\r\n  from { opacity: 0; transform: translateY(12px); }\r\n  to { opacity: 1; transform: translateY(0); }\r\n}\r\n\r\n\/* ===== TABLET ===== *\/\r\n@media (max-width: 1179px) {\r\n  .dnb-reserve { --header-space: 113px; }\r\n  .dnb-reserve__heading { gap: 36px; }\r\n}\r\n\r\n\/* ===== MOBILE ===== *\/\r\n@media (max-width: 767px) {\r\n  .dnb-reserve {\r\n    --dnb-form-height: 700px;\r\n    --dnb-calendar-height: 340px;\r\n    padding-top: calc(var(--header-space) + 30px);\r\n    padding-bottom: 44px;\r\n  }\r\n\r\n  .dnb-reserve__wrap { width: calc(100% - 32px); }\r\n\r\n  .dnb-reserve__heading {\r\n    grid-template-columns: minmax(0, 1fr);\r\n    gap: 22px;\r\n    padding: 0 4px 28px;\r\n  }\r\n\r\n  .dnb-reserve .dnb-reserve__eyebrow {\r\n    margin-bottom: 16px;\r\n    font-size: 10px;\r\n  }\r\n\r\n  .dnb-reserve__heading h1 { font-size: clamp(35px, 10vw, 58px); }\r\n\r\n  .dnb-reserve .dnb-reserve__intro {\r\n    max-width: 100%;\r\n    font-size: 15px;\r\n    line-height: 1.8;\r\n  }\r\n\r\n  .dnb-reserve__body { padding-top: 24px; }\r\n\r\n  .dnb-reserve__notice {\r\n    gap: 11px;\r\n    margin-bottom: 20px;\r\n    padding: 18px 16px;\r\n  }\r\n\r\n  .dnb-reserve .dnb-reserve__notice-text { font-size: 13px; }\r\n\r\n  .dnb-reserve__booking #amelia-container.am-fs__wrapper {\r\n    box-shadow: 0 10px 28px rgba(58, 44, 33, .06) !important;\r\n  }\r\n\r\n  .dnb-reserve__booking #amelia-container .am-fs-iipu .am-slide-popup__block-inner {\r\n    padding: 16px;\r\n  }\r\n\r\n  .dnb-reserve__booking #amelia-container .am-fs-iipu__content { padding-right: 6px; }\r\n\r\n  .dnb-reserve__help {\r\n    flex-direction: column;\r\n    gap: 8px;\r\n    margin-top: 24px;\r\n    padding: 24px 18px;\r\n  }\r\n\r\n  .dnb-reserve .dnb-reserve__help-text { font-size: 15px; }\r\n}\r\n\r\n\/* Prevent iPhone focus zoom without disabling user zoom. *\/\r\n@media (max-width: 767px), (hover: none) and (pointer: coarse) {\r\n  .dnb-reserve__booking input,\r\n  .dnb-reserve__booking select,\r\n  .dnb-reserve__booking textarea {\r\n    font-size: 16px !important;\r\n  }\r\n}\r\n\r\n@media (prefers-reduced-motion: reduce) {\r\n  .dnb-reserve__heading { animation: none; }\r\n}\r\n\r\n\r\n\/* Compact help stays close to the booking form on every screen. *\/\r\n.dnb-reserve__guide { margin: 0 0 18px; }\r\n.dnb-reserve__guide-head { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:4px 20px; margin:0 0 6px; }\r\n.dnb-reserve .dnb-reserve__guide-title { margin:0; color:var(--green); font:600 16px\/1.5 \"Manrope\",sans-serif; }\r\n.dnb-reserve__guide-link { color:var(--green); font-size:13px; font-weight:600; text-decoration:underline; text-underline-offset:3px; }\r\n.dnb-reserve__guide-link:focus-visible, .dnb-reserve__guide summary:focus-visible { outline:2px solid var(--green); outline-offset:3px; }\r\n.dnb-reserve__guide-grid { display:grid; grid-template-columns:1fr; gap:0; border-top:1px solid var(--line); }\r\n.dnb-reserve__guide details { border-bottom:1px solid var(--line); min-width:0; }\r\n.dnb-reserve__guide summary { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:46px; padding:9px 2px; color:var(--ink); font-size:14px; font-weight:600; line-height:1.45; cursor:pointer; list-style:none; }\r\n.dnb-reserve__guide summary::-webkit-details-marker { display:none; }\r\n.dnb-reserve__guide summary::after { content:\"+\"; flex:0 0 auto; color:var(--olive); font-size:22px; font-weight:400; line-height:1; }\r\n.dnb-reserve__guide details[open] summary::after { content:\"\u2212\"; }\r\n.dnb-reserve .dnb-reserve__guide details p { margin:0 0 14px; color:#65564c; font-size:13px; line-height:1.7; }\r\n.dnb-reserve__aftercare { margin-top:16px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }\r\n.dnb-reserve__aftercare summary { display:flex; align-items:center; justify-content:space-between; min-height:46px; color:var(--green); font-size:14px; font-weight:600; cursor:pointer; list-style:none; }\r\n.dnb-reserve__aftercare summary::-webkit-details-marker { display:none; }\r\n.dnb-reserve__aftercare summary::after { content:\"+\"; font-size:22px; font-weight:400; }\r\n.dnb-reserve__aftercare[open] summary::after { content:\"\u2212\"; }\r\n.dnb-reserve .dnb-reserve__aftercare p { margin:0 0 14px; max-width:900px; color:#65564c; font-size:13px; line-height:1.7; }\r\n@media (max-width:767px) {\r\n  .dnb-reserve__guide { margin-bottom:12px; }\r\n  .dnb-reserve__guide-grid { grid-template-columns:1fr; }\r\n  .dnb-reserve__guide summary { min-height:44px; font-size:13px; }\r\n  .dnb-reserve__guide-head { gap:2px 12px; }\r\n}\r\n\r\n\/* Category choice precedes the Amelia service step on the unfiltered page. *\/\r\n.dnb-reserve__categories { margin:18px 0 22px; }\r\n.dnb-reserve__categories-kicker { margin:0 0 10px; color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }\r\n.dnb-reserve__category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }\r\n.dnb-reserve__category { display:flex; flex-direction:column; justify-content:center; min-height:104px; padding:18px 20px; border:1px solid var(--line); border-left:4px solid var(--category-color); border-radius:10px; background:#fffdf9; color:var(--green); text-decoration:none; box-shadow:0 8px 22px rgba(58,44,33,.04); transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease; }\r\n.dnb-reserve__category:hover { transform:translateY(-2px); border-color:var(--category-color); box-shadow:0 12px 28px rgba(58,44,33,.1); }\r\n.dnb-reserve__category:focus-visible, .dnb-reserve__category-back:focus-visible { outline:3px solid var(--green); outline-offset:3px; }\r\n.dnb-reserve__category strong { display:block; font-size:17px; font-weight:600; line-height:1.35; }\r\n.dnb-reserve__category span { display:block; margin-top:5px; color:#65564c; font-size:13px; line-height:1.5; }\r\n.dnb-reserve__category-back { display:inline-flex; align-items:center; min-height:44px; margin:-7px 0 16px; color:var(--green); font-size:14px; font-weight:600; text-decoration:underline; text-underline-offset:3px; }\r\n.dnb-reserve[data-dnb-category-stage=\"choose\"] .dnb-reserve__booking,\r\n.dnb-reserve[data-dnb-category-stage=\"choose\"] .dnb-reserve__selection,\r\n.dnb-reserve[data-dnb-category-stage=\"choose\"] .dnb-reserve__category-back { display:none; }\r\n.dnb-reserve[data-dnb-category-stage=\"booking\"] .dnb-reserve__categories { display:none; }\r\n@media (max-width:767px) { .dnb-reserve__category-grid { grid-template-columns:1fr; gap:8px; } .dnb-reserve__category { min-height:68px; padding:11px 15px; } .dnb-reserve__category strong { font-size:15px; } .dnb-reserve__category span { margin-top:2px; font-size:12px; } }\r\n@media (prefers-reduced-motion:reduce) { .dnb-reserve__category { transition:none; } }\r\n\r\n\/* The booking starts here: a clear, contained first step and Amelia flow. *\/\r\n.dnb-reserve .dnb-reserve__stage-prompt-booking { display:none; }\r\n.dnb-reserve[data-dnb-category-stage=\"booking\"] .dnb-reserve__stage-prompt-booking { display:block; }\r\n.dnb-reserve[data-dnb-category-stage=\"booking\"] .dnb-reserve__stage-prompt-choose { display:none; }\r\n.dnb-reserve__booking-stage { margin:34px 0 0; padding:28px; border:2px solid #395749; border-radius:16px; background:#f3f0e9; box-shadow:0 18px 42px rgba(58,44,33,.10); scroll-margin-top:70px; }\r\n.dnb-reserve__booking-stage-head { margin:0 0 20px; padding-bottom:16px; border-bottom:1px solid var(--line); }\r\n.dnb-reserve .dnb-reserve__booking-stage-kicker { margin:0 0 8px; color:var(--olive); font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }\r\n.dnb-reserve .dnb-reserve__booking-stage-head h2 { margin:0 0 5px; color:var(--green); font:500 clamp(25px,3vw,34px)\/1.2 \"Manrope\",sans-serif; letter-spacing:-.03em; }\r\n.dnb-reserve .dnb-reserve__booking-stage-head p:last-child { margin:0; color:#65564c; font-size:14px; line-height:1.6; }\r\n.dnb-reserve__booking-stage .dnb-reserve__categories { margin:0; }\r\n.dnb-reserve__booking-stage .dnb-reserve__category-back { margin:0 0 14px; }\r\n.dnb-reserve__booking-stage .dnb-reserve__selection { margin-bottom:20px; }\r\n.dnb-reserve__aftercare { margin-top:28px; }\r\n@media (max-width:767px) { .dnb-reserve__booking-stage { margin-top:24px; padding:16px; border-radius:12px; scroll-margin-top:85px; } .dnb-reserve__booking-stage-head { margin-bottom:14px; padding-bottom:12px; } .dnb-reserve .dnb-reserve__booking-stage-head h2 { font-size:26px; } .dnb-reserve .dnb-reserve__booking-stage-head p:last-child { font-size:13px; } }\r\n\r\n.dnb-reserve__account{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 22px;padding:20px 22px;background:#eee7dc;border:1px solid var(--line);border-radius:10px;color:var(--ink)}\r\n.dnb-reserve__account h3{margin:0 0 6px;font-size:16px;line-height:1.4;color:var(--ink)}\r\n.dnb-reserve__account p{margin:0;max-width:760px;font-size:13px;line-height:1.7;color:var(--muted)}\r\n.dnb-reserve__account-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;flex-shrink:0;min-height:44px;padding:10px 16px;border:1px solid var(--ink);border-radius:6px;color:var(--ink)!important;font-size:14px;font-weight:600;text-decoration:none!important;white-space:nowrap}\r\n.dnb-reserve__account-link:hover{background:var(--paper)}\r\n.dnb-reserve__account-link:focus-visible{outline:2px solid var(--green);outline-offset:3px}\r\n.dnb-reserve__guide-grid details p a{color:var(--green);text-decoration:underline}\r\n@media(max-width:767px){.dnb-reserve__account{flex-direction:column;align-items:stretch;gap:14px;padding:16px}.dnb-reserve__account-link{align-self:stretch}}\r\n<\/style>\r\n\r\n<section class=\"dnb-reserve\" aria-labelledby=\"dnb-reserve-title\">\r\n  <div class=\"dnb-reserve__wrap\">\r\n\r\n    <header class=\"dnb-reserve__heading\">\r\n      <div>\r\n        <p class=\"dnb-reserve__eyebrow\">DNB PHYSIO \u00b7 BOOK AN APPOINTMENT<\/p>\r\n        <h1 id=\"dnb-reserve-title\" class=\"translation-block\">\r\n          Make time for <em>your movement.<\/em>\r\n        <\/h1>\r\n      <\/div>\r\n      <p class=\"dnb-reserve__intro\">\r\n        Book a 45-minute individual physiotherapy appointment or an online group session. D\u00f3ri and Bogi offer care in English, German and Hungarian.\r\n      <\/p>\r\n    <\/header>\r\n\r\n    <div class=\"dnb-reserve__body\">\r\n      <div class=\"dnb-reserve__guide\" aria-labelledby=\"dnb-reserve-guide-title\">\r\n        <div class=\"dnb-reserve__guide-head\">\r\n          <h2 class=\"dnb-reserve__guide-title\" id=\"dnb-reserve-guide-title\">A little help before you book<\/h2>\r\n          <a class=\"dnb-reserve__guide-link\" href=\"\/contact\/\">Not sure what to choose? Ask us \u2197<\/a>\r\n        <\/div>\r\n        <div class=\"dnb-reserve__guide-grid\">\r\n          <details><summary>Which appointment is right for me?<\/summary><p>Choose In-Person Physiotherapy to meet your physiotherapist in person. Choose Online Physiotherapy for an individual appointment from home, or Online Group Sessions to move together with others. Read each service description for more detail. If you are unsure, message D\u00f3ri or Bogi and they will help you choose.<\/p><\/details>\r\n          <details><summary>Where are the sessions, and which languages can I use?<\/summary><p>Join online appointments from wherever you are. D\u00f3ri sees clients in Bad Hofgastein and Bogi in Kufstein. Both offer individual appointments in English, German and Hungarian. D\u00f3ri\u2019s Monday group can be in English or German; her Wednesday group is in Hungarian. Check each group description for more detail.<\/p><\/details>\r\n          <details><summary>Can I join a group session alone or bring someone?<\/summary><p>Yes. You can book just for yourself or add other people. The price is \u20ac20 per person; group sessions are planned for 2\u201310 people. If only one person signs up, the physiotherapist will contact them to discuss the options.<\/p><\/details>\r\n          <details><summary>When can I book, and what if no time suits me?<\/summary><p>Choose an available time at least 24 hours before the appointment starts. Each session lasts 45 minutes. If you cannot find a suitable time, message your chosen physiotherapist directly.<\/p><\/details>\r\n          <details><summary>How do I access my bookings and session package?<\/summary><p>After booking, open the personal My bookings link in your confirmation email to manage your appointments and packages.<\/p><p>You can also select <a href=\"\/my-bookings\/\">My bookings<\/a> in the website header, enter the email address you used when booking, and request a secure sign-in link. Open the link in your email to access your bookings. No separate registration or password is needed.<\/p><\/details>\r\n        <\/div>\r\n      <\/div>\r\n\r\n\r\n      <section class=\"dnb-reserve__booking-stage\" id=\"dnb-reserve-booking-start\" aria-labelledby=\"dnb-reserve-booking-title\">\r\n        <div class=\"dnb-reserve__booking-stage-head\">\r\n          <p class=\"dnb-reserve__booking-stage-kicker\">DNB PHYSIO \u00b7 ONLINE BOOKING<\/p>\r\n          <h2 id=\"dnb-reserve-booking-title\">Book your appointment<\/h2>\r\n          <p class=\"dnb-reserve__stage-prompt-choose\">Choose a category, then select your session and an available time.<\/p>\r\n          <p class=\"dnb-reserve__stage-prompt-booking\">Choose a session and an available time.<\/p>\r\n        <\/div>\r\n\r\n      <aside class=\"dnb-reserve__account\" aria-labelledby=\"dnb-reserve-account-title\">\r\n        <div><h3 id=\"dnb-reserve-account-title\">Already booked or have a session package?<\/h3><p>Manage your bookings or book your remaining package sessions in My bookings. Sign in with the email address you used when booking \u2014 no password needed.<\/p><\/div>\r\n        <a class=\"dnb-reserve__account-link\" href=\"\/my-bookings\/\">My bookings <span aria-hidden=\"true\">\u2192<\/span><\/a>\r\n      <\/aside>\r\n\r\n      <nav class=\"dnb-reserve__categories\" aria-label=\"Choose your appointment category\" id=\"dnb-reserve-category\">\r\n        <p class=\"dnb-reserve__categories-kicker\">First, choose a category<\/p>\r\n        <div class=\"dnb-reserve__category-grid\">\r\n          <a class=\"dnb-reserve__category\" style=\"--category-color:#6c7062\" href=\"?ameliaCategoryId=2#dnb-reserve-booking-start\"><strong>Online Physiotherapy<\/strong><span>Individual care from wherever you are<\/span><\/a>\r\n          <a class=\"dnb-reserve__category\" style=\"--category-color:#a87e64\" href=\"?ameliaCategoryId=3#dnb-reserve-booking-start\"><strong>In-Person Physiotherapy<\/strong><span>Meet D\u00f3ri or Bogi in Austria<\/span><\/a>\r\n          <a class=\"dnb-reserve__category\" style=\"--category-color:#537b75\" href=\"?ameliaCategoryId=4#dnb-reserve-booking-start\"><strong>Online Group Sessions<\/strong><span>Move together, from \u20ac20 per person<\/span><\/a>\r\n        <\/div>\r\n      <\/nav>\r\n      <a class=\"dnb-reserve__category-back\" href=\"#dnb-reserve-booking-start\">\u2190 Change category<\/a>\r\n      <div class=\"dnb-reserve__selection\" aria-live=\"polite\" aria-atomic=\"true\">\r\n        <p class=\"dnb-reserve__selection-label\" data-dnb-selection-label>Your booking<\/p>\r\n        <h2 class=\"dnb-reserve__selection-title\" data-dnb-selection-title>Choose your session<\/h2>\r\n      <\/div>\r\n\r\n      <script>\r\n      (function () {\r\n        \"use strict\";\r\n\r\n        const script = document.currentScript;\r\n        const section = script ? script.closest(\".dnb-reserve\") : null;\r\n        if (!section || section.dataset.dnbSelectionReady === \"true\") return;\r\n\r\n        const label = section.querySelector(\"[data-dnb-selection-label]\");\r\n        const title = section.querySelector(\"[data-dnb-selection-title]\");\r\n        if (!label || !title) return;\r\n        section.dataset.dnbSelectionReady = \"true\";\r\n        const backLink = section.querySelector(\".dnb-reserve__category-back\");\r\n        if (backLink) backLink.href = window.location.pathname + \"#dnb-reserve-booking-start\";\r\n\r\n        const services = new Map([\r\n          [\"6\", \"Online Physiotherapy with D\u00f3ri\"],\r\n          [\"7\", \"In-Person Physiotherapy with D\u00f3ri\"],\r\n          [\"8\", \"Online Group Physiotherapy with D\u00f3ri\"],\r\n          [\"9\", \"Online Physiotherapy with Bogi\"],\r\n          [\"10\", \"In-Person Physiotherapy with Bogi\"],\r\n          [\"11\", \"Online Group Physiotherapy with Bogi\"],\r\n          [\"12\", \"Online Group Physiotherapy with D\u00f3ri \u2013 Hungarian\"]\r\n        ]);\r\n\r\n        function displayService(name) {\r\n          const nextLabel = name ? \"Your selected session\" : \"Your booking\";\r\n          const nextTitle = name || \"Choose your session\";\r\n          if (label.textContent !== nextLabel) label.textContent = nextLabel;\r\n          if (title.textContent !== nextTitle) title.textContent = nextTitle;\r\n        }\r\n\r\n        \/\/ Show the deep-linked service immediately, before Amelia finishes loading.\r\n        const serviceId = new URLSearchParams(window.location.search)\r\n          .get(\"ameliaServiceId\");\r\n        const categoryId = new URLSearchParams(window.location.search).get(\"ameliaCategoryId\");\r\n        const categories = { \"2\": \"Online Physiotherapy\", \"3\": \"In-Person Physiotherapy\", \"4\": \"Online Group Sessions\" };\r\n        const hasCategory = Object.prototype.hasOwnProperty.call(categories, categoryId);\r\n        section.dataset.dnbCategoryStage = serviceId || hasCategory ? \"booking\" : \"choose\";\r\n        displayService(services.get(serviceId) || categories[categoryId] || \"\");\r\n        if (hasCategory && !serviceId) label.textContent = \"Your category\";\r\n\r\n        function updateFromAmelia(data, eventName) {\r\n          if (!data || !Object.prototype.hasOwnProperty.call(data, \"service\")) return;\r\n\r\n          const service = data.service;\r\n\r\n          \/\/ ViewContent can run before the URL selection is resolved.\r\n          \/\/ Its empty initial state must not erase an existing service title.\r\n          \/\/ Explicit selection events still clear the title on deselection.\r\n          if (service == null && eventName === \"ViewContent\") return;\r\n          if (typeof service === \"undefined\") return;\r\n\r\n          const name = service && typeof service.name === \"string\"\r\n            ? service.name.trim()\r\n            : \"\";\r\n\r\n          \/\/ A null service from a selection event means the selection was cleared.\r\n          displayService(name || (service ? services.get(String(service.id)) : \"\") || \"\");\r\n        }\r\n\r\n        \/\/ Preserve existing analytics and other Amelia callbacks.\r\n        const actions = window.ameliaActions || (window.ameliaActions = {});\r\n        [\r\n          \"ViewContent\",\r\n          \"SelectService\",\r\n          \"SelectCategory\",\r\n          \"SelectEmployee\",\r\n          \"SelectLocation\"\r\n        ].forEach(function (eventName) {\r\n          const previous = actions[eventName];\r\n          actions[eventName] = function (success, error, data) {\r\n            updateFromAmelia(data, eventName);\r\n            if (typeof previous === \"function\") {\r\n              return previous.apply(this, arguments);\r\n            }\r\n          };\r\n        });\r\n\r\n      })();\r\n      <\/script>\r\n\r\n      <div class=\"dnb-reserve__booking\" id=\"dnb-reserve-booking\">\r\n        \n<script>\n  if (typeof hasAmeliaEntitiesApiCall === 'undefined' && ('' === '' && '' === '' && '' !== '1')) {\n    var hasAmeliaEntitiesApiCall = true;\n  }\n  var ameliaShortcodeData = (typeof ameliaShortcodeData === 'undefined') ? [] : ameliaShortcodeData;\n  ameliaShortcodeData.push(\n    {\n      'hasApiCall': (typeof hasAmeliaEntitiesApiCall !== 'undefined') && hasAmeliaEntitiesApiCall,\n      'trigger': '',\n      'trigger_type': '',\n      'triggered_form': 'sbsNew',\n      'in_dialog': '',\n      'show': '',\n      'counter': '1000',\n      'category': '',\n      'service': '',\n      'employee': '',\n      'location': '',\n      'package': '',\n      'layout': '2',\n      'ivy': '',\n    }\n  );\n\n  var ameliaShortcodeDataTriggered = (typeof ameliaShortcodeDataTriggered === 'undefined') ? [] : ameliaShortcodeDataTriggered;\n  if (ameliaShortcodeData[ameliaShortcodeData.length - 1].trigger !== '' || ameliaShortcodeData[ameliaShortcodeData.length - 1].ivy !== '') {\n    if (ameliaShortcodeDataTriggered.filter(a => a.counter === ameliaShortcodeData[ameliaShortcodeData.length - 1].counter).length === 0) {\n      ameliaShortcodeDataTriggered.push(ameliaShortcodeData.pop());\n    } else {\n      ameliaShortcodeData.pop()\n    }\n  }\n  if (typeof hasAmeliaEntitiesApiCall !== 'undefined' && hasAmeliaEntitiesApiCall) {\n    hasAmeliaEntitiesApiCall = false;\n  }\n<\/script>\n\n<div\n  id=\"amelia-v2-booking-1000\"\n  class=\"amelia-v2-booking\"\n >\n    <step-form-wrapper><\/step-form-wrapper><\/div>\n\r\n      <\/div>\r\n      <\/section>\r\n\r\n      <details class=\"dnb-reserve__aftercare\"><summary>Need to cancel or change your booking?<\/summary><p>You can cancel or reschedule through your confirmation email or My bookings until 24 hours before your appointment. Within 24 hours, please contact your physiotherapist directly. If you let them know before the appointment, you will not lose a package session. An appointment missed without any prior notice counts as one used session. Please give as much notice as you can.<\/p><\/details>\r\n    <\/div>\r\n\r\n  <\/div>\r\n<\/section>      \t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f145c7c elementor-widget elementor-widget-html\" data-id=\"f145c7c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>\n(function () {\n  var root = document.getElementById('dnb-reserve-booking-start');\n  if (!root || root.dataset.dnbOverviewAutoOpen) return;\n  root.dataset.dnbOverviewAutoOpen = '1';\n  var opened = new WeakSet();\n  var pending = false;\n  function reveal() {\n    pending = false;\n    var view = root.querySelector('.am-fs__ps-overview.am-fs__main-content');\n    if (!view) return;\n    view.querySelectorAll('.am-collapse-item__heading[role=\"button\"][aria-expanded=\"false\"]').forEach(function (button) {\n      if (opened.has(button)) return;\n      opened.add(button);\n      button.click();\n    });\n  }\n  new MutationObserver(function () {\n    if (pending) return;\n    pending = true;\n    requestAnimationFrame(reveal);\n  }).observe(root, { childList: true, subtree: true });\n  reveal();\n})();\n\n(function () {\n  var root = document.getElementById('dnb-reserve-booking-start');\n  if (!root || root.dataset.dnbBackClearsTime) return;\n  root.dataset.dnbBackClearsTime = '2';\n  var timer = null;\n  var deadline = 0;\n  var attempts = 0;\n  var sawDate = false;\n  var emptyPasses = 0;\n  function dateView() {\n    return root.querySelector('.am-fs-dt__calendar.am-fs__main-content, .am-fs__pas.am-fs__main-content');\n  }\n  function stop() {\n    clearTimeout(timer);\n    timer = null;\n    deadline = 0;\n  }\n  function clearSelection(view) {\n    var slot = view.querySelector('.am-advsc__slots-item__selected');\n    var day = view.querySelector('td.am-advsc__dayGridMonth-selected');\n    if (day) {\n      var rect = day.getBoundingClientRect();\n      var point = { bubbles: true, cancelable: true, view: window, button: 0,\n        clientX: rect.left + rect.width \/ 2, clientY: rect.top + rect.height \/ 2 };\n      day.dispatchEvent(new MouseEvent('mousedown', Object.assign({}, point, { buttons: 1 })));\n      day.dispatchEvent(new MouseEvent('mouseup', Object.assign({}, point, { buttons: 0 })));\n      return true;\n    }\n    if (slot) { slot.click(); return true; }\n    return false;\n  }\n  function clearOnReturn() {\n    timer = null;\n    if (!deadline || Date.now() > deadline || attempts >= 8) { stop(); return; }\n    var view = dateView();\n    if (view) {\n      sawDate = true;\n      if (clearSelection(view)) { attempts++; emptyPasses = 0; }\n      else if (view.querySelector('td[data-date]') && ++emptyPasses >= 3) { stop(); return; }\n    } else if (sawDate) { stop(); return; }\n    timer = setTimeout(clearOnReturn, 300);\n  }\n  root.addEventListener('click', function (event) {\n    var target = event.target instanceof Element ? event.target : event.target.parentElement;\n    if (!target) return;\n    if (!target.closest('button.am-heading-prev')) {\n      if (event.isTrusted) stop();\n      return;\n    }\n    var back = target.closest('button.am-heading-prev');\n    var leavingDate = dateView();\n    if (back && leavingDate && leavingDate.querySelector('td.am-advsc__dayGridMonth-selected, .am-advsc__slots-item__selected') && !back.dataset.dnbDateBack) {\n      event.preventDefault();\n      event.stopImmediatePropagation();\n      stop();\n      back.dataset.dnbDateBack = '1';\n      var remaining = 8;\n      function finishDateBack() {\n        var fresh = dateView();\n        if (fresh && remaining-- > 0 && clearSelection(fresh)) {\n          setTimeout(finishDateBack, 150);\n          return;\n        }\n        if (back.isConnected) back.click();\n        delete back.dataset.dnbDateBack;\n      }\n      finishDateBack();\n      return;\n    }\n    var employeeView = root.querySelector('.am-fs-employee-step.am-fs__main-content');\n    var anyContent = employeeView && employeeView.querySelector('.am-fs__init-item__content.am-item-any');\n    var anyEmployee = anyContent && anyContent.closest('.am-fs__init-item');\n    if (back && anyEmployee && !anyEmployee.classList.contains('am--selected') && !back.dataset.dnbEmployeeBack) {\n      event.preventDefault();\n      event.stopImmediatePropagation();\n      stop();\n      anyEmployee.click();\n      back.dataset.dnbEmployeeBack = '1';\n      setTimeout(function () {\n        if (back.isConnected) back.click();\n        delete back.dataset.dnbEmployeeBack;\n      }, 0);\n      return;\n    }\n    stop();\n    attempts = 0;\n    emptyPasses = 0;\n    sawDate = false;\n    deadline = Date.now() + 6000;\n    var current = dateView();\n    if (current) clearSelection(current);\n    timer = setTimeout(clearOnReturn, 300);\n  }, true);\n  root.addEventListener('pointerdown', function (event) {\n    if (event.isTrusted && !event.target.closest('button.am-heading-prev')) stop();\n  }, true);\n})();\n<\/script>\n<style>\n\/* Only completed steps before the current step may display a check. *\/\n#dnb-reserve-booking-start .am-fs-sb__step:has(.am-fs-sb__step-checker-selected) .am-icon-check,\n#dnb-reserve-booking-start .am-fs-sb__step:has(.am-fs-sb__step-checker-selected) ~ .am-fs-sb__step .am-icon-check,\n#dnb-reserve-booking-start .am-fs-sb__step:has(> .am-fs-sb__step-selection__wrapper:empty) .am-icon-check {\n  visibility: hidden;\n}\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>DNB PHYSIO \u00b7 BOOK AN APPOINTMENT Make time for your movement. Book a 45-minute individual physiotherapy appointment or an online group session. D\u00f3ri and Bogi offer care in English, German and Hungarian. A little help before you book Not sure what to choose? Ask us \u2197 Which appointment is right for me? Choose In-Person Physiotherapy [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_seopress_titles_title":"Book a Physiotherapy Appointment | DnB Physio","_seopress_titles_desc":"Book online physiotherapy, in-person care in Bad Hofgastein or Kufstein, or an online group session. Choose D\u00f3ri or Bogi and find your appointment.","_seopress_robots_index":"","_seopress_robots_follow":"","_seopress_robots_imageindex":"","_seopress_robots_snippet":"","_seopress_robots_primary_cat":"","_seopress_robots_breadcrumbs":"","_seopress_robots_freeze_modified_date":"","_seopress_robots_custom_modified_date":"","_seopress_robots_canonical":"","_seopress_social_fb_title":"","_seopress_social_fb_desc":"","_seopress_social_fb_img":"","_seopress_social_fb_img_attachment_id":0,"_seopress_social_fb_img_width":0,"_seopress_social_fb_img_height":0,"_seopress_social_twitter_title":"","_seopress_social_twitter_desc":"","_seopress_social_twitter_img":"","_seopress_social_twitter_img_attachment_id":0,"_seopress_social_twitter_img_width":0,"_seopress_social_twitter_img_height":0,"_seopress_redirections_value":"","_seopress_redirections_enabled":"","_seopress_redirections_enabled_regex":"","_seopress_redirections_logged_status":"","_seopress_redirections_param":"","_seopress_redirections_type":0,"_seopress_analysis_target_kw":"","_seopress_news_disabled":"","_seopress_video_disabled":"","_seopress_video":[],"_seopress_pro_schemas_manual":[],"_seopress_pro_rich_snippets_disable_all":"","_seopress_pro_rich_snippets_disable":[],"_seopress_pro_schemas":[],"footnotes":""},"class_list":["post-428","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/dlabtest.hu\/hu\/wp-json\/wp\/v2\/pages\/428","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dlabtest.hu\/hu\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/dlabtest.hu\/hu\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/dlabtest.hu\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dlabtest.hu\/hu\/wp-json\/wp\/v2\/comments?post=428"}],"version-history":[{"count":167,"href":"https:\/\/dlabtest.hu\/hu\/wp-json\/wp\/v2\/pages\/428\/revisions"}],"predecessor-version":[{"id":1118,"href":"https:\/\/dlabtest.hu\/hu\/wp-json\/wp\/v2\/pages\/428\/revisions\/1118"}],"wp:attachment":[{"href":"https:\/\/dlabtest.hu\/hu\/wp-json\/wp\/v2\/media?parent=428"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}