:root {
  --header-bg: rgba(173, 216, 230, 0.3); /* bleu clair transparent */
  --text: #434F60;
  --max-width: 1200px;
  font-family: Arial, Helvetica, sans-serif;
}

/* Reset */
* {box-sizing:border-box; margin:0; padding:0;}
body {color:var(--text); background:#fff; line-height:1.5;}

/* Header */
header {
  position:fixed;
  top:0; left:0; right:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 22px;
  background:var(--header-bg);
  backdrop-filter: blur(6px);
  z-index:100;
}
.brand {font-weight:bold; font-size:1.2rem;}
nav ul {list-style:none; display:flex; gap:15px;}
nav a, nav label {
  text-decoration:none;
  color:var(--text);
  padding:8px 10px;
  border-radius:6px;
  font-weight:600;
}
nav a:hover, nav label:hover {background:rgba(255,255,255,0.4);}

/* Dropdown */
.dropdown {position:relative;}
.submenu {
  position:absolute;
  left:0; top:120%;
  background:#fff;
  border-radius:8px;
  box-shadow:0 4px 20px rgba(0,0,0,0.15);
  display:none;
  flex-direction:column;
  min-width:160px;
  }
.submenu a {padding:10px; display:block;}
.submenu a:hover {background:#e0f4ff;}
.dropdown:hover .submenu,
.dropdown input:checked ~ .submenu {display:flex;}

/* Mettre "Service" en orange */
nav label[for="sub-toggle"] {
  color: #A35700;
}

/* Hamburger */
.hamburger {display:none; cursor:pointer; width:40px; height:40px; justify-content:center; align-items:center;}
.hamburger span {width:24px; height:2px; background:var(--text); position:relative; display:block;}
.hamburger span::before, .hamburger span::after {
  content:""; position:absolute; width:24px; height:2px; background:var(--text);
}
.hamburger span::before {top:-7px;}
.hamburger span::after {bottom:-7px;}
#nav-toggle {display:none;}

/* Hero Video */
.hero {height:100vh; position:relative; display:flex; align-items:center; justify-content:center; overflow:hidden;}
.hero video {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.hero .overlay {position:relative; z-index:2; text-align:center; color:#fff; text-shadow:0 4px 10px rgba(0,0,0,0.6);}
.hero h1 {font-size:2.2rem;}

/* Gallery */
.gallery {max-width:var(--max-width); margin:40px auto; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding:0 20px;}
.card img {width:100%; height:220px; object-fit:cover; border-radius:8px; box-shadow:0 4px 15px rgba(0,0,0,0.1);}
.title {margin-top:10px; font-weight:bold; text-align:center;font-size:1.3rem;color:#A35700;}

/* Footer */
footer {background:#74D4FF; text-align:center; padding:20px;}
.footer-top, .footer-middle, .footer-bottom {margin:10px 0;}
footer svg {width:24px; height:24px; fill:var(--text);}
footer a {color:var(--text); font-weight:bold;}

/* Responsive */
@media (max-width:600px) {
  nav {display:none;}
  .hamburger {display:flex;}
  #nav-toggle:checked ~ header nav {display:block; position:absolute; top:60px; left:0; right:0; background:#fff; padding:20px;}
  header nav ul {flex-direction:column; gap:10px;}
  .gallery {grid-template-columns:1fr;}
}
