
:root{
  --bg:#020916;
  --bg2:#061325;
  --panel:rgba(5,18,37,.72);
  --text:#f5f9ff;
  --muted:#a8bdd7;
  --blue:#1686ff;
  --cyan:#33d6ff;
  --line:rgba(90,171,255,.22);
  --border:rgba(255,255,255,.10);
  --shadow:0 30px 90px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  overflow-x:hidden;
}
a{color:inherit}
.site-header{
  position:fixed;
  inset:0 0 auto 0;
  z-index:50;
  height:84px;
  display:flex;
  align-items:center;
  padding:0 clamp(20px,4vw,72px);
  border-bottom:1px solid transparent;
  transition:.35s ease;
}
.site-header.scrolled{
  background:rgba(2,9,22,.86);
  backdrop-filter:blur(18px);
  border-bottom-color:rgba(255,255,255,.08);
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  min-width:max-content;
}
.brand-mark{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  flex:0 0 48px;
}
.brand-mark img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 0 14px rgba(30,160,255,.28));
}
.brand-text{
  display:flex;
  align-items:baseline;
  gap:5px;
  font-size:22px;
}
.brand-text strong{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  letter-spacing:.05em;
  font-size:25px;
}
.brand-text strong span{font-size:inherit;font-weight:inherit}
.brand-blue{color:#23459a}
.brand-red{color:#e3262e}
.brand-text .brand-telecom{color:#fff;font-size:21px;font-weight:500}
.main-nav{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:clamp(18px,2.2vw,36px);
}
.main-nav a{
  font-size:13px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.08em;
  text-decoration:none;
  opacity:.86;
}
.main-nav a:hover{opacity:1;color:#8edfff}
.main-nav .nav-cta{
  padding:13px 18px;
  border:1px solid rgba(48,172,255,.65);
  border-radius:10px;
  background:rgba(4,28,56,.35);
}
.menu-toggle{
  display:none;
  margin-left:auto;
  background:none;
  border:0;
  color:#fff;
  font-size:27px;
}
.hero{
  position:relative;
  min-height:100svh;
  display:flex;
  align-items:center;
  overflow:hidden;
}
.hero-bg{
  position:absolute;
  inset:0;
  background-image:url("assets/hero-datacenter.webp");
  background-size:cover;
  background-position:center;
  transform:scale(1.015);
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,6,17,.94) 0%,rgba(1,11,27,.73) 34%,rgba(1,9,21,.18) 62%,rgba(0,4,13,.26) 100%),
    linear-gradient(180deg,rgba(0,5,15,.55) 0%,rgba(0,4,12,.10) 42%,rgba(0,4,12,.62) 100%);
}
.hero-grid{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(68,177,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(68,177,255,.035) 1px,transparent 1px);
  background-size:86px 86px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.25),transparent 80%);
}
.hero-content{
  position:relative;
  z-index:3;
  width:min(760px,78vw);
  margin-left:clamp(24px,7vw,132px);
  padding-top:70px;
}
.eyebrow,.kicker{
  color:#66d6ff;
  letter-spacing:.18em;
  font-size:12px;
  font-weight:800;
}
.hero h1{
  margin:20px 0 22px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:clamp(48px,6vw,92px);
  line-height:.96;
  letter-spacing:-.045em;
  max-width:1000px;
}
.hero h1 span{
  display:block;
  color:#6edbff;
  text-shadow:0 0 42px rgba(20,135,255,.26);
}
.hero-lead{
  max-width:690px;
  margin:0;
  color:#d4e2f2;
  font-size:clamp(17px,1.5vw,21px);
  line-height:1.7;
}
.hero-actions,.cta-actions{
  display:flex;
  gap:14px;
  margin-top:32px;
  flex-wrap:wrap;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 24px;
  border-radius:10px;
  text-decoration:none;
  font-weight:700;
  font-size:14px;
  letter-spacing:.02em;
  transition:.25s ease;
}
.btn-primary{
  background:linear-gradient(135deg,#0a79ff,#18b7ff);
  box-shadow:0 16px 40px rgba(0,114,255,.28);
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 22px 50px rgba(0,114,255,.38)}
.btn-ghost{
  border:1px solid rgba(255,255,255,.26);
  background:rgba(3,13,28,.34);
  backdrop-filter:blur(10px);
}
.btn-ghost:hover{border-color:#5ed9ff;background:rgba(4,26,48,.52)}
.hero-proof{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  margin-top:50px;
  width:min(880px,84vw);
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  overflow:hidden;
  backdrop-filter:blur(12px);
}
.hero-proof div{
  padding:17px 18px 16px;
  background:rgba(4,15,31,.63);
}
.hero-proof strong{display:block;font-size:13px;margin-bottom:5px}
.hero-proof span{display:block;color:#91a9c3;font-size:12px;line-height:1.45}
.scroll-cue{
  position:absolute;
  z-index:4;
  left:50%;
  bottom:22px;
  width:28px;
  height:44px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:20px;
  transform:translateX(-50%);
}
.scroll-cue span{
  position:absolute;
  width:4px;height:8px;border-radius:10px;background:#52d2ff;
  left:50%;top:8px;transform:translateX(-50%);
  animation:scroll 1.8s infinite;
}
@keyframes scroll{0%{opacity:0;transform:translate(-50%,0)}40%{opacity:1}100%{opacity:0;transform:translate(-50%,14px)}}

.section{
  position:relative;
  padding:clamp(80px,9vw,140px) clamp(20px,6vw,100px);
}
.section-intro{
  background:
    radial-gradient(circle at 85% 15%,rgba(10,127,255,.11),transparent 30%),
    linear-gradient(180deg,#05101f,#020916);
}
.section-heading{max-width:860px;margin-bottom:44px}
.section-heading h2,.split-copy h2,.cta-card h2{
  margin:14px 0 18px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:clamp(36px,4vw,62px);
  line-height:1.02;
  letter-spacing:-.035em;
}
.section-heading p,.split-copy p,.cta-card p{
  color:var(--muted);
  font-size:18px;
  line-height:1.75;
  max-width:760px;
}
.cards-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.service-card{
  position:relative;
  min-height:285px;
  padding:28px;
  border:1px solid var(--border);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(10,29,55,.74),rgba(4,15,31,.62));
  box-shadow:var(--shadow);
  overflow:hidden;
}
.service-card:before{
  content:"";
  position:absolute;inset:auto -25% -45% 30%;
  height:180px;
  background:radial-gradient(circle,rgba(22,134,255,.26),transparent 65%);
}
.card-number{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#4ecbff;font-size:13px;letter-spacing:.14em}
.service-card h3{font-size:24px;margin:42px 0 12px}
.service-card p{color:#9eb4cc;line-height:1.65;font-size:15px}
.card-link{position:absolute;left:28px;bottom:26px;color:#76dfff;font-size:13px;font-weight:700}

.dark-band{
  background:
    linear-gradient(90deg,rgba(2,8,20,.97),rgba(5,18,38,.93)),
    url("assets/hero-datacenter.webp") center/cover fixed;
  border-top:1px solid rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.split{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:clamp(40px,7vw,100px);
  align-items:center;
}
.check-list{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:14px}
.check-list li{position:relative;padding-left:28px;color:#c6d5e6}
.check-list li:before{content:"";position:absolute;left:0;top:.5em;width:10px;height:10px;border:2px solid #31c7ff;border-radius:50%}
.tech-panel{
  min-height:420px;
  border:1px solid rgba(73,175,255,.28);
  border-radius:22px;
  padding:20px;
  background:
    linear-gradient(180deg,rgba(7,23,45,.82),rgba(2,10,23,.92));
  box-shadow:0 30px 90px rgba(0,0,0,.45),inset 0 0 70px rgba(16,106,255,.05);
}
.tech-panel-top{
  display:flex;justify-content:space-between;gap:20px;
  color:#75cfff;font-size:12px;letter-spacing:.12em;
  border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:16px;
}
.status{color:#7ef4bf}.status i{display:inline-block;width:7px;height:7px;background:#48e49b;border-radius:50%;margin-right:7px;box-shadow:0 0 16px #48e49b}
.signal-lines{display:grid;gap:18px;margin:70px 0 60px}
.signal-lines span{
  height:12px;border-radius:20px;width:var(--w);
  background:linear-gradient(90deg,#0a7cff,#22d7ff 70%,rgba(34,215,255,.2));
  box-shadow:0 0 26px rgba(30,174,255,.22);
}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.metrics div{padding:16px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.025)}
.metrics strong{display:block;color:#74dfff;font-family:"Space Grotesk"}
.metrics small{color:#859ab1;font-size:11px}

.timeline{max-width:1100px;margin-top:45px}
.timeline-item{
  display:grid;
  grid-template-columns:110px 1fr;
  gap:26px;
  padding:26px 0;
  border-top:1px solid rgba(255,255,255,.09);
}
.timeline-item:last-child{border-bottom:1px solid rgba(255,255,255,.09)}
.timeline-item>span{color:#4bd5ff;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:15px;letter-spacing:.12em}
.timeline-item h3{margin:0 0 8px;font-size:27px}
.timeline-item p{margin:0;color:#9db3cb;line-height:1.65}

.cta-section{
  padding:clamp(70px,8vw,120px) clamp(20px,6vw,100px);
  background:
    radial-gradient(circle at 10% 50%,rgba(0,129,255,.18),transparent 38%),
    #030a16;
}
.cta-card{
  max-width:1120px;
  margin:auto;
  padding:clamp(36px,6vw,72px);
  border-radius:24px;
  border:1px solid rgba(65,183,255,.2);
  background:linear-gradient(135deg,rgba(7,27,53,.92),rgba(5,15,31,.82));
  box-shadow:var(--shadow);
}
footer{
  padding:38px clamp(20px,6vw,100px);
  display:grid;
  grid-template-columns:1fr auto auto;
  gap:30px;
  align-items:end;
  border-top:1px solid rgba(255,255,255,.07);
  background:#020713;
}
.footer-brand{display:flex;flex-direction:column;gap:6px}
.footer-brand span,footer small{color:#71879f;font-size:12px}
.footer-links{display:flex;gap:20px}
.footer-links a{font-size:12px;color:#8fa8c2;text-decoration:none}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}

@media (max-width:1050px){
  .cards-grid{grid-template-columns:repeat(2,1fr)}
  .split{grid-template-columns:1fr}
  .hero-proof{grid-template-columns:1fr 1fr}
  .hero-proof div:last-child{grid-column:1/-1}
}
@media (max-width:820px){
  .site-header{height:74px;padding:0 18px}
  .brand-mark{width:40px;height:40px}
  .brand-text strong{font-size:21px}
  .brand-text span{font-size:18px}
  .menu-toggle{display:block}
  .main-nav{
    position:absolute;left:0;right:0;top:74px;
    display:none;flex-direction:column;align-items:stretch;
    padding:18px;background:rgba(2,9,22,.98);border-bottom:1px solid rgba(255,255,255,.08)
  }
  .main-nav.open{display:flex}
  .main-nav a{padding:11px 4px}
  .hero-content{width:auto;margin:0 22px;padding-top:80px}
  .hero h1{font-size:clamp(44px,14vw,68px)}
  .hero-lead{font-size:16px}
  .hero-proof{width:100%;grid-template-columns:1fr;margin-top:32px}
  .hero-proof div:last-child{grid-column:auto}
  .cards-grid{grid-template-columns:1fr}
  .metrics{grid-template-columns:1fr 1fr}
  .timeline-item{grid-template-columns:60px 1fr}
  footer{grid-template-columns:1fr;align-items:start}
}
@media (max-width:560px){
  .hero-bg{background-position:58% center}
  .hero-overlay{background:linear-gradient(90deg,rgba(0,5,16,.96),rgba(0,7,20,.76) 66%,rgba(0,4,13,.42))}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .btn{width:100%}
  .section{padding-left:20px;padding-right:20px}
}

/* Modification validée : logo original CONEXYS + Télécom en blanc */
.brand-mark img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 0 14px rgba(30,160,255,.25));
}
.brand-text span{color:#fff;}

/* En-tete : logo complet original, sans reconstruction du nom */
.brand-full-logo{
  display:block;
  width:clamp(235px,22vw,330px);
  height:auto;
  max-height:60px;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 0 14px rgba(30,160,255,.22));
}
@media (max-width:820px){
  .brand-full-logo{width:220px;max-height:50px}
}
@media (max-width:560px){
  .brand-full-logo{width:190px;max-height:44px}
}

/* Finition en-tete v3 : logo original mieux proportionne et hero plus immediat */
.site-header{
  height:96px;
  padding:0 clamp(24px,4vw,72px);
  background:linear-gradient(180deg,rgba(1,8,20,.82) 0%,rgba(1,8,20,.46) 68%,rgba(1,8,20,0) 100%);
}
.brand-lockup{
  display:inline-flex;
  align-items:center;
  gap:13px;
  height:72px;
  padding:7px 16px 7px 8px;
  border:1px solid rgba(112,191,255,.10);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(3,14,31,.58),rgba(4,23,49,.24));
  box-shadow:0 10px 35px rgba(0,0,0,.16), inset 0 1px rgba(255,255,255,.035);
  backdrop-filter:blur(8px);
}
.brand-symbol{
  width:58px;
  height:58px;
  object-fit:contain;
  flex:0 0 58px;
  filter:drop-shadow(0 0 14px rgba(31,154,255,.26));
}
.brand-wordmark{
  display:block;
  width:auto;
  height:31px;
  max-width:min(340px,31vw);
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.32));
}
.hero{
  align-items:flex-start;
}
.hero-content{
  margin-top:clamp(150px,20vh,210px);
  padding-top:0;
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 13px;
  border:1px solid rgba(94,211,255,.22);
  border-radius:999px;
  background:rgba(2,17,38,.42);
  backdrop-filter:blur(7px);
  text-shadow:0 0 18px rgba(50,211,255,.22);
}
@media (max-width:1050px){
  .brand-wordmark{height:28px;max-width:285px}
  .brand-lockup{height:66px}
  .brand-symbol{width:52px;height:52px;flex-basis:52px}
}
@media (max-width:820px){
  .site-header{height:82px;padding:0 16px}
  .brand-lockup{height:60px;gap:9px;padding:5px 11px 5px 6px;border-radius:13px}
  .brand-symbol{width:48px;height:48px;flex-basis:48px}
  .brand-wordmark{height:25px;max-width:225px}
  .hero-content{margin-top:128px}
}
@media (max-width:560px){
  .brand-lockup{padding-right:8px}
  .brand-symbol{width:42px;height:42px;flex-basis:42px}
  .brand-wordmark{height:22px;max-width:170px}
  .hero-content{margin-top:116px}
}


/* Logo final fourni par le client - 22/08/2026 */
.brand-lockup{
  height:72px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  overflow:hidden;
}
.brand-final-logo{
  display:block;
  width:clamp(360px,34vw,500px);
  height:auto;
  max-height:84px;
  object-fit:contain;
  object-position:left center;
}
@media (max-width:820px){
  .brand-final-logo{width:330px;max-height:72px}
}
@media (max-width:560px){
  .brand-final-logo{width:270px;max-height:62px}
}

/* Ajustement final du logo : recadrage propre et proportions equilibrees */
.site-header{
  height:108px;
  padding:0 clamp(24px,4vw,72px);
}
.brand-lockup{
  height:96px;
  overflow:visible;
  display:flex;
  align-items:center;
}
.brand-final-logo{
  width:auto;
  height:92px;
  max-width:min(470px,38vw);
  max-height:none;
  object-fit:contain;
  object-position:left center;
}
.hero-content{
  margin-top:clamp(168px,21vh,220px);
}
@media (max-width:1050px){
  .site-header{height:96px}
  .brand-lockup{height:84px}
  .brand-final-logo{height:80px;max-width:390px}
}
@media (max-width:820px){
  .site-header{height:84px;padding:0 16px}
  .brand-lockup{height:72px}
  .brand-final-logo{height:66px;max-width:300px}
  .hero-content{margin-top:132px}
}
@media (max-width:560px){
  .brand-lockup{height:64px}
  .brand-final-logo{height:58px;max-width:250px}
  .hero-content{margin-top:118px}
}

/* Page Fibre optique */
.service-card-link{display:block;color:inherit;text-decoration:none;transition:transform .25s ease,border-color .25s ease}
.service-card-link:hover{transform:translateY(-4px);border-color:rgba(75,207,255,.42)}
.fiber-page .site-header{background:rgba(2,9,22,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.fiber-hero{min-height:760px;padding:165px clamp(24px,6vw,100px) 85px;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(42px,6vw,90px);align-items:center;background:radial-gradient(circle at 18% 28%,rgba(8,122,255,.16),transparent 34%),linear-gradient(180deg,#05101f,#020916)}
.fiber-hero-copy{max-width:780px}
.fiber-hero h1{margin:18px 0 24px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:clamp(48px,5.7vw,86px);line-height:.98;letter-spacing:-.045em}
.fiber-hero h1 span{display:block;color:#68d8ff}
.fiber-hero-copy>p{max-width:730px;color:#c8d8e9;font-size:19px;line-height:1.75}
.fiber-hero-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px}.fiber-hero-tags span,.sector-list span{padding:9px 13px;border:1px solid rgba(81,195,255,.20);border-radius:999px;background:rgba(4,28,55,.42);color:#bfeeff;font-size:12px;font-weight:700;letter-spacing:.04em}
.fiber-hero-visual{position:relative;min-height:500px;border-radius:24px;overflow:hidden;border:1px solid rgba(86,188,255,.24);box-shadow:0 35px 90px rgba(0,0,0,.45)}
.fiber-hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(1,8,20,.82) 100%)}
.fiber-hero-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fiber-visual-label{position:absolute;z-index:2;left:24px;bottom:22px;display:flex;flex-direction:column;gap:4px}.fiber-visual-label strong{font-size:18px}.fiber-visual-label span{color:#b1c7dc;font-size:12px}
.fiber-intro{background:linear-gradient(180deg,#020916,#061325)}
.fiber-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.fiber-pillars div{padding:24px;border:1px solid var(--border);border-radius:16px;background:rgba(7,26,50,.62)}.fiber-pillars strong{display:block;color:#75ddff;font-size:18px;margin-bottom:8px}.fiber-pillars span{color:#9eb4cc;line-height:1.55;font-size:14px}
.fiber-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fiber-service{position:relative;padding:28px 30px 30px 78px;min-height:205px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:linear-gradient(135deg,rgba(10,31,59,.78),rgba(4,14,29,.76))}.fiber-service>span{position:absolute;left:26px;top:29px;color:#4bd5ff;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:13px;letter-spacing:.12em}.fiber-service h3{margin:0 0 10px;font-size:22px}.fiber-service p{margin:0;color:#9eb4cc;line-height:1.65;font-size:14.5px}
.fiber-showcase{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(42px,7vw,100px);align-items:center;background:radial-gradient(circle at 15% 35%,rgba(15,130,255,.11),transparent 32%),#030b18}.fiber-gallery{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;min-height:510px}.fiber-gallery figure{position:relative;margin:0;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.09);min-height:510px}.fiber-gallery figure.portrait{min-height:510px}.fiber-gallery img{width:100%;height:100%;object-fit:cover}.fiber-gallery figure.portrait img{object-position:center top}.fiber-gallery figcaption{position:absolute;left:14px;bottom:14px;padding:8px 10px;border-radius:8px;background:rgba(1,9,22,.78);backdrop-filter:blur(8px);font-size:12px;color:#d8efff}.fiber-showcase-copy h2{margin:14px 0 18px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:clamp(36px,4vw,58px);line-height:1.04;letter-spacing:-.035em}.fiber-showcase-copy>p{color:var(--muted);font-size:17px;line-height:1.75}
.application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.application-card{padding:26px;border:1px solid var(--border);border-radius:17px;background:linear-gradient(180deg,rgba(9,29,55,.66),rgba(3,13,28,.72))}.application-card h3{margin:0 0 10px;font-size:20px}.application-card p{margin:0;color:#9eb4cc;line-height:1.62;font-size:14px}
.fiber-sectors{background:linear-gradient(180deg,#061325,#020916)}.sector-list{display:flex;flex-wrap:wrap;gap:10px;max-width:1000px}.fiber-zone{margin-top:26px;color:#a8bdd7;font-size:16px}.fiber-zone strong{color:#fff}
@media (max-width:1050px){.fiber-hero{grid-template-columns:1fr;min-height:auto}.fiber-hero-visual{min-height:430px}.fiber-pillars{grid-template-columns:repeat(2,1fr)}.fiber-showcase{grid-template-columns:1fr}.application-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:820px){.fiber-hero{padding:126px 20px 65px}.fiber-hero h1{font-size:clamp(44px,13vw,66px)}.fiber-hero-copy>p{font-size:16px}.fiber-hero-visual{min-height:360px}.fiber-services{grid-template-columns:1fr}.fiber-gallery{grid-template-columns:1fr;min-height:auto}.fiber-gallery figure,.fiber-gallery figure.portrait{min-height:360px}.application-grid{grid-template-columns:1fr}}
@media (max-width:560px){.fiber-pillars{grid-template-columns:1fr}.fiber-service{padding:26px 22px 24px}.fiber-service>span{position:static;display:block;margin-bottom:18px}.fiber-hero-visual{min-height:300px}}


/* Ajustement validé 22/08/2026 : hero Fibre dans le style de la page d'accueil */
.fiber-page .fiber-hero{
  position:relative;
  min-height:100svh;
  display:flex;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  padding:130px clamp(24px,6vw,100px) 90px;
  background:#020916;
}
.fiber-page .fiber-hero-bg{
  position:absolute;
  inset:0;
  background-image:url("assets/fibre-hero-bg.webp");
  background-size:cover;
  background-position:center right;
  transform:scale(1.02);
}
.fiber-page .fiber-hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,6,17,.96) 0%,rgba(1,11,27,.82) 34%,rgba(1,9,21,.34) 66%,rgba(0,4,13,.48) 100%),
    linear-gradient(180deg,rgba(0,5,15,.50) 0%,rgba(0,4,12,.16) 42%,rgba(0,4,12,.70) 100%);
}
.fiber-page .fiber-hero-grid{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(68,177,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(68,177,255,.035) 1px,transparent 1px);
  background-size:86px 86px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.28),transparent 80%);
}
.fiber-page .fiber-hero-copy{
  position:relative;
  z-index:2;
  width:min(760px,78vw);
  max-width:760px;
}
.fiber-page .fiber-hero h1{
  max-width:900px;
}
.fiber-page .fiber-hero-copy > p{
  max-width:690px;
  color:#d4e2f2;
  font-size:clamp(17px,1.5vw,21px);
  line-height:1.7;
}
.fiber-page .fiber-hero-tags{
  margin-top:32px;
}
.fiber-page .fiber-showcase{
  background:
    radial-gradient(circle at 15% 35%,rgba(15,130,255,.11),transparent 32%),
    linear-gradient(180deg,#030b18,#020916);
}
.fiber-page .fiber-gallery figure:first-child img{
  object-position:center center;
}
@media (max-width:1050px){
  .fiber-page .fiber-hero{min-height:88svh;padding:126px 24px 76px}
  .fiber-page .fiber-hero-bg{background-position:64% center}
  .fiber-page .fiber-hero-copy{width:min(760px,100%)}
}
@media (max-width:820px){
  .fiber-page .fiber-hero{min-height:auto;padding:118px 20px 64px}
  .fiber-page .fiber-hero-bg{background-position:68% center}
  .fiber-page .fiber-hero-copy > p{font-size:16px}
}
@media (max-width:560px){
  .fiber-page .fiber-hero{padding:108px 20px 56px}
  .fiber-page .fiber-hero-bg{background-position:72% center}
}


/* Page Réseaux cuivre & VDI - 22/08/2026 */
.vdi-page .site-header{background:rgba(2,9,22,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.vdi-hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;isolation:isolate;padding:130px clamp(24px,6vw,100px) 90px;background:#020916}
.vdi-hero-bg{position:absolute;inset:0;background-image:url("assets/vdi-hero-generated.webp");background-size:cover;background-position:center 43%;transform:scale(1.02)}
.vdi-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,6,17,.97) 0%,rgba(1,11,27,.86) 36%,rgba(1,9,21,.42) 68%,rgba(0,4,13,.54) 100%),linear-gradient(180deg,rgba(0,5,15,.50),rgba(0,4,12,.12) 44%,rgba(0,4,12,.72) 100%)}
.vdi-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(68,177,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(68,177,255,.035) 1px,transparent 1px);background-size:86px 86px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.28),transparent 80%)}
.vdi-hero-copy{position:relative;z-index:2;width:min(790px,82vw);max-width:790px}
.vdi-hero h1{margin:18px 0 24px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:clamp(48px,5.7vw,86px);line-height:.98;letter-spacing:-.045em;max-width:1000px}
.vdi-hero h1 span{display:block;color:#68d8ff;text-shadow:0 0 42px rgba(20,135,255,.26)}
.vdi-hero-copy>p{max-width:720px;color:#d4e2f2;font-size:clamp(17px,1.5vw,21px);line-height:1.7}
.vdi-hero-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:32px}.vdi-hero-tags span{padding:9px 13px;border:1px solid rgba(81,195,255,.20);border-radius:999px;background:rgba(4,28,55,.42);color:#bfeeff;font-size:12px;font-weight:700;letter-spacing:.04em}
.vdi-intro{background:radial-gradient(circle at 85% 20%,rgba(255,196,32,.07),transparent 31%),linear-gradient(180deg,#05101f,#020916)}
.vdi-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:1150px}.vdi-stats div{padding:28px;border:1px solid rgba(255,255,255,.09);border-radius:17px;background:linear-gradient(180deg,rgba(10,29,55,.72),rgba(4,15,31,.62))}.vdi-stats strong{display:block;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:clamp(27px,3vw,42px);color:#72dcff;margin-bottom:8px}.vdi-stats span{color:#9eb4cc;line-height:1.55;font-size:14px}
.vdi-services .fiber-service{min-height:245px}
.vdi-showcase{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(42px,7vw,100px);align-items:center;background:radial-gradient(circle at 15% 35%,rgba(255,203,33,.07),transparent 32%),#030b18}
.vdi-gallery{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:1fr 1fr;gap:12px;min-height:620px}.vdi-gallery figure{position:relative;margin:0;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.09);min-height:300px}.vdi-gallery .vdi-photo-tall{grid-row:1/3;min-height:620px}.vdi-gallery img{width:100%;height:100%;object-fit:cover}.vdi-gallery figcaption{position:absolute;left:14px;bottom:14px;padding:8px 10px;border-radius:8px;background:rgba(1,9,22,.78);backdrop-filter:blur(8px);font-size:12px;color:#d8efff}
.vdi-scale{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,7vw,90px);align-items:center;background:linear-gradient(180deg,#04101f,#020916)}
.vdi-scale-copy h2{margin:14px 0 18px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:clamp(36px,4vw,58px);line-height:1.04;letter-spacing:-.035em}.vdi-scale-copy p{color:var(--muted);font-size:17px;line-height:1.75}
.vdi-scale-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:520px}.vdi-scale-photos img{width:100%;height:520px;object-fit:cover;border-radius:20px;border:1px solid rgba(255,255,255,.09)}
@media (max-width:1050px){.vdi-hero{min-height:88svh}.vdi-stats{grid-template-columns:1fr}.vdi-showcase,.vdi-scale{grid-template-columns:1fr}.vdi-gallery{min-height:560px}.vdi-gallery .vdi-photo-tall{min-height:560px}}
@media (max-width:820px){.vdi-hero{min-height:auto;padding:118px 20px 64px}.vdi-hero-bg{background-position:55% center}.vdi-hero-copy{width:100%}.vdi-hero-copy>p{font-size:16px}.vdi-gallery{grid-template-columns:1fr;grid-template-rows:auto;min-height:auto}.vdi-gallery .vdi-photo-tall{grid-row:auto;min-height:380px}.vdi-gallery figure{min-height:330px}.vdi-scale-photos{grid-template-columns:1fr;min-height:auto}.vdi-scale-photos img{height:390px}}
@media (max-width:560px){.vdi-hero{padding:108px 20px 56px}.vdi-hero-bg{background-position:60% center}.vdi-gallery figure,.vdi-gallery .vdi-photo-tall{min-height:300px}}


/* Page Électricité & espaces de travail - 22/08/2026 */
.office-elec-page .site-header{background:rgba(2,9,22,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.office-elec-hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;isolation:isolate;padding:130px clamp(24px,6vw,100px) 90px;background:#020916}
.office-elec-hero-bg{position:absolute;inset:0;background-image:url("assets/electricite-bureaux-hero.webp");background-size:cover;background-position:center right;transform:scale(1.02)}
.office-elec-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,6,17,.96) 0%,rgba(1,11,27,.82) 34%,rgba(1,9,21,.28) 68%,rgba(0,4,13,.32) 100%),linear-gradient(180deg,rgba(0,5,15,.42),rgba(0,4,12,.08) 44%,rgba(0,4,12,.66) 100%)}
.office-elec-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(68,177,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(68,177,255,.03) 1px,transparent 1px);background-size:86px 86px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.25),transparent 80%)}
.office-elec-hero-copy{position:relative;z-index:2;width:min(760px,80vw);max-width:760px}
.office-elec-hero h1{margin:18px 0 24px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:clamp(48px,5.7vw,86px);line-height:.98;letter-spacing:-.045em;max-width:980px}
.office-elec-hero h1 span{display:block;color:#68d8ff;text-shadow:0 0 42px rgba(20,135,255,.26)}
.office-elec-hero-copy>p{max-width:700px;color:#d4e2f2;font-size:clamp(17px,1.5vw,21px);line-height:1.7}
.office-elec-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:32px}.office-elec-tags span{padding:9px 13px;border:1px solid rgba(81,195,255,.20);border-radius:999px;background:rgba(4,28,55,.42);color:#bfeeff;font-size:12px;font-weight:700;letter-spacing:.04em}
.office-elec-intro{background:linear-gradient(180deg,#05101f,#020916)}
.office-elec-points{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.office-elec-points div{padding:24px;border:1px solid var(--border);border-radius:16px;background:rgba(7,26,50,.62)}.office-elec-points strong{display:block;color:#75ddff;font-size:18px;margin-bottom:8px}.office-elec-points span{color:#9eb4cc;line-height:1.55;font-size:14px}
.office-elec-visual-section{padding-top:42px;padding-bottom:110px;background:#020916}.office-elec-feature-image{max-width:1320px;margin:auto;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.10);box-shadow:0 35px 90px rgba(0,0,0,.42)}.office-elec-feature-image img{display:block;width:100%;height:auto}
.office-elec-services .fiber-service{min-height:220px}
.office-elec-positioning{background:radial-gradient(circle at 85% 20%,rgba(14,133,255,.09),transparent 30%),linear-gradient(180deg,#061325,#020916)}
@media (max-width:1050px){.office-elec-hero{min-height:88svh}.office-elec-points{grid-template-columns:repeat(2,1fr)}}
@media (max-width:820px){.office-elec-hero{min-height:auto;padding:118px 20px 64px}.office-elec-hero-bg{background-position:67% center}.office-elec-hero-copy{width:100%}.office-elec-hero-copy>p{font-size:16px}.office-elec-points{grid-template-columns:1fr}.office-elec-visual-section{padding:26px 20px 70px}}
@media (max-width:560px){.office-elec-hero{padding:108px 20px 56px}.office-elec-hero-bg{background-position:72% center}}


/* Accueil : trois expertises principales, équilibrées sur toute la largeur */
.section-intro .cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
@media (max-width:1050px){.section-intro .cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:900px){.section-intro .cards-grid{grid-template-columns:1fr;}}

/* Page Tests, mesures & certification - 22/08/2026 */
.tests-page .site-header{background:rgba(2,9,22,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.tests-hero{position:relative;min-height:94svh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:44px;align-items:center;overflow:hidden;isolation:isolate;padding:135px clamp(24px,6vw,100px) 90px;background:radial-gradient(circle at 83% 38%,rgba(27,137,255,.20),transparent 28%),radial-gradient(circle at 68% 72%,rgba(255,148,0,.10),transparent 24%),#020916}
.tests-hero-glow{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,6,17,.98) 0%,rgba(1,11,27,.90) 43%,rgba(1,9,21,.42) 74%,rgba(0,4,13,.30) 100%)}
.tests-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(68,177,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(68,177,255,.035) 1px,transparent 1px);background-size:86px 86px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.30),transparent 82%)}
.tests-hero-copy,.tests-hero-equipment{position:relative;z-index:2}.tests-hero-copy{max-width:790px}.tests-hero h1{margin:18px 0 24px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:clamp(48px,5.7vw,84px);line-height:.98;letter-spacing:-.045em}.tests-hero h1 span{display:block;color:#68d8ff;text-shadow:0 0 42px rgba(20,135,255,.26)}.tests-hero-copy>p{max-width:735px;color:#d4e2f2;font-size:clamp(17px,1.5vw,21px);line-height:1.7}.tests-hero-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:30px}.tests-hero-tags span{padding:9px 13px;border:1px solid rgba(81,195,255,.20);border-radius:999px;background:rgba(4,28,55,.42);color:#bfeeff;font-size:12px;font-weight:700;letter-spacing:.03em}
.tests-hero-equipment{height:590px;min-width:0;display:flex;align-items:center;justify-content:center}.tests-hero-equipment .tests-hero-composite{position:relative;width:112%;max-width:none;height:auto;object-fit:contain;filter:drop-shadow(0 35px 55px rgba(0,0,0,.38));border-radius:0;mix-blend-mode:screen;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.72) 10%,#000 24%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.72) 10%,#000 24%,#000 100%)}
.tests-intro{background:linear-gradient(180deg,#05101f,#020916)}.tests-equipment-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1260px}.equipment-card{display:grid;grid-template-columns:minmax(180px,.75fr) 1.25fr;gap:26px;align-items:center;padding:26px;border:1px solid rgba(255,255,255,.09);border-radius:20px;background:linear-gradient(180deg,rgba(10,29,55,.74),rgba(4,15,31,.68));min-height:310px}.equipment-card-wide{grid-column:1/-1;grid-template-columns:.95fr 1.05fr}.equipment-image{height:250px;display:flex;align-items:center;justify-content:center;overflow:hidden}.equipment-image img{max-width:100%;max-height:100%;object-fit:contain}.equipment-image.modules{height:300px;background:#fff;border-radius:14px}.equipment-image.modules img{width:100%;height:100%;object-fit:cover}.equipment-type{display:inline-block;margin-bottom:10px;color:#6fdcff;font-size:11px;font-weight:800;letter-spacing:.12em}.equipment-card h3{margin:0 0 12px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:27px}.equipment-card p{margin:0;color:#9fb4ca;line-height:1.7}
.tests-section{overflow:hidden}.tests-two-col{display:grid;grid-template-columns:.86fr 1.14fr;gap:clamp(36px,6vw,82px);align-items:center}.tests-copy h2{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:clamp(36px,4vw,58px);line-height:1.04;letter-spacing:-.035em;margin:14px 0 20px}.tests-copy p{color:var(--muted);font-size:17px;line-height:1.75}.tests-metrics,.fiber-report-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:26px 0}.tests-metrics div,.fiber-report-metrics div{padding:18px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(4,20,40,.62)}.tests-metrics strong,.fiber-report-metrics strong{display:block;color:#70dbff;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:24px;margin-bottom:5px}.tests-metrics span,.fiber-report-metrics span{color:#8fa8c1;font-size:13px}.tests-doc-link{margin-top:4px}.report-preview{display:block;position:relative;text-decoration:none;color:inherit;border:1px solid rgba(255,255,255,.10);border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 28px 70px rgba(0,0,0,.35);transition:transform .25s ease,border-color .25s ease}.report-preview:hover{transform:translateY(-4px);border-color:rgba(99,215,255,.52)}.report-preview img{display:block;width:100%;height:auto}.report-preview>span{position:absolute;left:16px;bottom:16px;padding:8px 11px;border-radius:8px;background:rgba(2,12,28,.84);backdrop-filter:blur(8px);color:#e6f6ff;font-size:12px;font-weight:700}.fiber-report-metrics{grid-template-columns:repeat(4,1fr);max-width:1180px;margin:10px 0 30px}.report-pair{display:grid;grid-template-columns:1.08fr .92fr;gap:16px;align-items:start}.report-pair .report-preview{max-height:920px}.report-pair .report-preview img{width:100%}.tests-note{max-width:1100px;margin:28px auto 0;padding:18px 22px;border-left:3px solid #51cfff;border-radius:0 12px 12px 0;background:rgba(5,28,54,.72);color:#a9bfd4;line-height:1.65}.tests-note strong{color:#eaf7ff}
.connector-compare{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:1180px}.connector-card{position:relative;display:block;text-decoration:none;color:inherit;border:1px solid rgba(255,255,255,.10);border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.30);transition:transform .25s ease}.connector-card:hover{transform:translateY(-4px)}.connector-card img{display:block;width:100%;height:auto}.connector-status{position:absolute;z-index:2;right:16px;top:16px;padding:9px 12px;border-radius:999px;color:#fff;font-weight:800;font-size:12px;letter-spacing:.05em;box-shadow:0 8px 24px rgba(0,0,0,.22)}.connector-card.good .connector-status{background:#158d47}.connector-card.bad .connector-status{background:#c52c2c}.connector-caption{padding:18px 20px;background:#071326}.connector-caption strong{display:block;color:#eef8ff;font-size:18px;margin-bottom:5px}.connector-caption span{color:#95adc5;font-size:13px;line-height:1.5}.tests-final{background:radial-gradient(circle at 80% 20%,rgba(15,130,255,.10),transparent 30%),linear-gradient(180deg,#04101f,#020916)}.tests-report-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tests-report-links a{padding:24px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(7,26,50,.62);text-decoration:none;transition:transform .2s ease,border-color .2s ease}.tests-report-links a:hover{transform:translateY(-3px);border-color:rgba(83,207,255,.42)}.tests-report-links strong{display:block;color:#eaf7ff;font-size:18px;margin-bottom:7px}.tests-report-links span{color:#70d7ff;font-size:13px}
@media (max-width:1100px){.tests-hero{grid-template-columns:1fr;min-height:auto;padding-top:125px}.tests-hero-equipment{height:430px;max-width:760px;width:100%;margin:auto}.tests-hero-equipment .tests-hero-composite{width:94%}.tests-equipment-grid{grid-template-columns:1fr}.equipment-card-wide{grid-column:auto}.tests-two-col{grid-template-columns:1fr}.fiber-report-metrics{grid-template-columns:repeat(2,1fr)}}
@media (max-width:820px){.tests-hero{padding:112px 20px 60px}.tests-hero-equipment{height:340px}.tests-hero-equipment .tests-hero-composite{width:100%}.equipment-card,.equipment-card-wide{grid-template-columns:1fr}.equipment-image{height:220px}.equipment-image.modules{height:230px}.report-pair,.connector-compare{grid-template-columns:1fr}.tests-report-links{grid-template-columns:1fr}.fiber-report-metrics{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.tests-hero-equipment{height:275px}.tests-hero-tags{gap:7px}.equipment-card{padding:20px}.tests-metrics,.fiber-report-metrics{grid-template-columns:1fr}.report-preview>span{position:static;display:block;border-radius:0;background:#061226}.connector-status{top:10px;right:10px}.tests-hero-equipment .tests-hero-composite{width:108%}}

/* Lien transversal vers la page Tests & mesures */
.tests-crosslink{display:flex;flex-direction:column;justify-content:center;min-height:245px;padding:28px;border:1px solid rgba(82,202,255,.28);border-radius:16px;background:linear-gradient(145deg,rgba(7,45,79,.86),rgba(3,17,34,.86));text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.tests-crosslink:hover{transform:translateY(-3px);border-color:rgba(90,215,255,.58);box-shadow:0 18px 40px rgba(0,0,0,.24)}.tests-crosslink span{font-size:11px;font-weight:800;letter-spacing:.12em;color:#67d7ff;margin-bottom:10px}.tests-crosslink strong{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:22px;line-height:1.2;color:#eefaff;margin-bottom:18px}.tests-crosslink em{font-style:normal;font-size:13px;font-weight:700;color:#7be1ff}


/* Finalisation accueil : 4 expertises équilibrées */
.section-intro .cards-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
@media (max-width:1150px){.section-intro .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:700px){.section-intro .cards-grid{grid-template-columns:1fr;}}

/* Pages légales */
.legal-main{max-width:1050px;margin:0 auto;padding:145px 24px 90px}.legal-main h1{font-size:clamp(42px,6vw,72px);margin:0 0 18px}.legal-main h2{font-size:24px;margin:38px 0 12px;color:#75ddff}.legal-main p,.legal-main li{color:#b6c8da;line-height:1.75}.legal-main a{color:#75ddff}.legal-card{padding:28px;border:1px solid var(--border);border-radius:18px;background:rgba(7,26,50,.62);margin-top:24px}.legal-note{margin-top:28px;padding:16px 18px;border-left:3px solid #f0a23a;background:rgba(240,162,58,.08);color:#d8c5a7}
:focus-visible{outline:3px solid #68d8ff;outline-offset:3px}


/* Bilingue FR / ES */
.lang-switch{display:inline-flex!important;align-items:center;justify-content:center;min-width:42px;height:34px;padding:0 10px!important;border:1px solid rgba(104,216,255,.34);border-radius:999px;color:#8fe7ff!important;font-weight:800!important;letter-spacing:.08em;background:rgba(5,28,54,.58)}
.lang-switch:hover{background:rgba(20,87,132,.42);border-color:rgba(104,216,255,.68)}
.footer-locations{display:flex;gap:28px;flex-wrap:wrap;color:#92a9c0;font-size:12px;line-height:1.5}.footer-locations span{max-width:330px}.footer-locations strong{display:block;color:#dcecff;font-size:11px;text-transform:uppercase;letter-spacing:.09em;margin-bottom:3px}
@media(max-width:820px){.footer-locations{flex-direction:column;gap:10px}.main-nav .lang-switch{margin-top:8px;width:max-content}}


/* Recrutement CONEXYS - 26/08/2026 */
.btn-recruit{border:1px solid rgba(72,226,174,.65);background:rgba(17,75,66,.36);color:#bfffe9;box-shadow:0 12px 34px rgba(38,212,158,.10)}
.btn-recruit:hover{transform:translateY(-2px);border-color:#78f2c6;background:rgba(17,92,78,.52);box-shadow:0 18px 42px rgba(38,212,158,.18)}
.recruit-page .site-header{background:rgba(2,9,22,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.recruit-hero{position:relative;overflow:hidden;padding:190px clamp(20px,7vw,120px) 88px;background:radial-gradient(circle at 75% 25%,rgba(32,197,154,.13),transparent 34%),radial-gradient(circle at 15% 20%,rgba(10,127,255,.18),transparent 35%),linear-gradient(180deg,#05101f,#020916)}
.recruit-glow{position:absolute;right:-120px;top:85px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(49,211,255,.12),transparent 66%);pointer-events:none}
.recruit-hero-inner{position:relative;z-index:2;max-width:980px}
.recruit-hero h1{margin:18px 0 20px;font-size:clamp(52px,7vw,96px);line-height:.96;letter-spacing:-.05em}
.recruit-hero h1 span{color:#69dbff}
.recruit-hero p{max-width:760px;color:#cbdcec;font-size:clamp(17px,1.7vw,21px);line-height:1.7}
.recruit-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.recruit-badges span{padding:10px 14px;border-radius:999px;border:1px solid rgba(81,195,255,.22);background:rgba(4,28,55,.42);color:#c8efff;font-size:12px;font-weight:750;letter-spacing:.03em}
.beginner-callout{margin-top:30px;max-width:760px;padding:18px 20px;border:1px solid rgba(75,224,172,.26);border-radius:14px;background:linear-gradient(135deg,rgba(17,73,63,.38),rgba(6,31,42,.34));color:#cceee3;line-height:1.6}
.beginner-callout strong{color:#8ef0cc;font-size:17px}
.recruit-content{background:linear-gradient(180deg,#020916,#04101f)}
.recruit-layout{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(38px,6vw,82px);align-items:start}
.recruit-info{position:sticky;top:140px}
.recruit-info h2{margin:14px 0 18px;font-size:clamp(34px,3.7vw,54px);line-height:1.04;letter-spacing:-.035em}
.recruit-info>p{color:var(--muted);font-size:17px;line-height:1.72}
.application-card{padding:clamp(24px,4vw,42px);border:1px solid rgba(87,181,255,.19);border-radius:22px;background:linear-gradient(180deg,rgba(7,23,45,.88),rgba(3,13,28,.92));box-shadow:0 30px 90px rgba(0,0,0,.36)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.application-form label{display:flex;flex-direction:column;gap:8px;color:#d9e8f6;font-size:13px;font-weight:700}
.application-form label.full{grid-column:1/-1}
.application-form input,.application-form select,.application-form textarea{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(1,8,19,.66);color:#f5f9ff;font:inherit;font-weight:500;outline:none;transition:.2s ease}
.application-form input,.application-form select{height:50px;padding:0 14px}
.application-form textarea{padding:14px;resize:vertical;min-height:145px;line-height:1.55}
.application-form input:focus,.application-form select:focus,.application-form textarea:focus{border-color:rgba(71,207,255,.75);box-shadow:0 0 0 3px rgba(32,155,255,.10)}
.application-form select option{background:#071426;color:#fff}
.file-field input[type=file]{height:auto;padding:13px}
.file-field small{color:#7f96ad;font-weight:500}
.consent{flex-direction:row!important;align-items:flex-start;gap:11px!important;color:#91a8c0!important;font-size:12px!important;line-height:1.55}
.consent input{width:18px!important;height:18px!important;flex:0 0 18px;margin-top:1px;padding:0}
.submit-application{margin-top:24px;border:0;cursor:pointer;width:100%}
.form-status{min-height:22px;margin:14px 0 0;color:#9fb6cd;font-size:13px;line-height:1.5}
@media(max-width:900px){.recruit-layout{grid-template-columns:1fr}.recruit-info{position:static}.recruit-hero{padding-top:145px}}
@media(max-width:620px){.form-grid{grid-template-columns:1fr}.application-form label.full{grid-column:auto}.recruit-hero{padding:125px 20px 65px}.recruit-content{padding-left:20px;padding-right:20px}.application-card{padding:22px 18px}.hero-actions .btn-recruit{width:100%}}


/* Recrutement - anti-spam et retours d'envoi */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-status.success{color:#8ee6b2}
.form-status.error{color:#ffb0b0}
