/* Shared rules from the live homepage readability-polish.css. */
@media (max-width: 760px) {
  body[data-copy-version] .site-header .top-tier { flex-wrap: nowrap; }
  body[data-copy-version] .site-header .top-tier .brand { width: clamp(128px, 44vw, 175px); min-width: 0px; flex-shrink: 1; }
  body[data-copy-version] .site-header .top-tier .brand img { width: 100%; height: auto; }
  body[data-copy-version] .site-header .mobile-menu { flex-shrink: 0; min-height: 44px; }
  body[data-copy-version] #menu-panel .route-list.two-columns,
body[data-copy-version] #site-footer.selected-footer .nav-grid { grid-template-columns: minmax(0px, 1fr) !important; }
  body[data-copy-version] #menu-panel { max-height: calc(100dvh - var(--header-height,88px)); overflow-y: auto; overscroll-behavior: contain; }
  body[data-copy-version] #menu-panel .route-list a { min-height: 48px; }
  body[data-copy-version] #site-footer.selected-footer .utility-row,
body[data-copy-version] #site-footer.selected-footer .signature-row { flex-direction: column; align-items: flex-start; }
  body[data-copy-version] #site-footer.selected-footer .legal { align-items: flex-start; }
  body[data-copy-version] #site-footer.selected-footer .legal-links { justify-content: flex-start; }
  body[data-copy-version] #site-footer.selected-footer .email { white-space: normal; overflow-wrap: anywhere; max-width: 100%; }
  body[data-copy-version] #site-footer.selected-footer .wordmark { font-size: clamp(52px, 16.6vw, 100px); white-space: normal; }
}
.homepage-whatsapp { position: fixed; right: max(16px,env(safe-area-inset-right)); bottom: calc(82px + env(safe-area-inset-bottom)); z-index: 90; display: grid; place-items: center; width: 48px; height: 48px; background: rgb(8, 125, 79); border: 1px solid rgb(255, 255, 255); border-radius: 50%; box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 14px; }
.homepage-whatsapp:focus-visible { outline: rgb(79, 163, 255) solid 3px; outline-offset: 3px; }
body.tfs-assistant-open .homepage-whatsapp,
body.tfs-analytics-consent-open .homepage-whatsapp { visibility: hidden; }
#site-footer .homepage-newsletter { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 24px; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, 0.267); margin-top: 24px; }
#site-footer .homepage-newsletter p { margin: 0px; color: rgb(255, 255, 255); }
@media (max-width: 760px) {
  .homepage-whatsapp { bottom: calc(12px + env(safe-area-inset-bottom)); }
  html body[data-copy-version] #tfs-assistant-root vapi-widget[data-tfs-assistant] { --tfs-assistant-bottom: calc(12px + env(safe-area-inset-bottom)); }
  body[data-copy-version]:not(.tfs-analytics-consent-open) [data-vapi-launcher].tfs-assistant-deferred-launcher { bottom: calc(12px + env(safe-area-inset-bottom)) !important; }
}
@media (max-width: 760px) {
  [data-vapi-launcher].tfs-assistant-deferred-launcher { min-width: 0px !important; min-height: 44px !important; height: 44px !important; padding: 0px 11px !important; font-size: 13px !important; gap: 6px !important; }
}
body[data-copy-version] #tfs-assistant-root .tfs-assistant-launcher { min-width: 0px !important; width: auto !important; height: 52px !important; min-height: 52px !important; padding: 0px 16px !important; gap: 10px !important; font: italic 800 17px / 1 "Barlow Condensed", Impact, sans-serif !important; border-width: 2px 1px 1px !important; border-style: solid !important; border-color: rgb(0, 217, 203) rgb(255, 255, 255) rgb(255, 255, 255) !important; border-image: none !important; background: rgb(10, 10, 10) !important; color: rgb(255, 255, 255) !important; box-shadow: rgba(0, 0, 0, 0.133) 0px 4px 16px !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-launcher::before { content: "" !important; display: block !important; width: 22px !important; height: 22px !important; flex: 0 0 22px !important; background: linear-gradient(90deg, rgb(0, 217, 203), rgb(79, 163, 255), rgb(139, 92, 246)) !important; mask: url("/assets/studio-assistant-mark.svg") center center / contain no-repeat !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-launcher::after { font: inherit !important; letter-spacing: 0.03em !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-launcher:hover { color: rgb(100, 231, 255) !important; border-color: rgb(100, 231, 255) !important; }
body[data-copy-version] .homepage-whatsapp { width: auto; height: 52px; min-width: 52px; padding: 0px 14px; display: flex; gap: 9px; bottom: 18px; right: 18px; border: 1px solid white; border-radius: 0px; background: rgb(8, 125, 79); color: white; box-shadow: rgba(0, 0, 0, 0.133) 0px 4px 16px; text-decoration: none; }
body[data-copy-version] .homepage-whatsapp::after { content: "WhatsApp"; font: 600 14px / 1 "DM Sans", Arial, sans-serif; }
body[data-copy-version] .homepage-whatsapp img { width: 24px; height: 24px; max-width: none; }
body[data-copy-version] .homepage-whatsapp:hover { background: rgb(6, 98, 62); }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-panel { border-top: 3px solid rgb(0, 217, 203) !important; }
@media (max-width: 760px) {
  html body[data-copy-version] #tfs-assistant-root vapi-widget[data-tfs-assistant] { --tfs-assistant-bottom: calc(12px + env(safe-area-inset-bottom)); --tfs-assistant-gap: 12px; }
  body[data-copy-version] #tfs-assistant-root .tfs-assistant-positioner { max-width: calc(-24px + 100vw) !important; }
  body[data-copy-version] #tfs-assistant-root .tfs-assistant-launcher { height: 46px !important; min-height: 46px !important; padding: 0px 12px !important; gap: 8px !important; font-size: 15px !important; }
  body[data-copy-version] #tfs-assistant-root .tfs-assistant-launcher::before { width: 20px !important; height: 20px !important; flex-basis: 20px !important; }
  body[data-copy-version] .homepage-whatsapp { right: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); height: 46px; min-width: 46px; padding: 0px 11px; gap: 7px; }
  body[data-copy-version] .homepage-whatsapp::after { font-size: 12px; }
  body[data-copy-version] #tfs-assistant-root .tfs-assistant-panel { width: calc(-24px + 100vw) !important; max-width: calc(-24px + 100vw) !important; max-height: calc(100dvh - 30px - env(safe-area-inset-bottom)) !important; }
  body[data-copy-version] #site-footer { padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
}
@media (max-width: 350px) {
  body[data-copy-version] .homepage-whatsapp::after { display: none; }
}
@media (max-width: 760px) {
  body[data-copy-version].tfs-assistant-open #tfs-assistant-root .tfs-assistant-positioner { width: calc(100% - 24px) !important; max-width: calc(100% - 24px) !important; }
  body[data-copy-version] #tfs-assistant-root .tfs-assistant-panel { width: 100% !important; max-width: 100% !important; }
  body[data-copy-version] #tfs-assistant-root .tfs-assistant-whatsapp { display: inline-block !important; }
}
body[data-copy-version] .homepage-whatsapp { background: rgb(57, 255, 136); border: 1px solid rgb(10, 10, 10); color: rgb(7, 28, 16); box-shadow: rgb(10, 10, 10) 3px 3px 0px; height: 48px; min-width: 48px; }
body[data-copy-version] .homepage-whatsapp img { filter: brightness(0); width: 25px; height: 25px; }
body[data-copy-version] .homepage-whatsapp::after { display: none; }
body[data-copy-version] .homepage-whatsapp:hover { background: rgb(116, 255, 168); box-shadow: rgb(10, 10, 10) 1px 1px 0px; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-panel { height: 510px !important; border-width: 2px 1px 1px !important; border-style: solid !important; border-color: rgb(0, 217, 203) rgb(52, 52, 52) rgb(52, 52, 52) !important; border-image: none !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-header { padding: 12px 16px !important; border-bottom-width: 1px !important; }
body[data-copy-version] #tfs-assistant-root [data-tfs-assistant-title] { font: 600 16px / 1.2 "DM Sans", Arial, sans-serif !important; letter-spacing: 0px !important; }
body[data-copy-version] #tfs-assistant-root [data-tfs-action="end"] { display: none !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-option { grid-template-columns: minmax(0px, 1fr) !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-prompt { font: 600 24px / 1.2 "DM Sans", Arial, sans-serif !important; text-transform: none !important; letter-spacing: -0.025em !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-empty > p { font-size: 14px !important; line-height: 1.6 !important; margin-bottom: 18px !important; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area { padding: 20px 18px !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-input-bar { padding: 12px !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-input-bar input { font-size: 16px !important; outline-offset: 0px !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-input-bar input:focus-visible { outline: rgb(0, 170, 182) solid 1px !important; border-color: rgb(0, 170, 182) !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-privacy { font-size: 10px !important; line-height: 1.5 !important; }
@media (max-width: 760px) {
  body[data-copy-version] .homepage-whatsapp { height: 46px; min-width: 46px; width: 46px; padding: 0px; justify-content: center; }
}
body[data-copy-version] .homepage-whatsapp { box-shadow: rgb(10, 10, 10) 1px 1px 0px; border-width: 1px; }
body[data-copy-version] #tfs-assistant-root [data-tfs-assistant-title] { font-size: 0px !important; line-height: 1 !important; }
body[data-copy-version] #tfs-assistant-root [data-tfs-assistant-title]::before { content: ""; display: block; width: 145px; height: 47px; background: url("/workflows/assets/deps/03a21776734c-logo-white-9c1e1cfb3e28.webp") left center / contain no-repeat; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-prompt { font: italic 800 30px / 1.05 "Barlow Condensed", Impact, sans-serif !important; text-transform: uppercase !important; letter-spacing: 0px !important; color: rgb(10, 10, 10) !important; -webkit-text-fill-color: rgb(10, 10, 10) !important; background: none !important; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area { color: rgb(10, 10, 10) !important; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area p,
body[data-copy-version] #tfs-assistant-root .tfs-assistant-option a,
body[data-copy-version] #tfs-assistant-root .tfs-assistant-option button { color: rgb(10, 10, 10) !important; -webkit-text-fill-color: rgb(10, 10, 10) !important; background-image: none !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-input-bar button { background: rgb(10, 10, 10) !important; color: rgb(255, 255, 255) !important; border: 1px solid rgb(10, 10, 10) !important; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area > .flex > div { background: rgb(10, 10, 10) !important; color: rgb(255, 255, 255) !important; -webkit-text-fill-color: rgb(255, 255, 255) !important; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area > .flex > div * { color: rgb(255, 255, 255) !important; -webkit-text-fill-color: rgb(255, 255, 255) !important; background-image: none !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-input-bar input { caret-color: rgb(0, 0, 0); background: rgb(255, 255, 255) !important; color: rgb(0, 0, 0) !important; -webkit-text-fill-color: rgb(0, 0, 0) !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-input-bar input::placeholder { opacity: 1; color: rgb(84, 84, 84) !important; -webkit-text-fill-color: rgb(84, 84, 84) !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-header,
body[data-copy-version] #tfs-assistant-root [data-tfs-assistant-status] { background: rgb(10, 10, 10) !important; color: rgb(255, 255, 255) !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-prompt { font: italic 800 30px / 1.05 Barlow, "Arial Narrow", sans-serif !important; letter-spacing: normal !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-direct-reply { margin-bottom: 10px; padding: 10px 12px; background: rgb(10, 10, 10); color: rgb(255, 255, 255); font: 14px / 1.4 Inter, sans-serif; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-direct-reply p { margin: 0px; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-direct-reply a { display: inline-flex; align-items: center; min-height: 44px; color: rgb(255, 255, 255); font-weight: 700; text-decoration: underline; text-underline-offset: 0.18em; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area > .flex.justify-end > div { border: 1px solid rgb(212, 206, 202); background: rgb(255, 255, 255) !important; color: rgb(0, 0, 0) !important; -webkit-text-fill-color: rgb(0, 0, 0) !important; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area > .flex.justify-end > div * { color: rgb(0, 0, 0) !important; -webkit-text-fill-color: rgb(0, 0, 0) !important; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-direct-reply a { display: flex; min-height: 34px; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-direct-reply { max-height: min(32dvh, 230px); overflow-y: auto; overscroll-behavior: contain; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-prices { padding: 0px 0px 0px 1.2em; margin: 6px 0px 2px; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-prices li { margin: 2px 0px; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-direct-exchange + .tfs-assistant-direct-exchange { border-top: 1px solid rgb(85, 85, 85); margin-top: 12px; padding-top: 12px; }
body[data-copy-version] #tfs-assistant-root .tfs-assistant-direct-reply .tfs-assistant-customer-question { background: rgb(255, 255, 255); color: rgb(17, 17, 17); padding: 9px; margin-bottom: 9px; overflow-wrap: anywhere; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area.tfs-has-direct-messages > .tfs-assistant-empty { display: none !important; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area .tfs-assistant-direct-exchange { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0px; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area .tfs-assistant-direct-exchange + .tfs-assistant-direct-exchange { border: 0px; margin: 0px; padding: 0px; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area .tfs-assistant-customer-question { align-self: flex-end; max-width: 90%; border: 1px solid rgb(212, 206, 202); padding: 9px 12px; margin: 0px; overflow-wrap: anywhere; background: rgb(255, 255, 255) !important; color: rgb(10, 10, 10) !important; -webkit-text-fill-color: rgb(10, 10, 10) !important; }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area .tfs-assistant-direct-reply { box-sizing: border-box; width: fit-content; max-width: 100%; max-height: none; overflow: visible; padding: 10px 12px; margin: 0px; background: rgb(10, 10, 10); color: rgb(255, 255, 255); }
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area .tfs-assistant-direct-reply p,
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area .tfs-assistant-direct-reply a,
body[data-copy-version] #tfs-assistant-root .vapi-conversation-area .tfs-assistant-direct-reply li { overflow-wrap: anywhere; color: rgb(255, 255, 255) !important; -webkit-text-fill-color: rgb(255, 255, 255) !important; }
#header-system { background-color: color-mix(in srgb, var(--paper) 87%, transparent); }
.site-header .top-tier > .header-language { display: inline-flex; flex: 0 0 auto; box-sizing: border-box; padding: 2px; border: 1px solid rgb(199, 184, 174); background: rgb(233, 223, 216); }
.site-header .header-language a { display: grid; place-items: center; box-sizing: border-box; min-width: 36px; min-height: 42px; border: 1px solid transparent; color: rgb(85, 75, 69); font-size: 0.8125rem; font-weight: 700; line-height: 1; text-decoration: none; }
.site-header .header-language a[aria-current="page"] { border-color: rgb(189, 176, 166); background: rgb(255, 255, 255); color: rgb(18, 18, 18); box-shadow: rgba(36, 21, 10, 0.15) 0px 2px 2px; }
.site-header .header-language a:hover { color: rgb(18, 18, 18); text-decoration: underline; }
.site-header .header-language a:focus-visible { outline: rgb(18, 18, 18) solid 2px; outline-offset: -3px; }
@media (max-width: 1024px) {
  #header-system .site-header.header-two-tier .top-tier { display: grid; grid-template-columns: 1fr auto auto 1fr; place-items: center; gap: 4px 8px; }
  #header-system .header-two-tier .top-tier > .brand { grid-column: 1 / -1; width: clamp(192px, 55vw, 246px); max-width: 100%; min-width: 0px; margin: 0px; }
  #header-system .header-two-tier .top-tier > .brand img { width: 100%; max-width: 100%; height: auto; }
  #header-system .header-two-tier .top-tier > .header-language { grid-column: 2; margin: 0px; }
  #header-system .header-two-tier .top-tier > .mobile-menu { display: inline-flex; grid-column: 3; margin: 0px; min-height: 44px; justify-content: center; min-width: 44px; padding: 0px; }
  #header-system .header-two-tier .mobile-menu .menu-symbol { width: 22px; gap: 4px; }
  #header-system .header-two-tier .mobile-menu .menu-symbol i { width: 100%; height: 2px; }
  #header-system .header-two-tier .top-tier > .assessment-link,
#header-system .header-two-tier .bottom-tier { display: none; }
}
@media (max-width: 767px) {
  #header-system .site-header.header-two-tier .top-tier { grid-template-columns: minmax(0px, 1fr) auto minmax(0px, 1fr); }
  #header-system .header-two-tier .top-tier > .header-language { grid-area: 2 / 3; justify-self: end; padding: 1px; }
  #header-system .header-two-tier .header-language a { min-width: 30px; min-height: 34px; font-size: 0.75rem; }
  #header-system .header-two-tier .top-tier > .mobile-menu { grid-area: 2 / 2; min-width: 54px; min-height: 48px; }
  #header-system .header-two-tier .mobile-menu .menu-symbol { width: 28px; gap: 5px; }
  #header-system .header-two-tier .mobile-menu .menu-symbol i { height: 3px; }
}

/* Keep the launcher mark visible before the provider initializes. */
body[data-workflow-refinements] #tfs-assistant-root .tfs-assistant-launcher::before {
  mask: url("/workflows/assets/deps/427ddf1a1122-studio-assistant-mark.svg") center / contain no-repeat !important;
}
body[data-workflow-refinements] #header-system .site-menu-panel {
  max-height: calc(100dvh - var(--header-height, 166px));
}

/* The static preview routes signup to the live footer. Match the source button. */
#site-footer.selected-footer .homepage-newsletter > a.tfs-library-subscribe-trigger {
  border: 2px solid #00e5cc;
  background: #101010;
  color: #fff;
  font: italic 800 17px / 1 "Barlow Condensed", Impact, sans-serif;
  text-decoration: none;
}
#site-footer.selected-footer .homepage-newsletter > a.tfs-library-subscribe-trigger:hover {
  background: #242424;
}

/* The homepage offers direct booking without a duplicate chat action. */
body[data-copy-version] #tfs-assistant-root .tfs-assistant-option button[data-tfs-question="book"] {
  display: none !important;
}
