/* CIRTASOFT redesign layer — loaded AFTER critical/deferred css. Source: "Cirtasoft Accueil Animate 2" design. */
:root{
  --rd-blue:#1284F6;--rd-navy:#040664;--rd-ink:#475079;--rd-mute:#6b7299;
  --rd-line:#e3e8f4;--rd-soft:#f6f8fc;--rd-tint:#eaf3ff;--rd-pill:#f1f4fb;
  --rd-ease:cubic-bezier(.16,1,.3,1);
  --rd-font:'Plus Jakarta Sans',system-ui,sans-serif;
  --rd-max:1240px;
  --blue:#1284F6;--navy:#040664;--off-white:#f6f8fc;--text:#040664;--text-muted:#475079;
}
html{scroll-behavior:smooth}
body{font-family:var(--rd-font)!important;color:var(--rd-navy);background:#fff;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{font-family:var(--rd-font)!important;color:var(--rd-navy);font-weight:800;letter-spacing:-.03em;text-wrap:balance}
p,li,a,button,input,textarea,select,label{font-family:var(--rd-font)}
p{color:var(--rd-ink);text-wrap:pretty}

/* Header */
.navbar-wrapper,.header{background:rgba(255,255,255,.92)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #e8ecf5!important;transition:box-shadow .3s}
.navbar-wrapper.rd-scrolled,.header.rd-scrolled{box-shadow:0 12px 30px -20px rgba(4,6,100,.35)}
.header__list-item>a{font-weight:600!important;color:var(--rd-navy)!important;border-radius:10px;transition:background .2s}
.header__list-item:hover>a{background:#f1f5ff!important}
.header__button,.header__buttons-wrapper a[href*="devis"]{background:var(--rd-blue)!important;color:#fff!important;font-weight:700!important;border-radius:999px!important;transition:background .2s}
.header__button:hover,.header__buttons-wrapper a[href*="devis"]:hover{background:var(--rd-navy)!important;color:#fff!important}
.submenu-wrapper{border-radius:0 0 20px 20px;box-shadow:0 30px 60px -20px rgba(4,6,100,.18)!important;border:0}
.submenu-list__item-wrapper,.submenu-content__link{border-radius:10px!important}

/* Buttons */
.btn-primary,.btn-white,.btn-ghost{border-radius:999px!important;font-weight:700!important;transition:background .2s,color .2s,border-color .2s,transform .2s,box-shadow .2s}
.btn-primary{background:var(--rd-blue)!important;color:#fff!important;border:0}
.btn-primary:hover{background:var(--rd-navy)!important;color:#fff!important}
.btn-ghost{background:#fff!important;color:var(--rd-navy)!important;border:1.5px solid #cfd6ea!important}
.btn-ghost:hover{border-color:var(--rd-navy)!important}
.btn-white{background:#fff!important;color:var(--rd-navy)!important}
.btn-white:hover{background:var(--rd-navy)!important;color:#fff!important}
/* No shadows on buttons (the AI assistant widget keeps its own) */
.btn-primary,.btn-primary:hover,.btn-white,.btn-white:hover,.btn-ghost,.btn-ghost:hover,.btn-submit,.btn-submit:hover,.mob-devis-btn,.mob-devis-btn:hover,.fab-call,.fab-call:hover{box-shadow:none!important}

/* Hero decor: solid circles instead of gradients */
.hero-bg{background:none!important}
.hero-grid{display:none!important}
.hero-tag{background:none!important;border:0!important;padding:0!important;color:var(--rd-blue)!important;border-radius:999px!important;font-weight:700}
.hero h1,.hero .heroh1{letter-spacing:-.035em;line-height:1.04}
.hero h1 .highlight,.heroh1 .highlight{color:var(--rd-blue)!important;-webkit-text-fill-color:var(--rd-blue)!important;background:none!important}

/* Section rhythm & cards */
section{position:relative}
.section-tag,.section-label,.eyebrow{font-size:14px;font-weight:700;color:var(--rd-blue);text-transform:uppercase;letter-spacing:.08em}
.rd-eyebrow{font-size:14px;font-weight:700;color:var(--rd-blue);text-transform:uppercase;letter-spacing:.08em}
.rd-card{border-radius:20px;border:1px solid var(--rd-line);background:#fff;padding:28px;transition:transform .2s,box-shadow .2s,border-color .2s}
.rd-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px -24px rgba(4,6,100,.3);border-color:#c9dcff}
.rd-glass{background:rgba(255,255,255,.93);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border-radius:22px;box-shadow:0 18px 40px -22px rgba(4,6,100,.35)}
.rd-panel-navy{background:var(--rd-navy);color:#fff;border-radius:32px;position:relative;overflow:hidden}
.rd-panel-navy h2,.rd-panel-navy h3{color:#fff}.rd-panel-navy p{color:#c9d2ff}
.rd-panel-blue{background:var(--rd-blue);color:#fff;border-radius:32px;position:relative;overflow:hidden}
.rd-panel-blue h2{color:#fff}.rd-panel-blue p{color:#fff}
.rd-circle{position:absolute;border-radius:50%;pointer-events:none}
.rd-pill-tabs{display:inline-flex;flex-wrap:wrap;gap:4px;padding:5px;background:var(--rd-pill);border-radius:999px}
.rd-soft{background:var(--rd-soft)}
.cta-banner{background:var(--rd-blue)!important;border-radius:32px;overflow:hidden;position:relative}
.cta-banner::before{content:"";position:absolute;left:-90px;bottom:-120px;width:300px;height:300px;border-radius:50%;background:var(--rd-navy);pointer-events:none}
.cta-banner>*{position:relative}
.services,.sectors,.testimonials,.blog,.products,.apps,.plugins,.about,.clients{overflow:hidden}
.footer{background:var(--rd-soft)!important;border-top:1px solid #e8ecf5}
.footer-grid h3,.footer-grid h4{font-weight:800}
.footer{color:var(--rd-ink)}
.footer .footer-col h3,.footer .footer-col h4{color:var(--rd-navy)}
.footer .footer-col ul li a,.footer .footer-bottom,.footer .footer-bottom a,.footer .footer-tagline{color:var(--rd-ink)}
.footer .footer-col ul li a:hover,.footer .footer-bottom a:hover{color:var(--rd-blue)}
.footer .footer-logo{filter:none}
.footer .footer-bottom{border-top-color:var(--rd-line)}
.footer .footer-newsletter input{background:#fff;border-color:var(--rd-line);color:var(--rd-navy)}
.footer .footer-newsletter input::placeholder{color:var(--rd-mute)}
[data-theme="dark"] .footer{background:#060d1e!important;border-top-color:rgba(48,166,255,.15);color:#8bb8e8}
[data-theme="dark"] .footer .footer-col h3,[data-theme="dark"] .footer .footer-col h4{color:#e8f4ff}
[data-theme="dark"] .footer .footer-col ul li a,[data-theme="dark"] .footer .footer-bottom,[data-theme="dark"] .footer .footer-bottom a,[data-theme="dark"] .footer .footer-tagline{color:#8bb8e8}
[data-theme="dark"] .footer .footer-col ul li a:hover,[data-theme="dark"] .footer .footer-bottom a:hover{color:#30a6ff}
[data-theme="dark"] .footer .footer-logo{filter:brightness(0) invert(1)}
[data-theme="dark"] .footer .footer-bottom{border-top-color:rgba(48,166,255,.15)}
[data-theme="dark"] .footer .footer-newsletter input{background:rgba(48,166,255,.08);border-color:rgba(48,166,255,.2);color:#e8f4ff}

/* Keyframes (from design) */
@keyframes cs-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes cs-dash{to{stroke-dashoffset:-24}}
@keyframes cs-pulse{0%{transform:translate(-50%,-50%) scale(.6);opacity:.55}100%{transform:translate(-50%,-50%) scale(1.6);opacity:0}}
@keyframes cs-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.rd-marquee{display:flex;gap:40px;width:max-content;animation:cs-marquee 60s linear infinite}
.rd-float{animation:cs-float 6s ease-in-out infinite}

/* Reveal (JS toggles .rd-ready on <html>; without JS everything stays visible) */
.rd-ready [data-reveal]:not(.rd-in),.rd-ready [data-reveal-children]:not(.rd-in)>*{opacity:0}
@media (prefers-reduced-motion:reduce){
  .rd-ready [data-reveal]:not(.rd-in),.rd-ready [data-reveal-children]:not(.rd-in)>*{opacity:1}
  .rd-marquee,.rd-float{animation:none}
}
@media (max-width:760px){.rd-panel-navy,.rd-panel-blue,.cta-banner{border-radius:24px}}

/* Mobile header of product landing pages (.nav / .hamburger / .mobile-menu): keep logo + actions + burger inside the viewport */
.nav-inner{min-width:0}
.hamburger{flex-shrink:0}
.mobile-menu{max-height:calc(100vh - var(--nav-h));max-height:calc(100dvh - var(--nav-h));overflow-y:auto;overscroll-behavior:contain;box-shadow:0 24px 40px -24px rgba(4,6,100,.3)}
.mobile-menu li{list-style:none;display:block}
.mobile-menu a{display:block}
@media (max-width:900px){
  .nav-inner{gap:12px;padding:0 16px}
  .nav-actions{gap:8px;flex-shrink:0}
  .logo{min-width:0;gap:8px}
  .logo-name{font-size:1.05rem}
}
@media (max-width:420px){
  .nav-inner{gap:8px;padding:0 12px}
  .nav-actions{gap:6px}
  .logo img{width:30px;height:30px}
  .logo-name{font-size:.95rem}
  .lang-btn{padding:0 8px;gap:4px}
  .theme-toggle,.hamburger,.lang-btn{height:34px}
  .theme-toggle,.hamburger{width:34px}
  .mobile-menu{padding:12px 16px 20px}
}
.hero-tag::before{display:none!important}

/* Uniform Cirtasoft header logo size on all pages */
.logo .cirtasoft-logo,.cirtasoft-logo{height:26px!important;width:auto!important;display:block}
@media (max-width:760px){.home-hero-inner{padding-top:32px!important}}

/* Inner-page hero: devis style (white, logo-shape decor) */
.hero.hero--page{background:#fff!important;border-bottom:1px solid #e8ecf5;padding:104px 0 56px!important;min-height:auto!important}
.hero--page::before{content:"";position:absolute;z-index:1;right:-150px;top:-110px;width:440px;height:326px;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='559 0 1104 818'%3E%3Cpath fill='%231284F6' d='M593 129L838 14C878-5 922-5 962 14L1630 325C1651 335 1663 354 1663 375L1663 748C1663 790 1610 818 1568 798L962 515C922 497 878 497 838 515L652 602C610 622 559 595 559 552L559 178C559 157 572 139 593 129Z'/%3E%3C/svg%3E") center/contain no-repeat}
.hero--page::after{content:"";position:absolute;z-index:1;left:-40px;bottom:-50px;width:200px;height:146px;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 497 1103 806'%3E%3Cpath fill='%23040664' d='M93 505L700 788C740 806 784 806 824 788L1010 701C1052 682 1103 708 1103 750L1103 1125C1103 1146 1090 1165 1069 1175L824 1290C784 1308 740 1308 700 1290L33 977C12 967 0 948 0 928L0 553C0 511 51 486 93 505Z'/%3E%3C/svg%3E") center/contain no-repeat}
[dir=rtl] .hero--page::before{right:auto;left:-150px}[dir=rtl] .hero--page::after{left:auto;right:-40px}
.hero--page .hero-inner{z-index:2}
.hero--page h1{color:var(--rd-navy)!important}
.hero--page p{color:var(--rd-ink)!important}
.hero--page .breadcrumb,.hero--page .breadcrumb span{color:var(--rd-mute)!important}
.hero--page .breadcrumb a{color:var(--rd-ink)!important}
.hero--page .breadcrumb a:hover{color:var(--rd-blue)!important}
@media(max-width:768px){.hero.hero--page{padding-top:160px!important}}
.hero--page .stat-num{color:var(--rd-navy)!important}
.hero--page .stat-lbl{color:var(--rd-mute)!important}
.hero--page .hero-stats{border-top-color:var(--rd-line)}
.hero--page::before,.hero--page::after{border-radius:0!important;opacity:1!important;z-index:1!important}
.hero--page::before{right:-150px!important;left:auto!important;top:-110px!important;bottom:auto!important;width:440px!important;height:326px!important;background-color:transparent!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='559 0 1104 818'%3E%3Cpath fill='%231284F6' d='M593 129L838 14C878-5 922-5 962 14L1630 325C1651 335 1663 354 1663 375L1663 748C1663 790 1610 818 1568 798L962 515C922 497 878 497 838 515L652 602C610 622 559 595 559 552L559 178C559 157 572 139 593 129Z'/%3E%3C/svg%3E")!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important}
.hero--page::after{left:-40px!important;right:auto!important;bottom:-50px!important;top:auto!important;width:200px!important;height:146px!important;background-color:transparent!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 497 1103 806'%3E%3Cpath fill='%23040664' d='M93 505L700 788C740 806 784 806 824 788L1010 701C1052 682 1103 708 1103 750L1103 1125C1103 1146 1090 1165 1069 1175L824 1290C784 1308 740 1308 700 1290L33 977C12 967 0 948 0 928L0 553C0 511 51 486 93 505Z'/%3E%3C/svg%3E")!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important}
[dir=rtl] .hero--page::before{right:auto!important;left:-150px!important}[dir=rtl] .hero--page::after{left:auto!important;right:-40px!important}
@media(max-width:680px){.hero--page .hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px}}
