/* ==========================================================================
   PulseNet365 @ Directions EMEA 2026 landing pages (native Elementor build)
   Loaded on pages with the _emea_landing meta. Poppins comes from av-hub-fonts.
   ========================================================================== */
html { scroll-behavior: smooth; }
body.emea-landing { font-family: "Poppins", sans-serif; -webkit-font-smoothing: antialiased; }
body.emea-landing #masthead, body.emea-landing .site-header { display: none !important; }
.emea-sec { scroll-margin-top: 80px; }
.emea-landing .elementor-widget-heading .elementor-heading-title strong { font-weight: 600; }

/* ---------- header ---------- */
.emea-nav.elementor-sticky--active { transition: box-shadow .25s ease, background .25s ease; }
.emea-nav--light.elementor-sticky--effects { box-shadow: 0 8px 30px rgba(31, 35, 72, .08); }
.emea-nav--dark { background: transparent; }
.emea-nav--dark.elementor-sticky--effects { background: rgba(11, 14, 42, .88) !important; -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); box-shadow: 0 8px 30px rgba(0, 0, 0, .25); }
.emea-navmenu .elementor-nav-menu--main .elementor-item { transition: color .18s ease; }
.emea-navmenu .elementor-menu-toggle { border: 0; padding: 0; }
.emea-nav .elementor-button { white-space: nowrap; }
.emea-nav--dark .emea-navmenu .elementor-nav-menu--dropdown { background: #141838; border-radius: 12px; overflow: hidden; }
.emea-nav--dark .emea-navmenu .elementor-nav-menu--dropdown a { color: #fff; }
.emea-nav--light .emea-navmenu .elementor-nav-menu--dropdown { background: #fff; border: 1px solid #D7DCEE; border-radius: 12px; overflow: hidden; box-shadow: 0 20px 40px -20px rgba(31, 35, 72, .35); }

/* ---------- decorative helpers ---------- */
.emea-hero { position: relative; }
.emea-hero:not(.emea-hero--paris)::after { content: ""; position: absolute; width: 1000px; height: 640px; right: -240px; top: -360px; border-radius: 50%; background: radial-gradient(closest-side, rgba(74, 84, 160, .18), rgba(74, 84, 160, 0)); pointer-events: none; z-index: 0; }
.emea-hero > .e-con-inner, .emea-hero > .e-con, .emea-hero > .elementor-element { position: relative; z-index: 1; }
.emea-glass { -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.emea-shotwrap { position: relative; }
.emea-zoom { position: relative; }
.emea-zoom .elementor-widget-image a { display: block; cursor: zoom-in; }
.emea-zoom .elementor-widget-image img { transition: transform .35s ease; }
.emea-zoom:hover .elementor-widget-image img { transform: translateY(-2px); }
.emea-zoomchip { pointer-events: none; }

/* Option 3 flow (dotted connector between the three step circles) */
.e-con.emea-flow { position: relative; overflow: hidden; }
.emea-photo > .elementor-element { position: relative; z-index: 1; }
@media (min-width: 1025px) { .emea-flow::before { content: ""; position: absolute; left: 18%; right: 18%; top: 84px; border-top: 2px dashed rgba(74, 84, 160, .45); pointer-events: none; } }
/* Option 3 stages: outline rings */
.emea-stage { position: relative; }
.emea-stage--rings::before, .emea-stage--rings::after { content: ""; position: absolute; border-radius: 50%; border: 1.5px solid rgba(74, 84, 160, .14); pointer-events: none; }
.emea-stage--rings::before { width: 720px; height: 720px; right: -200px; top: -360px; }
.emea-stage--rings::after { width: 420px; height: 420px; left: -160px; bottom: -60px; }
.emea-product--3 .emea-stage::before { content: ""; position: absolute; width: 520px; height: 520px; left: -140px; top: -160px; border-radius: 50%; border: 1.5px solid rgba(74, 84, 160, .18); pointer-events: none; }
/* Option 3 event facts panel overlapping the photo: static below 1025px */
@media (max-width: 1024px) {
  .emea-evfacts { position: static !important; width: 100% !important; left: auto !important; top: auto !important; }
}
/* Option 2 ticket perforation notches */
.emea-ticket { position: relative; }
.emea-perf { position: relative; }
.emea-perf::before, .emea-perf::after { content: ""; position: absolute; top: 50%; width: 24px; height: 24px; border-radius: 999px; background: #F7F8FC; transform: translateY(-50%); border: 1px solid #D7DCEE; }
.emea-perf::before { left: -13px; }
.emea-perf::after { right: -13px; }
.emea-event--dark .emea-perf::before, .emea-event--dark .emea-perf::after { background: #0B0E2A; border-color: rgba(255, 255, 255, .14); }
.emea-perf .elementor-widget-divider { width: 100%; }
.emea-window { position: relative; }

/* ---------- buttons / text links ---------- */
.emea-btn .elementor-button { transition: transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease; }
.emea-btn .elementor-button:hover { transform: translateY(-1px); }
.emea-btn .elementor-button-content-wrapper { align-items: center; }
.emea-btn .elementor-button-icon { font-size: .95em; line-height: 1; display: inline-flex; }
.emea-btn .elementor-button-icon svg { width: 1em; height: 1em; }
.emea-tl .elementor-button { padding: 0 !important; background: transparent !important; box-shadow: none !important; border: 0 !important; }
.emea-tl .elementor-button:hover .elementor-button-text { text-decoration: underline; text-underline-offset: 3px; }
.emea-tl .elementor-button-icon { font-size: .95em; display: inline-flex; }
.emea-tl .elementor-button-icon svg { width: 1em; height: 1em; }

/* ---------- icon lists ---------- */
.emea-landing .elementor-widget-icon-list .elementor-icon-list-icon svg,
.emea-landing .elementor-widget-icon-list .elementor-icon-list-icon i { margin: 0 !important; }
.emea-landing .elementor-widget-icon-list .elementor-icon-list-text { padding-left: 0 !important; padding-inline-start: 0 !important; }
.emea-ticks .elementor-icon-list-icon { width: 22px; height: 22px; border-radius: 999px; display: inline-flex !important; align-items: center; justify-content: center; flex: none; margin-top: 1px; }
.emea-ticks--tint .elementor-icon-list-icon { background: #F3F4FB; }
.emea-ticks--tint2 .elementor-icon-list-icon { width: 24px; height: 24px; background: rgba(74, 84, 160, .14); }
.emea-ticks--gold .elementor-icon-list-icon { width: 24px; height: 24px; background: rgba(242, 193, 78, .14); }
.emea-ticks--plain .elementor-icon-list-icon { width: auto; height: auto; background: none; margin-top: 3px; }
.emea-footlinks .elementor-icon-list-item a { text-decoration: none; }
.emea-footlinks .elementor-icon-list-item a:hover .elementor-icon-list-text { text-decoration: underline; text-underline-offset: 3px; }
.emea-landing .elementor-icon-list-items.elementor-inline-items { flex-wrap: wrap; }

/* ---------- nested tabs (product) ---------- */
.emea-tabs .e-n-tab-title { cursor: pointer; transition: background .18s ease, color .18s ease, border-color .18s ease; }
.emea-tabs--start .e-n-tab-title, .emea-tabs--end .e-n-tab-title { width: 100%; justify-content: flex-start; }
.emea-tabs--list .e-n-tabs-heading { gap: 0 !important; }
.emea-tabs--list .e-n-tab-title { border-bottom: 1px solid #D7DCEE !important; border-radius: 0 !important; background: transparent !important; position: relative; }
.emea-tabs--list .e-n-tab-title:hover { background: #F3F4FB !important; }
.emea-tabs--list .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text { font-weight: 600; }
.emea-tabs--list .e-n-tab-title[aria-selected="true"]::after { content: ""; position: absolute; right: 12px; top: 50%; width: 16px; height: 16px; transform: translateY(-50%); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234A54A0' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / 16px no-repeat; }
.emea-tabs .e-n-tabs-content > .e-con { --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; }
@media (max-width: 1024px) {
  .emea-tabs--start .e-n-tab-title, .emea-tabs--end .e-n-tab-title { width: auto; }
  .emea-tabs--list .e-n-tabs-heading { gap: 8px !important; }
  .emea-tabs--list .e-n-tab-title { border: 1px solid #D7DCEE !important; border-radius: 12px !important; }
  .emea-tabs--list .e-n-tab-title[aria-selected="true"]::after { display: none; }
}

/* Option 3 product (Figma column): right column = head text + tab list + caption/chips/note; stage sticks on the left while scrolling */
@media (min-width: 1025px) {
  #product > .e-con-inner { display: grid !important; grid-template-columns: minmax(0, 1fr) 536px; grid-template-rows: auto auto auto 1fr; column-gap: 64px; row-gap: 0; align-items: start; }
  #product > .e-con-inner > .e-con:first-child { display: contents !important; }
  #product > .e-con-inner > .e-con:first-child > .e-con { grid-column: 2; grid-row: 1; width: 100% !important; --width: 100%; }
  .emea-tabs--list, .emea-tabs--list > .elementor-widget-container, .emea-tabs--list .e-n-tabs, .emea-tabs--list .e-n-tabs-content { display: contents !important; }
  .emea-tabs--list .e-n-tabs-content > .e-con { display: none !important; }
  .emea-tabs--list .e-n-tabs-content > .e-con.e-active { display: contents !important; }
  .emea-tabs--list .e-n-tabs-heading { grid-column: 2; grid-row: 2; width: 100%; margin-top: 24px; }
  .emea-tabs--list .emea-caption { grid-column: 2; grid-row: 3; width: 100%; margin-top: 28px; }
  .emea-tabs--list .emea-stage { grid-column: 1; grid-row: 1 / span 4; width: 100%; position: sticky; top: 92px; align-self: start; }
  body.admin-bar .emea-tabs--list .emea-stage { top: 124px; }
}
.emea-product--3 .emea-stage .elementor-widget-image { position: relative; z-index: 1; }
.emea-product--3 .emea-stage .elementor-widget-icon-list { z-index: 3 !important; }

/* Connected diagram (Option 3): native container composition */
.emea-nowrap .elementor-heading-title { white-space: nowrap; }
.emea-diag { position: relative; }
.emea-diag__desk { position: relative; }
@media (min-width: 1025px) { .emea-diag__stack { display: none !important; } }
@media (max-width: 1024px) { .emea-diag__desk { display: none !important; } }
@media (min-width: 768px) and (max-width: 1024px) { .emea-diag__utils { display: grid !important; grid-template-columns: 1fr 1fr; gap: 10px; } .emea-diag__utils > .e-con { width: 100%; } }

/* ---------- Contact Form 7 ---------- */
.emea-cf7 { --f-ink: #1F2348; --f-body: #474C72; --f-muted: #585D85; --f-line: #D7DCEE; --f-bg: #FFFFFF; --f-acc: #4A54A0; --f-acc-fg: #FFFFFF; --f-acc-h: #393F79; --f-req: #B42318; --f-ph: rgba(88, 93, 133, .7); --f-focus: rgba(74, 84, 160, .18); font-family: "Poppins", sans-serif; }
.emea-cf7--r12 { --f-bg: rgba(31, 35, 72, .05); --f-req: #4A54A0; }
.emea-cf7--dark { --f-ink: #F7F6FF; --f-body: #C3C7E6; --f-muted: #8A90B8; --f-line: rgba(255, 255, 255, .16); --f-bg: rgba(255, 255, 255, .05); --f-ph: #8A90B8; }
.emea-cf7--gold { --f-acc: #F2C14E; --f-acc-fg: #0B0E2A; --f-acc-h: #E2B23E; --f-req: #F2C14E; --f-focus: rgba(242, 193, 78, .22); }
form.emea-cf7 > p, form.emea-cf7 > br, .emea-cf7 .emea-f > p { display: contents; }
.emea-cf7 .emea-cf7__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.emea-cf7 .emea-f { display: flex; flex-direction: column; gap: 6px; min-width: 0; grid-column: span 6; }
.emea-cf7 .emea-f--third { grid-column: span 2; }
.emea-cf7 .emea-f--half { grid-column: span 3; }
.emea-cf7--two .emea-f--third { grid-column: span 3; }
.emea-cf7 .emea-f label:not(.wpcf7-acceptance label) { display: block; margin: 0 !important; padding: 0 !important; font-weight: 500; font-size: 14px; line-height: 1.2; color: var(--f-ink); }
.emea-cf7 .emea-req { color: var(--f-req); margin-left: 2px; }
.emea-cf7 .emea-opt { color: var(--f-muted); font-weight: 400; margin-left: 2px; }
.emea-cf7 .wpcf7-form-control-wrap { display: block; position: relative; }
.emea-cf7 input.wpcf7-form-control:not([type="checkbox"]):not([type="submit"]),
.emea-cf7 select.wpcf7-form-control,
.emea-cf7 textarea.wpcf7-form-control {
  display: block; width: 100%; box-sizing: border-box; margin: 0; background: var(--f-bg); color: var(--f-ink);
  border: 1.5px solid var(--f-line) !important; border-radius: 12px !important; box-shadow: none !important; outline: none;
  font-family: "Poppins", sans-serif; font-size: 15px; line-height: 1.2; transition: border-color .2s ease, box-shadow .2s ease;
}
.emea-cf7 input.wpcf7-form-control:not([type="checkbox"]):not([type="submit"]),
.emea-cf7 select.wpcf7-form-control { height: 50px !important; min-height: 0 !important; padding: 0 14px !important; }
.emea-cf7 select.wpcf7-form-control { -webkit-appearance: none !important; appearance: none !important; padding-right: 40px !important; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23585D85' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 16px 16px !important; }
.emea-cf7--dark select.wpcf7-form-control { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23C3C7E6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important; }
.emea-cf7--dark select.wpcf7-form-control option { color: #1F2348; }
.emea-cf7 textarea.wpcf7-form-control { min-height: 96px; padding: 12px 14px !important; resize: vertical; }
.emea-cf7 .wpcf7-form-control::placeholder { color: var(--f-ph); opacity: 1; font-family: "Poppins", sans-serif; font-size: 15px; }
.emea-cf7 .wpcf7-form-control:focus { border-color: var(--f-acc) !important; box-shadow: 0 0 0 3px var(--f-focus) !important; }
.emea-cf7 .wpcf7-not-valid { border-color: #C62828 !important; }
.emea-cf7 .wpcf7-not-valid-tip { display: block; margin-top: 6px; font-size: 13px; line-height: 18px; color: #C62828; }
/* consent */
.emea-cf7 .emea-consent .wpcf7-acceptance .wpcf7-list-item { display: block; margin: 0; }
.emea-cf7 .emea-consent .wpcf7-acceptance label { display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 0; cursor: pointer; font-weight: 400; font-size: 13px; line-height: 1.5; color: var(--f-body); }
.emea-cf7 .emea-consent a { color: var(--f-acc); text-decoration: underline; }
.emea-cf7--gold .emea-consent a { color: #F2C14E; }
.emea-cf7 .emea-consent input[type="checkbox"] { flex: none; width: 22px; height: 22px; margin: 0; border: 1.5px solid var(--f-muted); border-radius: 5px; accent-color: var(--f-acc); cursor: pointer; background: var(--f-bg); }
/* submit */
.emea-cf7 .emea-submit { margin-top: 8px; }
.emea-cf7 .emea-submit .wpcf7-form-control-wrap { display: inline-block; }
form.emea-cf7 .emea-submit input.wpcf7-submit[type="submit"] { display: inline-block; width: auto !important; height: auto !important; min-height: 0 !important; margin: 0 !important; padding: 13px 52px 13px 26px !important; border: 0 !important; border-radius: 999px !important; background: var(--f-acc) !important; color: var(--f-acc-fg) !important;
  font-family: "Poppins", sans-serif !important; font-weight: 500 !important; font-size: 16px !important; line-height: 1.2; letter-spacing: 0; text-transform: none; cursor: pointer; box-shadow: none; transition: background .2s ease, transform .2s ease;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: right 26px center !important; background-size: 16px !important; }
form.emea-cf7--gold .emea-submit input.wpcf7-submit[type="submit"] { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230B0E2A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") !important; }
form.emea-cf7 .emea-submit input.wpcf7-submit[type="submit"]:hover { background-color: var(--f-acc-h) !important; transform: translateY(-1px); }
form.emea-cf7--r12 .emea-submit input.wpcf7-submit[type="submit"] { border-radius: 12px !important; font-weight: 600 !important; padding: 15px 56px 15px 28px !important; }
.emea-cf7--fullbtn .emea-submit .wpcf7-form-control-wrap { display: block; }
form.emea-cf7--fullbtn .emea-submit input.wpcf7-submit[type="submit"] { width: 100% !important; text-align: center; padding-left: 56px !important; }
.emea-cf7 .wpcf7-spinner { position: absolute; right: -32px; top: 50%; transform: translateY(-50%); margin: 0; }
.emea-cf7--fullbtn .wpcf7-spinner { right: 12px; }
form.emea-cf7.submitting input.wpcf7-submit { opacity: .7; }
.emea-cf7 .emea-formnote { display: block; font-size: 13px; line-height: 1.5; color: var(--f-muted); }
.emea-cf7 .emea-formnote a { display: inline !important; color: var(--f-acc) !important; text-decoration: underline; font-size: inherit; }
.emea-cf7 .emea-consent a { display: inline !important; font-size: inherit; }
.emea-cf7--gold .emea-formnote a { color: #F2C14E; }
/* Option 3: 12-col grid, consent + submit share the last row */
@media (min-width: 1025px) {
  .emea-cf7--three .emea-cf7__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .emea-cf7--three .emea-f--third { grid-column: span 4; }
  .emea-cf7--three .emea-f--half { grid-column: span 6; }
  .emea-cf7--three .emea-f--full { grid-column: 1 / -1; }
  .emea-cf7--three .emea-consent { grid-column: 1 / 10; align-self: center; }
  .emea-cf7--three .emea-submit { grid-column: unset; align-self: center; justify-self: flex-start; margin-top: 0; width: 100%;
    min-width: 260px;
  }
  

}
.emea-cf7--three .button-submit.btn-loader { width: 100%;  min-width: 260px; }
/* response */
.emea-cf7 .wpcf7-response-output { margin: 18px 0 0 !important; padding: 12px 16px !important; border: 1px solid var(--f-line) !important; border-radius: 12px; font-size: 14.5px; line-height: 1.5; color: var(--f-body); }
form.emea-cf7.sent .wpcf7-response-output { border-color: #4A54A0 !important; background: #EEF3F8; color: #393F79; }
form.emea-cf7.invalid .wpcf7-response-output, form.emea-cf7.unaccepted .wpcf7-response-output, form.emea-cf7.failed .wpcf7-response-output, form.emea-cf7.aborted .wpcf7-response-output { border-color: #C62828 !important; background: #FDECEC; color: #C62828; }
form.emea-cf7.sent .emea-cf7__grid { display: none; }
@media (max-width: 767px) {
  .emea-cf7 .emea-f--third, .emea-cf7 .emea-f--half, .emea-cf7--two .emea-f--third { grid-column: span 6; }
  .emea-cf7 .emea-submit .wpcf7-form-control-wrap { display: block; }
  form.emea-cf7 .emea-submit input.wpcf7-submit[type="submit"] { width: 100% !important; text-align: center; }
}

/* ---------- theme overrides ---------- */
.emea-landing .elementor-widget-text-editor a, .emea-landing .elementor-widget-heading a { font-size: inherit; font-family: inherit; }
.emea-landing .elementor-widget-text-editor a:hover { text-decoration: underline; }
.emea-landing .elementor-widget-text-editor br { display: inline !important; }
.emea-landing a[href^="tel"] { display: inline !important; }
.emea-landing .elementor-widget-image img { display: block; }
