/* Reconnexion WHMCS header v25
   Visual sync target: Reconnexion WordPress Slick Editable v48.
   WHMCS-specific mobile JS is retained; visual values mirror WordPress v48. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

:root{
  --rcx-blue:#1559d6;
  --rcx-blue-2:#0b47b5;
  --rcx-cyan:#22b8f6;
  --rcx-text:#14233c;
}

.rcx-exact-wp-header,
.rcx-exact-wp-header *{box-sizing:border-box;}
.rcx-exact-wp-header{
  position:relative;
  z-index:1000;
  background:#fff;
  font-family:Inter,Helvetica,sans-serif;
  font-size:15px;
  line-height:1.7;
  color:#475569;
}
.rcx-exact-wp-header .container{
  width:100%;
  max-width:1180px!important;
  margin-right:auto;
  margin-left:auto;
  padding-right:15px;
  padding-left:15px;
}

/* Announcement bar — exact WordPress v48 values */
.rcx-exact-wp-header .rcx-announcement-bar{background:#07152c;color:#dbe7ff;font-size:13px;}
.rcx-exact-wp-header .rcx-announcement-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.rcx-exact-wp-header .rcx-announcement-inner i{color:#45d6a2;margin-right:7px;}
.rcx-exact-wp-header .rcx-announcement-links{display:flex;gap:22px;}
.rcx-exact-wp-header .rcx-announcement-links a{color:#dbe7ff!important;text-decoration:none!important;}

/* Main navigation — exact WordPress v48 geometry */
.rcx-exact-wp-header .rcx-nav-bar{background:rgba(255,255,255,.97);border-bottom:1px solid rgba(9,32,71,.08);box-shadow:0 8px 30px rgba(13,35,70,.05);}
.rcx-exact-wp-header .rcx-header-nav{position:relative;min-height:76px;padding:0;display:flex;align-items:center;width:100%;}
.rcx-exact-wp-header .rcx-brand-wrap{display:flex;align-items:center;min-width:190px;}
.rcx-exact-wp-header .rcx-logo-link{display:inline-flex;align-items:center;}
.rcx-exact-wp-header .rcx-header-logo{display:block;max-height:52px;max-width:180px;width:auto;height:auto;}
.rcx-exact-wp-header .rcx-desktop-shell{display:flex;align-items:center;flex:1 1 auto;min-width:0;}
.rcx-exact-wp-header .rcx-desktop-navigation{display:flex;align-items:center;gap:12px;margin:0 18px 0 auto!important;padding:0;list-style:none;}
.rcx-exact-wp-header .rcx-desktop-navigation>li{position:relative;list-style:none;margin:0;padding:0;}
.rcx-exact-wp-header .rcx-desktop-navigation .custom-nav-link,
.rcx-exact-wp-header .rcx-desktop-navigation .rcx-mega-toggle{
  display:block;
  color:#243651!important;
  font-family:inherit;
  font-size:14px;
  font-weight:650;
  line-height:1.4;
  padding:27px 14px!important;
  position:relative;
  border:0;
  background:transparent;
  cursor:pointer;
  text-decoration:none!important;
  white-space:nowrap;
}
.rcx-exact-wp-header .rcx-desktop-navigation .custom-nav-link:after,
.rcx-exact-wp-header .rcx-desktop-navigation .rcx-mega-toggle:after{
  content:''!important;
  position:absolute;
  border:0!important;
  margin:0!important;
  vertical-align:baseline!important;
  left:10px;
  right:10px;
  bottom:18px;
  height:2px;
  background:var(--rcx-blue);
  transform:scaleX(0);
  transition:.2s;
}
.rcx-exact-wp-header .rcx-desktop-navigation .custom-nav-link:hover:after,
.rcx-exact-wp-header .rcx-desktop-navigation .rcx-mega-toggle:hover:after,
.rcx-exact-wp-header .rcx-has-mega-menu.is-open>.rcx-mega-toggle:after{transform:scaleX(1);}
/* v27 — exact WordPress angle-down without icon-font dependency.
   The icon is an inline SVG. Kill any WHMCS/Bootstrap pseudo-element caret completely. */
.rcx-exact-wp-header .rcx-desktop-navigation .main-link-toggle::before{
  content:none!important;
  display:none!important;
  border:0!important;
  margin:0!important;
}
.rcx-exact-wp-header .rcx-desktop-navigation .main-link-toggle .rcx-nav-chevron{
  position:absolute;
  right:-1px;
  top:50%;
  width:6.25px;
  height:10px;
  display:block;
  transform:translateY(-50%);
  overflow:visible;
  pointer-events:none;
  color:currentColor;
}
.rcx-exact-wp-header .rcx-nav-actions{display:flex;gap:9px;align-items:center;}
.rcx-exact-wp-header .rcx-primary-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border-radius:9px;
  text-decoration:none!important;
  font-weight:700;
  transition:.2s ease;
  border:1px solid transparent;
  padding:11px 17px;
  color:#fff!important;
  background:linear-gradient(135deg,var(--rcx-blue),var(--rcx-blue-2));
  box-shadow:0 10px 24px rgba(21,89,214,.22);
  white-space:nowrap;
}
.rcx-exact-wp-header .rcx-primary-button:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(21,89,214,.32);}

/* Megamenu base — same animation and frame as WordPress v48 */
.rcx-exact-wp-header .rcx-has-mega-menu .rcx-mega-panel{
  position:absolute;
  top:calc(100% + 3px);
  left:50%;
  transform:translate(-50%,12px);
  width:min(960px,92vw);
  background:#fff;
  border:1px solid #edf1f6;
  border-radius:14px;
  box-shadow:0 24px 70px rgba(13,38,76,.22);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
  overflow:hidden;
  z-index:1050;
}
.rcx-exact-wp-header .rcx-has-mega-menu .rcx-mega-panel::before{
  content:'';
  position:absolute;
  top:-8px;
  left:50%;
  width:16px;
  height:16px;
  background:#fff;
  transform:translateX(-50%) rotate(45deg);
}
.rcx-exact-wp-header .rcx-has-mega-menu:hover>.rcx-mega-panel,
.rcx-exact-wp-header .rcx-has-mega-menu:focus-within>.rcx-mega-panel,
.rcx-exact-wp-header .rcx-has-mega-menu.is-open>.rcx-mega-panel{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}

/* Topic menus — final v48 override values */
.rcx-exact-wp-header .rcx-topic-mega{
  width:min(850px,94vw)!important;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
  padding:0!important;
  overflow:hidden;
}
.rcx-exact-wp-header .rcx-topic-links{padding:25px 26px;display:grid;gap:4px;background:#fff;position:relative;z-index:1;}
.rcx-exact-wp-header .rcx-topic-links>a{display:flex;align-items:center;gap:14px;padding:14px;border-radius:11px;text-decoration:none!important;transition:.18s ease;}
.rcx-exact-wp-header .rcx-topic-links>a:hover{background:#f4f8ff;transform:translateX(2px);}
.rcx-exact-wp-header .rcx-topic-icon{display:grid;place-items:center;flex:0 0 43px;width:43px;height:43px;border-radius:50%;background:#eaf2ff;color:#1559d6;font-size:16px;}
.rcx-exact-wp-header .rcx-web-topic-icon{background:#edf3ff;color:#1559d6;}
.rcx-exact-wp-header .rcx-mail-topic-icon{background:#e9faff;color:#03a9e8;}
.rcx-exact-wp-header .rcx-topic-links>a>span:last-child{display:flex;flex-direction:column;min-width:0;}
.rcx-exact-wp-header .rcx-topic-links strong{display:block;color:#354965;font-size:14px;line-height:1.3;}
.rcx-exact-wp-header .rcx-topic-links small{display:block;color:#8390a3;font-size:12px;line-height:1.45;margin-top:3px;}
.rcx-exact-wp-header .rcx-topic-links small b{color:#1559d6;font-weight:800;}
.rcx-exact-wp-header .rcx-topic-aside{padding:28px 28px 25px;background:linear-gradient(145deg,#f3f7ff,#eaf2ff);border-left:1px solid #dfe9f7;display:flex;flex-direction:column;position:relative;z-index:1;}
.rcx-exact-wp-header .rcx-topic-kicker{font-size:10px;letter-spacing:.14em;font-weight:850;color:#1559d6;margin-bottom:6px;}
.rcx-exact-wp-header .rcx-topic-aside h3{font-size:20px;line-height:1.25;color:#1b2f4b;margin:0 0 18px;}
.rcx-exact-wp-header .rcx-topic-aside ul{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:13px;}
.rcx-exact-wp-header .rcx-topic-aside li{display:flex;align-items:flex-start;gap:10px;color:#596a82;font-size:12px;line-height:1.45;}
.rcx-exact-wp-header .rcx-topic-aside li i{color:#29b96f;margin-top:2px;}
.rcx-exact-wp-header .rcx-topic-aside li strong{color:#314761;}
.rcx-exact-wp-header .rcx-topic-cta{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-radius:9px;background:#1559d6;color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:800;box-shadow:0 10px 22px rgba(21,89,214,.18);}
.rcx-exact-wp-header .rcx-topic-cta:hover{background:#0d49b8;transform:translateY(-1px);}
.rcx-exact-wp-header .rcx-mail-aside{background:linear-gradient(145deg,#effbff,#eaf5ff);}
.rcx-exact-wp-header .rcx-webhosting-mega .rcx-topic-links{grid-template-columns:1fr;}
.rcx-exact-wp-header .rcx-softaculous-aside{background:linear-gradient(145deg,#f2f7ff,#e7f0ff);}
.rcx-exact-wp-header .rcx-softaculous-app-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px;}
.rcx-exact-wp-header .rcx-softaculous-app-grid a{display:flex;align-items:center;gap:9px;padding:10px;border-radius:10px;background:rgba(255,255,255,.72);border:1px solid rgba(21,89,214,.09);text-decoration:none!important;color:#304760!important;font-size:12px;font-weight:750;}
.rcx-exact-wp-header .rcx-softaculous-app-grid a:hover{background:#fff;transform:translateY(-1px);}
.rcx-exact-wp-header .rcx-softaculous-app-grid img{width:24px;height:24px;object-fit:contain;}

/* Simple pricing menu — WordPress v48 */
.rcx-exact-wp-header .rcx-simple-parent .rcx-mega-panel{width:280px;}
.rcx-exact-wp-header .rcx-simple-mega{padding:10px;}
.rcx-exact-wp-header .rcx-simple-mega a{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:8px;color:#3f516d!important;text-decoration:none!important;}
.rcx-exact-wp-header .rcx-simple-mega a:hover{background:#f4f7fc;color:#0f57c7!important;}

/* Keep the v24 CSS-only right arrow fix. */
.rcx-exact-wp-header .rcx-css-arrow{display:inline-block!important;flex:0 0 auto;width:7px!important;height:7px!important;border:0!important;background:transparent!important;}
.rcx-exact-wp-header .rcx-css-arrow-right{border-right:1.7px solid currentColor!important;border-top:1.7px solid currentColor!important;transform:rotate(45deg)!important;margin-left:3px!important;color:inherit!important;}

/* Mobile trigger */
.rcx-exact-wp-header .rcx-mobile-toggle{border:0;padding:7px;display:none;flex-direction:column;gap:5px;background:transparent;margin-left:auto;}
.rcx-exact-wp-header .rcx-mobile-toggle span{width:24px;height:2px;background:#10243f;border-radius:5px;}

/* WHMCS uses a tiny native controller instead of Bootstrap 5 offcanvas JS,
   but dimensions and spacing match the WordPress v48 offcanvas. */
.rcx-exact-wp-header .rcx-mobile-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1040;opacity:0;visibility:hidden;transition:opacity .15s linear;}
.rcx-exact-wp-header .rcx-mobile-offcanvas{position:fixed;left:0;top:0;bottom:0;width:min(360px,90vw)!important;z-index:1045;background:#fff;transform:translateX(-100%);transition:transform .3s ease-in-out;overflow-y:auto;visibility:hidden;}
.rcx-exact-wp-header.is-mobile-open .rcx-mobile-backdrop{opacity:1;visibility:visible;}
.rcx-exact-wp-header.is-mobile-open .rcx-mobile-offcanvas{transform:none;visibility:visible;}
.rcx-exact-wp-header .rcx-mobile-offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:0;}
.rcx-exact-wp-header .rcx-mobile-brand,.rcx-exact-wp-header .rcx-mobile-logo-link{display:inline-flex;align-items:center;}
.rcx-exact-wp-header .rcx-mobile-logo{display:block;max-height:44px;max-width:155px;width:auto;height:auto;}
.rcx-exact-wp-header .rcx-mobile-close{box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:#000;background:transparent;border:0;border-radius:.375rem;opacity:.5;position:relative;font-size:16px;line-height:1;text-indent:-9999px;overflow:hidden;}
.rcx-exact-wp-header .rcx-mobile-close:before,
.rcx-exact-wp-header .rcx-mobile-close:after{content:'';position:absolute;left:50%;top:50%;width:16px;height:2px;background:currentColor;transform-origin:center;}
.rcx-exact-wp-header .rcx-mobile-close:before{transform:translate(-50%,-50%) rotate(45deg);}
.rcx-exact-wp-header .rcx-mobile-close:after{transform:translate(-50%,-50%) rotate(-45deg);}
.rcx-exact-wp-header .rcx-mobile-offcanvas-body{padding:16px;}
.rcx-exact-wp-header .rcx-mobile-navigation{display:flex;flex-direction:column;}
.rcx-exact-wp-header .rcx-mobile-main-link,
.rcx-exact-wp-header .rcx-mobile-accordion{display:flex;width:100%;align-items:center;justify-content:space-between;padding:14px 2px;border:0;border-bottom:1px solid #edf0f5;background:transparent;color:#233653!important;font-family:inherit;font-size:16px;font-weight:600;text-decoration:none!important;text-align:left;}
.rcx-exact-wp-header .rcx-mobile-panel{padding:5px 0 12px 14px;}
.rcx-exact-wp-header .rcx-mobile-panel a{display:flex;justify-content:space-between;gap:15px;padding:10px 0;color:#52627a!important;text-decoration:none!important;}
.rcx-exact-wp-header .rcx-mobile-panel small{color:#8995a5;text-align:right;}
.rcx-exact-wp-header .rcx-mobile-app-title{padding:14px 0 5px;font-weight:700;color:#174fae;}
.rcx-exact-wp-header .rcx-mobile-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px;}
.rcx-exact-wp-header .rcx-mobile-actions a{width:100%;}

/* WHMCS client navigation remains suppressed below the public Reconnexion header. */
body.rcx-whmcs .rcx-whmcs-nav,
body.rcx-whmcs .rcx-account-topbar{display:none!important;}

/* WordPress v48 responsive cascade */
@media (max-width:1199px){
  .rcx-exact-wp-header .rcx-desktop-navigation{gap:7px;}
  .rcx-exact-wp-header .rcx-desktop-navigation .custom-nav-link,
  .rcx-exact-wp-header .rcx-desktop-navigation .rcx-mega-toggle{padding-left:10px!important;padding-right:10px!important;}
}
@media (max-width:991px){
  .rcx-exact-wp-header .rcx-announcement-bar{display:none;}
  .rcx-exact-wp-header .rcx-topic-mega{grid-template-columns:1fr;}
  .rcx-exact-wp-header .rcx-topic-aside{display:none;}
}
@media (max-width:767.98px){
  .rcx-exact-wp-header{position:relative!important;top:auto!important;box-shadow:none;}
  .rcx-exact-wp-header .rcx-mobile-toggle{display:flex;}
  .rcx-exact-wp-header .rcx-header-nav{min-height:68px;}
  .rcx-exact-wp-header .rcx-header-logo{max-height:43px;max-width:150px;}
  .rcx-exact-wp-header .rcx-desktop-shell{display:none!important;}
  .rcx-exact-wp-header .rcx-has-mega-menu .rcx-mega-panel{display:none;}
  .rcx-exact-wp-header .rcx-softaculous-app-grid{grid-template-columns:1fr;}
}
@media (min-width:992px){
  body.rcx-whmcs .rcx-exact-wp-header{position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:9990!important;box-shadow:0 8px 26px rgba(15,23,42,.06);}
}


/* v30 - WHMCS cart visibility */
.rcx-exact-wp-header .rcx-cart-button{flex:0 0 42px;text-decoration:none!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.rcx-exact-wp-header .rcx-cart-button:hover{transform:translateY(-2px);border-color:#c8d7eb!important;box-shadow:0 10px 24px rgba(14,40,82,.10);color:#1559d6!important;}
.rcx-exact-wp-header .rcx-cart-icon{display:block;width:20px;height:20px;overflow:visible;}
.rcx-exact-wp-header .rcx-cart-count{position:absolute;top:-7px;right:-7px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:linear-gradient(135deg,#ff9b44,#ff6f29);color:#fff;font-size:10px;font-weight:800;line-height:1;box-shadow:0 4px 10px rgba(255,111,41,.28);}
.rcx-exact-wp-header .rcx-cart-count[hidden]{display:none!important;}
.rcx-exact-wp-header .rcx-mobile-cart-link{position:relative;display:flex!important;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 16px;border:1px solid #d9e3ef;border-radius:9px;background:#fff;color:#23344f!important;font-weight:750;text-decoration:none!important;}
.rcx-exact-wp-header .rcx-mobile-cart-link:hover{border-color:#c8d7eb;background:#f8fbff;color:#1559d6!important;}
.rcx-exact-wp-header .rcx-mobile-cart-link .rcx-cart-count{top:-7px;right:-7px;}


/* v46 — remove the redundant cart title/breadcrumb below the Reconnexion header.
   The cart button and count in the header remain visible. */
body.rcx-whmcs.rcx-cart-view-route .master-breadcrumb,
body.rcx-whmcs.rcx-cart-view-route #order-standard_cart .header-lined{
    display:none!important;
}

body.rcx-whmcs.rcx-cart-view-route #order-standard_cart{
    padding-top:18px!important;
}


/* v53 — header interaction hardening.
   Top-level triggers are real links as a no-JS fallback; the mega menu remains CSS-hover/focus capable. */
.rcx-exact-wp-header{position:relative!important;z-index:9990!important;}
.rcx-exact-wp-header .rcx-nav-bar,
.rcx-exact-wp-header .rcx-header-nav,
.rcx-exact-wp-header .rcx-desktop-shell,
.rcx-exact-wp-header .rcx-desktop-navigation{position:relative;overflow:visible!important;}
.rcx-exact-wp-header a,
.rcx-exact-wp-header button{pointer-events:auto!important;}
.rcx-exact-wp-header .rcx-nav-chevron,
.rcx-exact-wp-header .rcx-mega-panel::before{pointer-events:none!important;}
.rcx-exact-wp-header .rcx-has-mega-menu .rcx-mega-panel{z-index:10020!important;}
.rcx-exact-wp-header .rcx-has-mega-menu:hover>.rcx-mega-panel,
.rcx-exact-wp-header .rcx-has-mega-menu:focus-within>.rcx-mega-panel,
.rcx-exact-wp-header .rcx-has-mega-menu.is-open>.rcx-mega-panel{pointer-events:auto!important;}
.rcx-exact-wp-header .rcx-mega-toggle{cursor:pointer;}
