﻿/* Finition visuelle pro (safe override) */
:root{
  --lu-surface:#0f182d;
  --lu-surface-2:#17233e;
  --lu-surface-3:#1c2d4e;
  --lu-border:#33476d;
  --lu-border-soft:#3e5684;
  --lu-text:#edf3ff;
  --lu-muted:#b8c8e8;
  --lu-accent:#6f8fff;
  --lu-accent-2:#8e6bff;
  --lu-success:#3fd49e;
}

html{scroll-behavior:smooth}
body{
  color:var(--lu-text);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  line-height:1.6;
  background:
    radial-gradient(1000px 420px at 50% -140px, rgba(111,143,255,.13), transparent 72%),
    #0a1222;
}

h1,h2,h3{letter-spacing:-.016em;text-wrap:balance}
p{line-height:1.68}
.muted{color:var(--lu-muted)}

header{
  backdrop-filter:saturate(135%) blur(8px);
  background:color-mix(in srgb, #101a2e 86%, transparent);
  border-bottom-color:var(--lu-border-soft)!important;
  box-shadow:0 6px 20px rgba(1,7,19,.26);
}

.wrap{max-width:1180px}

.card,.panel,.offer,.choice,.dash-tile,
[class*="card"],[class*="panel"]{
  border-radius:16px;
  border:1px solid var(--lu-border);
}

.card,.panel,.choice,.dash-tile,
[class*="card"],[class*="panel"]{
  box-shadow:0 10px 28px rgba(3,10,24,.22);
}

.btn{
  border-radius:12px;
  font-weight:700;
  letter-spacing:.012em;
  transition:transform .16s ease, box-shadow .16s ease, filter .16s ease, border-color .16s ease;
}
.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}
.btn:active{transform:translateY(0)}
.btn:focus-visible{box-shadow:0 0 0 4px rgba(111,143,255,.24)}

a.btn:not(.alt){
  background:linear-gradient(118deg,var(--lu-accent-2),var(--lu-accent));
}

.btn.alt{
  border:1px solid var(--lu-border-soft)!important;
  background:linear-gradient(145deg,#213759,#1a2f4f)!important;
}

input,select,textarea,button{font:inherit}
input,select,textarea{
  border-radius:11px;
  border:1px solid #3b5280;
  background:var(--lu-surface-2);
  color:var(--lu-text);
}
input::placeholder,textarea::placeholder{color:#9db0d8;opacity:1}
input:focus,select:focus,textarea:focus{
  outline:none;
  border-color:#6f8fff;
  box-shadow:0 0 0 4px rgba(111,143,255,.16);
}

:focus-visible{
  outline:2px solid var(--lu-accent);
  outline-offset:2px;
}

.hero{position:relative;overflow:hidden}
.hero::after{
  content:"";
  position:absolute;
  inset:auto -10% -130px;
  height:220px;
  background:radial-gradient(ellipse at center,rgba(111,143,255,.22),transparent 70%);
  pointer-events:none;
}

.hero .lead,
.home-exclusive p,
.offer p,
.panel p{max-width:68ch}

.offer{
  border-color:var(--lu-border-soft)!important;
  background:linear-gradient(150deg,var(--lu-surface-3) 0%, #162640 58%, #121f35 100%)!important;
}
.offer .reward{
  background:linear-gradient(100deg,#243b65,#1b3152)!important;
  border-color:#4d6595!important;
}

.tag{
  letter-spacing:.02em;
  font-weight:700;
}

.lu-disclaimer,
.mini{
  color:#9fb3da!important;
}

.site-footer-v13,
footer{border-top:1px solid var(--lu-border-soft)}

@media (max-width:900px){
  .wrap{padding-inline:16px}
  .hero h1{line-height:1.1}
}

@media (max-width:640px){
  .btn{min-height:44px}
  .offer,.panel,.choice{border-radius:14px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* Conversion boost — version vendeur */
.hero-v13-copy h1{
  font-size:clamp(38px,6.3vw,72px)!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
}

.hero-kicker,.eyebrow{
  color:#d8e4ff!important;
  text-shadow:0 0 16px rgba(120,145,255,.26);
}

.hero-v13-actions .btn,
.hero .btn{
  min-width:220px;
  min-height:50px;
  font-weight:800!important;
  letter-spacing:.015em;
}

.hero-v13-actions .btn.hero-primary,
.hero-v13-actions a.btn:not(.alt),
.hero a.btn:not(.alt){
  background:linear-gradient(115deg,#8a4bff 0%,#5b7dff 54%,#38c7e8 100%)!important;
  border:0!important;
  box-shadow:0 10px 28px rgba(75,102,220,.35), inset 0 1px 0 rgba(255,255,255,.2);
}

.hero-v13-actions .btn.hero-secondary,
.hero .btn.alt{
  border:1px solid #6f86ba!important;
  background:linear-gradient(140deg,#293f67,#1f3458)!important;
}

.hero-v13-actions .btn:hover,
.hero .btn:hover{
  transform:translateY(-2px) scale(1.01);
  filter:brightness(1.07);
}

.home-exclusive,
.lu-feedback-band,
.notice{
  border:1px solid #4a6394!important;
  background:linear-gradient(150deg,#1b2f51,#162741)!important;
  box-shadow:0 10px 30px rgba(4,11,26,.24);
}

.offer{
  border:1px solid #536ea4!important;
  box-shadow:0 14px 32px rgba(3,10,24,.35)!important;
}

.offer h3{font-size:clamp(21px,2.1vw,27px)!important}
.offer .tag{font-weight:800!important}

.offer .btn,
.offer .lu-catalogue-action{
  width:100%;
  min-height:46px;
  font-weight:800!important;
}

.offer .lu-catalogue-action,
.offer a.btn:not(.alt){
  background:linear-gradient(110deg,#8a4bff,#5179ff)!important;
  border:0!important;
}

.lu-feedback-copy h2,
.section h2,
.panel h3,
.card h3{
  color:#f4f7ff;
}

/* micro-elements commerciaux */
.hero-v13-copy .lead strong,
.lead strong{
  color:#ffffff;
  background:linear-gradient(90deg,rgba(138,75,255,.25),rgba(56,199,232,.22));
  padding:.1em .35em;
  border-radius:.4em;
}

@media (max-width:760px){
  .hero-v13-actions .btn,
  .hero .btn{min-width:100%}
}

/* Responsive hard-fixes (desktop + mobile + landscape) */
html,
body{
  overflow-x:auto !important;
  max-width:100% !important;
}

body{
  touch-action:pan-x pan-y !important;
}

body .wrap,
body .section,
body .offerlist,
body .offer,
body .offer-tools,
body .search,
body .hero-search,
body .hero-search input,
body .offer-tools .search,
body .offer-tools select{
  min-width:0 !important;
  max-width:100% !important;
}

body #offres .offerlist{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)) !important;
  gap:16px !important;
}

body #offres .offer{
  width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
}

body #offres .offer h3,
body #offres .offer p,
body #offres .offer .reward,
body #offres .offer .tag,
body #offres .offer .lu-author,
body #offres .offer .lu-catalogue-author-signature,
body #offres .offer .lu-catalogue-author-signature *{
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}

body #offres .lu-catalogue-heading{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
  margin-bottom:16px;
}

body #offres .lu-catalogue-heading .lu-site-logo{flex:0 0 62px}
body #offres .lu-catalogue-titleblock{min-width:0;overflow-wrap:anywhere}

@media (max-width:600px){
  body #offres .lu-catalogue-heading .lu-site-logo{flex-basis:55px}
}

body .hero-search{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

body .hero-search > span{
  flex:0 0 auto !important;
}

body .hero-search input{
  flex:1 1 220px !important;
}

body .hero-search .btn{
  flex:0 0 auto !important;
}

@media (max-width:900px){
  body #offres .offerlist{
    grid-template-columns:1fr !important;
  }
}

@media (orientation:landscape) and (max-width:950px){
  body .wrap{padding-inline:14px !important;}
}
