/* Ubiqod by Taqt — charte reprise de taqt.com
   Polices : substituts Google Fonts de mozaic-geo (titres) et neulis-sans (texte) */
:root{
  --ink:#030412; --ink-700:#333655;
  --gray-600:#474a69; --gray-500:#64678b; --gray-400:#9497b8; --gray-300:#cbcde1;
  --gray-200:#e2e3f0; --gray-100:#f1f2f9; --gray-50:#f8f8fc; --bg:#fafafb;
  --blue:#2134fe; --blue-50:#ebf4ff; --pink:#fe1e5d; --pink-50:#ffebf0;
  --violet-50:#f5f3ff; --green:#10b981; --green-50:#ecfdf5;
  --grad:linear-gradient(45deg,#2134fe,#fe1e5d);
  --font-h:"Outfit",mozaic-geo-variable,system-ui,sans-serif;
  --font-b:"Figtree",neulis-sans,system-ui,sans-serif;
  --r:1rem; --r-lg:1.5rem; --r-xl:2rem;
  --shadow:0 1px 2px rgba(3,4,18,.04),0 12px 32px -12px rgba(3,4,18,.14);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-b);font-size:1rem;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--font-h);font-weight:600;letter-spacing:-.02em;margin:0;line-height:1.12}
p{margin:0}
.wrap{max-width:1200px;margin:0 auto;padding:0 16px}
@media(min-width:768px){.wrap{padding:0 32px}}
section{padding:96px 0}
@media(max-width:767px){section{padding:64px 0}}

/* ---------- utilitaires ---------- */
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-h);font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.eyebrow::before{content:"";width:18px;height:2px;border-radius:2px;background:var(--grad)}
.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.h2{font-size:clamp(1.875rem,3.6vw,2.75rem)}
.sec-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;margin:0 auto 48px;max-width:720px}
.sec-head p{font-size:1.125rem;color:var(--gray-600)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-h);font-weight:600;font-size:1rem;text-decoration:none;border-radius:999px;padding:.85rem 1.5rem;border:1px solid transparent;transition:background .2s,transform .2s,box-shadow .2s;white-space:nowrap}
.btn svg{width:18px;height:18px}
.btn-primary{background:var(--ink);color:#fff}
.btn-primary:hover{box-shadow:0 8px 24px -8px rgba(33,52,254,.55);transform:translateY(-1px)}
.btn-secondary{background:#fff;color:var(--ink);border-color:var(--gray-200)}
.btn-secondary:hover{border-color:var(--gray-400)}
.btn-light{background:#fff;color:var(--ink)}
.btn-ghost{color:#fff;border-color:rgba(255,255,255,.35)}
.btn-ghost:hover{border-color:#fff}
.btn-sm{padding:.6rem 1.1rem;font-size:.9375rem}
.btn small{font-family:var(--font-b);font-weight:500;font-size:.75rem;opacity:.7}
.ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.link{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-h);font-weight:600;text-decoration:none}
.link svg{width:16px;height:16px;transition:transform .2s}
.link:hover svg{transform:translateX(3px)}

/* ---------- header ---------- */
.header{position:sticky;top:0;z-index:50;background:rgba(250,250,251,.85);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid transparent;transition:border-color .2s}
.header.scrolled{border-bottom-color:var(--gray-200)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px;gap:24px}
.logo{display:flex;align-items:flex-end;gap:.5rem;text-decoration:none}
.logo-img{height:30px;width:auto}
.logo-by{font-family:var(--font-h);font-size:.8125rem;font-weight:500;color:var(--gray-500);white-space:nowrap;line-height:1;padding-bottom:1px}
.nav-links{display:flex;gap:28px;list-style:none;margin:0;padding:0}
.nav-links a,.nav-aux{text-decoration:none;font-weight:500;color:var(--ink-700);font-size:.9375rem;white-space:nowrap}
.nav-links a:hover,.nav-aux:hover{color:var(--ink)}
.nav-cta{display:flex;align-items:center;gap:16px}
.burger{display:none;background:none;border:0;padding:8px;margin-right:-8px;cursor:pointer;color:var(--ink)}
.burger svg{width:26px;height:26px}
@media(max-width:1023px){
  .nav-links,.nav-aux{display:none}
  .burger{display:block}
  .header.open .nav-links{display:flex;flex-direction:column;gap:0;position:absolute;left:0;right:0;top:72px;background:#fff;border-bottom:1px solid var(--gray-200);padding:8px 16px 16px}
  .header.open .nav-links a{display:block;padding:12px 0;font-size:1.0625rem;border-bottom:1px solid var(--gray-100)}
}
@media(max-width:480px){.nav-cta .btn{display:none}}

/* ---------- hero ---------- */
.hero{padding:56px 0 80px;text-align:center;background:radial-gradient(900px 480px at 80% -10%,rgba(33,52,254,.10),transparent 60%),radial-gradient(700px 420px at 10% 0,rgba(254,30,93,.07),transparent 60%),linear-gradient(180deg,#f5f6ff,var(--bg) 70%)}
.hero h1{font-size:clamp(2.375rem,5.6vw,4.25rem);line-height:1.04;max-width:960px;margin:16px auto 20px}
.hero .sub{font-size:clamp(1.0625rem,1.6vw,1.25rem);color:var(--gray-600);max-width:640px;margin:0 auto 32px}
.btn-trial{flex-direction:column;gap:0;line-height:1.2;padding:.55rem 1.5rem}
@media(max-width:767px){.hero{padding:48px 0 64px}}

/* schéma captation -> Ubiqod -> logiciels */
.flow{display:grid;grid-template-columns:minmax(0,1fr) minmax(48px,110px) minmax(0,.8fr) minmax(48px,110px) minmax(0,1fr);max-width:1080px;margin:56px auto 0;text-align:left}
.flow-col{display:grid;grid-auto-rows:1fr}
.flow-col > *{margin:6px 0;align-self:center}
.src{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--gray-200);border-radius:var(--r-lg);padding:12px 16px 12px 12px;box-shadow:var(--shadow)}
.thumb{width:84px;height:84px;flex:none;border-radius:.75rem;background:#fff;border:1px solid var(--gray-100);padding:6px}
.thumb img{width:100%;height:100%;object-fit:contain}
.src b{display:block;font-family:var(--font-h);font-size:1.0625rem;font-weight:600}
.src span{font-size:.875rem;color:var(--gray-500)}
.hub{align-self:center;background:var(--ink);color:#fff;border-radius:var(--r-xl);padding:32px 24px;text-align:center;position:relative;box-shadow:0 30px 60px -30px rgba(33,52,254,.55);
  background-image:radial-gradient(260px 160px at 50% 0,rgba(33,52,254,.45),transparent 70%),radial-gradient(240px 140px at 50% 110%,rgba(254,30,93,.35),transparent 70%)}
.hub::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.hub-logo{height:40px;width:auto;margin:0 auto}
.hub ul{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.hub li{display:flex;align-items:center;justify-content:center;gap:.4rem;font-size:.875rem;color:var(--gray-300)}
.hub li svg{width:15px;height:15px;color:#6ee7b7}
.dest{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--gray-200);border-radius:999px;padding:10px 18px 10px 10px;font-family:var(--font-h);font-weight:600;box-shadow:var(--shadow)}
.dest .ic{width:40px;height:40px}
.dest-ai{border-color:transparent;background:linear-gradient(#fff,#fff) padding-box,var(--grad) border-box;border:1.5px solid transparent}
.wire{width:100%;height:100%;overflow:visible}
.wire path{fill:none;vector-effect:non-scaling-stroke;stroke-width:2}
.wire .base{stroke:var(--gray-200)}
.wire .pulse{stroke-dasharray:6 14;animation:dash 1.2s linear infinite}
@keyframes dash{to{stroke-dashoffset:-20}}
.flow-arrow{display:none}
@media(max-width:899px){
  .flow{display:flex;flex-direction:column;gap:12px;margin-top:48px}
  .wire{display:none}
  .flow-arrow{display:grid;place-items:center;color:var(--gray-400)}
  .flow-arrow svg{width:24px;height:24px;transform:rotate(90deg)}
  .flow-col{grid-auto-rows:auto;grid-template-columns:repeat(3,1fr);gap:10px}
  .flow-col > *{margin:0}
  .src{flex-direction:column;text-align:center;gap:8px;padding:12px 8px}
  .thumb{width:64px;height:64px}
  .src span{font-size:.75rem}
  .src b{font-size:.9375rem}
  .flow-dests{grid-template-columns:1fr 1fr}
  .dest{font-size:.875rem;padding:8px 12px 8px 8px;border-radius:var(--r)}
  .dest .ic{width:32px;height:32px}
  .hub{padding:22px}
  .hub ul{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:6px 14px}
}

/* ---------- icônes colorées ---------- */
.ic{width:48px;height:48px;border-radius:.9rem;display:grid;place-items:center;flex:none}
.ic svg{width:22px;height:22px}
.ic-blue{background:var(--blue-50);color:var(--blue)}
.ic-pink{background:var(--pink-50);color:var(--pink)}
.ic-violet{background:var(--violet-50);color:#6d28d9}
.ic-green{background:var(--green-50);color:#059669}
.ic-grad{background:var(--grad);color:#fff}

/* ---------- chiffres ---------- */
.stats{background:var(--ink);color:#fff;padding:56px 0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.stat b{display:block;font-family:var(--font-h);font-weight:600;font-size:clamp(2.25rem,4.4vw,3.5rem);letter-spacing:-.03em;line-height:1.05}
.stat span{color:var(--gray-300)}
@media(max-width:600px){.stats{padding:40px 0}.stats-grid{grid-template-columns:repeat(2,1fr);gap:20px 8px}.stat b{font-size:1.75rem}.stat span{font-size:.8125rem;display:block;line-height:1.3}}

/* ---------- bénéfices ---------- */
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:900px){.cards3{grid-template-columns:1fr}}
.benefit{background:#fff;border:1px solid var(--gray-200);border-radius:var(--r-xl);padding:32px}
.benefit h3{font-size:1.5rem;margin:20px 0 8px}
.benefit p{color:var(--gray-600)}

/* ---------- captation ---------- */
.capture{background:#fff;border-top:1px solid var(--gray-200);border-bottom:1px solid var(--gray-200)}
.prod{border:1px solid var(--gray-200);border-radius:var(--r-xl);overflow:hidden;display:flex;flex-direction:column;background:var(--bg)}
.prod-img{height:220px;display:grid;place-items:center;padding:24px;background:linear-gradient(45deg,#f7f3fc,#fef3f7);overflow:hidden}
.prod-img img{max-height:172px;width:auto;object-fit:contain}
.prod-body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:8px;flex:1}
.tag{align-self:flex-start;font-size:.75rem;font-weight:600;font-family:var(--font-h);border-radius:999px;padding:.25rem .65rem;margin-bottom:4px}
.tag-gray{background:var(--gray-100);color:var(--ink-700)}
.tag-pink{background:var(--pink-50);color:#e40141}
.tag-blue{background:var(--blue-50);color:var(--blue)}
.prod h3{font-size:1.5rem}
.prod .pitch{font-size:1.0625rem;font-weight:500}
.prod .best{color:var(--gray-600);font-size:.9375rem;margin-bottom:12px}
.prod .link{margin-top:auto}
.mix{text-align:center;margin-top:28px;color:var(--gray-600)}
.mix b{color:var(--ink);font-family:var(--font-h)}

/* ---------- cas d'usage ---------- */
.cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:1023px){.cards4{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.cards4{grid-template-columns:1fr}}
.uc{background:#fff;border:1px solid var(--gray-200);border-radius:var(--r-lg);padding:26px}
.uc h3{font-size:1.25rem;margin:18px 0 6px}
.uc p{color:var(--gray-600);font-size:.9375rem}
.sectors{text-align:center;margin-top:28px;color:var(--gray-500);font-size:.9375rem}

/* ---------- intégrations ---------- */
.logos{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:960px;margin:0 auto}
@media(max-width:767px){.logos{grid-template-columns:repeat(2,1fr)}}
.logos div{height:76px;background:#fff;border:1px solid var(--gray-200);border-radius:var(--r);display:grid;place-items:center;padding:16px}
.logos img{max-height:30px;max-width:100%;width:auto;object-fit:contain}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px}
.chip{font-size:.875rem;font-weight:600;font-family:var(--font-h);background:#fff;border:1px solid var(--gray-200);color:var(--ink-700);border-radius:999px;padding:.45rem .9rem}
.chip-strong{background:var(--ink);color:#fff;border-color:var(--ink)}

/* ---------- partenaires ---------- */
.partner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;border:1px solid var(--gray-200);background:#fff;border-radius:var(--r-xl);padding:32px 36px}
.partner h3{font-size:clamp(1.25rem,2.2vw,1.625rem);max-width:640px}
.partner p{color:var(--gray-600);margin-top:6px}

/* ---------- CTA final ---------- */
.final{padding:0 0 96px}
.final-box{border-radius:var(--r-xl);background:var(--grad);color:#fff;padding:64px 32px;text-align:center}
.final-box h2{font-size:clamp(1.875rem,3.8vw,3rem);margin-bottom:28px}

/* ---------- footer ---------- */
.footer{background:var(--ink);color:var(--gray-300);padding:48px 0 28px;font-size:.9375rem}
.foot-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px}
.foot-logo{height:28px;width:auto}
.foot-taqt{display:flex;align-items:center;gap:10px;font-size:.8125rem;color:var(--gray-400);margin-top:10px}
.foot-taqt img{height:18px;width:auto}
.foot-links{display:flex;flex-wrap:wrap;gap:12px 28px;list-style:none;margin:0;padding:0}
.footer a{text-decoration:none;color:var(--gray-300)}
.footer a:hover{color:#fff}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;border-top:1px solid rgba(255,255,255,.1);margin-top:32px;padding-top:20px;font-size:.8125rem;color:var(--gray-400)}
.foot-bottom div{display:flex;flex-wrap:wrap;gap:18px}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* ---------- page tarifs ---------- */
.nav-links a[aria-current="page"]{color:var(--ink);font-weight:600}
.hero-sm{padding:64px 0 40px;text-align:center;background:linear-gradient(180deg,#f5f6ff,var(--bg) 80%)}
.hero-sm h1{font-size:clamp(2.25rem,5vw,3.75rem);line-height:1.06;margin:16px auto 18px;max-width:820px}
.hero-sm .sub{font-size:clamp(1.0625rem,1.6vw,1.1875rem);color:var(--gray-600);max-width:600px;margin:0 auto}
.plans{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:880px;margin:0 auto}
@media(max-width:760px){.plans{grid-template-columns:1fr;max-width:520px}}
.plan{background:#fff;border:1px solid var(--gray-200);border-radius:var(--r-xl);padding:32px;display:flex;flex-direction:column;gap:12px}
.plan h2{font-size:1.375rem}
.plan .for{color:var(--gray-500);font-size:.875rem;font-weight:500;margin-top:-6px}
.price{display:flex;align-items:baseline;gap:.4rem;font-family:var(--font-h)}
.price b{font-size:2.75rem;font-weight:600;letter-spacing:-.03em;line-height:1}
.price span{color:var(--gray-500);font-weight:500;font-size:1.125rem}
.plan .desc{color:var(--gray-600)}
.plan .key{display:flex;align-items:center;gap:.5rem;font-family:var(--font-h);font-weight:600;background:var(--gray-50);border:1px solid var(--gray-100);border-radius:var(--r);padding:.7rem .9rem;margin-top:4px}
.plan .key svg{width:18px;height:18px;color:var(--blue);flex:none}
.hero-sm .ctas{margin-top:28px}
.hero-sm .free{margin-top:14px;color:var(--gray-500);font-size:.9375rem}
.hero-sm .free a{color:var(--ink);font-weight:600}
.credit-cost{max-width:880px;margin:20px auto 0;text-align:center;color:var(--gray-600)}
.credit-cost b{color:var(--ink);font-family:var(--font-h)}
.included{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:860px;margin:0 auto}
.included .chip{display:inline-flex;align-items:center;gap:.45rem;font-size:.9375rem;padding:.55rem 1rem}
.included .chip svg{width:16px;height:16px;color:var(--green)}
.faq{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq details{background:#fff;border:1px solid var(--gray-200);border-radius:var(--r-lg);padding:0 24px}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-family:var(--font-h);font-weight:600;font-size:1.0625rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.5rem;font-weight:400;color:var(--gray-500);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 20px;color:var(--gray-600)}
