
/* DJ CLAN V3 — premium photography and motion */
:root{--gold:#e4b75a;--goldlight:#ffe09a}
html{scroll-behavior:smooth}body{background:#070707}
.header{backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);background:rgba(8,8,8,.88)!important;border-bottom:1px solid rgba(218,176,86,.22)!important}
.hero{position:relative;overflow:hidden;isolation:isolate;min-height:740px;background:radial-gradient(ellipse at 74% 36%,rgba(178,112,29,.18),transparent 52%),#090807}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(7,7,7,.7),transparent 65%);z-index:-1}
.hero h1{position:relative;z-index:3;letter-spacing:-.065em;text-shadow:0 10px 45px #000}.hero h1 em{color:#e2b75d!important}
.hero>p,.hero .eyebrow,.hero-actions,.hero-stats,.hero-offers{position:relative;z-index:3}
.photographic-hero{position:absolute!important;top:0;right:0;width:61%;height:100%;z-index:0!important;pointer-events:none;opacity:.95;overflow:hidden}
.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,#090807 0%,rgba(9,8,7,.18) 32%,transparent 78%),linear-gradient(0deg,#090807,transparent 30%),url('images/hero-dj.webp') center center/cover no-repeat;animation:cinematicDrift 17s ease-in-out infinite alternate;transform-origin:60% 50%}
.hero-photo-glint{position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(241,181,79,.08) 48%,transparent 60%);animation:lightSweep 9s linear infinite}
.hero-photo-caption{position:absolute;right:7%;bottom:13%;font-size:11px;letter-spacing:.28em;color:#e5bd73;font-weight:800}.hero-photo-caption span{display:block;margin-top:12px;color:#fff;font-size:9px;letter-spacing:.15em}
.old-illustration[hidden],.vinyl-scene[hidden],.laptop-scene[hidden],.mixer-scene[hidden]{display:none!important}
.hero-offers{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 14px;max-width:660px}
.hero-offers a{display:flex;flex-direction:column;gap:5px;min-width:205px;padding:17px 22px;border:1px solid rgba(235,187,94,.52);border-radius:13px;background:rgba(12,11,10,.8);text-decoration:none;box-shadow:0 15px 45px #0006;transition:transform .25s,border-color .25s,background .25s}
.hero-offers a:first-child{background:linear-gradient(120deg,#e0ae4f,#f8dc8d);color:#141008}
.hero-offers span{font-size:10px;letter-spacing:.17em;font-weight:800}.hero-offers strong{font-size:25px;line-height:1.2}.hero-offers small{font-size:11px;opacity:.75}.hero-offers a:hover{transform:translateY(-6px);border-color:#ffe7a8}
.studio-section{background:linear-gradient(180deg,#0b0908,#12100d 65%,#090807)!important}.studio-card{overflow:hidden!important;border:1px solid #a880382e!important;transition:transform .45s ease,border-color .4s,box-shadow .4s!important}.studio-card:hover{transform:translateY(-9px)!important;border-color:#d6a650aa!important;box-shadow:0 22px 60px #000b!important}
.photo-scene{position:relative;min-height:250px;height:250px;background-size:cover;background-position:center;overflow:hidden;transition:background-size .8s;filter:saturate(.86) contrast(1.1)}.photo-scene::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#100c09,transparent 55%)}.photo-vinyl{background-image:url('images/vinyl.webp')}.photo-controller{background-image:url('images/controller.webp')}.photo-mixer{background-image:url('images/mixer.webp')}.photo-sheen{position:absolute;inset:-100%;background:linear-gradient(110deg,transparent 47%,rgba(255,220,141,.17) 50%,transparent 53%);animation:lightSweep 8s ease-in-out infinite;pointer-events:none}
.experience-ribbon{padding:80px clamp(20px,5vw,90px) 86px;background:#080808}.experience-title{text-align:center;margin-bottom:30px}.experience-title h2{font-size:clamp(38px,5vw,70px);letter-spacing:-.05em;margin:8px 0}.experience-title em{color:#e4b75a}.experience-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.experience-tile{position:relative;height:220px;border:1px solid #a8803844;border-radius:15px;background-size:cover;background-position:center;overflow:hidden;transition:transform .35s,border-color .35s}.experience-tile:hover{transform:translateY(-7px);border-color:#e4b75a}.experience-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000e,transparent 75%)}.experience-tile span{position:absolute;bottom:20px;left:20px;z-index:1;font-weight:800;letter-spacing:.1em;font-size:13px;color:#fff}.exp-vinyl{background-image:url('images/records.webp')}.exp-controller{background-image:url('images/controller.webp')}.exp-headphones{background-image:url('images/headphones.webp')}.exp-club{background-image:url('images/club.webp')}
.pack-card,.plan{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.pack-card:hover,.plan:hover{transform:translateY(-5px);box-shadow:0 20px 50px #0007}
.reveal-ready{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.75,.2,1)}.reveal-ready.revealed{opacity:1;transform:translateY(0)}
@keyframes cinematicDrift{from{transform:scale(1.02) translateX(0)}to{transform:scale(1.14) translateX(-2%)}}@keyframes lightSweep{0%{transform:translateX(-80%)}100%{transform:translateX(80%)}}
@media(max-width:980px){.photographic-hero{width:100%;opacity:.48}.hero-photo{background-position:center}.hero::after{background:linear-gradient(90deg,#090807bb,#09080755)}.experience-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{min-height:auto}.hero-offers a{min-width:175px}}
@media(max-width:620px){.photographic-hero{width:100%;opacity:.33}.hero-photo-caption{display:none}.hero-offers{flex-direction:column;max-width:100%}.hero-offers a{min-width:0}.experience-ribbon{padding:48px 18px}.experience-gallery{gap:8px}.experience-tile{height:155px}.experience-tile span{font-size:10px;bottom:12px;left:10px}.photo-scene{height:200px;min-height:200px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}
.photographic-hero{max-width:none!important;aspect-ratio:auto!important;transform:none!important;right:0!important;top:0!important;opacity:.95!important;display:block!important}
@media(max-width:980px){.photographic-hero{opacity:.45!important}}
@media(max-width:620px){.photographic-hero{opacity:.3!important}}

/* DJ CLAN V4.6 : offre écoute gratuite mise en avant */
.free-listen-banner{position:relative;z-index:5;max-width:670px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:18px 20px;margin:24px 0;border:2px solid #f5c55f;border-radius:16px;background:linear-gradient(115deg,rgba(210,145,33,.25),rgba(12,12,15,.94));box-shadow:0 0 36px rgba(235,174,64,.22)}
.free-listen-banner span{font-size:clamp(16px,2vw,23px);font-weight:900;letter-spacing:.025em;color:#ffda84}
.free-listen-banner small{display:block;flex-basis:100%;font-size:14px;color:#fff;line-height:1.5}
.free-listen-banner a{background:#e8b752;color:#16120c;font-weight:900;padding:10px 15px;border-radius:9px;text-decoration:none}
@media(max-width:600px){.free-listen-banner{padding:15px}.free-listen-banner a{width:100%;text-align:center}}
