/* AquaPro — site premium nanotechnologie */
:root{
  --navy:#0A2C54;
  --navy-950:#061b35;
  --navy-900:#082646;
  --tech:#1E73BE;
  --tech-2:#45A7FF;
  --white:#FFFFFF;
  --silver:#C0C7D1;
  --light:#F5F7FA;
  --ink:#132033;
  --muted:#64748b;
  --success:#1fbf75;
  --nano-green:#2EAF5D;
  --nano-green-light:#34D399;
  --glass:rgba(255,255,255,.12);
  --glass-border:rgba(255,255,255,.22);
  --shadow:0 28px 90px rgba(6,27,53,.24);
  --radius-xl:32px;
  --radius-lg:22px;
  --radius-md:16px;
  --max:1220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{
  margin:0;
  overflow-x:hidden;
  font-family:Inter,Open Sans,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:var(--white);
  line-height:1.6;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
.container{width:min(calc(100% - 32px),var(--max));margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:8px;background:#fff;color:#000;padding:10px;z-index:999}.skip-link:focus{left:8px}

.header{
  position:fixed;inset:0 0 auto 0;z-index:100;
  background:rgba(255,255,255,.86);backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(10,44,84,.09);
  transition:box-shadow .25s ease, background .25s ease;
}
.header.scrolled{box-shadow:0 12px 40px rgba(10,44,84,.12);background:rgba(255,255,255,.95)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand img{width:54px;height:54px;object-fit:contain}
.brand-text strong{
  display:block;
  font-family:Montserrat,Poppins,sans-serif;
  font-weight:900;
  font-size:1.18rem;
  letter-spacing:-.035em;
  line-height:1;
  color:var(--navy);
  background:linear-gradient(135deg,var(--navy) 0%,var(--tech) 78%,var(--silver) 120%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:0 8px 24px rgba(10,44,84,.10);
}
.brand-text span{display:block;color:var(--navy);opacity:.72;font-size:.72rem;font-weight:800;letter-spacing:.02em;line-height:1.25;margin-top:5px;max-width:220px}
.nav-links{display:flex;align-items:center;gap:24px;color:#334155;font-weight:800;font-size:.92rem}
.nav-links a:hover{color:var(--tech)}
.nav-actions{display:flex;gap:10px;align-items:center}
.mobile-toggle{display:none;width:46px;height:46px;border:1px solid rgba(10,44,84,.12);background:#fff;border-radius:15px;color:var(--navy);font-size:1.35rem}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:900;cursor:pointer;transition:transform .22s ease, box-shadow .22s ease, background .22s ease;color:inherit}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,var(--navy),var(--tech));color:#fff;box-shadow:0 18px 45px rgba(30,115,190,.28)}
.btn-primary:hover{box-shadow:0 22px 60px rgba(30,115,190,.35)}
.btn-ghost{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.3);backdrop-filter:blur(14px)}
.btn-light{background:#fff;color:var(--navy);box-shadow:0 14px 38px rgba(10,44,84,.12)}
.btn-outline{background:#fff;color:var(--navy);border-color:rgba(10,44,84,.16)}

.hero{position:relative;min-height:100svh;display:grid;align-items:center;padding:132px 0 80px;overflow:visible;color:#fff;background:linear-gradient(130deg,rgba(6,27,53,.92),rgba(10,44,84,.78)),url('https://images.unsplash.com/photo-1530053969600-caed2596d242?auto=format&fit=crop&w=1800&q=82') center/cover}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 25%,rgba(69,167,255,.32),transparent 30%),radial-gradient(circle at 82% 20%,rgba(192,199,209,.18),transparent 26%)}
.hero::after{content:"";position:absolute;inset:auto -10% -35% -10%;height:52%;background:radial-gradient(ellipse at center,rgba(69,167,255,.28),transparent 68%);filter:blur(8px)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.kicker{display:inline-flex;align-items:center;gap:10px;padding:10px 20px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(14px);font-size:.78rem;text-transform:uppercase;letter-spacing:.11em;font-weight:900;color:#dcefff}
.kicker::before{content:"";width:8px;height:8px;border-radius:50%;background:#67e8f9;box-shadow:0 0 22px #67e8f9}
h1,h2,h3{font-family:Montserrat,Poppins,sans-serif;line-height:1.12;margin:0;letter-spacing:-.055em;color:inherit}
h1{font-size:clamp(2.2rem,5.5vw,5.2rem);margin-top:24px;max-width:950px;text-transform:uppercase}
h1 span{background:linear-gradient(135deg,#fff,#b9e4ff 45%,#7cc6ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{font-size:clamp(1.04rem,1.55vw,1.28rem);color:#dbeafe;max-width:720px;margin:24px 0 0;line-height:1.6;overflow:visible}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px;max-width:780px}
.proof{padding:16px;border-radius:18px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(14px)}
.proof strong{display:block;font-size:1.25rem;color:#fff}.proof span{font-size:.82rem;color:#dbeafe}


.logo-plate img{width:54px;height:54px;object-fit:contain}.logo-plate strong{display:block;font-family:Montserrat;font-weight:900}.logo-plate span{display:block;color:var(--muted);font-size:.72rem;font-weight:800}
.surface-demo{position:absolute;inset:118px 24px 24px;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.75),rgba(174,216,255,.25)),url('assets/image_comptoir_flyer.jpg') center/cover;border:1px solid rgba(255,255,255,.42);overflow:hidden}
.drop{position:absolute;width:16px;height:20px;border-radius:60% 60% 70% 70%;background:radial-gradient(circle at 35% 25%,#fff,#8ed8ff 48%,#1E73BE);opacity:.88;box-shadow:inset -3px -4px 8px rgba(10,44,84,.22),0 8px 20px rgba(10,44,84,.18);animation:floatDrop 5.5s ease-in-out infinite}
.drop:nth-child(1){left:22%;top:20%;animation-delay:.1s}.drop:nth-child(2){left:55%;top:38%;animation-delay:1s;transform:scale(1.35)}.drop:nth-child(3){left:72%;top:18%;animation-delay:1.8s}.drop:nth-child(4){left:34%;top:68%;animation-delay:2.5s;transform:scale(.8)}
@keyframes floatDrop{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(18px) scale(1.08)}}

.section{padding:92px 0}.section.light{background:var(--light)}.section.dark{background:linear-gradient(140deg,var(--navy-950),var(--navy));color:#fff;position:relative;overflow:hidden}.section.dark::before{content:"";position:absolute;inset:-30% -10% auto auto;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(69,167,255,.28),transparent 62%)}
.section-head{display:flex;justify-content:space-between;gap:34px;align-items:end;margin-bottom:38px;position:relative;z-index:1}.section-head.center{display:block;text-align:center;max-width:860px;margin-inline:auto}.section-head h2{font-size:clamp(2rem,4.4vw,4.2rem);color:var(--navy);max-width:820px}.dark .section-head h2{color:#fff}.section-head p{max-width:500px;margin:0;color:var(--muted);font-size:1.04rem}.dark .section-head p{color:#dbeafe}.section-head.center p{margin:18px auto 0}

.benefit-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.benefit{background:#fff;border:1px solid rgba(10,44,84,.09);border-radius:22px;padding:24px;box-shadow:0 16px 48px rgba(10,44,84,.07);transition:transform .22s ease,box-shadow .22s ease}.benefit:hover{transform:translateY(-5px);box-shadow:0 24px 70px rgba(10,44,84,.12)}.icon{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),var(--tech));color:#fff;font-weight:900;margin-bottom:16px;box-shadow:0 14px 34px rgba(30,115,190,.24)}.benefit h3{font-size:1.05rem;color:var(--navy);letter-spacing:-.03em}.benefit p{color:var(--muted);margin:10px 0 0;font-size:.94rem}

.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service{background:#fff;border-radius:26px;overflow:hidden;border:1px solid rgba(10,44,84,.1);box-shadow:0 18px 55px rgba(10,44,84,.08);display:flex;flex-direction:column;min-height:100%}.service-media{height:190px;background:linear-gradient(135deg,var(--navy),var(--tech));position:relative;overflow:hidden}.service-media img{width:100%;height:100%;object-fit:cover;opacity:.88}.service-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(10,44,84,.55))}.badge{position:absolute;z-index:2;left:16px;bottom:16px;background:rgba(255,255,255,.92);color:var(--navy);border-radius:999px;padding:8px 12px;font-weight:900;font-size:.78rem}.service-body{padding:24px;display:flex;flex-direction:column;gap:14px;flex:1}.service h3{color:var(--navy);font-size:1.4rem}.service p{margin:0;color:var(--muted)}.service ul{padding:0;margin:0;list-style:none;display:grid;gap:9px}.service li{display:flex;gap:8px;color:#334155;font-size:.95rem}.service li::before{content:"✓";color:var(--success);font-weight:900}.service.featured{grid-column:span 2}.service.featured .service-body{display:grid;grid-template-columns:1fr 1fr;gap:20px}.highlight-box{background:var(--light);border-radius:18px;padding:18px;border:1px solid rgba(10,44,84,.08)}.highlight-box strong{display:block;color:var(--navy);font-family:Montserrat;font-size:1rem;margin-bottom:6px}.highlight-box span{display:block;color:var(--muted);font-size:.93rem}.exclusivity-badge{display:inline-block;background:linear-gradient(135deg,#d4a017,#f0c040);color:#1a1a2e;border-radius:999px;padding:10px 20px;font-weight:900;font-size:.95rem;margin-bottom:10px;box-shadow:0 4px 16px rgba(212,160,23,.3);letter-spacing:.02em}

.tech-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;position:relative;z-index:1}.tech-step{position:relative;padding:30px;border-radius:26px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(16px);overflow:hidden}.tech-step::before{content:attr(data-step);display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fff;color:var(--navy);font-weight:900;margin-bottom:48px}.molecule{position:absolute;right:24px;top:26px;width:100px;height:100px;border:1px solid rgba(255,255,255,.2);border-radius:50%;animation:spin 12s linear infinite}.molecule::before,.molecule::after{content:"";position:absolute;width:18px;height:18px;background:#7cc6ff;border-radius:50%;box-shadow:0 0 22px #7cc6ff}.molecule::before{left:8px;top:35px}.molecule::after{right:12px;bottom:22px}@keyframes spin{to{transform:rotate(360deg)}}.tech-step h3{font-size:1.45rem}.tech-step p{color:#dbeafe;margin:12px 0 0}

.before-after{display:grid;grid-template-columns:1fr .85fr;gap:34px;align-items:center}.ba-frame{position:relative;border-radius:30px;overflow:hidden;min-height:430px;box-shadow:var(--shadow);background:#ddd}.ba-img{position:absolute;inset:0;background-size:cover;background-position:center}.ba-before{background-image:linear-gradient(rgba(80,80,80,.18),rgba(20,20,20,.18)),url('https://images.unsplash.com/photo-1584622650111-993a426fbf0a?auto=format&fit=crop&w=1200&q=80');filter:saturate(.7) contrast(.9)}.ba-after{background-image:url('https://images.unsplash.com/photo-1600566752355-35792bedcfea?auto=format&fit=crop&w=1200&q=80');clip-path:inset(0 0 0 50%)}.ba-range{position:absolute;inset:auto 24px 24px;z-index:5;width:calc(100% - 48px);accent-color:var(--tech)}.ba-label{position:absolute;z-index:4;top:22px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.9);font-weight:900;color:var(--navy)}.ba-label.before{left:22px}.ba-label.after{right:22px}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.tab{border:1px solid rgba(10,44,84,.14);background:#fff;color:var(--navy);border-radius:999px;padding:10px 14px;font-weight:900;cursor:pointer}.tab.active{background:var(--navy);color:#fff}

.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.quote{background:#fff;padding:28px;border-radius:26px;border:1px solid rgba(10,44,84,.09);box-shadow:0 16px 50px rgba(10,44,84,.07)}.stars{color:#f59e0b;letter-spacing:2px}.quote p{font-size:1.05rem;color:#334155}.quote strong{color:var(--navy)}

.faq{max-width:920px;margin:auto;display:grid;gap:12px}.faq-item{background:#fff;border:1px solid rgba(10,44,84,.1);border-radius:18px;overflow:hidden}.faq-q{width:100%;border:0;background:#fff;padding:20px;text-align:left;display:flex;justify-content:space-between;gap:14px;font-weight:900;color:var(--navy);cursor:pointer}.faq-a{display:none;padding:0 20px 20px;color:var(--muted)}.faq-item.open .faq-a{display:block}.faq-item.open .faq-q span{transform:rotate(45deg)}.faq-q span{transition:.2s ease}

.cta{position:relative;z-index:1;padding:56px;border-radius:34px;background:radial-gradient(circle at 82% 22%,rgba(69,167,255,.45),transparent 28%),linear-gradient(135deg,var(--navy-950),var(--navy),var(--tech));color:#fff;box-shadow:var(--shadow);overflow:hidden}.cta h2{font-size:clamp(2rem,4vw,4rem)}.cta p{color:#dbeafe;max-width:720px}.cta-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}

.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px}.contact-card,.form-card{background:#fff;border-radius:28px;padding:30px;border:1px solid rgba(10,44,84,.1);box-shadow:0 18px 55px rgba(10,44,84,.08)}.contact-line{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid rgba(10,44,84,.08);color:#334155}.contact-line:last-child{border-bottom:0}.contact-line strong{min-width:88px;color:var(--navy)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{width:100%;min-height:52px;border:1px solid rgba(10,44,84,.14);border-radius:16px;padding:13px 15px;background:#fff;color:var(--ink);outline:none}.field:focus{border-color:var(--tech);box-shadow:0 0 0 4px rgba(30,115,190,.12)}.full{grid-column:1/-1}textarea.field{min-height:128px;resize:vertical}

.footer{background:#061b35;color:#dbeafe;padding:54px 0 28px}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:30px}.footer-logo{display:flex;gap:14px;align-items:center}.footer-logo img{width:66px;height:66px;border-radius:16px;background:#fff}.footer h3,.footer strong{color:#fff}.footer a{display:block;margin:8px 0;color:#dbeafe}.footer-bottom{margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:#a9c5e6}
.floating-actions{position:fixed;right:18px;bottom:18px;z-index:90;display:grid;gap:10px}.float-btn{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;box-shadow:0 14px 38px rgba(10,44,84,.26);font-weight:900}.float-btn.call{background:var(--tech)}.float-btn.whatsapp{background:#25D366}.float-btn.messenger{background:#0084FF}

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

@media(max-width:1080px){.benefit-grid{grid-template-columns:repeat(3,1fr)}.services-grid{grid-template-columns:repeat(2,1fr)}.service.featured{grid-column:span 2}.hero-grid,.before-after,.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.nav-links{position:fixed;left:16px;right:16px;top:92px;display:none;flex-direction:column;align-items:stretch;background:#fff;border:1px solid rgba(10,44,84,.12);border-radius:22px;padding:20px;box-shadow:0 24px 70px rgba(10,44,84,.18)}.nav-links.open{display:flex}.nav-actions .btn-outline{display:none}.mobile-toggle{display:grid;place-items:center}.section-head{display:block}.section-head p{margin-top:14px}.tech-steps,.testimonials{grid-template-columns:1fr}.service.featured .service-body{grid-template-columns:1fr}}
@media(max-width:640px){.container{width:min(calc(100% - 24px),var(--max))}.brand-text span{display:none}.brand img{width:44px;height:44px}.nav{height:74px}.hero{padding-top:112px}.hero-actions .btn{width:100%}.hero-proof,.benefit-grid,.services-grid,.footer-grid,.form-grid{grid-template-columns:1fr}.service.featured{grid-column:span 1}.section{padding:68px 0}.cta{padding:32px 22px;border-radius:24px}.contact-card,.form-card{padding:22px}.floating-actions{right:12px;bottom:12px}.float-btn{width:50px;height:50px}.surface-demo{inset:105px 16px 16px}.logo-plate{right:16px}.before-after .ba-frame{min-height:340px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* Section résidentielle AquaPro Nano */
.residential{
  background:
    radial-gradient(circle at 10% 8%, rgba(30,115,190,.10), transparent 32%),
    linear-gradient(180deg,#fff 0%, #F5F7FA 100%);
}
.residential-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:22px;
  align-items:stretch;
}
.residential-copy{
  grid-row:span 2;
  padding:34px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(10,44,84,.10);
  box-shadow:0 22px 70px rgba(10,44,84,.09);
}
.residential-copy h3{
  color:var(--navy);
  font-size:clamp(1.9rem,3.3vw,3.2rem);
  margin:20px 0 22px;
}
.surface-list{
  display:grid;
  gap:14px;
}
.surface-item{
  position:relative;
  padding:20px 20px 20px 58px;
  border-radius:20px;
  background:linear-gradient(135deg,#F5F7FA,#fff);
  border:1px solid rgba(10,44,84,.08);
}
.surface-item::before{
  content:"✓";
  position:absolute;
  left:18px;
  top:20px;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  font-weight:900;
  background:linear-gradient(135deg,var(--navy),var(--tech));
  box-shadow:0 10px 26px rgba(30,115,190,.24);
}
.surface-item strong{
  display:block;
  color:var(--navy);
  font-family:Montserrat,Poppins,sans-serif;
  font-size:1.05rem;
  letter-spacing:-.03em;
  margin-bottom:4px;
}
.surface-item span{
  display:block;
  color:var(--muted);
}
.residential-visual{
  position:relative;
  min-height:320px;
  border-radius:30px;
  overflow:hidden;
  border:1px solid rgba(10,44,84,.10);
  box-shadow:0 22px 70px rgba(10,44,84,.12);
  background:var(--navy);
}
.residential-visual img{
  width:100%;
  height:100%;
  min-height:320px;
  object-fit:cover;
  transform:scale(1.01);
}
.residential-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(6,27,53,.72));
  pointer-events:none;
}
.visual-caption{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:2;
  padding:16px 18px;
  border-radius:20px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.26);
  backdrop-filter:blur(16px);
  color:#fff;
}
.visual-caption strong{
  display:block;
  font-family:Montserrat,Poppins,sans-serif;
  font-size:1.12rem;
}
.visual-caption span{
  color:#dbeafe;
  font-size:.94rem;
}
@media(max-width:980px){
  .residential-grid{grid-template-columns:1fr}
  .residential-copy{grid-row:auto}
}
@media(max-width:640px){
  .residential-copy{padding:22px;border-radius:24px}
  .surface-item{padding:18px 16px 18px 52px}
  .residential-visual,.residential-visual img{min-height:270px;border-radius:24px}
}

/* Modules Avant / Après réalistes */
.ba-modules{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.ba-module{
  background:#fff;
  border:1px solid rgba(10,44,84,.10);
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 22px 70px rgba(10,44,84,.10);
}
.ba-module .ba-frame{
  border-radius:0;
  min-height:420px;
  box-shadow:none;
}
.ba-layer-before,
.ba-layer-after{
  background-size:cover;
  background-position:center;
}
.ba-layer-before{
  filter:none;
}
.ba-layer-after{
  clip-path:inset(0 0 0 50%);
}
.ba-content{
  padding:24px;
}
.ba-content h3{
  color:var(--navy);
  font-size:1.55rem;
  margin-bottom:12px;
}
.ba-content p{
  margin:10px 0 0;
  color:var(--muted);
}
.ba-content strong{
  color:var(--navy);
}
.ba-module .ba-range{
  bottom:18px;
}
@media(max-width:1180px){
  .ba-modules{grid-template-columns:1fr 1fr}
}
@media(max-width:780px){
  .ba-modules{grid-template-columns:1fr}
}
@media(max-width:640px){
  .ba-module .ba-frame{min-height:320px}
  .ba-content{padding:20px}
}

/* V3: Hero title AQUAPRO NANO — single line, brand colors */
.hero-title {
  white-space: normal;
  display: block;
  overflow: visible;
}
.brand-aquapro {
  font-family: 'Playfair Display', Georgia, 'Times New Roman', serif;
  font-weight: 900;
  font-style: italic;
  background: linear-gradient(135deg, #FFFFFF 0%, #B9E4FF 40%, #7CC6FF 70%, #1E73BE 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: .02em;
  filter: drop-shadow(0 2px 12px rgba(30,115,190,.4));
}
.brand-nano {
  font-family: 'Playfair Display', Georgia, 'Times New Roman', serif;
  font-weight: 900;
  font-style: italic;
  background: linear-gradient(135deg, #2EAF5D 0%, #34D399 50%, #2EAF5D 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: .02em;
  filter: drop-shadow(0 2px 12px rgba(46,175,93,.5)) drop-shadow(0 0 28px rgba(46,175,93,.3));
}

/* V3: Nano-Actif animation card */
/* V5: Shield animation canvas — transparent, no border/rectangle */
/* ── BOUCLIER : vidéo brute, couleurs 100% intactes, cadrage éliminé ── */
.shield-visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 460px;
  overflow: visible;
  background: transparent;
}
.shield-img {
  width: 140%;
  max-width: none;
  height: auto;
  aspect-ratio: 1268 / 1560;
  /* 1. mix-blend-mode: screen → fond sombre 100% transparent, fusion totale dans le bleu */
  mix-blend-mode: screen;
  opacity: 1;
  /* 2. Masque enveloppant : tous les bords (haut, bas, gauche, droite) fondus à 100% */
  -webkit-mask-image:
    radial-gradient(ellipse 78% 80% at 50% 44%, black 52%, transparent 92%),
    linear-gradient(to right, transparent 0%, black 14%, black 86%, transparent 100%),
    linear-gradient(to bottom, transparent 0%, black 12%, black 84%, transparent 100%),
    linear-gradient(to top left, transparent 13%, black 27%);
  mask-image:
    radial-gradient(ellipse 78% 80% at 50% 44%, black 52%, transparent 92%),
    linear-gradient(to right, transparent 0%, black 14%, black 86%, transparent 100%),
    linear-gradient(to bottom, transparent 0%, black 12%, black 84%, transparent 100%),
    linear-gradient(to top left, transparent 13%, black 27%);
  -webkit-mask-composite: source-in, source-in, source-in;
  mask-composite: intersect;
  /* 3. Pas d'icône lecteur, pas de contrôles */
  transform: perspective(1400px) rotateY(-6deg) rotateX(1deg);
  transition: transform 0.6s ease;
  background: transparent;
  border: none;
  outline: none;
  display: block;
  position: relative;
  z-index: 1;
}
.shield-visual:hover .shield-img {
  transform: perspective(1200px) rotateY(-2deg) rotateX(0deg) scale(1.03);
}
@media(max-width:1080px){
  .shield-visual { min-height: 380px; }
  .shield-img { width: 160%; }
}
@media(max-width:640px){
  .shield-visual { min-height: 280px; }
  .shield-img { width: 180%; transform: none; }
  .shield-visual:hover .shield-img { transform: none; }
}

/* Point 5: Marine & Nautique section — tightened for compact layout */
.marine {
  background:
    radial-gradient(circle at 90% 15%, rgba(30,115,190,.12), transparent 30%),
    linear-gradient(180deg, #F5F7FA 0%, #e8f0f8 50%, #F5F7FA 100%);
  padding: 24px 0 !important;
}
/* Section-head Marine compacte : badge + titre + texte resserrés, pas de vide latéral */
.marine .section-head {
  display: block;
  text-align: left;
  max-width: 1000px;
  margin-bottom: 18px;
}
.marine .section-head .kicker {
  margin-bottom: 12px;
}
.marine .section-head h2 {
  max-width: none;
  margin-bottom: 12px;
}
.marine .section-head p {
  max-width: 880px;
  margin: 0;
}
.marine .container {
  width: min(calc(100% - 32px), 1100px) !important;
}
.marine-grid {
  display: grid;
  /* Colonne image plus étroite (image verticale) + colonne texte plus large */
  grid-template-columns: 0.62fr 1fr;
  gap: 22px;
  align-items: stretch;
}
.marine-visual {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(10,44,84,.10);
  box-shadow: 0 14px 40px rgba(10,44,84,.10);
  /* Dégradé doux derrière l'image complète : aucun bord blanc, fond marine */
  background: linear-gradient(160deg, #0a2c54, #061b35);
  display: flex;
  align-items: center;
  justify-content: center;
}
.marine-visual img {
  /* Image du bateau COMPLÈTE, jamais coupée, alignée sur la hauteur du bloc droit */
  width: 100%;
  height: 100%;
  object-fit: contain;   /* affiche l'image entière sans recadrage */
  object-position: center;
  display: block;
}
.marine-copy {
  padding: 22px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(10,44,84,.10);
  box-shadow: 0 14px 40px rgba(10,44,84,.08);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.marine-copy .surface-list { gap: 12px; }
.marine-copy .surface-item { padding: 16px 18px 16px 54px; }
.marine-copy .surface-item::before { top: 16px; }
@media(max-width:860px){
  .marine-grid{grid-template-columns:1fr;gap:16px}
  .marine-visual{max-height:520px}
  .marine-visual img{height:auto;max-height:520px}
  .marine-copy{padding:18px;border-radius:16px}
  .marine .container{width:min(calc(100% - 24px),1100px) !important}
}

/* Point 7: Facebook link with icon */
.fb-link {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  font-weight: 800;
  transition: color .2s ease;
}
.fb-link:hover {
  color: #1877F2 !important;
}
.fb-icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}
