.elementor-978 .elementor-element.elementor-element-cb1b240 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-978 .elementor-element.elementor-element-3a258fe > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-978 .elementor-element.elementor-element-acbc697{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-978 .elementor-element.elementor-element-791bbcb .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-978 .elementor-element.elementor-element-791bbcb .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-978 .elementor-element.elementor-element-791bbcb{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-978 .elementor-element.elementor-element-791bbcb .elementor-icon-list-text{transition:color 0.3s;}.elementor-978 .elementor-element.elementor-element-4f1c6f2{width:var( --container-widget-width, 323.64% );max-width:323.64%;--container-widget-width:323.64%;--container-widget-flex-grow:0;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-field-group.recaptcha_v3-bottomleft, .elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-field-type-html{padding-bottom:0px;}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-button[type="submit"]{color:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-978 .elementor-element.elementor-element-0b1a89c{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-978 .elementor-element.elementor-element-f38a889 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-978 .elementor-element.elementor-element-3a258fe{width:100%;}.elementor-978 .elementor-element.elementor-element-dff6691{width:49.999%;}.elementor-978 .elementor-element.elementor-element-619bf17{width:50%;}}/* Start custom CSS for html, class: .elementor-element-aab2d14 *//* ==========================================================
   KKV MEDIA – KAPCSOLAT / HERO V1
   Elementor-kompatibilis
   FŐSZÍN: LILA · ALAP: FEKETE / FEHÉR · KONTRASZT: KÉKESZÖLD
   ========================================================== */

html,
body {
  max-width: 100%;
  overflow-x: clip;
}

.elementor-location-header {
  position: absolute !important;
  z-index: 99990 !important;
  inset: 0 0 auto !important;
  width: 100% !important;
  min-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  pointer-events: none;
}

.elementor-location-header > *,
.elementor-location-header .e-con,
.elementor-location-header .elementor-element {
  background-color: transparent !important;
}

.elementor-location-header .kkv-site-header,
.elementor-location-header .kkv-header-inner,
.elementor-location-header .kkv-primary-nav,
.elementor-location-header .kkv-menu-toggle,
.elementor-location-header a,
.elementor-location-header button {
  pointer-events: auto;
}

.elementor-location-header .kkv-header-spacer { height: 0 !important; }
.kkv-site-header::before,
.kkv-header-glow { display: none !important; }
.kkv-site-header { background: transparent !important; }
.elementor-location-header .kkv-header-inner {
  background: rgba(5,5,17,.9) !important;
  border: 1px solid rgba(143,61,255,.62) !important;
  box-shadow: 0 18px 52px rgba(0,0,0,.42), 0 0 30px rgba(143,61,255,.13), inset 0 1px 0 rgba(255,255,255,.05) !important;
  backdrop-filter: blur(18px) !important;
}

.kkvkap {
  --kap-night: #05050d;
  --kap-night-2: #090a16;
  --kap-night-3: #111328;
  --kap-white: #fbfaff;
  --kap-muted: #bfc0cc;
  --kap-purple: #8f3dff;
  --kap-purple-bright: #b86cff;
  --kap-purple-deep: #6520cf;
  --kap-purple-dark: #27084f;
  --kap-teal: #43ddca;
  --kap-teal-bright: #75f2df;
  --kap-teal-deep: #12a99c;
  --kap-line: rgba(255,255,255,.13);
  --kap-ease: cubic-bezier(.22,1,.36,1);

  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: var(--kap-white);
  background: var(--kap-night);
  font-family: Inter, Montserrat, "Segoe UI", Arial, sans-serif;
  isolation: isolate;
}

.kkvkap,
.kkvkap *,
.kkvkap *::before,
.kkvkap *::after { box-sizing: border-box; }

.kkvkap section,
.kkvkap div,
.kkvkap article,
.kkvkap a,
.kkvkap button { min-width: 0; }

.kkvkap h1,
.kkvkap p,
.kkvkap ul { margin: 0; }

.kkvkap ul { padding: 0; list-style: none; }
.kkvkap a { color: inherit; text-decoration: none; }
.kkvkap button { margin: 0; border: 0; color: inherit; background: transparent; font: inherit; cursor: pointer; }

.kkvkap-shell {
  position: relative;
  z-index: 5;
  width: min(1320px, calc(100% - 64px));
  margin-inline: auto;
}

/* ==========================================================
   HERO
   ========================================================== */
.kkvkap-hero {
  position: relative;
  min-height: 1090px;
  padding: clamp(166px,12vw,202px) 0 232px;
  overflow: hidden;
  background:
    radial-gradient(circle at 79% 23%, rgba(143,61,255,.29), transparent 29%),
    radial-gradient(circle at 15% 79%, rgba(67,221,202,.1), transparent 27%),
    radial-gradient(circle at 48% 45%, rgba(239,102,201,.05), transparent 34%),
    linear-gradient(135deg,#04040c 0%,#090a18 52%,#0d0c20 100%);
}

.kkvkap-grid-bg {
  position: absolute;
  inset: 0;
  opacity: .28;
  background-image:
    linear-gradient(rgba(184,108,255,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(184,108,255,.07) 1px, transparent 1px);
  background-size: 58px 58px;
  mask-image: linear-gradient(to bottom,#000 0%,rgba(0,0,0,.74) 62%,transparent 96%);
  pointer-events: none;
}

.kkvkap-glow {
  position: absolute;
  width: 480px;
  aspect-ratio: 1;
  border-radius: 50%;
  filter: blur(108px);
  pointer-events: none;
}
.kkvkap-glow-a { top: 3%; right: 3%; background: rgba(143,61,255,.25); }
.kkvkap-glow-b { left: -10%; bottom: 2%; background: rgba(67,221,202,.09); }

.kkvkap-side-code {
  position: absolute;
  z-index: 2;
  right: 23px;
  top: 48%;
  color: rgba(184,108,255,.28);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .31em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
}

.kkvkap-hero-layout {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(540px,1.1fr);
  align-items: center;
  gap: clamp(58px,7vw,112px);
}

.kkvkap-hero-copy {
  position: relative;
  z-index: 7;
  max-width: 710px;
}

.kkvkap-kicker {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #e7e5ef;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .17em;
  line-height: 1.4;
  text-transform: uppercase;
}

.kkvkap-kicker i {
  width: 29px;
  height: 2px;
  background: linear-gradient(90deg,var(--kap-teal),var(--kap-purple));
  box-shadow: 0 0 16px rgba(67,221,202,.45);
}

.kkvkap-hero h1 {
  max-width: 790px;
  margin-top: 22px;
  color: var(--kap-white);
  font-size: clamp(64px,7.2vw,112px);
  font-weight: 940;
  letter-spacing: -.079em;
  line-height: .85;
  text-wrap: balance;
}

.kkvkap-hero h1 em {
  display: inline-block;
  margin-top: .09em;
  padding-right: .05em;
  padding-bottom: .07em;
  color: var(--kap-teal-bright);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  letter-spacing: -.058em;
  line-height: .96;
  text-shadow: 0 22px 70px rgba(67,221,202,.15);
}

.kkvkap-hero-lead {
  max-width: 690px;
  margin-top: 32px;
  color: #c3c4d1;
  font-size: clamp(17px,1.35vw,20px);
  line-height: 1.73;
}
.kkvkap-hero-lead strong { color: #fff; }

.kkvkap-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 37px;
}

.kkvkap-btn {
  display: inline-flex;
  min-height: 60px;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 0 27px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 850;
  line-height: 1;
  transition: transform .32s var(--kap-ease), box-shadow .32s ease, border-color .32s ease, background .32s ease;
}
.kkvkap-btn span { font-size: 18px; }
.kkvkap-btn:hover { transform: translateY(-4px); }

.kkvkap-btn-primary,
.kkvkap-btn-primary:visited,
.kkvkap-btn-primary:hover,
.kkvkap-btn-primary:focus,
.kkvkap-btn-primary:active {
  color: #fff !important;
  background: linear-gradient(135deg,var(--kap-purple),var(--kap-purple-deep)) !important;
  box-shadow: 0 19px 48px rgba(143,61,255,.34), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.kkvkap-btn-primary:hover {
  background: linear-gradient(135deg,var(--kap-purple-bright),var(--kap-purple)) !important;
  box-shadow: 0 26px 62px rgba(143,61,255,.43) !important;
}

.kkvkap-btn-quiet,
.kkvkap-btn-quiet:visited,
.kkvkap-btn-quiet:hover,
.kkvkap-btn-quiet:focus,
.kkvkap-btn-quiet:active {
  color: var(--kap-white) !important;
  border-color: rgba(184,108,255,.42) !important;
  background: rgba(255,255,255,.035) !important;
}
.kkvkap-btn-quiet:hover {
  border-color: var(--kap-purple-bright) !important;
  background: rgba(143,61,255,.11) !important;
}

.kkvkap-proofline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 22px;
  margin-top: 31px;
  color: #d6d7e0;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.kkvkap-proofline li { display: flex; align-items: center; gap: 9px; }
.kkvkap-proofline i {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--kap-teal);
  box-shadow: 0 0 14px rgba(67,221,202,.75);
}

/* ==========================================================
   KAPCSOLATINDÍTÓ KONZOL
   ========================================================== */
.kkvkap-console {
  position: relative;
  z-index: 7;
  min-height: 700px;
  perspective: 1400px;
}

.kkvkap-console-shell {
  position: relative;
  min-height: 652px;
  padding: 16px;
  border: 1px solid rgba(184,108,255,.32);
  border-radius: 5px 58px 5px 58px;
  background: linear-gradient(145deg,rgba(19,20,43,.96),rgba(5,6,15,.97));
  box-shadow: 0 54px 120px rgba(0,0,0,.45), 0 0 52px rgba(143,61,255,.09), inset 0 1px 0 rgba(255,255,255,.05);
  transform: rotateY(-3deg) rotateX(1deg);
  transform-origin: center;
}

.kkvkap-console-shell::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 24px -25px -25px 27px;
  opacity: .88;
  background: linear-gradient(135deg,var(--kap-purple),var(--kap-teal));
  clip-path: polygon(0 5%,88% 0,100% 15%,95% 100%,7% 94%);
}

.kkvkap-console-topline {
  display: flex;
  min-height: 49px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 0 15px;
  border-bottom: 1px solid rgba(255,255,255,.1);
  color: #e0e1e8;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.kkvkap-console-topline span { display: flex; align-items: center; gap: 9px; }
.kkvkap-console-topline i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--kap-teal);
  box-shadow: 0 0 15px rgba(67,221,202,.8);
  animation: kkvkap-pulse 2.2s ease-in-out infinite;
}
.kkvkap-console-topline small { color: var(--kap-purple-bright); font-size: 8px; }

@keyframes kkvkap-pulse {
  0%,100% { opacity: .55; transform: scale(.84); }
  50% { opacity: 1; transform: scale(1.16); }
}

.kkvkap-console-stage {
  position: relative;
  height: 405px;
  margin-top: 15px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 2px 38px 2px 38px;
  background:
    radial-gradient(circle at 50% 50%,rgba(143,61,255,.13),transparent 35%),
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),
    #090b18;
  background-size: auto,42px 42px,42px 42px,auto;
}

.kkvkap-console-grid {
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(184,108,255,.09);
  pointer-events: none;
}

.kkvkap-orbit {
  position: absolute;
  left: 50%;
  top: 50%;
  border: 1px solid rgba(184,108,255,.15);
  border-radius: 50%;
  transform: translate(-50%,-50%);
  pointer-events: none;
}
.kkvkap-orbit-a { width: 250px; height: 250px; }
.kkvkap-orbit-b { width: 390px; height: 390px; border-style: dashed; animation: kkvkap-spin 34s linear infinite; }
.kkvkap-orbit-b::after {
  content: "";
  position: absolute;
  top: 8%;
  left: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--kap-teal);
  box-shadow: 0 0 16px rgba(67,221,202,.8);
}
@keyframes kkvkap-spin { to { transform: translate(-50%,-50%) rotate(360deg); } }

.kkvkap-stage-core {
  position: absolute;
  z-index: 4;
  left: 50%;
  top: 50%;
  width: min(370px,74%);
  padding: 31px 28px 27px;
  border: 1px solid rgba(184,108,255,.42);
  border-left: 3px solid var(--kap-teal);
  border-radius: 3px 31px 3px 31px;
  background: rgba(6,7,18,.88);
  box-shadow: 0 28px 70px rgba(0,0,0,.31), inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter: blur(14px);
  transform: translate(-50%,-50%);
}

.kkvkap-stage-core > span {
  display: block;
  color: var(--kap-teal-bright);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .17em;
}
.kkvkap-stage-core > strong {
  display: block;
  margin-top: 13px;
  color: #fff;
  font-size: clamp(24px,2.2vw,34px);
  line-height: 1.03;
  letter-spacing: -.045em;
}
.kkvkap-stage-core > p {
  margin-top: 15px;
  color: #b9bbc8;
  font-size: 13px;
  line-height: 1.62;
}

.kkvkap-stage-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 20px;
}
.kkvkap-stage-tags b {
  padding: 8px 9px;
  border: 1px solid rgba(184,108,255,.24);
  border-radius: 999px;
  color: #dedee7;
  background: rgba(143,61,255,.07);
  font-size: 8px;
  font-weight: 850;
}

.kkvkap-signal {
  position: absolute;
  z-index: 5;
  display: grid;
  min-width: 94px;
  padding: 12px 13px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(8,9,22,.88);
  box-shadow: 0 17px 35px rgba(0,0,0,.22);
}
.kkvkap-signal span { color: var(--kap-purple-bright); font-size: 10px; font-weight: 950; }
.kkvkap-signal small { margin-top: 4px; color: #898b99; font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.kkvkap-signal-a { left: 24px; top: 28px; }
.kkvkap-signal-b { right: 24px; top: 58px; }
.kkvkap-signal-c { right: 40px; bottom: 25px; }

.kkvkap-console-tabs {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
  margin-top: 12px;
}
.kkvkap-console-tabs button {
  position: relative;
  display: flex;
  min-height: 76px;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 12px 13px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 2px 17px 2px 17px;
  color: #c7c8d2 !important;
  background: rgba(255,255,255,.025) !important;
  text-align: left;
  transition: transform .25s var(--kap-ease), border-color .25s ease, background .25s ease, color .25s ease;
}
.kkvkap-console-tabs button:hover {
  transform: translateY(-3px);
  color: #fff !important;
  border-color: rgba(184,108,255,.4);
  background: rgba(143,61,255,.09) !important;
}
.kkvkap-console-tabs button.is-active {
  color: #fff !important;
  border-color: var(--kap-purple-bright);
  background: linear-gradient(135deg,rgba(101,32,207,.78),rgba(143,61,255,.32)) !important;
  box-shadow: inset 0 -3px 0 var(--kap-teal), 0 14px 28px rgba(0,0,0,.18);
}
.kkvkap-console-tabs span { position: absolute; right: 10px; top: 9px; color: var(--kap-teal-bright); font-size: 8px; font-weight: 950; }
.kkvkap-console-tabs strong { font-size: 13px; line-height: 1.1; }
.kkvkap-console-tabs small { margin-top: 5px; color: inherit; font-size: 8px; font-weight: 800; letter-spacing: .08em; opacity: .68; }

.kkvkap-contact-lines {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  margin-top: 12px;
}
.kkvkap-contact-lines a,
.kkvkap-contact-lines a:visited,
.kkvkap-contact-lines a:hover,
.kkvkap-contact-lines a:focus,
.kkvkap-contact-lines a:active {
  position: relative;
  display: grid;
  min-height: 72px;
  grid-template-columns: minmax(0,1fr) 22px;
  align-content: center;
  gap: 3px 12px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 2px 17px 2px 17px;
  color: #fff !important;
  background: rgba(255,255,255,.025) !important;
  transition: transform .28s var(--kap-ease), border-color .28s ease, background .28s ease;
}
.kkvkap-contact-lines a:hover {
  transform: translateY(-3px);
  border-color: rgba(67,221,202,.4);
  background: rgba(67,221,202,.06) !important;
}
.kkvkap-contact-lines small { color: var(--kap-purple-bright); font-size: 7px; font-weight: 900; letter-spacing: .13em; }
.kkvkap-contact-lines strong { min-width: 0; overflow: hidden; color: #fff; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.kkvkap-contact-lines span { grid-column: 2; grid-row: 1 / span 2; align-self: center; color: var(--kap-teal-bright); font-size: 17px; }

.kkvkap-console-ticket {
  position: absolute;
  z-index: 8;
  left: -22px;
  bottom: -28px;
  display: flex;
  min-height: 52px;
  align-items: center;
  gap: 11px;
  padding: 0 16px;
  color: #071311;
  background: linear-gradient(90deg,var(--kap-teal),var(--kap-teal-bright));
  box-shadow: 11px 12px 0 var(--kap-purple-deep), 0 22px 45px rgba(0,0,0,.31);
  font-size: 8px;
  font-weight: 950;
  letter-spacing: .11em;
  transform: rotate(-2.8deg);
}
.kkvkap-console-ticket b { font-size: 14px; }

/* ==========================================================
   VALÓBAN VÉGTELEN FUTÓSZALAG
   Négy azonos csoport, tisztán CSS-sel.
   ========================================================== */
.kkvkap-marquee {
  position: absolute;
  z-index: 10;
  left: 50%;
  bottom: 58px;
  width: 128vw;
  height: 72px;
  overflow: hidden;
  color: #071311;
  background: linear-gradient(90deg,#31ccb8,var(--kap-teal),var(--kap-teal-bright));
  box-shadow: 0 9px 0 var(--kap-purple-deep), 0 24px 48px rgba(0,0,0,.32);
  transform: translateX(-50%) rotate(-2.2deg);
  transform-origin: center;
}

.kkvkap-marquee-track {
  display: flex;
  width: max-content;
  min-width: max-content;
  height: 100%;
  align-items: center;
  will-change: transform;
  animation: kkvkap-ribbon 48s linear infinite;
}

.kkvkap-marquee-group {
  display: flex;
  flex: 0 0 auto;
  width: max-content;
  min-width: max-content;
  height: 100%;
  align-items: center;
  gap: clamp(34px,3vw,58px);
  padding-right: clamp(34px,3vw,58px);
  white-space: nowrap;
}

.kkvkap-marquee span,
.kkvkap-marquee i {
  display: inline-flex;
  flex: 0 0 auto;
  height: 100%;
  align-items: center;
  white-space: nowrap;
  font-style: normal;
}
.kkvkap-marquee span { font-size: clamp(16px,1.35vw,24px); font-weight: 950; letter-spacing: -.02em; }
.kkvkap-marquee i { color: var(--kap-purple-deep); font-size: 15px; }

@keyframes kkvkap-ribbon {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(-25%,0,0); }
}

/* ==========================================================
   ELEMENTOR SZÍNZÁR
   ========================================================== */
.elementor .kkvkap a,
.elementor .kkvkap a:visited,
.elementor .kkvkap a:hover,
.elementor .kkvkap a:focus,
.elementor .kkvkap a:active,
.elementor .kkvkap button,
.elementor .kkvkap button:hover,
.elementor .kkvkap button:focus,
.elementor .kkvkap button:active {
  text-decoration: none !important;
  -webkit-text-fill-color: currentColor !important;
}

.kkvkap a:focus-visible,
.kkvkap button:focus-visible {
  outline: 3px solid var(--kap-teal-bright) !important;
  outline-offset: 5px;
}

/* ==========================================================
   TABLET
   ========================================================== */
@media (max-width: 1180px) {
  .kkvkap-hero-layout { grid-template-columns: minmax(0,.86fr) minmax(490px,1.04fr); gap: 44px; }
  .kkvkap-console-shell { transform: none; }
}

@media (max-width: 980px) {
  .kkvkap-shell { width: min(100% - 44px,1280px); }
  .kkvkap-hero { min-height: 0; padding-top: 154px; }
  .kkvkap-hero-layout { grid-template-columns: 1fr; gap: 67px; }
  .kkvkap-hero-copy { max-width: 850px; }
  .kkvkap-console { width: min(760px,100%); min-height: 700px; }
}

/* ==========================================================
   MOBIL
   ========================================================== */
@media (max-width: 760px) {
  .kkvkap-shell { width: calc(100% - 30px); }
  .kkvkap-hero { padding: 126px 0 188px; }
  .kkvkap-side-code { display: none; }

  .kkvkap-hero h1 {
    font-size: clamp(50px,14.4vw,76px);
    line-height: .87;
    letter-spacing: -.071em;
  }
  .kkvkap-hero-lead { margin-top: 25px; font-size: 16px; line-height: 1.65; }
  .kkvkap-actions { display: grid; }
  .kkvkap-btn { width: 100%; min-height: 56px; }

  .kkvkap-proofline { gap: 9px; font-size: 8px; }
  .kkvkap-proofline li { padding: 7px 8px; border: 1px solid rgba(255,255,255,.1); }
  .kkvkap-proofline i { display: none; }

  .kkvkap-console { min-height: 0; }
  .kkvkap-console-shell { min-height: 0; padding: 10px; border-radius: 4px 34px 4px 34px; }
  .kkvkap-console-shell::before { inset: 14px -11px -13px 15px; }
  .kkvkap-console-topline { min-height: 54px; padding-inline: 9px; }
  .kkvkap-console-topline small { display: none; }

  .kkvkap-console-stage { height: 390px; border-radius: 2px 28px 2px 28px; }
  .kkvkap-orbit-b { width: 340px; height: 340px; }
  .kkvkap-stage-core { width: calc(100% - 46px); padding: 27px 21px 24px; }
  .kkvkap-stage-core > strong { font-size: clamp(24px,7.3vw,32px); }
  .kkvkap-signal { min-width: 78px; padding: 9px; }
  .kkvkap-signal-a { left: 13px; top: 16px; }
  .kkvkap-signal-b { right: 13px; top: 39px; }
  .kkvkap-signal-c { right: 20px; bottom: 16px; }

  .kkvkap-console-tabs { grid-template-columns: 1fr; }
  .kkvkap-console-tabs button { min-height: 68px; }

  .kkvkap-contact-lines { grid-template-columns: 1fr; }
  .kkvkap-contact-lines strong { white-space: normal; overflow-wrap: anywhere; }

  .kkvkap-console-ticket { left: 2px; bottom: -26px; gap: 7px; padding-inline: 11px; font-size: 6.5px; }

  .kkvkap-marquee { bottom: 47px; width: 146vw; height: 58px; }
  .kkvkap-marquee-group { gap: 26px; padding-right: 26px; }
  .kkvkap-marquee span { font-size: 14px; }
}

@media (max-width: 430px) {
  .kkvkap-shell { width: calc(100% - 22px); }
  .kkvkap-hero { padding-top: 124px; }
  .kkvkap-hero h1 { font-size: clamp(47px,14vw,64px); }
  .kkvkap-console-stage { height: 410px; }
  .kkvkap-orbit { display: none; }
  .kkvkap-stage-core { top: 52%; }
  .kkvkap-signal-c { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .kkvkap *,
  .kkvkap *::before,
  .kkvkap *::after {
    scroll-behavior: auto !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
  }
  .kkvkap-marquee-track { animation: none !important; }
}

/* Elementor szerkesztőben a nehéz, folyamatos animációk álljanak meg. */
.elementor-editor-active .kkvkap-marquee-track,
.elementor-editor-active .kkvkap-orbit-b,
.elementor-editor-active .kkvkap-console-topline i {
  animation-play-state: paused !important;
}/* End custom CSS */
/* Start custom CSS for icon-list, class: .elementor-element-791bbcb *//* ==========================================================
   KAPCSOLAT ŰRLAP – VÉGSŐ ELRENDEZÉSI JAVÍTÁS
   Illeszd a teljes CSS legaljára.
   ========================================================== */

/* Az Elementor saját oszlopszélességei ne zavarják a rácsot */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-form-fields-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  grid-auto-rows: auto !important;
  align-items: start !important;
  gap: 15px 14px !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Minden mezőcsoport csak akkora legyen, amekkora ténylegesen szükséges */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group {
  display: flex !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  flex: none !important;
  flex-direction: column !important;
  align-self: start !important;
  align-content: start !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Elementor 50% és 100% szélességi osztályainak felülírása */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-column {
  width: 100% !important;
  max-width: none !important;
  flex: none !important;
}

/* Minden normál mező egységes magasságú */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
input:not([type="checkbox"]):not([type="radio"]),
.elementor .kkvkap-form-section
.kkvkap-elementor-form
select {
  width: 100% !important;
  min-width: 0 !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  padding: 0 15px !important;
}

/* A cégnév mező akkor se nyúljon meg, ha véletlenül textarea lett */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
#form-field-ceg {
  width: 100% !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  padding: 0 15px !important;
  resize: none !important;
}

/* A projektleírás mindig teljes szélességű */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-uzenet,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-message,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-type-textarea,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group:has(#form-field-uzenet),
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group:has(#form-field-message) {
  grid-column: 1 / -1 !important;
}

/* Csak az üzenetmező legyen magas */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
#form-field-uzenet,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
#form-field-message,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-type-textarea textarea {
  width: 100% !important;
  height: 145px !important;
  min-height: 145px !important;
  max-height: none !important;
  padding: 14px 15px !important;
  resize: vertical !important;
}

/* Adatkezelés és küldés teljes szélességen */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-type-acceptance,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-adatkezeles,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-type-submit {
  grid-column: 1 / -1 !important;
}

/* Címkék egységesen a mezők felett */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-label {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 7px !important;
  padding: 0 !important;
  line-height: 1.3 !important;
}

/* A cím és az űrlap közötti fölösleges nagy térköz csökkentése */
.elementor .kkvkap-form-section
.kkvkap-form-card
.elementor-widget-heading {
  margin-bottom: 12px !important;
}

.elementor .kkvkap-form-section
.kkvkap-form-card
.elementor-widget-text-editor {
  margin-bottom: 24px !important;
}

.elementor .kkvkap-form-section
.kkvkap-elementor-form {
  margin-top: 0 !important;
}

/* Küldésgomb biztosan teljes szélességű */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-type-submit,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-button {
  width: 100% !important;
  max-width: none !important;
}

/* Mobilon minden mező egy oszlopba kerüljön */
@media (max-width: 760px) {
  .elementor .kkvkap-form-section
  .kkvkap-elementor-form
  .elementor-form-fields-wrapper {
    grid-template-columns: 1fr !important;
  }

  .elementor .kkvkap-form-section
  .kkvkap-elementor-form
  .elementor-field-group {
    grid-column: 1 !important;
  }

  .elementor .kkvkap-form-section
  .kkvkap-elementor-form
  #form-field-uzenet,
  .elementor .kkvkap-form-section
  .kkvkap-elementor-form
  #form-field-message {
    min-height: 155px !important;
    height: 155px !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-78252c4 *//* ==========================================================
   KKV MEDIA – KAPCSOLAT / ELEMENTOR ŰRLAP + TOVÁBBI OLDALRÉSZEK V2
   A meglévő Hero V1 CSS MELLÉ illeszd be.
   FŐSZÍN: LILA · ALAP: FEKETE / FEHÉR · KONTRASZT: KÉKESZÖLD
   ========================================================== */

/* Közös változók – akkor is működik, ha ez külön CSS-fájlban kerül be. */
.kkvkap,
.kkvkap-form-section {
  --kap-night: #05050d;
  --kap-night-2: #090a16;
  --kap-night-3: #111328;
  --kap-paper: #f5f3f8;
  --kap-paper-2: #ece9f1;
  --kap-ink: #090914;
  --kap-white: #fbfaff;
  --kap-muted: #bfc0cc;
  --kap-muted-dark: #666471;
  --kap-purple: #8f3dff;
  --kap-purple-bright: #b86cff;
  --kap-purple-deep: #6520cf;
  --kap-purple-dark: #27084f;
  --kap-teal: #43ddca;
  --kap-teal-bright: #75f2df;
  --kap-teal-deep: #12a99c;
  --kap-line: rgba(255,255,255,.13);
  --kap-line-dark: rgba(9,9,20,.14);
  --kap-ease: cubic-bezier(.22,1,.36,1);
}

/* ==========================================================
   ELEMENTOR ŰRLAPOS SZAKASZ
   Külső konténer osztályai: kkvkap kkvkap-form-section
   Belső konténer: kkvkap-form-shell
   Bal oszlop: kkvkap-form-intro
   Jobb oszlop: kkvkap-form-card
   Form widget: kkvkap-elementor-form
   ========================================================== */

.kkvkap-form-section {
  position: relative;
  width: 100%;
  max-width: 100%;
  padding: clamp(90px,8vw,130px) 28px;
  overflow: hidden;
  color: var(--kap-white);
  background:
    linear-gradient(90deg,rgba(5,5,13,.82),rgba(5,5,13,.34) 48%,rgba(5,5,13,.66)),
    url("https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=2200&q=88") center / cover no-repeat;
  font-family: Inter, Montserrat, "Segoe UI", Arial, sans-serif;
  isolation: isolate;
}

.kkvkap-form-section::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background:
    radial-gradient(circle at 78% 20%,rgba(143,61,255,.24),transparent 29%),
    radial-gradient(circle at 12% 78%,rgba(67,221,202,.13),transparent 28%),
    linear-gradient(rgba(184,108,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(184,108,255,.045) 1px,transparent 1px);
  background-size: auto,auto,56px 56px,56px 56px;
  pointer-events: none;
}

.kkvkap-form-section::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: auto 0 0;
  height: 5px;
  background: linear-gradient(90deg,var(--kap-purple-deep),var(--kap-purple),var(--kap-teal));
}

.kkvkap-form-section,
.kkvkap-form-section *,
.kkvkap-form-section *::before,
.kkvkap-form-section *::after {
  box-sizing: border-box;
}

.kkvkap-form-section .kkvkap-form-shell {
  position: relative;
  z-index: 2;
  display: grid !important;
  width: min(1280px,100%) !important;
  min-width: 0;
  grid-template-columns: minmax(0,.92fr) minmax(480px,1.08fr) !important;
  gap: clamp(28px,4vw,58px) !important;
  align-items: stretch !important;
  margin-inline: auto !important;
  padding: clamp(18px,2vw,28px) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 6px 62px 6px 62px !important;
  background: rgba(6,7,17,.34) !important;
  box-shadow: 0 48px 120px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.05) !important;
  backdrop-filter: blur(14px) !important;
  overflow: hidden !important;
}

.kkvkap-form-section .kkvkap-form-intro,
.kkvkap-form-section .kkvkap-form-card {
  min-width: 0 !important;
}

.kkvkap-form-section .kkvkap-form-intro {
  position: relative;
  display: flex !important;
  min-height: 680px;
  flex-direction: column !important;
  justify-content: flex-end !important;
  padding: clamp(34px,5vw,68px) !important;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.15) !important;
  border-radius: 4px 46px 4px 46px !important;
  background:
    linear-gradient(180deg,rgba(7,8,19,.18),rgba(7,8,19,.88)),
    radial-gradient(circle at 80% 12%,rgba(143,61,255,.25),transparent 33%),
    rgba(7,8,19,.52) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

.kkvkap-form-section .kkvkap-form-intro::before {
  content: "KAPCSOLAT / 01";
  position: absolute;
  top: 27px;
  left: 30px;
  color: var(--kap-teal-bright);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .18em;
}

.kkvkap-form-section .kkvkap-form-intro::after {
  content: "";
  position: absolute;
  right: -80px;
  top: -80px;
  width: 320px;
  height: 320px;
  border: 1px solid rgba(117,242,223,.18);
  border-radius: 50%;
  box-shadow:
    0 0 0 38px rgba(143,61,255,.05),
    0 0 0 78px rgba(67,221,202,.025);
  pointer-events: none;
}

.kkvkap-form-section .kkvkap-form-intro .elementor-widget-heading,
.kkvkap-form-section .kkvkap-form-intro .elementor-widget-text-editor,
.kkvkap-form-section .kkvkap-form-intro .elementor-widget-icon-list,
.kkvkap-form-section .kkvkap-form-intro .elementor-widget-html {
  position: relative;
  z-index: 2;
  width: 100%;
}

.kkvkap-form-section .kkvkap-form-intro .elementor-heading-title {
  max-width: 650px;
  margin: 0 !important;
  color: var(--kap-white) !important;
  font-size: clamp(45px,5.2vw,76px) !important;
  font-weight: 920 !important;
  line-height: .94 !important;
  letter-spacing: -.064em !important;
  text-wrap: balance;
}

.kkvkap-form-section .kkvkap-form-intro .elementor-widget-text-editor {
  max-width: 660px;
  margin-top: 24px;
  color: #d0d0da !important;
  font-size: clamp(15px,1.25vw,18px) !important;
  line-height: 1.72 !important;
}

.kkvkap-form-section .kkvkap-form-intro .elementor-widget-text-editor strong {
  color: #fff !important;
}

.kkvkap-form-section .kkvkap-form-intro .elementor-icon-list-items {
  display: grid !important;
  gap: 11px !important;
  margin-top: 30px !important;
}

.kkvkap-form-section .kkvkap-form-intro .elementor-icon-list-item {
  display: flex !important;
  min-height: 45px;
  align-items: center !important;
  gap: 12px;
  padding: 10px 13px !important;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 2px 16px 2px 16px;
  background: rgba(255,255,255,.045);
}

.kkvkap-form-section .kkvkap-form-intro .elementor-icon-list-icon {
  display: grid;
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  place-items: center;
  border-radius: 50%;
  color: #071311 !important;
  background: var(--kap-teal-bright);
}

.kkvkap-form-section .kkvkap-form-intro .elementor-icon-list-text {
  color: #f0eef6 !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  line-height: 1.45 !important;
}

/* Jobb oldali fehér űrlapkártya */
.kkvkap-form-section .kkvkap-form-card {
  position: relative;
  padding: clamp(29px,4vw,52px) !important;
  border: 1px solid rgba(255,255,255,.62) !important;
  border-radius: 4px 46px 4px 46px !important;
  color: var(--kap-ink) !important;
  background:
    radial-gradient(circle at 14% 0%,rgba(67,221,202,.14),transparent 25%),
    linear-gradient(145deg,#fff,#f2eff7) !important;
  box-shadow: 0 34px 90px rgba(0,0,0,.32), inset 0 1px 0 #fff !important;
}

.kkvkap-form-section .kkvkap-form-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 32px;
  width: 104px;
  height: 5px;
  background: linear-gradient(90deg,var(--kap-purple),var(--kap-teal));
}

.kkvkap-form-section .kkvkap-form-card .elementor-heading-title {
  margin: 0 !important;
  color: var(--kap-ink) !important;
  font-size: clamp(36px,4vw,58px) !important;
  font-weight: 930 !important;
  line-height: .94 !important;
  letter-spacing: -.061em !important;
}

.kkvkap-form-section .kkvkap-form-card > .e-con-inner > .elementor-widget-text-editor,
.kkvkap-form-section .kkvkap-form-card > .elementor-widget-text-editor {
  margin-top: 14px;
  color: var(--kap-muted-dark) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* Elementor form widget */
.kkvkap-form-section .kkvkap-elementor-form,
.kkvkap-form-section .kkvkap-elementor-form .elementor-form {
  width: 100% !important;
  min-width: 0 !important;
}

.kkvkap-form-section .kkvkap-elementor-form {
  margin-top: 25px !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-form-fields-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 16px 14px !important;
  margin: 0 !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-field-group {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Az Elementorban ezek legyenek teljes szélességűek:
   projekt_tipusa, hatarido, uzenet, adatkezeles, submit */
.kkvkap-form-section .kkvkap-elementor-form .elementor-field-group-projekt_tipusa,
.kkvkap-form-section .kkvkap-elementor-form .elementor-field-group-hatarido,
.kkvkap-form-section .kkvkap-elementor-form .elementor-field-group-uzenet,
.kkvkap-form-section .kkvkap-elementor-form .elementor-field-group-adatkezeles,
.kkvkap-form-section .kkvkap-elementor-form .elementor-field-type-submit {
  grid-column: 1 / -1 !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-field-label {
  display: block !important;
  margin: 0 0 7px !important;
  color: #252331 !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  letter-spacing: .035em !important;
  line-height: 1.35 !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-field,
.kkvkap-form-section .kkvkap-elementor-form input,
.kkvkap-form-section .kkvkap-elementor-form select,
.kkvkap-form-section .kkvkap-elementor-form textarea {
  width: 100% !important;
  min-width: 0 !important;
  border: 1px solid rgba(9,9,20,.17) !important;
  border-radius: 2px 15px 2px 15px !important;
  color: var(--kap-ink) !important;
  background: rgba(255,255,255,.82) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7) !important;
  font-family: Inter, Montserrat, "Segoe UI", Arial, sans-serif !important;
  font-size: 14px !important;
  transition: border-color .25s ease, box-shadow .25s ease, background .25s ease !important;
}

.kkvkap-form-section .kkvkap-elementor-form input,
.kkvkap-form-section .kkvkap-elementor-form select {
  min-height: 52px !important;
  padding: 0 15px !important;
}

.kkvkap-form-section .kkvkap-elementor-form textarea {
  min-height: 150px !important;
  padding: 14px 15px !important;
  resize: vertical !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-field::placeholder,
.kkvkap-form-section .kkvkap-elementor-form input::placeholder,
.kkvkap-form-section .kkvkap-elementor-form textarea::placeholder {
  color: #96939f !important;
  opacity: 1 !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-field:focus,
.kkvkap-form-section .kkvkap-elementor-form input:focus,
.kkvkap-form-section .kkvkap-elementor-form select:focus,
.kkvkap-form-section .kkvkap-elementor-form textarea:focus {
  outline: 0 !important;
  border-color: var(--kap-purple) !important;
  background: #fff !important;
  box-shadow: 0 0 0 4px rgba(143,61,255,.11), 0 13px 30px rgba(101,32,207,.08) !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-select-wrapper::before {
  color: var(--kap-purple-deep) !important;
}

/* Adatkezelési jelölőnégyzet */
.kkvkap-form-section .kkvkap-elementor-form .elementor-field-type-acceptance {
  padding: 14px 15px !important;
  border: 1px solid rgba(101,32,207,.16);
  border-left: 3px solid var(--kap-purple);
  border-radius: 2px 15px 2px 15px;
  background: rgba(143,61,255,.055);
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-field-type-acceptance .elementor-field-option {
  display: grid !important;
  grid-template-columns: 19px minmax(0,1fr);
  gap: 10px;
  align-items: start;
}

.kkvkap-form-section .kkvkap-elementor-form input[type="checkbox"] {
  width: 18px !important;
  min-height: 18px !important;
  height: 18px !important;
  margin: 2px 0 0 !important;
  accent-color: var(--kap-purple) !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-field-type-acceptance label {
  margin: 0 !important;
  color: #5f5c68 !important;
  font-size: 11px !important;
  font-weight: 650 !important;
  line-height: 1.55 !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-field-type-acceptance a,
.kkvkap-form-section .kkvkap-elementor-form .elementor-field-type-acceptance a:visited,
.kkvkap-form-section .kkvkap-elementor-form .elementor-field-type-acceptance a:hover {
  color: var(--kap-purple-deep) !important;
  border-bottom: 1px solid rgba(101,32,207,.3) !important;
  background: transparent !important;
}

/* Küldés gomb */
.kkvkap-form-section .kkvkap-elementor-form .elementor-button,
.kkvkap-form-section .kkvkap-elementor-form .elementor-button:visited,
.kkvkap-form-section .kkvkap-elementor-form .elementor-button:hover,
.kkvkap-form-section .kkvkap-elementor-form .elementor-button:focus,
.kkvkap-form-section .kkvkap-elementor-form .elementor-button:active {
  width: 100% !important;
  min-height: 58px !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 2px 18px 2px 18px !important;
  color: #fff !important;
  background: linear-gradient(110deg,var(--kap-purple-deep),var(--kap-purple),var(--kap-purple-bright)) !important;
  box-shadow: 0 18px 42px rgba(143,61,255,.29), inset 0 1px 0 rgba(255,255,255,.2) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
  transition: transform .3s var(--kap-ease), box-shadow .3s ease !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-button:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 25px 54px rgba(143,61,255,.39), 0 0 44px rgba(67,221,202,.08) !important;
}

/* Sikeres / hibás elküldés */
.kkvkap-form-section .kkvkap-elementor-form .elementor-message {
  margin: 17px 0 0 !important;
  padding: 14px 16px !important;
  border-radius: 2px 15px 2px 15px !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  line-height: 1.55 !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-message-success {
  border: 1px solid rgba(18,169,156,.26) !important;
  border-left: 3px solid var(--kap-teal-deep) !important;
  color: #0d665f !important;
  background: rgba(67,221,202,.12) !important;
}

.kkvkap-form-section .kkvkap-elementor-form .elementor-message-danger,
.kkvkap-form-section .kkvkap-elementor-form .elementor-message-error {
  border: 1px solid rgba(143,61,255,.24) !important;
  border-left: 3px solid var(--kap-purple) !important;
  color: #6423a8 !important;
  background: rgba(143,61,255,.09) !important;
}

/* Elementor saját piros/zöld hover és linkstílusának felülírása */
.elementor .kkvkap-form-section a,
.elementor .kkvkap-form-section a:visited,
.elementor .kkvkap-form-section a:hover,
.elementor .kkvkap-form-section a:focus,
.elementor .kkvkap-form-section a:active,
.elementor .kkvkap-form-section button,
.elementor .kkvkap-form-section button:hover,
.elementor .kkvkap-form-section button:focus,
.elementor .kkvkap-form-section button:active {
  text-decoration: none !important;
  -webkit-text-fill-color: currentColor !important;
}

/* ==========================================================
   ÁLTALÁNOS – AZ ŰRLAP UTÁNI RÉSZEK
   ========================================================== */

.kkvkap-rest {
  color: var(--kap-white);
  background: var(--kap-night);
}

.kkvkap-rest,
.kkvkap-rest *,
.kkvkap-rest *::before,
.kkvkap-rest *::after {
  box-sizing: border-box;
}

.kkvkap-rest main,
.kkvkap-rest section,
.kkvkap-rest article,
.kkvkap-rest div,
.kkvkap-rest a,
.kkvkap-rest details,
.kkvkap-rest summary {
  min-width: 0;
}

.kkvkap-rest h2,
.kkvkap-rest h3,
.kkvkap-rest p,
.kkvkap-rest ul {
  margin: 0;
}

.kkvkap-rest ul {
  padding: 0;
  list-style: none;
}

.kkvkap-rest a {
  color: inherit;
  text-decoration: none;
}

.kkvkap-paper {
  color: var(--kap-ink);
  background: var(--kap-paper);
}

.kkvkap-index {
  color: var(--kap-purple);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .18em;
  line-height: 1.4;
  text-transform: uppercase;
}

.kkvkap-section-head {
  display: grid;
  grid-template-columns: minmax(0,1.13fr) minmax(320px,.62fr);
  gap: clamp(48px,8vw,115px);
  align-items: end;
  margin-bottom: 58px;
}

.kkvkap-section-head h2,
.kkvkap-prepare-copy h2,
.kkvkap-direct-copy h2,
.kkvkap-faq-intro h2,
.kkvkap-final h2 {
  margin-top: 16px;
  font-size: clamp(48px,6vw,88px);
  font-weight: 920;
  line-height: .94;
  letter-spacing: -.067em;
  text-wrap: balance;
}

.kkvkap-section-head h2 em,
.kkvkap-prepare-copy h2 em,
.kkvkap-direct-copy h2 em,
.kkvkap-faq-intro h2 em,
.kkvkap-final h2 em {
  display: inline-block;
  padding-right: .05em;
  padding-bottom: .07em;
  color: var(--kap-purple-deep);
  font-family: Georgia,"Times New Roman",serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -.055em;
}

.kkvkap-section-head > p {
  color: var(--kap-muted-dark);
  font-size: 17px;
  line-height: 1.72;
}

.kkvkap-section-head-dark h2,
.kkvkap-section-head-dark > p {
  color: var(--kap-white);
}

.kkvkap-section-head-dark h2 em {
  color: var(--kap-teal-bright);
}

.kkvkap-section-head-dark > p {
  color: var(--kap-muted);
}

/* ==========================================================
   KÖVETKEZŐ LÉPÉSEK
   ========================================================== */

.kkvkap-next {
  padding: clamp(120px,10vw,165px) 0 clamp(110px,9vw,145px);
}

.kkvkap-next-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 17px;
}

.kkvkap-next-card {
  position: relative;
  min-height: 370px;
  padding: 27px 26px 30px;
  overflow: hidden;
  border: 1px solid var(--kap-line-dark);
  border-radius: 3px 36px 3px 36px;
  background: rgba(255,255,255,.62);
  box-shadow: 0 25px 65px rgba(9,9,20,.07);
  transition: transform .4s var(--kap-ease),box-shadow .35s ease,background .35s ease;
}

.kkvkap-next-card:nth-child(2) {
  margin-top: 30px;
}

.kkvkap-next-card:hover {
  transform: translateY(-9px);
  background: #fff;
  box-shadow: 0 36px 78px rgba(9,9,20,.13);
}

.kkvkap-next-card > span {
  color: var(--kap-purple-deep);
  font-size: 12px;
  font-weight: 950;
}

.kkvkap-next-card small {
  display: block;
  margin-top: 56px;
  color: var(--kap-teal-deep);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .17em;
}

.kkvkap-next-card h3 {
  max-width: 330px;
  margin-top: 11px;
  color: var(--kap-ink);
  font-size: clamp(28px,2.8vw,40px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.052em;
}

.kkvkap-next-card p {
  margin-top: 19px;
  color: var(--kap-muted-dark);
  font-size: 14px;
  line-height: 1.67;
}

.kkvkap-next-card > b {
  position: absolute;
  right: -10px;
  bottom: -38px;
  color: rgba(101,32,207,.055);
  font-family: Georgia,serif;
  font-size: 178px;
  font-weight: 500;
  line-height: 1;
  transform: rotate(-9deg);
}

/* ==========================================================
   KAPCSOLÓDÁSI ÚTVONALAK
   ========================================================== */

.kkvkap-routes {
  position: relative;
  padding: clamp(125px,10vw,170px) 0 clamp(115px,9vw,155px);
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 14%,rgba(143,61,255,.19),transparent 28%),
    radial-gradient(circle at 8% 86%,rgba(67,221,202,.08),transparent 25%),
    var(--kap-night);
}

.kkvkap-routes .kkvkap-grid-bg {
  opacity: .18;
}

.kkvkap-route-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 17px;
}

.kkvkap-route-card {
  display: flex;
  min-height: 525px;
  flex-direction: column;
  padding: 29px 27px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 3px 39px 3px 39px;
  background: linear-gradient(145deg,rgba(19,21,44,.88),rgba(7,8,18,.92));
  box-shadow: 0 30px 80px rgba(0,0,0,.25);
}

.kkvkap-route-card-featured {
  transform: translateY(-20px);
  border-color: rgba(143,61,255,.48);
  background:
    radial-gradient(circle at 90% 0%,rgba(143,61,255,.23),transparent 33%),
    linear-gradient(145deg,rgba(24,19,51,.95),rgba(8,8,20,.95));
  box-shadow: 0 38px 90px rgba(0,0,0,.34),0 0 42px rgba(143,61,255,.08);
}

.kkvkap-route-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 19px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.kkvkap-route-top span {
  color: var(--kap-teal-bright);
  font-size: 13px;
  font-weight: 950;
}

.kkvkap-route-top small {
  color: var(--kap-purple-bright);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .15em;
}

.kkvkap-route-card h3 {
  margin-top: 29px;
  color: #fff;
  font-size: clamp(29px,2.8vw,41px);
  font-weight: 900;
  line-height: 1.01;
  letter-spacing: -.052em;
}

.kkvkap-route-card > p {
  margin-top: 20px;
  color: #bfc0cc;
  font-size: 14px;
  line-height: 1.68;
}

.kkvkap-route-card ul {
  display: grid;
  gap: 10px;
  margin-top: 25px;
}

.kkvkap-route-card li {
  position: relative;
  padding-left: 19px;
  color: #e0dfe7;
  font-size: 12px;
  line-height: 1.5;
}

.kkvkap-route-card li::before {
  content: "↳";
  position: absolute;
  left: 0;
  color: var(--kap-teal-bright);
}

.kkvkap-route-card > a,
.kkvkap-route-card > a:visited,
.kkvkap-route-card > a:hover,
.kkvkap-route-card > a:focus,
.kkvkap-route-card > a:active {
  display: flex;
  min-height: 54px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: auto;
  padding: 0 17px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 2px 17px 2px 17px;
  color: #fff !important;
  background: rgba(255,255,255,.035) !important;
  font-size: 12px;
  font-weight: 850;
}

.kkvkap-route-card > a:hover {
  border-color: rgba(117,242,223,.34);
  background: rgba(67,221,202,.08) !important;
}

/* ==========================================================
   FELKÉSZÜLÉS
   ========================================================== */

.kkvkap-prepare {
  padding: clamp(125px,10vw,170px) 0 clamp(115px,9vw,155px);
}

.kkvkap-prepare-layout {
  display: grid;
  grid-template-columns: minmax(330px,.62fr) minmax(0,1.18fr);
  gap: clamp(55px,8vw,115px);
  align-items: start;
}

.kkvkap-prepare-copy {
  position: sticky;
  top: 110px;
}

.kkvkap-prepare-copy > p:last-child {
  margin-top: 25px;
  color: var(--kap-muted-dark);
  font-size: 16px;
  line-height: 1.72;
}

.kkvkap-prepare-board {
  display: grid;
  gap: 16px;
}

.kkvkap-prepare-column {
  padding: 25px;
  border: 1px solid var(--kap-line-dark);
  border-radius: 3px 31px 3px 31px;
  background: rgba(255,255,255,.62);
  box-shadow: 0 26px 68px rgba(9,9,20,.07);
}

.kkvkap-prepare-yes {
  border-left: 4px solid var(--kap-teal-deep);
}

.kkvkap-prepare-no {
  border-left: 4px solid var(--kap-purple);
}

.kkvkap-prepare-title {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 15px;
  align-items: center;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--kap-line-dark);
}

.kkvkap-prepare-title > span {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 50%;
  color: #071311;
  background: var(--kap-teal-bright);
  font-size: 21px;
  font-weight: 900;
}

.kkvkap-prepare-no .kkvkap-prepare-title > span {
  color: #fff;
  background: var(--kap-purple);
}

.kkvkap-prepare-title small {
  display: block;
  color: var(--kap-purple-deep);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .15em;
}

.kkvkap-prepare-title strong {
  display: block;
  margin-top: 6px;
  color: var(--kap-ink);
  font-size: 18px;
}

.kkvkap-prepare-column ul {
  display: grid;
  gap: 1px;
  margin-top: 15px;
  background: var(--kap-line-dark);
}

.kkvkap-prepare-column li {
  display: grid;
  grid-template-columns: minmax(150px,.42fr) minmax(0,1fr);
  gap: 20px;
  padding: 17px 16px;
  background: var(--kap-paper);
}

.kkvkap-prepare-column li b {
  color: var(--kap-ink);
  font-size: 13px;
}

.kkvkap-prepare-column li span {
  color: var(--kap-muted-dark);
  font-size: 12px;
  line-height: 1.55;
}

/* ==========================================================
   KÖZVETLEN ELÉRHETŐSÉGEK
   ========================================================== */

.kkvkap-direct {
  padding: clamp(125px,10vw,170px) 0 clamp(115px,9vw,155px);
  background:
    radial-gradient(circle at 83% 21%,rgba(67,221,202,.09),transparent 26%),
    radial-gradient(circle at 10% 82%,rgba(143,61,255,.15),transparent 28%),
    var(--kap-night-2);
}

.kkvkap-direct-layout {
  display: grid;
  grid-template-columns: minmax(330px,.7fr) minmax(0,1.15fr);
  gap: clamp(55px,8vw,115px);
  align-items: center;
}

.kkvkap-direct-copy h2 {
  color: #fff;
}

.kkvkap-direct-copy h2 em {
  color: var(--kap-teal-bright);
}

.kkvkap-direct-copy > p:last-child {
  margin-top: 25px;
  color: var(--kap-muted);
  font-size: 16px;
  line-height: 1.72;
}

.kkvkap-direct-cards {
  display: grid;
  gap: 11px;
}

.kkvkap-direct-card {
  position: relative;
  display: grid;
  min-height: 128px;
  grid-template-columns: 45px minmax(0,1fr) 32px;
  gap: 7px 17px;
  align-items: center;
  padding: 21px 22px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 2px 24px 2px 24px;
  color: #fff;
  background: rgba(255,255,255,.03);
  transition: transform .3s var(--kap-ease),border-color .3s ease,background .3s ease;
}

a.kkvkap-direct-card:hover {
  transform: translateX(7px);
  border-color: rgba(117,242,223,.32);
  background: rgba(67,221,202,.065);
}

.kkvkap-direct-card > span {
  grid-row: 1 / span 3;
  display: grid;
  width: 41px;
  height: 41px;
  place-items: center;
  border: 1px solid rgba(117,242,223,.35);
  border-radius: 50%;
  color: var(--kap-teal-bright);
  font-size: 10px;
  font-weight: 950;
}

.kkvkap-direct-card small {
  color: var(--kap-purple-bright);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .16em;
}

.kkvkap-direct-card strong {
  color: #fff;
  font-size: clamp(18px,2vw,26px);
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.kkvkap-direct-card p {
  color: #aeb0bc;
  font-size: 11px;
  line-height: 1.5;
}

.kkvkap-direct-card > b {
  grid-column: 3;
  grid-row: 1 / span 3;
  color: var(--kap-teal-bright);
  font-size: 19px;
  text-align: right;
}

/* ==========================================================
   GYIK
   ========================================================== */

.kkvkap-faq {
  padding: clamp(125px,10vw,170px) 0 clamp(115px,9vw,155px);
  background:
    radial-gradient(circle at 13% 20%,rgba(67,221,202,.07),transparent 24%),
    radial-gradient(circle at 88% 82%,rgba(143,61,255,.14),transparent 26%),
    var(--kap-night);
}

.kkvkap-faq-layout {
  display: grid;
  grid-template-columns: minmax(300px,.5fr) minmax(0,1fr);
  gap: clamp(55px,8vw,115px);
  align-items: start;
}

.kkvkap-faq-intro {
  position: sticky;
  top: 110px;
}

.kkvkap-faq-intro h2 {
  color: #fff;
}

.kkvkap-faq-intro h2 em {
  color: var(--kap-teal-bright);
}

.kkvkap-faq-intro > p:last-child {
  max-width: 440px;
  margin-top: 24px;
  color: var(--kap-muted);
  font-size: 15px;
  line-height: 1.72;
}

.kkvkap-accordions {
  border-top: 1px solid rgba(255,255,255,.12);
}

.kkvkap-accordions details {
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.kkvkap-accordions summary {
  display: grid;
  min-height: 99px;
  grid-template-columns: 42px minmax(0,1fr) 32px;
  gap: 15px;
  align-items: center;
  list-style: none;
  color: #fff;
  cursor: pointer;
}

.kkvkap-accordions summary::-webkit-details-marker {
  display: none;
}

.kkvkap-accordions summary span {
  color: var(--kap-teal-bright);
  font-size: 9px;
  font-weight: 950;
}

.kkvkap-accordions summary strong {
  font-size: clamp(17px,1.6vw,23px);
  line-height: 1.3;
}

.kkvkap-accordions summary b {
  display: grid;
  width: 31px;
  height: 31px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.19);
  border-radius: 50%;
  color: var(--kap-purple-bright);
  font-size: 18px;
  font-weight: 500;
  transition: transform .3s var(--kap-ease),background .3s ease,color .3s ease;
}

.kkvkap-accordions details[open] summary b {
  color: #071311;
  background: var(--kap-teal-bright);
  transform: rotate(45deg);
}

.kkvkap-accordions details > p {
  max-width: 790px;
  padding: 0 48px 29px 57px;
  color: #b5b6c2;
  font-size: 14px;
  line-height: 1.72;
}

/* ==========================================================
   ZÁRÓ CTA
   ========================================================== */

.kkvkap-final {
  position: relative;
  padding: clamp(125px,10vw,170px) 0 clamp(120px,9vw,160px);
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 32%,rgba(143,61,255,.25),transparent 29%),
    radial-gradient(circle at 9% 83%,rgba(67,221,202,.1),transparent 26%),
    linear-gradient(135deg,#05050d,#0b0a1e 60%,#100d25);
}

.kkvkap-final-grid {
  position: absolute;
  inset: 0;
  opacity: .2;
  background-image:
    linear-gradient(rgba(184,108,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(184,108,255,.05) 1px,transparent 1px);
  background-size: 58px 58px;
  pointer-events: none;
}

.kkvkap-final-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(350px,.58fr);
  gap: clamp(55px,8vw,115px);
  align-items: center;
}

.kkvkap-final h2 {
  color: #fff;
}

.kkvkap-final h2 em {
  color: var(--kap-teal-bright);
}

.kkvkap-final-layout > div > p:last-child {
  max-width: 750px;
  margin-top: 25px;
  color: var(--kap-muted);
  font-size: 16px;
  line-height: 1.72;
}

.kkvkap-final-action,
.kkvkap-final-action:visited,
.kkvkap-final-action:hover,
.kkvkap-final-action:focus,
.kkvkap-final-action:active {
  display: grid;
  min-height: 260px;
  align-content: center;
  padding: 32px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 3px 42px 3px 42px;
  color: #fff !important;
  background:
    radial-gradient(circle at 85% 10%,rgba(67,221,202,.15),transparent 28%),
    linear-gradient(145deg,rgba(143,61,255,.34),rgba(18,11,41,.84)) !important;
  box-shadow: 0 34px 90px rgba(0,0,0,.27);
  transition: transform .35s var(--kap-ease),box-shadow .35s ease !important;
}

.kkvkap-final-action:hover {
  transform: translateY(-8px) rotate(-1deg);
  box-shadow: 0 44px 105px rgba(0,0,0,.36),0 0 42px rgba(143,61,255,.12);
}

.kkvkap-final-action small {
  color: var(--kap-teal-bright);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .16em;
}

.kkvkap-final-action strong {
  max-width: 320px;
  margin-top: 18px;
  font-size: clamp(31px,3.5vw,49px);
  line-height: .97;
  letter-spacing: -.055em;
}

.kkvkap-final-action span {
  margin-top: 27px;
  color: var(--kap-teal-bright);
  font-size: 26px;
}

/* ==========================================================
   ELEMENTOR PIROS HOVER – A KAPCSOLAT OLDAL TELJES TOVÁBBI RÉSZÉN
   ========================================================== */

.elementor .kkvkap-rest a,
.elementor .kkvkap-rest a:visited,
.elementor .kkvkap-rest a:hover,
.elementor .kkvkap-rest a:focus,
.elementor .kkvkap-rest a:active,
.elementor .kkvkap-rest button,
.elementor .kkvkap-rest button:hover,
.elementor .kkvkap-rest button:focus,
.elementor .kkvkap-rest button:active {
  text-decoration: none !important;
  -webkit-text-fill-color: currentColor !important;
}

.elementor .kkvkap-rest a:hover,
.elementor .kkvkap-rest a:focus,
.elementor .kkvkap-rest a:active,
.elementor .kkvkap-rest button:hover,
.elementor .kkvkap-rest button:focus,
.elementor .kkvkap-rest button:active {
  background-color: transparent;
}

/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width: 1020px) {
  .kkvkap-form-section .kkvkap-form-shell {
    grid-template-columns: 1fr !important;
  }

  .kkvkap-form-section .kkvkap-form-intro {
    min-height: 540px;
  }

  .kkvkap-section-head,
  .kkvkap-prepare-layout,
  .kkvkap-direct-layout,
  .kkvkap-faq-layout,
  .kkvkap-final-layout {
    grid-template-columns: 1fr;
  }

  .kkvkap-prepare-copy,
  .kkvkap-faq-intro {
    position: static;
  }

  .kkvkap-next-grid,
  .kkvkap-route-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .kkvkap-route-card-featured {
    transform: none;
  }

  .kkvkap-route-card:last-child {
    grid-column: 1 / -1;
  }
}

/* ==========================================================
   MOBIL
   ========================================================== */

@media (max-width: 760px) {
  .kkvkap-form-section {
    padding: 76px 14px;
  }

  .kkvkap-form-section .kkvkap-form-shell {
    padding: 10px !important;
    border-radius: 4px 34px 4px 34px !important;
  }

  .kkvkap-form-section .kkvkap-form-intro {
    min-height: 460px;
    padding: 29px 22px !important;
    border-radius: 3px 30px 3px 30px !important;
  }

  .kkvkap-form-section .kkvkap-form-intro .elementor-heading-title {
    font-size: clamp(42px,12vw,58px) !important;
  }

  .kkvkap-form-section .kkvkap-form-card {
    padding: 30px 19px !important;
    border-radius: 3px 30px 3px 30px !important;
  }

  .kkvkap-form-section .kkvkap-form-card .elementor-heading-title {
    font-size: clamp(36px,10.5vw,49px) !important;
  }

  .kkvkap-form-section .kkvkap-elementor-form .elementor-form-fields-wrapper {
    grid-template-columns: 1fr !important;
  }

  .kkvkap-form-section .kkvkap-elementor-form .elementor-field-group {
    grid-column: 1 !important;
  }

  .kkvkap-next,
  .kkvkap-routes,
  .kkvkap-prepare,
  .kkvkap-direct,
  .kkvkap-faq,
  .kkvkap-final {
    padding-top: 96px;
    padding-bottom: 92px;
  }

  .kkvkap-section-head {
    gap: 25px;
    margin-bottom: 39px;
  }

  .kkvkap-section-head h2,
  .kkvkap-prepare-copy h2,
  .kkvkap-direct-copy h2,
  .kkvkap-faq-intro h2,
  .kkvkap-final h2 {
    font-size: clamp(42px,12vw,61px);
    line-height: .97;
  }

  .kkvkap-section-head > p {
    font-size: 15px;
  }

  .kkvkap-next-grid,
  .kkvkap-route-grid {
    grid-template-columns: 1fr;
  }

  .kkvkap-next-card,
  .kkvkap-next-card:nth-child(2) {
    min-height: 300px;
    margin-top: 0;
  }

  .kkvkap-route-card,
  .kkvkap-route-card:last-child {
    min-height: 0;
    grid-column: auto;
  }

  .kkvkap-prepare-column {
    padding: 19px 15px;
  }

  .kkvkap-prepare-column li {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .kkvkap-direct-card {
    grid-template-columns: 39px minmax(0,1fr) 24px;
    padding: 18px 15px;
  }

  .kkvkap-direct-card > span {
    width: 36px;
    height: 36px;
  }

  .kkvkap-accordions summary {
    min-height: 88px;
    grid-template-columns: 33px minmax(0,1fr) 29px;
    gap: 10px;
  }

  .kkvkap-accordions summary strong {
    font-size: 16px;
  }

  .kkvkap-accordions details > p {
    padding: 0 5px 25px 43px;
    font-size: 13px;
  }

  .kkvkap-final-action {
    min-height: 220px !important;
  }
}

@media (max-width: 420px) {
  .kkvkap-form-section .kkvkap-form-intro {
    min-height: 430px;
  }

  .kkvkap-form-section .kkvkap-form-intro .elementor-icon-list-text {
    font-size: 12px !important;
  }

  .kkvkap-direct-card {
    grid-template-columns: 35px minmax(0,1fr);
  }

  .kkvkap-direct-card > b {
    display: none;
  }
}
/* ==========================================================
   KAPCSOLAT ŰRLAP – RÉGI ELEMENTOR SZAKASZ/OSZLOP JAVÍTÁS
   A CSS LEGALJÁRA ILLESZD
   ========================================================== */

/* Külső szakasz teljes szélességű maradjon */
.elementor .kkvkap-form-section,
.elementor .kkvkap-form-section > .elementor-container {
  width: 100% !important;
  max-width: none !important;
}

.elementor .kkvkap-form-section > .elementor-container > .elementor-column {
  width: 100% !important;
  max-width: none !important;
  flex: 0 0 100% !important;
}

.elementor .kkvkap-form-section
> .elementor-container
> .elementor-column
> .elementor-widget-wrap {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
}

/* A belső szakasz maga ne legyen rács:
   a benne található Elementor-konténer kapja a két oszlopot */
.elementor .kkvkap-form-section .kkvkap-form-shell {
  display: block !important;
  width: min(1280px, calc(100% - 48px)) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding: 24px !important;
}

/* A tényleges kétoszlopos elrendezés */
.elementor .kkvkap-form-section
.kkvkap-form-shell
> .elementor-container {
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  grid-template-columns:
    minmax(0, 0.92fr)
    minmax(0, 1.08fr) !important;
  gap: clamp(24px, 3vw, 42px) !important;
  align-items: stretch !important;
}

/* Elementor saját oszlopszélességeinek felülírása */
.elementor .kkvkap-form-section
.kkvkap-form-shell
> .elementor-container
> .elementor-column {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  align-self: stretch !important;
}

/* Mindkét oszlop ténylegesen töltse ki a rendelkezésére álló helyet */
.elementor .kkvkap-form-section .kkvkap-form-intro,
.elementor .kkvkap-form-section .kkvkap-form-card {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 100% !important;
}

/* Az Elementor belső widgetburkolata is teljes magasságú legyen */
.elementor .kkvkap-form-section
.kkvkap-form-intro
> .elementor-widget-wrap,
.elementor .kkvkap-form-section
.kkvkap-form-card
> .elementor-widget-wrap {
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
}

/* Bal oldali szöveg ne törjön minden második szónál */
.elementor .kkvkap-form-section
.kkvkap-form-intro
.elementor-heading-title {
  width: 100% !important;
  max-width: 650px !important;
  font-size: clamp(52px, 5vw, 76px) !important;
  line-height: 0.94 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  white-space: normal !important;
}

/* A bal oldali leírás normális szélessége */
.elementor .kkvkap-form-section
.kkvkap-form-intro
.elementor-widget-text-editor {
  width: 100% !important;
  max-width: 650px !important;
}

/* Jobb oldali kártya címe */
.elementor .kkvkap-form-section
.kkvkap-form-card
.elementor-heading-title {
  width: 100% !important;
  max-width: 580px !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

/* Az űrlap töltse ki a jobb oldali kártyát */
.elementor .kkvkap-form-section .kkvkap-elementor-form,
.elementor .kkvkap-form-section .kkvkap-elementor-form form,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-form-fields-wrapper {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

/* A jelenlegi alap Elementor mezők helyes elrendezése */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-form-fields-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px 14px !important;
}

.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

/* Név és e-mail egymás mellett */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-name,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-email,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-nev,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-ceg,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-telefon {
  grid-column: auto !important;
}

/* Üzenet, választók, adatkezelés és küldés teljes szélességű */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-message,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-uzenet,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-projekt_tipusa,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-hatarido,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-group-adatkezeles,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-field-type-submit {
  grid-column: 1 / -1 !important;
}

/* A mezők ne legyenek aprók */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
input,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
select {
  min-height: 52px !important;
}

.elementor .kkvkap-form-section
.kkvkap-elementor-form
textarea {
  width: 100% !important;
  min-height: 150px !important;
}

/* Elementor piros, zöld és kék gombfelülírásának lezárása */
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-button,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-button:hover,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-button:focus,
.elementor .kkvkap-form-section
.kkvkap-elementor-form
.elementor-button:active {
  width: 100% !important;
  color: #ffffff !important;
  background:
    linear-gradient(
      110deg,
      var(--kap-purple-deep),
      var(--kap-purple),
      var(--kap-purple-bright)
    ) !important;
}

/* ==========================================================
   TABLET ÉS MOBIL
   ========================================================== */

@media (max-width: 980px) {
  .elementor .kkvkap-form-section .kkvkap-form-shell {
    width: calc(100% - 30px) !important;
    padding: 14px !important;
  }

  .elementor .kkvkap-form-section
  .kkvkap-form-shell
  > .elementor-container {
    grid-template-columns: 1fr !important;
  }

  .elementor .kkvkap-form-section .kkvkap-form-intro,
  .elementor .kkvkap-form-section .kkvkap-form-card {
    width: 100% !important;
  }
}

@media (max-width: 760px) {
  .elementor .kkvkap-form-section {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .elementor .kkvkap-form-section .kkvkap-form-shell {
    width: calc(100% - 20px) !important;
    padding: 10px !important;
  }

  .elementor .kkvkap-form-section
  .kkvkap-form-intro
  .elementor-heading-title {
    font-size: clamp(42px, 12vw, 58px) !important;
  }

  .elementor .kkvkap-form-section
  .kkvkap-elementor-form
  .elementor-form-fields-wrapper {
    grid-template-columns: 1fr !important;
  }

  .elementor .kkvkap-form-section
  .kkvkap-elementor-form
  .elementor-field-group {
    grid-column: 1 !important;
  }
}/* End custom CSS */