:root{--bg:#090d12;--bg2:#101722;--panel:#151d29;--cream:#f5f1ea;--text:#10131a;--muted:#687080;--white:#fff;--gold:#c9a45c;--gold2:#ead7aa;--line:rgba(255,255,255,.14);--shadow:0 24px 80px rgba(0,0,0,.28);--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:#fff;color:var(--text);line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-header{position:sticky;top:0;z-index:50;height:82px;padding:0 clamp(18px,4vw,62px);display:flex;align-items:center;justify-content:space-between;background:rgba(9,13,18,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08);color:#fff}.brand{display:flex;align-items:center;gap:14px;font-weight:900;letter-spacing:.02em}.brand img{width:54px;height:54px;object-fit:contain}.brand span{font-size:1.02rem}.main-nav{display:flex;align-items:center;gap:28px;font-size:.94rem;font-weight:700}.main-nav a{opacity:.86}.main-nav a:hover{opacity:1;color:var(--gold2)}.nav-cta{padding:12px 18px;border:1px solid rgba(201,164,92,.5);border-radius:999px;background:rgba(201,164,92,.14);color:#fff!important}.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:28px}.hero{min-height:calc(100vh - 82px);position:relative;overflow:hidden;display:grid;grid-template-columns:1fr minmax(280px,420px);gap:36px;align-items:end;padding:110px clamp(20px,6vw,90px) 68px;color:#fff;background:var(--bg)}.hero-bg{position:absolute;inset:0;background:linear-gradient(95deg,rgba(9,13,18,.98),rgba(9,13,18,.76),rgba(9,13,18,.44)),url('img/background/image1.jpg') center/cover no-repeat;transform:scale(1.02)}.hero:after{content:"";position:absolute;inset:auto -12% -35% 30%;height:60%;background:radial-gradient(circle,rgba(201,164,92,.28),transparent 58%)}.hero-content,.hero-card{position:relative;z-index:1}.eyebrow{margin:0 0 14px;color:var(--gold);font-size:.78rem;text-transform:uppercase;letter-spacing:.18em;font-weight:900}.hero h1,.page-hero h1{font-size:clamp(2.35rem,5vw,5.6rem);line-height:.98;margin:0 0 24px;max-width:1120px;letter-spacing:-.06em}.hero-text{font-size:clamp(1.02rem,1.4vw,1.3rem);max-width:900px;color:rgba(255,255,255,.82);margin:0 0 34px}.hero-actions,.cta-row{display:flex;flex-wrap:wrap;gap:14px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 22px;border-radius:999px;font-weight:900;border:1px solid transparent;transition:.25s ease;text-transform:uppercase;letter-spacing:.03em;font-size:.82rem;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn.primary{background:linear-gradient(135deg,var(--gold),#e3c37b);color:#17120a;box-shadow:0 16px 40px rgba(201,164,92,.28)}.btn.secondary{border-color:rgba(255,255,255,.25);color:#fff;background:rgba(255,255,255,.08)}.btn.ghost{border-color:rgba(17,24,39,.18);background:#fff;color:#111827}.hero-card{align-self:end;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);padding:28px;backdrop-filter:blur(16px);box-shadow:var(--shadow)}.hero-card strong{display:block;font-size:1.25rem;margin-bottom:8px}.hero-card span{color:rgba(255,255,255,.74)}.section{padding:92px clamp(20px,6vw,90px)}.section.dark{background:var(--bg2);color:#fff}.section-heading{max-width:820px;margin-bottom:42px}.section-heading.wide{max-width:1040px}.section-heading h2{font-size:clamp(2rem,3.8vw,4.15rem);line-height:1.05;letter-spacing:-.055em;margin:0 0 18px}.section-heading p{color:var(--muted);font-size:1.08rem}.dark .section-heading p,.dark .service-card p{color:rgba(255,255,255,.68)}.intro-section{background:linear-gradient(180deg,#fff,#f6f2eb)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:rgba(255,255,255,.055);border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;gap:18px;min-height:390px;transition:.25s ease}.service-card:hover{transform:translateY(-5px);border-color:rgba(201,164,92,.6);background:rgba(255,255,255,.085)}.service-card img{width:100%;height:178px;object-fit:contain;padding:14px;border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(201,164,92,.08));border:1px solid rgba(255,255,255,.1)}.service-card h3{font-size:1.9rem;margin:0 0 4px}.service-card strong{display:block;color:var(--gold2);margin-bottom:10px}.service-card a{display:inline-block;margin-top:12px;color:#fff;font-weight:900;border-bottom:1px solid rgba(234,215,170,.55)}.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.pillar{border:1px solid rgba(17,24,39,.12);border-radius:var(--radius);padding:28px;background:#fff;box-shadow:0 16px 40px rgba(16,23,34,.08)}.pillar span{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:#111827;color:var(--gold2);font-weight:900;margin-bottom:18px}.pillar h3{margin:0 0 8px;font-size:1.22rem}.pillar p{color:var(--muted);margin:0}.lead-band{padding:92px clamp(20px,6vw,90px);display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center;background:linear-gradient(135deg,#0b1017,#151d29);color:#fff}.lead-content h2{font-size:clamp(2rem,3.5vw,4rem);line-height:1.05;letter-spacing:-.05em;margin:0 0 18px}.lead-content p{color:rgba(255,255,255,.72);font-size:1.06rem;max-width:720px}.lead-panel{border-radius:28px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);padding:32px;box-shadow:var(--shadow)}.lead-panel ul{margin:0;padding:0;list-style:none}.lead-panel li{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.1);font-weight:800}.lead-panel li:before{content:"✓";color:var(--gold2);margin-right:10px}.lead-panel li:last-child{border-bottom:0}.site-footer{padding:48px clamp(20px,6vw,90px);background:#070a0f;color:#fff;display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:24px;align-items:start;border-top:1px solid rgba(255,255,255,.08)}.site-footer p{color:rgba(255,255,255,.65);margin:8px 0 0}.site-footer a{color:inherit}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.copyright{grid-column:1/-1;font-size:.86rem}.page-hero{min-height:440px;background:linear-gradient(90deg,rgba(9,13,18,.96),rgba(9,13,18,.66)),url('img/background/image2.jpg') center/cover;color:#fff;display:flex;align-items:end;padding:112px clamp(20px,6vw,90px) 70px}.contact-hero{background-image:linear-gradient(90deg,rgba(9,13,18,.96),rgba(9,13,18,.66)),url('img/background/image3.jpg')}.team-hero{background-image:linear-gradient(90deg,rgba(9,13,18,.96),rgba(9,13,18,.66)),url('img/background/image2.jpg')}.legal-hero{background-image:linear-gradient(90deg,rgba(9,13,18,.96),rgba(9,13,18,.70)),url('img/background/image4.jpg')}.page-hero-content{max-width:980px}.page-hero p{color:rgba(255,255,255,.78);font-size:1.12rem}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.team-card{border-radius:var(--radius);overflow:hidden;background:rgba(255,255,255,.06);border:1px solid var(--line)}.team-card.featured{border-color:rgba(201,164,92,.55)}.team-card img{width:100%;height:245px;object-fit:contain;object-position:center;background:linear-gradient(135deg,#0c121b,#182233);padding:10px}.team-card div{padding:26px}.team-kicker{color:var(--gold)!important;font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;font-weight:900;margin:0 0 10px}.team-card h3{margin:0 0 4px;font-size:1.55rem}.team-card span{display:block;color:var(--gold2);font-weight:900;margin-bottom:12px}.team-card p{color:rgba(255,255,255,.68)}.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.support-card{border:1px solid rgba(17,24,39,.12);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:0 18px 50px rgba(16,23,34,.08)}.support-card img{height:230px;width:100%;object-fit:contain;object-position:center;background:#f3eee5;padding:12px}.support-card h3,.support-card p{padding:0 24px}.support-card h3{margin:24px 0 6px}.support-card p{color:var(--muted);padding-bottom:24px}.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:34px;background:#f7f2ea}.contact-form,.contact-info{background:#fff;border-radius:var(--radius);padding:30px;box-shadow:0 18px 50px rgba(16,23,34,.08);border:1px solid rgba(17,24,39,.08)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-weight:900;margin-bottom:18px;color:#111827}input,select,textarea{margin-top:8px;width:100%;border:1px solid rgba(17,24,39,.14);border-radius:16px;padding:14px 15px;font:inherit;background:#fff;color:#111827;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(201,164,92,.16)}.hp-field{position:absolute;left:-9999px;opacity:0}.upload-box{border:1px dashed rgba(17,24,39,.25);border-radius:22px;padding:22px;background:#fbfaf7;margin:10px 0 22px}.upload-box span{display:block;color:var(--muted);font-weight:500;margin-top:4px}.preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.preview-grid img{height:92px;width:100%;object-fit:cover;border-radius:14px}.checkline{display:flex;gap:10px;align-items:flex-start;font-weight:700;color:#374151}.checkline input{width:auto;margin-top:5px}.form-note{font-size:.9rem;color:var(--muted)}.contact-info h2{margin-top:0}.contact-info a{font-weight:900;color:#111827}.contact-info hr{border:0;border-top:1px solid rgba(17,24,39,.1);margin:24px 0}.clean-list{padding-left:20px;color:var(--muted)}.legal{max-width:900px}.legal h2{margin-top:38px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}@media(max-width:1100px){.hero,.lead-band,.contact-layout{grid-template-columns:1fr}.services-grid,.team-grid,.support-grid{grid-template-columns:1fr 1fr}.pillars{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr 1fr}.hero{min-height:auto;padding-top:92px}}@media(max-width:760px){.site-header{height:72px}.brand img{width:44px;height:44px}.nav-toggle{display:block}.main-nav{position:fixed;left:16px;right:16px;top:82px;display:none;flex-direction:column;align-items:stretch;background:#0b1017;border:1px solid var(--line);border-radius:20px;padding:18px}.main-nav.open{display:flex}.hero h1,.page-hero h1{font-size:2.35rem}.hero{display:block;padding:86px 20px 40px}.hero-card{margin-top:28px}.section,.lead-band{padding:62px 20px}.services-grid,.pillars,.team-grid,.support-grid,.form-row,.site-footer{grid-template-columns:1fr}.service-card{padding:22px;min-height:auto}.service-card img{height:150px}.preview-grid{grid-template-columns:repeat(2,1fr)}.footer-links{display:block}.footer-links a{display:block;margin:0 0 10px}}
.site-notice{position:fixed;left:50%;bottom:24px;transform:translate(-50%,30px);z-index:1000;opacity:0;max-width:min(92vw,640px);padding:16px 20px;border-radius:18px;font-weight:900;box-shadow:0 20px 60px rgba(0,0,0,.25);transition:.28s ease}.site-notice.visible{opacity:1;transform:translate(-50%,0)}.site-notice.is-success{background:#0f5132;color:#fff}.site-notice.is-error{background:#7f1d1d;color:#fff}

/* V4.1 - Identité visuelle L'Olympe Group : logo officiel et palette magenta */
:root{
  --olympe-magenta:#a11463;
  --olympe-magenta-2:#c42b7c;
  --olympe-magenta-soft:#f8e8f1;
  --gold:var(--olympe-magenta);
  --gold2:#f2bfd8;
}
.site-header{background:rgba(8,8,10,.92)}
.brand{gap:16px}
.brand img{width:205px;height:60px;object-fit:contain;background:#fff;border-radius:18px;padding:8px 14px;box-shadow:0 14px 34px rgba(0,0,0,.18)}
.brand-name{display:none}
.nav-cta,.btn.primary{background:linear-gradient(135deg,var(--olympe-magenta),var(--olympe-magenta-2));color:#fff!important;box-shadow:0 16px 40px rgba(161,20,99,.30)}
.btn.secondary:hover,.btn.ghost:hover,.service-card:hover{border-color:rgba(161,20,99,.55)}
.hero:after{background:radial-gradient(circle,rgba(161,20,99,.30),transparent 58%)}
.service-card img{background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(161,20,99,.10))}
.pillar span{background:linear-gradient(135deg,#111827,#24101b);color:#f2bfd8}
input:focus,select:focus,textarea:focus{border-color:var(--olympe-magenta);box-shadow:0 0 0 4px rgba(161,20,99,.14)}
.footer-brand img{width:220px;max-width:100%;background:#fff;border-radius:18px;padding:10px 16px;margin-bottom:12px}
@media(max-width:760px){.brand img{width:166px;height:52px;border-radius:15px;padding:7px 12px}}

/* V5 corrections visuelles : cartes blanches + services harmonisés */
.service-card,
.service-card.reveal.visible,
.team-card,
.team-card.featured,
.team-card.reveal.visible,
.team-card.featured.reveal.visible{background:#ffffff !important;color:#111827 !important;border-color:rgba(17,24,39,.10) !important;box-shadow:0 18px 50px rgba(16,23,34,.10)}
.service-card img,.team-card img{background:#ffffff !important}
.service-card strong{color:var(--olympe-magenta) !important;line-height:1.28}
.service-card p,.team-card p{color:#4b5563 !important}
.service-card a{color:var(--olympe-magenta) !important;border-bottom-color:rgba(161,20,99,.35) !important}
.team-card span{color:var(--olympe-magenta) !important}
.service-card:hover,.team-card:hover{transform:translateY(-5px);box-shadow:0 26px 70px rgba(16,23,34,.16);border-color:rgba(161,20,99,.24) !important}
.realisations-section{background:linear-gradient(180deg,#fff,#f8f4f8)}
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.case-card{background:#fff;border:1px solid rgba(17,24,39,.10);border-radius:var(--radius);padding:30px;box-shadow:0 18px 50px rgba(16,23,34,.08)}
.case-card span{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(161,20,99,.10);color:var(--olympe-magenta);font-weight:900;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.case-card h3{margin:18px 0 10px;font-size:1.35rem}
.case-card p{margin:0;color:#4b5563}
@media(max-width:760px){.case-grid{grid-template-columns:1fr}}
