/* ══════════════════════════════════════════════════════════
   PROXORIS — Cabinet de Conseil & Audit · Maroc
   Identité finale : Vert #1A5C3A → Or #C8941C → Cyan #00C8F0
   Corps ivoire · Nav & Footer navy
══════════════════════════════════════════════════════════ */

:root{
  /* Corps ivoire */
  --bg:         #F4F1EB;
  --bg2:        #ECE6D8;
  --white:      #FFFFFF;
  --border-l:   #D4CCBC;

  /* Texte sur ivoire */
  --text:       #111820;
  --text-m:     #5A5248;
  --text-f:     #8A7F6E;

  /* Nav & Footer (sombre) */
  --bg-dark:    #111820;
  --bg-dark2:   #161F2A;
  --bg-dark3:   #1C2535;
  --border-d:   rgba(255,255,255,.08);

  /* Signature PROXORIS */
  --v1:         #1A5C3A;
  --v2:         #C8941C;
  --v3:         #00C8F0;
  --grad:       linear-gradient(90deg, #1A5C3A, #C8941C, #00C8F0);
  --grad135:    linear-gradient(135deg, #1A5C3A, #C8941C, #00C8F0);

  /* WhatsApp */
  --wa:         #25D366;
  --wa-dark:    #128C7E;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'DM Sans',sans-serif;
  background:var(--bg);
  color:var(--text);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  line-height:1.5;
}
a{text-decoration:none;color:inherit;}
sup{font-size:.6em;vertical-align:super;}
em{font-style:italic;}

/* ══════════ LOGO ══════════ */
.logo{display:flex;flex-direction:column;}
.logo__eye{
  font-family:'Montserrat',sans-serif;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;
  color:rgba(255,255,255,.55);
}
.logo__word{display:flex;align-items:baseline;line-height:1;}
.logo__prox{
  font-family:'Montserrat',sans-serif;font-weight:800;
  color:#FFFFFF;letter-spacing:-.025em;
}
.logo__oris{
  font-family:'Montserrat',sans-serif;font-weight:800;
  letter-spacing:-.025em;
  background:linear-gradient(90deg,#1A5C3A,#C8941C,#00C8F0);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.logo__sub{
  font-family:'DM Sans',sans-serif;font-weight:400;
  color:rgba(255,255,255,.5);margin-top:6px;
  letter-spacing:.02em;
}
.logo__sub i{color:rgba(255,255,255,.25);font-style:normal;margin:0 2px;}

/* Logo sur fond ivoire (hero, footer-fs, etc.) */
.hero-logo .logo__eye,
.apropos-grid .logo__eye{ color:var(--v1); }
.hero-logo .logo__prox,
.apropos-grid .logo__prox{ color:var(--text); }
.hero-logo .logo__sub,
.apropos-grid .logo__sub{ color:var(--text-m); }
.hero-logo .logo__sub i,
.apropos-grid .logo__sub i{ color:var(--text-f); }

/* ══════════ NAV (DARK) ══════════ */
nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:rgba(17,24,32,.96);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border-d);
  transition:box-shadow .2s;
}
nav.scrolled{box-shadow:0 4px 32px rgba(0,0,0,.3);}
.nav-inner{
  max-width:1280px;margin:0 auto;
  padding:0 40px;height:64px;
  display:grid;grid-template-columns:1fr auto 1fr;
  align-items:center;gap:20px;
}
.nav-logo{display:flex;flex-direction:column;gap:2px;}
.nav-logo .logo__eye{font-size:7px;}
.nav-logo .logo__prox,.nav-logo .logo__oris{font-size:18px;}

.nav-simul{
  justify-self:center;
  display:inline-flex;align-items:center;gap:10px;
  font-family:'Montserrat',sans-serif;
  font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  color:#FFFFFF;
  padding:9px 20px;border-radius:7px;
  border:1px solid rgba(0,200,240,.35);
  background:rgba(0,200,240,.07);
  transition:all .2s;white-space:nowrap;
}
.nav-simul:hover{
  border-color:rgba(0,200,240,.6);
  background:rgba(0,200,240,.12);
}
.nav-simul-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--grad135);
  animation:pulse 2s infinite;
}
@keyframes pulse{
  0%,100%{opacity:1;transform:scale(1);}
  50%{opacity:.6;transform:scale(1.2);}
}
.nav-simul-arrow{color:var(--v3);}

.nav-right{display:flex;align-items:center;gap:2px;justify-content:flex-end;}
.nav-link{
  font-family:'DM Sans',sans-serif;
  font-size:12px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.6);
  padding:7px 14px;border-radius:6px;
  transition:all .2s;
}
.nav-link:hover{color:var(--v3);background:rgba(0,200,240,.06);}
.nav-cta{
  font-family:'Montserrat',sans-serif;
  font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  color:#FFFFFF;
  background:var(--grad);
  padding:8px 18px;border-radius:7px;
  margin-left:8px;
  transition:opacity .2s;
  white-space:nowrap;
}
.nav-cta:hover{opacity:.88;}

.nav-gradbar{
  position:absolute;bottom:0;left:0;right:0;
  height:2px;background:var(--grad);
}

.burger{
  display:none;flex-direction:column;gap:5px;
  cursor:pointer;padding:6px;margin-left:6px;
}
.burger span{
  display:block;width:22px;height:1.5px;
  background:rgba(255,255,255,.7);border-radius:2px;
  transition:all .2s;
}

/* Mobile menu */
.mob{
  display:none;
  position:fixed;top:66px;left:0;right:0;z-index:99;
  background:rgba(17,24,32,.97);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border-d);
  padding:16px 20px;
  flex-direction:column;gap:4px;
}
.mob.open{display:flex;}
.mob-link{
  font-family:'DM Sans',sans-serif;
  font-size:13px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.7);
  padding:12px 16px;border-radius:6px;
  transition:all .2s;
}
.mob-link:hover{color:var(--v3);background:rgba(0,200,240,.06);}
.mob-simul{
  background:rgba(0,200,240,.08);
  border:1px solid rgba(0,200,240,.25);
  color:var(--v3);
}

/* ══════════ SECTIONS (IVOIRE) ══════════ */
.section{padding:96px 40px;}
.section-alt{background:var(--bg2);}
.wrap{max-width:1160px;margin:0 auto;}
.center{text-align:center;}

.sec-eye{
  font-family:'Montserrat',sans-serif;
  font-size:10px;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--v1);
  margin-bottom:12px;
  display:flex;align-items:center;gap:10px;
}
.sec-eye::before{
  content:'';width:22px;height:1px;background:var(--v1);
}
.center .sec-eye{justify-content:center;}
.center .sec-eye::before{display:none;}

.sec-title{
  font-family:'Montserrat',sans-serif;
  font-size:clamp(30px,3.6vw,46px);
  font-weight:800;letter-spacing:-.02em;
  color:var(--text);
  margin-bottom:14px;line-height:1.08;
}
.sec-title .hl{
  background:var(--grad);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}

.sec-sub{
  font-size:16px;color:var(--text-m);
  max-width:640px;line-height:1.65;
  margin-bottom:56px;
}
.center .sec-sub{margin-left:auto;margin-right:auto;}

/* ══════════ BOUTONS ══════════ */
.btn-grad{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--grad);
  padding:14px 28px;border-radius:8px;
  font-family:'Montserrat',sans-serif;
  font-size:12px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  color:#FFFFFF;transition:opacity .2s;
}
.btn-grad:hover{opacity:.88;}
.btn-grad-lg{padding:15px 34px;font-size:13px;}

.btn-outline{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 26px;border-radius:8px;
  border:1.5px solid var(--text);
  font-family:'Montserrat',sans-serif;
  font-size:12px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  color:var(--text);
  background:transparent;
  transition:all .2s;
}
.btn-outline:hover{background:var(--text);color:var(--bg);}

/* ══════════ HERO ══════════ */
#hero{
  min-height:100vh;
  padding:128px 40px 80px;
  position:relative;overflow:hidden;
  display:flex;align-items:center;
  background:var(--bg);
}
.hero-glow-a{
  position:absolute;top:-120px;left:-120px;
  width:620px;height:620px;border-radius:50%;
  background:radial-gradient(circle,rgba(26,92,58,.14),transparent 65%);
  pointer-events:none;
}
.hero-glow-b{
  position:absolute;bottom:-100px;right:-100px;
  width:560px;height:560px;border-radius:50%;
  background:radial-gradient(circle,rgba(0,200,240,.1),transparent 65%);
  pointer-events:none;
}
.hero-inner{
  max-width:1160px;margin:0 auto;width:100%;
  display:grid;grid-template-columns:1.1fr 1fr;
  gap:72px;align-items:center;position:relative;z-index:1;
}

.hero-tag{
  display:inline-flex;align-items:center;gap:8px;
  margin-bottom:22px;
  padding:5px 14px;border-radius:20px;
  border:1px solid rgba(26,92,58,.28);
  background:rgba(26,92,58,.08);
}
.hero-tag-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--grad135);
}
.hero-tag-text{
  font-family:'Montserrat',sans-serif;
  font-size:11px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--v1);
}

.hero-logo{margin-bottom:18px;}
.hero-logo .logo__eye{font-size:12px;margin-bottom:10px;}
.hero-logo .logo__prox,
.hero-logo .logo__oris{font-size:76px;letter-spacing:-.03em;}
.hero-logo .logo__sub{font-size:13px;margin-top:12px;}

.hero-slogan{
  display:flex;align-items:center;gap:12px;
  margin-bottom:22px;
}
.hero-slogan-bar{
  width:26px;height:2px;
  background:var(--v2);
  flex-shrink:0;border-radius:1px;
}
.hero-slogan-text{
  font-family:'Montserrat',sans-serif;
  font-weight:800;font-size:16px;
  letter-spacing:.005em;
}
.hero-slogan-text .sw{color:var(--text);}
.hero-slogan-text .sg{
  background:var(--grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}

.hero-desc{
  font-size:16px;font-weight:400;
  color:var(--text-m);
  line-height:1.7;max-width:520px;
  margin-bottom:32px;
}

.hero-btns{display:flex;gap:12px;flex-wrap:wrap;align-items:center;}
.hero-right{display:flex;flex-direction:column;gap:12px;}

/* Stats */
.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.stat-card{
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:14px;padding:22px 20px;
}
.stat-num{
  font-family:'Montserrat',sans-serif;
  font-weight:800;font-size:40px;
  letter-spacing:-.025em;line-height:1;
  background:var(--grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.stat-label{
  font-size:12px;color:var(--text-m);
  margin-top:6px;line-height:1.4;
}

/* Trust cards */
.trust-card{
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:14px;padding:18px 20px;
  display:flex;align-items:center;gap:16px;
}
.trust-icon{
  width:46px;height:46px;border-radius:12px;
  flex-shrink:0;
  background:var(--grad135);
  display:flex;align-items:center;justify-content:center;
  font-size:20px;color:#FFFFFF;
}
.trust-title{
  font-family:'Montserrat',sans-serif;
  font-size:14px;font-weight:700;
  color:var(--text);margin-bottom:3px;
}
.trust-sub{
  font-size:12px;color:var(--text-m);
  line-height:1.45;
}

/* Certif chips */
.certif-chips{
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:14px;padding:14px 18px;
  display:flex;gap:7px;flex-wrap:wrap;
}
.chip{
  padding:5px 12px;border-radius:20px;
  border:1px solid var(--border-l);
  font-family:'Montserrat',sans-serif;
  font-size:10px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;
  color:var(--text-m);
}
.chip.on{
  border-color:rgba(26,92,58,.3);
  color:var(--v1);
  background:rgba(26,92,58,.07);
}

/* ══════════ CHIFFRES-CLÉS ══════════ */
#chiffres{
  padding:64px 40px;
  background:var(--bg2);
  border-top:1px solid var(--border-l);
  border-bottom:1px solid var(--border-l);
  position:relative;overflow:hidden;
}
#chiffres::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,
    rgba(26,92,58,.04),
    rgba(200,148,28,.04),
    rgba(0,200,240,.04));
  pointer-events:none;
}
.chiffres-wrap{
  max-width:1160px;margin:0 auto;
  display:grid;grid-template-columns:repeat(4,1fr);
  position:relative;z-index:1;
}
.chiffre{
  text-align:center;padding:0 24px;
  border-right:1px solid var(--border-l);
}
.chiffre:last-child{border-right:none;}
.chiffre-line{display:flex;align-items:baseline;justify-content:center;gap:3px;}
.chiffre-val{
  font-family:'Montserrat',sans-serif;
  font-weight:800;font-size:56px;
  letter-spacing:-.025em;line-height:1;
  background:var(--grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.chiffre-unit{
  font-family:'Montserrat',sans-serif;
  font-size:22px;font-weight:700;
  color:var(--text-m);
}
.chiffre-label{
  font-size:13px;color:var(--text-m);
  margin-top:10px;line-height:1.45;
}

/* ══════════ SERVICES ══════════ */
.svc-tabs{
  display:flex;gap:8px;flex-wrap:wrap;
  margin-bottom:44px;
}
.stab{
  font-family:'Montserrat',sans-serif;
  font-size:12px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;
  padding:9px 20px;border-radius:20px;
  border:1px solid var(--border-l);
  color:var(--text-m);cursor:pointer;
  transition:all .2s;background:var(--white);
}
.stab:hover{border-color:var(--v1);color:var(--v1);}
.stab.on{
  background:var(--grad);
  border-color:transparent;
  color:#FFFFFF;
}

.svc-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.svc-card{
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:16px;padding:28px;
  display:flex;flex-direction:column;
  position:relative;overflow:hidden;
  transition:all .3s;
}
.svc-card::before{
  content:'';position:absolute;
  top:0;left:0;right:0;height:2px;
  background:var(--grad);
  opacity:0;transition:opacity .3s;
}
.svc-card:hover{
  border-color:rgba(26,92,58,.25);
  transform:translateY(-3px);
  box-shadow:0 8px 24px rgba(17,24,32,.08);
}
.svc-card:hover::before{opacity:1;}

.svc-icon{
  width:48px;height:48px;border-radius:12px;
  background:rgba(200,148,28,.1);
  border:1px solid rgba(200,148,28,.25);
  display:flex;align-items:center;justify-content:center;
  font-size:22px;margin-bottom:18px;
  transition:all .3s;
}
.svc-card:hover .svc-icon{
  background:rgba(26,92,58,.1);
  border-color:rgba(26,92,58,.25);
}

.svc-badge{
  display:inline-block;align-self:flex-start;
  padding:4px 11px;border-radius:20px;
  font-family:'Montserrat',sans-serif;
  font-size:9px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  margin-bottom:12px;
  border:1px solid rgba(200,148,28,.3);
  color:#8A6610;
  background:rgba(200,148,28,.08);
}
.svc-badge.rec{
  border-color:rgba(0,200,240,.3);
  color:#006B82;
  background:rgba(0,200,240,.08);
}
.svc-badge.pop{
  background:var(--grad);
  border:none;color:#FFFFFF;
}

.svc-name{
  font-family:'Montserrat',sans-serif;
  font-size:17px;font-weight:700;
  color:var(--text);margin-bottom:10px;
  line-height:1.25;letter-spacing:-.01em;
}
.svc-desc{
  font-size:13px;color:var(--text-m);
  line-height:1.6;flex:1;margin-bottom:20px;
}
.svc-footer{
  display:flex;align-items:center;justify-content:space-between;
  padding-top:16px;
  border-top:1px solid var(--border-l);
  margin-top:auto;
}
.svc-dur{
  font-family:'DM Mono',monospace;
  font-size:11px;color:var(--text-f);
}
.svc-link{
  font-family:'Montserrat',sans-serif;
  font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  color:var(--v1);
  display:flex;align-items:center;gap:5px;
}
.svc-link::after{content:'→';transition:transform .2s;}
.svc-card:hover .svc-link::after{transform:translateX(4px);}

/* Bloc simulateur */
.simul-block{
  margin-top:52px;
  display:flex;flex-direction:column;align-items:center;
  gap:14px;text-align:center;
}
.simul-text{
  font-size:13px;color:var(--text-m);
  max-width:520px;line-height:1.6;
}

/* ══════════ MÉTHODE ══════════ */
.methode-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:56px;align-items:start;
}
.steps{display:flex;flex-direction:column;}
.step{
  display:flex;gap:18px;
  padding:18px 14px;
  border-bottom:1px solid var(--border-l);
  cursor:pointer;transition:all .2s;
  background:rgba(255,255,255,.72);
  border-radius:12px;
  margin-bottom:4px;
}
.step:last-child{border-bottom:none;margin-bottom:0;}
.step:hover .step-n{border-color:var(--v1);}

.step-n{
  width:40px;height:40px;border-radius:10px;
  flex-shrink:0;
  background:var(--white);
  border:1px solid var(--border-l);
  display:flex;align-items:center;justify-content:center;
  font-family:'Montserrat',sans-serif;
  font-size:13px;font-weight:800;
  color:var(--text-m);
  transition:all .3s;margin-top:2px;
}
.step.on .step-n{
  background:rgba(200,148,28,.1);
  border-color:rgba(200,148,28,.35);
  color:var(--v2);
}
.step-body{flex:1;}
.step-t{
  font-family:'Montserrat',sans-serif;
  font-size:15px;font-weight:700;
  color:var(--text);
  margin-bottom:4px;letter-spacing:-.005em;
}
.step.on .step-t{
  background:var(--grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.step-d{
  font-size:13px;color:var(--text-m);
  line-height:1.55;
}

.mcard-wrap{position:sticky;top:92px;}
.mcard{
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:20px;padding:36px;
  position:relative;overflow:hidden;
}
.mcard-glow{
  position:absolute;top:-60px;right:-60px;
  width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,rgba(0,200,240,.1),transparent 65%);
  pointer-events:none;
}
.mc-phase{
  font-family:'DM Mono',monospace;
  font-size:10px;font-weight:500;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--v2);margin-bottom:10px;
}
.mc-title{
  font-family:'Montserrat',sans-serif;
  font-size:24px;font-weight:800;
  letter-spacing:-.015em;
  color:var(--text);
  margin-bottom:14px;
}
.mc-desc{
  font-size:14px;color:var(--text-m);
  line-height:1.65;margin-bottom:24px;
}
.mc-items{display:flex;flex-direction:column;gap:10px;}
.mc-item{
  display:flex;align-items:flex-start;gap:10px;
  font-size:13px;color:var(--text-m);line-height:1.5;
}
.mc-item::before{
  content:'';width:6px;height:6px;border-radius:50%;
  flex-shrink:0;margin-top:7px;
  background:var(--grad135);
}
.mc-prog{
  margin-top:28px;padding-top:22px;
  border-top:1px solid var(--border-l);
}
.mc-prog-row{
  display:flex;justify-content:space-between;
  font-family:'DM Mono',monospace;
  font-size:11px;color:var(--text-f);
  margin-bottom:8px;
}
.mc-prog-track{
  height:5px;background:var(--bg2);
  border-radius:3px;overflow:hidden;
}
.mc-prog-fill{
  height:100%;background:var(--grad);
  border-radius:3px;
  transition:width .6s cubic-bezier(.4,0,.2,1);
}

/* ══════════ SECTEURS ══════════ */
.sect-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.sect-card{
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:14px;
  padding:26px 20px;
  text-align:center;
  transition:all .25s;cursor:default;
}
.sect-card:hover{
  border-color:rgba(26,92,58,.3);
  transform:translateY(-3px);
  box-shadow:0 6px 20px rgba(17,24,32,.06);
}
.sect-icon{
  font-size:34px;margin-bottom:12px;
  display:block;
}
.sect-name{
  font-family:'Montserrat',sans-serif;
  font-size:14px;font-weight:700;
  color:var(--text);margin-bottom:6px;
  letter-spacing:-.005em;
}
.sect-desc{
  font-size:12px;color:var(--text-m);
  line-height:1.45;
}

/* ══════════ À PROPOS ══════════ */
.apropos-grid{
  display:grid;grid-template-columns:1.1fr 1fr;
  gap:56px;align-items:start;
}
.apropos-p1{
  font-size:16px;color:var(--text-m);
  line-height:1.7;margin-bottom:16px;
}
.apropos-p2{
  font-size:15px;color:var(--text-m);
  line-height:1.7;
}

.valeurs{
  display:grid;grid-template-columns:1fr 1fr;
  gap:12px;margin-top:32px;
}
.val{
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:12px;padding:20px;
}
.val-icon{font-size:22px;margin-bottom:10px;display:block;}
.val-title{
  font-family:'Montserrat',sans-serif;
  font-size:13px;font-weight:700;
  color:var(--text);margin-bottom:4px;
}
.val-desc{
  font-size:12px;color:var(--text-m);
  line-height:1.5;
}

.certif-block{
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:16px;padding:28px;
  margin-bottom:14px;
}
.certif-block-title{
  font-family:'Montserrat',sans-serif;
  font-size:10px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--v1);margin-bottom:16px;
}
.certif-badges{display:flex;gap:8px;flex-wrap:wrap;}
.cbadge{
  padding:8px 16px;border-radius:6px;
  background:var(--bg);
  border:1px solid rgba(200,148,28,.3);
  font-family:'Montserrat',sans-serif;
  font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  color:#8A6610;
}

.eng-block{
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:16px;padding:28px;
}
.eng-title{
  font-family:'Montserrat',sans-serif;
  font-size:10px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--text-f);
  margin-bottom:18px;
}
.eng-item{
  display:flex;align-items:flex-start;gap:12px;
  margin-bottom:14px;
}
.eng-item:last-child{margin-bottom:0;}
.eng-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--grad135);
  flex-shrink:0;margin-top:6px;
}
.eng-text{
  font-size:13px;color:var(--text-m);
  line-height:1.6;
}

/* ══════════ CONTACT ══════════ */
#contact{position:relative;overflow:hidden;}
.contact-glow{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:900px;height:450px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(0,200,240,.06),transparent 65%);
  pointer-events:none;
}
.contact-grid{
  display:grid;grid-template-columns:1.1fr 1fr;
  gap:64px;align-items:center;
  position:relative;z-index:1;
}

.contact-left{}
.contact-title{
  font-family:'Montserrat',sans-serif;
  font-size:22px;font-weight:800;
  letter-spacing:-.01em;
  color:var(--text);margin-bottom:10px;
}
.contact-p{
  font-size:14px;color:var(--text-m);
  line-height:1.65;margin-bottom:28px;
}

.contact-ctas{
  display:flex;flex-direction:column;gap:10px;
  margin-bottom:24px;
}
.cta-big{
  display:flex;align-items:center;gap:16px;
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:12px;padding:16px 20px;
  transition:all .2s;cursor:pointer;
}
.cta-big:hover{transform:translateX(3px);}

.cta-big-icon{
  width:46px;height:46px;border-radius:11px;
  flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-size:20px;font-weight:700;
}
.cta-wa:hover{border-color:var(--wa);}
.cta-wa .cta-big-icon{background:var(--wa);}
.cta-email:hover{border-color:var(--v2);}
.cta-email .cta-big-icon{
  background:rgba(200,148,28,.12);
  color:var(--v2);
  border:1px solid rgba(200,148,28,.25);
}
.cta-ln:hover{border-color:var(--v3);}
.cta-ln .cta-big-icon{
  background:rgba(0,200,240,.1);
  color:#006B82;
  border:1px solid rgba(0,200,240,.25);
  font-family:'Montserrat',sans-serif;
  font-size:18px;
}

.cta-big-lbl{
  font-family:'Montserrat',sans-serif;
  font-size:10px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--text-f);margin-bottom:3px;
}
.cta-big-val{
  font-size:15px;font-weight:600;
  color:var(--text);
}
.cta-wa .cta-big-val{color:var(--wa-dark);}

.contact-infos{display:flex;gap:10px;flex-wrap:wrap;}
.ci{
  flex:1;min-width:160px;
  display:flex;align-items:center;gap:12px;
  background:var(--bg2);
  border:1px solid var(--border-l);
  border-radius:10px;padding:12px 16px;
}
.ci-icon{
  width:32px;height:32px;border-radius:8px;
  flex-shrink:0;
  background:rgba(26,92,58,.1);
  display:flex;align-items:center;justify-content:center;
  font-size:15px;
}
.ci-lbl{
  font-family:'Montserrat',sans-serif;
  font-size:9px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--text-f);margin-bottom:2px;
}
.ci-val{
  font-size:13px;font-weight:600;
  color:var(--text);
}

/* Bloc slogan droite */
.contact-slogan-block{
  padding:36px;
  background:var(--white);
  border:1px solid var(--border-l);
  border-radius:20px;
  position:relative;overflow:hidden;
  text-align:left;
}
.contact-slogan-block::before{
  content:'';position:absolute;
  top:-60px;right:-60px;
  width:240px;height:240px;border-radius:50%;
  background:radial-gradient(circle,rgba(200,148,28,.1),transparent 65%);
  pointer-events:none;
}
.slogan-big{
  font-family:'Montserrat',sans-serif;
  font-weight:800;
  font-size:clamp(40px,5vw,64px);
  line-height:1;letter-spacing:-.035em;
  display:flex;flex-direction:column;gap:4px;
  position:relative;z-index:1;
}
.slogan-l1{color:var(--text);}
.slogan-l2{color:var(--v2);}
.slogan-l3{
  background:var(--grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.slogan-bar{
  width:80px;height:3px;
  background:var(--grad);border-radius:2px;
  margin-top:20px;position:relative;z-index:1;
}
.slogan-sub{
  font-family:'DM Mono',monospace;
  font-size:11px;color:var(--text-f);
  margin-top:14px;letter-spacing:.02em;
  position:relative;z-index:1;
}

/* ══════════ FOOTER (DARK) ══════════ */
.footer-bar{
  height:3px;background:var(--grad);
}
footer{
  background:var(--bg-dark);
  padding:64px 40px 32px;
  color:rgba(255,255,255,.7);
}
.footer-top{
  max-width:1160px;margin:0 auto;
  display:grid;grid-template-columns:2fr 1.2fr 1fr 1.2fr;
  gap:48px;margin-bottom:52px;
}
.footer-col{}
.footer-brand{}
.footer-logo{margin-bottom:14px;}
.footer-logo .logo__eye{font-size:9px;}
.footer-logo .logo__prox,
.footer-logo .logo__oris{font-size:22px;}

.footer-desc{
  font-size:13px;color:rgba(255,255,255,.55);
  line-height:1.65;margin-top:14px;
  max-width:320px;
}
.footer-domain{
  font-family:'DM Mono',monospace;
  font-size:10px;color:rgba(255,255,255,.35);
  margin-top:14px;letter-spacing:.02em;
}

.fcol-title{
  font-family:'Montserrat',sans-serif;
  font-size:10px;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;
  color:rgba(255,255,255,.45);
  margin-bottom:16px;
}
.flinks{display:flex;flex-direction:column;gap:9px;}
.flink{
  font-size:13px;
  color:rgba(255,255,255,.65);
  transition:color .2s;cursor:default;
}
a.flink{cursor:pointer;}
a.flink:hover{color:var(--v3);}

.footer-slogan{
  margin-top:24px;
  font-family:'Montserrat',sans-serif;
  font-size:14px;font-weight:700;
  line-height:1.45;letter-spacing:-.01em;
}
.fs-white{color:#FFFFFF;}
.fs-grad{
  background:var(--grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}

.footer-bottom{
  max-width:1160px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  padding-top:26px;
  border-top:1px solid var(--border-d);
  flex-wrap:wrap;gap:10px;
}
.footer-copy{
  font-size:12px;
  color:rgba(255,255,255,.4);
}

/* ══════════ WHATSAPP FLOTTANT ══════════ */
.wa-float{
  position:fixed;bottom:22px;right:22px;z-index:200;
  display:flex;align-items:center;gap:10px;
  background:var(--wa);
  color:#FFFFFF;
  padding:12px 18px 12px 14px;
  border-radius:30px;
  box-shadow:0 6px 22px rgba(37,211,102,.35);
  transition:all .25s;
  font-family:'Montserrat',sans-serif;
  font-size:12px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;
}
.wa-float:hover{
  background:var(--wa-dark);
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(37,211,102,.45);
}
.wa-float svg{
  display:block;flex-shrink:0;
}
.wa-float-lbl{white-space:nowrap;}

/* ══════════ RESPONSIVE ══════════ */
@media (max-width:1100px){
  .nav-simul{display:none;}
  .nav-inner{grid-template-columns:1fr auto;}
}

@media (max-width:1024px){
  .hero-inner,.methode-grid,.apropos-grid,.contact-grid{
    grid-template-columns:1fr;gap:48px;
  }
  .svc-grid,.sect-grid{grid-template-columns:1fr 1fr;}
  .chiffres-wrap{grid-template-columns:1fr 1fr;gap:24px 0;}
  .chiffre{
    border-right:none;
    border-bottom:1px solid var(--border-l);
    padding:20px 0;
  }
  .chiffre:nth-last-child(-n+2){border-bottom:none;}
  .chiffre:nth-child(odd){border-right:1px solid var(--border-l);}
  .footer-top{grid-template-columns:1fr 1fr;gap:36px;}
  .mcard-wrap{position:static;}
}

@media (max-width:768px){
  nav .nav-inner{padding:0 20px;}
  .section,#hero,#chiffres,footer{
    padding-left:20px;padding-right:20px;
  }
  #hero{padding-top:110px;padding-bottom:60px;}
  .nav-right .nav-link,.nav-right .nav-cta{display:none;}
  .burger{display:flex;}

  .hero-logo .logo__prox,
  .hero-logo .logo__oris{font-size:52px;}
  .hero-slogan-text{font-size:14px;}
  .hero-desc{font-size:15px;}
  .hero-btns{flex-direction:column;align-items:stretch;}
  .hero-btns a{text-align:center;}

  .svc-grid,.sect-grid,.valeurs,.stat-row{
    grid-template-columns:1fr;
  }
  .chiffres-wrap{grid-template-columns:1fr;}
  .chiffre{border-right:none!important;padding:16px 0;}
  .chiffre:last-child{border-bottom:none;}

  .footer-top{grid-template-columns:1fr;gap:32px;}
  .footer-bottom{flex-direction:column;text-align:center;}

  .svc-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;}
  .stab{white-space:nowrap;}

  .wa-float-lbl{display:none;}
  .wa-float{padding:14px;border-radius:50%;}

  .sec-title{font-size:30px;}
  .slogan-big{font-size:48px;}
}

/* ══════════════════════════════════════════════════════════
   AMÉLIORATIONS DESIGN — Pack Premium Scroll
   ══════════════════════════════════════════════════════════ */

/* ══════════ 1. LOADING SCREEN ══════════ */
.loader{
  position:fixed;inset:0;z-index:9999;
  background:var(--bg-dark);
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  gap:32px;
  transition:opacity .6s ease,visibility .6s ease;
}
.loader.done{opacity:0;visibility:hidden;pointer-events:none;}
.loader-logo{
  font-family:'Montserrat',sans-serif;
  font-weight:800;font-size:28px;
  letter-spacing:-.02em;
  display:flex;align-items:baseline;
}
.loader-logo .lp1{color:#FFFFFF;}
.loader-logo .lp2{
  background:var(--grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.loader-bar{
  width:200px;height:3px;
  background:rgba(255,255,255,.1);
  border-radius:3px;overflow:hidden;
  position:relative;
}
.loader-fill{
  position:absolute;left:0;top:0;height:100%;
  background:var(--grad);
  border-radius:3px;
  width:0%;
  animation:loaderFill 1.6s cubic-bezier(.4,0,.2,1) forwards;
}
@keyframes loaderFill{
  0%{width:0%;}
  40%{width:55%;}
  70%{width:80%;}
  100%{width:100%;}
}
.loader-sub{
  font-family:'DM Mono',monospace;
  font-size:10px;color:rgba(255,255,255,.35);
  letter-spacing:.18em;text-transform:uppercase;
  animation:loaderPulse 1.2s ease-in-out infinite;
}
@keyframes loaderPulse{
  0%,100%{opacity:.35;}
  50%{opacity:.7;}
}

/* ══════════ 2. ANIMATIONS ENTRÉE AU SCROLL ══════════ */
.reveal{
  opacity:0;
  transform:translateY(40px);
  transition:opacity .65s cubic-bezier(.4,0,.2,1),
             transform .65s cubic-bezier(.4,0,.2,1);
}
.reveal.visible{
  opacity:1;
  transform:translateY(0);
}
.reveal-delay-1{transition-delay:.08s;}
.reveal-delay-2{transition-delay:.16s;}
.reveal-delay-3{transition-delay:.24s;}
.reveal-delay-4{transition-delay:.32s;}
.reveal-delay-5{transition-delay:.40s;}
.reveal-delay-6{transition-delay:.48s;}
.reveal-delay-7{transition-delay:.56s;}
.reveal-delay-8{transition-delay:.64s;}

/* Variantes de direction */
.reveal-left{
  opacity:0;
  transform:translateX(-50px);
  transition:opacity .65s cubic-bezier(.4,0,.2,1),
             transform .65s cubic-bezier(.4,0,.2,1);
}
.reveal-left.visible{opacity:1;transform:translateX(0);}

.reveal-right{
  opacity:0;
  transform:translateX(50px);
  transition:opacity .65s cubic-bezier(.4,0,.2,1),
             transform .65s cubic-bezier(.4,0,.2,1);
}
.reveal-right.visible{opacity:1;transform:translateX(0);}

.reveal-scale{
  opacity:0;
  transform:scale(.88);
  transition:opacity .65s cubic-bezier(.4,0,.2,1),
             transform .65s cubic-bezier(.4,0,.2,1);
}
.reveal-scale.visible{opacity:1;transform:scale(1);}

/* ══════════ 3. BARRE DE GRADIENT ANIMÉE ══════════ */
@keyframes gradFlow{
  0%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
  100%{background-position:0% 50%;}
}
.nav-gradbar,
.footer-bar{
  background-size:200% 200%;
  animation:gradFlow 4s ease infinite;
}

/* ══════════ 4. COMPTERS ANIMÉS ══════════ */
.chiffre-val.is-counting{
  transition:filter .2s;
  filter:brightness(1.3);
}
.chiffre-val.count-done{
  filter:brightness(1);
  transition:filter .4s ease;
}

/* ══════════ 5. MICRO-INTERACTIONS CARTES AMÉLIORÉES ══════════ */

/* — Cartes services — */
.svc-card{
  transition:all .35s cubic-bezier(.4,0,.2,1);
  position:relative;
  overflow:hidden;
}
.svc-card::after{
  content:'';position:absolute;
  inset:0;border-radius:16px;
  background:radial-gradient(600px circle at var(--mouse-x,50%) var(--mouse-y,50%),
    rgba(26,92,58,.06),transparent 40%);
  opacity:0;pointer-events:none;
  transition:opacity .4s ease;
}
.svc-card:hover::after{opacity:1;}
.svc-card:hover{
  transform:translateY(-5px);
  box-shadow:0 14px 40px rgba(17,24,32,.1),0 0 1px rgba(26,92,58,.15);
}

/* — Cartes secteurs — */
.sect-card{
  transition:all .35s cubic-bezier(.4,0,.2,1);
  position:relative;overflow:hidden;
}
.sect-card::after{
  content:'';position:absolute;
  inset:0;border-radius:14px;
  background:radial-gradient(400px circle at var(--mouse-x,50%) var(--mouse-y,50%),
    rgba(200,148,28,.06),transparent 40%);
  opacity:0;pointer-events:none;
  transition:opacity .4s ease;
}
.sect-card:hover::after{opacity:1;}
.sect-card:hover{
  transform:translateY(-5px);
  box-shadow:0 12px 36px rgba(17,24,32,.08);
  border-color:rgba(26,92,58,.35);
}
.sect-card:hover .sect-icon{
  transform:scale(1.15);
  transition:transform .35s cubic-bezier(.4,0,.2,1);
}

/* — Cartes valeurs — */
.val{
  transition:all .35s cubic-bezier(.4,0,.2,1);
}
.val:hover{
  transform:translateY(-4px);
  box-shadow:0 10px 30px rgba(17,24,32,.06);
  border-color:rgba(0,200,240,.25);
}
.val:hover .val-icon{
  transform:scale(1.2);
  transition:transform .3s cubic-bezier(.4,0,.2,1);
}

/* — Trust cards — */
.trust-card{
  transition:all .35s cubic-bezier(.4,0,.2,1);
}
.trust-card:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 30px rgba(17,24,32,.07);
  border-color:rgba(200,148,28,.25);
}

/* — Stat cards — */
.stat-card{
  transition:all .35s cubic-bezier(.4,0,.2,1);
}
.stat-card:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 30px rgba(17,24,32,.08);
  border-color:rgba(0,200,240,.2);
}

/* ══════════ 6. BOUTON RETOUR EN HAUT ══════════ */
.to-top{
  position:fixed;bottom:80px;right:22px;z-index:150;
  width:44px;height:44px;border-radius:50%;
  background:var(--grad);
  background-size:200% 200%;
  animation:gradFlow 4s ease infinite;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;border:none;
  box-shadow:0 4px 16px rgba(0,0,0,.2);
  opacity:0;transform:translateY(16px);
  transition:opacity .35s ease,transform .35s ease,box-shadow .25s ease;
  pointer-events:none;
}
.to-top.show{
  opacity:1;transform:translateY(0);
  pointer-events:all;
}
.to-top:hover{
  box-shadow:0 6px 24px rgba(0,0,0,.3);
  transform:translateY(-2px);
}
.to-top svg{
  width:18px;height:18px;
  stroke:#FFFFFF;stroke-width:2.5;
  fill:none;stroke-linecap:round;stroke-linejoin:round;
}

/* ══════════ 7. EFFET PARALLAXE SUR GLOWS ══════════ */
.hero-glow-a,.hero-glow-b{
  transition:transform .15s ease-out;
  will-change:transform;
}
.mcard-glow{
  transition:transform .2s ease-out;
  will-change:transform;
}
.contact-glow{
  transition:transform .2s ease-out;
  will-change:transform;
}

/* ══════════ 8. HERO AMÉLIORÉ ══════════ */
.hero-logo .logo__prox,
.hero-logo .logo__oris{
  transition:transform .6s cubic-bezier(.4,0,.2,1),
             text-shadow .6s ease;
}
.hero-logo:hover .logo__prox,
.hero-logo:hover .logo__oris{
  transform:scale(1.01);
}

/* Glow subtil sur le hero */
.hero-glow-a{
  animation:heroGlowA 8s ease-in-out infinite alternate;
}
.hero-glow-b{
  animation:heroGlowB 10s ease-in-out infinite alternate;
}
@keyframes heroGlowA{
  0%{transform:translate(0,0) scale(1);opacity:1;}
  100%{transform:translate(20px,15px) scale(1.05);opacity:.85;}
}
@keyframes heroGlowB{
  0%{transform:translate(0,0) scale(1);opacity:1;}
  100%{transform:translate(-15px,-10px) scale(1.08);opacity:.8;}
}

/* Barre slogan améliorée */
.hero-slogan-bar{
  background:var(--grad);
  background-size:200% 200%;
  animation:gradFlow 3s ease infinite;
  height:3px;border-radius:2px;
}

/* Effet typewriter subtil sur le tag */
.hero-tag{
  transition:all .35s ease;
}
.hero-tag:hover{
  background:rgba(26,92,58,.14);
  border-color:rgba(26,92,58,.4);
  transform:translateX(4px);
}

/* ══════════ 9. ONGLET SERVICES AMÉLIORÉ ══════════ */
.stab{
  transition:all .25s cubic-bezier(.4,0,.2,1);
}
.stab:hover{
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(26,92,58,.08);
}

/* ══════════ 10. LIENS ET BOUTONS AMÉLIORÉS ══════════ */
.svc-link{
  position:relative;
}
.svc-link::before{
  content:'';position:absolute;bottom:-2px;left:0;
  width:0;height:1.5px;
  background:var(--grad);
  transition:width .3s ease;
}
.svc-card:hover .svc-link::before{
  width:100%;
}

/* CTA big amélioré */
.cta-big{
  transition:all .3s cubic-bezier(.4,0,.2,1);
}
.cta-big:hover{
  transform:translateX(6px);
  box-shadow:0 6px 20px rgba(0,0,0,.06);
}

/* ══════════ 11. MÉTHODE — ÉTAPES AMÉLIORÉES ══════════ */
.step{
  position:relative;
  transition:all .3s cubic-bezier(.4,0,.2,1);
}
.step::before{
  content:'';position:absolute;left:0;top:0;bottom:0;
  width:3px;border-radius:3px;
  background:var(--grad);
  opacity:0;transform:scaleY(0);
  transition:opacity .3s ease,transform .3s ease;
}
.step:hover::before,.step.on::before{
  opacity:1;transform:scaleY(1);
}
.step:hover{padding-left:8px;}
.step.on{padding-left:8px;}

/* ══════════ 12. FOOTER LIENS AMÉLIORÉS ══════════ */
a.flink{
  position:relative;
}
a.flink::after{
  content:'';position:absolute;bottom:-1px;left:0;
  width:0;height:1px;
  background:var(--v3);
  transition:width .3s ease;
}
a.flink:hover::after{
  width:100%;
}

/* ══════════ 13. PROGRESS BAR CERTIFICATION AMÉLIORÉ ══════════ */
.mc-prog-fill{
  background-size:200% 200%;
  animation:gradFlow 3s ease infinite;
}

/* ══════════ 14. RESPONSIVE AJUSTEMENTS ══════════ */
@media (max-width:768px){
  .to-top{
    bottom:76px;right:16px;
    width:40px;height:40px;
  }
  .reveal,.reveal-left,.reveal-right{
    transform:translateY(30px);
  }
  .reveal-left.visible,.reveal-right.visible,.reveal.visible{
    transform:translateY(0);
  }
}

/* ══════════════════════════════════════════════════════════
   IMAGES D'ARRIÈRE-PLAN
   ══════════════════════════════════════════════════════════ */

/* Hero : réseau géométrique */
#hero{
  background-image:url('bg-hero.jpg');
  background-size:cover;
  background-position:center;
  background-attachment:fixed;
}
@media (max-width:768px){
  #hero{background-attachment:scroll;}
}

/* Chiffres clés : grille métrique */
#chiffres{
  background-image:url('bg-chiffres.jpg');
  background-size:cover;
  background-position:center;
}

/* Méthode : flow processus */
#methode{
  background-image:url('bg-methode.jpg');
  background-size:cover;
  background-position:center;
  position:relative;
}
#methode::before{
  content:'';position:absolute;inset:0;z-index:0;
  background:rgba(236,230,216,.88);
}
#methode .wrap{position:relative;z-index:1;}

/* Contact : réseau Maroc */
#contact{
  background-image:url('bg-contact.jpg');
  background-size:cover;
  background-position:center;
}

/* ══════════════════════════════════════════════════════════
   ICÔNES SVG STYLISÉES — Services
   ══════════════════════════════════════════════════════════ */

/* Conteneur d'icône SVG */
.svc-icon,.trust-icon{
  display:flex;
  align-items:center;
  justify-content:center;
}
.svc-icon svg,.trust-icon svg{
  width:26px;height:26px;
  stroke:var(--v2);
  stroke-width:1.8;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Couleurs spécifiques par service */
.svc-card[data-cat="audit"] .svc-icon svg{stroke:var(--v2);}
.svc-card[data-cat="accomp"] .svc-icon svg{stroke:var(--v1);}
.svc-card[data-cat="form"] .svc-icon svg{stroke:var(--v3);}

/* Transition couleur au hover */
.svc-card:hover .svc-icon svg{
  stroke:url(#icon-grad);
  transition:stroke .35s ease;
}

/* Trust icons */
.trust-icon svg{
  stroke:none;
  fill:url(#icon-grad);
  width:28px;height:28px;
}

/* ══════════ VALEURS — ICÔNES SVG ══════════ */
.val-icon{
  display:block;
}
.val-icon svg{
  width:24px;height:24px;
  stroke:none;
  fill:url(#icon-grad);
}

/* ══════════ CI ICONS — SVG ══════════ */
.ci-icon{
  display:flex;
  align-items:center;
  justify-content:center;
}
.ci-icon svg{
  width:18px;height:18px;
  stroke:var(--v1);
  stroke-width:1.8;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
