@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800;900&display=swap');:root{--bg:#0a0908;--panel:#151310;--panel2:#1b1813;--gold:#d8ae5a;--gold2:#f2d18c;--muted:#8d8981;--line:#30291e;--white:#f6f2e9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans',sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}.header{height:78px;padding:0 max(5vw,24px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #252018;background:#0b0a09ed;position:sticky;top:0;z-index:10;backdrop-filter:blur(18px)}.brand{font-family:Outfit,sans-serif;font-size:24px;font-weight:900;letter-spacing:2px;white-space:nowrap}.brand span:last-child,.mark{color:var(--gold)}.mark{font-size:29px;margin-right:8px}.header nav{display:flex;gap:34px;color:#c3bdb3;font-size:13px}.header nav a:hover{color:var(--gold)}.account{display:flex;gap:14px;align-items:center;font-size:12px;color:var(--muted)}.outline{background:transparent;border:1px solid #6d5834;border-radius:5px;padding:12px 19px;color:var(--gold2);font-weight:700}.outline:hover{background:#292217}.gold-btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:0;background:linear-gradient(110deg,#c69b49,#f0cd83);color:#171107;padding:15px 24px;border-radius:5px;font-weight:800;font-size:13px}.gold-btn:hover{filter:brightness(1.1)}.hero{min-height:630px;position:relative;overflow:hidden;padding:105px max(7vw,26px) 55px;background:radial-gradient(ellipse at 80% 48%,#43321a 0%,#1c170f 30%,#0a0908 67%)}.hero .eyebrow{position:relative}.eyebrow{font-size:11px;font-weight:800;letter-spacing:3px;color:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Outfit,sans-serif}h1{font-size:clamp(50px,6.4vw,104px);line-height:1.03;letter-spacing:-4px;margin:27px 0 25px;position:relative;z-index:1;font-weight:900}em{font-style:normal;color:var(--gold)}.hero p{color:#b7b0a5;max-width:510px;font-size:16px;line-height:1.9;position:relative}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:30px;position:relative}.text-btn{font-size:13px;color:#d9c49b}.hero-stats{display:flex;gap:60px;margin-top:86px;position:relative}.hero-stats div{display:flex;flex-direction:column;gap:5px}.hero-stats strong{font:800 29px Outfit;color:var(--gold2)}.hero-stats small{font-size:10px;letter-spacing:1.3px;color:#a49a89}.hero-art{position:absolute;right:6%;top:65px;width:43vw;max-width:610px;aspect-ratio:1;display:grid;place-items:center;opacity:.8}.disc{width:83%;aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle at center,#16120d 0px,#1a1611 2px,#080807 4px,#272016 6px);box-shadow:0 0 0 1px #9e7539,0 0 90px #bd873530,40px 45px 100px #000;display:grid;place-items:center;transform:rotate(-20deg)}.disc-inner{width:27%;aspect-ratio:1;border-radius:50%;background:radial-gradient(#f2d18c,#99702e);display:grid;place-items:center;text-align:center;color:#15100b;font:900 clamp(15px,2.5vw,36px)/1 Outfit;letter-spacing:1px;border:8px solid #20170b}.section{padding:95px max(7vw,26px)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:36px}.section h2{font-size:clamp(35px,4.3vw,60px);letter-spacing:-2px;margin:12px 0}.section-head p{color:var(--muted);margin:0}.mini-stat{color:#bcb3a1;font-size:10px;letter-spacing:1px}.dot{display:inline-block;background:#d8ae5a;width:7px;height:7px;border-radius:50%;margin-right:8px}.catalog{background:#100e0b}.toolbar{display:flex;gap:12px;margin-bottom:20px}.search-wrap{background:#191610;border:1px solid var(--line);padding:0 16px;display:flex;align-items:center;gap:10px;flex:1;color:var(--gold);font-size:22px;border-radius:5px}.search-wrap input{background:transparent;border:0;outline:0;color:white;width:100%;padding:15px 0;font-size:13px}.toolbar select{background:#191610;border:1px solid var(--line);color:#ddd1bb;border-radius:5px;padding:0 18px;min-width:150px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:10px;color:#8c806e;letter-spacing:1.7px;padding:16px;border-bottom:1px solid #4b3c26}td{padding:14px 16px;border-bottom:1px solid #2b251b;font-size:12px;color:#bcb4a8}td:nth-child(2){min-width:260px}td b{display:block;color:#eee8dd;font-size:14px;margin-bottom:5px}td small{color:#8f8779}tr:hover td{background:#1d1913}.play,.add{width:35px;height:35px;border:1px solid #6b5734;border-radius:50%;background:#282014;color:var(--gold);font-size:15px}.add.active{background:var(--gold);color:#16110a}.hint{font-size:12px;color:#857d71;margin-top:20px;line-height:1.7}.pack-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.pack-card{border:1px solid var(--line);background:linear-gradient(150deg,#211b13,#13110e);padding:23px 16px;border-radius:8px;cursor:pointer;transition:.2s}.pack-card:hover,.pack-card.active{border-color:var(--gold);transform:translateY(-3px)}.pack-card.active{box-shadow:0 0 0 1px #cba75a50}.pack-card .num{font:800 42px Outfit;color:#f0dfbc}.pack-card .unit{font-size:12px;color:var(--muted)}.pack-card .pack-price{font:800 27px Outfit;color:var(--gold);margin-top:26px}.pack-card .choose{margin-top:18px;font-size:11px;letter-spacing:1px;color:#c5ad7b}.selection-panel{display:flex;justify-content:space-between;gap:30px;align-items:center;border:1px solid #4c3c23;border-radius:8px;background:#1b1710;margin-top:30px;padding:28px}.selection-panel>div:first-child{flex:1}.selection-panel h3{font-size:30px;margin:12px 0}.selection-panel h3 small{font:400 14px 'DM Sans';color:var(--muted)}.progress{height:5px;background:#342b1e;max-width:530px;border-radius:5px;overflow:hidden}.progress div{height:100%;background:var(--gold);width:0;transition:.2s}.selection-panel p{font-size:12px;color:var(--muted);margin:10px 0 0}.selection-actions{display:flex;gap:12px}.plans{background:#100e0b}.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1000px;margin:auto}.plan{position:relative;background:#171410;border:1px solid var(--line);padding:38px;border-radius:9px}.plan.featured{border-color:var(--gold);background:linear-gradient(140deg,#292015,#15120e)}.featured-tag{position:absolute;right:20px;top:-13px;background:var(--gold);color:#1c160c;padding:7px 12px;border-radius:3px;font-size:10px;font-weight:800}.price{font:800 47px Outfit;margin:20px 0;color:#fff}.price small{font:400 14px 'DM Sans';color:var(--muted)}.plan p{color:#a89f91;font-size:13px;line-height:1.7}.plan ul{padding:0;list-style:none;margin:25px 0 30px}.plan li{margin:14px 0;font-size:13px;color:#e2d6c3}.plan li:before{content:'✓';color:var(--gold);margin-right:12px}.plan-action{width:100%}.closing{text-align:center;padding:105px 20px;background:radial-gradient(ellipse at 50% 90%,#40301b,#0b0a08 70%)}.closing h2{font-size:clamp(42px,6vw,78px);line-height:1.08;margin:20px 0 35px}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:35px max(7vw,26px);color:#81776b;font-size:11px;border-top:1px solid var(--line)}footer .brand{color:white}.player{position:fixed;bottom:0;left:0;right:0;background:#201a12;border-top:1px solid #84652f;padding:13px 5%;z-index:12;display:flex;gap:18px;align-items:center;box-shadow:0 -10px 40px #0008}.player[hidden],.modal-backdrop[hidden]{display:none}.player button{border:0;background:var(--gold);color:#181208;border-radius:50%;width:38px;height:38px;font-weight:bold}.player-info{min-width:190px;max-width:300px;display:flex;flex-direction:column;gap:4px;font-size:12px}.player-info span{color:var(--muted)}.player-progress{height:5px;background:#51412b;flex:1}.player-progress div{height:100%;width:0;background:var(--gold)}.player>span{font-size:12px}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#000c;display:grid;place-items:center;padding:20px}.modal{position:relative;background:#1b1711;border:1px solid #9a7740;padding:42px;max-width:430px;width:100%;border-radius:10px}.modal h2{font-size:34px;margin:15px 0}.modal p{color:#aaa092;font-size:13px;line-height:1.7}.modal form{display:grid;gap:12px;margin-top:20px}.modal input{background:#0f0d0b;border:1px solid #4d3d28;border-radius:4px;padding:15px;color:white;min-width:0}.modal-close{position:absolute;right:16px;top:15px;background:none;border:0;color:white}.switch{background:none;border:0;color:var(--gold);padding:10px 0}.message{min-height:20px;color:var(--gold)!important}@media(max-width:900px){.hero-art{opacity:.23;right:-20%;width:80vw}.hero{min-height:550px}.hero-stats{margin-top:60px}.pack-grid{grid-template-columns:repeat(3,1fr)}.header nav{gap:15px}.account #userLabel{display:none}}@media(max-width:620px){.header{height:65px}.header nav{display:none}.brand{font-size:19px}.hero{padding-top:80px}.hero h1{letter-spacing:-2px}.hero-stats{gap:22px;flex-wrap:wrap}.hero-stats strong{font-size:23px}.section{padding:65px 18px}.section-head{display:block}.mini-stat{margin-top:20px}.toolbar{flex-wrap:wrap}.search-wrap{flex-basis:100%}.toolbar select{min-width:0;flex:1;padding:13px 8px}.pack-grid{grid-template-columns:repeat(2,1fr)}.selection-panel{display:block}.selection-actions{margin-top:22px;flex-wrap:wrap}.plan-grid{grid-template-columns:1fr}.plan{padding:28px}.player-info{min-width:90px}.player{gap:8px;padding:10px}.player-progress{min-width:30px}footer{display:block}footer span{display:block;margin-top:15px}}

/* DJ CLAN V2 · Black & Gold editorial upgrade */
.nav-price{display:block;color:var(--gold);font-size:10px;font-weight:800;margin-top:4px;letter-spacing:.2px}.header{height:86px}.header nav{align-items:center}.hero{min-height:740px;background:radial-gradient(ellipse at 76% 38%,#372719 0%,#14100b 43%,#090807 75%)}.hero h1{font-size:clamp(54px,6.7vw,112px);letter-spacing:-.065em;max-width:950px}.hero h1 em{text-shadow:0 0 50px #d7a64b18}.hero-actions{flex-wrap:wrap;gap:16px 25px}.hero-stats{margin-top:82px}.hero-art{right:3%;top:135px;width:42vw;max-width:640px;aspect-ratio:1.12;opacity:.88;transform:rotate(-9deg)}.dj-deck{width:100%;height:78%;background:linear-gradient(140deg,#35332f,#0c0d0e 35%,#242322 80%,#0c0b0a);border:8px solid #34302a;border-radius:20px;box-shadow:0 35px 95px #000,0 0 0 2px #86632d,0 0 90px #bd873526;padding:4%;transform:perspective(950px) rotateX(9deg)}.deck-top{display:flex;height:25%;gap:6%}.deck-display{flex:1;background:#0a1011;border:2px solid #403a30;border-radius:5px;color:#e8b95d;padding:12px;font:800 clamp(9px,1.3vw,17px) Outfit;letter-spacing:3px}.deck-display small{display:block;color:#6f7c78;font-size:7px;margin-top:5px}.wave-bars{color:#dcb05e;font-size:clamp(12px,2.5vw,28px);letter-spacing:4px;white-space:nowrap;overflow:hidden}.deck-knobs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:35%;place-items:center}.deck-knobs i,.mixer-row i{width:clamp(12px,2vw,24px);height:clamp(12px,2vw,24px);border-radius:50%;background:radial-gradient(circle at 35% 30%,#9c9486,#191817 55%);border:2px solid #71634e;box-shadow:0 4px 5px #000}.deck-bottom{display:flex;align-items:center;justify-content:space-between;gap:5%;height:54%}.jog{width:39%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:repeating-radial-gradient(circle,#0c0c0c 0 3px,#302d27 4px 6px,#0d0c0c 7px 9px);border:6px solid #8b7859;box-shadow:inset 0 0 30px #000,0 0 15px #c9a05855;animation:spin 17s linear infinite}.jog-center{display:grid;place-items:center;width:39%;aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,#dcb567,#6e542c);color:#16130e;font:900 clamp(14px,2.5vw,30px) Outfit}.deck-faders{height:75%;width:13%;display:flex;justify-content:space-between;gap:4px}.deck-faders span{width:3px;background:#4c4438;height:100%;position:relative}.deck-faders span:after{content:'';position:absolute;top:45%;left:-5px;width:13px;height:19px;background:#c9b08a;border-radius:3px}.deck-pads{display:flex;justify-content:space-between;gap:6px}.deck-pads i{width:11%;height:clamp(12px,2.8vw,34px);background:#b88d45;border:2px solid #e7c275;border-radius:4px;box-shadow:0 0 12px #a87e35aa}.deck-pads i:nth-child(3n){background:#51412d}.floating-label{position:absolute;bottom:0;right:0;font-size:10px;letter-spacing:4px;color:#e8c785}@keyframes spin{to{transform:rotate(360deg)}}.studio-section{padding:95px max(7vw,26px);background:linear-gradient(180deg,#0c0b09,#15110c)}.studio-heading{text-align:center;max-width:850px;margin:0 auto 42px}.studio-heading h2{font:900 clamp(38px,5vw,68px)/1.1 Outfit;margin:15px 0}.studio-heading p{color:#b2a898}.studio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.studio-card{position:relative;overflow:hidden;min-height:405px;border:1px solid #50402a;border-radius:12px;background:radial-gradient(ellipse at 50% 30%,#4a3621,#0b0b0b 68%);box-shadow:0 25px 50px #0005;transition:transform .3s,border-color .3s}.studio-card:hover{transform:translateY(-7px);border-color:#d8ae5a}.studio-copy{position:absolute;bottom:0;left:0;right:0;padding:30px 24px;background:linear-gradient(transparent,#090807 28%)}.studio-copy span{color:#d8ae5a;font-size:10px;letter-spacing:2px;font-weight:800}.studio-copy h3{font-size:27px;margin:10px 0 5px}.studio-copy p{color:#b2a797;font-size:12px;margin:0}.vinyl-scene{position:relative;height:310px}.vinyl-record{position:absolute;top:0;left:12%;width:74%;aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,#121111 0 3px,#292522 4px 5px,#0c0b0b 6px 8px);border:5px solid #35312b;box-shadow:0 15px 35px #000;display:grid;place-items:center;animation:spin 12s linear infinite}.vinyl-label{width:32%;aspect-ratio:1;border-radius:50%;background:#d7ae61;display:grid;place-items:center;text-align:center;color:#17120b;font:900 23px/1 Outfit}.vinyl-arm{position:absolute;right:13%;top:0;width:12px;height:180px;background:linear-gradient(90deg,#82745f,#d3c6ae,#5a4b37);transform:rotate(-25deg);transform-origin:top;border-radius:10px;box-shadow:3px 5px 10px #000}.laptop-scene{height:300px;padding:50px 12% 0}.laptop-screen{height:170px;border:10px solid #252525;border-bottom-width:15px;border-radius:12px 12px 3px 3px;background:linear-gradient(140deg,#131c20,#0b0d0e);box-shadow:0 0 40px #a17c3c55;padding:12px}.laptop-top{display:flex;justify-content:space-between;color:#e0b762;font:900 12px Outfit}.laptop-top span{color:#7d6951}.laptop-wave{color:#e6b764;white-space:nowrap;overflow:hidden;margin:30px 0 14px;font-size:23px}.laptop-tracks{display:grid;gap:5px}.laptop-tracks i{height:4px;background:linear-gradient(90deg,#ab813f 35%,#394046 35%)}.laptop-base{height:12px;background:linear-gradient(#7b7b7b,#282828);margin:0 -6%;border-radius:0 0 50% 50%}.mixer-scene{width:70%;height:275px;margin:12px auto 0;padding:35px 24px;background:linear-gradient(125deg,#2b2b2b,#090909);border:5px solid #4d4435;border-radius:18px;transform:perspective(550px) rotateX(18deg) rotate(-9deg);box-shadow:15px 25px 45px #000}.mixer-row{display:flex;justify-content:space-around;margin-bottom:18px}.mixer-sliders{display:flex;justify-content:space-around;height:85px}.mixer-sliders b{width:4px;height:80px;background:#5e5a52;position:relative}.mixer-sliders b:after{content:'';position:absolute;top:30px;left:-7px;width:18px;height:14px;background:#d0a75b}.mixer-meter{text-align:center;color:#d6aa59;letter-spacing:5px}.offer-strip{padding:28px max(7vw,26px);background:#241b10;border-top:1px solid #5c482a;border-bottom:1px solid #5c482a;display:grid;grid-template-columns:1.3fr 1fr 1fr;align-items:center;gap:20px}.offer-strip strong{display:block;font:800 26px Outfit;margin-top:6px}.offer-strip a{padding:16px 24px;border:1px solid #80643b;border-radius:7px;transition:background .2s}.offer-strip a:hover{background:#47351c}.offer-strip a small{display:block;color:#b8a68b;font-size:10px;letter-spacing:1.3px}.offer-strip a b{display:block;color:#f2d18c;font:800 22px Outfit;margin-top:7px}html{scroll-padding-top:90px}@media(max-width:950px){.studio-grid{grid-template-columns:repeat(2,1fr)}.studio-card:last-child{grid-column:1/-1}.hero-art{opacity:.25;right:-12%;width:70vw}.offer-strip{grid-template-columns:1fr 1fr}.offer-strip>div{grid-column:1/-1}}@media(max-width:620px){.header{height:68px}.hero{min-height:650px}.hero-art{width:105vw;right:-45%;top:140px;opacity:.18}.hero-actions{gap:13px}.hero-actions .text-btn{font-size:12px}.hero-stats{gap:25px;margin-top:55px}.studio-section{padding:65px 18px}.studio-grid{grid-template-columns:1fr}.studio-card:last-child{grid-column:auto}.studio-card{min-height:375px}.offer-strip{padding:25px 18px;grid-template-columns:1fr}.offer-strip>div{grid-column:auto}.offer-strip a{padding:15px}.offer-strip strong{font-size:23px}}@media(prefers-reduced-motion:reduce){.jog,.vinyl-record{animation:none}*{scroll-behavior:auto!important}}


/* DJ CLAN — Bibliothèque mobile : commandes toujours visibles.
   Portée volontairement limitée au tableau du catalogue. */
@media (max-width: 620px) {
  .catalog .table-wrap { width: 100%; max-width: 100%; overflow-x: hidden; }
  .catalog .table-wrap table { width: 100%; min-width: 0; table-layout: fixed; }
  .catalog .table-wrap th:nth-child(1),
  .catalog .table-wrap td:nth-child(1),
  .catalog .table-wrap th:nth-child(3),
  .catalog .table-wrap td:nth-child(3),
  .catalog .table-wrap th:nth-child(4),
  .catalog .table-wrap td:nth-child(4) { display: none; }
  .catalog .table-wrap th:nth-child(2),
  .catalog .table-wrap td:nth-child(2) { width: auto; min-width: 0; padding: 12px 6px 12px 0; }
  .catalog .table-wrap td:nth-child(2) b,
  .catalog .table-wrap td:nth-child(2) small { overflow-wrap: anywhere; word-break: normal; }
  .catalog .table-wrap th:nth-child(5),
  .catalog .table-wrap td:nth-child(5),
  .catalog .table-wrap th:nth-child(6),
  .catalog .table-wrap td:nth-child(6) { width: 48px; padding: 10px 4px; text-align: center; }
  .catalog .table-wrap .play,
  .catalog .table-wrap .add { width: 36px; height: 36px; min-width: 36px; }
}
