
:root{
  --viz-panel:#f5f7fb;
  --viz-card:#ffffff;
  --viz-chip-card:#f1f3f8;
  --viz-text:#172033;
  --viz-muted:#677086;
  --viz-border:#dfe3ec;
  --viz-accent:#5d4df2;
  --viz-accent-text:#ffffff;
  --viz-accent-bg:#ebe9ff;
  --viz-accent-bg-subtle:#f3f1ff;
  --ink:#282143;
  --ink-2:#4f476a;
  --muted:#746e89;
  --bg:#f7f7ff;
  --surface:#ffffff;
  --line:#e9e5f2;
  --violet:#6c4df6;
  --violet-2:#9660f7;
  --yellow:#ffd95e;
  --mint:#61d8b8;
  --coral:#ff7997;
  --blue:#76bdf8;
  --shadow:0 14px 38px rgba(51,39,105,.09);
  --shadow-strong:0 22px 55px rgba(51,39,105,.16);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 7% 2%,rgba(255,217,94,.25),transparent 24rem),
    radial-gradient(circle at 96% 6%,rgba(255,121,151,.16),transparent 26rem),
    radial-gradient(circle at 88% 86%,rgba(97,216,184,.16),transparent 28rem),
    var(--bg);
  font-family:"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
a{color:inherit}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{max-width:100%}
.container{width:min(1180px,calc(100% - 34px));margin:auto}
.site-header{
  position:sticky;top:0;z-index:50;padding:14px 0;
  background:rgba(247,247,255,.82);backdrop-filter:blur(16px);
}
.nav-shell{
  position:relative;overflow:hidden;display:flex;align-items:center;gap:18px;
  min-height:72px;padding:10px 14px;border-radius:23px;color:#fff;
  background:
    radial-gradient(circle at 88% 24%,rgba(255,217,94,.68) 0 7px,transparent 8px),
    radial-gradient(circle at 82% 78%,rgba(97,216,184,.54) 0 6px,transparent 7px),
    linear-gradient(120deg,#28205f,#5936d8 52%,#9459f6);
  box-shadow:0 18px 45px rgba(63,40,145,.19)
}
.brand{display:flex;align-items:center;flex:0 0 auto;padding:3px 8px;border-radius:14px;background:rgba(255,255,255,.08)}
.brand img{display:block;width:92px;height:auto}
.main-nav{display:flex;align-items:center;justify-content:center;gap:5px;flex:1}
.main-nav a{padding:10px 11px;border-radius:10px;color:rgba(255,255,255,.88);font-size:14px;font-weight:700;text-decoration:none}
.main-nav a:hover,.main-nav a.active{background:rgba(255,255,255,.14);color:#fff}
.nav-actions{display:flex;align-items:center;gap:8px}
.nav-user{display:none;color:#fff;font-size:13px}
.lang-switch{display:inline-flex;align-items:center;gap:8px}
.lang-switch-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.lang-switch-list{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:12px;background:rgba(255,255,255,.12)}
.lang-switch-link{min-width:34px;height:30px;padding:0 7px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:rgba(255,255,255,.78);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-decoration:none}
.lang-switch-link:hover{color:#fff;background:rgba(255,255,255,.16)}
.lang-switch-link.active{color:#34275e;background:var(--yellow)}
.nav-lang-mobile{display:none}
.nav-lang-desktop{display:flex;align-items:center}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;
  padding:10px 15px;border:1px solid var(--line);border-radius:13px;
  background:#fff;color:var(--ink);font-weight:750;text-decoration:none;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
.btn:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(52,39,105,.12)}
.btn-primary{border:0;background:linear-gradient(135deg,var(--violet),var(--violet-2));color:#fff;box-shadow:0 9px 22px rgba(108,77,246,.25)}
.btn-yellow{border:0;background:var(--yellow);color:#34275e}
.btn-dark{border:0;background:#2e2555;color:#fff}
.btn-ghost{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.10);color:#fff}
.btn-sm{min-height:36px;padding:8px 11px;font-size:13px}
.nav-toggle{display:none;border:0;background:rgba(255,255,255,.12);color:#fff;width:42px;height:42px;border-radius:12px}
.hero{padding:52px 0 34px}
.hero-grid{display:grid;grid-template-columns:1.07fr .93fr;gap:28px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;background:#eee9ff;color:#543fc0;font-weight:800;font-size:13px}
h1,h2,h3,p{margin-top:0}
h1{margin-bottom:18px;font-size:clamp(42px,6vw,72px);line-height:1.01;letter-spacing:-.055em;text-wrap:balance}
h2{font-size:clamp(29px,4vw,45px);line-height:1.08;letter-spacing:-.04em;text-wrap:balance}
h3{letter-spacing:-.02em}
.lead{max-width:760px;color:var(--ink-2);font-size:19px;line-height:1.65}
.text-muted{color:var(--muted)}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.search-box{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:8px;border:1px solid var(--line);
  border-radius:18px;background:rgba(255,255,255,.9);box-shadow:var(--shadow)
}
.search-box input{min-width:0;border:0;background:transparent;padding:12px 13px;color:var(--ink);outline:none}
.quick-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.quick-tag{border:0;border-radius:999px;padding:7px 10px;background:#fff3dc;color:#805112;font-weight:700;font-size:12px}
.visual-board{position:relative;min-height:480px;padding:20px;border-radius:34px;background:linear-gradient(150deg,#30245f,#6644d5);box-shadow:var(--shadow-strong);overflow:hidden}
.visual-board:before,.visual-board:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.visual-board:before{width:190px;height:190px;right:-65px;top:-45px;background:rgba(255,217,94,.72)}
.visual-board:after{width:150px;height:150px;left:-45px;bottom:-55px;background:rgba(97,216,184,.56)}
.mock-window{position:relative;z-index:2;margin-top:22px;padding:16px;border-radius:22px;background:#fff;box-shadow:0 25px 50px rgba(20,14,58,.28);transform:rotate(1.3deg)}
.mock-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--line)}
.mock-dots{display:flex;gap:5px}.mock-dots i{display:block;width:8px;height:8px;border-radius:50%;background:#ddd}.mock-dots i:nth-child(1){background:var(--coral)}.mock-dots i:nth-child(2){background:var(--yellow)}.mock-dots i:nth-child(3){background:var(--mint)}
.mock-company{display:flex;align-items:center;gap:12px;margin:17px 0}.mock-logo{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#eee9ff;color:var(--violet);font-weight:900}
.mini-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mini-metric{min-height:84px;padding:11px;border-radius:14px;background:#f2efff}.mini-metric:nth-child(2){background:#e9fbf6}.mini-metric:nth-child(3){background:#fff1c9}.mini-metric strong{display:block;margin-top:8px;font-size:20px}
.mini-chart{height:132px;display:flex;align-items:end;gap:9px;margin-top:14px;padding:14px;border-radius:15px;background:#f8f7fc}.mini-chart i{flex:1;border-radius:7px 7px 2px 2px;background:linear-gradient(#9971ff,#6c4df6)}.mini-chart i:nth-child(1){height:34%}.mini-chart i:nth-child(2){height:46%}.mini-chart i:nth-child(3){height:42%}.mini-chart i:nth-child(4){height:68%}.mini-chart i:nth-child(5){height:92%}
.floating-chip{position:absolute;z-index:3;padding:11px 14px;border-radius:15px;background:#fff;color:var(--ink);box-shadow:0 12px 30px rgba(24,15,70,.22);font-weight:800}.chip-one{left:4px;top:55px;transform:rotate(-5deg)}.chip-two{right:8px;bottom:45px;transform:rotate(4deg)}
.section{padding:58px 0}
.section-soft{background:rgba(255,255,255,.5);border-top:1px solid rgba(233,229,242,.7);border-bottom:1px solid rgba(233,229,242,.7)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.section-head p{max-width:580px;margin:0;color:var(--muted);line-height:1.6}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.card{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.94);box-shadow:var(--shadow)}
.feature-card{position:relative;overflow:hidden;min-height:255px;padding:22px}.feature-card:after{content:"";position:absolute;right:-28px;bottom:-38px;width:115px;height:115px;border-radius:47% 53% 69% 31%;background:rgba(255,255,255,.48);transform:rotate(18deg)}
.feature-card:nth-child(1){background:#eee9ff}.feature-card:nth-child(2){background:#e8fbf5}.feature-card:nth-child(3){background:#fff0ba}
.feature-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#fff;font-size:23px;box-shadow:0 6px 18px rgba(51,39,105,.08)}
.feature-card h3{margin:26px 0 9px;font-size:23px}.feature-card p{color:var(--ink-2);line-height:1.55}
.product-card{overflow:hidden;padding:20px;transition:transform .18s ease,box-shadow .18s ease}.product-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px rgba(51,39,105,.14)}
.product-type{display:inline-flex;padding:6px 9px;border-radius:999px;background:#eee9ff;color:#543fc0;font-weight:800;font-size:12px}.product-card:nth-child(2) .product-type{background:#e7fbf5;color:#16705c}.product-card:nth-child(3) .product-type{background:#fff1d4;color:#87520f}
.price{display:flex;align-items:flex-start;gap:5px;margin:18px 0}.price strong{font-size:41px;letter-spacing:-.045em}.price span{padding-top:8px;color:var(--muted)}
.check-list{display:grid;gap:10px;padding:0;margin:18px 0 23px;list-style:none}.check-list li{display:flex;gap:9px;line-height:1.45}.check-list li:before{content:"✓";display:grid;place-items:center;flex:0 0 auto;width:21px;height:21px;border-radius:50%;background:#e7fbf5;color:#16705c;font-weight:900;font-size:12px}
.badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#f1eeff;color:#5540bd;font-weight:800;font-size:12px}
.badge-mint{background:#e7fbf5;color:#16705c}.badge-yellow{background:#fff1ce;color:#865313}.badge-coral{background:#ffe9ee;color:#a4445c}
.cta-panel{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;padding:32px;border-radius:30px;background:linear-gradient(125deg,#2d235b,#6543d8);color:#fff;box-shadow:var(--shadow-strong)}
.cta-panel:after{content:"✦";position:absolute;right:17%;top:10px;color:var(--yellow);font-size:55px;opacity:.9}.cta-panel h2{margin-bottom:10px}.cta-panel p{margin:0;color:rgba(255,255,255,.78);line-height:1.6}
.site-footer{padding:38px 0 48px}.footer-shell{display:grid;grid-template-columns:1.2fr repeat(3,.8fr);gap:25px;padding:28px;border-radius:25px;background:#282143;color:#fff}.footer-logo{width:86px}.footer-shell h4{margin:0 0 12px}.footer-shell p,.footer-shell a{color:rgba(255,255,255,.72);font-size:14px;line-height:1.7;text-decoration:none}.footer-links{display:grid;gap:6px}
.page-hero{padding:38px 0 24px}.page-hero-box{position:relative;overflow:hidden;padding:34px;border-radius:28px;background:linear-gradient(135deg,#30245f,#6744d7);color:#fff;box-shadow:var(--shadow-strong)}.page-hero-box:after{content:"";position:absolute;width:200px;height:200px;right:-65px;top:-75px;border-radius:50%;background:rgba(255,217,94,.7)}.page-hero-box>*{position:relative;z-index:2}.page-hero-box h1{font-size:clamp(36px,5vw,58px);margin-bottom:12px}.page-hero-box p{max-width:720px;margin:0;color:rgba(255,255,255,.8);font-size:17px;line-height:1.6}
.filter-bar{display:grid;grid-template-columns:1.4fr repeat(2,.6fr) auto;gap:9px;margin-top:-18px;position:relative;z-index:5;padding:10px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}
.input,.select,.textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:11px 12px;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:#9b83fa;box-shadow:0 0 0 3px #eee9ff}
.results-layout{display:grid;grid-template-columns:275px minmax(0,1fr);gap:18px}.filters{padding:18px}.filter-group{padding:16px 0;border-bottom:1px solid var(--line)}.filter-group:first-child{padding-top:0}.filter-group:last-child{border-bottom:0}.filter-group h3{margin-bottom:11px;font-size:15px}.form-check{display:flex;align-items:center;gap:8px;margin:9px 0;color:var(--ink-2);font-size:14px}.form-check input{accent-color:var(--violet)}
.result-list{display:grid;gap:12px}.result-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:17px}.result-logo{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#eee9ff;color:var(--violet);font-weight:900}.result-name{margin:0 0 4px;font-size:18px}.result-meta{display:flex;flex-wrap:wrap;gap:7px;color:var(--muted);font-size:13px}.result-score{text-align:right}.score-circle{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#e7fbf5;color:#14705c;font-weight:900}.result-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.account-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px;align-items:start}.account-sidebar{position:sticky;top:101px;padding:17px}.account-user{display:flex;gap:10px;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--line)}.account-avatar{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:#eee9ff;color:var(--violet);font-weight:900}.account-menu{display:grid;gap:5px;margin-top:14px}.account-menu a{padding:10px;border-radius:10px;text-decoration:none;color:var(--ink-2);font-weight:700;font-size:14px}.account-menu a:hover,.account-menu a.active{background:#eee9ff;color:#543fc0}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat{min-height:135px;padding:17px;border:0}.stat:nth-child(1){background:#eee9ff}.stat:nth-child(2){background:#e7fbf5}.stat:nth-child(3){background:#fff1c9}.stat:nth-child(4){background:#ffe9ef}.stat-label{color:var(--muted);font-size:13px}.stat-value{margin:11px 0 7px;font-size:34px;letter-spacing:-.04em;font-weight:850}
.panel{padding:20px}.panel-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:16px}.panel h2{font-size:23px;margin:0}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.table th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.empty-state{text-align:center;padding:35px 15px;color:var(--muted)}.empty-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 13px;border-radius:18px;background:#eee9ff;color:var(--violet);font-size:25px}
.offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.offer{position:relative;overflow:hidden;padding:22px}.offer.featured{border:2px solid var(--violet);box-shadow:0 18px 42px rgba(108,77,246,.16)}.offer.featured:before{content:"Le plus économique";position:absolute;top:17px;right:-39px;transform:rotate(38deg);padding:7px 45px;background:var(--yellow);color:#4f3810;font-size:11px;font-weight:900}.offer-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.offer-price{display:flex;align-items:flex-start;gap:5px;margin:17px 0}.offer-price strong{font-size:42px;letter-spacing:-.04em}.offer-price span{padding-top:8px;color:var(--muted)}.unit-price{padding:9px 11px;border-radius:12px;background:#f6f4fb;color:var(--muted);font-size:13px}
.faq{display:grid;gap:9px}.faq details{border:1px solid var(--line);border-radius:14px;background:#fff;padding:14px 16px}.faq summary{cursor:pointer;font-weight:750}.faq p{margin:12px 0 0;color:var(--muted);line-height:1.6}
.custom-builder{display:grid;grid-template-columns:1fr .8fr;gap:18px}.builder-form{padding:22px}.builder-preview{padding:22px;background:linear-gradient(145deg,#2f245f,#6844d8);color:#fff}.builder-preview p{color:rgba(255,255,255,.8);line-height:1.6}.prospect-cloud{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.prospect-cloud span{padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.13);font-size:12px}
.payment-note{display:flex;gap:10px;align-items:start;padding:13px;border-radius:14px;background:#fff5d9;color:#76551c;font-size:13px;line-height:1.5}
.toast{position:fixed;right:20px;bottom:20px;z-index:100;max-width:340px;padding:13px 15px;border-radius:14px;background:#282143;color:#fff;box-shadow:var(--shadow-strong);opacity:0;transform:translateY(10px);pointer-events:none;transition:.22s}.toast.show{opacity:1;transform:none}
@media(max-width:980px){
  .main-nav{display:none;position:absolute;left:14px;right:14px;top:78px;flex-direction:column;align-items:stretch;padding:12px;border-radius:16px;background:#342966;box-shadow:var(--shadow-strong)}
  .main-nav.open{display:flex}.main-nav a{text-align:center}.nav-toggle{display:block}.nav-user{display:none}
  .nav-lang-desktop{display:none}.nav-lang-mobile{display:block;margin-top:8px}
  .nav-lang-mobile .lang-switch-list{width:100%}.nav-lang-mobile .lang-switch-link{flex:1}
  .hero-grid,.custom-builder{grid-template-columns:1fr}.visual-board{min-height:430px}
  .grid-4{grid-template-columns:repeat(2,1fr)}.results-layout,.account-layout{grid-template-columns:1fr}.account-sidebar{position:static}.stats{grid-template-columns:repeat(2,1fr)}
  .footer-shell{grid-template-columns:1fr 1fr}.filter-bar{grid-template-columns:1fr 1fr}.filter-bar .query{grid-column:1/-1}
}
@media(max-width:680px){
  .container{width:min(100% - 22px,1180px)}.site-header{padding:8px 0}.nav-shell{min-height:64px;padding:8px 10px}.brand img{width:76px}.nav-actions .btn-ghost{display:none}
  .hero{padding-top:35px}.hero-actions .btn{flex:1}.visual-board{min-height:375px}.mock-window{margin-top:30px}.chip-one{top:20px}.chip-two{bottom:16px}
  .grid-3,.grid-4,.offer-grid{grid-template-columns:1fr}.section{padding:42px 0}.section-head,.cta-panel{grid-template-columns:1fr;display:grid;align-items:start}
  .filter-bar{grid-template-columns:1fr}.filter-bar .query{grid-column:auto}.result-card{grid-template-columns:auto 1fr}.result-score{grid-column:2;text-align:left}.score-circle{width:45px;height:45px}
  .stats{grid-template-columns:1fr 1fr}.footer-shell{grid-template-columns:1fr}.page-hero-box{padding:26px}.search-box{grid-template-columns:1fr}.search-box .btn{width:100%}
}
@media(max-width:430px){.stats{grid-template-columns:1fr}.mini-metrics{grid-template-columns:1fr}.visual-board{min-height:500px}.nav-actions .btn-yellow{padding:9px 11px;font-size:13px}}

/* Extracted from content/en/company-profile.html — shared by demo + generated public profiles */
#pepper-profile {
      --panel: var(--viz-panel);
      --card: var(--viz-card);
      --chip: var(--viz-chip-card);
      --text: var(--viz-text);
      --muted: var(--viz-muted);
      --border: var(--viz-border);
      --accent: var(--viz-accent);
      --accent-text: var(--viz-accent-text);
      --accent-bg: var(--viz-accent-bg);
      --accent-soft: var(--viz-accent-bg-subtle);
      color: var(--text);
      background: var(--panel);
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    }

    #pepper-profile * { box-sizing: border-box; }
    #pepper-profile button, #pepper-profile input { font: inherit; }
    #pepper-profile button { cursor: pointer; }
    #pepper-profile a { color: inherit; }

    #pepper-profile .shell {
      width: 100%;
      max-width: 1180px;
      margin: 0 auto;
      padding: 20px;
    }

    #pepper-profile .topbar {
      display: grid;
      grid-template-columns: 132px minmax(220px, 1fr) auto;
      align-items: center;
      gap: 16px;
      padding: 12px 16px;
      border-radius: 18px;
      background: #111827; /* fallback compatible avec tous les navigateurs */
      color: #ffffff;
    }

    #pepper-profile .yufi-logo-wrap {
      width: 116px;
      height: 54px;
      display: flex;
      align-items: center;
      justify-content: flex-start;
      overflow: visible;
    }

    #pepper-profile .yufi-logo {
      display: block;
      width: 108px;
      height: auto;
      max-height: 52px;
      object-fit: contain;
      object-position: left center;
    }

    #pepper-profile .search {
      width: 100%;
      border: 1px solid rgba(255,255,255,.22);
      border-radius: 12px;
      padding: 10px 13px;
      background: rgba(255,255,255,.10);
      color: #ffffff;
    }

    #pepper-profile .search::placeholder { color: rgba(255,255,255,.68); }

    #pepper-profile .header-action {
      border: 1px solid rgba(255,255,255,.25);
      border-radius: 11px;
      padding: 9px 13px;
      background: transparent;
      color: #ffffff;
      font-weight: 650;
    }

    #pepper-profile .hero {
      display: grid;
      grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
      gap: 18px;
      margin-top: 18px;
    }

    #pepper-profile .hero-copy,
    #pepper-profile .hero-visual,
    #pepper-profile .section,
    #pepper-profile .side-panel {
      border: 1px solid var(--border);
      border-radius: 18px;
      background: var(--card);
    }

    #pepper-profile .hero-copy { padding: 24px; }

    #pepper-profile .company-brand {
      display: flex;
      align-items: center;
      gap: 18px;
    }

    #pepper-profile .company-logo-wrap {
      width: 132px;
      min-width: 132px;
      height: 88px;
      display: grid;
      place-items: center;
      padding: 12px;
      border: 1px solid var(--border);
      border-radius: 16px;
      background: color-mix(in srgb, var(--chip) 72%, transparent);
    }

    #pepper-profile .company-logo {
      max-width: 100%;
      max-height: 100%;
      object-fit: contain;
    }

    #pepper-profile h1 {
      margin: 0;
      font-size: clamp(30px, 5vw, 48px);
      line-height: 1;
      letter-spacing: -.045em;
      font-weight: 760;
    }

    #pepper-profile .badges,
    #pepper-profile .tags,
    #pepper-profile .actions,
    #pepper-profile .socials,
    #pepper-profile .view-tabs,
    #pepper-profile .map-tabs {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
    }

    #pepper-profile .badges { margin-top: 10px; }

    #pepper-profile .badge,
    #pepper-profile .tag {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      border: 1px solid var(--border);
      border-radius: 999px;
      background: var(--chip);
      padding: 5px 9px;
      font-size: 12px;
      font-weight: 650;
    }

    #pepper-profile .badge-accent {
      border-color: transparent;
      background: var(--accent-bg);
      color: var(--accent);
    }

    #pepper-profile .lead {
      margin: 18px 0 0;
      color: var(--muted);
      font-size: 16px;
      line-height: 1.62;
    }

    #pepper-profile .meta-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      margin-top: 18px;
    }

    #pepper-profile .meta-item {
      padding: 11px 12px;
      border-radius: 12px;
      background: var(--chip);
    }

    #pepper-profile .meta-item small {
      display: block;
      margin-bottom: 4px;
      color: var(--muted);
    }

    #pepper-profile .actions { margin-top: 18px; }

    #pepper-profile .btn {
      min-height: 40px;
      border: 1px solid var(--border);
      border-radius: 11px;
      padding: 9px 13px;
      background: var(--card);
      color: var(--text);
      font-weight: 670;
      text-decoration: none;
    }

    #pepper-profile .btn-primary {
      border-color: transparent;
      background: var(--accent);
      color: var(--accent-text);
    }

    #pepper-profile .hero-visual {
      position: relative;
      min-height: 350px;
      overflow: hidden;
      background: var(--accent-soft);
    }

    #pepper-profile .hero-visual img {
      width: 100%;
      height: 100%;
      min-height: 350px;
      object-fit: contain;
      padding: 20px;
    }

    #pepper-profile .visual-label {
      position: absolute;
      left: 16px;
      bottom: 16px;
      max-width: calc(100% - 32px);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 10px 12px;
      background: color-mix(in srgb, var(--card) 92%, transparent);
      font-size: 13px;
      line-height: 1.4;
    }

    #pepper-profile .socials {
      margin: 14px 0;
      padding: 10px;
      border: 1px solid var(--border);
      border-radius: 15px;
      background: var(--card);
    }

    #pepper-profile .social-link {
      flex: 1 1 145px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      min-height: 50px;
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 9px 11px;
      background: var(--chip);
      text-decoration: none;
    }

    #pepper-profile .social-link strong { display: block; font-size: 13px; }
    #pepper-profile .social-link small { display: block; margin-top: 2px; color: var(--muted); font-size: 11px; }
    #pepper-profile .social-link.available { border-color: var(--accent); background: var(--accent-soft); }
    #pepper-profile .social-link.missing { opacity: .65; }

    #pepper-profile .social-icon {
      width: 29px;
      height: 29px;
      display: grid;
      place-items: center;
      flex: 0 0 auto;
      border-radius: 9px;
      background: var(--card);
      font-size: 12px;
      font-weight: 800;
    }

    #pepper-profile .view-tabs {
      padding: 8px;
      margin-bottom: 14px;
      border: 1px solid var(--border);
      border-radius: 14px;
      background: var(--card);
    }

    #pepper-profile .view-tab,
    #pepper-profile .map-tab {
      border: 0;
      border-radius: 10px;
      padding: 9px 12px;
      background: transparent;
      color: var(--muted);
      font-weight: 670;
      text-decoration: none;
    }

    #pepper-profile .view-tab.active,
    #pepper-profile .map-tab.active {
      background: var(--accent);
      color: var(--accent-text);
    }

    #pepper-profile .summary {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 16px;
      padding: 18px;
      margin-bottom: 14px;
      border: 1px solid var(--border);
      border-radius: 16px;
      background: var(--accent-soft);
    }

    #pepper-profile .summary h2,
    #pepper-profile .section h2,
    #pepper-profile .side-panel h2 {
      margin: 0;
      font-size: 19px;
      letter-spacing: -.02em;
      font-weight: 720;
    }

    #pepper-profile .summary p {
      margin: 8px 0 0;
      line-height: 1.58;
    }

    #pepper-profile .metrics {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 10px;
      margin-bottom: 15px;
    }

    #pepper-profile .metric-card { min-width: 0; }
    #pepper-profile .metric-label { margin-bottom: 7px; color: var(--muted); font-size: 12px; }
    #pepper-profile .metric-value { font-size: 21px; line-height: 1.1; letter-spacing: -.03em; font-weight: 780; }
    #pepper-profile .metric-note {
      margin-top: 5px;
      color: var(--muted);
      font-size: 11px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    #pepper-profile .layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 300px;
      gap: 15px;
      align-items: start;
    }

    #pepper-profile .main,
    #pepper-profile .sidebar {
      display: grid;
      gap: 14px;
    }

    #pepper-profile .section,
    #pepper-profile .side-panel { padding: 19px; }
    #pepper-profile .section.focus { border-color: var(--accent); }

    #pepper-profile .section-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 14px;
      margin-bottom: 15px;
    }

    #pepper-profile .section-subtitle {
      margin-top: 5px;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.45;
    }

    #pepper-profile .activity-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.05fr) minmax(260px, .95fr);
      gap: 16px;
    }

    #pepper-profile .activity-copy { margin: 0; line-height: 1.65; }
    #pepper-profile .tags { margin-top: 13px; }

    #pepper-profile .image-grid {
      display: grid;
      grid-template-columns: 1.3fr .7fr;
      gap: 9px;
    }

    #pepper-profile .image-tile {
      position: relative;
      min-height: 190px;
      overflow: hidden;
      border: 1px solid var(--border);
      border-radius: 14px;
      background: var(--chip);
    }

    #pepper-profile .image-tile img {
      width: 100%;
      height: 100%;
      min-height: 190px;
      object-fit: contain;
      padding: 12px;
    }

    #pepper-profile .image-tile.compact img { object-fit: cover; padding: 0; }

    #pepper-profile .map-frame {
      position: relative;
      min-height: 320px;
      overflow: hidden;
      border: 1px solid var(--border);
      border-radius: 15px;
      background: var(--chip);
    }

    #pepper-profile .map-frame > img {
      width: 100%;
      height: 320px;
      object-fit: cover;
      display: block;
    }

    #pepper-profile .map-overlay {
      position: absolute;
      left: 14px;
      right: 14px;
      bottom: 14px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding: 12px;
      border: 1px solid var(--border);
      border-radius: 12px;
      background: color-mix(in srgb, var(--card) 94%, transparent);
    }

    #pepper-profile .map-title { font-weight: 720; }
    #pepper-profile .map-address { margin-top: 3px; color: var(--muted); font-size: 12px; }

    #pepper-profile .locations {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      margin-top: 12px;
    }

    #pepper-profile .location-card {
      padding: 12px;
      border: 1px solid var(--border);
      border-radius: 12px;
      background: var(--chip);
    }

    #pepper-profile .location-card strong { display: block; }
    #pepper-profile .location-card span { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.4; }

    #pepper-profile .visually-hidden {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    #pepper-profile .est-map {
      min-height: 420px;
    }

    #pepper-profile .est-map-canvas {
      width: 100%;
      height: 420px;
    }

    #pepper-profile .est-map .leaflet-container {
      width: 100%;
      height: 420px;
      background: #d7e4d6;
      font-family: inherit;
    }

    #pepper-profile .est-map .leaflet-tile,
    #pepper-profile .est-map .leaflet-marker-icon {
      width: auto !important;
      height: auto !important;
      max-width: none !important;
      min-height: 0 !important;
      object-fit: unset !important;
      padding: 0 !important;
      border: 0 !important;
      border-radius: 0 !important;
      display: block;
    }

    #pepper-profile .est-legend {
      position: absolute;
      left: 12px;
      right: 12px;
      bottom: 12px;
      z-index: 400;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
      padding: 8px 12px;
      border-radius: 10px;
      background: color-mix(in srgb, var(--card) 92%, transparent);
      font-size: 12px;
    }

    #pepper-profile .est-legend em {
      margin-left: auto;
      font-style: normal;
      color: var(--muted);
    }

    #pepper-profile .est-dot {
      width: 9px;
      height: 9px;
      border-radius: 50%;
      display: inline-block;
    }

    #pepper-profile .est-dot.hq { background: #6c4df6; }
    #pepper-profile .est-dot.site { background: #3dcfb0; }

    #pepper-profile .est-map-search {
      position: absolute;
      top: 12px;
      left: 12px;
      right: 12px;
      z-index: 500;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    #pepper-profile .est-map-search .est-search {
      flex: 1;
    }

    #pepper-profile .est-map-search input {
      box-shadow: 0 6px 18px rgba(40, 31, 80, 0.12);
    }

    #pepper-profile .est-map-search .est-count {
      padding: 8px 10px;
      border-radius: 10px;
      background: color-mix(in srgb, var(--card) 92%, transparent);
    }

    #pepper-profile .est-toolbar {
      display: flex;
      align-items: center;
      gap: 12px;
      margin: 14px 0 10px;
    }

    #pepper-profile .est-search {
      flex: 1;
    }

    #pepper-profile .est-search input {
      width: 100%;
      padding: 10px 12px;
      border: 1px solid var(--border);
      border-radius: 12px;
      background: var(--card);
      color: inherit;
      font: inherit;
    }

    #pepper-profile .est-count {
      color: var(--muted);
      font-size: 12px;
      white-space: nowrap;
    }

    #pepper-profile button.location-card {
      display: block;
      width: 100%;
      text-align: left;
      font: inherit;
      color: inherit;
      cursor: pointer;
    }

    #pepper-profile button.location-card[hidden],
    #pepper-profile button.location-card.is-off {
      display: none !important;
    }

    #pepper-profile button.location-card.is-active,
    #pepper-profile button.location-card.is-hq.is-active {
      box-shadow: inset 0 0 0 2px #6c4df6;
    }

    #pepper-profile .locations.is-scroll {
      max-height: 340px;
      overflow: auto;
      padding-right: 4px;
    }

    #pepper-profile .finance-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 9px;
    }

    #pepper-profile .finance-item {
      padding: 12px;
      border: 1px solid var(--border);
      border-radius: 12px;
      background: var(--chip);
    }

    #pepper-profile .finance-item small { display: block; margin-bottom: 5px; color: var(--muted); }
    #pepper-profile .finance-item strong { font-size: 18px; }
    #pepper-profile .finance-item span { display: block; margin-top: 4px; color: var(--accent); font-size: 11px; font-weight: 700; }

    #pepper-profile .contact-grid {
      display: grid;
      grid-template-columns: 1.2fr .8fr .8fr;
      gap: 10px;
    }

    #pepper-profile .contact-card {
      min-width: 0;
      padding: 13px;
      border: 1px solid var(--border);
      border-radius: 13px;
      background: var(--chip);
    }

    #pepper-profile .contact-card.featured {
      display: grid;
      grid-template-columns: 82px minmax(0, 1fr);
      align-items: center;
      gap: 13px;
    }

    #pepper-profile .contact-photo {
      width: 82px;
      height: 82px;
      border-radius: 16px;
      object-fit: cover;
      background: var(--card);
    }

    #pepper-profile .avatar {
      width: 40px;
      height: 40px;
      display: grid;
      place-items: center;
      margin-bottom: 11px;
      border-radius: 12px;
      background: var(--accent-bg);
      color: var(--accent);
      font-weight: 780;
    }

    #pepper-profile .contact-name { font-weight: 720; }
    #pepper-profile .contact-role { margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.4; }

    #pepper-profile .side-panel p {
      margin: 8px 0 0;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.55;
    }

    #pepper-profile .callout {
      margin-top: 12px;
      padding: 12px;
      border-radius: 12px;
      background: var(--accent-soft);
      font-size: 13px;
      line-height: 1.5;
    }

    #pepper-profile .questions {
      display: grid;
      gap: 8px;
      margin-top: 12px;
    }

    #pepper-profile .question {
      padding: 10px;
      border: 1px solid var(--border);
      border-radius: 11px;
      font-size: 13px;
      line-height: 1.42;
    }

    #pepper-profile .progress {
      height: 10px;
      margin-top: 11px;
      overflow: hidden;
      border-radius: 999px;
      background: var(--chip);
    }

    #pepper-profile .progress span {
      display: block;
      height: 100%;
      width: 82%;
      border-radius: inherit;
      background: var(--accent);
    }

    #pepper-profile .source-note {
      margin-top: 12px;
      color: var(--muted);
      font-size: 11px;
      line-height: 1.5;
    }

    #pepper-profile .fallback {
      display: none;
      height: 100%;
      min-height: inherit;
      place-items: center;
      padding: 20px;
      text-align: center;
      color: var(--muted);
    }

    @media (max-width: 1000px) {
      #pepper-profile .metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
      #pepper-profile .layout { grid-template-columns: 1fr; }
      #pepper-profile .sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }

    @media (max-width: 760px) {
      #pepper-profile .shell { padding: 14px; }
      #pepper-profile .topbar { grid-template-columns: 100px 1fr; }
      #pepper-profile .search { grid-column: 1 / -1; grid-row: 2; }
      #pepper-profile .header-action { justify-self: end; }
      #pepper-profile .hero { grid-template-columns: 1fr; }
      #pepper-profile .company-brand { align-items: flex-start; }
      #pepper-profile .meta-grid { grid-template-columns: 1fr; }
      #pepper-profile .summary { grid-template-columns: 1fr; }
      #pepper-profile .activity-grid { grid-template-columns: 1fr; }
      #pepper-profile .finance-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      #pepper-profile .contact-grid { grid-template-columns: 1fr; }
      #pepper-profile .sidebar { grid-template-columns: 1fr; }
    }

    @media (max-width: 520px) {
      #pepper-profile .company-brand { display: grid; }
      #pepper-profile .company-logo-wrap { width: 118px; min-width: 118px; }
      #pepper-profile .metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      #pepper-profile .locations { grid-template-columns: 1fr; }
      #pepper-profile .image-grid { grid-template-columns: 1fr; }
      #pepper-profile .map-overlay { align-items: flex-start; flex-direction: column; }
    }

#pepper-profile .locked-wrap {
  position: relative;
  isolation: isolate;
  min-height: 140px;
}
#pepper-profile .locked-preview {
  filter: blur(8px);
  transform: scale(1.02);
  pointer-events: none;
  user-select: none;
}
#pepper-profile .locked-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 18px;
  text-align: center;
  border-radius: 16px;
  background: color-mix(in srgb, var(--panel) 78%, transparent);
}
#pepper-profile .locked-overlay p {
  margin: 0;
  max-width: 28rem;
  color: var(--muted);
}
#pepper-profile .locked-overlay strong {
  color: var(--text);
}
#pepper-profile .metric-card.locked-wrap {
  min-height: 0;
}
#pepper-profile .metric-card .locked-overlay {
  border-radius: 14px;
  padding: 8px;
}
#pepper-profile .metric-card .locked-overlay p {
  font-size: 0.85rem;
}

/* yufi-fun-theme — same as company-profile.html #yufi-fun-theme */
/* Variante colorée, fun et lisible */
body:has(#pepper-profile) {
      min-height: 100vh;
      background:
        radial-gradient(circle at 8% 4%, rgba(255, 198, 92, .28), transparent 24rem),
        radial-gradient(circle at 94% 10%, rgba(255, 112, 145, .18), transparent 28rem),
        radial-gradient(circle at 85% 82%, rgba(63, 210, 180, .18), transparent 26rem),
        #f7f7ff;
    }

    #pepper-profile {
      --panel: transparent;
      --card: #ffffff;
      --chip: #f4f2ff;
      --text: #202039;
      --muted: #676781;
      --border: #e7e3f2;
      --accent: #6c4df6;
      --accent-text: #ffffff;
      --accent-bg: #eee9ff;
      --accent-soft: #f7f4ff;
      background: transparent;
    }

    #pepper-profile .shell {
      max-width: 1240px;
      padding: 24px;
    }

    #pepper-profile .topbar {
      position: relative;
      overflow: hidden;
      grid-template-columns: 132px minmax(220px, 1fr) auto;
      min-height: 78px;
      padding: 12px 18px;
      border: 0;
      border-radius: 24px;
      background:
        radial-gradient(circle at 12% 30%, rgba(255,255,255,.22) 0 5px, transparent 6px),
        radial-gradient(circle at 88% 28%, rgba(255,214,87,.7) 0 8px, transparent 9px),
        radial-gradient(circle at 83% 82%, rgba(75,224,188,.55) 0 6px, transparent 7px),
        linear-gradient(120deg, #28205f 0%, #5936d8 52%, #9459f6 100%);
      box-shadow: 0 18px 45px rgba(63, 40, 145, .18);
    }

    #pepper-profile .topbar::after {
      content: "";
      position: absolute;
      right: 17%;
      top: -35px;
      width: 130px;
      height: 130px;
      border: 2px solid rgba(255,255,255,.14);
      border-radius: 42% 58% 55% 45%;
      transform: rotate(18deg);
      pointer-events: none;
    }

    #pepper-profile .yufi-logo-wrap,
    #pepper-profile .search,
    #pepper-profile .header-action {
      position: relative;
      z-index: 1;
    }

    #pepper-profile .yufi-logo-wrap {
      width: 116px;
      height: 54px;
      padding: 3px 5px;
      border-radius: 14px;
      background: rgba(255,255,255,.08);
    }

    #pepper-profile .search {
      border-color: rgba(255,255,255,.32);
      background: rgba(255,255,255,.14);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.12);
    }

    #pepper-profile .search:focus {
      outline: 3px solid rgba(255, 217, 94, .55);
      outline-offset: 2px;
    }

    #pepper-profile .header-action {
      border: 0;
      background: #ffd95e;
      color: #30235f;
      box-shadow: 0 8px 22px rgba(39,28,102,.25);
    }

    #pepper-profile .hero {
      gap: 20px;
      margin-top: 22px;
    }

    #pepper-profile .hero-copy,
    #pepper-profile .hero-visual,
    #pepper-profile .section,
    #pepper-profile .side-panel {
      border-color: var(--border);
      border-radius: 24px;
      box-shadow: 0 12px 34px rgba(51, 39, 105, .07);
    }

    #pepper-profile .hero-copy {
      position: relative;
      overflow: hidden;
      border: 0;
      padding: 28px;
      background:
        radial-gradient(circle at 92% 8%, rgba(255, 205, 86, .38), transparent 10rem),
        radial-gradient(circle at 6% 92%, rgba(73, 215, 178, .18), transparent 12rem),
        linear-gradient(145deg, #ffffff 10%, #faf8ff 100%);
    }

    #pepper-profile .hero-copy::after {
      content: "✦";
      position: absolute;
      right: 24px;
      bottom: 18px;
      color: #ff718f;
      font-size: 34px;
      transform: rotate(14deg);
      opacity: .78;
    }

    #pepper-profile .company-logo-wrap {
      border: 2px solid #e4ddff;
      border-radius: 22px;
      background: #ffffff;
      box-shadow:
        8px 8px 0 #efeaff,
        -5px -5px 0 #fff0ba;
    }

    #pepper-profile h1 {
      color: #2d2455;
      text-wrap: balance;
    }

    #pepper-profile .badge,
    #pepper-profile .tag {
      border-color: transparent;
      background: #f0edff;
      color: #493c86;
    }

    #pepper-profile .badge:nth-child(2n),
    #pepper-profile .tag:nth-child(2n) {
      background: #e8fbf5;
      color: #116c5a;
    }

    #pepper-profile .badge:nth-child(3n),
    #pepper-profile .tag:nth-child(3n) {
      background: #fff1db;
      color: #865313;
    }

    #pepper-profile .badge-accent {
      background: #6c4df6;
      color: #ffffff;
    }

    #pepper-profile .meta-item {
      border: 1px solid #ebe7f5;
      background: rgba(255,255,255,.72);
    }

    #pepper-profile .btn {
      border-radius: 13px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }

    #pepper-profile .btn:hover,
    #pepper-profile .social-link:hover,
    #pepper-profile .view-tab:hover,
    #pepper-profile .map-tab:hover {
      transform: translateY(-2px);
    }

    #pepper-profile .btn-primary {
      background: linear-gradient(135deg, #6c4df6, #9c5cf6);
      box-shadow: 0 8px 20px rgba(108,77,246,.24);
    }

    #pepper-profile .hero-visual {
      overflow: hidden;
      border: 0;
      background: #2d2455;
      box-shadow:
        0 14px 40px rgba(45,36,85,.18),
        8px 8px 0 #ffdc70;
    }

    #pepper-profile .visual-label {
      border-radius: 999px;
      background: #ffd95e;
      color: #34275e;
      font-weight: 800;
    }

    #pepper-profile .socials {
      gap: 10px;
      margin-top: 20px;
      padding: 12px;
      border: 1px solid #ebe6f5;
      border-radius: 20px;
      background: rgba(255,255,255,.72);
      backdrop-filter: blur(10px);
    }

    #pepper-profile .social-link {
      min-height: 50px;
      border: 0;
      border-radius: 15px;
      transition: transform .18s ease, box-shadow .18s ease;
    }

    #pepper-profile .social-link:nth-child(1) { background: #eee9ff; color: #4f38bd; }
    #pepper-profile .social-link:nth-child(2) { background: #e7f2ff; color: #1b5798; }
    #pepper-profile .social-link:nth-child(3) { background: #fff0f4; color: #a63c5d; }
    #pepper-profile .social-link:nth-child(4) { background: #fff0e6; color: #a64e22; }
    #pepper-profile .social-link:nth-child(5) { background: #ebfbf6; color: #14705c; }
    #pepper-profile .social-link:nth-child(6) { background: #e8f3ff; color: #17538d; }

    #pepper-profile .social-icon {
      background: rgba(255,255,255,.76);
      box-shadow: 0 3px 10px rgba(36,28,78,.08);
    }

    #pepper-profile .view-tabs {
      position: sticky;
      top: 10px;
      z-index: 20;
      gap: 8px;
      margin: 18px 0;
      padding: 8px;
      border: 1px solid rgba(223,217,239,.9);
      border-radius: 18px;
      background: rgba(255,255,255,.88);
      box-shadow: 0 10px 28px rgba(49,37,99,.09);
      backdrop-filter: blur(14px);
    }

    #pepper-profile .view-tab {
      border-radius: 12px;
      font-weight: 750;
      transition: transform .18s ease, background .18s ease;
    }

    #pepper-profile .view-tab.active {
      background: linear-gradient(135deg, #6c4df6, #8e58f6);
      color: white;
      box-shadow: 0 6px 16px rgba(108,77,246,.22);
    }

    #pepper-profile .summary {
      position: relative;
      overflow: hidden;
      border: 0;
      border-radius: 24px;
      background:
        radial-gradient(circle at 96% 20%, rgba(255,255,255,.55), transparent 8rem),
        linear-gradient(112deg, #fff0bd 0%, #ffe4ec 44%, #e9e3ff 100%);
      box-shadow: 0 12px 30px rgba(103,75,148,.09);
    }

    #pepper-profile .summary::before {
      content: "INSIGHT";
      position: absolute;
      right: 18px;
      bottom: 12px;
      color: rgba(67,43,117,.10);
      font-size: clamp(32px, 6vw, 76px);
      font-weight: 900;
      letter-spacing: .06em;
      pointer-events: none;
    }

    #pepper-profile .metrics {
      gap: 12px;
      margin: 18px 0 20px;
    }

    #pepper-profile .metric-card {
      position: relative;
      overflow: hidden;
      min-height: 136px;
      border: 0;
      border-radius: 20px;
      padding: 17px;
      box-shadow: 0 10px 25px rgba(48,36,93,.07);
      transition: transform .18s ease, box-shadow .18s ease;
    }

    #pepper-profile .metric-card:hover {
      transform: translateY(-4px) rotate(-.3deg);
      box-shadow: 0 17px 34px rgba(48,36,93,.12);
    }

    #pepper-profile .metric-card::after {
      content: "";
      position: absolute;
      right: -18px;
      bottom: -28px;
      width: 80px;
      height: 80px;
      border-radius: 46% 54% 67% 33%;
      background: rgba(255,255,255,.46);
      transform: rotate(18deg);
    }

    #pepper-profile .metric-card:nth-child(1) { background: #eee9ff; }
    #pepper-profile .metric-card:nth-child(2) { background: #e8fbf5; }
    #pepper-profile .metric-card:nth-child(3) { background: #fff0ba; }
    #pepper-profile .metric-card:nth-child(4) { background: #ffe8ef; }
    #pepper-profile .metric-card:nth-child(5) { background: #e7f3ff; }
    #pepper-profile .metric-card:nth-child(6) { background: #f3e9ff; }

    #pepper-profile .metric-label { color: #68627c; }
    #pepper-profile .metric-value { color: #282143; }
    #pepper-profile .metric-note { color: #5f5971; }

    #pepper-profile .layout {
      gap: 20px;
    }

    #pepper-profile .main,
    #pepper-profile .sidebar {
      gap: 18px;
    }

    #pepper-profile .section,
    #pepper-profile .side-panel {
      border: 1px solid #ebe6f3;
      background: rgba(255,255,255,.94);
    }

    #pepper-profile .section {
      position: relative;
      overflow: hidden;
      padding: 23px;
    }

    #pepper-profile .section::before {
      content: "";
      position: absolute;
      inset: 0 auto 0 0;
      width: 7px;
      border-radius: 24px 0 0 24px;
      background: #6c4df6;
    }

    #pepper-profile .main > .section:nth-child(2)::before { background: #2fc5a4; }
    #pepper-profile .main > .section:nth-child(3)::before { background: #ffbd3e; }
    #pepper-profile .main > .section:nth-child(4)::before { background: #ff7192; }

    #pepper-profile .section.focused {
      border-color: #8b6bf8;
      box-shadow:
        0 16px 38px rgba(80,58,158,.13),
        inset 0 0 0 1px rgba(108,77,246,.14);
    }

    #pepper-profile .section-head h2,
    #pepper-profile .side-panel h2 {
      color: #2d2550;
    }

    #pepper-profile .image-tile {
      overflow: hidden;
      border: 0;
      border-radius: 20px;
      box-shadow: 0 9px 24px rgba(48,36,93,.10);
    }

    #pepper-profile .image-tile:nth-child(1) { transform: rotate(-.6deg); }
    #pepper-profile .image-tile:nth-child(2) { transform: rotate(.7deg); }

    #pepper-profile .location-card {
      border: 0;
      border-radius: 17px;
      background: linear-gradient(135deg, #f3efff, #ffffff);
    }

    #pepper-profile .location-card:nth-child(2) {
      background: linear-gradient(135deg, #e7fbf5, #ffffff);
    }

    #pepper-profile .map-tabs {
      padding: 6px;
      border-radius: 14px;
      background: #f3efff;
    }

    #pepper-profile .map-tab {
      border-radius: 10px;
      transition: transform .18s ease;
    }

    #pepper-profile .map-tab.active {
      background: #6c4df6;
      color: #ffffff;
    }

    #pepper-profile .map-frame {
      border: 5px solid #ffffff;
      border-radius: 23px;
      box-shadow:
        0 12px 30px rgba(52,39,105,.13),
        7px 7px 0 #b9f0e3,
        -7px -7px 0 #ffe29a;
    }

    #pepper-profile .map-overlay {
      background: rgba(40,31,80,.90);
      color: #ffffff;
      backdrop-filter: blur(8px);
    }

    #pepper-profile .finance-item {
      border: 0;
      border-radius: 17px;
      background: #f7f5ff;
    }

    #pepper-profile .finance-item:nth-child(2n) { background: #edfaf6; }
    #pepper-profile .finance-item:nth-child(3n) { background: #fff5dc; }
    #pepper-profile .finance-item:nth-child(4n) { background: #fff0f4; }

    #pepper-profile .contact-card {
      border: 0;
      border-radius: 19px;
      background: #f6f3ff;
      box-shadow: 0 8px 22px rgba(49,37,99,.07);
    }

    #pepper-profile .contact-card:nth-child(2) { background: #eafaf5; }
    #pepper-profile .contact-card:nth-child(3) { background: #fff2de; }

    #pepper-profile .avatar {
      background: #6c4df6;
      color: #ffffff;
      box-shadow: 4px 4px 0 #ffd95e;
    }

    #pepper-profile .contact-photo {
      border: 4px solid #ffffff;
      box-shadow: 4px 4px 0 #ff9caf;
    }

    #pepper-profile .side-panel {
      padding: 20px;
    }

    #pepper-profile .sidebar .side-panel:nth-child(1) {
      background: linear-gradient(145deg, #30245f, #6042cf);
      color: #ffffff;
      border: 0;
    }

    #pepper-profile .sidebar .side-panel:nth-child(1) h2,
    #pepper-profile .sidebar .side-panel:nth-child(1) p {
      color: #ffffff;
    }

    #pepper-profile .callout {
      border: 1px solid rgba(255,255,255,.18);
      background: rgba(255,255,255,.12);
      color: #ffffff;
    }

    #pepper-profile .question {
      border: 0;
      border-radius: 14px;
      background: #f4f1ff;
    }

    #pepper-profile .question:nth-child(2n) { background: #eafaf5; }
    #pepper-profile .question:nth-child(3n) { background: #fff3dc; }

    #pepper-profile .progress {
      background: #eee9f6;
    }

    #pepper-profile .progress span {
      background: linear-gradient(90deg, #6c4df6, #ff7192, #ffc64f);
    }

    #pepper-profile .source-note {
      border-radius: 13px;
      background: #fff4d8;
      color: #6f5220;
    }

    @media (min-width: 1001px) {
      #pepper-profile .sidebar {
        position: sticky;
        top: 94px;
      }
    }

    @media (max-width: 760px) {
      #pepper-profile .shell { padding: 14px; }
      #pepper-profile .topbar { border-radius: 20px; }
      #pepper-profile .hero-visual { box-shadow: 0 12px 30px rgba(45,36,85,.15); }
      #pepper-profile .view-tabs { top: 4px; }
      #pepper-profile .metric-card { min-height: 120px; }
    }

    @media (prefers-reduced-motion: no-preference) {
      #pepper-profile .hero-copy {
        animation: funFadeUp .48s ease both;
      }
      #pepper-profile .hero-visual {
        animation: funFadeUp .58s .05s ease both;
      }
      #pepper-profile .metric-card {
        animation: funFadeUp .5s ease both;
      }
      #pepper-profile .metric-card:nth-child(2) { animation-delay: .04s; }
      #pepper-profile .metric-card:nth-child(3) { animation-delay: .08s; }
      #pepper-profile .metric-card:nth-child(4) { animation-delay: .12s; }
      #pepper-profile .metric-card:nth-child(5) { animation-delay: .16s; }
      #pepper-profile .metric-card:nth-child(6) { animation-delay: .20s; }

      @keyframes funFadeUp {
        from { opacity: 0; transform: translateY(12px); }
        to { opacity: 1; transform: translateY(0); }
      }
    }


#pepper-profile .fallback.is-on {
  display: grid;
}
#pepper-profile .hero-visual > .fallback.is-on {
  min-height: 350px;
  color: #ffffff;
  font-size: clamp(72px, 12vw, 128px);
  font-weight: 800;
  letter-spacing: -0.06em;
}
#pepper-profile .company-logo-wrap .fallback.is-on {
  color: #6c4df6;
  font-size: 36px;
  font-weight: 800;
}
#pepper-profile .map-frame iframe {
  width: 100%;
  height: 320px;
  border: 0;
  display: block;
}
#pepper-profile .image-tile .fallback.is-on {
  min-height: 190px;
  color: #493c86;
  font-weight: 700;
}
#pepper-profile .socials > .locked-preview {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  width: 100%;
}
#pepper-profile .locked-overlay {
  background: rgba(247, 247, 255, 0.78);
  backdrop-filter: blur(10px);
}

#pepper-profile .hero-visual img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #fff;
}
#pepper-profile .facts-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0;
}
#pepper-profile .fact-card {
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--card);
}
#pepper-profile .fact-card.fact-wide { grid-column: 1 / -1; }
#pepper-profile .fact-card small { color: var(--muted); }
#pepper-profile .fact-card p { margin: 6px 0 0; font-size: 14px; line-height: 1.5; }
#pepper-profile .pub-grid,
#pepper-profile .ratio-grid,
#pepper-profile .analysis-grid,
#pepper-profile .structure-grid {
  display: grid;
  gap: 10px;
}
#pepper-profile .pub-grid,
#pepper-profile .structure-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#pepper-profile .ratio-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 12px 0; }
#pepper-profile .analysis-grid { grid-template-columns: 1fr 1fr; margin-top: 10px; }
#pepper-profile .pub-card,
#pepper-profile .ratio-card,
#pepper-profile .analysis-grid article {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--chip);
  text-decoration: none;
}
#pepper-profile .pub-card em,
#pepper-profile .ratio-hint { color: var(--accent); font-size: 12px; font-style: normal; font-weight: 700; }
#pepper-profile .list-title,
#pepper-profile .section h3 { margin: 18px 0 10px; font-size: 16px; }
#pepper-profile .report-line { margin: 0 0 14px; }
#pepper-profile .meter {
  flex: 1;
  height: 8px;
  overflow: hidden;
  border-radius: 99px;
  background: var(--chip);
  border: 1px solid var(--border);
}
#pepper-profile .meter span {
  display: block;
  height: 100%;
  background: var(--accent);
}
#pepper-profile .radar-row,
#pepper-profile .struct-row {
  display: grid;
  grid-template-columns: 140px 1fr auto;
  gap: 10px;
  align-items: center;
  margin-bottom: 8px;
  font-size: 13px;
}
#pepper-profile .compare-table { width: 100%; border-collapse: collapse; font-size: 13px; }
#pepper-profile .compare-table th,
#pepper-profile .compare-table td { padding: 8px 6px; border-bottom: 1px solid var(--border); text-align: left; vertical-align: middle; }
#pepper-profile .compare-bars { display: grid; gap: 3px; min-width: 120px; margin-bottom: 4px; }
#pepper-profile .compare-bars .bar { display: block; height: 6px; border-radius: 99px; background: var(--accent); }
#pepper-profile .compare-bars .bar.previous { background: color-mix(in srgb, var(--accent) 40%, #ccc); }
#pepper-profile .ratio-value { font-size: 22px; font-weight: 800; }
#pepper-profile .ratio-card p,
#pepper-profile .analysis-grid p,
#pepper-profile .event-summary { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.45; white-space: pre-wrap; }
#pepper-profile .other-ratios { margin: 8px 0 16px; }
#pepper-profile .event-list { display: grid; gap: 10px; }
#pepper-profile .event-card {
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--chip);
}
#pepper-profile .event-meta { display: flex; justify-content: space-between; gap: 8px; margin-bottom: 6px; font-size: 12px; color: var(--muted); }
#pepper-profile .event-subject { display: block; margin-bottom: 6px; }
#pepper-profile .event-card a { font-size: 13px; font-weight: 700; color: var(--accent); }
@media (max-width: 1000px) {
  #pepper-profile .facts-grid,
  #pepper-profile .ratio-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  #pepper-profile .facts-grid,
  #pepper-profile .pub-grid,
  #pepper-profile .ratio-grid,
  #pepper-profile .analysis-grid,
  #pepper-profile .structure-grid { grid-template-columns: 1fr; }
  #pepper-profile .radar-row,
  #pepper-profile .struct-row { grid-template-columns: 1fr; }
}

#pepper-profile .bilans-analysis { margin-top: 18px; }
#pepper-profile .bilans-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin: 8px 0 0;
  border-bottom: 2px solid var(--border);
}
#pepper-profile .bilans-tab {
  border: 0;
  background: transparent;
  padding: 12px 16px;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--muted);
  cursor: pointer;
  border-bottom: 3px solid transparent;
  margin-bottom: -2px;
}
#pepper-profile .bilans-tab.active {
  color: var(--text);
  border-bottom-color: var(--accent);
  background: color-mix(in srgb, var(--chip) 70%, white);
}
#pepper-profile .bilans-panel { display: none; padding: 18px 0; }
#pepper-profile .bilans-panel.active { display: block; }
#pepper-profile .year-block { display: none; }
#pepper-profile .year-block.is-on { display: block; }
#pepper-profile .kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
#pepper-profile .kpi-card {
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--chip);
  text-align: center;
}
#pepper-profile .kpi-card::before {
  content: "";
  display: block;
  height: 3px;
  margin: -14px -14px 10px;
  border-radius: 12px 12px 0 0;
  background: #ccc;
}
#pepper-profile .kpi-card.r5::before { background: #2d6a4f; }
#pepper-profile .kpi-card.r4::before { background: #74b49b; }
#pepper-profile .kpi-card.r3::before { background: #c9a84c; }
#pepper-profile .kpi-card.r2::before { background: #e07a5f; }
#pepper-profile .kpi-card.r1::before { background: #c1121f; }
#pepper-profile .kpi-label { font-size: 10px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
#pepper-profile .kpi-value { margin-top: 6px; font-size: 20px; font-weight: 800; }
#pepper-profile .chart-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
#pepper-profile .chart-box {
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--chip);
}
#pepper-profile .chart-box.full { margin-bottom: 12px; }
#pepper-profile .chart-box h4 { margin: 0 0 10px; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); }
#pepper-profile .view-panel { display: none; }
#pepper-profile .view-panel.is-on { display: block; }
#pepper-profile .view-lead {
  margin: 0 0 16px;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.5;
}
#pepper-profile .teaser-panel {
  background:
    radial-gradient(circle at 90% 10%, rgba(255, 217, 94, .35), transparent 8rem),
    var(--card);
}
#pepper-profile .teaser-actions {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}
#pepper-profile .teaser-actions .btn { text-align: center; }
#pepper-profile .chart-container.radar-chart canvas {
  display: block;
  width: 100% !important;
  height: 100% !important;
}
#pepper-profile .gchart .axis, #pepper-profile .radar-label { font-size: 11px; fill: #444; }
#pepper-profile .chart-legend { display: flex; gap: 10px; align-items: center; font-size: 12px; margin-top: 6px; }
#pepper-profile .lg { width: 18px; height: 3px; display: inline-block; }
#pepper-profile .lg.navy { background: #1a3a5c; }
#pepper-profile .lg.green { background: #2d6a4f; }
#pepper-profile .bars, #pepper-profile .bars.grouped { display: flex; align-items: flex-end; gap: 10px; height: 160px; }
#pepper-profile .year-col { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; height: 100%; gap: 4px; }
#pepper-profile .year-col .pair { display: flex; align-items: flex-end; gap: 3px; width: 100%; height: 100%; }
#pepper-profile .year-col .col { display: block; width: 100%; min-height: 2px; border-radius: 4px 4px 0 0; background: #1a3a5c; }
#pepper-profile .year-col .col.navy { background: #1a3a5c; }
#pepper-profile .year-col .col.gold { background: #c9a84c; }
#pepper-profile .year-col .col.green { background: #2d6a4f; }
#pepper-profile .year-col .col.red { background: #c1121f; }
#pepper-profile .table-wrap { overflow-x: auto; }
#pepper-profile .comp-table, #pepper-profile .ind-table { width: 100%; border-collapse: collapse; font-size: 13px; }
#pepper-profile .comp-table th, #pepper-profile .ind-table th { text-align: left; padding: 10px; background: #2d2455; color: #fff; }
#pepper-profile .comp-table td, #pepper-profile .ind-table td { padding: 9px 10px; border-bottom: 1px solid var(--border); }
#pepper-profile .comp-table .num, #pepper-profile .ind-table .num { text-align: right; white-space: nowrap; }
#pepper-profile .rating-dot { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 6px; background: #ccc; }
#pepper-profile .dot-5 { background: #2d6a4f; }
#pepper-profile .dot-4 { background: #74b49b; }
#pepper-profile .dot-3 { background: #c9a84c; }
#pepper-profile .dot-2 { background: #e07a5f; }
#pepper-profile .dot-1 { background: #c1121f; }
#pepper-profile .year-selector { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 14px; }
#pepper-profile .year-btn {
  border: 1px solid var(--border);
  background: #fff;
  border-radius: 999px;
  padding: 6px 12px;
  font-weight: 700;
  cursor: pointer;
}
#pepper-profile .year-btn.active { background: #2d2455; color: #fff; border-color: #2d2455; }
#pepper-profile .bilan-struct { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 14px; }
#pepper-profile .struct-line { display: flex; justify-content: space-between; gap: 10px; padding: 7px 0; border-bottom: 1px solid var(--border); font-size: 13px; }
#pepper-profile .struct-line.total { border-top: 2px solid #2d2455; border-bottom: 0; font-weight: 800; margin-top: 6px; }
#pepper-profile .stack-row { display: grid; grid-template-columns: 70px 1fr; gap: 8px; align-items: center; margin-bottom: 10px; font-size: 12px; font-weight: 700; }
#pepper-profile .stack { display: flex; height: 28px; overflow: hidden; border-radius: 6px; background: #eee; }
#pepper-profile .stack span { height: 100%; }
#pepper-profile .stack span:nth-child(1) { background: #1a3a5c; }
#pepper-profile .stack span:nth-child(2) { background: #2d6a4f; }
#pepper-profile .stack span:nth-child(3) { background: #c9a84c; }
#pepper-profile .stack span:nth-child(4) { background: #e07a5f; }
#pepper-profile .stack span:nth-child(5) { background: #7b6d8d; }
#pepper-profile .stack span:nth-child(6) { background: #a8c5da; }
#pepper-profile .stack span:nth-child(7) { background: #c1121f; }
#pepper-profile .stack span:nth-child(8) { background: #74b49b; }
#pepper-profile .stack span:nth-child(9) { background: #888; }
#pepper-profile .rating-bar-wrap { display: flex; align-items: center; gap: 8px; min-width: 120px; }
#pepper-profile .rating-bar { flex: 1; height: 6px; border-radius: 99px; background: #e9ecef; overflow: hidden; }
#pepper-profile .rating-bar span { display: block; height: 100%; }
#pepper-profile .fill-5 { width: 100%; background: #2d6a4f; }
#pepper-profile .fill-4 { width: 80%; background: #74b49b; }
#pepper-profile .fill-3 { width: 60%; background: #c9a84c; }
#pepper-profile .fill-2 { width: 40%; background: #e07a5f; }
#pepper-profile .fill-1 { width: 20%; background: #c1121f; }
#pepper-profile .fill-n { width: 0; background: #ccc; }
#pepper-profile .ind-table .expl { color: var(--muted); font-size: 12px; }
#pepper-profile .qual-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
#pepper-profile .qual-card { padding: 16px; border: 1px solid var(--border); border-radius: 12px; background: var(--chip); }
#pepper-profile .qual-card h4 { margin: 0 0 8px; font-size: 13px; text-transform: uppercase; letter-spacing: .06em; }
#pepper-profile .qual-card p { margin: 0; font-size: 14px; line-height: 1.55; }
@media (max-width: 900px) {
  #pepper-profile .kpi-grid,
  #pepper-profile .chart-grid,
  #pepper-profile .bilan-struct,
  #pepper-profile .qual-grid { grid-template-columns: 1fr; }
}

/* Factory-only extras (maps, chrome, paywall helpers). */
html.yufi-full,
html.yufi-full body {
  overflow: auto;
}
html.yufi-full body > :not(.soon) {
  display: revert;
}
#pepper-profile .hero {
  padding: 0;
}
#pepper-profile .map-frame iframe {
  display: block;
  width: 100%;
  height: 280px;
  border: 0;
  border-radius: 16px;
  background: #e8eef6;
}
#pepper-profile .locked-preview .ghost-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px;
}
#pepper-profile .locked-preview .ghost-card {
  min-height: 92px;
  border-radius: 14px;
  background: repeating-linear-gradient(
    -12deg,
    var(--chip, #f1f3f8),
    var(--chip, #f1f3f8) 12px,
    #e6e9f2 12px,
    #e6e9f2 24px
  );
}
#pepper-profile a.location-card {
  text-align: left;
  text-decoration: none;
}

