/* BlackFox · Section « Création web » — additif, styles isolés (préfixe bfw) */
#creation-web{--c:#22e4ff;--v:#a855f7;--f:#f5b94a;--ok:#3dffa8;--ink:#e8ecf4;--dim:#9aa3b5;--mute:#6b7385;--ln:rgba(255,255,255,.08);
  position:relative;z-index:1;max-width:1440px;margin:0 auto;padding:96px 16px;color:var(--ink);font-family:"Space Grotesk",system-ui,sans-serif}
@media(min-width:640px){#creation-web{padding:144px 32px}}
#creation-web *{box-sizing:border-box}
.bfw-mono{font-family:"JetBrains Mono",ui-monospace,monospace}
.bfw-eyebrow{display:flex;align-items:center;gap:12px;font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--c)}
.bfw-eyebrow i{display:block;width:40px;height:1px;background:linear-gradient(90deg,var(--c),transparent)}
.bfw-eyebrow b{font-weight:400;color:var(--mute)}
.bfw-new{font-size:10px;letter-spacing:.18em;padding:4px 10px;border-radius:999px;border:1px solid rgba(61,255,168,.35);color:var(--ok);background:rgba(61,255,168,.06)}
.bfw-head{display:grid;gap:28px;margin-top:22px;align-items:end}
@media(min-width:1024px){.bfw-head{grid-template-columns:1.5fr 1fr}}
.bfw-h2{font-size:clamp(2.6rem,6.2vw,5.4rem);line-height:.98;letter-spacing:-.035em;font-weight:500;margin:0}
.bfw-grad{background:linear-gradient(90deg,var(--c),#7dd3fc 40%,var(--v));-webkit-background-clip:text;background-clip:text;color:transparent}
.bfw-lead{color:var(--dim);font-size:15px;line-height:1.65;max-width:440px;margin:0}

/* Scène 3D */
.bfw-stage{position:relative;margin-top:56px;height:min(62vw,600px);min-height:380px;border-radius:28px;overflow:hidden;border:1px solid var(--ln);
  background:radial-gradient(800px 400px at 70% 30%,rgba(168,85,247,.16),transparent 60%),radial-gradient(700px 380px at 20% 80%,rgba(34,228,255,.12),transparent 60%),#07080b}
.bfw-stage::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at center,#000 30%,transparent 80%)}
.bfw-stage canvas{position:absolute;inset:0;width:100%!important;height:100%!important}
.bfw-hud{position:absolute;font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);padding:10px 12px;border:1px solid var(--ln);border-radius:12px;background:rgba(8,10,16,.62);backdrop-filter:blur(10px);pointer-events:none}
.bfw-hud b{display:block;color:#fff;font-size:20px;letter-spacing:0;font-family:"Space Grotesk",sans-serif;font-weight:500;margin-top:4px}
.bfw-hud .ok{color:var(--ok)}
.bfw-hud.tl{top:20px;left:20px}.bfw-hud.tr{top:20px;right:20px;text-align:right}.bfw-hud.bl{bottom:20px;left:20px}.bfw-hud.br{bottom:20px;right:20px;text-align:right}
.bfw-corner{position:absolute;width:18px;height:18px;border-color:var(--c);border-style:solid;opacity:.7}
.bfw-corner.a{top:10px;left:10px;border-width:1px 0 0 1px}.bfw-corner.b{top:10px;right:10px;border-width:1px 1px 0 0}.bfw-corner.c{bottom:10px;left:10px;border-width:0 0 1px 1px}.bfw-corner.d{bottom:10px;right:10px;border-width:0 1px 1px 0}
@media(max-width:640px){.bfw-hud.tr,.bfw-hud.bl{display:none}}

/* Cartes génériques */
.bfw-card{position:relative;border-radius:24px;border:1px solid var(--ln);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));backdrop-filter:blur(14px);padding:28px;overflow:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .45s}
.bfw-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(380px circle at var(--mx,50%) var(--my,0%),rgba(34,228,255,.09),transparent 45%);opacity:0;transition:opacity .3s}
.bfw-card:hover::after{opacity:1}
.bfw-card:hover{transform:translateY(-5px);border-color:rgba(34,228,255,.3);box-shadow:0 30px 70px rgba(0,0,0,.5),0 0 50px rgba(34,228,255,.07)}
@property --bfwa{syntax:'<angle>';inherits:false;initial-value:0deg}
.bfw-neon::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:conic-gradient(from var(--bfwa),transparent 0 55%,var(--c) 68%,var(--v) 80%,var(--f) 88%,transparent 96%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:bfwspin 4.5s linear infinite}
@keyframes bfwspin{to{--bfwa:360deg}}

/* Packs */
.bfw-packs{display:grid;gap:18px;margin-top:22px}
@media(min-width:900px){.bfw-packs{grid-template-columns:repeat(3,1fr)}}
.bfw-k{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.bfw-pack h3{font-size:26px;font-weight:500;letter-spacing:-.02em;margin:14px 0 6px}
.bfw-pack p{color:var(--dim);font-size:14px;line-height:1.6;margin:0 0 20px;min-height:44px}
.bfw-price{font-size:46px;font-weight:500;letter-spacing:-.04em;line-height:1}
.bfw-price small{font-size:14px;color:var(--mute);letter-spacing:0;margin-left:4px}
.bfw-delay{display:inline-flex;align-items:center;gap:8px;margin:14px 0 22px;font-family:"JetBrains Mono",monospace;font-size:11px;color:var(--c);letter-spacing:.1em}
.bfw-delay::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 10px var(--c)}
.bfw-list{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:10px;font-size:14px;color:#cdd3df}
.bfw-list li{display:flex;gap:10px;align-items:flex-start}
.bfw-list li::before{content:"";flex:0 0 14px;height:14px;margin-top:3px;border-radius:4px;background:rgba(61,255,168,.12);border:1px solid rgba(61,255,168,.45);box-shadow:inset 0 0 0 3px #07080b,inset 0 0 0 7px rgba(61,255,168,.7)}
.bfw-badge{position:absolute;top:24px;right:24px;font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.16em;padding:5px 11px;border-radius:999px;color:#03141a;background:linear-gradient(90deg,var(--c),#7dd3fc);font-weight:600}
.bfw-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 20px;border-radius:999px;font:600 14px "Space Grotesk",sans-serif;cursor:pointer;transition:.25s;border:1px solid var(--ln);color:#fff;background:rgba(255,255,255,.04);text-decoration:none}
.bfw-btn:hover{border-color:var(--c);color:var(--c)}
.bfw-btn.p{border:0;color:#03141a;background:linear-gradient(90deg,var(--c),#5eead4);box-shadow:0 0 30px rgba(34,228,255,.35)}
.bfw-btn.p:hover{color:#03141a;box-shadow:0 0 46px rgba(34,228,255,.55);transform:translateY(-1px)}
.bfw-strip{margin-top:18px;display:grid;gap:18px;align-items:center}
@media(min-width:900px){.bfw-strip{grid-template-columns:1.4fr 1fr auto}}
.bfw-strip h4{margin:6px 0 0;font-size:20px;font-weight:500}

/* Modules */
.bfw-sub{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:96px 0 0;flex-wrap:wrap}
.bfw-sub h3{font-size:clamp(1.8rem,3.4vw,2.8rem);font-weight:500;letter-spacing:-.03em;margin:14px 0 0;line-height:1.05}
.bfw-mods{display:grid;gap:14px;margin-top:28px}
@media(min-width:700px){.bfw-mods{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.bfw-mods{grid-template-columns:repeat(3,1fr)}}
.bfw-mod{display:flex;gap:16px;align-items:flex-start;padding:22px}
.bfw-ico{flex:0 0 46px;height:46px;border-radius:14px;display:grid;place-items:center;border:1px solid rgba(34,228,255,.28);background:rgba(34,228,255,.06);color:var(--c)}
.bfw-ico svg{width:22px;height:22px}
.bfw-mod h4{margin:0 0 4px;font-size:16px;font-weight:600}
.bfw-mod p{margin:0;color:var(--dim);font-size:13.5px;line-height:1.55}
.bfw-mod .bfw-k{display:block;margin-top:10px;color:var(--f)}

/* Double verrou */
.bfw-lock{margin-top:18px;display:grid;gap:14px}
@media(min-width:900px){.bfw-lock{grid-template-columns:repeat(4,1fr)}}
.bfw-lock .bfw-card{padding:20px}
.bfw-lock b{display:block;font-size:15px;margin:10px 0 4px}
.bfw-lock span{color:var(--dim);font-size:13px;line-height:1.5}

/* Configurateur */
.bfw-cfg{display:grid;gap:18px;margin-top:28px}
@media(min-width:1024px){.bfw-cfg{grid-template-columns:1.35fr 1fr}}
.bfw-opts{display:grid;gap:10px}
@media(min-width:640px){.bfw-opts.three{grid-template-columns:repeat(3,1fr)}.bfw-opts.two{grid-template-columns:repeat(2,1fr)}}
.bfw-opt{position:relative;display:block;cursor:pointer;border:1px solid var(--ln);border-radius:16px;padding:16px;background:rgba(255,255,255,.02);transition:.25s}
.bfw-opt:hover{border-color:rgba(34,228,255,.35)}
.bfw-opt input{position:absolute;opacity:0;pointer-events:none}
.bfw-opt b{display:block;font-size:15px;font-weight:600}
.bfw-opt span{display:block;font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--dim);margin-top:4px}
.bfw-opt:has(input:checked){border-color:var(--c);background:rgba(34,228,255,.07);box-shadow:0 0 0 1px rgba(34,228,255,.35),0 0 30px rgba(34,228,255,.12)}
.bfw-opt:has(input:checked)::after{content:"";position:absolute;top:14px;right:14px;width:9px;height:9px;border-radius:50%;background:var(--c);box-shadow:0 0 10px var(--c)}
.bfw-opt.inc{opacity:.55;pointer-events:none}
.bfw-opt.inc span::after{content:" · inclus";color:var(--ok)}
.bfw-lbl{display:block;font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin:22px 0 10px}
.bfw-lbl:first-child{margin-top:0}
.bfw-in{width:100%;padding:14px 16px;border-radius:14px;border:1px solid var(--ln);background:rgba(4,5,8,.7);color:#fff;font:15px "Space Grotesk",sans-serif;outline:none;transition:.2s}
.bfw-in:focus{border-color:var(--c);box-shadow:0 0 0 3px rgba(34,228,255,.12),0 0 24px rgba(34,228,255,.15)}
textarea.bfw-in{min-height:110px;resize:vertical}
.bfw-row{display:grid;gap:10px}
@media(min-width:640px){.bfw-row{grid-template-columns:1fr 1fr}}
.bfw-step{display:flex;align-items:center;gap:8px}
.bfw-step button{width:34px;height:34px;border-radius:10px;border:1px solid var(--ln);background:rgba(255,255,255,.04);color:#fff;font-size:18px;cursor:pointer}
.bfw-step button:hover{border-color:var(--c);color:var(--c)}
.bfw-step output{min-width:28px;text-align:center;font-family:"JetBrains Mono",monospace}
.bfw-sum{position:sticky;top:96px;align-self:start}
.bfw-total{font-size:56px;font-weight:500;letter-spacing:-.04em;line-height:1;margin:10px 0 4px}
.bfw-lines{list-style:none;padding:0;margin:18px 0;display:grid;gap:8px;font-size:13.5px;color:#cdd3df;border-top:1px solid var(--ln);padding-top:16px}
.bfw-lines li{display:flex;justify-content:space-between;gap:12px}
.bfw-lines li span:last-child{font-family:"JetBrains Mono",monospace;color:#fff}
.bfw-note{font-size:12px;color:var(--mute);line-height:1.5;margin:12px 0 0}
.bfw-ck{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--dim);margin:16px 0;cursor:pointer}
.bfw-ck input{accent-color:#22e4ff;margin-top:3px}
.bfw-done{display:none;text-align:center;padding:26px 10px}
.bfw-done.on{display:block}
.bfw-done b{display:block;font-size:22px;margin:10px 0 6px}
.bfw-rv{opacity:0;transform:translateY(30px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}
.bfw-rv.in{opacity:1;transform:none}
.bfw-navnew{position:relative}
.bfw-navnew::after{content:"";position:absolute;top:6px;right:2px;width:5px;height:5px;border-radius:50%;background:#3dffa8;box-shadow:0 0 8px #3dffa8}
@media(prefers-reduced-motion:reduce){.bfw-neon::before{animation:none}.bfw-rv{opacity:1;transform:none;transition:none}}
