{"id":24456,"date":"2026-07-13T06:08:58","date_gmt":"2026-07-13T05:08:58","guid":{"rendered":"https:\/\/www.dexdot.it\/?page_id=24456"},"modified":"2026-07-13T06:54:26","modified_gmt":"2026-07-13T05:54:26","slug":"chatbots-kundenservice-automatisieren-suedtirol","status":"publish","type":"page","link":"https:\/\/www.dexdot.it\/it\/chatbots-kundenservice-automatisieren-suedtirol\/","title":{"rendered":"Ihr Chatbot: Pers\u00f6nlich, effizient &#038; 24\/7 erreichbar | DEXDOT AI &#8211; S\u00fcdtirol"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"24456\" class=\"elementor elementor-24456\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1ba6c44 elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"1ba6c44\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-wide\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-9431e35\" data-id=\"9431e35\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-3c37c7b elementor-widget elementor-widget-html\" data-id=\"3c37c7b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<meta charset=\"UTF-8\">\r\n<section id=\"agora-tourism-landing\" class=\"agora-page\" aria-label=\"AGORA KI-Chatbot f\u00fcr  Tourismus in S\u00fcdtirol und \u00d6sterreich\">\r\n  <!-- SVG icon sprite: keine externen Bibliotheken notwendig -->\r\n  <svg class=\"ag-sprite\" aria-hidden=\"true\" focusable=\"false\">\r\n    <symbol id=\"ag-i-arrow\" viewBox=\"0 0 24 24\"><path d=\"M5 12h14M13 6l6 6-6 6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-check\" viewBox=\"0 0 24 24\"><path d=\"m5 12 4 4L19 6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-clock\" viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"9\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"M12 7v5l3 2\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-calendar\" viewBox=\"0 0 24 24\"><rect x=\"4\" y=\"5\" width=\"16\" height=\"16\" rx=\"3\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"M8 3v4M16 3v4M4 10h16M8 14h3M13 14h3M8 17h3\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-language\" viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"9\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"M3.5 9h17M3.5 15h17M12 3c2.2 2.5 3.2 5.5 3.2 9s-1 6.5-3.2 9c-2.2-2.5-3.2-5.5-3.2-9S9.8 5.5 12 3Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.7\"\/><\/symbol>\r\n    <symbol id=\"ag-i-bolt\" viewBox=\"0 0 24 24\"><path d=\"m13 2-8 12h7l-1 8 8-12h-7l1-8Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linejoin=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-plug\" viewBox=\"0 0 24 24\"><path d=\"M8 3v5M16 3v5M6 8h12v3a6 6 0 0 1-6 6v4M9 21h6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-shield\" viewBox=\"0 0 24 24\"><path d=\"M12 3 4.5 6v5.2c0 4.7 3.1 8.2 7.5 9.8 4.4-1.6 7.5-5.1 7.5-9.8V6L12 3Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"m8.5 12 2.2 2.2 4.8-5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-hotel\" viewBox=\"0 0 24 24\"><path d=\"M4 21V5h11v16M15 10h5v11M8 9h3M8 13h3M8 17h3M18 14v3\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-mountain\" viewBox=\"0 0 24 24\"><path d=\"m2 20 7-12 3 5 2-3 8 10H2Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linejoin=\"round\"\/><path d=\"m7.2 11 2.2 2 1.4-1.5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-ski\" viewBox=\"0 0 24 24\"><path d=\"m5 4 14 16M10 4l9 16M3 20h18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-map\" viewBox=\"0 0 24 24\"><path d=\"m3 6 6-3 6 3 6-3v15l-6 3-6-3-6 3V6Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linejoin=\"round\"\/><path d=\"M9 3v15M15 6v15\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.7\"\/><\/symbol>\r\n    <symbol id=\"ag-i-message\" viewBox=\"0 0 24 24\"><path d=\"M5 5h14v11H9l-4 4V5Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linejoin=\"round\"\/><path d=\"M8 9h8M8 12h5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-chart\" viewBox=\"0 0 24 24\"><path d=\"M4 20V10M10 20V4M16 20v-7M22 20H2\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-headset\" viewBox=\"0 0 24 24\"><path d=\"M4 14v-2a8 8 0 0 1 16 0v2M4 14h3v6H5a2 2 0 0 1-2-2v-2a2 2 0 0 1 1-2Zm16 0h-3v6h2a2 2 0 0 0 2-2v-2a2 2 0 0 0-1-2ZM17 20c0 1-1.5 2-3 2h-2\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-database\" viewBox=\"0 0 24 24\"><ellipse cx=\"12\" cy=\"5\" rx=\"8\" ry=\"3\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"M4 5v6c0 1.7 3.6 3 8 3s8-1.3 8-3V5M4 11v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><\/symbol>\r\n    <symbol id=\"ag-i-mail\" viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"5\" width=\"18\" height=\"14\" rx=\"2\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"m4 7 8 6 8-6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linejoin=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-phone\" viewBox=\"0 0 24 24\"><path d=\"M7 3h3l1.5 5-2 1.5a15 15 0 0 0 5 5L16 12.5l5 1.5v3c0 2.2-1.8 4-4 4C9.3 21 3 14.7 3 7a4 4 0 0 1 4-4Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-web\" viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"9\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"M3 12h18M12 3c2.2 2.4 3.3 5.4 3.3 9S14.2 18.6 12 21c-2.2-2.4-3.3-5.4-3.3-9S9.8 5.4 12 3Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.7\"\/><\/symbol>\r\n    <symbol id=\"ag-i-whatsapp\" viewBox=\"0 0 24 24\"><path d=\"M20.5 11.5a8.5 8.5 0 0 1-12.6 7.4L3 20.5l1.6-4.7A8.5 8.5 0 1 1 20.5 11.5Z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"M8.2 7.7c.3-.4.7-.4 1-.1l1.2 1.6c.2.3.2.6 0 .9l-.7.8c.8 1.5 1.8 2.5 3.4 3.3l.8-.8c.3-.2.6-.2.9 0l1.6 1.1c.4.3.4.7.2 1-.5.8-1.4 1.2-2.3 1-3.9-.8-6.9-3.7-7.7-7.5-.2-.7.2-1.1.6-1.3Z\" fill=\"currentColor\"\/><\/symbol>\r\n    <symbol id=\"ag-i-star\" viewBox=\"0 0 24 24\"><path d=\"m12 2.5 2.9 5.9 6.5.9-4.7 4.6 1.1 6.5-5.8-3-5.8 3 1.1-6.5-4.7-4.6 6.5-.9L12 2.5Z\" fill=\"currentColor\"\/><\/symbol>\r\n    <symbol id=\"ag-i-play\" viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"9\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"m10 8 6 4-6 4V8Z\" fill=\"currentColor\"\/><\/symbol>\r\n    <symbol id=\"ag-i-pause\" viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"9\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\/><path d=\"M9.5 8v8M14.5 8v8\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\/><\/symbol>\r\n    <symbol id=\"ag-i-chevron\" viewBox=\"0 0 24 24\"><path d=\"m7 9 5 5 5-5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/symbol>\r\n  <\/svg>\r\n\r\n  <!-- HERO -->\r\n  <div class=\"ag-hero\">\r\n    <div class=\"ag-hero__grid\" aria-hidden=\"true\"><\/div>\r\n    <div class=\"ag-orb ag-orb--one\" aria-hidden=\"true\"><\/div>\r\n    <div class=\"ag-orb ag-orb--two\" aria-hidden=\"true\"><\/div>\r\n    <div class=\"ag-container ag-hero__inner\">\r\n      <div class=\"ag-hero__copy\" data-reveal>\r\n        <div class=\"ag-eyebrow\"><span class=\"ag-eyebrow__dot\"><\/span> Chatbot aus S\u00fcdtirol \u2013 f\u00fcr \u00d6sterreich, S\u00fcdtirol und den Alpenraum<\/div>\r\n        <h1>Der KI-Chatbot f\u00fcr  <span>Tourismus in S\u00fcdtirol &amp; \u00d6sterreich<\/span><\/h1>\r\n        <p class=\"ag-lead\">AGORA ist der anpassbare Tourismus-Chatbot f\u00fcr Hotels, Skigebiete, Skischulen und Destinationen in S\u00fcdtirol, \u00d6sterreich und dem gesamten Alpenraum: sofortige Antworten, aktuelle Daten, tiefe Schnittstellen und Workflows, die sich an Ihren Betrieb anpassen \u2013 nicht umgekehrt.<\/p>\r\n\r\n        <div class=\"ag-hero__actions\">\r\n          <a class=\"ag-btn ag-btn--primary\" href=\"https:\/\/www.dexdot.it\/contact\/\">Kostenlose Demo buchen <svg aria-hidden=\"true\"><use href=\"#ag-i-arrow\"><\/use><\/svg><\/a>\r\n          <a class=\"ag-btn ag-btn--ghost\" href=\"https:\/\/www.dexdot.it\/contact\/\"><svg aria-hidden=\"true\"><use href=\"#ag-i-calendar\"><\/use><\/svg> Kostenlose Beratung buchen<\/a>\r\n        <\/div>\r\n\r\n        <div class=\"ag-proofline\" aria-label=\"AGORA Vorteile\">\r\n          <span><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg> 30 Tage kostenlos testen<\/span>\r\n          <span><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg> DSGVO-konform<\/span>\r\n          <span><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg> Direkter Support<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"ag-hero-highlights\" aria-label=\"Warum AGORA besonders stark ist\">\r\n          <article>\r\n            <strong>Ma\u00dfgeschneidert statt Standard-Bot<\/strong>\r\n            <span>Design, Tonalit\u00e4t, Regeln, Rollen, Eskalationen und Inhalte werden auf Ihren Betrieb zugeschnitten.<\/span>\r\n          <\/article>\r\n          <article>\r\n            <strong>Tief integrierbar<\/strong>\r\n            <span>Von Echtzeitdaten bis zu individuellen APIs: AGORA passt sich Ihrer Systemlandschaft an.<\/span>\r\n          <\/article>\r\n          <article>\r\n            <strong>F\u00fcr den Tourismus gebaut<\/strong>\r\n            <span>Hotels, Skigebiete, Skischulen und Destinationen profitieren von branchenspezifischen Funktionen.<\/span>\r\n          <\/article>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- 100% HTML\/CSS\/JS CHAT-DEMO -->\r\n      <div class=\"ag-demo-wrap\" id=\"agora-live-demo\" data-reveal>\r\n        <div class=\"ag-demo-glow\" aria-hidden=\"true\"><\/div>\r\n        <div class=\"ag-phone\" role=\"region\" aria-label=\"Animierte AGORA Chat-Demonstration\">\r\n          <span class=\"ag-phone__key ag-phone__key--one\" aria-hidden=\"true\"><\/span>\r\n          <span class=\"ag-phone__key ag-phone__key--two\" aria-hidden=\"true\"><\/span>\r\n          <span class=\"ag-phone__key ag-phone__key--three\" aria-hidden=\"true\"><\/span>\r\n          <div class=\"ag-phone__shine\" aria-hidden=\"true\"><\/div>\r\n          <div class=\"ag-phone__speaker\" aria-hidden=\"true\"><i><\/i><span><\/span><\/div>\r\n          <div class=\"ag-phone__screen\">\r\n            <div class=\"ag-phone__statusbar\" aria-hidden=\"true\"><b>10:04<\/b><div><span>5G<\/span><span>\ud83d\udcf6<\/span><span>50%<\/span><\/div><\/div>\r\n            <div class=\"ag-chat-head\">\r\n              <div class=\"ag-avatar\"><span>ag<\/span><i><\/i><\/div>\r\n              <div class=\"ag-chat-title\"><strong>AGORA<\/strong><small><span><\/span> online \u00b7 antwortet sofort<\/small><\/div>\r\n              <div class=\"ag-chat-actions\" aria-hidden=\"true\">\r\n                <svg><use href=\"#ag-i-phone\"><\/use><\/svg>\r\n                <span>\u22ee<\/span>\r\n              <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"ag-chat-body\" id=\"ag-chat-log\" aria-live=\"polite\" aria-label=\"Chatverlauf\">\r\n              <div class=\"ag-chat-date\">Heute<\/div>\r\n            <\/div>\r\n\r\n            <div class=\"ag-chat-quick\" aria-hidden=\"true\">\r\n              <span>Wetter<\/span><span>Events<\/span><span>Anreise<\/span><span>Verf\u00fcgbarkeit<\/span>\r\n            <\/div>\r\n\r\n            <div class=\"ag-chat-compose\">\r\n              <div class=\"ag-compose-box\">\r\n                <span class=\"ag-emoji\" aria-hidden=\"true\">\u263a<\/span>\r\n                <span class=\"ag-compose-text\" id=\"ag-compose-text\">Nachricht<\/span>\r\n                <span class=\"ag-paperclip\" aria-hidden=\"true\">\u2315<\/span>\r\n              <\/div>\r\n              <button type=\"button\" class=\"ag-send\" id=\"ag-chat-control\" aria-label=\"Animation pausieren\">\r\n                <svg class=\"ag-control-pause\" aria-hidden=\"true\"><use href=\"#ag-i-pause\"><\/use><\/svg>\r\n                <svg class=\"ag-control-play\" aria-hidden=\"true\"><use href=\"#ag-i-play\"><\/use><\/svg>\r\n              <\/button>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"ag-container ag-stats\" data-reveal>\r\n      <div class=\"ag-stat\"><strong data-count=\"150000\" data-suffix=\"+\">150.000+<\/strong><span>bereits bearbeitete Anfragen<\/span><\/div>\r\n      <div class=\"ag-stat\"><strong data-count=\"80\" data-suffix=\"+\">80+<\/strong><span>Sprachen &amp; Dialekte<\/span><\/div>\r\n      <div class=\"ag-stat\"><strong data-count=\"200\" data-suffix=\"\/Min.\">200\/Min.<\/strong><span>intern getestete Lastspitze<\/span><\/div>\r\n      <div class=\"ag-stat\"><strong data-count=\"60\" data-suffix=\"+\">60+<\/strong><span>Daten- &amp; Serviceverbindungen<\/span><\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- POSITIONIERUNG -->\r\n  <div class=\"ag-section ag-positioning\">\r\n    <div class=\"ag-container\">\r\n      <div class=\"ag-section-head ag-section-head--center\" data-reveal>\r\n        <span class=\"ag-kicker\">Nicht nur Chat. Echter digitaler G\u00e4steservice.<\/span>\r\n        <h2>AGORA nimmt Arbeit ab, weil die richtigen Daten automatisch zusammenlaufen.<\/h2>\r\n        <p>Viele Bots beantworten nur statische FAQs. AGORA verbindet Kommunikation, touristische Echtzeitdaten und individuelle Prozesse in einer zentralen L\u00f6sung.<\/p>\r\n      <\/div>\r\n\r\n      <div class=\"ag-value-grid\">\r\n        <article class=\"ag-value-card\" data-reveal>\r\n          <div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-clock\"><\/use><\/svg><\/div>\r\n          <h3>24\/7 sofort erreichbar<\/h3>\r\n          <p>Keine Warteschleife, keine unbeantwortete Nachtanfrage und weniger Druck in Hochsaison-Spitzen.<\/p>\r\n        <\/article>\r\n        <article class=\"ag-value-card\" data-reveal>\r\n          <div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-database\"><\/use><\/svg><\/div>\r\n          <h3>Aktuelle statt statische Antworten<\/h3>\r\n          <p>Wetter, Events, Schnee-, Pisten- und Liftstatus oder \u00d6ffnungszeiten werden automatisiert eingespielt.<\/p>\r\n        <\/article>\r\n        <article class=\"ag-value-card\" data-reveal>\r\n          <div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-plug\"><\/use><\/svg><\/div>\r\n          <h3>Tief integrierbar<\/h3>\r\n          <p>Standard-Schnittstellen, Hotelsoftware, Buchungsdaten oder individuelle APIs \u2013 passend zu Ihrer Systemlandschaft.<\/p>\r\n        <\/article>\r\n        <article class=\"ag-value-card\" data-reveal>\r\n          <div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-headset\"><\/use><\/svg><\/div>\r\n          <h3>Menschen bleiben im Mittelpunkt<\/h3>\r\n          <p>Routine wird automatisiert. Komplexe Anliegen k\u00f6nnen gezielt an die richtigen Mitarbeitenden \u00fcbergeben werden.<\/p>\r\n        <\/article>\r\n      <\/div>\r\n\r\n      <div class=\"ag-internal-chat\" data-reveal>\r\n        <div class=\"ag-internal-chat__badge\">Neu f\u00fcr AGORA Kunden<\/div>\r\n        <div class=\"ag-internal-chat__copy\">\r\n          <span class=\"ag-kicker\">AGORA Internal Chat<\/span>\r\n          <h3>Die Premium-KI-Erfahrung f\u00fcr Ihr Team direkt in AGORA.<\/h3>\r\n          <p>Ihre Mitarbeitenden k\u00f6nnen AGORA nicht nur als G\u00e4steservice-System nutzen, sondern auch wie einen leistungsstarken internen KI-Assistenten: Fragen stellen, Dokumente auswerten, Antworten vorbereiten, interne Informationen zusammenfassen und mit den freigegebenen Daten Ihres Betriebs arbeiten.<\/p>\r\n          <p>Statt f\u00fcr jede Person separate KI-Zug\u00e4nge aufzubauen, entsteht ein zentraler Arbeitsplatz mit leistungsf\u00e4higen OpenAI-Modellen, Ihren Assistenten, Wissensquellen und Analytics an einem Ort.<\/p>\r\n        <\/div>\r\n        <div class=\"ag-internal-chat__points\" aria-label=\"Vorteile des AGORA Internal Chat\">\r\n          <span><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg> ChatGPT-\u00e4hnliches Arbeiten in der gewohnten AGORA-Oberfl\u00e4che<\/span>\r\n          <span><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg> Interne Daten, Dokumente und Assistenten direkt nutzbar<\/span>\r\n          <span><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg> Kein separates Plus-Konto pro Mitarbeiter erforderlich<\/span>\r\n        <\/div>\r\n        <small>ChatGPT und ChatGPT Plus sind Marken von OpenAI. AGORA enth\u00e4lt kein weiterverkauftes ChatGPT-Plus-Abonnement, sondern eine von DEXDOT bereitgestellte Premium-KI-Erfahrung direkt in AGORA.<\/small>\r\n      <\/div>\r\n\r\n      <div class=\"ag-claim\" data-reveal>\r\n        <div class=\"ag-claim__mark\">\u201c<\/div>\r\n        <div>\r\n          <p>Unser Anspruch ist nicht, \u201enoch einen Chatbot\u201c anzubieten. Wir entwickeln AGORA zur umfassendsten, integrierbarsten und individuellsten Service-KI f\u00fcr den Tourismus im Alpenraum.<\/p>\r\n          <small>Nach Einsch\u00e4tzung von DEXDOT AI auf Basis des aktuellen Funktions-, Kanal- und Integrationsumfangs. Die konkrete Verf\u00fcgbarkeit h\u00e4ngt vom jeweiligen Projekt und den angebundenen Drittsystemen ab.<\/small>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"ag-local-seo\" data-reveal>\r\n        <div class=\"ag-local-seo__intro\">\r\n          <span class=\"ag-kicker\">Chatbot S\u00fcdtirol &amp; \u00d6sterreich<\/span>\r\n          <h2>Ein Tourismus-Chatbot f\u00fcr Betriebe, die t\u00e4glich viele G\u00e4stefragen beantworten.<\/h2>\r\n          <p>Wer nach einem Chatbot in S\u00fcdtirol, einem Chatbot in \u00d6sterreich oder einem spezialisierten Tourismus-Chatbot sucht, braucht mehr als eine generische KI. AGORA ist auf die Realit\u00e4t alpiner Destinationen ausgelegt: mehrsprachige G\u00e4ste, saisonale Lastspitzen, lokale Echtzeitdaten und viele Kontaktkan\u00e4le.<\/p>\r\n        <\/div>\r\n        <div class=\"ag-local-seo__grid\">\r\n          <article>\r\n            <div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-map\"><\/use><\/svg><\/div>\r\n            <h3>Chatbot S\u00fcdtirol<\/h3>\r\n            <p>F\u00fcr Hotels, Skischulen, Bergbahnen, Tourismusvereine und serviceintensive Betriebe in S\u00fcdtirol, die G\u00e4ste auf Deutsch, Italienisch, Englisch und vielen weiteren Sprachen zuverl\u00e4ssig betreuen m\u00f6chten.<\/p>\r\n          <\/article>\r\n          <article>\r\n            <div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-mountain\"><\/use><\/svg><\/div>\r\n            <h3>Chatbot \u00d6sterreich<\/h3>\r\n            <p>F\u00fcr \u00f6sterreichische Tourismusregionen, Hotels, Skigebiete und Destinationen, die Verf\u00fcgbarkeiten, Wetter, Events, Anreise, \u00d6ffnungszeiten und saisonale Informationen automatisch beantworten wollen.<\/p>\r\n          <\/article>\r\n          <article>\r\n            <div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-message\"><\/use><\/svg><\/div>\r\n            <h3>Tourismus-Chatbot f\u00fcr Website &amp; WhatsApp<\/h3>\r\n            <p>AGORA beantwortet wiederkehrende G\u00e4stefragen \u00fcber Website, WhatsApp, E-Mail, Telefon und weitere Kan\u00e4le aus einer zentralen Wissensbasis \u2013 passend f\u00fcr den Tourismus im gesamten Alpenraum.<\/p>\r\n          <\/article>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- ZIELGRUPPEN -->\r\n  <div class=\"ag-section ag-audiences\">\r\n    <div class=\"ag-container\">\r\n      <div class=\"ag-section-head\" data-reveal>\r\n        <span class=\"ag-kicker\">Gebaut f\u00fcr touristische Realit\u00e4t<\/span>\r\n        <h2>Eine Plattform. Vier besonders starke Einsatzfelder.<\/h2>\r\n        <p>AGORA wird in Inhalt, Verhalten, Design, Kan\u00e4len und Funktionen auf den jeweiligen Betrieb zugeschnitten.<\/p>\r\n      <\/div>\r\n\r\n      <div class=\"ag-audience-grid\">\r\n        <article class=\"ag-audience-card ag-audience-card--hotel\" data-reveal>\r\n          <div class=\"ag-audience-top\"><div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-hotel\"><\/use><\/svg><\/div><span>Hotels<\/span><\/div>\r\n          <h3>Mehr direkte Buchungschancen, weniger Routine.<\/h3>\r\n          <ul>\r\n            <li>Verf\u00fcgbarkeiten, Angebote und Late Check-in<\/li>\r\n            <li>Spa, Zusatzleistungen und regionale Tipps<\/li>\r\n            <li>Website, WhatsApp, E-Mail und Telefon<\/li>\r\n          <\/ul>\r\n          <div class=\"ag-card-result\">Der Gast erh\u00e4lt Antworten, bevor aus Interesse ein Absprung wird.<\/div>\r\n        <\/article>\r\n\r\n        <article class=\"ag-audience-card ag-audience-card--destination\" data-reveal>\r\n          <div class=\"ag-audience-top\"><div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-map\"><\/use><\/svg><\/div><span>Tourismusvereine &amp; Destinationen<\/span><\/div>\r\n          <h3>Eine verl\u00e4ssliche Informationsquelle f\u00fcr die ganze Region.<\/h3>\r\n          <ul>\r\n            <li>Events, Aktivit\u00e4ten, Mobilit\u00e4t und Orientierung<\/li>\r\n            <li>G\u00e4stelenkung und nachhaltige Alternativen<\/li>\r\n            <li>Regionale Inhalte automatisch an Mitgliedsbetriebe<\/li>\r\n          <\/ul>\r\n          <div class=\"ag-card-result\">Destination und Betriebe profitieren von derselben aktuellen Datenbasis.<\/div>\r\n        <\/article>\r\n\r\n        <article class=\"ag-audience-card ag-audience-card--ski\" data-reveal>\r\n          <div class=\"ag-audience-top\"><div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-mountain\"><\/use><\/svg><\/div><span>Skigebiete &amp; Aufstiegsanlagen<\/span><\/div>\r\n          <h3>Live-Informationen, wenn an Kassa und Lift am meisten los ist.<\/h3>\r\n          <ul>\r\n            <li>Pisten-, Lift-, Schnee- und Rodelstatus<\/li>\r\n            <li>Wetter-, Lawinen- und Unwetterinformationen<\/li>\r\n            <li>Anreise, Parken, Tickets und \u00d6ffnungszeiten<\/li>\r\n          <\/ul>\r\n          <div class=\"ag-card-result\">Weniger wiederkehrende Fragen \u2013 mehr Zeit f\u00fcr Betrieb und G\u00e4ste.<\/div>\r\n        <\/article>\r\n\r\n        <article class=\"ag-audience-card ag-audience-card--school\" data-reveal>\r\n          <div class=\"ag-audience-top\"><div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-ski\"><\/use><\/svg><\/div><span>Skischulen &amp; Verleihe<\/span><\/div>\r\n          <h3>Kursfragen automatisch beantworten \u2013 mehrsprachig und pr\u00e4zise.<\/h3>\r\n          <ul>\r\n            <li>Kurse, Preise, Treffpunkte und Voraussetzungen<\/li>\r\n            <li>Verleih, Verf\u00fcgbarkeit und Ausr\u00fcstung<\/li>\r\n            <li>Spitzenlasten zu Ferienbeginn auffangen<\/li>\r\n          <\/ul>\r\n          <div class=\"ag-card-result\">Ideal f\u00fcr internationale G\u00e4ste und stark saisonale Anfragevolumen.<\/div>\r\n        <\/article>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- INTEGRATIONEN -->\r\n  <div class=\"ag-section ag-integrations\" id=\"agora-integrationen\">\r\n    <div class=\"ag-container\">\r\n      <div class=\"ag-integrations__intro\" data-reveal>\r\n        <span class=\"ag-kicker\">Daten, die sich selbst aktuell halten<\/span>\r\n        <h2>Von Schneebericht bis Hotelverf\u00fcgbarkeit: AGORA verbindet, was G\u00e4ste wissen wollen.<\/h2>\r\n        <p>Die Plattform nutzt automatisierte Datenverbindungen statt manueller Doppelpflege. Zus\u00e4tzliche Schnittstellen k\u00f6nnen aktiviert oder projektspezifisch entwickelt werden.<\/p>\r\n        <div class=\"ag-mini-metrics\">\r\n          <span><b>60+<\/b> Schnittstellen<\/span>\r\n          <span><b>API<\/b> individuelle Anbindungen<\/span>\r\n          <span><b>1<\/b> zentrale Wissensbasis<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"ag-integration-panel\" data-reveal>\r\n        <div class=\"ag-integration-tabs\" role=\"tablist\" aria-label=\"Integrationskategorien\">\r\n          <button type=\"button\" role=\"tab\" aria-selected=\"true\" data-int-tab=\"live\">Basisdaten<\/button>\r\n          <button type=\"button\" role=\"tab\" aria-selected=\"false\" data-int-tab=\"mobility\">Mobilit\u00e4t<\/button>\r\n          <button type=\"button\" role=\"tab\" aria-selected=\"false\" data-int-tab=\"experience\">Freizeit &amp; Orte<\/button>\r\n          <button type=\"button\" role=\"tab\" aria-selected=\"false\" data-int-tab=\"hotel\">Unterk\u00fcnfte<\/button>\r\n          <button type=\"button\" role=\"tab\" aria-selected=\"false\" data-int-tab=\"safety\">Live-Daten &amp; Betrieb<\/button>\r\n        <\/div>\r\n\r\n        <div class=\"ag-integration-content\" data-int-panel=\"live\">\r\n          <div class=\"ag-chip ag-chip--active\"><i><\/i> Wetterinformationen<\/div>\r\n          <div class=\"ag-chip ag-chip--active\"><i><\/i> \u00d6ffnungszeiten Skiverleih<\/div>\r\n          <div class=\"ag-chip ag-chip--active\"><i><\/i> Events<\/div>\r\n          <div class=\"ag-chip ag-chip--active\"><i><\/i> Schneeberichte<\/div>\r\n          <div class=\"ag-chip ag-chip--active\"><i><\/i> Rodelbahnen &amp; Status<\/div>\r\n          <div class=\"ag-chip ag-chip--active\"><i><\/i> Pisten- &amp; Liftinformationen<\/div>\r\n        <\/div>\r\n\r\n        <div class=\"ag-integration-content\" data-int-panel=\"mobility\" hidden>\r\n          <div class=\"ag-chip\"><i><\/i> Busverbindungen weltweit<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Zugverbindungen weltweit<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Autorouten &amp; Anreise<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Busstationen<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Zugstationen<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Parkpl\u00e4tze &amp; Position<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Taxis &amp; Kontakte<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> E-Ladestationen<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Flugstatus<\/div>\r\n        <\/div>\r\n\r\n        <div class=\"ag-integration-content\" data-int-panel=\"experience\" hidden>\r\n          <div class=\"ag-chip\"><i><\/i> Restaurants &amp; Bewertungen<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Google Maps Places<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Almh\u00fctten<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Attraktionen<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Clubs, Bars &amp; Nachtleben<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Aktivit\u00e4ten<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Fitnessstudios<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> outdooractive<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Fahrradverleihe<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Ski- &amp; Snowboardverleih<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Trinkbrunnen &amp; WC<\/div>\r\n        <\/div>\r\n\r\n        <div class=\"ag-integration-content\" data-int-panel=\"hotel\" hidden>\r\n          <div class=\"ag-chip\"><i><\/i> ASA Hotelsoftware<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Booking.com Verf\u00fcgbarkeiten<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Airbnb Verf\u00fcgbarkeiten<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Lokale Hotels<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Campingpl\u00e4tze<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Buchungsanfragen<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Spa &amp; Zusatzleistungen<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Outlook-Antwortvorschl\u00e4ge<\/div>\r\n        <\/div>\r\n\r\n        <div class=\"ag-integration-content\" data-int-panel=\"safety\" hidden>\r\n          <div class=\"ag-chip\"><i><\/i> Meteorologische Warnungen<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Lawinenwarnungen<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Webcams<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Echtzeit-Wetter<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Live-Pistenstatus<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Webimport nach Zeitplan<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Monitoring &amp; Logs<\/div>\r\n          <div class=\"ag-chip\"><i><\/i> Fallback an Mitarbeitende<\/div>\r\n        <\/div>\r\n\r\n\r\n        <div class=\"ag-integration-foot\">\r\n          <svg aria-hidden=\"true\"><use href=\"#ag-i-plug\"><\/use><\/svg>\r\n          <p><strong>Eine Verbindung fehlt?<\/strong> Was technisch und rechtlich m\u00f6glich ist, kann projektbezogen angebunden werden \u2013 zum Beispiel SKIDATA oder weitere branchenspezifische Systeme.<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- DESTINATION NETWORK -->\r\n  <div class=\"ag-section ag-network\">\r\n    <div class=\"ag-container ag-network__grid\">\r\n      <div class=\"ag-network__visual\" data-reveal aria-label=\"Visualisierung der Datenvernetzung zwischen Destination, AGORA und Betrieben\">\r\n        <div class=\"ag-network-glow\" aria-hidden=\"true\"><\/div>\r\n        <svg class=\"ag-network-svg\" viewBox=\"0 0 760 540\" aria-hidden=\"true\" focusable=\"false\">\r\n          <defs>\r\n            <linearGradient id=\"ag-line-gradient\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"1\">\r\n              <stop offset=\"0%\" stop-color=\"#74dcff\" stop-opacity=\".95\"\/>\r\n              <stop offset=\"100%\" stop-color=\"#6a5cff\" stop-opacity=\".7\"\/>\r\n            <\/linearGradient>\r\n            <filter id=\"ag-line-glow\"><feGaussianBlur stdDeviation=\"4\" result=\"blur\"\/><feMerge><feMergeNode in=\"blur\"\/><feMergeNode in=\"SourceGraphic\"\/><\/feMerge><\/filter>\r\n          <\/defs>\r\n          <path data-network-line=\"destination\" d=\"\" stroke=\"url(#ag-line-gradient)\" stroke-width=\"4\" fill=\"none\" stroke-linecap=\"round\" filter=\"url(#ag-line-glow)\"\/>\r\n          <path data-network-line=\"school\" d=\"\" stroke=\"url(#ag-line-gradient)\" stroke-width=\"4\" fill=\"none\" stroke-linecap=\"round\" filter=\"url(#ag-line-glow)\"\/>\r\n          <path data-network-line=\"hotel\" d=\"\" stroke=\"url(#ag-line-gradient)\" stroke-width=\"4\" fill=\"none\" stroke-linecap=\"round\" filter=\"url(#ag-line-glow)\"\/>\r\n          <path data-network-line=\"ski\" d=\"\" stroke=\"url(#ag-line-gradient)\" stroke-width=\"4\" fill=\"none\" stroke-linecap=\"round\" filter=\"url(#ag-line-glow)\"\/>\r\n        <\/svg>\r\n        <div class=\"ag-node ag-node--destination\"><svg aria-hidden=\"true\"><use href=\"#ag-i-map\"><\/use><\/svg><span>Destination<\/span><small>Events \u00b7 Mobilit\u00e4t \u00b7 Erlebnisse<\/small><\/div>\r\n        <div class=\"ag-node ag-node--agora\"><b>agora<\/b><span>eine aktuelle Datenbasis<\/span><\/div>\r\n        <div class=\"ag-node ag-node--hotel\"><svg aria-hidden=\"true\"><use href=\"#ag-i-hotel\"><\/use><\/svg><span>Hotels<\/span><\/div>\r\n        <div class=\"ag-node ag-node--ski\"><svg aria-hidden=\"true\"><use href=\"#ag-i-mountain\"><\/use><\/svg><span>Skigebiete<\/span><\/div>\r\n        <div class=\"ag-node ag-node--school\"><svg aria-hidden=\"true\"><use href=\"#ag-i-ski\"><\/use><\/svg><span>Skischulen<\/span><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"ag-network__copy\" data-reveal>\r\n        <span class=\"ag-kicker\">Der Netzwerk-Effekt<\/span>\r\n        <h2>Eine Destination pflegt \u2013 viele Betriebe profitieren.<\/h2>\r\n        <p>Tourismusvereine k\u00f6nnen regionale Informationen zentral bereitstellen. Angebundene Mitgliedsbetriebe erhalten passende Inhalte automatisch in ihren eigenen AGORA-Assistenten \u2013 ohne dieselben Events, Ausflugsziele oder Mobilit\u00e4tsinformationen mehrfach zu pflegen.<\/p>\r\n        <ul class=\"ag-check-list\">\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span><b>Konsistente Antworten<\/b> aus einer verl\u00e4sslichen regionalen Quelle<\/span><\/li>\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span><b>Weniger Pflegeaufwand<\/b> f\u00fcr Hotels und Mitgliedsbetriebe<\/span><\/li>\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span><b>Mehr Sichtbarkeit<\/b> f\u00fcr Aktivit\u00e4ten, Mobilit\u00e4t und Alternativen zu Hotspots<\/span><\/li>\r\n        <\/ul>\r\n        <a class=\"ag-text-link\" href=\"https:\/\/www.dexdot.it\/contact\/\">Vernetzung f\u00fcr meine Destination besprechen <svg aria-hidden=\"true\"><use href=\"#ag-i-arrow\"><\/use><\/svg><\/a>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- OMNICHANNEL -->\r\n  <div class=\"ag-section ag-omnichannel\">\r\n    <div class=\"ag-container\">\r\n      <div class=\"ag-section-head ag-section-head--center\" data-reveal>\r\n        <span class=\"ag-kicker\">Wo Ihre G\u00e4ste sind, ist AGORA<\/span>\r\n        <h2>Ein Assistent. Viele Kan\u00e4le. Eine konsistente Antwort.<\/h2>\r\n        <p>Kein Medienbruch und keine mehrfach gepflegten Textbausteine: AGORA nutzt dieselbe Wissensbasis \u00fcber alle Kontaktpunkte.<\/p>\r\n      <\/div>\r\n\r\n      <div class=\"ag-channel-orbit\" data-reveal>\r\n        <div class=\"ag-orbit ag-orbit--outer\" aria-hidden=\"true\"><\/div>\r\n        <div class=\"ag-orbit ag-orbit--inner\" aria-hidden=\"true\"><\/div>\r\n        <div class=\"ag-channel-center\"><b>agora<\/b><span>Omnichannel<\/span><\/div>\r\n\r\n        <div class=\"ag-channel ag-channel--web\"><div class=\"ag-channel__glyph\"><svg aria-hidden=\"true\"><use href=\"#ag-i-web\"><\/use><\/svg><\/div><span>Website<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--phone\"><div class=\"ag-channel__glyph\"><svg aria-hidden=\"true\"><use href=\"#ag-i-phone\"><\/use><\/svg><\/div><span>Telefon<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--sms\"><div class=\"ag-channel__glyph\"><svg aria-hidden=\"true\"><use href=\"#ag-i-message\"><\/use><\/svg><\/div><span>SMS<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--wa\"><div class=\"ag-channel__glyph ag-channel__glyph--brand\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/whatsapp.svg\" alt=\"\" loading=\"lazy\" title=\"\"><\/div><span>WhatsApp<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--mail\"><div class=\"ag-channel__glyph\"><svg aria-hidden=\"true\"><use href=\"#ag-i-mail\"><\/use><\/svg><\/div><span>E-Mail<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--booking\"><div class=\"ag-channel__glyph ag-channel__glyph--brand\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/bookingdotcom.svg\" alt=\"\" loading=\"lazy\" title=\"\"><\/div><span>booking.com<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--telegram\"><div class=\"ag-channel__glyph ag-channel__glyph--brand\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/telegram.svg\" alt=\"\" loading=\"lazy\" title=\"\"><\/div><span>Telegram<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--instagram\"><div class=\"ag-channel__glyph ag-channel__glyph--brand\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/instagram.svg\" alt=\"\" loading=\"lazy\" title=\"\"><\/div><span>Instagram<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--messenger\"><div class=\"ag-channel__glyph ag-channel__glyph--brand\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/facebookmessenger.svg\" alt=\"\" loading=\"lazy\" title=\"\"><\/div><span>Facebook Messenger<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--discord\"><div class=\"ag-channel__glyph ag-channel__glyph--brand\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/discord.svg\" alt=\"\" loading=\"lazy\" title=\"\"><\/div><span>Discord<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--youtube\"><div class=\"ag-channel__glyph ag-channel__glyph--brand\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/youtube.svg\" alt=\"\" loading=\"lazy\" title=\"\"><\/div><span>YouTube<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--teams\"><div class=\"ag-channel__glyph ag-channel__glyph--brand\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/microsoftteams.svg\" alt=\"\" loading=\"lazy\" title=\"\"><\/div><span>Microsoft Teams<\/span><\/div>\r\n        <div class=\"ag-channel ag-channel--tiktok\"><div class=\"ag-channel__glyph ag-channel__glyph--brand\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/tiktok.svg\" alt=\"\" loading=\"lazy\" title=\"\"><\/div><span>TikTok<\/span><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"ag-omni-benefits\">\r\n        <div data-reveal><svg aria-hidden=\"true\"><use href=\"#ag-i-bolt\"><\/use><\/svg><p><b>Sofortige Antworten<\/b><span>auch nachts, am Wochenende und bei Lastspitzen<\/span><\/p><\/div>\r\n        <div data-reveal><svg aria-hidden=\"true\"><use href=\"#ag-i-language\"><\/use><\/svg><p><b>80+ Sprachen<\/b><span>ohne dass Ihr Team jede Sprache abdecken muss<\/span><\/p><\/div>\r\n        <div data-reveal><svg aria-hidden=\"true\"><use href=\"#ag-i-chart\"><\/use><\/svg><p><b>Zentrale Auswertung<\/b><span>Anfragen, Trends und Verbesserungspotenzial erkennen<\/span><\/p><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- VERL\u00c4SSLICHKEIT UND CUSTOMIZATION -->\r\n  <div class=\"ag-section ag-control\">\r\n    <div class=\"ag-container ag-control__grid\">\r\n      <div class=\"ag-control__copy\" data-reveal>\r\n        <span class=\"ag-kicker\">Kontrollierte KI statt Blackbox<\/span>\r\n        <h2>Verl\u00e4ssliche Antworten aus gepr\u00fcften Daten.<\/h2>\r\n        <p>AGORA antwortet auf Basis Ihrer strukturierten Wissens- und Echtzeitdaten. Fehlen Informationen oder wird ein Anliegen komplex, kann der Dialog transparent eskaliert werden.<\/p>\r\n        <div class=\"ag-control-steps\">\r\n          <div><span>01<\/span><p><b>Daten b\u00fcndeln<\/b><small>FAQs, \u00d6ffnungszeiten, Angebote, Events und Systeme werden strukturiert.<\/small><\/p><\/div>\r\n          <div><span>02<\/span><p><b>Antworten validieren<\/b><small>Die Antwortlogik nutzt relevante, freigegebene Inhalte und angebundene Datenquellen.<\/small><\/p><\/div>\r\n          <div><span>03<\/span><p><b>Lernen &amp; verbessern<\/b><small>Logs und Auswertungen zeigen, wo Inhalte erg\u00e4nzt oder Abl\u00e4ufe optimiert werden sollten.<\/small><\/p><\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"ag-control__card\" data-reveal>\r\n        <div class=\"ag-security-head\"><div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-shield\"><\/use><\/svg><\/div><div><span>Datenschutz &amp; Kontrolle<\/span><strong>F\u00fcr professionelle Nutzung konzipiert<\/strong><\/div><\/div>\r\n        <ul class=\"ag-check-list\">\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span>Verarbeitung in Europa \/ auf italienischer Infrastruktur<\/span><\/li>\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span>DSGVO-konforme Umsetzung und verschl\u00fcsselte Verarbeitung<\/span><\/li>\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span>Logging, Analyse und nachvollziehbare Datenpflege<\/span><\/li>\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span>Fallback und \u00dcbergabe an Mitarbeitende<\/span><\/li>\r\n        <\/ul>\r\n        <div class=\"ag-custom-box\">\r\n          <span>100 % anpassbar<\/span>\r\n          <p>Name, Tonalit\u00e4t, Corporate Design, Rollen, Regeln, Prozesse, Kan\u00e4le und individuelle Funktionen werden auf Ihren Betrieb abgestimmt.<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- TESTIMONIALS -->\r\n  <div class=\"ag-section ag-testimonials\">\r\n    <div class=\"ag-container\">\r\n      <div class=\"ag-section-head\" data-reveal>\r\n        <span class=\"ag-kicker\">Im echten Tourismusbetrieb bew\u00e4hrt<\/span>\r\n        <h2>Stimmen von Kunden, die AGORA im Alltag einsetzen.<\/h2>\r\n        <p>\u00dcber 150.000 bearbeitete Anfragen stehen f\u00fcr viele konkrete Situationen, in denen G\u00e4ste sofort Hilfe erhielten und Teams entlastet wurden.<\/p>\r\n      <\/div>\r\n\r\n      <div class=\"ag-testimonial-grid\">\r\n        <article class=\"ag-quote ag-quote--featured\" data-reveal>\r\n          <div class=\"ag-stars\" aria-label=\"Sehr positive Kundenbewertung\">\r\n            <svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg><svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg><svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg><svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg><svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg>\r\n          <\/div>\r\n          <blockquote>\u201eDer Chatbot f\u00fcr unsere Ski- und Snowboardschule Kronplatz wurde genau auf unsere Bed\u00fcrfnisse abgestimmt. Das Team war schnell, kompetent und jederzeit erreichbar. Wir k\u00f6nnen DEXDOT AI uneingeschr\u00e4nkt weiterempfehlen.\u201c<\/blockquote>\r\n          <footer><div class=\"ag-quote-avatar ag-quote-avatar--logo\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/kronplatz.jpg\" alt=\"Skischule Kronplatz Logo\" loading=\"lazy\" title=\"\"><\/div><div><strong>Marion Leitner<\/strong><span>Skischule Kronplatz<\/span><\/div><\/footer>\r\n        <\/article>\r\n\r\n        <article class=\"ag-quote\" data-reveal>\r\n          <div class=\"ag-stars\" aria-label=\"Sehr positive Kundenbewertung\">\r\n            <svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg><svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg><svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg><svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg><svg aria-hidden=\"true\"><use href=\"#ag-i-star\"><\/use><\/svg>\r\n          <\/div>\r\n          <blockquote>\u201eDer ma\u00dfgeschneiderte AI-Chatbot automatisiert und beantwortet zuverl\u00e4ssig einen gro\u00dfen Teil der t\u00e4glichen Kundenanfragen. Unsere G\u00e4ste erhalten rund um die Uhr schnelle und pr\u00e4zise Antworten.\u201c<\/blockquote>\r\n          <footer><div class=\"ag-quote-avatar ag-quote-avatar--logo\"><img decoding=\"async\" src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/rosskopf.jpeg\" alt=\"Skigebiet Rosskopf Logo\" loading=\"lazy\" title=\"\"><\/div><div><strong>Mattia Plattner Mocellini<\/strong><span>Skigebiet Rosskopf<\/span><\/div><\/footer>\r\n        <\/article>\r\n      <\/div>\r\n\r\n      <div class=\"ag-trust-strip\" data-reveal>\r\n        <span>Bereits t\u00e4glich im Einsatz bei<\/span>\r\n        <b>Skischulen<\/b><i><\/i><b>Skigebieten<\/b><i><\/i><b>Hotels<\/b><i><\/i><b>Destinationen<\/b><i><\/i><b>serviceintensiven Betrieben<\/b>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- SERVICE \/ DATENPFLEGE -->\r\n  <div class=\"ag-section ag-managed\">\r\n    <div class=\"ag-container ag-managed__grid\">\r\n      <div class=\"ag-managed__copy\" data-reveal>\r\n        <span class=\"ag-kicker\">Technologie plus pers\u00f6nlicher Support<\/span>\r\n        <h2>AGORA kann vollst\u00e4ndig betreut werden \u2013 damit intern kaum Pflegeaufwand entsteht.<\/h2>\r\n        <p>Auf Wunsch analysiert DEXDOT AI laufend, welche Fragen noch nicht optimal beantwortet werden, erg\u00e4nzt Inhalte und unterst\u00fctzt bei Tonalit\u00e4t, Verhalten sowie neuen Datenverbindungen.<\/p>\r\n        <ul class=\"ag-check-list\">\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span>Nicht beantwortete Fragen erkennen und Inhalte erg\u00e4nzen<\/span><\/li>\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span>Anpassungen unkompliziert per E-Mail beauftragen<\/span><\/li>\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span>Sinnvolle neue Schnittstellen laufend aktivieren<\/span><\/li>\r\n          <li><svg aria-hidden=\"true\"><use href=\"#ag-i-check\"><\/use><\/svg><span>Direkter Support statt anonymer Ticket-Warteschlange<\/span><\/li>\r\n        <\/ul>\r\n      <\/div>\r\n\r\n      <div class=\"ag-managed__visual\" data-reveal>\r\n        <div class=\"ag-dashboard\">\r\n          <div class=\"ag-dash-head\"><b>AGORA Qualit\u00e4ts-Dashboard<\/b><span><i><\/i> Live<\/span><\/div>\r\n          <div class=\"ag-dash-score\"><div><span>Antwortqualit\u00e4t<\/span><strong>96%<\/strong><\/div><div class=\"ag-progress\"><i style=\"width:96%\"><\/i><\/div><\/div>\r\n          <div class=\"ag-dash-row\"><span><i class=\"ag-dot ag-dot--green\"><\/i> Automatisch beantwortet<\/span><b>1.284<\/b><\/div>\r\n          <div class=\"ag-dash-row\"><span><i class=\"ag-dot ag-dot--blue\"><\/i> Neue Inhalte erkannt<\/span><b>18<\/b><\/div>\r\n          <div class=\"ag-dash-row\"><span><i class=\"ag-dot ag-dot--orange\"><\/i> An Team \u00fcbergeben<\/span><b>7<\/b><\/div>\r\n          <div class=\"ag-dash-insight\"><svg aria-hidden=\"true\"><use href=\"#ag-i-bolt\"><\/use><\/svg><p><b>Optimierung erkannt<\/b><span>\u201eKinderprogramm bei Regen\u201c wurde heute 12-mal gefragt.<\/span><\/p><button type=\"button\">Inhalt erg\u00e4nzen<\/button><\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- FUTURE -->\r\n  <div class=\"ag-section ag-future\">\r\n    <div class=\"ag-container\">\r\n      <div class=\"ag-section-head ag-section-head--center\" data-reveal>\r\n        <span class=\"ag-kicker\">Mehr als ein Webchat<\/span>\r\n        <h2>Ein Chatbot war noch nie menschlicher.<\/h2>\r\n      <\/div>\r\n\r\n      <div class=\"ag-human-showcase\" data-reveal>\r\n        <div class=\"ag-human-showcase__visual\">\r\n          <div class=\"ag-digital-human\" data-vrm-wrap>\r\n            <div class=\"ag-dh-stage\" data-vrm-viewer data-vrm-src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/6fb78af1efb24b3d9b51c050070ad797.vrm\" data-vrm-remote-src=\"https:\/\/www.dexdot.it\/wp-content\/uploads\/2026\/07\/6fb78af1efb24b3d9b51c050070ad797.vrm\">\r\n              <canvas class=\"ag-dh-canvas\" aria-label=\"Interaktiver AGORA Digital Human\"><\/canvas>\r\n              <div class=\"ag-dh-aura\" aria-hidden=\"true\"><\/div>\r\n              <div class=\"ag-dh-floor\" aria-hidden=\"true\"><\/div>\r\n              <div class=\"ag-dh-status\" aria-live=\"polite\"><i><\/i><span>Digital Human wird geladen ...<\/span><\/div>\r\n              <div class=\"ag-dh-hint\" aria-hidden=\"true\">Maus bewegen \u00b7 Avatar folgt<\/div>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"ag-human-showcase__copy\">\r\n          <span class=\"ag-card-label\">DIGITAL HUMANS<\/span>\r\n          <h3>Agora bringt den Chatbot dorthin, wo G\u00e4ste echte Hilfe brauchen.<\/h3>\r\n          <p>AGORA macht aus dem digitalen Chatbot ein sichtbares Gegen\u00fcber vor Ort \u2013 an Rezeptionen, in Hotellobbys, an Talstationen oder im Tourismusb\u00fcro. G\u00e4ste k\u00f6nnen direkt mit dem Avatar sprechen und erhalten sofort mehrsprachige Antworten aus derselben aktuellen AGORA-Datenbasis.<\/p>\r\n          <p>So wird digitaler G\u00e4steservice pers\u00f6nlicher, zug\u00e4nglicher und rund um die Uhr direkt am physischen Kontaktpunkt verf\u00fcgbar.<\/p>\r\n          <p class=\"ag-human-positioning\">Mit diesem Ansatz hebt sich AGORA deutlich von klassischen Chatbot-L\u00f6sungen im Tourismus ab: Der KI-gest\u00fctzte G\u00e4steservice bleibt nicht auf Website oder Smartphone beschr\u00e4nkt, sondern wird als interaktiver Digital Human direkt am physischen Kontaktpunkt erlebbar.<\/p>\r\n          <ul class=\"ag-human-points\" aria-label=\"Vorteile der AGORA Digital Humans\">\r\n            <li>Pers\u00f6nliche Interaktion direkt vor Ort<\/li>\r\n            <li>Mehrsprachige Antworten rund um die Uhr<\/li>\r\n            <li>Dieselben aktuellen Daten und Integrationen wie in AGORA<\/li>\r\n          <\/ul>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- IMPLEMENTIERUNG -->\r\n  <div class=\"ag-section ag-process\">\r\n    <div class=\"ag-container\">\r\n      <div class=\"ag-section-head ag-section-head--center\" data-reveal>\r\n        <span class=\"ag-kicker\">Schnell vom Konzept zum produktiven Einsatz<\/span>\r\n        <h2>In drei Schritten zu Ihrem digitalen Service-Mitarbeiter.<\/h2>\r\n      <\/div>\r\n      <div class=\"ag-process-grid\">\r\n        <article data-reveal><span>01<\/span><div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-database\"><\/use><\/svg><\/div><h3>Inhalte &amp; Systeme<\/h3><p>Wir b\u00fcndeln FAQs, Datenquellen, \u00d6ffnungszeiten, Angebote und gew\u00fcnschte Prozesse.<\/p><\/article>\r\n        <article data-reveal><span>02<\/span><div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-message\"><\/use><\/svg><\/div><h3>Design &amp; Kan\u00e4le<\/h3><p>AGORA erh\u00e4lt Ihre Tonalit\u00e4t, Ihr Corporate Design und die passenden Kontaktkan\u00e4le.<\/p><\/article>\r\n        <article data-reveal><span>03<\/span><div class=\"ag-icon\"><svg aria-hidden=\"true\"><use href=\"#ag-i-bolt\"><\/use><\/svg><\/div><h3>Go-live &amp; Optimierung<\/h3><p>Nach Tests startet der Betrieb. Monitoring und Support sorgen f\u00fcr kontinuierliche Verbesserung.<\/p><\/article>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- FAQ -->\r\n  <div class=\"ag-section ag-faq\" id=\"agora-faq\">\r\n    <div class=\"ag-container ag-faq__grid\">\r\n      <div class=\"ag-faq__intro\" data-reveal>\r\n        <span class=\"ag-kicker\">H\u00e4ufige Fragen<\/span>\r\n        <h2>Was Entscheider vor dem Start wissen m\u00f6chten.<\/h2>\r\n        <p>Noch eine spezielle Frage? In einer kostenlosen Demo zeigen wir AGORA direkt mit einem Anwendungsfall aus Ihrem Betrieb.<\/p>\r\n        <a class=\"ag-btn ag-btn--primary\" href=\"https:\/\/www.dexdot.it\/contact\/\">Demo anfragen <svg aria-hidden=\"true\"><use href=\"#ag-i-arrow\"><\/use><\/svg><\/a>\r\n      <\/div>\r\n      <div class=\"ag-faq-list\" data-reveal>\r\n        <details open><summary>Was unterscheidet AGORA von einem einfachen Website-Chatbot?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>AGORA verbindet mehrere Kommunikationskan\u00e4le mit einer zentralen Wissensbasis, touristischen Echtzeitdaten und individuellen Funktionen. Dadurch kann die L\u00f6sung nicht nur Text ausgeben, sondern aktuelle Informationen nutzen, Prozesse ansto\u00dfen und komplexe Anliegen weiterleiten.<\/div><\/details>\r\n        <details><summary>Ist AGORA ein Chatbot f\u00fcr S\u00fcdtirol?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>Ja. AGORA wird von DEXDOT AI in S\u00fcdtirol entwickelt und ist besonders f\u00fcr Hotels, Skischulen, Skigebiete, Tourismusvereine und Destinationen in S\u00fcdtirol geeignet. Die L\u00f6sung unterst\u00fctzt mehrsprachige G\u00e4stekommunikation, lokale Inhalte und touristische Datenquellen.<\/div><\/details>\r\n        <details><summary>Eignet sich AGORA als Chatbot f\u00fcr \u00d6sterreich?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>Ja. AGORA kann auch f\u00fcr Betriebe und Destinationen in \u00d6sterreich eingesetzt werden, zum Beispiel f\u00fcr Hotels, Bergbahnen, Skigebiete, Tourismusregionen und Skischulen. Inhalte, Tonalit\u00e4t, Kan\u00e4le und Schnittstellen werden auf den jeweiligen Betrieb abgestimmt.<\/div><\/details>\r\n        <details><summary>Was bringt ein Tourismus-Chatbot f\u00fcr Hotels, Skigebiete und Destinationen?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>Ein spezialisierter Tourismus-Chatbot beantwortet wiederkehrende G\u00e4stefragen sofort, mehrsprachig und rund um die Uhr. Dadurch werden Teams bei Fragen zu Verf\u00fcgbarkeit, Anreise, Wetter, Events, \u00d6ffnungszeiten, Pistenstatus, Kursen oder Angeboten entlastet.<\/div><\/details>\r\n        <details><summary>Wie aktuell bleiben Wetter, Events, Pisten oder \u00d6ffnungszeiten?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>Wo eine Datenverbindung vorhanden ist, werden Informationen automatisiert synchronisiert. Zus\u00e4tzliche Quellen k\u00f6nnen \u00fcber bestehende Integrationen, Webimport oder eine individuelle API angebunden werden.<\/div><\/details>\r\n        <details><summary>Kann AGORA auch f\u00fcr Hotels und Buchungsanfragen eingesetzt werden?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>Ja. AGORA kann Fragen vor der Buchung beantworten, Verf\u00fcgbarkeiten und Hoteldaten einbeziehen, Zusatzleistungen erkl\u00e4ren und \u2013 abh\u00e4ngig vom angebundenen System \u2013 Buchungs- oder Serviceprozesse unterst\u00fctzen.<\/div><\/details>\r\n        <details><summary>Ist AGORA wirklich vollst\u00e4ndig anpassbar?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>Name, Design, Tonalit\u00e4t, Verhalten, Wissensbasis, Kan\u00e4le und Funktionen lassen sich anpassen. Auch individuelle Schnittstellen sind m\u00f6glich, sofern sie technisch, rechtlich und \u00fcber die Drittsysteme umsetzbar sind.<\/div><\/details>\r\n        <details><summary>Ersetzt AGORA Mitarbeitende?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>Der Fokus liegt auf Entlastung: AGORA \u00fcbernimmt wiederkehrende Fragen und Lastspitzen. Mitarbeitende gewinnen Zeit f\u00fcr pers\u00f6nliche Beratung, komplexe F\u00e4lle und wertsch\u00f6pfende Aufgaben.<\/div><\/details>\r\n        <details><summary>Wie wird Datenschutz umgesetzt?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>Die L\u00f6sung wird f\u00fcr einen DSGVO-konformen Einsatz mit europ\u00e4ischer beziehungsweise italienischer Infrastruktur, Verschl\u00fcsselung, Zugriffsregeln und nachvollziehbarer Datenverarbeitung konzipiert. Die konkrete Konfiguration wird auf den Einsatzfall abgestimmt.<\/div><\/details>\r\n        <details><summary>Kann man AGORA vor einer Entscheidung testen?<svg aria-hidden=\"true\"><use href=\"#ag-i-chevron\"><\/use><\/svg><\/summary><div>Ja. DEXDOT AI bietet eine kostenlose Live-Demo und \u2013 je nach Angebot \u2013 einen unverbindlichen Testzeitraum von 30 Tagen, damit Sie die L\u00f6sung mit realistischen Anfragen pr\u00fcfen k\u00f6nnen.<\/div><\/details>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- FINAL CTA -->\r\n  <div class=\"ag-final\">\r\n    <div class=\"ag-final__grid\" aria-hidden=\"true\"><\/div>\r\n    <div class=\"ag-orb ag-orb--three\" aria-hidden=\"true\"><\/div>\r\n    <div class=\"ag-container ag-final__inner\" data-reveal>\r\n      <div>\r\n        <span class=\"ag-kicker\">Erst erleben. Dann entscheiden.<\/span>\r\n        <h2>Wie viele G\u00e4stefragen k\u00f6nnte AGORA Ihrem Team schon n\u00e4chste Saison abnehmen?<\/h2>\r\n        <p>Wir zeigen Ihnen in einer kostenlosen Demo, wie AGORA mit den Daten, Kan\u00e4len und Abl\u00e4ufen Ihres Betriebs arbeiten kann.<\/p>\r\n      <\/div>\r\n      <div class=\"ag-final__actions\">\r\n        <a class=\"ag-btn ag-btn--light\" href=\"https:\/\/www.dexdot.it\/contact\/\">Kostenlose Demo buchen <svg aria-hidden=\"true\"><use href=\"#ag-i-arrow\"><\/use><\/svg><\/a>\r\n        <a class=\"ag-contact-link\" href=\"mailto:info@dexdot.it\"><svg aria-hidden=\"true\"><use href=\"#ag-i-mail\"><\/use><\/svg> info@dexdot.it<\/a>\r\n        <a class=\"ag-contact-link\" href=\"tel:+390472310021\"><svg aria-hidden=\"true\"><use href=\"#ag-i-phone\"><\/use><\/svg> +39 0472 310021<\/a>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Structured data: kann in Elementor im Body stehen -->\r\n  <script type=\"application\/ld+json\">\r\n  {\r\n    \"@context\": \"https:\/\/schema.org\",\r\n    \"@graph\": [\r\n      {\r\n        \"@type\": \"SoftwareApplication\",\r\n        \"name\": \"AGORA\",\r\n        \"applicationCategory\": \"BusinessApplication\",\r\n        \"operatingSystem\": \"Web\",\r\n        \"description\": \"KI-gest\u00fctzte Omnichannel-Plattform und Tourismus-Chatbot f\u00fcr G\u00e4steservice in S\u00fcdtirol, \u00d6sterreich, Hotellerie, Skigebieten, Skischulen und Destinationen.\",\r\n        \"alternateName\": [\r\n          \"Chatbot S\u00fcdtirol\",\r\n          \"Chatbot \u00d6sterreich\",\r\n          \"Tourismus Chatbot\",\r\n          \"KI-Chatbot f\u00fcr Hotels\",\r\n          \"Chatbot f\u00fcr Skigebiete\"\r\n        ],\r\n        \"keywords\": \"Chatbot S\u00fcdtirol, Chatbot \u00d6sterreich, Tourismus Chatbot, KI Chatbot Tourismus, Hotel Chatbot, Chatbot Skigebiet, Chatbot Skischule, G\u00e4steservice KI, WhatsApp Chatbot Tourismus\",\r\n        \"areaServed\": [\r\n          {\"@type\": \"AdministrativeArea\", \"name\": \"S\u00fcdtirol\"},\r\n          {\"@type\": \"Country\", \"name\": \"\u00d6sterreich\"},\r\n          {\"@type\": \"Place\", \"name\": \"Alpenraum\"}\r\n        ],\r\n        \"audience\": {\r\n          \"@type\": \"BusinessAudience\",\r\n          \"audienceType\": \"Hotels, Skigebiete, Skischulen, Tourismusvereine, Destinationen und serviceintensive Betriebe\"\r\n        },\r\n        \"provider\": {\r\n          \"@type\": \"Organization\",\r\n          \"name\": \"DEXDOT AI\",\r\n          \"url\": \"https:\/\/www.dexdot.it\/\"\r\n        },\r\n        \"featureList\": [\r\n          \"80+ Sprachen und Dialekte\",\r\n          \"Chatbot f\u00fcr S\u00fcdtirol, \u00d6sterreich und den Alpenraum\",\r\n          \"Tourismus-Chatbot f\u00fcr Hotels, Skigebiete, Skischulen und Destinationen\",\r\n          \"Website, WhatsApp, E-Mail, Telefon und Social Media\",\r\n          \"Touristische Echtzeitdaten und Systemintegrationen\",\r\n          \"Anpassbares Corporate Design und Antwortverhalten\",\r\n          \"Analyse, Monitoring und \u00dcbergabe an Mitarbeitende\"\r\n        ],\r\n        \"offers\": {\r\n          \"@type\": \"Offer\",\r\n          \"description\": \"Kostenlose Demo und optionaler 30-Tage-Test\",\r\n          \"url\": \"https:\/\/www.dexdot.it\/contact\/\"\r\n        }\r\n      },\r\n      {\r\n        \"@type\": \"FAQPage\",\r\n        \"mainEntity\": [\r\n          {\"@type\":\"Question\",\"name\":\"Was unterscheidet AGORA von einem einfachen Website-Chatbot?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"AGORA verbindet mehrere Kommunikationskan\u00e4le mit einer zentralen Wissensbasis, touristischen Echtzeitdaten und individuellen Funktionen.\"}},\r\n          {\"@type\":\"Question\",\"name\":\"Ist AGORA ein Chatbot f\u00fcr S\u00fcdtirol?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Ja. AGORA wird von DEXDOT AI in S\u00fcdtirol entwickelt und ist besonders f\u00fcr Hotels, Skischulen, Skigebiete, Tourismusvereine und Destinationen in S\u00fcdtirol geeignet.\"}},\r\n          {\"@type\":\"Question\",\"name\":\"Eignet sich AGORA als Chatbot f\u00fcr \u00d6sterreich?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Ja. AGORA kann f\u00fcr Betriebe und Destinationen in \u00d6sterreich eingesetzt werden, zum Beispiel f\u00fcr Hotels, Bergbahnen, Skigebiete, Tourismusregionen und Skischulen.\"}},\r\n          {\"@type\":\"Question\",\"name\":\"Was bringt ein Tourismus-Chatbot f\u00fcr Hotels, Skigebiete und Destinationen?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Ein spezialisierter Tourismus-Chatbot beantwortet wiederkehrende G\u00e4stefragen sofort, mehrsprachig und rund um die Uhr und entlastet Teams bei Fragen zu Verf\u00fcgbarkeit, Anreise, Wetter, Events, \u00d6ffnungszeiten, Pistenstatus, Kursen oder Angeboten.\"}},\r\n          {\"@type\":\"Question\",\"name\":\"Wie aktuell bleiben Wetter, Events, Pisten oder \u00d6ffnungszeiten?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Wo eine Datenverbindung vorhanden ist, werden Informationen automatisiert synchronisiert. Zus\u00e4tzliche Quellen k\u00f6nnen \u00fcber Integrationen, Webimport oder individuelle APIs angebunden werden.\"}},\r\n          {\"@type\":\"Question\",\"name\":\"Kann AGORA auch f\u00fcr Hotels und Buchungsanfragen eingesetzt werden?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Ja. AGORA kann Fragen vor der Buchung beantworten, Verf\u00fcgbarkeiten und Hoteldaten einbeziehen und abh\u00e4ngig vom angebundenen System Buchungs- oder Serviceprozesse unterst\u00fctzen.\"}},\r\n          {\"@type\":\"Question\",\"name\":\"Ist AGORA vollst\u00e4ndig anpassbar?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Name, Design, Tonalit\u00e4t, Verhalten, Wissensbasis, Kan\u00e4le und Funktionen lassen sich anpassen. Individuelle Schnittstellen sind m\u00f6glich, sofern sie technisch und rechtlich umsetzbar sind.\"}},\r\n          {\"@type\":\"Question\",\"name\":\"Ersetzt AGORA Mitarbeitende?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"AGORA ist auf Entlastung ausgelegt und \u00fcbernimmt wiederkehrende Fragen sowie Lastspitzen, damit Mitarbeitende mehr Zeit f\u00fcr pers\u00f6nliche und komplexe Anliegen haben.\"}},\r\n          {\"@type\":\"Question\",\"name\":\"Kann man AGORA vor einer Entscheidung testen?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"DEXDOT AI bietet eine kostenlose Live-Demo und je nach Angebot einen unverbindlichen Testzeitraum von 30 Tagen.\"}}\r\n        ]\r\n      }\r\n    ]\r\n  }\r\n  <\/script>\r\n<\/section>\r\n\r\n<style>\r\n  \/* =========================================================\r\n     AGORA LANDINGPAGE \u2013 vollst\u00e4ndig auf #agora-tourism-landing begrenzt\r\n     ========================================================= *\/\r\n  #agora-tourism-landing {\r\n    --ag-navy: #07142d;\r\n    --ag-navy-2: #0c1d3e;\r\n    --ag-blue: #3b73ff;\r\n    --ag-blue-2: #6a5cff;\r\n    --ag-cyan: #3bd7e8;\r\n    --ag-green: #20c77a;\r\n    --ag-orange: #ff9f43;\r\n    --ag-white: #ffffff;\r\n    --ag-ink: #101828;\r\n    --ag-muted: #5b667b;\r\n    --ag-soft: #f3f6fc;\r\n    --ag-line: rgba(16, 24, 40, .10);\r\n    --ag-shadow: 0 24px 80px rgba(18, 31, 63, .13);\r\n    --ag-radius: 28px;\r\n    position: relative;\r\n    isolation: isolate;\r\n    width: 100%;\r\n    overflow: hidden;\r\n    color: var(--ag-ink);\r\n    background: var(--ag-white);\r\n    font-family: inherit;\r\n    font-size: 16px;\r\n    line-height: 1.6;\r\n    -webkit-font-smoothing: antialiased;\r\n    text-rendering: optimizeLegibility;\r\n  }\r\n  #agora-tourism-landing *, #agora-tourism-landing *::before, #agora-tourism-landing *::after { box-sizing: border-box; }\r\n  #agora-tourism-landing .ag-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }\r\n  #agora-tourism-landing .ag-container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; position: relative; z-index: 2; }\r\n  #agora-tourism-landing h1, #agora-tourism-landing h2, #agora-tourism-landing h3, #agora-tourism-landing p { margin-top: 0; }\r\n  #agora-tourism-landing h1, #agora-tourism-landing h2, #agora-tourism-landing h3 { color: inherit; font-family: inherit; letter-spacing: -.035em; }\r\n  #agora-tourism-landing h1 { margin-bottom: 24px; font-size: clamp(2.75rem, 5.8vw, 5.6rem); line-height: .98; font-weight: 800; }\r\n  #agora-tourism-landing h2 { margin-bottom: 20px; font-size: clamp(2rem, 4.1vw, 3.85rem); line-height: 1.06; font-weight: 780; }\r\n  #agora-tourism-landing h3 { margin-bottom: 12px; font-size: clamp(1.16rem, 1.7vw, 1.45rem); line-height: 1.25; font-weight: 750; }\r\n  #agora-tourism-landing p { color: var(--ag-muted); }\r\n  #agora-tourism-landing a { color: inherit; text-decoration: none; }\r\n  #agora-tourism-landing ul, #agora-tourism-landing ol { list-style: none !important; }\r\n  #agora-tourism-landing li::marker { content: \"\" !important; font-size: 0 !important; }\r\n  #agora-tourism-landing li::before { content: none !important; display: none !important; }\r\n  #agora-tourism-landing svg { display: block; width: 1em; height: 1em; }\r\n  #agora-tourism-landing button { font: inherit; }\r\n  #agora-tourism-landing .ag-section { position: relative; padding: 120px 0; }\r\n  #agora-tourism-landing .ag-section-head { max-width: 790px; margin-bottom: 56px; }\r\n  #agora-tourism-landing .ag-section-head--center { margin-inline: auto; text-align: center; }\r\n  #agora-tourism-landing .ag-section-head p { max-width: 710px; margin-bottom: 0; font-size: 1.08rem; }\r\n  #agora-tourism-landing .ag-section-head--center p { margin-inline: auto; }\r\n  #agora-tourism-landing .ag-kicker { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 18px; color: var(--ag-blue); font-size: .78rem; font-weight: 800; letter-spacing: .13em; line-height: 1.3; text-transform: uppercase; }\r\n  #agora-tourism-landing .ag-kicker::before { content: \"\"; width: 24px; height: 2px; border-radius: 99px; background: linear-gradient(90deg, var(--ag-blue), var(--ag-cyan)); }\r\n\r\n  \/* Buttons *\/\r\n  #agora-tourism-landing .ag-btn { display: inline-flex; align-items: center; justify-content: center; gap: 11px; min-height: 56px; padding: 14px 24px; border: 1px solid transparent; border-radius: 16px; font-weight: 750; line-height: 1.1; transition: transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease; }\r\n  #agora-tourism-landing .ag-btn svg { width: 20px; height: 20px; transition: transform .25s ease; }\r\n  #agora-tourism-landing .ag-btn:hover { transform: translateY(-3px); }\r\n  #agora-tourism-landing .ag-btn:hover svg { transform: translateX(3px); }\r\n  #agora-tourism-landing .ag-btn:focus-visible, #agora-tourism-landing button:focus-visible, #agora-tourism-landing summary:focus-visible { outline: 3px solid rgba(59, 115, 255, .4); outline-offset: 3px; }\r\n  #agora-tourism-landing .ag-btn--primary { color: #fff; background: linear-gradient(135deg, var(--ag-blue), var(--ag-blue-2)); box-shadow: 0 16px 35px rgba(59, 115, 255, .28); }\r\n  #agora-tourism-landing .ag-btn--primary:hover { box-shadow: 0 20px 42px rgba(59, 115, 255, .36); }\r\n  #agora-tourism-landing .ag-btn--ghost { color: #fff; border-color: rgba(255,255,255,.17); background: rgba(255,255,255,.07); backdrop-filter: blur(10px); }\r\n  #agora-tourism-landing .ag-btn--ghost:hover { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.3); }\r\n  #agora-tourism-landing .ag-btn--light { color: var(--ag-navy); background: #fff; box-shadow: 0 18px 45px rgba(0,0,0,.2); }\r\n\r\n  \/* Hero *\/\r\n  #agora-tourism-landing .ag-hero { position: relative; overflow: hidden; padding: 105px 0 0; color: #fff; background: radial-gradient(circle at 15% 10%, rgba(59,115,255,.29), transparent 34%), radial-gradient(circle at 88% 22%, rgba(59,215,232,.17), transparent 30%), linear-gradient(135deg, #061126 0%, #0a1836 56%, #102250 100%); }\r\n  #agora-tourism-landing .ag-hero__grid, #agora-tourism-landing .ag-final__grid { position: absolute; inset: 0; opacity: .18; background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px); background-size: 56px 56px; mask-image: linear-gradient(to bottom, #000, transparent 90%); }\r\n  #agora-tourism-landing .ag-orb { position: absolute; border-radius: 50%; filter: blur(2px); opacity: .72; pointer-events: none; }\r\n  #agora-tourism-landing .ag-orb::after { content: \"\"; position: absolute; inset: 13%; border-radius: inherit; border: 1px solid rgba(255,255,255,.22); }\r\n  #agora-tourism-landing .ag-orb--one { width: 390px; height: 390px; top: -190px; right: -100px; background: radial-gradient(circle at 35% 35%, rgba(76,220,239,.85), rgba(75,91,255,.13) 55%, transparent 72%); animation: agFloat 9s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-orb--two { width: 240px; height: 240px; left: -125px; bottom: 100px; background: radial-gradient(circle at 60% 40%, rgba(106,92,255,.75), rgba(59,115,255,.08) 60%, transparent 72%); animation: agFloat 12s ease-in-out infinite reverse; }\r\n  #agora-tourism-landing .ag-hero__inner { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(390px, .94fr); align-items: center; gap: clamp(48px, 6vw, 88px); }\r\n  #agora-tourism-landing .ag-hero__copy { padding: 32px 0 74px; }\r\n  #agora-tourism-landing .ag-eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 24px; padding: 9px 13px; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; color: rgba(255,255,255,.82); background: rgba(255,255,255,.06); box-shadow: inset 0 1px rgba(255,255,255,.06); font-size: .77rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; backdrop-filter: blur(8px); }\r\n  #agora-tourism-landing .ag-eyebrow__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--ag-green); box-shadow: 0 0 0 5px rgba(32,199,122,.12), 0 0 18px rgba(32,199,122,.7); }\r\n  #agora-tourism-landing .ag-hero h1 span { color: transparent; background: linear-gradient(100deg, #fff 5%, #79ddff 42%, #91a4ff 78%, #fff); -webkit-background-clip: text; background-clip: text; background-size: 200% auto; animation: agGradient 8s linear infinite; }\r\n  #agora-tourism-landing .ag-lead { max-width: 710px; margin-bottom: 32px; color: rgba(255,255,255,.72); font-size: clamp(1.05rem, 1.6vw, 1.26rem); line-height: 1.65; }\r\n  #agora-tourism-landing .ag-hero__actions { display: flex; flex-wrap: wrap; gap: 13px; margin-bottom: 28px; }\r\n  #agora-tourism-landing .ag-proofline { display: flex; flex-wrap: wrap; gap: 15px 22px; color: rgba(255,255,255,.66); font-size: .88rem; }\r\n  #agora-tourism-landing .ag-proofline span { display: inline-flex; align-items: center; gap: 7px; }\r\n  #agora-tourism-landing .ag-proofline svg { color: var(--ag-cyan); width: 17px; height: 17px; }\r\n\r\n  \/* Phone demo *\/\r\n  #agora-tourism-landing .ag-demo-wrap { position: relative; display: flex; justify-content: center; align-items: center; min-height: 690px; padding-top: 20px; }\r\n  #agora-tourism-landing .ag-demo-glow { position: absolute; width: 480px; height: 480px; border-radius: 50%; background: radial-gradient(circle, rgba(59,115,255,.38), rgba(59,215,232,.12) 46%, transparent 72%); filter: blur(18px); animation: agPulse 5s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-demo-badge { position: absolute; z-index: 6; top: 72px; right: 2%; display: flex; align-items: center; gap: 8px; padding: 10px 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 14px; color: rgba(255,255,255,.88); background: rgba(7,20,45,.65); box-shadow: 0 10px 35px rgba(0,0,0,.25); font-size: .75rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; backdrop-filter: blur(12px); transform: rotate(3deg); }\r\n  #agora-tourism-landing .ag-demo-badge span, #agora-tourism-landing .ag-demo-note > span { width: 8px; height: 8px; border-radius: 50%; background: var(--ag-green); box-shadow: 0 0 0 4px rgba(32,199,122,.14); }\r\n  #agora-tourism-landing .ag-phone { position: relative; z-index: 3; width: min(390px, 100%); padding: 11px; border: 1px solid rgba(255,255,255,.24); border-radius: 48px; background: linear-gradient(145deg, #171b23, #05070a 48%, #242a33); box-shadow: 0 45px 100px rgba(0,0,0,.48), inset 0 0 0 2px #3a414c, inset 0 0 0 5px #090b0f; transform: perspective(1200px) rotateY(-3deg) rotateX(1deg); transition: transform .5s ease; }\r\n  #agora-tourism-landing .ag-phone:hover { transform: perspective(1200px) rotateY(0) rotateX(0) translateY(-5px); }\r\n  #agora-tourism-landing .ag-phone::before, #agora-tourism-landing .ag-phone::after { content: \"\"; position: absolute; left: -4px; width: 4px; border-radius: 3px 0 0 3px; background: linear-gradient(#3e4652, #0f1217); }\r\n  #agora-tourism-landing .ag-phone::before { top: 115px; height: 78px; }\r\n  #agora-tourism-landing .ag-phone::after { top: 205px; height: 52px; }\r\n  #agora-tourism-landing .ag-phone__speaker { position: absolute; z-index: 8; top: 18px; left: 50%; width: 116px; height: 25px; border-radius: 0 0 15px 15px; background: #05070a; transform: translateX(-50%); }\r\n  #agora-tourism-landing .ag-phone__screen { position: relative; overflow: hidden; height: 650px; border-radius: 38px; color: #12211a; background: #efeae2; }\r\n  #agora-tourism-landing .ag-phone__screen::before { content: \"\"; position: absolute; inset: 0; opacity: .23; background-image: radial-gradient(circle at 30% 20%, rgba(17,97,62,.18) 0 1px, transparent 1px), radial-gradient(circle at 70% 60%, rgba(17,97,62,.12) 0 1px, transparent 1px); background-size: 22px 22px, 28px 28px; pointer-events: none; }\r\n  #agora-tourism-landing .ag-chat-head { position: relative; z-index: 2; display: flex; align-items: center; height: 76px; padding: 15px 13px 10px 10px; color: #fff; background: linear-gradient(135deg, #075e54, #0a7b69); }\r\n  #agora-tourism-landing .ag-avatar { position: relative; display: grid; place-items: center; flex: 0 0 39px; width: 39px; height: 39px; border-radius: 50%; color: #fff; background: linear-gradient(145deg, var(--ag-blue), var(--ag-cyan)); box-shadow: 0 4px 12px rgba(0,0,0,.2); font-size: .72rem; font-weight: 850; letter-spacing: -.04em; }\r\n  #agora-tourism-landing .ag-avatar i { position: absolute; right: -1px; bottom: 1px; width: 10px; height: 10px; border: 2px solid #0a7465; border-radius: 50%; background: #35df8d; }\r\n  #agora-tourism-landing .ag-chat-title { display: flex; flex-direction: column; min-width: 0; margin-left: 9px; }\r\n  #agora-tourism-landing .ag-chat-title strong { font-size: .9rem; line-height: 1.2; }\r\n  #agora-tourism-landing .ag-chat-title small { display: flex; align-items: center; gap: 5px; color: rgba(255,255,255,.74); font-size: .65rem; white-space: nowrap; }\r\n  #agora-tourism-landing .ag-chat-title small span { width: 5px; height: 5px; border-radius: 50%; background: #55f0a1; }\r\n  #agora-tourism-landing .ag-chat-actions { display: flex; align-items: center; gap: 15px; margin-left: auto; color: rgba(255,255,255,.9); }\r\n  #agora-tourism-landing .ag-chat-actions svg { width: 18px; height: 18px; }\r\n  #agora-tourism-landing .ag-chat-actions > span { font-size: 1.5rem; line-height: .7; }\r\n  #agora-tourism-landing .ag-scenario-tabs { position: relative; z-index: 2; display: flex; gap: 5px; padding: 8px 9px; background: #f7faf8; border-bottom: 1px solid rgba(8,94,84,.08); }\r\n  #agora-tourism-landing .ag-scenario-tabs button { flex: 1; padding: 7px 4px; border: 0; border-radius: 8px; color: #60706a; background: transparent; font-size: .66rem; font-weight: 720; cursor: pointer; transition: .2s ease; }\r\n  #agora-tourism-landing .ag-scenario-tabs button[aria-selected=\"true\"] { color: #075e54; background: #e2f7ee; box-shadow: inset 0 0 0 1px rgba(7,94,84,.1); }\r\n  #agora-tourism-landing .ag-chat-body { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 7px; height: 486px; padding: 14px 11px 10px; overflow: hidden; }\r\n  #agora-tourism-landing .ag-chat-date { align-self: center; margin-bottom: 3px; padding: 4px 9px; border-radius: 8px; color: #596d67; background: rgba(255,255,255,.78); box-shadow: 0 1px 2px rgba(0,0,0,.07); font-size: .58rem; }\r\n  #agora-tourism-landing .ag-message { position: relative; max-width: 85%; padding: 8px 10px 7px; border-radius: 9px; box-shadow: 0 1px 1px rgba(0,0,0,.08); font-size: .69rem; line-height: 1.4; opacity: 0; transform: translateY(8px) scale(.98); animation: agMessageIn .32s cubic-bezier(.22,.8,.3,1) forwards; }\r\n  #agora-tourism-landing .ag-message--guest { align-self: flex-end; border-top-right-radius: 3px; background: #d9fdd3; }\r\n  #agora-tourism-landing .ag-message--bot { align-self: flex-start; border-top-left-radius: 3px; background: #fff; }\r\n  #agora-tourism-landing .ag-message__text { display: block; padding-right: 30px; }\r\n  #agora-tourism-landing .ag-message__time { position: absolute; right: 7px; bottom: 4px; color: #7e8b86; font-size: .5rem; white-space: nowrap; }\r\n  #agora-tourism-landing .ag-message--guest .ag-message__time::after { content: \"\u2713\u2713\"; margin-left: 3px; color: #37a7df; letter-spacing: -2px; }\r\n  #agora-tourism-landing .ag-typing { align-self: flex-start; display: flex; gap: 4px; padding: 11px 13px; border-radius: 9px 9px 9px 3px; background: #fff; box-shadow: 0 1px 1px rgba(0,0,0,.08); }\r\n  #agora-tourism-landing .ag-typing i { width: 6px; height: 6px; border-radius: 50%; background: #8b9b96; animation: agTyping 1s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-typing i:nth-child(2) { animation-delay: .16s; }\r\n  #agora-tourism-landing .ag-typing i:nth-child(3) { animation-delay: .32s; }\r\n  #agora-tourism-landing .ag-chat-compose { position: absolute; z-index: 3; left: 0; right: 0; bottom: 0; display: flex; align-items: center; gap: 7px; padding: 7px 8px 10px; background: rgba(239,234,226,.96); }\r\n  #agora-tourism-landing .ag-compose-box { display: flex; align-items: center; flex: 1; min-width: 0; height: 42px; padding: 0 12px; border-radius: 24px; color: #7d8a85; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.08); }\r\n  #agora-tourism-landing .ag-emoji { margin-right: 8px; font-size: 1rem; }\r\n  #agora-tourism-landing .ag-compose-text { flex: 1; min-width: 0; overflow: hidden; color: #4e5d58; font-size: .68rem; white-space: nowrap; text-overflow: ellipsis; }\r\n  #agora-tourism-landing .ag-compose-text:empty::after { content: \"Nachricht\"; color: #9ba6a2; }\r\n  #agora-tourism-landing .ag-paperclip { transform: rotate(-35deg); }\r\n  #agora-tourism-landing .ag-send { display: grid; place-items: center; flex: 0 0 42px; width: 42px; height: 42px; padding: 0; border: 0; border-radius: 50%; color: #fff; background: #18b981; box-shadow: 0 5px 14px rgba(24,185,129,.28); cursor: pointer; }\r\n  #agora-tourism-landing .ag-send svg { width: 19px; height: 19px; }\r\n  #agora-tourism-landing .ag-control-play { display: none; }\r\n  #agora-tourism-landing .ag-send.is-paused .ag-control-pause { display: none; }\r\n  #agora-tourism-landing .ag-send.is-paused .ag-control-play { display: block; }\r\n  #agora-tourism-landing .ag-demo-note { position: absolute; z-index: 5; left: 0; bottom: 65px; display: flex; align-items: center; gap: 9px; max-width: 250px; padding: 11px 13px; border: 1px solid rgba(255,255,255,.15); border-radius: 14px; color: rgba(255,255,255,.78); background: rgba(7,20,45,.72); box-shadow: 0 18px 45px rgba(0,0,0,.24); font-size: .67rem; line-height: 1.45; backdrop-filter: blur(12px); transform: rotate(-2deg); }\r\n\r\n  \/* Stats *\/\r\n  #agora-tourism-landing .ag-stats { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(255,255,255,.12); }\r\n  #agora-tourism-landing .ag-stat { position: relative; padding: 27px 28px 31px; }\r\n  #agora-tourism-landing .ag-stat + .ag-stat::before { content: \"\"; position: absolute; left: 0; top: 25%; width: 1px; height: 50%; background: rgba(255,255,255,.12); }\r\n  #agora-tourism-landing .ag-stat strong { display: block; margin-bottom: 4px; color: #fff; font-size: clamp(1.55rem, 3vw, 2.25rem); line-height: 1; letter-spacing: -.04em; }\r\n  #agora-tourism-landing .ag-stat span { color: rgba(255,255,255,.57); font-size: .78rem; }\r\n\r\n  \/* Positioning *\/\r\n  #agora-tourism-landing .ag-positioning { background: #fff; }\r\n  #agora-tourism-landing .ag-value-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }\r\n  #agora-tourism-landing .ag-value-card { position: relative; min-height: 265px; padding: 30px 26px; border: 1px solid var(--ag-line); border-radius: 24px; background: linear-gradient(155deg, #fff, #f8faff); box-shadow: 0 12px 35px rgba(18,31,63,.055); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; overflow: hidden; }\r\n  #agora-tourism-landing .ag-value-card::after { content: \"\"; position: absolute; width: 110px; height: 110px; right: -55px; bottom: -55px; border-radius: 50%; background: radial-gradient(circle, rgba(59,115,255,.16), transparent 70%); transition: transform .4s ease; }\r\n  #agora-tourism-landing .ag-value-card:hover { transform: translateY(-7px); border-color: rgba(59,115,255,.22); box-shadow: 0 24px 55px rgba(18,31,63,.12); }\r\n  #agora-tourism-landing .ag-value-card:hover::after { transform: scale(1.6); }\r\n  #agora-tourism-landing .ag-icon { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 22px; border-radius: 14px; color: var(--ag-blue); background: linear-gradient(145deg, #eef3ff, #e8fbff); box-shadow: inset 0 0 0 1px rgba(59,115,255,.08); }\r\n  #agora-tourism-landing .ag-icon svg { width: 24px; height: 24px; }\r\n  #agora-tourism-landing .ag-value-card p { margin-bottom: 0; font-size: .93rem; }\r\n  #agora-tourism-landing .ag-internal-chat { position: relative; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(280px, .82fr); gap: clamp(24px, 4vw, 46px); align-items: center; margin-top: 28px; padding: clamp(28px, 4.2vw, 46px); border: 1px solid rgba(59,115,255,.16); border-radius: 28px; color: #fff; background: radial-gradient(circle at 88% 12%, rgba(59,215,232,.22), transparent 32%), linear-gradient(135deg, #07142d, #102a60 58%, #173f88); box-shadow: 0 28px 70px rgba(18,31,63,.18); overflow: hidden; }\r\n  #agora-tourism-landing .ag-internal-chat::after { content: \"\"; position: absolute; right: -80px; bottom: -110px; width: 300px; height: 300px; border-radius: 50%; border: 55px solid rgba(255,255,255,.045); pointer-events: none; }\r\n  #agora-tourism-landing .ag-internal-chat__badge { position: absolute; right: 22px; top: 18px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: #bdf2ff; background: rgba(255,255,255,.07); font-size: .68rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }\r\n  #agora-tourism-landing .ag-internal-chat__copy, #agora-tourism-landing .ag-internal-chat__points, #agora-tourism-landing .ag-internal-chat small { position: relative; z-index: 1; }\r\n  #agora-tourism-landing .ag-internal-chat .ag-kicker { color: #73ddff; }\r\n  #agora-tourism-landing .ag-internal-chat h3 { max-width: 720px; margin-bottom: 18px; color: #fff; font-size: clamp(1.8rem, 3vw, 3rem); line-height: 1.04; letter-spacing: -.045em; }\r\n  #agora-tourism-landing .ag-internal-chat p { max-width: 760px; margin: 0 0 12px; color: rgba(255,255,255,.78); font-size: .98rem; line-height: 1.62; }\r\n  #agora-tourism-landing .ag-internal-chat__points { display: grid; gap: 12px; align-self: stretch; align-content: center; }\r\n  #agora-tourism-landing .ag-internal-chat__points span { display: flex; align-items: flex-start; gap: 11px; padding: 14px 15px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; color: rgba(255,255,255,.88); background: rgba(255,255,255,.07); box-shadow: inset 0 1px 0 rgba(255,255,255,.05); font-size: .86rem; font-weight: 700; line-height: 1.42; }\r\n  #agora-tourism-landing .ag-internal-chat__points svg { flex: 0 0 20px; width: 20px; height: 20px; margin-top: 1px; padding: 3px; border-radius: 50%; color: #07142d; background: #73ddff; }\r\n  #agora-tourism-landing .ag-internal-chat small { grid-column: 1 \/ -1; display: block; max-width: 950px; margin-top: -6px; color: rgba(255,255,255,.55); font-size: .7rem; line-height: 1.5; }\r\n  #agora-tourism-landing .ag-claim { display: grid; grid-template-columns: auto 1fr; gap: 22px; margin-top: 28px; padding: 28px 32px; border: 1px solid rgba(59,115,255,.14); border-radius: 24px; background: linear-gradient(105deg, rgba(59,115,255,.06), rgba(59,215,232,.06)); }\r\n  #agora-tourism-landing .ag-claim__mark { color: var(--ag-blue); font-family: Georgia, serif; font-size: 4.2rem; line-height: .8; }\r\n  #agora-tourism-landing .ag-claim p { margin-bottom: 10px; color: var(--ag-ink); font-size: 1.12rem; font-weight: 680; line-height: 1.55; }\r\n  #agora-tourism-landing .ag-claim small { display: block; color: #778197; font-size: .73rem; line-height: 1.5; }\r\n  #agora-tourism-landing .ag-local-seo { margin-top: 34px; padding: clamp(28px, 4.2vw, 48px); border: 1px solid rgba(16,24,40,.08); border-radius: 28px; background: linear-gradient(155deg, #f8faff, #fff); box-shadow: 0 18px 50px rgba(18,31,63,.07); }\r\n  #agora-tourism-landing .ag-local-seo__intro { max-width: 860px; margin-bottom: 28px; }\r\n  #agora-tourism-landing .ag-local-seo__intro h2 { max-width: 820px; margin-bottom: 16px; font-size: clamp(1.8rem, 3.3vw, 3rem); }\r\n  #agora-tourism-landing .ag-local-seo__intro p { margin-bottom: 0; font-size: 1.02rem; }\r\n  #agora-tourism-landing .ag-local-seo__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }\r\n  #agora-tourism-landing .ag-local-seo__grid article { min-width: 0; padding: 24px 22px; border: 1px solid var(--ag-line); border-radius: 20px; background: rgba(255,255,255,.82); }\r\n  #agora-tourism-landing .ag-local-seo__grid .ag-icon { margin-bottom: 18px; }\r\n  #agora-tourism-landing .ag-local-seo__grid h3 { font-size: 1.1rem; letter-spacing: 0; }\r\n  #agora-tourism-landing .ag-local-seo__grid p { margin-bottom: 0; font-size: .88rem; line-height: 1.58; }\r\n\r\n  \/* Audiences *\/\r\n  #agora-tourism-landing .ag-audiences { background: var(--ag-soft); }\r\n  #agora-tourism-landing .ag-audiences::before { content: \"\"; position: absolute; right: -180px; top: 80px; width: 420px; height: 420px; border-radius: 50%; border: 70px solid rgba(59,115,255,.035); }\r\n  #agora-tourism-landing .ag-audience-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }\r\n  #agora-tourism-landing .ag-audience-card { position: relative; overflow: hidden; padding: 34px; border: 1px solid rgba(16,24,40,.08); border-radius: var(--ag-radius); background: #fff; box-shadow: 0 16px 44px rgba(18,31,63,.07); }\r\n  #agora-tourism-landing .ag-audience-card::before { content: \"\"; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: var(--card-accent, var(--ag-blue)); }\r\n  #agora-tourism-landing .ag-audience-card--hotel { --card-accent: #3b73ff; }\r\n  #agora-tourism-landing .ag-audience-card--destination { --card-accent: #16bfa7; }\r\n  #agora-tourism-landing .ag-audience-card--ski { --card-accent: #735bff; }\r\n  #agora-tourism-landing .ag-audience-card--school { --card-accent: #ff9f43; }\r\n  #agora-tourism-landing .ag-audience-top { display: flex; align-items: center; gap: 13px; margin-bottom: 20px; }\r\n  #agora-tourism-landing .ag-audience-top .ag-icon { margin: 0; color: var(--card-accent); background: color-mix(in srgb, var(--card-accent) 9%, white); }\r\n  #agora-tourism-landing .ag-audience-top > span { color: var(--card-accent); font-size: .76rem; font-weight: 820; letter-spacing: .09em; text-transform: uppercase; }\r\n  #agora-tourism-landing .ag-audience-card h3 { max-width: 470px; font-size: clamp(1.4rem, 2.3vw, 2rem); }\r\n  #agora-tourism-landing .ag-audience-card ul { display: grid; gap: 9px; margin: 22px 0; padding: 0; list-style: none; }\r\n  #agora-tourism-landing .ag-audience-card li { position: relative; padding-left: 0; color: var(--ag-muted); font-size: .92rem; }\r\n  #agora-tourism-landing .ag-audience-card li::before { content: \"\"; position: absolute; left: 0; top: .7em; width: 8px; height: 8px; border-radius: 50%; background: var(--card-accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--card-accent) 13%, transparent); }\r\n  #agora-tourism-landing .ag-card-result { padding: 15px 17px; border-radius: 14px; color: #3f4b61; background: color-mix(in srgb, var(--card-accent) 6%, white); font-size: .85rem; font-weight: 650; }\r\n\r\n  \/* Integrations *\/\r\n  #agora-tourism-landing .ag-integrations { color: #fff; background: linear-gradient(135deg, var(--ag-navy), #0e2148); }\r\n  #agora-tourism-landing .ag-integrations::before { content: \"\"; position: absolute; inset: 0; opacity: .16; background-image: radial-gradient(rgba(255,255,255,.17) 1px, transparent 1px); background-size: 26px 26px; mask-image: linear-gradient(to right, transparent, #000 35%, #000 65%, transparent); }\r\n  #agora-tourism-landing .ag-integrations__intro { display: grid; grid-template-columns: 1.15fr .85fr; gap: 25px 60px; align-items: end; margin-bottom: 48px; }\r\n  #agora-tourism-landing .ag-integrations__intro .ag-kicker { grid-column: 1 \/ -1; margin-bottom: -4px; color: #73ddff; }\r\n  #agora-tourism-landing .ag-integrations__intro h2 { margin-bottom: 0; color: #fff; }\r\n  #agora-tourism-landing .ag-integrations__intro > p { margin-bottom: 0; color: rgba(255,255,255,.65); }\r\n  #agora-tourism-landing .ag-mini-metrics { grid-column: 1 \/ -1; display: flex; flex-wrap: wrap; gap: 10px; }\r\n  #agora-tourism-landing .ag-mini-metrics span { padding: 9px 13px; border: 1px solid rgba(255,255,255,.12); border-radius: 10px; color: rgba(255,255,255,.65); background: rgba(255,255,255,.05); font-size: .75rem; }\r\n  #agora-tourism-landing .ag-mini-metrics b { color: #fff; }\r\n  #agora-tourism-landing .ag-integration-panel { overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 28px; background: rgba(255,255,255,.055); box-shadow: 0 35px 75px rgba(0,0,0,.2); backdrop-filter: blur(14px); }\r\n  #agora-tourism-landing .ag-integration-tabs { display: flex; gap: 4px; padding: 9px; overflow-x: auto; border-bottom: 1px solid rgba(255,255,255,.1); scrollbar-width: none; }\r\n  #agora-tourism-landing .ag-integration-tabs::-webkit-scrollbar { display: none; }\r\n  #agora-tourism-landing .ag-integration-tabs button { flex: 0 0 auto; padding: 11px 15px; border: 0; border-radius: 12px; color: rgba(255,255,255,.54); background: transparent; font-size: .77rem; font-weight: 720; white-space: nowrap; cursor: pointer; transition: .2s ease; }\r\n  #agora-tourism-landing .ag-integration-tabs button:hover { color: #fff; background: rgba(255,255,255,.06); }\r\n  #agora-tourism-landing .ag-integration-tabs button[aria-selected=\"true\"] { color: #fff; background: linear-gradient(135deg, rgba(59,115,255,.65), rgba(106,92,255,.55)); box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }\r\n  #agora-tourism-landing .ag-integration-content { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 11px; min-height: 190px; padding: 34px; }\r\n  #agora-tourism-landing .ag-integration-content[hidden] { display: none !important; }\r\n  #agora-tourism-landing .ag-chip { display: inline-flex; align-items: center; gap: 9px; padding: 11px 14px; border: 1px solid rgba(255,255,255,.11); border-radius: 12px; color: rgba(255,255,255,.78); background: rgba(255,255,255,.055); font-size: .78rem; transition: transform .2s ease, background .2s ease; }\r\n  #agora-tourism-landing .ag-chip:hover { transform: translateY(-2px); background: rgba(255,255,255,.09); }\r\n  #agora-tourism-landing .ag-chip i { width: 7px; height: 7px; border-radius: 50%; background: #74d8ff; box-shadow: 0 0 0 4px rgba(116,216,255,.1); }\r\n  #agora-tourism-landing .ag-chip--active { border-color: rgba(40,217,142,.22); background: rgba(40,217,142,.09); }\r\n  #agora-tourism-landing .ag-chip--active i { background: #45e69b; box-shadow: 0 0 0 4px rgba(69,230,155,.12), 0 0 12px rgba(69,230,155,.4); }\r\n  #agora-tourism-landing .ag-chip--roadmap i { background: #b699ff; }\r\n  #agora-tourism-landing .ag-chip--custom { border-style: dashed; color: #fff; }\r\n  #agora-tourism-landing .ag-integration-foot { display: flex; align-items: center; gap: 16px; padding: 20px 27px; border-top: 1px solid rgba(255,255,255,.1); background: rgba(0,0,0,.1); }\r\n  #agora-tourism-landing .ag-integration-foot > svg { flex: 0 0 28px; width: 28px; height: 28px; color: var(--ag-cyan); }\r\n  #agora-tourism-landing .ag-integration-foot p { margin: 0; color: rgba(255,255,255,.62); font-size: .81rem; }\r\n  #agora-tourism-landing .ag-integration-foot strong { color: #fff; }\r\n\r\n  \/* Network *\/\r\n  #agora-tourism-landing .ag-network { background: #fff; }\r\n  #agora-tourism-landing .ag-network__grid { display: grid; grid-template-columns: 1fr .95fr; gap: clamp(50px, 8vw, 100px); align-items: center; }\r\n  #agora-tourism-landing .ag-network__visual { position: relative; min-height: 540px; }\r\n  #agora-tourism-landing .ag-network-glow { position: absolute; inset: 12% 8%; border-radius: 50%; background: radial-gradient(circle, rgba(59,115,255,.11), transparent 68%); }\r\n  #agora-tourism-landing .ag-node { position: absolute; z-index: 3; display: flex; align-items: center; gap: 10px; padding: 14px 16px; border: 1px solid rgba(16,24,40,.09); border-radius: 16px; background: rgba(255,255,255,.92); box-shadow: 0 16px 42px rgba(18,31,63,.12); backdrop-filter: blur(9px); }\r\n  #agora-tourism-landing .ag-node svg { width: 23px; height: 23px; color: var(--ag-blue); }\r\n  #agora-tourism-landing .ag-node span { color: var(--ag-ink); font-size: .82rem; font-weight: 750; }\r\n  #agora-tourism-landing .ag-node small { display: block; color: #7a8498; font-size: .58rem; }\r\n  #agora-tourism-landing .ag-node--destination { top: 3%; left: 16%; display: grid; grid-template-columns: auto 1fr; }\r\n  #agora-tourism-landing .ag-node--destination small { grid-column: 2; }\r\n  #agora-tourism-landing .ag-node--agora { top: 39%; left: 50%; display: grid; place-items: center; width: 170px; height: 170px; padding: 0; border: 0; border-radius: 50%; color: #fff; background: linear-gradient(145deg, var(--ag-blue), var(--ag-blue-2) 62%, #3bd7e8); box-shadow: 0 28px 70px rgba(59,115,255,.31), inset 0 0 0 1px rgba(255,255,255,.3); transform: translate(-50%, -50%); animation: agNodePulse 4s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-node--agora::before { content: \"\"; position: absolute; inset: -17px; border: 1px dashed rgba(59,115,255,.24); border-radius: 50%; animation: agSpin 18s linear infinite; }\r\n  #agora-tourism-landing .ag-node--agora b { margin-top: 25px; font-size: 2rem; letter-spacing: -.07em; }\r\n  #agora-tourism-landing .ag-node--agora span { margin-top: -26px; color: rgba(255,255,255,.75); font-size: .64rem; font-weight: 600; }\r\n  #agora-tourism-landing .ag-node--hotel { right: 1%; top: 23%; }\r\n  #agora-tourism-landing .ag-node--ski { right: 2%; bottom: 16%; }\r\n  #agora-tourism-landing .ag-node--school { left: 4%; bottom: 16%; }\r\n  #agora-tourism-landing .ag-line { position: absolute; z-index: 1; height: 2px; background: linear-gradient(90deg, transparent, rgba(59,115,255,.35), transparent); transform-origin: left center; overflow: hidden; }\r\n  #agora-tourism-landing .ag-line::after { content: \"\"; position: absolute; width: 45px; height: 100%; background: linear-gradient(90deg, transparent, #3bd7e8, transparent); animation: agFlow 2.2s linear infinite; }\r\n  #agora-tourism-landing .ag-line--one { width: 190px; top: 25%; left: 30%; transform: rotate(39deg); }\r\n  #agora-tourism-landing .ag-line--two { width: 180px; top: 40%; left: 55%; transform: rotate(-21deg); }\r\n  #agora-tourism-landing .ag-line--three { width: 185px; top: 50%; left: 55%; transform: rotate(34deg); }\r\n  #agora-tourism-landing .ag-line--four { width: 185px; top: 52%; left: 21%; transform: rotate(143deg); }\r\n  #agora-tourism-landing .ag-network__copy p { font-size: 1.03rem; }\r\n  #agora-tourism-landing .ag-check-list { display: grid; gap: 13px; margin: 26px 0 28px; padding: 0; list-style: none; }\r\n  #agora-tourism-landing .ag-check-list li { display: flex; align-items: flex-start; gap: 11px; color: var(--ag-muted); }\r\n  #agora-tourism-landing .ag-check-list li::before { content: none !important; display: none !important; }\r\n  #agora-tourism-landing .ag-check-list li > svg { flex: 0 0 20px; width: 20px; height: 20px; margin-top: 3px; padding: 3px; border-radius: 50%; color: #fff; background: var(--ag-green); }\r\n  #agora-tourism-landing .ag-check-list b { color: var(--ag-ink); }\r\n  #agora-tourism-landing .ag-text-link { display: inline-flex; align-items: center; gap: 9px; color: var(--ag-blue); font-weight: 750; }\r\n  #agora-tourism-landing .ag-text-link svg { width: 19px; height: 19px; transition: transform .2s ease; }\r\n  #agora-tourism-landing .ag-text-link:hover svg { transform: translateX(4px); }\r\n\r\n  \/* Omnichannel *\/\r\n  #agora-tourism-landing .ag-omnichannel { overflow: hidden; background: linear-gradient(180deg, #f6f8fd, #eef3fb); }\r\n  #agora-tourism-landing .ag-channel-orbit { position: relative; width: min(700px, 100%); height: 590px; margin: -25px auto 0; }\r\n  #agora-tourism-landing .ag-orbit { position: absolute; left: 50%; top: 50%; border: 1px dashed rgba(59,115,255,.2); border-radius: 50%; transform: translate(-50%, -50%); }\r\n  #agora-tourism-landing .ag-orbit--outer { width: 530px; height: 530px; animation: agSpinCenter 45s linear infinite; }\r\n  #agora-tourism-landing .ag-orbit--inner { width: 335px; height: 335px; border-style: solid; border-color: rgba(59,115,255,.09); }\r\n  #agora-tourism-landing .ag-channel-center { position: absolute; z-index: 3; left: 50%; top: 50%; display: grid; place-items: center; width: 180px; height: 180px; border-radius: 50%; color: #fff; background: linear-gradient(145deg, var(--ag-navy), #173f88); box-shadow: 0 30px 70px rgba(23,63,136,.26), inset 0 0 0 1px rgba(255,255,255,.16); transform: translate(-50%, -50%); }\r\n  #agora-tourism-landing .ag-channel-center::after { content: \"\"; position: absolute; inset: -17px; border: 1px solid rgba(59,115,255,.1); border-radius: 50%; }\r\n  #agora-tourism-landing .ag-channel-center b { margin-top: 38px; font-size: 2.2rem; letter-spacing: -.08em; }\r\n  #agora-tourism-landing .ag-channel-center span { margin-top: -39px; color: rgba(255,255,255,.62); font-size: .67rem; letter-spacing: .12em; text-transform: uppercase; }\r\n  #agora-tourism-landing .ag-channel { position: absolute; z-index: 4; display: flex; align-items: center; gap: 9px; padding: 13px 16px; border: 1px solid rgba(16,24,40,.08); border-radius: 15px; color: var(--ag-ink); background: rgba(255,255,255,.92); box-shadow: 0 16px 42px rgba(18,31,63,.11); font-size: .78rem; font-weight: 740; backdrop-filter: blur(8px); animation: agFloat 6s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-channel svg { width: 22px; height: 22px; color: var(--ag-blue); }\r\n  #agora-tourism-landing .ag-channel--web { left: 5%; top: 18%; }\r\n  #agora-tourism-landing .ag-channel--wa { right: 2%; top: 18%; animation-delay: -1s; }\r\n  #agora-tourism-landing .ag-channel--wa svg { color: #18b981; }\r\n  #agora-tourism-landing .ag-channel--mail { right: 0; top: 52%; animation-delay: -2s; }\r\n  #agora-tourism-landing .ag-channel--phone { right: 15%; bottom: 5%; animation-delay: -3s; }\r\n  #agora-tourism-landing .ag-channel--social { left: 12%; bottom: 5%; animation-delay: -4s; }\r\n  #agora-tourism-landing .ag-channel--booking { left: 0; top: 52%; animation-delay: -5s; }\r\n  #agora-tourism-landing .ag-omni-benefits { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: -12px; }\r\n  #agora-tourism-landing .ag-omni-benefits > div { display: flex; align-items: center; gap: 14px; padding: 20px; border: 1px solid var(--ag-line); border-radius: 18px; background: rgba(255,255,255,.72); }\r\n  #agora-tourism-landing .ag-omni-benefits > div > svg { flex: 0 0 26px; width: 26px; height: 26px; color: var(--ag-blue); }\r\n  #agora-tourism-landing .ag-omni-benefits p { display: flex; flex-direction: column; margin: 0; line-height: 1.35; }\r\n  #agora-tourism-landing .ag-omni-benefits b { color: var(--ag-ink); font-size: .88rem; }\r\n  #agora-tourism-landing .ag-omni-benefits span { margin-top: 3px; color: var(--ag-muted); font-size: .72rem; }\r\n\r\n  \/* Control *\/\r\n  #agora-tourism-landing .ag-control { background: #fff; }\r\n  #agora-tourism-landing .ag-control__grid { display: grid; grid-template-columns: 1fr .86fr; gap: clamp(48px, 8vw, 100px); align-items: center; }\r\n  #agora-tourism-landing .ag-control__copy > p { max-width: 650px; font-size: 1.03rem; }\r\n  #agora-tourism-landing .ag-control-steps { display: grid; gap: 12px; margin-top: 30px; }\r\n  #agora-tourism-landing .ag-control-steps > div { display: flex; gap: 15px; padding: 17px 18px; border: 1px solid var(--ag-line); border-radius: 17px; background: #fff; transition: transform .25s ease, box-shadow .25s ease; }\r\n  #agora-tourism-landing .ag-control-steps > div:hover { transform: translateX(5px); box-shadow: 0 14px 34px rgba(18,31,63,.08); }\r\n  #agora-tourism-landing .ag-control-steps > div > span { display: grid; place-items: center; flex: 0 0 35px; width: 35px; height: 35px; border-radius: 10px; color: var(--ag-blue); background: #edf3ff; font-size: .7rem; font-weight: 850; }\r\n  #agora-tourism-landing .ag-control-steps p { display: flex; flex-direction: column; margin: 0; }\r\n  #agora-tourism-landing .ag-control-steps b { color: var(--ag-ink); }\r\n  #agora-tourism-landing .ag-control-steps small { margin-top: 3px; color: var(--ag-muted); font-size: .77rem; }\r\n  #agora-tourism-landing .ag-control__card { position: relative; padding: 32px; border: 1px solid var(--ag-line); border-radius: 28px; background: linear-gradient(150deg, #f8faff, #fff); box-shadow: var(--ag-shadow); }\r\n  #agora-tourism-landing .ag-control__card::before { content: \"\"; position: absolute; inset: -8px 18px auto; height: 18px; border-radius: 18px 18px 0 0; background: linear-gradient(90deg, var(--ag-blue), var(--ag-cyan)); z-index: -1; opacity: .55; }\r\n  #agora-tourism-landing .ag-security-head { display: flex; align-items: center; gap: 15px; padding-bottom: 22px; border-bottom: 1px solid var(--ag-line); }\r\n  #agora-tourism-landing .ag-security-head .ag-icon { margin: 0; }\r\n  #agora-tourism-landing .ag-security-head > div:last-child { display: flex; flex-direction: column; }\r\n  #agora-tourism-landing .ag-security-head span { color: var(--ag-blue); font-size: .7rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }\r\n  #agora-tourism-landing .ag-security-head strong { margin-top: 2px; font-size: 1.03rem; }\r\n  #agora-tourism-landing .ag-control__card .ag-check-list { margin-bottom: 20px; }\r\n  #agora-tourism-landing .ag-control__card .ag-check-list li { font-size: .83rem; }\r\n  #agora-tourism-landing .ag-custom-box { padding: 19px; border: 1px solid rgba(59,115,255,.13); border-radius: 17px; background: linear-gradient(120deg, rgba(59,115,255,.08), rgba(59,215,232,.08)); }\r\n  #agora-tourism-landing .ag-custom-box span { display: inline-block; margin-bottom: 6px; color: var(--ag-blue); font-size: .71rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }\r\n  #agora-tourism-landing .ag-custom-box p { margin: 0; color: #465268; font-size: .79rem; }\r\n\r\n  \/* Testimonials *\/\r\n  #agora-tourism-landing .ag-testimonials { background: var(--ag-soft); }\r\n  #agora-tourism-landing .ag-testimonial-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 22px; }\r\n  #agora-tourism-landing .ag-quote { position: relative; display: flex; flex-direction: column; min-height: 355px; padding: 36px; border: 1px solid var(--ag-line); border-radius: 27px; background: #fff; box-shadow: 0 18px 48px rgba(18,31,63,.07); }\r\n  #agora-tourism-landing .ag-quote--featured { color: #fff; background: linear-gradient(145deg, var(--ag-navy), #153773); box-shadow: 0 28px 70px rgba(9,30,70,.22); }\r\n  #agora-tourism-landing .ag-quote::after { content: \"\u201c\"; position: absolute; right: 28px; top: 8px; color: rgba(59,115,255,.09); font-family: Georgia, serif; font-size: 8rem; line-height: 1; }\r\n  #agora-tourism-landing .ag-quote--featured::after { color: rgba(255,255,255,.08); }\r\n  #agora-tourism-landing .ag-stars { display: flex; gap: 3px; margin-bottom: 24px; color: #ffbd45; }\r\n  #agora-tourism-landing .ag-stars svg { width: 17px; height: 17px; }\r\n  #agora-tourism-landing .ag-quote blockquote { position: relative; z-index: 2; margin: 0 0 28px; color: var(--ag-ink); font-size: clamp(1.05rem, 1.8vw, 1.3rem); font-weight: 610; line-height: 1.62; }\r\n  #agora-tourism-landing .ag-quote--featured blockquote { color: rgba(255,255,255,.9); }\r\n  #agora-tourism-landing .ag-quote footer { display: flex; align-items: center; gap: 12px; margin-top: auto; }\r\n  #agora-tourism-landing .ag-quote-avatar { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; color: var(--ag-blue); background: #eaf1ff; font-size: .76rem; font-weight: 850; }\r\n  #agora-tourism-landing .ag-quote-avatar--logo { overflow: hidden; padding: 0; background: #fff; box-shadow: inset 0 0 0 1px rgba(16,24,40,.08); }\r\n  #agora-tourism-landing .ag-quote-avatar--logo img { width: 100%; height: 100%; object-fit: cover; }\r\n  #agora-tourism-landing .ag-quote--featured .ag-quote-avatar { color: #fff; background: rgba(255,255,255,.13); }\r\n  #agora-tourism-landing .ag-quote--featured .ag-quote-avatar--logo { background: #fff; box-shadow: 0 0 0 2px rgba(255,255,255,.16); }\r\n  #agora-tourism-landing .ag-quote footer > div:last-child { display: flex; flex-direction: column; }\r\n  #agora-tourism-landing .ag-quote footer strong { font-size: .85rem; }\r\n  #agora-tourism-landing .ag-quote footer span { color: var(--ag-muted); font-size: .72rem; }\r\n  #agora-tourism-landing .ag-quote--featured footer span { color: rgba(255,255,255,.58); }\r\n  #agora-tourism-landing .ag-trust-strip { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 13px; margin-top: 27px; padding: 17px 20px; color: #6b7589; font-size: .72rem; }\r\n  #agora-tourism-landing .ag-trust-strip > span { font-weight: 650; }\r\n  #agora-tourism-landing .ag-trust-strip b { color: #26334a; }\r\n  #agora-tourism-landing .ag-trust-strip i { width: 4px; height: 4px; border-radius: 50%; background: #aab2c0; }\r\n\r\n  \/* Managed *\/\r\n  #agora-tourism-landing .ag-managed { background: #fff; }\r\n  #agora-tourism-landing .ag-managed__grid { display: grid; grid-template-columns: 1fr .9fr; gap: clamp(50px, 8vw, 100px); align-items: center; }\r\n  #agora-tourism-landing .ag-managed__copy > p { font-size: 1.03rem; }\r\n  #agora-tourism-landing .ag-managed__visual { position: relative; }\r\n  #agora-tourism-landing .ag-managed__visual::before { content: \"\"; position: absolute; inset: -40px; border-radius: 50%; background: radial-gradient(circle, rgba(59,115,255,.12), transparent 68%); }\r\n  #agora-tourism-landing .ag-dashboard { position: relative; z-index: 2; padding: 26px; border: 1px solid rgba(16,24,40,.08); border-radius: 25px; background: #fff; box-shadow: 0 35px 80px rgba(18,31,63,.16); transform: rotate(1deg); }\r\n  #agora-tourism-landing .ag-dash-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 22px; padding-bottom: 17px; border-bottom: 1px solid var(--ag-line); }\r\n  #agora-tourism-landing .ag-dash-head b { font-size: .9rem; }\r\n  #agora-tourism-landing .ag-dash-head span { display: flex; align-items: center; gap: 6px; padding: 5px 8px; border-radius: 7px; color: #148a58; background: #e8f9f1; font-size: .62rem; font-weight: 750; }\r\n  #agora-tourism-landing .ag-dash-head i { width: 6px; height: 6px; border-radius: 50%; background: #20c77a; animation: agPulseDot 1.8s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-dash-score { margin-bottom: 18px; padding: 17px; border-radius: 15px; background: #f5f8fd; }\r\n  #agora-tourism-landing .ag-dash-score > div:first-child { display: flex; justify-content: space-between; margin-bottom: 9px; }\r\n  #agora-tourism-landing .ag-dash-score span { color: var(--ag-muted); font-size: .72rem; }\r\n  #agora-tourism-landing .ag-dash-score strong { color: var(--ag-blue); font-size: 1.15rem; }\r\n  #agora-tourism-landing .ag-progress { height: 7px; border-radius: 99px; background: #dce5f3; overflow: hidden; }\r\n  #agora-tourism-landing .ag-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--ag-blue), var(--ag-cyan)); animation: agProgress 2s ease-out both; }\r\n  #agora-tourism-landing .ag-dash-row { display: flex; justify-content: space-between; padding: 12px 2px; border-bottom: 1px solid var(--ag-line); color: var(--ag-muted); font-size: .72rem; }\r\n  #agora-tourism-landing .ag-dash-row span { display: flex; align-items: center; gap: 8px; }\r\n  #agora-tourism-landing .ag-dash-row b { color: var(--ag-ink); }\r\n  #agora-tourism-landing .ag-dot { width: 8px; height: 8px; border-radius: 50%; }\r\n  #agora-tourism-landing .ag-dot--green { background: #20c77a; }\r\n  #agora-tourism-landing .ag-dot--blue { background: #3b73ff; }\r\n  #agora-tourism-landing .ag-dot--orange { background: #ff9f43; }\r\n  #agora-tourism-landing .ag-dash-insight { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px; margin-top: 17px; padding: 14px; border-radius: 14px; color: #fff; background: linear-gradient(135deg, var(--ag-blue), var(--ag-blue-2)); }\r\n  #agora-tourism-landing .ag-dash-insight > svg { width: 22px; height: 22px; }\r\n  #agora-tourism-landing .ag-dash-insight p { display: flex; flex-direction: column; margin: 0; color: #fff; line-height: 1.3; }\r\n  #agora-tourism-landing .ag-dash-insight b { font-size: .71rem; }\r\n  #agora-tourism-landing .ag-dash-insight span { color: rgba(255,255,255,.68); font-size: .58rem; }\r\n  #agora-tourism-landing .ag-dash-insight button { padding: 7px 9px; border: 1px solid rgba(255,255,255,.22); border-radius: 8px; color: #fff; background: rgba(255,255,255,.12); font-size: .57rem; font-weight: 750; }\r\n\r\n  \/* Future *\/\r\n  #agora-tourism-landing .ag-future { color: #fff; background: linear-gradient(145deg, #07142d, #0d234d); }\r\n  #agora-tourism-landing .ag-future .ag-section-head h2 { color: #fff; }\r\n  #agora-tourism-landing .ag-future .ag-kicker { color: #74dcff; }\r\n  #agora-tourism-landing .ag-future-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }\r\n  #agora-tourism-landing .ag-future-card { display: grid; grid-template-columns: 200px 1fr; gap: 28px; align-items: center; min-height: 330px; padding: 30px; border: 1px solid rgba(255,255,255,.12); border-radius: 28px; background: rgba(255,255,255,.055); box-shadow: 0 24px 65px rgba(0,0,0,.17); overflow: hidden; }\r\n  #agora-tourism-landing .ag-future-card h3 { color: #fff; font-size: clamp(1.35rem, 2.2vw, 1.85rem); }\r\n  #agora-tourism-landing .ag-future-card p { margin-bottom: 0; color: rgba(255,255,255,.61); font-size: .88rem; }\r\n  #agora-tourism-landing .ag-card-label { display: inline-block; margin-bottom: 10px; color: #78ddff; font-size: .68rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }\r\n  #agora-tourism-landing .ag-digital-human { position: relative; height: 265px; border-radius: 100px 100px 26px 26px; background: radial-gradient(circle at 50% 35%, rgba(59,215,232,.28), transparent 40%), linear-gradient(180deg, rgba(59,115,255,.12), rgba(59,115,255,.02)); overflow: hidden; }\r\n  #agora-tourism-landing .ag-human-halo { position: absolute; left: 50%; top: 24px; width: 135px; height: 135px; border: 1px solid rgba(87,222,255,.35); border-radius: 50%; box-shadow: 0 0 40px rgba(59,215,232,.14); transform: translateX(-50%); animation: agNodePulse 3.5s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-human-head { position: absolute; left: 50%; top: 57px; width: 78px; height: 96px; transform: translateX(-50%); }\r\n  #agora-tourism-landing .ag-human-hair { position: absolute; inset: 0 2px 24px; border-radius: 44px 44px 25px 25px; background: #172039; }\r\n  #agora-tourism-landing .ag-human-face { position: absolute; left: 8px; right: 8px; top: 17px; height: 70px; border-radius: 30px 30px 27px 27px; background: linear-gradient(145deg, #d9a88f, #f2c5ad); box-shadow: inset 8px 0 rgba(255,255,255,.08); }\r\n  #agora-tourism-landing .ag-human-face i { position: absolute; top: 30px; width: 5px; height: 3px; border-radius: 50%; background: #273041; }\r\n  #agora-tourism-landing .ag-human-face i:first-child { left: 18px; }\r\n  #agora-tourism-landing .ag-human-face i:nth-child(2) { right: 18px; }\r\n  #agora-tourism-landing .ag-human-face span { position: absolute; left: 50%; bottom: 15px; width: 15px; height: 6px; border-bottom: 2px solid rgba(86,47,52,.6); border-radius: 50%; transform: translateX(-50%); }\r\n  #agora-tourism-landing .ag-human-body { position: absolute; left: 50%; bottom: -20px; display: flex; justify-content: center; width: 165px; height: 145px; border-radius: 75px 75px 10px 10px; background: linear-gradient(145deg, #12366c, #0b1d3d); transform: translateX(-50%); }\r\n  #agora-tourism-landing .ag-human-body b { margin-top: 55px; color: rgba(255,255,255,.75); font-size: 1rem; letter-spacing: -.06em; }\r\n  #agora-tourism-landing .ag-human-wave { position: absolute; right: 22px; top: 80px; width: 25px; height: 45px; border: solid rgba(93,227,255,.5); border-width: 0 2px; border-radius: 50%; animation: agPulse 2s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-alps-visual { position: relative; height: 265px; border-radius: 25px; background: linear-gradient(180deg, #86dcff 0%, #dff6ff 47%, #edf7ff 47%, #d9e9f6 100%); overflow: hidden; }\r\n  #agora-tourism-landing .ag-alps-sun { position: absolute; right: 24px; top: 26px; width: 45px; height: 45px; border-radius: 50%; background: #fff2a2; box-shadow: 0 0 35px rgba(255,239,143,.65); }\r\n  #agora-tourism-landing .ag-alps-m1, #agora-tourism-landing .ag-alps-m2 { position: absolute; bottom: -8px; width: 0; height: 0; border-style: solid; }\r\n  #agora-tourism-landing .ag-alps-m1 { left: -30px; border-width: 0 130px 200px 130px; border-color: transparent transparent #6f8daf transparent; }\r\n  #agora-tourism-landing .ag-alps-m1::after { content: \"\"; position: absolute; left: -66px; top: 46px; border-width: 0 66px 101px 66px; border-style: solid; border-color: transparent transparent #f7fbff transparent; }\r\n  #agora-tourism-landing .ag-alps-m2 { right: -58px; border-width: 0 150px 175px 150px; border-color: transparent transparent #44698e transparent; }\r\n  #agora-tourism-landing .ag-alps-m2::after { content: \"\"; position: absolute; left: -72px; top: 45px; border-width: 0 72px 84px 72px; border-style: solid; border-color: transparent transparent #e9f4fb transparent; }\r\n  #agora-tourism-landing .ag-alps-pin { position: absolute; z-index: 3; left: 50%; top: 39%; display: grid; place-items: center; width: 49px; height: 49px; border-radius: 50% 50% 50% 12px; color: #fff; background: linear-gradient(145deg, var(--ag-blue), var(--ag-blue-2)); box-shadow: 0 12px 30px rgba(59,115,255,.35); font-weight: 850; transform: translate(-50%, -50%) rotate(-45deg); animation: agFloat 4s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-alps-pin::before { content: \"\"; position: absolute; inset: 8px; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; }\r\n  #agora-tourism-landing .ag-alps-pin { text-indent: -1px; }\r\n\r\n  \/* Process *\/\r\n  #agora-tourism-landing .ag-process { background: #fff; }\r\n  #agora-tourism-landing .ag-process-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; counter-reset: ag-step; }\r\n  #agora-tourism-landing .ag-process-grid article { position: relative; min-height: 275px; padding: 32px; border: 1px solid var(--ag-line); border-radius: 25px; background: linear-gradient(155deg, #fff, #f8faff); overflow: hidden; }\r\n  #agora-tourism-landing .ag-process-grid article::after { content: \"\"; position: absolute; right: -50px; bottom: -70px; width: 150px; height: 150px; border: 25px solid rgba(59,115,255,.045); border-radius: 50%; }\r\n  #agora-tourism-landing .ag-process-grid article > span { position: absolute; right: 23px; top: 18px; color: rgba(59,115,255,.12); font-size: 3rem; font-weight: 850; line-height: 1; }\r\n  #agora-tourism-landing .ag-process-grid p { margin-bottom: 0; font-size: .9rem; }\r\n\r\n  \/* FAQ *\/\r\n  #agora-tourism-landing .ag-faq { background: var(--ag-soft); }\r\n  #agora-tourism-landing .ag-faq__grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(45px, 7vw, 85px); align-items: start; }\r\n  #agora-tourism-landing .ag-faq__intro { position: sticky; top: 35px; }\r\n  #agora-tourism-landing .ag-faq__intro p { margin-bottom: 26px; }\r\n  #agora-tourism-landing .ag-faq-list { display: grid; gap: 10px; }\r\n  #agora-tourism-landing .ag-faq-list details { border: 1px solid var(--ag-line); border-radius: 17px; background: #fff; box-shadow: 0 8px 25px rgba(18,31,63,.035); overflow: hidden; }\r\n  #agora-tourism-landing .ag-faq-list summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 20px 21px; color: var(--ag-ink); font-size: .91rem; font-weight: 720; cursor: pointer; list-style: none; }\r\n  #agora-tourism-landing .ag-faq-list summary::-webkit-details-marker { display: none; }\r\n  #agora-tourism-landing .ag-faq-list summary svg { flex: 0 0 19px; width: 19px; height: 19px; color: var(--ag-blue); transition: transform .25s ease; }\r\n  #agora-tourism-landing .ag-faq-list details[open] summary svg { transform: rotate(180deg); }\r\n  #agora-tourism-landing .ag-faq-list details > div { padding: 0 21px 21px; color: var(--ag-muted); font-size: .84rem; }\r\n\r\n  \/* Final CTA *\/\r\n  #agora-tourism-landing .ag-final { position: relative; overflow: hidden; padding: 92px 0; color: #fff; background: linear-gradient(135deg, #3a6ef5, #6658f2 58%, #286fd2); }\r\n  #agora-tourism-landing .ag-final__grid { opacity: .15; }\r\n  #agora-tourism-landing .ag-orb--three { width: 380px; height: 380px; right: -150px; top: -170px; background: radial-gradient(circle, rgba(59,215,232,.75), transparent 68%); }\r\n  #agora-tourism-landing .ag-final__inner { display: grid; grid-template-columns: 1.15fr .85fr; gap: 50px; align-items: center; }\r\n  #agora-tourism-landing .ag-final .ag-kicker { color: #d9f7ff; }\r\n  #agora-tourism-landing .ag-final .ag-kicker::before { background: #d9f7ff; }\r\n  #agora-tourism-landing .ag-final h2 { color: #fff; font-size: clamp(2.15rem, 4.3vw, 4.2rem); }\r\n  #agora-tourism-landing .ag-final p { margin-bottom: 0; color: rgba(255,255,255,.73); font-size: 1.03rem; }\r\n  #agora-tourism-landing .ag-final__actions { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }\r\n  #agora-tourism-landing .ag-final__actions .ag-btn { width: 100%; }\r\n  #agora-tourism-landing .ag-contact-link { display: flex; align-items: center; gap: 10px; color: rgba(255,255,255,.79); font-size: .88rem; }\r\n  #agora-tourism-landing .ag-contact-link svg { width: 18px; height: 18px; }\r\n\r\n  \/* Reveal animations *\/\r\n  #agora-tourism-landing [data-reveal] { opacity: 1; transform: none; }\r\n  #agora-tourism-landing.ag-js [data-reveal] { opacity: 0; transform: translateY(26px); transition: opacity .75s cubic-bezier(.2,.7,.2,1), transform .75s cubic-bezier(.2,.7,.2,1); }\r\n  #agora-tourism-landing.ag-js [data-reveal].is-visible { opacity: 1; transform: none; }\r\n\r\n  \/* Keyframes *\/\r\n  @keyframes agFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-11px); } }\r\n  @keyframes agPulse { 0%,100% { transform: scale(.95); opacity: .55; } 50% { transform: scale(1.07); opacity: .9; } }\r\n  @keyframes agGradient { to { background-position: 200% center; } }\r\n  @keyframes agMessageIn { to { opacity: 1; transform: none; } }\r\n  @keyframes agTyping { 0%,60%,100% { transform: translateY(0); opacity: .45; } 30% { transform: translateY(-4px); opacity: 1; } }\r\n  @keyframes agSpin { to { transform: rotate(360deg); } }\r\n  @keyframes agSpinCenter { from { transform: translate(-50%, -50%) rotate(0); } to { transform: translate(-50%, -50%) rotate(360deg); } }\r\n  @keyframes agFlow { from { left: -50px; } to { left: 100%; } }\r\n  @keyframes agNodePulse { 0%,100% { box-shadow: 0 28px 70px rgba(59,115,255,.28), inset 0 0 0 1px rgba(255,255,255,.3); } 50% { box-shadow: 0 34px 95px rgba(59,115,255,.42), 0 0 0 12px rgba(59,115,255,.04), inset 0 0 0 1px rgba(255,255,255,.3); } }\r\n  @keyframes agPulseDot { 0%,100% { box-shadow: 0 0 0 0 rgba(32,199,122,.35); } 50% { box-shadow: 0 0 0 6px rgba(32,199,122,0); } }\r\n  @keyframes agProgress { from { width: 0 !important; } }\r\n\r\n  \/* Tablet *\/\r\n  @media (max-width: 1050px) {\r\n    #agora-tourism-landing .ag-hero__inner { grid-template-columns: 1fr 390px; gap: 34px; }\r\n    #agora-tourism-landing .ag-value-grid { grid-template-columns: repeat(2, 1fr); }\r\n    #agora-tourism-landing .ag-internal-chat { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-future-card { grid-template-columns: 155px 1fr; }\r\n  }\r\n\r\n  @media (max-width: 900px) {\r\n    #agora-tourism-landing .ag-section { padding: 90px 0; }\r\n    #agora-tourism-landing .ag-hero { padding-top: 80px; }\r\n    #agora-tourism-landing .ag-hero__inner { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-hero__copy { padding-bottom: 15px; text-align: center; }\r\n    #agora-tourism-landing .ag-lead { margin-inline: auto; }\r\n    #agora-tourism-landing .ag-hero__actions, #agora-tourism-landing .ag-proofline { justify-content: center; }\r\n    #agora-tourism-landing .ag-demo-wrap { min-height: 690px; }\r\n    #agora-tourism-landing .ag-demo-note { left: 10%; }\r\n    #agora-tourism-landing .ag-demo-badge { right: 12%; }\r\n    #agora-tourism-landing .ag-stats { grid-template-columns: repeat(2, 1fr); }\r\n    #agora-tourism-landing .ag-stat:nth-child(3)::before { display: none; }\r\n    #agora-tourism-landing .ag-local-seo__grid { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-audience-grid { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-integrations__intro { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-integrations__intro .ag-kicker, #agora-tourism-landing .ag-mini-metrics { grid-column: auto; }\r\n    #agora-tourism-landing .ag-network__grid, #agora-tourism-landing .ag-control__grid, #agora-tourism-landing .ag-managed__grid, #agora-tourism-landing .ag-faq__grid, #agora-tourism-landing .ag-final__inner { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-network__copy { order: -1; }\r\n    #agora-tourism-landing .ag-future-grid { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-faq__intro { position: static; }\r\n    #agora-tourism-landing .ag-final__actions { align-items: stretch; }\r\n  }\r\n\r\n  \/* Mobile *\/\r\n  @media (max-width: 680px) {\r\n    #agora-tourism-landing { font-size: 15px; }\r\n    #agora-tourism-landing .ag-container { width: min(100% - 28px, 1180px); }\r\n    #agora-tourism-landing .ag-section { padding: 72px 0; }\r\n    #agora-tourism-landing .ag-section-head { margin-bottom: 36px; }\r\n    #agora-tourism-landing h1 { font-size: clamp(2.65rem, 14vw, 4rem); }\r\n    #agora-tourism-landing h2 { font-size: clamp(2rem, 10vw, 3rem); }\r\n    #agora-tourism-landing .ag-hero { padding-top: 62px; }\r\n    #agora-tourism-landing .ag-eyebrow { font-size: .64rem; }\r\n    #agora-tourism-landing .ag-hero__actions { flex-direction: column; }\r\n    #agora-tourism-landing .ag-hero__actions .ag-btn { width: 100%; }\r\n    #agora-tourism-landing .ag-proofline { gap: 9px 14px; }\r\n    #agora-tourism-landing .ag-demo-wrap { min-height: 635px; margin-inline: -2px; }\r\n    #agora-tourism-landing .ag-phone { width: min(358px, 100%); border-radius: 42px; transform: none; }\r\n    #agora-tourism-landing .ag-phone__screen { height: 600px; border-radius: 33px; }\r\n    #agora-tourism-landing .ag-chat-body { height: 436px; }\r\n    #agora-tourism-landing .ag-demo-badge { top: 12px; right: 0; }\r\n    #agora-tourism-landing .ag-demo-note { left: 0; bottom: 2px; max-width: 220px; }\r\n    #agora-tourism-landing .ag-stats { margin-top: 40px; }\r\n    #agora-tourism-landing .ag-stat { padding: 23px 14px; text-align: center; }\r\n    #agora-tourism-landing .ag-stat + .ag-stat::before { top: 20%; height: 60%; }\r\n    #agora-tourism-landing .ag-stat:nth-child(3), #agora-tourism-landing .ag-stat:nth-child(4) { border-top: 1px solid rgba(255,255,255,.1); }\r\n    #agora-tourism-landing .ag-value-grid { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-value-card { min-height: auto; }\r\n    #agora-tourism-landing .ag-internal-chat { padding-top: 58px; border-radius: 22px; }\r\n    #agora-tourism-landing .ag-internal-chat__badge { left: 22px; right: auto; max-width: calc(100% - 44px); }\r\n    #agora-tourism-landing .ag-internal-chat h3 { font-size: 1.72rem; }\r\n    #agora-tourism-landing .ag-internal-chat p { font-size: .92rem; }\r\n    #agora-tourism-landing .ag-claim { grid-template-columns: 1fr; gap: 5px; padding: 24px; }\r\n    #agora-tourism-landing .ag-claim__mark { font-size: 3rem; }\r\n    #agora-tourism-landing .ag-local-seo { padding: 24px 20px; border-radius: 22px; }\r\n    #agora-tourism-landing .ag-audience-card { padding: 27px 23px; }\r\n    #agora-tourism-landing .ag-integration-content { min-height: 245px; padding: 22px 17px; gap: 8px; }\r\n    #agora-tourism-landing .ag-chip { padding: 9px 10px; font-size: .68rem; }\r\n    #agora-tourism-landing .ag-integration-foot { align-items: flex-start; padding: 17px; }\r\n    #agora-tourism-landing .ag-network__visual { min-height: 470px; transform: scale(.9); margin: -25px -35px; }\r\n    #agora-tourism-landing .ag-node--destination { left: 9%; }\r\n    #agora-tourism-landing .ag-node--agora { width: 145px; height: 145px; }\r\n    #agora-tourism-landing .ag-node--agora b { font-size: 1.65rem; }\r\n    #agora-tourism-landing .ag-channel-orbit { height: 510px; transform: scale(.86); margin: -45px -8% -55px; width: 116%; }\r\n    #agora-tourism-landing .ag-orbit--outer { width: 455px; height: 455px; }\r\n    #agora-tourism-landing .ag-orbit--inner { width: 285px; height: 285px; }\r\n    #agora-tourism-landing .ag-channel-center { width: 150px; height: 150px; }\r\n    #agora-tourism-landing .ag-channel { padding: 11px 12px; font-size: .68rem; }\r\n    #agora-tourism-landing .ag-omni-benefits { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-control__card { padding: 24px 20px; }\r\n    #agora-tourism-landing .ag-testimonial-grid { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-quote { min-height: auto; padding: 27px 23px; }\r\n    #agora-tourism-landing .ag-trust-strip i { display: none; }\r\n    #agora-tourism-landing .ag-dash-insight { grid-template-columns: auto 1fr; }\r\n    #agora-tourism-landing .ag-dash-insight button { grid-column: 1 \/ -1; }\r\n    #agora-tourism-landing .ag-future-card { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-digital-human, #agora-tourism-landing .ag-alps-visual { height: 230px; }\r\n    #agora-tourism-landing .ag-process-grid { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-process-grid article { min-height: auto; }\r\n    #agora-tourism-landing .ag-final { padding: 72px 0; }\r\n  }\r\n\r\n  @media (max-width: 390px) {\r\n    #agora-tourism-landing .ag-message { max-width: 90%; font-size: .65rem; }\r\n    #agora-tourism-landing .ag-proofline { flex-direction: column; align-items: center; }\r\n    #agora-tourism-landing .ag-network__visual { transform: scale(.82); margin-inline: -60px; }\r\n  }\r\n\r\n  \/* Motion accessibility *\/\r\n  @media (prefers-reduced-motion: reduce) {\r\n    #agora-tourism-landing *, #agora-tourism-landing *::before, #agora-tourism-landing *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }\r\n    #agora-tourism-landing.ag-js [data-reveal] { opacity: 1; transform: none; }\r\n  }\r\n<\/style>\r\n\r\n<style id=\"agora-enhancements\">\r\n  \/* Header bridge: the hero starts as a rounded surface instead of a hard full-width cut. *\/\r\n  #agora-tourism-landing {\r\n    background: #eef1f5;\r\n  }\r\n  #agora-tourism-landing .ag-hero {\r\n    width: min(100% - 88px, 1818px);\r\n    margin: 18px auto 0;\r\n    padding-top: clamp(84px, 6.4vw, 112px);\r\n    border-radius: 34px;\r\n    box-shadow: 0 -1px 0 rgba(255,255,255,.8), 0 24px 70px rgba(7,20,45,.16);\r\n  }\r\n  #agora-tourism-landing .ag-positioning {\r\n    margin-top: 18px;\r\n    border-radius: 34px 34px 0 0;\r\n  }\r\n  #agora-tourism-landing .ag-hero::before {\r\n    content: none;\r\n  }\r\n  #agora-tourism-landing .ag-hero__grid {\r\n    top: 0;\r\n  }\r\n  @media (max-width: 900px) {\r\n    #agora-tourism-landing .ag-hero {\r\n      width: min(100% - 36px, 1818px);\r\n      margin-top: 14px;\r\n      padding-top: 74px;\r\n      border-radius: 26px;\r\n    }\r\n    #agora-tourism-landing .ag-positioning {\r\n      margin-top: 14px;\r\n      border-radius: 26px 26px 0 0;\r\n    }\r\n  }\r\n  @media (max-width: 680px) {\r\n    #agora-tourism-landing .ag-hero {\r\n      width: 100%;\r\n      margin-top: 0;\r\n      padding-top: 64px;\r\n      border-radius: 0;\r\n      box-shadow: none;\r\n    }\r\n    #agora-tourism-landing .ag-positioning {\r\n      margin-top: 0;\r\n      border-radius: 0;\r\n    }\r\n  }\r\n  #agora-tourism-landing .ag-hero__copy { position: relative; }\r\n  #agora-tourism-landing .ag-hero-highlights { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }\r\n  #agora-tourism-landing .ag-hero-highlights article { padding: 18px 18px 17px; border: 1px solid rgba(255,255,255,.13); border-radius: 18px; background: rgba(255,255,255,.06); box-shadow: inset 0 1px rgba(255,255,255,.05); backdrop-filter: blur(10px); }\r\n  #agora-tourism-landing .ag-hero-highlights strong { display: block; margin-bottom: 6px; color: #fff; font-size: .88rem; line-height: 1.3; }\r\n  #agora-tourism-landing .ag-hero-highlights span { display: block; color: rgba(255,255,255,.67); font-size: .74rem; line-height: 1.55; }\r\n\r\n  \/* Improved phone *\/\r\n  #agora-tourism-landing .ag-demo-wrap { perspective: 1600px; }\r\n  #agora-tourism-landing .ag-phone { position: relative; z-index: 3; width: min(395px, 100%); padding: 11px; border: 1px solid rgba(255,255,255,.28); border-radius: 52px; background: linear-gradient(145deg, #2e343d 0%, #06090d 36%, #1b212b 100%); box-shadow: 0 45px 100px rgba(0,0,0,.48), inset 0 0 0 2px rgba(255,255,255,.06), inset 0 0 0 5px #090b0f; transform: perspective(1200px) rotateY(-6deg) rotateX(2deg); transition: transform .4s ease, box-shadow .4s ease; }\r\n  #agora-tourism-landing .ag-phone:hover { box-shadow: 0 52px 110px rgba(0,0,0,.52), inset 0 0 0 2px rgba(255,255,255,.08), inset 0 0 0 5px #090b0f; }\r\n  #agora-tourism-landing .ag-phone__key { position: absolute; right: -3px; width: 4px; border-radius: 4px; background: linear-gradient(180deg, #59616d, #14181f); }\r\n  #agora-tourism-landing .ag-phone__key--one { top: 128px; height: 64px; }\r\n  #agora-tourism-landing .ag-phone__key--two { top: 204px; height: 86px; }\r\n  #agora-tourism-landing .ag-phone__key--three { left: -3px; right: auto; top: 158px; height: 56px; }\r\n  #agora-tourism-landing .ag-phone__shine { content: \"\"; position: absolute; inset: 12px; border-radius: 42px; background: linear-gradient(125deg, rgba(255,255,255,.14), transparent 28%, transparent 64%, rgba(255,255,255,.08) 78%, transparent 88%); pointer-events: none; mix-blend-mode: screen; }\r\n  #agora-tourism-landing .ag-phone__speaker { position: absolute; z-index: 12; top: 15px; left: 50%; display: flex; align-items: center; justify-content: center; gap: 8px; width: 132px; height: 34px; border-radius: 999px; background: #05070a; transform: translateX(-50%); box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 10px 24px rgba(0,0,0,.18); }\r\n  #agora-tourism-landing .ag-phone__speaker i { width: 10px; height: 10px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #232833, #090b0f); box-shadow: 0 0 0 2px rgba(255,255,255,.03); }\r\n  #agora-tourism-landing .ag-phone__speaker span { width: 48px; height: 8px; border-radius: 10px; background: linear-gradient(90deg, #11161d, #272f3a, #11161d); }\r\n  #agora-tourism-landing .ag-phone__screen { position: relative; overflow: hidden; height: 662px; border-radius: 40px; color: #12211a; background: linear-gradient(180deg, #f3efe8 0%, #eee8e1 100%); }\r\n  #agora-tourism-landing .ag-phone__screen::before { content:\"\"; position:absolute; inset:0; opacity:.2; background-image: radial-gradient(circle at 30% 20%, rgba(17,97,62,.18) 0 1px, transparent 1px), radial-gradient(circle at 70% 60%, rgba(17,97,62,.1) 0 1px, transparent 1px); background-size: 22px 22px, 28px 28px; pointer-events:none; }\r\n  #agora-tourism-landing .ag-phone__statusbar { position: absolute; top: 9px; left: 0; right: 0; z-index: 10; display: flex; justify-content: space-between; align-items: center; padding: 2px 18px 0; color: rgba(255,255,255,.96); font-size: .69rem; font-weight: 700; letter-spacing: .03em; }\r\n  #agora-tourism-landing .ag-phone__statusbar div { display: flex; gap: 8px; align-items: center; }\r\n  #agora-tourism-landing .ag-chat-head { padding-top: 38px; }\r\n  #agora-tourism-landing .ag-chat-quick { display: flex; gap: 8px; padding: 0 17px 10px; overflow: hidden; }\r\n  #agora-tourism-landing .ag-chat-quick span { padding: 7px 11px; border: 1px solid rgba(25,97,64,.1); border-radius: 999px; color: #48655a; background: rgba(255,255,255,.72); font-size: .66rem; font-weight: 700; box-shadow: 0 6px 16px rgba(0,0,0,.05); }\r\n  #agora-tourism-landing .ag-demo-note { max-width: 370px; }\r\n\r\n  \/* Better network precision: all inherited inset values are reset first *\/\r\n  #agora-tourism-landing .ag-network__visual { position: relative; min-height: 540px; overflow: hidden; }\r\n  #agora-tourism-landing .ag-network-svg { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }\r\n  #agora-tourism-landing .ag-line { display: none !important; }\r\n  #agora-tourism-landing .ag-node { inset: auto; width: auto; height: auto; min-width: 0; white-space: nowrap; }\r\n  #agora-tourism-landing .ag-node--destination { left: 0; top: 0; right: auto; bottom: auto; }\r\n  #agora-tourism-landing .ag-node--agora { left: 50%; top: 16%; right: auto; bottom: auto; width: 170px; height: 170px; transform: translateX(-50%); }\r\n  #agora-tourism-landing .ag-node--hotel { left: 12%; top: 62%; right: auto; bottom: auto; }\r\n  #agora-tourism-landing .ag-node--ski { right: 10%; top: 60%; left: auto; bottom: auto; }\r\n  #agora-tourism-landing .ag-node--school { right: 0; top: 8%; left: auto; bottom: auto; }\r\n\r\n  \/* Omnichannel full list: absolute cards are reset to avoid Elementor stretch bugs *\/\r\n  #agora-tourism-landing .ag-channel-orbit { position: relative; width: min(900px, 100%); height: 700px; margin: -15px auto 0; }\r\n  #agora-tourism-landing .ag-channel-center { z-index: 3; width: 170px; height: 170px; }\r\n  #agora-tourism-landing .ag-channel { position: absolute; inset: auto; z-index: 4; display: flex; flex-direction: column; align-items: center; gap: 8px; min-width: 105px; width: auto; height: auto; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; backdrop-filter: none; animation: none; }\r\n  #agora-tourism-landing .ag-channel__glyph { display: grid; place-items: center; width: 68px; height: 68px; border-radius: 22px; color: #fff; background: linear-gradient(145deg, rgba(59,115,255,.92), rgba(106,92,255,.92)); box-shadow: 0 18px 34px rgba(59,115,255,.24); font-size: .9rem; font-weight: 850; letter-spacing: -.02em; }\r\n  #agora-tourism-landing .ag-channel__glyph svg { width: 26px; height: 26px; }\r\n  #agora-tourism-landing .ag-channel span:last-child { color: #24324a; font-size: .74rem; font-weight: 700; text-align: center; line-height: 1.25; }\r\n  #agora-tourism-landing .ag-channel--web { left: 50%; top: 2%; transform: translateX(-50%); }\r\n  #agora-tourism-landing .ag-channel--phone { right: 18%; top: 10%; }\r\n  #agora-tourism-landing .ag-channel--sms { right: 7%; top: 23%; }\r\n  #agora-tourism-landing .ag-channel--wa { right: 2%; top: 39%; }\r\n  #agora-tourism-landing .ag-channel--mail { right: 8%; top: 56%; }\r\n  #agora-tourism-landing .ag-channel--booking { right: 18%; bottom: 10%; }\r\n  #agora-tourism-landing .ag-channel--telegram { left: 50%; bottom: 2%; transform: translateX(-50%); }\r\n  #agora-tourism-landing .ag-channel--instagram { left: 18%; bottom: 10%; }\r\n  #agora-tourism-landing .ag-channel--messenger { left: 6%; top: 56%; }\r\n  #agora-tourism-landing .ag-channel--discord { left: 1%; top: 39%; }\r\n  #agora-tourism-landing .ag-channel--youtube { left: 7%; top: 23%; }\r\n  #agora-tourism-landing .ag-channel--teams { left: 18%; top: 10%; }\r\n  #agora-tourism-landing .ag-channel--tiktok { left: 50%; top: 17%; transform: translateX(-50%); }\r\n\r\n  #agora-tourism-landing .ag-channel--web { left:50%; top:2%; right:auto; bottom:auto; transform:translateX(-50%); }\r\n  #agora-tourism-landing .ag-channel--phone { right:18%; top:10%; left:auto; bottom:auto; }\r\n  #agora-tourism-landing .ag-channel--sms { right:7%; top:23%; left:auto; bottom:auto; }\r\n  #agora-tourism-landing .ag-channel--wa { right:2%; top:39%; left:auto; bottom:auto; }\r\n  #agora-tourism-landing .ag-channel--mail { right:8%; top:56%; left:auto; bottom:auto; }\r\n  #agora-tourism-landing .ag-channel--booking { right:18%; bottom:10%; left:auto; top:auto; }\r\n  #agora-tourism-landing .ag-channel--telegram { left:50%; bottom:2%; right:auto; top:auto; transform:translateX(-50%); }\r\n  #agora-tourism-landing .ag-channel--instagram { left:18%; bottom:10%; right:auto; top:auto; }\r\n  #agora-tourism-landing .ag-channel--messenger { left:6%; top:56%; right:auto; bottom:auto; }\r\n  #agora-tourism-landing .ag-channel--discord { left:1%; top:39%; right:auto; bottom:auto; }\r\n  #agora-tourism-landing .ag-channel--youtube { left:7%; top:23%; right:auto; bottom:auto; }\r\n  #agora-tourism-landing .ag-channel--teams { left:18%; top:10%; right:auto; bottom:auto; }\r\n  #agora-tourism-landing .ag-channel--tiktok { left:50%; top:17%; right:auto; bottom:auto; transform:translateX(-50%); }\r\n  #agora-tourism-landing .ag-channel-list { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 20px; }\r\n  #agora-tourism-landing .ag-channel-list span { padding: 10px 13px; border: 1px solid var(--ag-line); border-radius: 999px; background: #fff; box-shadow: 0 8px 22px rgba(18,31,63,.06); color: #32415a; font-size: .72rem; font-weight: 700; }\r\n\r\n  \/* Stronger \"best\" positioning *\/\r\n  #agora-tourism-landing .ag-positioning .ag-value-grid { margin-bottom: 28px; }\r\n  #agora-tourism-landing .ag-claim { align-items: start; }\r\n  #agora-tourism-landing .ag-claim p { color: #24324a; font-size: 1.08rem; }\r\n\r\n  \/* Digital humans VRM stage *\/\r\n  #agora-tourism-landing .ag-future-card--human { grid-template-columns: minmax(280px, .95fr) 1.05fr; }\r\n  #agora-tourism-landing .ag-digital-human { position: relative; }\r\n  #agora-tourism-landing .ag-dh-stage { position: relative; height: 360px; border-radius: 30px; border: 1px solid rgba(255,255,255,.14); background: radial-gradient(circle at 50% 18%, rgba(59,215,232,.18), transparent 32%), linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)); overflow: hidden; }\r\n  #agora-tourism-landing .ag-dh-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; z-index: 2; cursor: grab; }\r\n  #agora-tourism-landing .ag-dh-canvas:active { cursor: grabbing; }\r\n  #agora-tourism-landing .ag-dh-status { position: absolute; z-index: 4; left: 50%; bottom: 14px; display: flex; align-items: center; gap: 8px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: rgba(255,255,255,.88); background: rgba(7,20,45,.72); backdrop-filter: blur(10px); font-size: .65rem; font-weight: 750; transform: translateX(-50%); transition: opacity .3s ease; }\r\n  #agora-tourism-landing .ag-dh-status i { width: 8px; height: 8px; border: 2px solid rgba(255,255,255,.35); border-top-color: #74dcff; border-radius: 50%; animation: agSpin 1s linear infinite; }\r\n  #agora-tourism-landing .ag-dh-stage.has-vrm .ag-dh-status { opacity: 0; pointer-events: none; }\r\n  #agora-tourism-landing .ag-dh-hint { position:absolute; z-index:3; right:12px; top:12px; padding:7px 10px; border:1px solid rgba(255,255,255,.13); border-radius:999px; color:rgba(255,255,255,.76); background:rgba(7,20,45,.58); backdrop-filter:blur(9px); font-size:.59rem; font-weight:750; opacity:0; transform:translateY(-4px); transition:opacity .35s ease, transform .35s ease; }\r\n  #agora-tourism-landing .ag-dh-stage.has-vrm .ag-dh-hint { opacity:1; transform:none; }\r\n  #agora-tourism-landing .ag-dh-stage.has-vrm .ag-dh-fallback { opacity: 0; pointer-events: none; }\r\n  #agora-tourism-landing .ag-dh-stage.vrm-error .ag-dh-status i { border: 0; background: #ff9f43; animation: none; }\r\n  #agora-tourism-landing .ag-dh-fallback, #agora-tourism-landing .ag-dh-scene { position: absolute; inset: 0; }\r\n  #agora-tourism-landing .ag-dh-fallback { z-index: 1; }\r\n  #agora-tourism-landing .ag-dh-scene { background: linear-gradient(180deg, rgba(255,255,255,.02), transparent 28%), linear-gradient(180deg, #14315d 0%, #0d2347 100%); }\r\n  #agora-tourism-landing .ag-dh-scene::before { content: \"\"; position: absolute; left: -20%; right: -20%; bottom: -90px; height: 160px; background: radial-gradient(circle at 50% 0, rgba(255,255,255,.08), transparent 70%); }\r\n  #agora-tourism-landing .ag-dh-kiosk { position: absolute; right: 24px; bottom: 18px; width: 118px; padding: 8px; border-radius: 18px; background: linear-gradient(145deg, #1f2937, #0e1520); box-shadow: 0 16px 32px rgba(0,0,0,.28); }\r\n  #agora-tourism-landing .ag-dh-screen { position: relative; height: 210px; border-radius: 14px; background: linear-gradient(180deg, #2a3f61, #101d31); overflow: hidden; }\r\n  #agora-tourism-landing .ag-dh-brand { padding: 8px 0 2px; color: rgba(255,255,255,.9); text-align: center; font-size: 1.45rem; font-weight: 800; letter-spacing: -.05em; }\r\n  #agora-tourism-landing .ag-dh-bubble { position: absolute; left: 8px; top: 10px; max-width: 100px; padding: 7px 10px; border-radius: 14px 14px 14px 6px; color: #233047; background: #fff; font-size: .58rem; font-weight: 700; line-height: 1.35; box-shadow: 0 10px 18px rgba(0,0,0,.12); animation: agFloat 4.5s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-dh-avatar { position: absolute; left: 50%; bottom: 0; width: 86px; height: 150px; transform: translateX(-50%); }\r\n  #agora-tourism-landing .ag-dh-avatar__hair { position: absolute; left: 14px; right: 14px; top: 25px; height: 52px; border-radius: 24px 24px 18px 18px; background: #1a2236; }\r\n  #agora-tourism-landing .ag-dh-avatar__head { position: absolute; left: 20px; right: 20px; top: 38px; height: 56px; border-radius: 24px 24px 20px 20px; background: linear-gradient(145deg, #edc4b0, #d9a58d); }\r\n  #agora-tourism-landing .ag-dh-avatar__head i { position: absolute; top: 23px; width: 5px; height: 5px; border-radius: 50%; background: #273041; transition: transform .15s ease; }\r\n  #agora-tourism-landing .ag-dh-avatar__head i:first-child { left: 17px; }\r\n  #agora-tourism-landing .ag-dh-avatar__head i:nth-child(2) { right: 17px; }\r\n  #agora-tourism-landing .ag-dh-avatar__head span { position: absolute; left: 50%; bottom: 11px; width: 16px; height: 6px; border-bottom: 2px solid rgba(86,47,52,.75); border-radius: 50%; transform: translateX(-50%); animation: agMouth 1.8s ease-in-out infinite; }\r\n  #agora-tourism-landing .ag-dh-avatar__body { position: absolute; left: 8px; right: 8px; bottom: 0; height: 88px; border-radius: 26px 26px 8px 8px; background: linear-gradient(145deg, #163e79, #0d2348); }\r\n  #agora-tourism-landing .ag-dh-guest { position: absolute; left: 18px; bottom: 18px; width: 88px; height: 190px; border-radius: 46px 46px 8px 8px; background: linear-gradient(145deg, #111c2b, #0a1018); box-shadow: inset 24px 0 0 #d08d24; }\r\n  #agora-tourism-landing .ag-dh-guest::before { content: \"\"; position: absolute; left: 18px; top: -20px; width: 54px; height: 54px; border-radius: 50%; background: #10161e; box-shadow: inset -8px -10px 0 rgba(255,255,255,.06); }\r\n  #agora-tourism-landing .ag-dh-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }\r\n  #agora-tourism-landing .ag-dh-meta span { padding: 8px 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: rgba(255,255,255,.82); background: rgba(255,255,255,.06); font-size: .64rem; font-weight: 780; letter-spacing: .03em; }\r\n\r\n  @keyframes agMouth { 0%, 100% { transform: translateX(-50%) scaleX(1) scaleY(1);} 25% { transform: translateX(-50%) scaleX(1.12) scaleY(1.7);} 50% { transform: translateX(-50%) scaleX(.88) scaleY(1.35);} 75% { transform: translateX(-50%) scaleX(1.05) scaleY(.9);} }\r\n\r\n\r\n  #agora-tourism-landing .ag-future-grid { align-items: stretch; }\r\n  #agora-tourism-landing .ag-future-card--human { grid-template-columns: minmax(0, 1.03fr) minmax(320px, .97fr); gap: 30px; align-items: stretch; }\r\n  #agora-tourism-landing .ag-future-human__copy { display: flex; flex-direction: column; }\r\n  #agora-tourism-landing .ag-future-human__copy h3 { color: #fff; font-size: clamp(1.5rem, 2.45vw, 2.18rem); }\r\n  #agora-tourism-landing .ag-future-human__copy p { color: rgba(255,255,255,.77); font-size: .97rem; }\r\n  #agora-tourism-landing .ag-human-points { display: grid; gap: 12px; margin-top: 18px; }\r\n  #agora-tourism-landing .ag-human-points > div { padding: 15px 16px; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: rgba(255,255,255,.045); box-shadow: inset 0 1px 0 rgba(255,255,255,.04); }\r\n  #agora-tourism-landing .ag-human-points b { display: block; margin-bottom: 4px; color: #fff; font-size: .88rem; }\r\n  #agora-tourism-landing .ag-human-points span { color: rgba(255,255,255,.7); font-size: .79rem; line-height: 1.6; }\r\n  #agora-tourism-landing .ag-digital-human--featured { display: flex; flex-direction: column; justify-content: center; }\r\n  #agora-tourism-landing .ag-dh-stage { position: relative; min-height: 430px; height: 100%; border-radius: 32px; border: 1px solid rgba(255,255,255,.16); background: radial-gradient(circle at 50% 14%, rgba(59,215,232,.28), transparent 28%), radial-gradient(circle at 50% 80%, rgba(59,115,255,.18), transparent 45%), linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)); box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 24px 60px rgba(0,0,0,.18); overflow: hidden; }\r\n  #agora-tourism-landing .ag-dh-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; z-index: 3; cursor: grab; }\r\n  #agora-tourism-landing .ag-dh-canvas:active { cursor: grabbing; }\r\n  #agora-tourism-landing .ag-dh-aura { position: absolute; z-index: 1; left: 50%; top: 30px; width: 78%; height: 78%; border-radius: 50%; background: radial-gradient(circle, rgba(91,237,255,.18), rgba(59,115,255,.07) 45%, transparent 68%); transform: translateX(-50%); filter: blur(6px); }\r\n  #agora-tourism-landing .ag-dh-floor { position: absolute; z-index: 1; left: 50%; bottom: -24px; width: 74%; height: 90px; border-radius: 50%; background: radial-gradient(circle, rgba(59,115,255,.4), rgba(59,115,255,.06) 58%, transparent 72%); transform: translateX(-50%); }\r\n  #agora-tourism-landing .ag-dh-screen-label { position: absolute; z-index: 5; left: 14px; top: 14px; padding: 8px 10px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: rgba(255,255,255,.82); background: rgba(7,20,45,.65); backdrop-filter: blur(12px); font-size: .61rem; font-weight: 800; letter-spacing: .08em; }\r\n  #agora-tourism-landing .ag-dh-status { z-index: 6; }\r\n  #agora-tourism-landing .ag-dh-hint { z-index: 6; }\r\n  #agora-tourism-landing .ag-dh-stage.has-vrm .ag-dh-fallback { opacity: 0; pointer-events: none; }\r\n  #agora-tourism-landing .ag-dh-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }\r\n  #agora-tourism-landing .ag-dh-meta span { padding: 8px 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: rgba(255,255,255,.82); background: rgba(255,255,255,.06); font-size: .64rem; font-weight: 780; letter-spacing: .03em; }\r\n  @media (max-width: 991px) {\r\n    #agora-tourism-landing .ag-future-card--human { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-dh-stage { min-height: 390px; }\r\n  }\r\n  @media (max-width: 767px) {\r\n    #agora-tourism-landing .ag-dh-stage { min-height: 340px; }\r\n    #agora-tourism-landing .ag-future-human__copy p { font-size: .92rem; }\r\n  }\r\n\r\n\r\n  \/* Responsive overrides *\/\r\n  @media (max-width: 1140px) {\r\n    #agora-tourism-landing .ag-hero-highlights { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-channel-orbit { transform: scale(.92); transform-origin: center top; height: 660px; }\r\n  }\r\n  @media (max-width: 991px) {\r\n    #agora-tourism-landing .ag-future-card--human { grid-template-columns: 1fr; }\r\n    #agora-tourism-landing .ag-channel-orbit { height: auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; width: 100%; margin-top: 10px; }\r\n    #agora-tourism-landing .ag-channel-orbit .ag-orbit, #agora-tourism-landing .ag-channel-center { display: none; }\r\n    #agora-tourism-landing .ag-channel { position: static; min-width: 0; padding: 14px 8px; border: 1px solid var(--ag-line); border-radius: 18px; background: #fff; box-shadow: 0 10px 26px rgba(18,31,63,.06); transform: none !important; }\r\n    #agora-tourism-landing .ag-channel__glyph { width: 54px; height: 54px; border-radius: 16px; }\r\n    #agora-tourism-landing .ag-network__visual { min-height: 500px; }\r\n  }\r\n  @media (max-width: 767px) {\r\n    #agora-tourism-landing .ag-phone { width: min(360px, 100%); border-radius: 44px; transform: none !important; }\r\n    #agora-tourism-landing .ag-phone__screen { height: 615px; border-radius: 34px; }\r\n    #agora-tourism-landing .ag-phone__speaker { width: 118px; height: 30px; }\r\n    #agora-tourism-landing .ag-chat-head { padding-top: 36px; }\r\n    #agora-tourism-landing .ag-channel-orbit { grid-template-columns: repeat(2, 1fr); }\r\n    #agora-tourism-landing .ag-network__visual { min-height: 440px; }\r\n    #agora-tourism-landing .ag-node { transform: scale(.92); }\r\n    #agora-tourism-landing .ag-node--destination { left: 2%; top: 3%; right:auto; bottom:auto; }\r\n    #agora-tourism-landing .ag-node--agora { left:50%; top: 18%; right:auto; bottom:auto; }\r\n    #agora-tourism-landing .ag-node--hotel { left: 2%; top: 66%; right:auto; bottom:auto; }\r\n    #agora-tourism-landing .ag-node--school { right: 0; top: 28%; left:auto; bottom:auto; }\r\n    #agora-tourism-landing .ag-node--ski { right: 2%; top: 68%; left:auto; bottom:auto; }\r\n    #agora-tourism-landing .ag-network-svg { transform: none; }\r\n  }\r\n\r\n  \/* Omnichannel redesign: stable local-logo grid instead of fragile orbit positioning *\/\r\n  #agora-tourism-landing .ag-channel-orbit {\r\n    position: relative;\r\n    display: grid;\r\n    grid-template-columns: repeat(6, minmax(0, 1fr));\r\n    gap: 14px;\r\n    width: min(1120px, 100%);\r\n    height: auto;\r\n    margin: 34px auto 28px;\r\n    padding: 18px;\r\n    border: 1px solid rgba(59, 115, 255, .12);\r\n    border-radius: 30px;\r\n    background:\r\n      radial-gradient(circle at 50% 20%, rgba(59, 115, 255, .12), transparent 34%),\r\n      linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.46));\r\n    box-shadow: 0 24px 70px rgba(18,31,63,.08);\r\n    transform: none !important;\r\n    overflow: hidden;\r\n  }\r\n  #agora-tourism-landing .ag-channel-orbit::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    inset: 18px;\r\n    border: 1px dashed rgba(59, 115, 255, .12);\r\n    border-radius: 24px;\r\n    pointer-events: none;\r\n  }\r\n  #agora-tourism-landing .ag-channel-orbit .ag-orbit { display: none; }\r\n  #agora-tourism-landing .ag-channel-center {\r\n    position: relative;\r\n    left: auto;\r\n    top: auto;\r\n    z-index: 2;\r\n    grid-column: span 2;\r\n    grid-row: span 2;\r\n    display: flex;\r\n    flex-direction: column;\r\n    align-items: center;\r\n    justify-content: center;\r\n    width: auto;\r\n    height: auto;\r\n    min-height: 196px;\r\n    border-radius: 24px;\r\n    background:\r\n      radial-gradient(circle at 50% 20%, rgba(111, 226, 255, .18), transparent 46%),\r\n      linear-gradient(145deg, var(--ag-navy), #173f88);\r\n    box-shadow: 0 22px 50px rgba(23,63,136,.24), inset 0 0 0 1px rgba(255,255,255,.16);\r\n    transform: none !important;\r\n  }\r\n  #agora-tourism-landing .ag-channel-center::after {\r\n    content: \"\";\r\n    position: absolute;\r\n    inset: 16px;\r\n    border: 1px solid rgba(255,255,255,.13);\r\n    border-radius: 18px;\r\n  }\r\n  #agora-tourism-landing .ag-channel-center b {\r\n    margin: 0;\r\n    color: #fff;\r\n    font-size: clamp(2rem, 3vw, 3rem);\r\n    line-height: .9;\r\n    letter-spacing: -.08em;\r\n  }\r\n  #agora-tourism-landing .ag-channel-center span {\r\n    margin: 16px 0 0;\r\n    color: rgba(255,255,255,.7);\r\n    font-size: .72rem;\r\n    font-weight: 800;\r\n    letter-spacing: .14em;\r\n    text-transform: uppercase;\r\n  }\r\n  #agora-tourism-landing .ag-channel {\r\n    position: relative !important;\r\n    inset: auto !important;\r\n    z-index: 2;\r\n    display: grid;\r\n    justify-items: center;\r\n    align-content: center;\r\n    gap: 10px;\r\n    min-width: 0;\r\n    min-height: 116px;\r\n    padding: 15px 10px 13px;\r\n    border: 1px solid rgba(16,24,40,.08);\r\n    border-radius: 20px;\r\n    background: rgba(255,255,255,.88);\r\n    box-shadow: 0 14px 34px rgba(18,31,63,.08);\r\n    backdrop-filter: blur(8px);\r\n    transform: none !important;\r\n    animation: none;\r\n  }\r\n  #agora-tourism-landing .ag-channel__glyph {\r\n    position: relative;\r\n    display: grid;\r\n    place-items: center;\r\n    width: 56px;\r\n    height: 56px;\r\n    border-radius: 17px;\r\n    color: var(--ag-blue);\r\n    background: linear-gradient(180deg, #fff, #f6f8ff);\r\n    box-shadow: inset 0 0 0 1px rgba(59,115,255,.12), 0 10px 24px rgba(59,115,255,.11);\r\n    font-size: 0;\r\n    line-height: 0;\r\n    overflow: hidden;\r\n  }\r\n  #agora-tourism-landing .ag-channel__glyph svg,\r\n  #agora-tourism-landing .ag-channel__glyph img {\r\n    display: block;\r\n    width: 28px;\r\n    height: 28px;\r\n    object-fit: contain;\r\n    object-position: center;\r\n  }\r\n  #agora-tourism-landing .ag-channel__glyph--brand img {\r\n    position: absolute;\r\n    left: 50%;\r\n    top: 50%;\r\n    width: 30px;\r\n    height: 30px;\r\n    max-width: none;\r\n    transform: translate(-50%, -50%);\r\n  }\r\n  #agora-tourism-landing .ag-channel--booking .ag-channel__glyph--brand img { transform: translate(-50%, -50%) scale(1.02); }\r\n  #agora-tourism-landing .ag-channel--teams .ag-channel__glyph--brand img { transform: translate(calc(-50% + 1px), calc(-50% + 1px)) scale(1.08); }\r\n  #agora-tourism-landing .ag-channel--youtube .ag-channel__glyph--brand img { transform: translate(-50%, -50%) scale(1.05); }\r\n  #agora-tourism-landing .ag-channel--discord .ag-channel__glyph--brand img { transform: translate(-50%, calc(-50% + 1px)) scale(1.03); }\r\n  #agora-tourism-landing .ag-channel--tiktok .ag-channel__glyph--brand img { transform: translate(calc(-50% + 1px), -50%) scale(1.03); }\r\n  #agora-tourism-landing .ag-channel span:last-child {\r\n    max-width: 100%;\r\n    color: #1f2c43;\r\n    font-size: .75rem;\r\n    font-weight: 800;\r\n    line-height: 1.2;\r\n    text-align: center;\r\n    overflow-wrap: anywhere;\r\n  }\r\n  #agora-tourism-landing .ag-channel-list { display: none; }\r\n  #agora-tourism-landing .ag-omni-benefits {\r\n    display: grid;\r\n    grid-template-columns: repeat(3, minmax(0, 1fr));\r\n    gap: 16px;\r\n    margin-top: 22px;\r\n  }\r\n  #agora-tourism-landing .ag-omni-benefits > div {\r\n    min-width: 0;\r\n    border-radius: 18px;\r\n  }\r\n\r\n  @media (max-width: 1100px) {\r\n    #agora-tourism-landing .ag-channel-orbit { grid-template-columns: repeat(4, minmax(0, 1fr)); }\r\n    #agora-tourism-landing .ag-channel-center { grid-column: span 2; min-height: 180px; }\r\n  }\r\n  @media (max-width: 767px) {\r\n    #agora-tourism-landing .ag-channel-orbit {\r\n      grid-template-columns: repeat(2, minmax(0, 1fr));\r\n      gap: 10px;\r\n      margin-top: 24px;\r\n      padding: 12px;\r\n      border-radius: 24px;\r\n    }\r\n    #agora-tourism-landing .ag-channel-orbit::before { inset: 12px; border-radius: 18px; }\r\n    #agora-tourism-landing .ag-channel-center {\r\n      grid-column: 1 \/ -1;\r\n      min-height: 150px;\r\n      border-radius: 20px;\r\n    }\r\n    #agora-tourism-landing .ag-channel {\r\n      min-height: 104px;\r\n      padding: 13px 8px 12px;\r\n      border-radius: 17px;\r\n    }\r\n    #agora-tourism-landing .ag-channel__glyph {\r\n      width: 50px;\r\n      height: 50px;\r\n      border-radius: 15px;\r\n    }\r\n    #agora-tourism-landing .ag-channel__glyph svg,\r\n    #agora-tourism-landing .ag-channel__glyph img {\r\n      width: 25px;\r\n      height: 25px;\r\n    }\r\n    #agora-tourism-landing .ag-channel--tiktok {\r\n      grid-column: 1 \/ -1;\r\n      width: calc(50% - 5px);\r\n      justify-self: center;\r\n    }\r\n    #agora-tourism-landing .ag-channel span:last-child { font-size: .69rem; }\r\n    #agora-tourism-landing .ag-omni-benefits { grid-template-columns: 1fr; gap: 12px; }\r\n  }\r\n\r\n  \/* Realistic WhatsApp phone demo *\/\r\n  #agora-tourism-landing .ag-demo-wrap {\r\n    min-height: 720px;\r\n    padding-top: 8px;\r\n    perspective: 1700px;\r\n  }\r\n  #agora-tourism-landing .ag-demo-badge,\r\n  #agora-tourism-landing .ag-demo-note {\r\n    display: none !important;\r\n  }\r\n  #agora-tourism-landing .ag-demo-glow {\r\n    width: 560px;\r\n    height: 560px;\r\n    opacity: .72;\r\n    background:\r\n      radial-gradient(circle, rgba(14, 128, 102, .24), rgba(59, 215, 232, .1) 44%, transparent 72%);\r\n    filter: blur(22px);\r\n  }\r\n  #agora-tourism-landing .ag-phone {\r\n    width: min(414px, 100%);\r\n    padding: 10px;\r\n    border: 1px solid rgba(255,255,255,.22);\r\n    border-radius: 56px;\r\n    background:\r\n      linear-gradient(145deg, #3b424d 0%, #090c12 34%, #1a2029 67%, #05070b 100%);\r\n    box-shadow:\r\n      0 48px 110px rgba(0,0,0,.48),\r\n      0 10px 28px rgba(15, 185, 129, .08),\r\n      inset 0 0 0 1px rgba(255,255,255,.08),\r\n      inset 0 0 0 5px #070a0f;\r\n  }\r\n  #agora-tourism-landing .ag-phone::before,\r\n  #agora-tourism-landing .ag-phone::after,\r\n  #agora-tourism-landing .ag-phone__key {\r\n    background: linear-gradient(180deg, #626b78, #141922);\r\n    box-shadow: inset 1px 0 0 rgba(255,255,255,.12);\r\n  }\r\n  #agora-tourism-landing .ag-phone__shine {\r\n    inset: 11px;\r\n    border-radius: 46px;\r\n    background: linear-gradient(132deg, rgba(255,255,255,.16), transparent 22%, transparent 70%, rgba(255,255,255,.08) 82%, transparent 90%);\r\n    opacity: .72;\r\n  }\r\n  #agora-tourism-landing .ag-phone__speaker {\r\n    top: 17px;\r\n    width: 126px;\r\n    height: 32px;\r\n    border-radius: 999px;\r\n    background: #05070a;\r\n    box-shadow:\r\n      inset 0 1px 0 rgba(255,255,255,.06),\r\n      inset 0 -1px 0 rgba(255,255,255,.03),\r\n      0 10px 22px rgba(0,0,0,.2);\r\n  }\r\n  #agora-tourism-landing .ag-phone__screen {\r\n    height: 680px;\r\n    border-radius: 45px;\r\n    background:\r\n      linear-gradient(rgba(239, 234, 226, .92), rgba(239, 234, 226, .92)),\r\n      radial-gradient(circle at 14% 18%, rgba(8, 94, 84, .18) 0 1px, transparent 1.5px),\r\n      radial-gradient(circle at 78% 22%, rgba(8, 94, 84, .12) 0 1px, transparent 1.5px),\r\n      radial-gradient(circle at 28% 72%, rgba(8, 94, 84, .1) 0 1px, transparent 1.5px);\r\n    background-size: auto, 26px 26px, 34px 34px, 30px 30px;\r\n    box-shadow: inset 0 0 0 1px rgba(255,255,255,.16);\r\n  }\r\n  #agora-tourism-landing .ag-phone__screen::before {\r\n    opacity: .28;\r\n    background-image:\r\n      radial-gradient(circle at 20% 30%, rgba(7, 94, 84, .14) 0 1px, transparent 1.5px),\r\n      linear-gradient(135deg, transparent 0 46%, rgba(7,94,84,.08) 47% 49%, transparent 50%),\r\n      linear-gradient(45deg, transparent 0 46%, rgba(7,94,84,.06) 47% 49%, transparent 50%);\r\n    background-size: 24px 24px, 42px 42px, 42px 42px;\r\n  }\r\n  #agora-tourism-landing .ag-phone__statusbar {\r\n    top: 10px;\r\n    padding: 2px 24px 0;\r\n    color: rgba(255,255,255,.96);\r\n    font-size: .68rem;\r\n  }\r\n  #agora-tourism-landing .ag-chat-head {\r\n    height: 84px;\r\n    padding: 37px 13px 11px 10px;\r\n    background: #075e54;\r\n    box-shadow: 0 1px 0 rgba(0,0,0,.1);\r\n  }\r\n  #agora-tourism-landing .ag-avatar {\r\n    flex-basis: 42px;\r\n    width: 42px;\r\n    height: 42px;\r\n    color: #e9fffb;\r\n    background:\r\n      radial-gradient(circle at 50% 35%, rgba(255,255,255,.22), transparent 42%),\r\n      linear-gradient(145deg, #128c7e, #25d366);\r\n  }\r\n  #agora-tourism-landing .ag-avatar i {\r\n    border-color: #075e54;\r\n    background: #25d366;\r\n  }\r\n  #agora-tourism-landing .ag-chat-title strong {\r\n    font-size: .95rem;\r\n    letter-spacing: 0;\r\n  }\r\n  #agora-tourism-landing .ag-chat-title small {\r\n    color: rgba(255,255,255,.78);\r\n    font-size: .66rem;\r\n  }\r\n  #agora-tourism-landing .ag-chat-actions {\r\n    gap: 13px;\r\n  }\r\n  #agora-tourism-landing .ag-chat-actions svg {\r\n    width: 19px;\r\n    height: 19px;\r\n  }\r\n  #agora-tourism-landing .ag-scenario-tabs {\r\n    display: none !important;\r\n  }\r\n  #agora-tourism-landing .ag-chat-body {\r\n    height: 525px;\r\n    gap: 8px;\r\n    padding: 16px 12px 96px;\r\n  }\r\n  #agora-tourism-landing .ag-chat-date {\r\n    padding: 5px 10px;\r\n    border-radius: 8px;\r\n    color: #66746f;\r\n    background: rgba(255,255,255,.84);\r\n    font-size: .59rem;\r\n  }\r\n  #agora-tourism-landing .ag-message {\r\n    max-width: 82%;\r\n    padding: 8px 10px 7px;\r\n    border-radius: 8px;\r\n    box-shadow: 0 1px 1px rgba(11,20,26,.14);\r\n    color: #111b21;\r\n    font-size: .72rem;\r\n    line-height: 1.42;\r\n  }\r\n  #agora-tourism-landing .ag-message--guest {\r\n    border-top-right-radius: 2px;\r\n    background: #d9fdd3;\r\n  }\r\n  #agora-tourism-landing .ag-message--bot {\r\n    border-top-left-radius: 2px;\r\n    background: #fff;\r\n  }\r\n  #agora-tourism-landing .ag-message--guest::after,\r\n  #agora-tourism-landing .ag-message--bot::after {\r\n    content: \"\";\r\n    position: absolute;\r\n    top: 0;\r\n    width: 0;\r\n    height: 0;\r\n    border-top: 8px solid currentColor;\r\n  }\r\n  #agora-tourism-landing .ag-message--guest::after {\r\n    right: -6px;\r\n    color: #d9fdd3;\r\n    border-right: 7px solid transparent;\r\n  }\r\n  #agora-tourism-landing .ag-message--bot::after {\r\n    left: -6px;\r\n    color: #fff;\r\n    border-left: 7px solid transparent;\r\n  }\r\n  #agora-tourism-landing .ag-message__text {\r\n    padding-right: 34px;\r\n  }\r\n  #agora-tourism-landing .ag-message__time {\r\n    color: #667781;\r\n    font-size: .52rem;\r\n  }\r\n  #agora-tourism-landing .ag-typing {\r\n    border-radius: 8px 8px 8px 2px;\r\n  }\r\n  #agora-tourism-landing .ag-chat-quick {\r\n    position: absolute;\r\n    left: 0;\r\n    right: 0;\r\n    bottom: 78px;\r\n    z-index: 3;\r\n    display: flex;\r\n    gap: 7px;\r\n    padding: 0 14px 12px;\r\n    overflow: hidden;\r\n  }\r\n  #agora-tourism-landing .ag-chat-quick span {\r\n    flex: 0 0 auto;\r\n    padding: 6px 10px;\r\n    border: 1px solid rgba(7, 94, 84, .12);\r\n    border-radius: 999px;\r\n    color: #315e53;\r\n    background: rgba(255,255,255,.82);\r\n    box-shadow: 0 3px 9px rgba(11,20,26,.05);\r\n    font-size: .64rem;\r\n  }\r\n  #agora-tourism-landing .ag-chat-compose {\r\n    min-height: 68px;\r\n    gap: 10px;\r\n    padding: 10px 13px 14px;\r\n    background: #f0ebe4;\r\n  }\r\n  #agora-tourism-landing .ag-compose-box {\r\n    gap: 9px;\r\n    height: 44px;\r\n    padding: 0 15px 0 18px;\r\n    border-radius: 24px;\r\n    color: #667781;\r\n    background: #fff;\r\n    box-shadow: 0 1px 2px rgba(11,20,26,.08);\r\n  }\r\n  #agora-tourism-landing .ag-emoji {\r\n    display: none !important;\r\n  }\r\n  #agora-tourism-landing .ag-compose-text:empty::after {\r\n    content: attr(data-placeholder);\r\n  }\r\n  #agora-tourism-landing .ag-paperclip {\r\n    transform: none;\r\n    display: grid;\r\n    place-items: center;\r\n    width: 20px;\r\n    height: 20px;\r\n    color: #8696a0;\r\n    font-size: .95rem;\r\n    line-height: 1;\r\n  }\r\n  #agora-tourism-landing .ag-send {\r\n    position: relative;\r\n    flex: 0 0 48px;\r\n    width: 48px;\r\n    height: 48px;\r\n    padding: 0;\r\n    border: 0 !important;\r\n    outline: 0 !important;\r\n    align-self: center;\r\n    background: #00a884;\r\n    box-shadow: 0 6px 16px rgba(0,168,132,.26);\r\n    appearance: none;\r\n    -webkit-appearance: none;\r\n    -webkit-tap-highlight-color: transparent;\r\n  }\r\n  #agora-tourism-landing .ag-send:hover,\r\n  #agora-tourism-landing .ag-send:focus,\r\n  #agora-tourism-landing .ag-send:focus-visible,\r\n  #agora-tourism-landing .ag-send:active {\r\n    border: 0 !important;\r\n    outline: 0 !important;\r\n    background: #00a884;\r\n    box-shadow: 0 6px 16px rgba(0,168,132,.26) !important;\r\n  }\r\n  #agora-tourism-landing .ag-send svg {\r\n    display: none !important;\r\n  }\r\n  #agora-tourism-landing .ag-send::before {\r\n    content: \"\";\r\n    width: 18px;\r\n    height: 18px;\r\n    margin-left: 1px;\r\n    background: currentColor;\r\n    clip-path: polygon(9% 6%, 94% 50%, 9% 94%, 25% 56%, 58% 50%, 25% 44%);\r\n    transform: rotate(-2deg);\r\n  }\r\n\r\n  @media (max-width: 767px) {\r\n    #agora-tourism-landing .ag-demo-wrap {\r\n      min-height: 660px;\r\n    }\r\n    #agora-tourism-landing .ag-phone {\r\n      width: min(362px, 100%);\r\n      border-radius: 48px;\r\n    }\r\n    #agora-tourism-landing .ag-phone__screen {\r\n      height: 624px;\r\n      border-radius: 38px;\r\n    }\r\n    #agora-tourism-landing .ag-phone__speaker {\r\n      width: 112px;\r\n      height: 29px;\r\n    }\r\n    #agora-tourism-landing .ag-chat-head {\r\n      height: 80px;\r\n      padding-top: 35px;\r\n    }\r\n    #agora-tourism-landing .ag-chat-body {\r\n      height: 473px;\r\n      padding-bottom: 94px;\r\n    }\r\n    #agora-tourism-landing .ag-message {\r\n      max-width: 86%;\r\n      font-size: .68rem;\r\n    }\r\n  }\r\n  @media (prefers-reduced-motion: reduce) {\r\n    #agora-tourism-landing .ag-phone, #agora-tourism-landing .ag-dh-avatar__head span, #agora-tourism-landing .ag-dh-bubble { animation: none !important; transform: none !important; }\r\n  }\r\n<\/style>\r\n\r\n<style id=\"agora-human-showcase-final\">\r\n  #agora-tourism-landing .ag-human-showcase { display:grid; grid-template-columns:minmax(0, 52fr) minmax(0, 48fr); gap:clamp(32px, 5vw, 72px); align-items:center; }\r\n  #agora-tourism-landing .ag-human-showcase__visual,\r\n  #agora-tourism-landing .ag-human-showcase__copy { min-width:0; }\r\n  #agora-tourism-landing .ag-human-showcase__visual,\r\n  #agora-tourism-landing .ag-digital-human,\r\n  #agora-tourism-landing [data-vrm-wrap] { height:auto !important; min-height:0 !important; overflow:visible !important; border:0 !important; border-radius:0 !important; background:none !important; box-shadow:none !important; }\r\n  #agora-tourism-landing .ag-digital-human { position:relative; min-width:0; }\r\n  #agora-tourism-landing .ag-dh-stage { position:relative; height:clamp(500px, 48vw, 600px); min-height:500px; overflow:hidden; border-radius:0 !important; border:0 !important; background:none !important; box-shadow:none !important; isolation:isolate; touch-action:pan-y; }\r\n  #agora-tourism-landing .ag-dh-stage::after { content:none !important; display:none !important; }\r\n  #agora-tourism-landing .ag-dh-canvas { position:absolute; inset:0; z-index:3; display:block; width:100%; height:100%; background:transparent; -webkit-mask-image:linear-gradient(to bottom, #000 0%, #000 48%, rgba(0,0,0,.72) 58%, rgba(0,0,0,.22) 68%, transparent 80%); mask-image:linear-gradient(to bottom, #000 0%, #000 48%, rgba(0,0,0,.72) 58%, rgba(0,0,0,.22) 68%, transparent 80%); }\r\n  #agora-tourism-landing .ag-dh-aura,\r\n  #agora-tourism-landing .ag-dh-floor { display:none !important; }\r\n  #agora-tourism-landing .ag-dh-status { position:absolute; z-index:6; left:50%; bottom:16px; display:flex; align-items:center; gap:8px; max-width:calc(100% - 28px); padding:8px 12px; border:1px solid rgba(255,255,255,.14); border-radius:999px; color:rgba(255,255,255,.9); background:rgba(7,20,45,.72); backdrop-filter:blur(10px); font-size:.72rem; font-weight:750; line-height:1.25; transform:translateX(-50%); transition:opacity .3s ease; white-space:normal; }\r\n  #agora-tourism-landing .ag-dh-status i { flex:0 0 auto; width:8px; height:8px; border:2px solid rgba(255,255,255,.35); border-top-color:#74dcff; border-radius:50%; animation:agSpin 1s linear infinite; }\r\n  #agora-tourism-landing .ag-dh-hint { display:none !important; }\r\n  #agora-tourism-landing .ag-dh-stage.has-vrm .ag-dh-status { opacity:0; pointer-events:none; }\r\n  #agora-tourism-landing .ag-dh-stage.has-vrm .ag-dh-hint { display:none !important; }\r\n  #agora-tourism-landing .ag-dh-stage.vrm-error .ag-dh-status { opacity:1; }\r\n  #agora-tourism-landing .ag-dh-stage.vrm-error .ag-dh-status i { border:0; background:#ff9f43; animation:none; }\r\n  #agora-tourism-landing .ag-dh-fallback,\r\n  #agora-tourism-landing .ag-dh-scene,\r\n  #agora-tourism-landing .ag-dh-kiosk,\r\n  #agora-tourism-landing .ag-dh-avatar,\r\n  #agora-tourism-landing .ag-dh-guest,\r\n  #agora-tourism-landing .ag-dh-screen-label,\r\n  #agora-tourism-landing .ag-dh-meta { display:none !important; }\r\n  #agora-tourism-landing .ag-human-showcase__copy { max-width:640px; }\r\n  #agora-tourism-landing .ag-human-showcase__copy .ag-card-label { display:inline-block; margin-bottom:14px; color:#74dcff; font-size:.76rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }\r\n  #agora-tourism-landing .ag-human-showcase__copy h3 { max-width:620px; color:#fff; font-size:clamp(1.75rem, 2.85vw, 2.7rem); line-height:1.12; letter-spacing:0; }\r\n  #agora-tourism-landing .ag-human-showcase__copy p { max-width:620px; color:rgba(255,255,255,.78); font-size:clamp(.98rem, 1.1vw, 1.08rem); line-height:1.72; }\r\n  #agora-tourism-landing .ag-human-showcase__copy .ag-human-positioning { color:rgba(255,255,255,.68); font-size:.94rem; }\r\n  #agora-tourism-landing .ag-human-points { display:grid; gap:10px; margin:22px 0 0; padding:0; list-style:none; }\r\n  #agora-tourism-landing .ag-human-points li { position:relative; padding-left:0; color:rgba(255,255,255,.9); font-size:.96rem; line-height:1.45; }\r\n  #agora-tourism-landing .ag-human-points li::before { content:\"\"; position:absolute; left:0; top:.48em; width:9px; height:9px; border-radius:50%; background:#74dcff; box-shadow:0 0 16px rgba(116,220,255,.45); }\r\n  #agora-tourism-landing .ag-future-card,\r\n  #agora-tourism-landing .ag-future-card--human,\r\n  #agora-tourism-landing .ag-future-card--alps { all:unset; }\r\n  @media (max-width: 1080px) {\r\n    #agora-tourism-landing .ag-human-showcase { grid-template-columns:minmax(0, 1fr) minmax(0, .95fr); gap:34px; }\r\n    #agora-tourism-landing .ag-dh-stage { height:480px; min-height:480px; }\r\n  }\r\n  @media (max-width: 860px) {\r\n    #agora-tourism-landing .ag-human-showcase { grid-template-columns:1fr; }\r\n    #agora-tourism-landing .ag-human-showcase__visual { order:1; }\r\n    #agora-tourism-landing .ag-human-showcase__copy { order:2; max-width:none; }\r\n    #agora-tourism-landing .ag-dh-stage { height:430px; min-height:430px; }\r\n  }\r\n  @media (max-width: 767px) {\r\n    #agora-tourism-landing .ag-human-showcase { gap:24px; }\r\n    #agora-tourism-landing .ag-dh-stage { height:clamp(340px, 108vw, 420px); min-height:340px; }\r\n    #agora-tourism-landing .ag-dh-hint { display:none; }\r\n    #agora-tourism-landing .ag-human-showcase__copy h3 { font-size:clamp(1.45rem, 7vw, 2.05rem); }\r\n    #agora-tourism-landing .ag-human-showcase__copy p { font-size:.95rem; line-height:1.65; }\r\n  }\r\n<\/style>\r\n\r\n<script>\r\n(function () {\r\n  'use strict';\r\n\r\n  function initAgoraLanding() {\r\n    const root = document.getElementById('agora-tourism-landing');\r\n    if (!root || root.dataset.initialized === 'true') return;\r\n    root.dataset.initialized = 'true';\r\n    root.classList.add('ag-js');\r\n\r\n    const reduceMotion = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n\r\n    \/\/ Reveal on scroll\r\n    const revealItems = root.querySelectorAll('[data-reveal]');\r\n    if ('IntersectionObserver' in window && !reduceMotion) {\r\n      const revealObserver = new IntersectionObserver((entries, observer) => {\r\n        entries.forEach((entry) => {\r\n          if (entry.isIntersecting) {\r\n            entry.target.classList.add('is-visible');\r\n            observer.unobserve(entry.target);\r\n          }\r\n        });\r\n      }, { threshold: 0.12, rootMargin: '0px 0px -45px' });\r\n      revealItems.forEach((item, index) => {\r\n        item.style.transitionDelay = Math.min((index % 4) * 70, 210) + 'ms';\r\n        revealObserver.observe(item);\r\n      });\r\n    } else {\r\n      revealItems.forEach((item) => item.classList.add('is-visible'));\r\n    }\r\n\r\n    \/\/ Counter animation\r\n    const counters = root.querySelectorAll('[data-count]');\r\n    const formatNumber = (value) => new Intl.NumberFormat('de-DE').format(value);\r\n    const runCounter = (el) => {\r\n      const end = Number(el.dataset.count || 0);\r\n      const suffix = el.dataset.suffix || '';\r\n      const duration = 1450;\r\n      const startTime = performance.now();\r\n      const tick = (now) => {\r\n        const progress = Math.min((now - startTime) \/ duration, 1);\r\n        const eased = 1 - Math.pow(1 - progress, 3);\r\n        el.textContent = formatNumber(Math.floor(end * eased)) + suffix;\r\n        if (progress < 1) requestAnimationFrame(tick);\r\n      };\r\n      requestAnimationFrame(tick);\r\n    };\r\n    if ('IntersectionObserver' in window && !reduceMotion) {\r\n      const counterObserver = new IntersectionObserver((entries, observer) => {\r\n        entries.forEach((entry) => {\r\n          if (entry.isIntersecting) {\r\n            runCounter(entry.target);\r\n            observer.unobserve(entry.target);\r\n          }\r\n        });\r\n      }, { threshold: .45 });\r\n      counters.forEach((counter) => counterObserver.observe(counter));\r\n    }\r\n\r\n    \/\/ Integration tabs\r\n    const integrationTabs = root.querySelectorAll('[data-int-tab]');\r\n    const integrationPanels = root.querySelectorAll('[data-int-panel]');\r\n    integrationTabs.forEach((tab) => {\r\n      tab.addEventListener('click', () => {\r\n        const target = tab.dataset.intTab;\r\n        integrationTabs.forEach((t) => t.setAttribute('aria-selected', String(t === tab)));\r\n        integrationPanels.forEach((panel) => { panel.hidden = panel.dataset.intPanel !== target; });\r\n      });\r\n    });\r\n\r\n    \/\/ Network lines: align SVG paths to the actual responsive node positions.\r\n    const networkVisual = root.querySelector('.ag-network__visual');\r\n    const networkSvg = root.querySelector('.ag-network-svg');\r\n    const networkCenter = root.querySelector('.ag-node--agora');\r\n    const networkTargets = {\r\n      destination: root.querySelector('.ag-node--destination'),\r\n      school: root.querySelector('.ag-node--school'),\r\n      hotel: root.querySelector('.ag-node--hotel'),\r\n      ski: root.querySelector('.ag-node--ski')\r\n    };\r\n    const updateNetworkLines = () => {\r\n      if (!networkVisual || !networkSvg || !networkCenter) return;\r\n      const visualRect = networkVisual.getBoundingClientRect();\r\n      if (!visualRect.width || !visualRect.height) return;\r\n      const svgWidth = 760;\r\n      const svgHeight = 540;\r\n      const toSvg = (point) => ({\r\n        x: ((point.x - visualRect.left) \/ visualRect.width) * svgWidth,\r\n        y: ((point.y - visualRect.top) \/ visualRect.height) * svgHeight\r\n      });\r\n      const rectCenter = (rect) => ({ x: rect.left + rect.width \/ 2, y: rect.top + rect.height \/ 2 });\r\n      const edgePoint = (rect, toward) => {\r\n        const center = rectCenter(rect);\r\n        const dx = toward.x - center.x;\r\n        const dy = toward.y - center.y;\r\n        const scale = Math.min(\r\n          Math.abs(dx) > 0.001 ? (rect.width \/ 2) \/ Math.abs(dx) : Infinity,\r\n          Math.abs(dy) > 0.001 ? (rect.height \/ 2) \/ Math.abs(dy) : Infinity\r\n        );\r\n        return { x: center.x + dx * scale, y: center.y + dy * scale };\r\n      };\r\n      const circleEdge = (rect, toward) => {\r\n        const center = rectCenter(rect);\r\n        const dx = toward.x - center.x;\r\n        const dy = toward.y - center.y;\r\n        const length = Math.max(1, Math.hypot(dx, dy));\r\n        const radius = Math.min(rect.width, rect.height) \/ 2;\r\n        return { x: center.x + (dx \/ length) * radius, y: center.y + (dy \/ length) * radius };\r\n      };\r\n      const centerRect = networkCenter.getBoundingClientRect();\r\n      const centerPoint = rectCenter(centerRect);\r\n      Object.entries(networkTargets).forEach(([key, node]) => {\r\n        const path = networkSvg.querySelector(`[data-network-line=\"${key}\"]`);\r\n        if (!node || !path) return;\r\n        const nodeRect = node.getBoundingClientRect();\r\n        const nodeCenter = rectCenter(nodeRect);\r\n        const start = toSvg(edgePoint(nodeRect, centerPoint));\r\n        const end = toSvg(circleEdge(centerRect, nodeCenter));\r\n        const midX = (start.x + end.x) \/ 2;\r\n        const midY = (start.y + end.y) \/ 2;\r\n        const bend = key === 'destination' || key === 'ski' ? -18 : 18;\r\n        const control = { x: midX, y: midY + bend };\r\n        path.setAttribute('d', `M${start.x.toFixed(1)} ${start.y.toFixed(1)} Q${control.x.toFixed(1)} ${control.y.toFixed(1)} ${end.x.toFixed(1)} ${end.y.toFixed(1)}`);\r\n      });\r\n    };\r\n    updateNetworkLines();\r\n    window.addEventListener('resize', updateNetworkLines, { passive: true });\r\n    if (window.ResizeObserver && networkVisual) {\r\n      new ResizeObserver(updateNetworkLines).observe(networkVisual);\r\n    }\r\n    if (document.fonts?.ready) {\r\n      document.fonts.ready.then(updateNetworkLines).catch(() => {});\r\n    }\r\n    window.setTimeout(updateNetworkLines, 250);\r\n\r\n    \/\/ Smooth internal anchors (scoped)\r\n    root.querySelectorAll('a[href^=\"#\"]').forEach((link) => {\r\n      link.addEventListener('click', (event) => {\r\n        const target = root.querySelector(link.getAttribute('href'));\r\n        if (!target) return;\r\n        event.preventDefault();\r\n        target.scrollIntoView({ behavior: reduceMotion ? 'auto' : 'smooth', block: 'center' });\r\n      });\r\n    });\r\n\r\n    \/\/ Animated chat demo\r\n    const log = root.querySelector('#ag-chat-log');\r\n    const composeText = root.querySelector('#ag-compose-text');\r\n    const control = root.querySelector('#ag-chat-control');\r\n    const scenarioButtons = root.querySelectorAll('[data-scenario]');\r\n\r\n    if (!log || !composeText || !control) return;\r\n\r\n    let scenarios = {\r\n      hotel: [\r\n        { from: 'guest', text: 'Hallo! Ist heute noch ein Doppelzimmer frei \u2013 und ist ein sp\u00e4ter Check-in m\u00f6glich?' },\r\n        { from: 'bot', text: 'Ja. F\u00fcr heute ist noch ein Doppelzimmer verf\u00fcgbar. Ein Late Check-in ist m\u00f6glich \u2013 ich sende Ihnen gern direkt die Buchungsoption.' },\r\n        { from: 'guest', text: 'Perfekt. Was k\u00f6nnen wir morgen bei Regen machen?' },\r\n        { from: 'bot', text: 'Morgen Vormittag passt das Bergbaumuseum sehr gut. Ab 14 Uhr ist laut Prognose weniger Regen \u2013 dann empfehle ich die Panoramatour mit dem Bus ab 14:22 Uhr.' }\r\n      ],\r\n      ski: [\r\n        { from: 'guest', text: 'Welche Lifte und Rodelbahnen sind heute ge\u00f6ffnet? Wie ist der Schnee?' },\r\n        { from: 'bot', text: 'Aktuell sind 7 von 8 Liften und alle Hauptpisten ge\u00f6ffnet. Die Rodelbahn \u201eWaldweg\u201c ist offen. Neuschnee: 8 cm, Bergtemperatur: \u22124 \u00b0C.' },\r\n        { from: 'guest', text: 'Wo kann ich parken und gibt es einen Bus ab Sterzing?' },\r\n        { from: 'bot', text: 'Am Parkplatz P2 sind derzeit Pl\u00e4tze frei. Der n\u00e4chste Bus f\u00e4hrt um 10:18 Uhr ab Sterzing Bahnhof und kommt um 10:42 Uhr an der Talstation an.' }\r\n      ],\r\n      destination: [\r\n        { from: 'guest', text: 'Wir reisen ohne Auto an. Was ist heute mit Kindern in der Region m\u00f6glich?' },\r\n        { from: 'bot', text: 'Heute empfehle ich das Familienprogramm im Naturparkhaus um 11:00 Uhr. Die Buslinie 312 bringt Sie direkt dorthin; Abfahrt ist um 10:26 Uhr.' },\r\n        { from: 'guest', text: 'Und wo k\u00f6nnen wir danach regional essen?' },\r\n        { from: 'bot', text: 'In 350 m Entfernung liegt der Gasthof Alpenblick. Er ist ge\u00f6ffnet, bietet regionale K\u00fcche und wird bei Google mit 4,7 von 5 bewertet.' }\r\n      ]\r\n    };\r\n\r\n    const languagePacks = [\r\n      {\r\n        key: 'de', locale: 'de-DE', dir: 'ltr', date: 'Heute', placeholder: 'Nachricht', status: 'online \u00b7 antwortet sofort', typing: 'AGORA tippt',\r\n        quick: ['Wetter', 'Events', 'Anreise', 'Verf\u00fcgbarkeit'],\r\n        scenarios: {\r\n          hotel: [\r\n            { from: 'guest', text: 'Hallo! Ist heute noch ein Doppelzimmer frei und ist ein sp\u00e4ter Check-in m\u00f6glich?' },\r\n            { from: 'bot', text: 'Ja. F\u00fcr heute ist noch ein Doppelzimmer verf\u00fcgbar. Late Check-in ist m\u00f6glich. Ich kann Ihnen direkt die passende Buchungsoption senden.' },\r\n            { from: 'guest', text: 'Perfekt. Was k\u00f6nnen wir morgen bei Regen machen?' },\r\n            { from: 'bot', text: 'Morgen Vormittag passt das Bergbaumuseum sehr gut. Ab 14 Uhr wird der Regen laut Prognose schw\u00e4cher. Danach empfehle ich die Panoramatour mit dem Bus ab 14:22 Uhr.' }\r\n          ],\r\n          ski: [\r\n            { from: 'guest', text: 'Welche Lifte und Rodelbahnen sind heute ge\u00f6ffnet? Wie ist der Schnee?' },\r\n            { from: 'bot', text: 'Aktuell sind 7 von 8 Liften und alle Hauptpisten ge\u00f6ffnet. Die Rodelbahn Waldweg ist offen. Neuschnee: 8 cm, Bergtemperatur: -4 \u00b0C.' },\r\n            { from: 'guest', text: 'Wo kann ich parken und gibt es einen Bus ab Sterzing?' },\r\n            { from: 'bot', text: 'Am Parkplatz P2 sind derzeit Pl\u00e4tze frei. Der n\u00e4chste Bus f\u00e4hrt um 10:18 Uhr ab Sterzing Bahnhof und kommt um 10:42 Uhr an der Talstation an.' }\r\n          ],\r\n          destination: [\r\n            { from: 'guest', text: 'Wir reisen ohne Auto an. Was ist heute mit Kindern in der Region m\u00f6glich?' },\r\n            { from: 'bot', text: 'Heute empfehle ich das Familienprogramm im Naturparkhaus um 11:00 Uhr. Die Buslinie 312 bringt Sie direkt dorthin; Abfahrt ist um 10:26 Uhr.' },\r\n            { from: 'guest', text: 'Und wo k\u00f6nnen wir danach regional essen?' },\r\n            { from: 'bot', text: 'In 350 m Entfernung liegt der Gasthof Alpenblick. Er ist ge\u00f6ffnet, bietet regionale K\u00fcche und wird bei Google mit 4,7 von 5 bewertet.' }\r\n          ]\r\n        }\r\n      },\r\n      {\r\n        key: 'it', locale: 'it-IT', dir: 'ltr', date: 'Oggi', placeholder: 'Messaggio', status: 'online \u00b7 risponde subito', typing: 'AGORA sta scrivendo',\r\n        quick: ['Meteo', 'Eventi', 'Arrivo', 'Disponibilit\u00e0'],\r\n        scenarios: {\r\n          hotel: [\r\n            { from: 'guest', text: 'Buongiorno! C\u2019\u00e8 ancora una camera doppia libera per stasera? \u00c8 possibile fare il check-in tardi?' },\r\n            { from: 'bot', text: 'S\u00ec, per stasera \u00e8 disponibile una camera doppia. Il late check-in \u00e8 possibile e posso inviarle subito l\u2019opzione di prenotazione.' },\r\n            { from: 'guest', text: 'Perfetto. Cosa possiamo fare domani se piove?' },\r\n            { from: 'bot', text: 'Domani mattina \u00e8 ideale il museo minerario. Dalle 14:00 la pioggia dovrebbe diminuire; poi consiglio il tour panoramico in bus alle 14:22.' }\r\n          ],\r\n          ski: [\r\n            { from: 'guest', text: 'Quali impianti e piste da slittino sono aperti oggi? Com\u2019\u00e8 la neve?' },\r\n            { from: 'bot', text: 'Al momento sono aperti 7 impianti su 8 e tutte le piste principali. La pista da slittino Waldweg \u00e8 aperta. Neve fresca: 8 cm, temperatura in quota: -4 \u00b0C.' },\r\n            { from: 'guest', text: 'Dove posso parcheggiare? C\u2019\u00e8 un bus da Vipiteno?' },\r\n            { from: 'bot', text: 'Nel parcheggio P2 ci sono ancora posti liberi. Il prossimo bus parte dalla stazione di Vipiteno alle 10:18 e arriva alla cabinovia alle 10:42.' }\r\n          ],\r\n          destination: [\r\n            { from: 'guest', text: 'Viaggiamo senza auto. Cosa possiamo fare oggi con bambini?' },\r\n            { from: 'bot', text: 'Oggi consiglio il programma per famiglie al centro visite del parco naturale alle 11:00. La linea bus 312 vi porta direttamente l\u00ec, partenza alle 10:26.' },\r\n            { from: 'guest', text: 'E dopo dove possiamo mangiare qualcosa di regionale?' },\r\n            { from: 'bot', text: 'A 350 m c\u2019\u00e8 il Gasthof Alpenblick. \u00c8 aperto, propone cucina regionale e ha una valutazione Google di 4,7 su 5.' }\r\n          ]\r\n        }\r\n      },\r\n      {\r\n        key: 'en', locale: 'en-GB', dir: 'ltr', date: 'Today', placeholder: 'Message', status: 'online \u00b7 replies instantly', typing: 'AGORA is typing',\r\n        quick: ['Weather', 'Events', 'Arrival', 'Availability'],\r\n        scenarios: {\r\n          hotel: [\r\n            { from: 'guest', text: 'Hi! Is there still a double room available for tonight, and can we check in late?' },\r\n            { from: 'bot', text: 'Yes. A double room is still available for tonight. Late check-in is possible, and I can send you the booking option right away.' },\r\n            { from: 'guest', text: 'Great. What can we do tomorrow if it rains?' },\r\n            { from: 'bot', text: 'The mining museum is a good fit tomorrow morning. From 2 pm the rain should ease, so I recommend the panoramic bus tour at 2:22 pm.' }\r\n          ],\r\n          ski: [\r\n            { from: 'guest', text: 'Which lifts and sled runs are open today? How is the snow?' },\r\n            { from: 'bot', text: 'Currently 7 of 8 lifts and all main slopes are open. The Waldweg sled run is open. Fresh snow: 8 cm, mountain temperature: -4 \u00b0C.' },\r\n            { from: 'guest', text: 'Where can I park, and is there a bus from Sterzing?' },\r\n            { from: 'bot', text: 'There are still spaces at car park P2. The next bus leaves Sterzing station at 10:18 and arrives at the valley station at 10:42.' }\r\n          ],\r\n          destination: [\r\n            { from: 'guest', text: 'We are travelling without a car. What can we do with children today?' },\r\n            { from: 'bot', text: 'I recommend the family programme at the nature park visitor centre at 11:00. Bus line 312 takes you there directly; departure is at 10:26.' },\r\n            { from: 'guest', text: 'And where can we eat regional food afterwards?' },\r\n            { from: 'bot', text: 'Gasthof Alpenblick is 350 m away. It is open, serves regional food and has a Google rating of 4.7 out of 5.' }\r\n          ]\r\n        }\r\n      },\r\n      {\r\n        key: 'ar', locale: 'ar', dir: 'rtl', date: '\u0627\u0644\u064a\u0648\u0645', placeholder: '\u0631\u0633\u0627\u0644\u0629', status: '\u0645\u062a\u0635\u0644 \u00b7 \u064a\u062c\u064a\u0628 \u0641\u0648\u0631\u0627\u064b', typing: 'AGORA \u064a\u0643\u062a\u0628',\r\n        quick: ['\u0627\u0644\u0637\u0642\u0633', '\u0627\u0644\u0641\u0639\u0627\u0644\u064a\u0627\u062a', '\u0627\u0644\u0648\u0635\u0648\u0644', '\u0627\u0644\u062a\u0648\u0641\u0631'],\r\n        scenarios: {\r\n          hotel: [\r\n            { from: 'guest', text: '\u0645\u0631\u062d\u0628\u0627\u064b\u060c \u0647\u0644 \u062a\u0648\u062c\u062f \u063a\u0631\u0641\u0629 \u0645\u0632\u062f\u0648\u062c\u0629 \u0645\u062a\u0627\u062d\u0629 \u0644\u0647\u0630\u0647 \u0627\u0644\u0644\u064a\u0644\u0629\u061f \u0648\u0647\u0644 \u064a\u0645\u0643\u0646 \u062a\u0633\u062c\u064a\u0644 \u0627\u0644\u0648\u0635\u0648\u0644 \u0641\u064a \u0648\u0642\u062a \u0645\u062a\u0623\u062e\u0631\u061f' },\r\n            { from: 'bot', text: '\u0646\u0639\u0645\u060c \u062a\u0648\u062c\u062f \u063a\u0631\u0641\u0629 \u0645\u0632\u062f\u0648\u062c\u0629 \u0645\u062a\u0627\u062d\u0629 \u0644\u0647\u0630\u0647 \u0627\u0644\u0644\u064a\u0644\u0629. \u062a\u0633\u062c\u064a\u0644 \u0627\u0644\u0648\u0635\u0648\u0644 \u0627\u0644\u0645\u062a\u0623\u062e\u0631 \u0645\u0645\u0643\u0646\u060c \u0648\u064a\u0645\u0643\u0646\u0646\u064a \u0625\u0631\u0633\u0627\u0644 \u062e\u064a\u0627\u0631 \u0627\u0644\u062d\u062c\u0632 \u0645\u0628\u0627\u0634\u0631\u0629.' },\r\n            { from: 'guest', text: '\u0645\u0645\u062a\u0627\u0632. \u0645\u0627\u0630\u0627 \u064a\u0645\u0643\u0646\u0646\u0627 \u0623\u0646 \u0646\u0641\u0639\u0644 \u063a\u062f\u0627\u064b \u0625\u0630\u0627 \u0647\u0637\u0644 \u0627\u0644\u0645\u0637\u0631\u061f' },\r\n            { from: 'bot', text: '\u0635\u0628\u0627\u062d \u0627\u0644\u063a\u062f \u064a\u0646\u0627\u0633\u0628 \u0632\u064a\u0627\u0631\u0629 \u0645\u062a\u062d\u0641 \u0627\u0644\u0645\u0646\u0627\u062c\u0645. \u0627\u0628\u062a\u062f\u0627\u0621\u064b \u0645\u0646 \u0627\u0644\u0633\u0627\u0639\u0629 14:00 \u064a\u062a\u0648\u0642\u0639 \u0623\u0646 \u064a\u062e\u0641 \u0627\u0644\u0645\u0637\u0631\u060c \u0648\u0628\u0639\u062f\u0647\u0627 \u0623\u0646\u0635\u062d \u0628\u062c\u0648\u0644\u0629 \u0628\u0627\u0646\u0648\u0631\u0627\u0645\u064a\u0629 \u0628\u0627\u0644\u062d\u0627\u0641\u0644\u0629 \u0627\u0644\u0633\u0627\u0639\u0629 14:22.' }\r\n          ],\r\n          ski: [\r\n            { from: 'guest', text: '\u0645\u0627 \u0647\u064a \u0627\u0644\u0645\u0635\u0627\u0639\u062f \u0648\u0645\u0633\u0627\u0631\u0627\u062a \u0627\u0644\u062a\u0632\u0644\u062c \u0627\u0644\u0645\u0641\u062a\u0648\u062d\u0629 \u0627\u0644\u064a\u0648\u0645\u061f \u0648\u0643\u064a\u0641 \u062d\u0627\u0644\u0629 \u0627\u0644\u062b\u0644\u062c\u061f' },\r\n            { from: 'bot', text: '\u062d\u0627\u0644\u064a\u0627\u064b 7 \u0645\u0646 8 \u0645\u0635\u0627\u0639\u062f \u0645\u0641\u062a\u0648\u062d\u0629 \u0648\u062c\u0645\u064a\u0639 \u0627\u0644\u0645\u0633\u0627\u0631\u0627\u062a \u0627\u0644\u0631\u0626\u064a\u0633\u064a\u0629 \u0645\u0641\u062a\u0648\u062d\u0629. \u0645\u0633\u0627\u0631 \u0627\u0644\u0632\u0644\u0627\u062c\u0627\u062a Waldweg \u0645\u0641\u062a\u0648\u062d. \u0627\u0644\u062b\u0644\u062c \u0627\u0644\u062c\u062f\u064a\u062f: 8 \u0633\u0645\u060c \u0648\u062f\u0631\u062c\u0629 \u0627\u0644\u062d\u0631\u0627\u0631\u0629 \u0641\u064a \u0627\u0644\u062c\u0628\u0644: -4 \u00b0C.' },\r\n            { from: 'guest', text: '\u0623\u064a\u0646 \u064a\u0645\u0643\u0646\u0646\u064a \u0631\u0643\u0646 \u0627\u0644\u0633\u064a\u0627\u0631\u0629\u061f \u0648\u0647\u0644 \u062a\u0648\u062c\u062f \u062d\u0627\u0641\u0644\u0629 \u0645\u0646 \u0641\u064a\u0628\u064a\u062a\u064a\u0646\u0648\u061f' },\r\n            { from: 'bot', text: '\u0641\u064a \u0645\u0648\u0642\u0641 P2 \u062a\u0648\u062c\u062f \u0623\u0645\u0627\u0643\u0646 \u0634\u0627\u063a\u0631\u0629 \u062d\u0627\u0644\u064a\u0627\u064b. \u062a\u063a\u0627\u062f\u0631 \u0627\u0644\u062d\u0627\u0641\u0644\u0629 \u0627\u0644\u062a\u0627\u0644\u064a\u0629 \u0645\u0646 \u0645\u062d\u0637\u0629 \u0641\u064a\u0628\u064a\u062a\u064a\u0646\u0648 \u0627\u0644\u0633\u0627\u0639\u0629 10:18 \u0648\u062a\u0635\u0644 \u0625\u0644\u0649 \u0645\u062d\u0637\u0629 \u0627\u0644\u0648\u0627\u062f\u064a \u0627\u0644\u0633\u0627\u0639\u0629 10:42.' }\r\n          ],\r\n          destination: [\r\n            { from: 'guest', text: '\u0646\u0633\u0627\u0641\u0631 \u0645\u0646 \u062f\u0648\u0646 \u0633\u064a\u0627\u0631\u0629. \u0645\u0627\u0630\u0627 \u064a\u0645\u0643\u0646\u0646\u0627 \u0623\u0646 \u0646\u0641\u0639\u0644 \u0627\u0644\u064a\u0648\u0645 \u0645\u0639 \u0627\u0644\u0623\u0637\u0641\u0627\u0644\u061f' },\r\n            { from: 'bot', text: '\u0623\u0646\u0635\u062d \u0627\u0644\u064a\u0648\u0645 \u0628\u0628\u0631\u0646\u0627\u0645\u062c \u0627\u0644\u0639\u0627\u0626\u0644\u0627\u062a \u0641\u064a \u0645\u0631\u0643\u0632 \u0627\u0644\u062d\u062f\u064a\u0642\u0629 \u0627\u0644\u0637\u0628\u064a\u0639\u064a\u0629 \u0627\u0644\u0633\u0627\u0639\u0629 11:00. \u062e\u0637 \u0627\u0644\u062d\u0627\u0641\u0644\u0629 312 \u064a\u0648\u0635\u0644\u0643\u0645 \u0645\u0628\u0627\u0634\u0631\u0629\u060c \u0648\u0627\u0644\u0627\u0646\u0637\u0644\u0627\u0642 \u0627\u0644\u0633\u0627\u0639\u0629 10:26.' },\r\n            { from: 'guest', text: '\u0648\u0623\u064a\u0646 \u064a\u0645\u0643\u0646\u0646\u0627 \u062a\u0646\u0627\u0648\u0644 \u0637\u0639\u0627\u0645 \u0645\u062d\u0644\u064a \u0628\u0639\u062f \u0630\u0644\u0643\u061f' },\r\n            { from: 'bot', text: '\u064a\u0642\u0639 Gasthof Alpenblick \u0639\u0644\u0649 \u0628\u0639\u062f 350 \u0645\u062a\u0631\u0627\u064b. \u0627\u0644\u0645\u0637\u0639\u0645 \u0645\u0641\u062a\u0648\u062d \u0648\u064a\u0642\u062f\u0645 \u0623\u0637\u0628\u0627\u0642\u0627\u064b \u0645\u062d\u0644\u064a\u0629 \u0648\u062a\u0642\u064a\u064a\u0645\u0647 \u0639\u0644\u0649 Google \u0647\u0648 4.7 \u0645\u0646 5.' }\r\n          ]\r\n        }\r\n      }\r\n    ];\r\n\r\n    const pickRandom = (items) => items[Math.floor(Math.random() * items.length)];\r\n    let activeLanguage = pickRandom(languagePacks);\r\n    scenarios = activeLanguage.scenarios;\r\n    let activeScenario = pickRandom(Object.keys(scenarios));\r\n    let runId = 0;\r\n    let paused = false;\r\n    let activeTimeout = null;\r\n\r\n    const wait = (ms, localRunId) => new Promise((resolve) => {\r\n      activeTimeout = window.setTimeout(() => resolve(localRunId === runId), ms);\r\n    });\r\n\r\n    const timeNow = () => new Date().toLocaleTimeString(activeLanguage.locale, { hour: '2-digit', minute: '2-digit' });\r\n\r\n    const applyLanguageChrome = () => {\r\n      log.dir = activeLanguage.dir;\r\n      composeText.dir = activeLanguage.dir;\r\n      composeText.dataset.placeholder = activeLanguage.placeholder;\r\n      const titleStatus = root.querySelector('.ag-chat-title small');\r\n      if (titleStatus) titleStatus.innerHTML = '<span><\/span> ' + activeLanguage.status;\r\n      root.querySelectorAll('.ag-chat-quick span').forEach((chip, index) => {\r\n        chip.textContent = activeLanguage.quick[index] || chip.textContent;\r\n      });\r\n    };\r\n\r\n    const resetLog = () => {\r\n      applyLanguageChrome();\r\n      log.innerHTML = '<div class=\"ag-chat-date\">' + activeLanguage.date + '<\/div>';\r\n      composeText.textContent = '';\r\n    };\r\n\r\n    const scrollLog = () => { log.scrollTop = log.scrollHeight; };\r\n\r\n    const showTyping = () => {\r\n      const typing = document.createElement('div');\r\n      typing.className = 'ag-typing';\r\n      typing.setAttribute('aria-label', activeLanguage.typing);\r\n      typing.innerHTML = '<i><\/i><i><\/i><i><\/i>';\r\n      log.appendChild(typing);\r\n      scrollLog();\r\n      return typing;\r\n    };\r\n\r\n    const addMessage = (message) => {\r\n      const bubble = document.createElement('div');\r\n      bubble.className = 'ag-message ag-message--' + message.from;\r\n      const safeText = document.createTextNode(message.text);\r\n      const textSpan = document.createElement('span');\r\n      textSpan.className = 'ag-message__text';\r\n      textSpan.appendChild(safeText);\r\n      const time = document.createElement('span');\r\n      time.className = 'ag-message__time';\r\n      time.textContent = timeNow();\r\n      bubble.append(textSpan, time);\r\n      log.appendChild(bubble);\r\n      scrollLog();\r\n    };\r\n\r\n    const typeIntoCompose = async (text, localRunId) => {\r\n      composeText.textContent = '';\r\n      const step = Math.max(1, Math.ceil(text.length \/ 42));\r\n      for (let i = 0; i < text.length; i += step) {\r\n        if (localRunId !== runId || paused) return false;\r\n        composeText.textContent = text.slice(0, i + step);\r\n        const ok = await wait(27 + Math.random() * 25, localRunId);\r\n        if (!ok) return false;\r\n      }\r\n      const ok = await wait(250, localRunId);\r\n      if (!ok) return false;\r\n      composeText.textContent = '';\r\n      return true;\r\n    };\r\n\r\n    const playScenario = async (scenarioKey) => {\r\n      runId += 1;\r\n      const localRunId = runId;\r\n      if (activeTimeout) clearTimeout(activeTimeout);\r\n      resetLog();\r\n      const messages = scenarios[scenarioKey] || scenarios.hotel;\r\n\r\n      if (reduceMotion) {\r\n        messages.forEach(addMessage);\r\n        return;\r\n      }\r\n\r\n      await wait(450, localRunId);\r\n      for (const message of messages) {\r\n        if (localRunId !== runId || paused) return;\r\n        if (message.from === 'guest') {\r\n          const typed = await typeIntoCompose(message.text, localRunId);\r\n          if (!typed) return;\r\n          addMessage(message);\r\n          if (!await wait(520, localRunId)) return;\r\n        } else {\r\n          const typing = showTyping();\r\n          if (!await wait(Math.min(1500, 650 + message.text.length * 7), localRunId)) return;\r\n          typing.remove();\r\n          addMessage(message);\r\n          if (!await wait(980, localRunId)) return;\r\n        }\r\n      }\r\n\r\n      if (localRunId === runId && !paused) {\r\n        await wait(3200, localRunId);\r\n        if (localRunId === runId && !paused) playScenario(activeScenario);\r\n      }\r\n    };\r\n\r\n    scenarioButtons.forEach((button) => {\r\n      button.addEventListener('click', () => {\r\n        activeScenario = button.dataset.scenario || 'hotel';\r\n        paused = false;\r\n        control.classList.remove('is-paused');\r\n        control.setAttribute('aria-label', 'Animation pausieren');\r\n        scenarioButtons.forEach((btn) => btn.setAttribute('aria-selected', String(btn === button)));\r\n        playScenario(activeScenario);\r\n      });\r\n    });\r\n\r\n    control.addEventListener('click', () => {\r\n      paused = !paused;\r\n      control.classList.toggle('is-paused', paused);\r\n      control.setAttribute('aria-label', paused ? 'Animation abspielen' : 'Animation pausieren');\r\n      runId += 1;\r\n      if (activeTimeout) clearTimeout(activeTimeout);\r\n      if (!paused) playScenario(activeScenario);\r\n    });\r\n\r\n    \/\/ Subtle parallax for the phone\r\n    const demoWrap = root.querySelector('.ag-demo-wrap');\r\n    const phone = root.querySelector('.ag-phone');\r\n    if (demoWrap && phone && !reduceMotion) {\r\n      const resetPhone = () => { phone.style.transform = 'perspective(1200px) rotateY(-6deg) rotateX(2deg)'; };\r\n      demoWrap.addEventListener('mousemove', (event) => {\r\n        const rect = demoWrap.getBoundingClientRect();\r\n        const px = ((event.clientX - rect.left) \/ rect.width - 0.5) * 2;\r\n        const py = ((event.clientY - rect.top) \/ rect.height - 0.5) * 2;\r\n        phone.style.transform = `perspective(1200px) rotateY(${px * 9 - 4}deg) rotateX(${py * -7 + 1}deg) translateY(-4px)`;\r\n      });\r\n      demoWrap.addEventListener('mouseleave', resetPhone);\r\n      resetPhone();\r\n    }\r\n\r\n    \/\/ Pause when the tab is hidden; restart when visible\r\n    document.addEventListener('visibilitychange', () => {\r\n      if (document.hidden) {\r\n        runId += 1;\r\n        if (activeTimeout) clearTimeout(activeTimeout);\r\n      } else if (!paused) {\r\n        playScenario(activeScenario);\r\n      }\r\n    });\r\n\r\n    playScenario(activeScenario);\r\n  }\r\n\r\n  if (document.readyState === 'loading') {\r\n    document.addEventListener('DOMContentLoaded', initAgoraLanding, { once: true });\r\n  } else {\r\n    initAgoraLanding();\r\n  }\r\n\r\n  \/\/ Elementor Editor kann Widgets dynamisch neu rendern.\r\n  window.addEventListener('elementor\/frontend\/init', function () {\r\n    window.setTimeout(initAgoraLanding, 50);\r\n  });\r\n})();\r\n<\/script>\r\n\r\n\r\n<script type=\"importmap\">\r\n{\r\n  \"imports\": {\r\n    \"three\": \"https:\/\/unpkg.com\/three@0.158.0\/build\/three.module.js\",\r\n    \"three\/examples\/jsm\/\": \"https:\/\/unpkg.com\/three@0.158.0\/examples\/jsm\/\"\r\n  }\r\n}\r\n<\/script>\r\n\r\n<script type=\"module\">\r\nimport * as THREE from \"three\";\r\nimport { GLTFLoader } from \"three\/examples\/jsm\/loaders\/GLTFLoader.js\";\r\nimport { VRMLoaderPlugin } from \"https:\/\/unpkg.com\/@pixiv\/three-vrm@2.0.7\/lib\/three-vrm.module.js\";\r\n\r\nconst VERSION_INFO = { three: \"0.158.0\", threeVrm: \"2.0.7\" };\r\nconst instances = window.__agoraDigitalHumanInstances || new WeakMap();\r\nwindow.__agoraDigitalHumanInstances = instances;\r\n\r\nconst clamp01 = (value) => Math.min(1, Math.max(0, value));\r\nconst clamp = (value, min, max) => Math.min(max, Math.max(min, value));\r\nconst isTouchOnly = () => window.matchMedia?.(\"(pointer: coarse)\")?.matches && !window.matchMedia?.(\"(hover: hover)\")?.matches;\r\n\r\nasync function probeAsset(url, label) {\r\n  if (!url) return null;\r\n  try {\r\n    const absolute = new URL(url, window.location.href).href;\r\n    const response = await fetch(absolute, { method: \"HEAD\", mode: \"cors\", cache: \"no-store\" });\r\n    const info = {\r\n      label,\r\n      url: absolute,\r\n      status: response.status,\r\n      ok: response.ok,\r\n      cors: \"readable\",\r\n      mimeType: response.headers.get(\"content-type\") || \"\",\r\n      contentLength: response.headers.get(\"content-length\") || \"\",\r\n      mixedContent: window.location.protocol === \"https:\" && absolute.startsWith(\"http:\"),\r\n      csp: \"no browser CSP block reported for HEAD\"\r\n    };\r\n    console.info(\"AGORA VRM asset probe\", info);\r\n    return info;\r\n  } catch (error) {\r\n    console.warn(\"AGORA VRM asset probe failed\", { label, url, error });\r\n    return { label, url, error, cors: \"blocked or unavailable\" };\r\n  }\r\n}\r\n\r\nfunction collectExpressionNames(vrm) {\r\n  const names = new Set();\r\n  const em = vrm?.expressionManager;\r\n  const candidates = [\r\n    em?.expressions,\r\n    em?._expressions,\r\n    em?.expressionMap,\r\n    em?._expressionMap,\r\n    em?.presetExpressionMap,\r\n    em?._presetExpressionMap,\r\n    em?.customExpressionMap,\r\n    em?._customExpressionMap,\r\n  ];\r\n  candidates.forEach((candidate) => {\r\n    if (!candidate) return;\r\n    if (candidate instanceof Map) {\r\n      candidate.forEach((value, key) => {\r\n        if (typeof key === \"string\") names.add(key);\r\n        if (value?.expressionName) names.add(value.expressionName);\r\n        if (value?.name) names.add(value.name);\r\n      });\r\n    } else if (Array.isArray(candidate)) {\r\n      candidate.forEach((value) => {\r\n        if (typeof value === \"string\") names.add(value);\r\n        if (value?.expressionName) names.add(value.expressionName);\r\n        if (value?.name) names.add(value.name);\r\n      });\r\n    } else if (typeof candidate === \"object\") {\r\n      Object.keys(candidate).forEach((key) => names.add(key));\r\n    }\r\n  });\r\n  [\"aa\", \"ih\", \"ee\", \"oh\", \"ou\", \"blink\", \"blinkLeft\", \"blinkRight\", \"happy\", \"joy\", \"smile\", \"smileLeft\", \"smileRight\", \"mouthSmileLeft\", \"mouthSmileRight\"].forEach((name) => {\r\n    try {\r\n      em?.setValue(name, 0);\r\n      names.add(name);\r\n    } catch {}\r\n  });\r\n  return names;\r\n}\r\n\r\nfunction createExpressionSetter(vrm) {\r\n  const names = collectExpressionNames(vrm);\r\n  const aliases = {\r\n    a: [\"aa\", \"A\", \"mouthA\", \"viseme_aa\", \"vrc.v_aa\"],\r\n    e: [\"ee\", \"E\", \"mouthE\", \"viseme_E\", \"vrc.v_ee\"],\r\n    i: [\"ih\", \"I\", \"mouthI\", \"viseme_I\", \"vrc.v_ih\"],\r\n    o: [\"oh\", \"O\", \"mouthO\", \"viseme_O\", \"vrc.v_oh\"],\r\n    u: [\"ou\", \"U\", \"mouthU\", \"viseme_U\", \"vrc.v_ou\"],\r\n    blink: [\"blink\", \"Blink\"],\r\n    blinkLeft: [\"blinkLeft\", \"BlinkLeft\"],\r\n    blinkRight: [\"blinkRight\", \"BlinkRight\"],\r\n    smile: [\"happy\", \"joy\", \"smile\"],\r\n    smileLeft: [\"smileLeft\", \"mouthSmileLeft\"],\r\n    smileRight: [\"smileRight\", \"mouthSmileRight\"]\r\n  };\r\n  const resolved = {};\r\n  Object.entries(aliases).forEach(([key, list]) => {\r\n    resolved[key] = list.find((name) => names.has(name)) || null;\r\n  });\r\n  console.info(\"AGORA VRM expressions\", { available: Array.from(names).sort(), resolved });\r\n  return (key, value) => {\r\n    const name = resolved[key] || (names.has(key) ? key : null);\r\n    if (!name) return;\r\n    try { vrm.expressionManager?.setValue(name, clamp01(value)); } catch {}\r\n  };\r\n}\r\n\r\nfunction initDigitalHuman(stage) {\r\n  if (!stage || instances.has(stage)) return instances.get(stage);\r\n\r\n  const canvas = stage.querySelector(\".ag-dh-canvas\");\r\n  const statusText = stage.querySelector(\".ag-dh-status span\");\r\n  const src = stage.dataset.vrmSrc || \"\";\r\n  const remoteSrc = stage.dataset.vrmRemoteSrc || \"\";\r\n  if (!canvas || !src) return null;\r\n\r\n  let disposed = false;\r\n  let frameId = 0;\r\n  let resizeObserver = null;\r\n  let mutationObserver = null;\r\n  let vrm = null;\r\n  let mixer = null;\r\n  let setExpression = () => {};\r\n  let head = null;\r\n  let neck = null;\r\n  let chest = null;\r\n  let hips = null;\r\n  let leftEye = null;\r\n  let rightEye = null;\r\n  let leftUpperArm = null;\r\n  let rightUpperArm = null;\r\n  let leftLowerArm = null;\r\n  let rightLowerArm = null;\r\n  let baseY = 0;\r\n  let pointerInside = false;\r\n  let targetX = 0;\r\n  let targetY = 0;\r\n  let lookX = 0;\r\n  let lookY = 0;\r\n  let blink = 0;\r\n  let blinkPhase = \"idle\";\r\n  let blinkClock = 0;\r\n  let blinkHold = 0;\r\n  let nextBlink = 1.6 + Math.random() * 2.8;\r\n  const baseSmile = 0.18;\r\n  let smileAmount = baseSmile;\r\n  let smileTarget = baseSmile;\r\n  let smileClock = 0;\r\n  let nextSmile = 3.5 + Math.random() * 4.5;\r\n  let smileHold = 0;\r\n  let idleT = 0;\r\n  const touchOnly = isTouchOnly();\r\n\r\n  const setStatus = (text, isError = false) => {\r\n    if (statusText) statusText.textContent = text;\r\n    stage.classList.toggle(\"vrm-error\", !!isError);\r\n  };\r\n\r\n  const renderer = new THREE.WebGLRenderer({ canvas, alpha: true, antialias: true, powerPreference: \"high-performance\" });\r\n  renderer.outputColorSpace = THREE.SRGBColorSpace;\r\n  renderer.setClearColor(0x000000, 0);\r\n  renderer.toneMapping = THREE.ACESFilmicToneMapping;\r\n  renderer.toneMappingExposure = 1.08;\r\n\r\n  const scene = new THREE.Scene();\r\n  const camera = new THREE.PerspectiveCamera(24, 1, 0.05, 100);\r\n  scene.add(camera);\r\n\r\n  const lookTarget = new THREE.Object3D();\r\n  scene.add(lookTarget);\r\n\r\n  const hemi = new THREE.HemisphereLight(0xffffff, 0x26385f, 1.25);\r\n  const key = new THREE.DirectionalLight(0xffffff, 1.55);\r\n  key.position.set(1.35, 2.4, 2.2);\r\n  const fill = new THREE.PointLight(0x9eeaff, 1.15, 8);\r\n  fill.position.set(-1.45, 1.55, 1.5);\r\n  const rim = new THREE.DirectionalLight(0x6f8cff, 0.95);\r\n  rim.position.set(-1.2, 1.8, -2.2);\r\n  scene.add(hemi, key, fill, rim);\r\n\r\n  const clock = new THREE.Clock();\r\n  const loader = new GLTFLoader();\r\n  loader.crossOrigin = \"anonymous\";\r\n  loader.register((parser) => new VRMLoaderPlugin(parser));\r\n\r\n  const resize = () => {\r\n    if (disposed) return;\r\n    const width = Math.max(1, stage.clientWidth);\r\n    const height = Math.max(1, stage.clientHeight);\r\n    renderer.setPixelRatio(Math.min(window.devicePixelRatio || 1, 2));\r\n    renderer.setSize(width, height, false);\r\n    camera.aspect = width \/ height;\r\n    camera.updateProjectionMatrix();\r\n  };\r\n\r\n  const pointerMove = (event) => {\r\n    if (touchOnly || !event.isPrimary) return;\r\n    pointerInside = true;\r\n    targetX = clamp((event.clientX \/ Math.max(1, window.innerWidth) - 0.5) * 2, -1, 1);\r\n    targetY = clamp((event.clientY \/ Math.max(1, window.innerHeight) - 0.5) * 2, -1, 1);\r\n  };\r\n  const pointerLeave = () => {\r\n    pointerInside = false;\r\n    targetX = 0;\r\n    targetY = 0;\r\n  };\r\n\r\n  function updateBlink(dt) {\r\n    if (blinkPhase === \"idle\") {\r\n      blinkClock += dt;\r\n      if (blinkClock > nextBlink) { blinkPhase = \"closing\"; blinkClock = 0; }\r\n    } else if (blinkPhase === \"closing\") {\r\n      blink = Math.min(1, blink + dt * 13);\r\n      if (blink >= 1) { blinkPhase = \"hold\"; blinkHold = 0.035 + Math.random() * 0.035; }\r\n    } else if (blinkPhase === \"hold\") {\r\n      blinkHold -= dt;\r\n      if (blinkHold <= 0) blinkPhase = \"opening\";\r\n    } else if (blinkPhase === \"opening\") {\r\n      blink = Math.max(0, blink - dt * 10.5);\r\n      if (blink <= 0) {\r\n        blinkPhase = \"idle\";\r\n        blinkClock = 0;\r\n        nextBlink = 1.9 + Math.random() * 3.2;\r\n      }\r\n    }\r\n    setExpression(\"blink\", blink);\r\n    setExpression(\"blinkLeft\", blink);\r\n    setExpression(\"blinkRight\", blink);\r\n  }\r\n\r\n  function updateSmile(dt) {\r\n    smileClock += dt;\r\n    if (smileHold > 0) {\r\n      smileHold -= dt;\r\n      if (smileHold <= 0) smileTarget = baseSmile;\r\n    } else if (smileClock > nextSmile) {\r\n      smileClock = 0;\r\n      nextSmile = 5.5 + Math.random() * 6.5;\r\n      smileHold = 1.2 + Math.random() * 1.4;\r\n      smileTarget = 0.34 + Math.random() * 0.12;\r\n    }\r\n    const rate = smileTarget > smileAmount ? 1 - Math.exp(-2.8 * dt) : 1 - Math.exp(-2.2 * dt);\r\n    smileAmount = THREE.MathUtils.lerp(smileAmount, smileTarget, rate);\r\n    setExpression(\"smile\", smileAmount);\r\n    setExpression(\"smileLeft\", smileAmount * 0.85);\r\n    setExpression(\"smileRight\", smileAmount * 0.85);\r\n  }\r\n\r\n  function applyBoneLook(dt, elapsed) {\r\n    const ease = 1 - Math.exp(-7.5 * dt);\r\n    const targetNeutralX = pointerInside ? targetX : 0;\r\n    const targetNeutralY = pointerInside ? targetY : 0;\r\n    lookX = THREE.MathUtils.lerp(lookX, targetNeutralX, ease);\r\n    lookY = THREE.MathUtils.lerp(lookY, targetNeutralY, ease);\r\n\r\n    const yaw = clamp(lookX * 0.32, -0.38, 0.38);\r\n    const pitch = clamp(-lookY * 0.17, -0.22, 0.2);\r\n\r\n    if (head) {\r\n      head.rotation.y = yaw;\r\n      head.rotation.x = pitch;\r\n      head.rotation.z = clamp(-lookX * 0.035, -0.045, 0.045);\r\n    }\r\n    if (neck) {\r\n      neck.rotation.y = clamp(lookX * 0.12, -0.16, 0.16);\r\n      neck.rotation.x = clamp(-lookY * 0.055, -0.08, 0.08);\r\n    }\r\n    if (chest) {\r\n      chest.rotation.y = clamp(lookX * 0.035, -0.06, 0.06);\r\n      chest.rotation.x = 0;\r\n    }\r\n    if (leftUpperArm) {\r\n      leftUpperArm.rotation.z = 1.18;\r\n      leftUpperArm.rotation.y = 0.08;\r\n    }\r\n    if (rightUpperArm) {\r\n      rightUpperArm.rotation.z = -1.18;\r\n      rightUpperArm.rotation.y = -0.08;\r\n    }\r\n    if (leftLowerArm) leftLowerArm.rotation.z = 0.12;\r\n    if (rightLowerArm) rightLowerArm.rotation.z = -0.12;\r\n    const eyeYaw = clamp(lookX * 0.18, -0.22, 0.22);\r\n    const eyePitch = clamp(-lookY * 0.08, -0.12, 0.12);\r\n    if (leftEye) { leftEye.rotation.y = eyeYaw; leftEye.rotation.x = eyePitch; }\r\n    if (rightEye) { rightEye.rotation.y = eyeYaw; rightEye.rotation.x = eyePitch; }\r\n    lookTarget.position.set(lookX * 0.75, 1.32 - lookY * 0.45, 1.2);\r\n    try { if (vrm?.lookAt) vrm.lookAt.target = lookTarget; } catch {}\r\n  }\r\n\r\n  function frameAvatar() {\r\n    const box = new THREE.Box3().setFromObject(vrm.scene);\r\n    const size = box.getSize(new THREE.Vector3());\r\n    const initialHeight = Math.max(size.y, 0.001);\r\n    const scale = 2.18 \/ initialHeight;\r\n    vrm.scene.scale.setScalar(scale);\r\n    vrm.scene.position.set(0, -0.82, 0);\r\n    baseY = vrm.scene.position.y;\r\n\r\n    vrm.scene.updateMatrixWorld(true);\r\n    const portraitY = 1.0;\r\n    const distance = 2.9;\r\n    camera.position.set(0, portraitY, distance);\r\n    camera.lookAt(0, 0.9, 0);\r\n    lookTarget.position.set(0, portraitY + 0.02, 1.15);\r\n  }\r\n\r\n  function render() {\r\n    if (disposed) return;\r\n    frameId = requestAnimationFrame(render);\r\n    const dt = Math.min(clock.getDelta(), 0.05);\r\n    const elapsed = clock.elapsedTime;\r\n    if (vrm) {\r\n      if (vrm.scene) vrm.scene.position.y = baseY;\r\n      applyBoneLook(dt, elapsed);\r\n      updateBlink(dt);\r\n      updateSmile(dt);\r\n      vrm.update(dt);\r\n      mixer?.update(dt);\r\n    }\r\n    renderer.render(scene, camera);\r\n  }\r\n\r\n  async function load() {\r\n    console.info(\"AGORA VRM runtime\", VERSION_INFO);\r\n    setStatus(\"Digital Human wird geladen ...\");\r\n    if (window.location.protocol === \"file:\") {\r\n      throw new Error(\"Diese VRM-Demo muss \u00fcber einen lokalen HTTP-Server ge\u00f6ffnet werden. file:\/\/ blockiert lokale Modul- und VRM-Assets wegen Browser-CORS.\");\r\n    }\r\n    console.info(\"AGORA VRM source selection\", {\r\n      activeSource: new URL(src, window.location.href).href,\r\n      remoteSource: remoteSrc,\r\n      remoteSourceNote: \"Runtime uses the configured WordPress VRM asset.\"\r\n    });\r\n\r\n    let duplicateExpressionWarnings = 0;\r\n    const originalWarn = console.warn;\r\n    console.warn = (...args) => {\r\n      const message = String(args[0] || \"\");\r\n      if (message.includes(\"VRMExpressionLoaderPlugin\") && message.includes(\"duplicated entries\")) {\r\n        duplicateExpressionWarnings += 1;\r\n        return;\r\n      }\r\n      originalWarn.apply(console, args);\r\n    };\r\n    let gltf;\r\n    try {\r\n      gltf = await new Promise((resolve, reject) => {\r\n        loader.load(src, resolve, (event) => {\r\n          if (event.total > 0) setStatus(`Digital Human wird geladen ... ${Math.round((event.loaded \/ event.total) * 100)} %`);\r\n        }, reject);\r\n      });\r\n    } finally {\r\n      console.warn = originalWarn;\r\n    }\r\n    if (duplicateExpressionWarnings > 0) {\r\n      console.info(\"AGORA VRM duplicate expression entries ignored\", { count: duplicateExpressionWarnings });\r\n    }\r\n\r\n    vrm = gltf.userData.vrm;\r\n    if (!vrm) throw new Error(\"Die GLB-Datei wurde geladen, aber nicht als VRM erkannt.\");\r\n\r\n    console.info(\"AGORA VRM loaded\", {\r\n      recognizedAsVrm: true,\r\n      vrmMetaVersion: vrm.meta?.metaVersion || \"1\",\r\n      title: vrm.meta?.title || \"\",\r\n      authors: vrm.meta?.authors || vrm.meta?.author || \"\"\r\n    });\r\n\r\n    vrm.scene.rotation.y = Math.PI;\r\n    vrm.scene.traverse((node) => { node.frustumCulled = false; });\r\n    vrm.scene.traverse((node) => {\r\n      if (!node.isMesh && !node.isSkinnedMesh) return;\r\n      node.visible = true;\r\n      node.frustumCulled = false;\r\n      node.renderOrder = 10;\r\n      const materials = Array.isArray(node.material) ? node.material : [node.material];\r\n      materials.forEach((material) => {\r\n        if (!material) return;\r\n        material.needsUpdate = true;\r\n      });\r\n    });\r\n    scene.add(vrm.scene);\r\n    mixer = new THREE.AnimationMixer(vrm.scene);\r\n\r\n    const getBone = (name) => vrm.humanoid?.getNormalizedBoneNode?.(name) || null;\r\n    head = getBone(\"head\");\r\n    neck = getBone(\"neck\");\r\n    chest = getBone(\"upperChest\") || getBone(\"chest\") || getBone(\"spine\");\r\n    hips = getBone(\"hips\");\r\n    leftEye = getBone(\"leftEye\");\r\n    rightEye = getBone(\"rightEye\");\r\n    leftUpperArm = getBone(\"leftUpperArm\");\r\n    rightUpperArm = getBone(\"rightUpperArm\");\r\n    leftLowerArm = getBone(\"leftLowerArm\");\r\n    rightLowerArm = getBone(\"rightLowerArm\");\r\n    console.info(\"AGORA VRM bones\", { head: !!head, neck: !!neck, chest: !!chest, hips: !!hips, leftEye: !!leftEye, rightEye: !!rightEye, leftUpperArm: !!leftUpperArm, rightUpperArm: !!rightUpperArm });\r\n\r\n    setExpression = createExpressionSetter(vrm);\r\n    [\"a\", \"e\", \"i\", \"o\", \"u\"].forEach((name) => setExpression(name, 0));\r\n    setExpression(\"smile\", baseSmile);\r\n    setExpression(\"smileLeft\", baseSmile * 0.85);\r\n    setExpression(\"smileRight\", baseSmile * 0.85);\r\n    frameAvatar();\r\n    resize();\r\n    stage.classList.add(\"has-vrm\");\r\n    setStatus(\"Digital Human aktiv\");\r\n  }\r\n\r\n  const cleanup = () => {\r\n    if (disposed) return;\r\n    disposed = true;\r\n    cancelAnimationFrame(frameId);\r\n    resizeObserver?.disconnect();\r\n    mutationObserver?.disconnect();\r\n    window.removeEventListener(\"pointermove\", pointerMove);\r\n    document.removeEventListener(\"mouseleave\", pointerLeave);\r\n    window.removeEventListener(\"blur\", pointerLeave);\r\n    if (vrm) {\r\n      scene.remove(vrm.scene);\r\n      vrm.dispose?.();\r\n    }\r\n    renderer.dispose();\r\n    renderer.forceContextLoss?.();\r\n    instances.delete(stage);\r\n    delete stage.dataset.vrmInitialized;\r\n  };\r\n\r\n  stage.dataset.vrmInitialized = \"true\";\r\n  resizeObserver = new ResizeObserver(resize);\r\n  resizeObserver.observe(stage);\r\n  if (!touchOnly) {\r\n    window.addEventListener(\"pointermove\", pointerMove, { passive: true });\r\n    document.addEventListener(\"mouseleave\", pointerLeave, { passive: true });\r\n    window.addEventListener(\"blur\", pointerLeave);\r\n  }\r\n  mutationObserver = new MutationObserver(() => {\r\n    if (!document.documentElement.contains(stage)) cleanup();\r\n  });\r\n  mutationObserver.observe(document.documentElement, { childList: true, subtree: true });\r\n\r\n  resize();\r\n  render();\r\n  load().catch((error) => {\r\n    console.error(\"AGORA VRM konnte nicht geladen werden:\", error);\r\n    stage.classList.remove(\"has-vrm\");\r\n    setStatus(`Avatar konnte nicht geladen werden: ${error?.message || error}`, true);\r\n  });\r\n\r\n  const api = { cleanup };\r\n  instances.set(stage, api);\r\n  return api;\r\n}\r\n\r\nfunction initAgoraDigitalHumans() {\r\n  document.querySelectorAll(\"#agora-tourism-landing [data-vrm-viewer]\").forEach((stage) => {\r\n    const previous = instances.get(stage);\r\n    if (previous) return;\r\n    initDigitalHuman(stage);\r\n  });\r\n}\r\n\r\nif (document.readyState === \"loading\") {\r\n  document.addEventListener(\"DOMContentLoaded\", initAgoraDigitalHumans, { once: true });\r\n} else {\r\n  initAgoraDigitalHumans();\r\n}\r\n\r\nwindow.addEventListener(\"elementor\/frontend\/init\", () => {\r\n  window.setTimeout(initAgoraDigitalHumans, 50);\r\n});\r\nwindow.__initAgoraDigitalHumans = initAgoraDigitalHumans;\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Chatbot aus S\u00fcdtirol \u2013 f\u00fcr \u00d6sterreich, S\u00fcdtirol und den Alpenraum Der KI-Chatbot f\u00fcr Tourismus in S\u00fcdtirol &amp; \u00d6sterreich AGORA ist der anpassbare Tourismus-Chatbot f\u00fcr Hotels, Skigebiete, Skischulen und Destinationen in S\u00fcdtirol, \u00d6sterreich und dem gesamten Alpenraum: sofortige Antworten, aktuelle Daten, tiefe&#8230;<\/p>","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-24456","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.dexdot.it\/it\/wp-json\/wp\/v2\/pages\/24456","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dexdot.it\/it\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.dexdot.it\/it\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.dexdot.it\/it\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dexdot.it\/it\/wp-json\/wp\/v2\/comments?post=24456"}],"version-history":[{"count":37,"href":"https:\/\/www.dexdot.it\/it\/wp-json\/wp\/v2\/pages\/24456\/revisions"}],"predecessor-version":[{"id":24498,"href":"https:\/\/www.dexdot.it\/it\/wp-json\/wp\/v2\/pages\/24456\/revisions\/24498"}],"wp:attachment":[{"href":"https:\/\/www.dexdot.it\/it\/wp-json\/wp\/v2\/media?parent=24456"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}