/*

Theme Name: Divi Child

Theme URI: http://www.elegantthemes.com/gallery/divi/

Description: Child theme for Divi – VienerX AI.

Author: Elegant Themes

Author URI: http://www.elegantthemes.com

Template: Divi

Version: 1.0.0

License: GNU General Public License v2

License URI: http://www.gnu.org/licenses/gpl-2.0.html

Text Domain: divi-child

*/



/* ════════════════════════════════════════════

   VienerX AI – Design System (Figma Match)

   ════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,500&display=swap');



/* ─── CSS Variables ─── */

:root {

  --color-navy: #0b1220;

  --color-darkest: #060d19;

  --color-red: #ed3237;

  --color-white: #ffffff;

  --color-light: #f1f2f4;

  --color-muted: #4b5563;

  --color-subtle: #6b7280;

  --color-silver: #99a1af;

  --color-pearl: #d1d5dc;
	
  --form-border: #d5dbe5;
  
  --form-error: #d13b3b;

  --font-base: 'Raleway', sans-serif;

  --header-height: 72px;

  --container-max: 1200px;

}



/* ─── Global Base ─── */

body,

body * {

  /*   font-family: var(--font-base) !important; */

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

  box-sizing: border-box;

}



/* ════════════════════════════════════════════

   HEADER – Figma: 72px height, transparent

   over hero, turns solid on scroll.

   Logo left, nav links white, red CTA right.

   ════════════════════════════════════════════ */

.et_header_style_left .logo_container {

  position: relative;

}







#main-header,

#main-header.et-fixed-header {

  background-color: var(--color-navy) !important;

  border-bottom: none !important;

  box-shadow: none !important;

  height: var(--header-height) !important;

  transition: background-color 0.3s ease, box-shadow 0.3s ease !important;

}



/* Transparent header when at top of page */

body.home #main-header.et_pb_is_animating,

body.home #main-header:not(.et-fixed-header) {

  background-color: transparent !important;

}



/* Fixed/scrolled header: solid navy + shadow */

#main-header.et-fixed-header {

  background-color: var(--color-navy) !important;

  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.06) !important;

}



/* Header container */

#main-header .container {

  max-width: var(--container-max) !important;

  /*   padding: 0 80px !important; */

  display: flex !important;

  align-items: center !important;

  justify-content: space-between !important;

  height: var(--header-height) !important;

}



/* ─── Logo ─── */

#logo {

  max-height: 36px !important;

  width: auto !important;

}



/* If no logo image, style the site title */

#logo-container .logo_container a {

  font-family: var(--font-base) !important;

  font-size: 22px !important;

  font-weight: 700 !important;

  color: var(--color-white) !important;

  text-decoration: none !important;

  letter-spacing: -0.5px;

}



/* ─── Primary Navigation Links ─── */

#main-header #et-top-navigation nav>ul>li>a,

#main-header .nav li a {

  font-family: var(--font-base) !important;

  font-size: 14px !important;

  font-weight: 500 !important;

  color: var(--color-white) !important;

  text-transform: none !important;

  letter-spacing: 0 !important;

  padding: 0 18px !important;

  opacity: 0.85;

  transition: opacity 0.2s ease, color 0.2s ease !important;

}



#main-header #et-top-navigation nav>ul>li>a:hover,

#main-header .nav li a:hover,

#main-header #et-top-navigation nav>ul>li.current-menu-item>a {

  color: var(--color-red) !important;

  opacity: 1 !important;

}



/* ─── Dropdown menus ─── */

#main-header .nav li ul {

  background-color: var(--color-navy) !important;

  border-top: 2px solid var(--color-red) !important;

  border-radius: 0 0 6px 6px !important;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;

}



#main-header .nav li ul li a {

  color: var(--color-pearl) !important;

  font-size: 14px !important;

}



#main-header .nav li ul li a:hover {

  color: var(--color-red) !important;

  background-color: rgba(255, 255, 255, 0.04) !important;

}



/* ─── Header CTA Button (Schedule a 20-Minute Conversation) ─── */

/* Figma: #ED3237 fill · 10px radius · 10px 20px padding · Raleway 14px w600 */

#main-header #et-top-navigation nav>ul>li:last-child>a,

#main-header .nav>li:last-child>a {

  display: inline-block !important;

  background: var(--color-red) !important;

  color: var(--color-white) !important;

  font-weight: 600 !important;

  font-size: 14px !important;

  padding: 13px 26px !important;

  border-radius: 10px !important;

  opacity: 1 !important;

  margin-left: 8px !important;

  transition: background 0.2s ease, transform 0.15s ease !important;

  white-space: nowrap !important;

}



#main-header #et-top-navigation nav>ul>li:last-child>a:hover,

#main-header .nav>li:last-child>a:hover {

  background: #c92a2e !important;

  transform: translateY(-1px) !important;

}



/* ─── Hide Divi search icon in header ─── */

/* Figma: no search icon in header */

#et_top_search,

.et_search_outer {

  display: none !important;

}



/* ─── Mobile Menu Toggle ─── */

#et_mobile_nav_menu .mobile_menu_bar::before {

  color: var(--color-white) !important;

}



/* Hide top bar (phone/email/social strip) */

#top-header {

  display: none !important;

}



/* ─── Remove DIVI header height reservation ─── */

#page-container {

  padding-top: 0 !important;

}



#et-main-area {

  padding-top: 0 !important;

}



/* ════════════════════════════════════════════

   FOOTER – Figma: #060d19 bg, 113px height

   Logo left · Copyright right

   ════════════════════════════════════════════ */



#main-footer {

  background-color: var(--color-darkest) !important;

  border-top: 1px solid rgba(255, 255, 255, 0.04) !important;

}



#main-footer .container {

  max-width: var(--container-max) !important;

  /*   padding: 0 80px !important; */

  display: flex !important;

  align-items: center !important;

  justify-content: space-between !important;

}



/* Hide default widget areas in footer */

#footer-widgets {

  display: none !important;

}



/* Footer bottom bar / credits */

#footer-bottom {

  background-color: var(--color-darkest) !important;

  padding: 0 !important;

  border-top: none !important;

}



#footer-bottom .container {

  max-width: var(--container-max) !important;

  padding: 40px 0px !important;

  display: flex !important;

  align-items: center !important;

  justify-content: space-between !important;

}



/* Footer logo */

#footer-bottom #footer-logo,

#footer-bottom img {

  max-height: 32px !important;

  width: auto !important;

}



/* Copyright text */

#footer-info,

#footer-bottom #footer-info {

  font-family: var(--font-base) !important;

  font-size: 14px !important;

  font-weight: 400 !important;

  color: var(--color-subtle) !important;

}



/* Footer links */

#footer-bottom a,

#main-footer a {

  color: var(--color-subtle) !important;

  text-decoration: none !important;

  transition: color 0.2s ease !important;

}



#footer-bottom a:hover,

#main-footer a:hover {

  color: var(--color-red) !important;

}



/* ════════════════════════════════════════════

   DIVI BUILDER – Global Module Overrides

   ════════════════════════════════════════════ */



/* Remove default section padding (we set it via custom_padding) */

.et_pb_section {

  padding: 0 !important;

}



/* Row max-width */

.et_pb_row {

  max-width: var(--container-max) !important;

}



/* Text module */

.et_pb_text_inner,

.et_pb_text_inner p,

.et_pb_text_inner h1,

.et_pb_text_inner h2,

.et_pb_text_inner h3,

.et_pb_text_inner h4,

.et_pb_text_inner h5,

.et_pb_text_inner h6,

.et_pb_text_inner li,

.et_pb_text_inner span,

.et_pb_text_inner a {

  font-family: var(--font-base) !important;

}



/* Links in builder: no underline */

.et_pb_text_inner a {

  text-decoration: none !important;

}



/* Default DIVI button – Figma: 10px radius */

.et_pb_button.custombtn {

  font-family: var(--font-base) !important;

  font-weight: 700 !important;

  background: var(--color-red) !important;

  color: var(--color-white) !important;

  border-color: var(--color-red) !important;

  border-radius: 10px !important;

  padding: 14px 28px !important;

  letter-spacing: 0 !important;

  text-transform: none !important;

  transition: background 0.2s ease, transform 0.15s ease !important;

}



.et_pb_button.secondary-btn {

  background: transparent !important;

  color: var(--color-white) !important;

  border-color: rgba(255, 255, 255, 0.3) !important;

}



.et_pb_button.custombtn:hover {

  background: #c92a2e !important;

  border-color: #c92a2e !important;

  transform: translateY(-1px) !important;

}



.et_pb_button.secondary-btn:hover {

  border-color: rgba(255, 255, 255, 0.65) !important;

  color: var(--color-white) !important;

  transform: translateY(-1px) !important;

  background: transparent !important;

}



/* ─── Smooth scroll ─── */

html {

  scroll-behavior: smooth;

}

.et_right_sidebar #main-content .container:before {
    display: none;
}
article {
    font-family: 'Raleway', sans-serif !important;
}
.search.search-no-results #content-area {
    font-family: 'Raleway', sans-serif !important;
}
@media (min-width: 981px) {
    .et_right_sidebar #left-area {
        padding-right: 0%;
    }
    .et_right_sidebar #left-area {
        width: 100%;
    }
}
/* ════════════════════════════════════════════

   RESPONSIVE

   ════════════════════════════════════════════ */

@media (max-width: 1280px) {



  /* #main-header .container,

  #footer-bottom .container {

    padding: 0 40px !important;

  } */



  .et_pb_row {

    padding-left: 40px !important;

    padding-right: 40px !important;

  }

}



@media (max-width: 980px) {

  .et_pb_text_inner h1 {

    font-size: 36px !important;

  }



  .et_pb_text_inner h2 {

    font-size: 28px !important;

  }



  /* Mobile header */

  /* #main-header .container {

    padding: 0 24px !important;

  } */

}



@media (max-width: 767px) {

  .et_pb_row {

    padding-left: 24px !important;

    padding-right: 24px !important;

  }



  #footer-bottom .container {

    flex-direction: column !important;

    gap: 16px !important;

    padding: 32px 24px !important;

    text-align: center !important;

  }

}





/* ─── Global Base ─── */

body,

body * {

  /*   font-family: 'Raleway', sans-serif !important; */

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

}



/* ─── DIVI Builder overrides ─── */

.et_pb_text_inner,

.et_pb_text_inner p,

.et_pb_text_inner h1,

.et_pb_text_inner h2,

.et_pb_text_inner h3,

.et_pb_text_inner h4,

.et_pb_text_inner h5,

.et_pb_text_inner h6,

.et_pb_text_inner a,

.et_pb_text_inner li,

.et_pb_text_inner span {

  font-family: 'Raleway', sans-serif !important;

}



/* Remove default Divi section vertical padding when we control it via custom_padding */

.et_pb_section {

  padding: 0;

}



/* Remove default ET row max-width restriction to allow full bleed */

.et_pb_row {

  max-width: 1200px;

}



/* Ensure DIVI header doesn't interfere with the hero */

#page-container #et-main-area {

  padding-top: 0 !important;

}



/* ─── Button reset ─── */

.et_pb_text_inner a {

  text-decoration: none;

}



/* ─── Responsive adjustments ─── */

@media (max-width: 980px) {

  .et_pb_text_inner h1 {

    font-size: 36px !important;

  }



  .et_pb_text_inner h2 {

    font-size: 28px !important;

  }

}



}



/* ─── Responsive adjustments ─── */

@media (max-width: 980px) {

  .et_pb_text_inner h1 {

    font-size: 36px !important;

  }



  .et_pb_text_inner h2 {

    font-size: 28px !important;

  }

}



@media (max-width: 767px) {

  .et_pb_row {

    padding-left: 24px !important;

    padding-right: 24px !important;

  }

}



/* ════════════════════════════════════════════

   HERO SECTION – CTA Buttons

   Styles moved from Divi builder inline HTML

   into child theme CSS + module classes.

   Figma: radius 10px · Raleway · 16px

   ════════════════════════════════════════════ */

.vx-hero-btn {

  display: inline-block;

  font-family: var(--font-base);

  font-size: 16px;

  text-decoration: none;

  border-radius: 10px;

  transition: background 0.2s ease, border-color 0.2s ease, transform 0.15s ease;

}



/* Primary – filled red */

.vx-hero-btn--primary {

  background: var(--color-red);

  color: var(--color-white);

  font-weight: 700;

  padding: 14px 28px;

  border: none;

}



.vx-hero-btn--primary:hover {

  background: #c92a2e;

  color: var(--color-white);

  transform: translateY(-1px);

}



/* Secondary – outline / ghost */

.vx-hero-btn--secondary {

  background: transparent;

  color: var(--color-white);

  font-weight: 600;

  padding: 13px 27px;

  border: 1px solid rgba(255, 255, 255, 0.3);

}



.vx-hero-btn--secondary:hover {

  border-color: rgba(255, 255, 255, 0.65);

  color: var(--color-white);

  transform: translateY(-1px);

}



.iconwithsep .et_pb_image_wrap {

  position: relative;

  text-align: left !important;

}

.iconwithsep .et_pb_image_wrap:after {

  position: absolute;

  content: '';

  width: 20px;

  height: 3px;

  background: #ed3237;

  margin-bottom: 0px;

  left: 0;

  bottom: -15px;

  border-radius: 2px;

}

.blurbtype2 .et_pb_module_header {

  padding-top: 12px;

}

.blurbtype2 .et_pb_blurb_description {

  margin-left: -51px;

  margin-top: 10px;

}



@media (max-width: 767px) {

  .vx-hero-btn {

    width: 100%;

    text-align: center;

    display: block;

  }

}

@media (max-width: 575px) {

  .blurbcol {

    grid-template-columns: 1fr !important;

  }

}



/* ════════════════════════════════════════════

   CURRENT REALITY – CHECKLIST

   ════════════════════════════════════════════ */

.vx-check-list ul {

  list-style: none;

  margin: 0;

  padding: 0;

}

.vx-check-list li {

  display: flex;

  align-items: center;

  gap: 10px;

  padding: 4px 0;

}

.vx-check-list li svg {

  flex-shrink: 0;

}

.vx-check-list li svg circle,

.vx-check-list li svg path {

/*   stroke: var(--color-red); */

  stroke-width: 1.5;

}



/* ════════════════════════════════════════════

   USER MODEL CARDS

   ════════════════════════════════════════════ */

.um-card-header {

  display: flex;

  justify-content: space-between;

  align-items: flex-start;

  margin-bottom: 24px;

}

.um-card-header p {
  margin-top: -12px;
  margin-right: -12px;
}

.um-icon-box {

  width: 48px;

  height: 48px;

  border-radius: 12px;

  display: flex;

  align-items: center;

  justify-content: center;

}

.um-icon-box--red {

  background-color: rgba(237, 50, 55, 0.082);

}

.um-icon-box--blue {

  background-color: rgba(30, 58, 95, 0.082);

}

.um-icon-box--grey {

  background-color: rgba(75, 85, 99, 0.082);

}

.um-icon-box svg {

  width: 24px;

  height: 24px;

}

.um-badge {

  font-family: var(--font-base);

  font-size: 12px;

  font-weight: 700;

  padding: 4px 12px;

  border-radius: 20px;

  white-space: nowrap;

}

.um-badge--red {

  background-color: rgba(237, 50, 55, 0.082);

  color: var(--color-red);

}

.um-badge--blue {

  background-color: rgba(30, 58, 95, 0.082);

  color: #1e3a5f;

}

.um-badge--grey {

  background-color: rgba(75, 85, 99, 0.082);

  color: var(--color-muted);

}

.um-card-arrow {

  position: absolute;

  top: 50%;

  right: -48px;

  transform: translateY(-50%);

  width: 32px;

  height: 32px;

  background: #fff;

  border: 1px solid #e5e7eb;

  border-radius: 50%;

  display: flex;

  align-items: center;

  justify-content: center;

  z-index: 10;

  box-shadow: 0 4px 6px rgba(0,0,0,0.05);

}

.um-card-arrow svg {

  width: 16px;

  height: 16px;

  stroke: #ed3237;

}

@media (max-width: 980px) {

  .um-card-arrow {

    display: none;

  }

}



/* ════════════════════════════════════════════

   PRACTICAL EXECUTION LIST

   ════════════════════════════════════════════ */

.practical-list {

  display: flex;

  flex-direction: column;

  gap: 16px;

}

.practical-item {

  padding: 20px 24px;

  border: 1px solid #e5e7eb;

  border-radius: 6px;

  display: flex;

  align-items: flex-start;

  gap: 16px;

}

.practical-dot {

  width: 8px;

  height: 8px;

  background: var(--color-red);

  border-radius: 50%;

  margin-top: 6px;

  flex-shrink: 0;

}

.practical-item h4 {

  margin: 0 0 4px 0 !important;

}

.practical-item p {

  margin: 0 !important;

}



/* ════════════════════════════════════════════

   FRAMEWORK CARDS (01/02/03) – GHOST NUMBER +

   HOVER-ONLY ICON RECOLOR. Border color and

   heading color hover are handled by Divi's own

   module hover settings; this only covers what

   Divi's UI can't do (icon swap, ghost number).

   ════════════════════════════════════════════ */

.fw-card {

  position: relative;

}

.fw-card::before {

  position: absolute;

  top: 32px;

  right: 32px;

  font-family: var(--font-base);

  font-size: 48px;

  font-weight: 900;

  line-height: 1;

  color: rgba(255, 255, 255, 0.12);

  pointer-events: none;

}

.fw-card-1::before {

  content: "01";

}

.fw-card-2::before {

  content: "02";

}

.fw-card-3::before {

  content: "03";

}

.fw-card .et_pb_main_blurb_image img {

  transition: opacity 0.2s ease;

}

.fw-card:hover .et_pb_main_blurb_image img {

  opacity: 0;

}

.fw-card .et_pb_main_blurb_image .et_pb_image_wrap {

  position: relative;

}

.fw-card .et_pb_main_blurb_image .et_pb_image_wrap::after {

  content: '';

  position: absolute;

  inset: 0;

  background-repeat: no-repeat;

  background-position: center;

  background-size: 22px 22px;

  opacity: 0;

  transition: opacity 0.2s ease;

}

.fw-card:hover .et_pb_main_blurb_image .et_pb_image_wrap::after {

  opacity: 1;

}

.fw-card-1 .et_pb_main_blurb_image .et_pb_image_wrap::after {

  background-image: url('../../uploads/2026/07/shield-Icon-small-red.svg');

}

.fw-card-2 .et_pb_main_blurb_image .et_pb_image_wrap::after {

  background-image: url('../../uploads/2026/07/icon-small-2-red.svg');

}

.fw-card-3 .et_pb_main_blurb_image .et_pb_image_wrap::after {

  background-image: url('../../uploads/2026/07/lock-Icon-red.svg');

}



/* ════════════════════════════════════════════

   ONE PLATFORM (ENVIRONMENTS)

   ════════════════════════════════════════════ */

.env-icon-box {

  width: 44px;

  height: 44px;

  background-color: #f1f2f4;

  border-radius: 8px;

  display: flex;

  align-items: center;

  justify-content: center;

  margin-bottom: 16px;

}

.env-icon-box svg {

  width: 20px;

  height: 20px;

  stroke: #475569;

  fill: none;

}



/* ════════════════════════════════════════════

   GET STARTED SECTION

   ════════════════════════════════════════════ */

.gs-eyebrow {

  font-family: 'Raleway', sans-serif;

  font-size: 12px;

  font-weight: 600;

  color: #ed3237;

  letter-spacing: 3px;

  text-transform: uppercase;

  margin: 0 0 24px 0;

  text-align: center;

}

.gs-title {

  font-family: 'Raleway', sans-serif;

  font-size: 48px;

  font-weight: 700;

  color: #ffffff;

  line-height: 1.2;

  margin: 0 0 24px 0;

  text-align: center;

}

.gs-subtitle {

  font-family: 'Raleway', sans-serif;

  font-size: 20px;

  font-weight: 500;

  color: #d1d5dc;

  line-height: 1.5;

  margin: 0 0 24px 0;

  text-align: center;

}

.gs-desc {

  font-family: 'Raleway', sans-serif;

  font-size: 16px;

  font-weight: 400;

  color: #99a1af;

  line-height: 1.625;

  margin: 0 0 16px 0;

  text-align: center;

}

.gs-note {

  font-family: 'Raleway', sans-serif;

  font-size: 16px;

  font-weight: 500;

  color: #d1d5dc;

  line-height: 1.625;

  margin: 0 0 40px 0;

  text-align: center;

}

.leadership-row.et_pb_row {

  column-gap: 0;

}

#footer-info {

  padding-bottom: 0;

}

#main-footer {

  border-top: 0 !important;

}

body {

  background: rgb(11, 18, 32);

}

/* Error 404 page */

.page_404{

  padding:40px 0; background:#fff; 

}

.four_zero_four_bg h1{

  font-size:125px;

  font-weight: bold;

  text-transform: uppercase;

  padding-bottom: 0px;

}

.contant_box_404 h3 {

  font-size: 28px;

  margin-bottom: 20px;

  font-family: 'Raleway';

}

.contant_box_404 p {

  font-size: 20px;

  font-family: 'Raleway';

}       

.link_404{

  font-family: 'Raleway';

  font-size: 14px;

  font-weight: bold;

  text-transform: uppercase;

  cursor: pointer;

  background: #ed3237;

  border: 5px solid #fff;

  border-radius: 50px;

  color: #fff !important;

  padding: 10px 25px;

  display: inline-block;

  margin-top: 20px;

}

.page_404 .container {

  padding-bottom: 50px;

}

.page_404 .container:before {

  display: none;

}

.page_404 .text-center {

  text-align: center;

}

body:not(.home) #main-content {

  padding-top: 72px;

}
/* ---------- Card ---------- */
.partner-register-form .wpcf7 { margin: 0 auto; }
.partner-register-form .form-block {
	padding: 40px;
  background: #fff;
  border: 1px solid var(--form-border);
  border-radius: 16px;
  box-shadow: 0 12px 40px rgba(11, 37, 69, .08);
  box-sizing: border-box;
}
.partner-register-form .form-label {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  color: var(--color-muted);
  font-size: 14px;
  line-height: 1.6;
}
.partner-register-form .form-label * { box-sizing: border-box; }
.partner-register-form .form-label p { margin: 0; padding: 0; }

/* intro text + Partner Name share the first <p>; let both sit on the grid */
.partner-register-form .form-label > p:first-child { display: contents; }
.partner-register-form .form-label > p:first-child > br { display: none; }

/* ---------- Labels ---------- */
.partner-register-form .form-label label {
  display: block;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--color-darkest);
}

/* ---------- Inputs ---------- */
.partner-register-form .wpcf7-form-control-wrap { display: block; margin-top: 8px; }
.partner-register-form .form-label input[type="text"],
.partner-register-form .form-label input[type="email"],
.partner-register-form .form-label input[type="date"],
.partner-register-form .form-label textarea {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 13px 16px;
  font-size: 15px;
  font-weight: 500;
  color: var(--color-muted);
  background: #fff;
  border: 1.5px solid var(--form-border);
  border-radius: 10px;
  outline: none;
  box-shadow: none;
  transition: border-color .2s, box-shadow .2s;
  -webkit-appearance: none;
  appearance: none;
}
.partner-register-form .form-label input[type="date"] { min-height: 49px; }
.partner-register-form .form-label textarea { min-height: 170px; resize: vertical; line-height: 1.6; }
.partner-register-form .form-label ::placeholder { color: #a3adbc; font-weight: 400; opacity: 1; }
.partner-register-form .form-label input:hover,
.partner-register-form .form-label textarea:hover { border-color: #b3bfd1; }
.partner-register-form .form-label input:focus,
.partner-register-form .form-label textarea:focus {
  border-color: var(--color-navy);
  box-shadow: 0 0 0 4px rgba(31, 122, 224, .15);
}

/* ---------- Submit ---------- */
.partner-register-form .wpcf7-submit {
	font-family: 'Raleway', sans-serif;
	text-transform: uppercase;
	min-width: 200px;
  padding: 15px 44px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .04em;
  color: #fff;
  background: var(--color-red);
  border: 2px solid var(--color-red);
  border-radius: 999px;
  cursor: pointer;
  transition: background .2s, border-color .2s, box-shadow .2s, transform .1s;
  -webkit-appearance: none;
  appearance: none;
	
}
.partner-register-form .wpcf7-submit:hover {
  background: var(--color-navy);
  border-color: var(--color-navy);
  box-shadow: 0 8px 20px rgba(31, 122, 224, .3);
}
.partner-register-form .wpcf7-submit:active { transform: translateY(1px); }

/* ---------- Validation + response ---------- */
.partner-register-form .wpcf7-not-valid { border-color: var(--form-error) !important; }
.partner-register-form .wpcf7-not-valid-tip {
  margin-top: 6px;
  font-size: 13px;
  font-weight: 500;
  color: var(--form-error);
}
.partner-register-form .wpcf7 form .wpcf7-response-output {
  margin: 20px 0 0;
  padding: 14px 18px;
  font-size: 14px;
  font-weight: 500;
  border-width: 1.5px;
  border-radius: 10px;
}
.partner-register-form .wpcf7 form.sent .wpcf7-response-output {
  color: #14532d; background: #ecfdf3; border-color: #34a853;text-align: center;font-size: 18px;font-weight: 600;
}
.partner-register-form .wpcf7 form.invalid .wpcf7-response-output,
.partner-register-form .wpcf7 form.failed .wpcf7-response-output {
  color: #7f1d1d; background: #fef2f2; border-color: var(--form-error);
}
/* ---------- Info notice (intro line) ----------
   Requires wrapping the intro text in the CF7 editor:
   <span class="form-desc">When you submit this form ... yourself.</span> */
.partner-register-form .form-block .form-desc {
  grid-column: 1 / -1;
  grid-row: 1;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 18px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
  color: var(--color-darkest);
  background: rgba(31, 122, 224, .08);
  border: 1px solid rgba(31, 122, 224, .25);
  border-left: 4px solid var(--color-navy);
  border-radius: 10px;
}
.partner-register-form .form-block .form-desc::before {
  content: "i";
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  margin-top: 1px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
  font-style: italic;
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1;
  color: #fff;
  background: var(--color-navy);
  border-radius: 50%;
}
.partner-register-form .wpcf7 form .wpcf7-response-output{text-align:center;}
.wpcf7-spinner{top:8px;}
/* ---------- Two-column placement (desktop / tablet) ----------
   DOM order: 1 intro+name, 2 email, 3 date, 4 company,
              5 location, 6 opportunity, 7 estimate, 8 submit */
@media (min-width: 681px) {
  /* Row 2: Name | Email */
  .partner-register-form .form-label > p:first-child > label { grid-column: 1; grid-row: 2; }
  .partner-register-form .form-label > p:nth-child(2)        { grid-column: 2; grid-row: 2; }
  /* Row 3: Company | Location */
  .partner-register-form .form-label > p:nth-child(4)        { grid-column: 1; grid-row: 3; }
  .partner-register-form .form-label > p:nth-child(5)        { grid-column: 2; grid-row: 3; }
  /* Row 4: Opportunity (full width) */
  .partner-register-form .form-label > p:nth-child(6)        { grid-column: 1 / -1; grid-row: 4; }
  /* Row 5: Date | Budget */
  .partner-register-form .form-label > p:nth-child(3)        { grid-column: 1; grid-row: 5; }
  .partner-register-form .form-label > p:nth-child(7)        { grid-column: 2; grid-row: 5; }
  /* Row 6: Submit */
  .partner-register-form .form-label > p:nth-child(8)        { grid-column: 1 / -1; grid-row: 6; }

  /* keep inputs aligned when a label wraps to two lines */
  .partner-register-form .form-label > p:nth-child(2),
  .partner-register-form .form-label > p:nth-child(3),
  .partner-register-form .form-label > p:nth-child(4),
  .partner-register-form .form-label > p:nth-child(5),
  .partner-register-form .form-label > p:nth-child(7) { display: flex; }

  .partner-register-form .form-label > p:first-child > label,
  .partner-register-form .form-label > p:nth-child(2) > label,
  .partner-register-form .form-label > p:nth-child(3) > label,
  .partner-register-form .form-label > p:nth-child(4) > label,
  .partner-register-form .form-label > p:nth-child(5) > label,
  .partner-register-form .form-label > p:nth-child(7) > label {
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 8px;
  }
}

@media (min-width: 981px) {

  .leadership-row .et_pb_column:not(:last-child) {

    margin-right: 2%;

  }

  .leadership-row .et_pb_column {

    width: 23.5%;

  }

  .it-operates-row .et_pb_column:not(:last-child) {

    margin-right: 2%;

  }

  .it-operates-row .et_pb_column {

    width: 32%;

  }

  .meeting-user-row .et_pb_column:not(:last-child) {

    margin-right: 2%;

  }

  .meeting-user-row .et_pb_column {

    width: 32%;

  }

  .one-platform-row .et_pb_column:not(:last-child) {

    margin-right: 2%;

  }

  .one-platform-row .et_pb_column {

    width: 23.5%;

  }

  .et_header_style_left #et-top-navigation,

  .et_header_style_split #et-top-navigation {

    padding-top: 0px !important;

  }

}

@media (min-width: 1281px) {

  .et_fullwidth_nav #main-header .container {

    padding-left: 0 !important;

    padding-right: 0 !important;

  }

}  

@media (max-width: 980px) {

  .et_header_style_left #logo {

      max-width: 100%;

  }

  #et_mobile_nav_menu {

      display: none;

  }

  #top-menu {

    display: block;

  }

  #et-top-navigation {

    padding-left: 0 !important;

  }

  .et_header_style_left #et-top-navigation {

    padding-top: 0 !important;

  }

  #main-header .container {

    width: 100%;

    padding-left: 40px;

    padding-right: 40px;

  }

}

@media (max-width: 767px) {

  #main-header .container {

    padding-left: 24px;

    padding-right: 24px;

  }
	.et_pb_fullwidth_header.heading-inner-page .et_pb_fullwidth_header_container.center .header-content {
		width: 100%;
	}

}

@media (max-width: 680px) {
  .partner-register-form .form-label {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 24px 0px;
    border-radius: 12px;
  }
  .partner-register-form .wpcf7-submit { width: 100%; }
  .partner-register-form .form-label input,
  .partner-register-form .form-label textarea { font-size: 16px; } /* stops iOS zoom */
  .partner-register-form .form-label p:last-child{text-align:center;}
}

@media (max-width: 575px) {

  #main-header .container {

    padding-left: 24px;

    padding-right: 24px;

  }

  #footer-bottom .container {

    width: 100%;

  }

}

@media (max-width: 500px) {

  #et-top-navigation {

    display: none !important;

  }

  #footer-info, #footer-bottom #footer-info {

    justify-content: center !important;

  }
  .partner-register-form .form-block {
	padding: 20px;
  }

}