/* Profis Industrie Service – reprise du thème Business Lounge (Fira Sans, rouge #CE1B28, bleu #1D4489) */
@font-face{font-family:"Fira Sans";font-weight:400;font-style:normal;font-display:swap;src:url(fonts/fira-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Fira Sans";font-weight:500;font-style:normal;font-display:swap;src:url(fonts/fira-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Fira Sans";font-weight:700;font-style:normal;font-display:swap;src:url(fonts/fira-sans-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Fira Sans";font-weight:400;font-style:italic;font-display:swap;src:url(fonts/fira-sans-latin-400-italic.woff2) format("woff2")}
:root{--red:#CE1B28;--blue:#1D4489;--sky:#2196f3;--black:#1b1b1b;--ink:#000;--text:#6b6b6b;--line:#e8e8e8;--soft:#f6f7f9;--r:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:400 15px/1.75 "Fira Sans",system-ui,"Segoe UI",Arial,sans-serif;color:var(--text);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:var(--sky);text-decoration:none}a:hover{color:var(--red)}
.wrap{width:min(1170px,100% - 40px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:8px 14px;z-index:99}.skip:focus{left:8px;top:8px}
h1,h2,h3,h4,h5{font-family:"Fira Sans",sans-serif;font-weight:700;color:var(--ink);line-height:1.25;margin:1.7em 0 .55em;letter-spacing:-.005em}
h1{font-size:clamp(1.7rem,3.4vw,2.4rem)}h2{font-size:clamp(1.35rem,2.4vw,1.9rem)}h3{font-size:1.2rem}h4{font-size:1.05rem}
p{margin:0 0 1em}
/* ---------- en-tête à deux niveaux ---------- */
.site-header{position:sticky;top:0;z-index:50;background:var(--black)}
.topbar{background:var(--black);color:#cfcfcf;font-size:12px;height:36px;border-bottom:1px solid #2c2c2c}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:100%;padding-left:200px}
.tb-info{display:flex;gap:22px}.tb-info a{color:#cfcfcf}.tb-info a:hover{color:#fff}
.langs{display:flex;gap:2px}.langs a{color:#cfcfcf;font-weight:500;letter-spacing:.06em;padding:2px 9px;font-size:11.5px;border-radius:2px}.langs a:hover{color:#fff}.langs a[aria-current]{background:var(--red);color:#fff}
.mainbar{background:rgba(29,68,137,1);height:46px;position:relative}
.mainbar .wrap{display:flex;align-items:center;height:100%;padding-left:200px;position:relative}
.brand{position:absolute;left:0;top:-36px;width:190px;height:82px;background:var(--black);display:flex;align-items:center;justify-content:center;z-index:3}
.brand img{width:150px;height:auto}
.nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center}
.nav a,.sub-toggle{color:#fff;font:700 13px/1 "Fira Sans",sans-serif;padding:16px 13px;display:block;background:none;border:0;cursor:pointer;white-space:nowrap;letter-spacing:.01em;transition:color .2s}
.nav>ul>li>a:hover,.nav>ul>li>.sub-toggle:hover,.nav a[aria-current]{color:rgba(255,255,255,.6)}
.has-sub{position:relative}.has-sub>.sub-toggle::after{content:"";display:inline-block;width:5px;height:5px;border:solid currentColor;border-width:0 1.4px 1.4px 0;transform:rotate(45deg) translateY(-2px);margin-left:7px}
.nav ul.sub{position:absolute;left:0;top:100%;min-width:230px;background:#222;padding:6px 0;display:none;flex-direction:column;align-items:stretch;box-shadow:0 10px 24px rgba(0,0,0,.25);z-index:5;border-top:2px solid var(--sky)}
.nav ul.sub a,.nav ul.sub .sub-toggle{font-weight:400;font-size:13px;padding:9px 20px;text-align:left;width:100%;white-space:normal;color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.nav ul.sub a:hover,.nav ul.sub .sub-toggle:hover{color:var(--sky)}
.nav ul.sub ul.sub{position:static;box-shadow:none;border:0;padding:0 0 0 14px;display:flex;background:none;min-width:0}
.nav ul.sub .has-sub>.sub-toggle{font-weight:700;color:var(--sky);cursor:default}.nav ul.sub .has-sub>.sub-toggle::after{display:none}
.nav .has-sub:hover>ul.sub,.nav .has-sub.open>ul.sub,.nav .has-sub:focus-within>ul.sub{display:flex}
.burger{display:none;background:none;border:0;padding:10px;cursor:pointer;margin-left:auto}.burger span,.burger span::before,.burger span::after{content:"";display:block;width:22px;height:2px;background:#fff;position:relative}.burger span::before{position:absolute;top:-7px}.burger span::after{position:absolute;top:7px}
@media(max-width:1060px){
 .topbar .wrap{padding-left:150px}.tb-info a:last-child{display:none}.mainbar .wrap{padding-left:150px}.brand{width:132px;height:72px;top:-36px}.brand img{width:108px}
 .burger{display:block}.nav{position:absolute;left:0;right:0;top:100%;background:#111;display:none;max-height:calc(100vh - 82px);overflow:auto}.nav.open{display:block}
 .nav ul{flex-direction:column;align-items:stretch;padding:6px 20px 14px}.nav a,.sub-toggle{width:100%;text-align:left;padding:12px 4px;border-bottom:1px solid #2a2a2a}
 .nav ul.sub{position:static;box-shadow:none;background:none;border:0;display:none;padding:0 0 0 14px}.nav .has-sub:hover>ul.sub,.nav .has-sub:focus-within>ul.sub{display:none}.nav .has-sub.open>ul.sub{display:flex}}
/* ---------- boutons ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--red);color:#fff;font:700 12.5px/1 "Fira Sans",sans-serif;letter-spacing:.03em;padding:13px 24px;border-radius:999px;border:0;cursor:pointer;margin-top:10px;transition:background .25s,transform .25s}
.btn:hover{background:#000;color:#fff}.btn.dark{background:#000}.btn.dark:hover{background:var(--red)}
.btn svg{transition:transform .25s}.btn:hover svg{transform:translateX(4px)}
/* ---------- diaporama ---------- */
.slider{position:relative;background:#0e1c33;color:#fff;overflow:hidden;min-height:560px}
.slides{position:relative;min-height:560px}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 1s}
.slide.on{opacity:1;visibility:visible;z-index:1}
.sbg{position:absolute;inset:-8% 0;background:center/cover no-repeat;will-change:transform}
.slide.on .sbg{animation:kb 8s ease-out forwards}
@keyframes kb{from{transform:scale(1.07)}to{transform:scale(1)}}
.slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,40,92,.62),rgba(18,40,92,.18) 70%)}
.slide .wrap{position:relative;z-index:2;min-height:560px;display:flex;align-items:center;padding-left:200px}
.scont{max-width:620px}
.scont h2{color:#fff;font-size:clamp(1.8rem,3.6vw,2.7rem);margin:0 0 .45em;text-shadow:0 1px 12px rgba(0,0,0,.25)}
.scont p{font-size:16px;line-height:1.65;color:#fff;margin:0 0 1.4em;text-shadow:0 1px 8px rgba(0,0,0,.3)}
.slide .scont>*{opacity:0;transform:translateY(24px)}
.slide.on .scont>*{animation:up .8s .3s ease forwards}.slide.on .scont p{animation-delay:.5s}.slide.on .scont .btn{animation-delay:.7s}
@keyframes up{to{opacity:1;transform:none}}
.arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:56px;height:40px;background:none;border:0;color:#fff;cursor:pointer;display:grid;place-items:center;opacity:.85;transition:.2s}
.arrow:hover{opacity:1;color:#fff}.arrow.prev{left:18px}.arrow.next{right:18px}.arrow:hover.prev{transform:translate(-4px,-50%)}.arrow:hover.next{transform:translate(4px,-50%)}
.progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(255,255,255,.18);z-index:5}.progress i{display:block;height:100%;width:0;background:var(--red)}
.slider.run .progress i{animation:prog var(--iv,5s) linear forwards}@keyframes prog{to{width:100%}}
.tabsbar{background:#fff;border-bottom:1px solid var(--line);position:relative}
.tnavs{display:grid;grid-template-columns:repeat(4,1fr);padding-left:0}
.tnav{background:none;border:0;border-left:1px solid var(--line);text-align:left;padding:22px 24px 20px;font:inherit;cursor:pointer;position:relative;transition:background .2s}
.tnav:last-child{border-right:1px solid var(--line)}
.tnav b{display:block;font:700 24px/1 "Fira Sans",sans-serif;color:#c9c9c9;margin-bottom:8px;transition:color .25s}
.tnav span{font:700 14px/1.3 "Fira Sans",sans-serif;color:#000}
.tnav.on b{color:var(--red)}.tnav:hover{background:var(--soft)}
.tnav.on::before{content:"";position:absolute;left:24px;top:-8px;width:14px;height:14px;background:#fff;transform:rotate(45deg);border-left:1px solid var(--line);border-top:1px solid var(--line)}
@media(max-width:900px){.slider,.slides,.slide .wrap{min-height:440px}.slide .wrap{padding-left:20px;padding-bottom:30px}.tnavs{grid-template-columns:repeat(2,1fr)}.tnav{padding:14px 16px;border-bottom:1px solid var(--line)}.tnav b{font-size:18px;margin-bottom:4px}.tnav span{font-size:13px}.arrow{display:none}.tnav.on::before{display:none}}
/* ---------- accueil ---------- */
.kicker{letter-spacing:.16em;text-transform:uppercase;font-size:11.5px;font-weight:700;color:var(--red);margin:0 0 6px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;margin-block:70px}.split.rev>.ph{order:-1}
.split h2{margin-top:.1em}
.ph img{width:100%;max-height:440px;object-fit:cover;border-radius:var(--r)}
.valsband{background:#dbe0ed;padding:56px 0;margin:30px 0 0}
.vals{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.val{background:#fff;padding:26px 24px;border-top:3px solid var(--red)}.val h3{margin:0 0 .4em;font-size:1.02rem}.val p{margin:0;font-size:14px}
.tagband{background:#384663;color:#dfe5f1;text-align:center;padding:84px 0;margin:0}.tagband h1{color:#fff;margin:.15em 0 .5em}.tagband p{max-width:66ch;margin-inline:auto}.tagband .kicker{color:#9fb3da}
.videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin-block:60px}
.video{aspect-ratio:16/9;margin:1.5em 0}.video iframe{width:100%;height:100%;border:0}
.partners{margin-block:60px;text-align:center}.partners h2{margin-top:0}
.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.track{display:flex;gap:64px;width:max-content;align-items:center;animation:scroll 34s linear infinite;padding:10px 0}
.marquee:hover .track{animation-play-state:paused}
.track img{max-height:58px;width:auto;filter:grayscale(1);opacity:.7;transition:.25s}.track img:hover{filter:none;opacity:1}
@keyframes scroll{to{transform:translateX(calc(-50% - 32px))}}
/* ---------- pages ---------- */
.page-hero{background:linear-gradient(100deg,var(--blue),var(--sky));color:#fff;padding:46px 0 38px;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;right:-80px;top:-120px;width:420px;height:420px;border-radius:50%;background:rgba(255,255,255,.08)}
.page-hero h1{color:#fff;margin:0 0 6px;font-size:clamp(1.6rem,3vw,2.2rem);position:relative}
.crumbs{font-size:12px;color:rgba(255,255,255,.75);display:flex;gap:8px;position:relative}.crumbs a{color:#fff}.crumbs a:hover{text-decoration:underline;color:#fff}
.prose{max-width:880px;padding-block:44px 70px}.prose h2:first-child,.prose h3:first-child{margin-top:0}
.prose h2{font-size:1.5rem}.prose h3{font-size:1.15rem}.prose h4{font-size:1rem}
.prose img{border-radius:var(--r);margin:1em auto}.prose figure{margin:1.2em 0;text-align:center}
.prose .gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;align-items:center;margin:1.4em 0}.prose .gallery img{margin:0;width:100%;aspect-ratio:4/3;object-fit:cover}
.prose ul,.prose ol{padding-left:1.25em}.prose li{margin:.3em 0}.prose li::marker{color:var(--red)}
.prose table{border-collapse:collapse;width:100%;display:block;overflow-x:auto;font-size:14px}.prose td,.prose th{border:1px solid var(--line);padding:8px 12px;text-align:left}
.notice{background:#fff8e6;border-left:3px solid #e0a800;padding:9px 14px;font-size:13px}
.related{background:var(--soft);padding:18px 24px;margin-top:36px;border-left:3px solid var(--red)}.related h2{margin-top:0;font-size:1.05rem}
/* ---------- produits ---------- */
.filters{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:34px 0 8px}
#q{flex:1 1 260px;padding:11px 16px;border:1px solid var(--line);border-radius:999px;font:inherit;font-size:14px}#q:focus{outline:2px solid var(--sky);border-color:transparent}
.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 13px;font:inherit;font-size:12.5px;cursor:pointer;color:var(--text);transition:.2s}.chip.on,.chip:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px;padding-block:20px}
.prod{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}.prod:hover{box-shadow:0 8px 22px rgba(0,0,0,.08)}.prod[hidden]{display:none}
.pimg{aspect-ratio:1;background:var(--soft);display:grid;place-items:center}.pimg img{width:100%;height:100%;object-fit:contain;padding:14px}.noimg{width:50%;aspect-ratio:1;border-radius:50%;background:#e3e8f1}
.pbody{padding:12px 16px 16px;border-top:1px solid var(--line)}.pbody h3{margin:.1em 0 .25em;font-size:.98rem}.pbody p{margin:0;font-size:12.5px;color:var(--text)}.pcat{font-size:10.5px!important;text-transform:uppercase;letter-spacing:.1em;color:var(--red)!important;font-weight:700}
.cta{text-align:center;padding-bottom:50px}
/* ---------- contact ---------- */
.contact{margin-block:50px}.contact h2{font-size:1.05rem;margin:1.3em 0 .3em}.contact .lead{font-size:16px;color:var(--ink)}
.contact form{display:grid;gap:14px;background:var(--soft);padding:26px;border-top:3px solid var(--red)}.contact label{display:grid;gap:5px;font-weight:500;font-size:13px;color:var(--ink)}
.contact input,.contact textarea{padding:11px 13px;border:1px solid var(--line);border-radius:3px;font:inherit;font-size:14px;background:#fff}.contact input:focus,.contact textarea:focus{outline:2px solid var(--sky);border-color:transparent}.note{font-size:12px;color:var(--text);margin:0}
/* ---------- pied de page ---------- */
.site-footer{background:#000;color:#aaa;margin-top:70px;font-size:14px}.foot{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.3fr;gap:30px;padding:54px 0 28px}
.site-footer h2{color:#fff;font-size:13px;margin:0 0 .8em;text-transform:uppercase;letter-spacing:.1em}.site-footer p{margin:0;line-height:1.8}.site-footer a{color:#fff}.site-footer a:hover{color:var(--red)}.claim{margin-top:12px!important;font-size:13px}
.legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid #282828;padding:18px 0 24px;font-size:12px}.legal a{margin-left:18px;color:#aaa}.legal a:hover{color:#fff}
@media(max-width:820px){.split{grid-template-columns:1fr;gap:24px;margin-block:44px}.split.rev>.ph{order:0}.foot{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.foot{grid-template-columns:1fr}body{font-size:14.5px}}
/* ---------- animations ---------- */
.js .reveal,.js .prose>*,.js .prod{opacity:0;transform:translateY(26px);transition:opacity .75s ease,transform .75s ease}
.js .in:not(.zoom){opacity:1!important;transform:none!important}
.js .zoom{transform:scale(.88);opacity:0;transition:transform 1.1s ease,opacity 1.1s ease}.js .zoom.in{transform:none;opacity:1}
.page-hero h1,.crumbs{animation:up .8s ease both}
.site-header.stuck{box-shadow:0 4px 18px rgba(0,0,0,.3)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.js .reveal,.js .prose>*,.js .prod,.js .zoom,.slide .scont>*{opacity:1!important;transform:none!important}}

/* ---------- structure accueil d'origine ---------- */
.hd{display:flex;align-items:center;gap:12px}.hd::before{content:"";width:22px;height:2px;background:var(--ink);flex:none}
.partners .hd{justify-content:center}
.valsband .vals{text-align:center}.val{border-top:0;background:transparent;padding:10px 18px}.val .ico{width:30px;height:30px;margin:0 auto 14px;fill:none;stroke:var(--blue);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.val h3{font-size:.95rem}.val p{font-size:13.5px}
.vidband{background:#efefef;padding:6px 0;margin:0}.vidband .videos{margin-block:44px}
.lcar{display:flex;align-items:center;gap:10px;margin-top:20px}
.lview{overflow:hidden;flex:1}.ltrack{display:flex;transition:transform .6s ease}
.li{display:grid;place-items:center;padding:10px 18px;height:96px}.li img{max-height:64px;max-width:100%;width:auto;filter:none;opacity:1}
.lprev,.lnext{background:none;border:0;color:#999;cursor:pointer;padding:10px;transition:.2s}.lprev:hover,.lnext:hover{color:var(--red)}

.site-footer .about{background:#111;border-top:2px solid var(--sky);padding:18px 20px}.about img{width:96px;margin-bottom:10px}.about p{font-size:12.5px;line-height:1.7;color:#aaa}

/* ---------- panneau latéral (hamburger) ---------- */
.tb-right{display:flex;align-items:center;gap:14px}
.sp-open{background:none;border:0;padding:8px 4px;cursor:pointer;display:block}.sp-open span,.sp-open span::before,.sp-open span::after{content:"";display:block;width:18px;height:2px;background:#cfcfcf;position:relative;transition:.2s}.sp-open span::before{position:absolute;top:-5px}.sp-open span::after{position:absolute;top:5px}.sp-open:hover span,.sp-open:hover span::before,.sp-open:hover span::after{background:#fff}
.sp-overlay{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:90;opacity:0;transition:opacity .35s}.sp-overlay.on{opacity:1}
.sidepanel{position:fixed;top:0;right:0;bottom:0;width:min(400px,92vw);background:#fff;z-index:100;padding:44px 40px;overflow:auto;transform:translateX(105%);transition:transform .4s cubic-bezier(.2,.7,.2,1);box-shadow:-10px 0 40px rgba(0,0,0,.25);visibility:hidden}
.sidepanel.on{transform:none;visibility:visible}
.sidepanel img{width:100%;max-width:300px;margin-bottom:24px}.sidepanel p{color:#777;font-size:15px}
.sidepanel h2{font-size:1.5rem;margin:1.4em 0 .5em;color:#000}
.sp-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border:0;background:none;cursor:pointer;color:#000;display:grid;place-items:center}.sp-close:hover{color:var(--red)}
body.sp-lock{overflow:hidden}

.cart-open{position:relative;background:none;border:0;color:#cfcfcf;padding:6px 4px;cursor:pointer;display:grid;place-items:center}.cart-open:hover{color:#fff}
.cart-n{position:absolute;top:-2px;right:-6px;background:var(--red);color:#fff;font:700 10px/16px "Fira Sans",sans-serif;min-width:16px;height:16px;border-radius:8px;text-align:center;font-style:normal}
.cart-title{font-size:1.05rem!important;margin:6px 0 20px!important;padding-bottom:14px;border-bottom:2px solid var(--sky)}
.cart-list{list-style:none;margin:0;padding:0}.cart-list li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line);color:#000;font-weight:500;font-size:14px}
.cart-list button{background:none;border:0;color:#999;cursor:pointer;font-size:12px;text-decoration:underline}.cart-list button:hover{color:var(--red)}
.cart-foot{margin-top:22px}
.padd{margin-top:10px;background:none;border:1px solid var(--line);border-radius:999px;padding:6px 14px;font:500 12px "Fira Sans",sans-serif;color:var(--blue);cursor:pointer;transition:.2s}.padd:hover,.padd.on{background:var(--blue);color:#fff;border-color:var(--blue)}

/* ---------- sélecteur de langue plein écran ---------- */
.langs{display:none}
.lang-open{background:none;border:0;color:#cfcfcf;display:flex;align-items:center;gap:7px;cursor:pointer;font:500 11.5px "Fira Sans",sans-serif;letter-spacing:.06em;padding:4px 2px}.lang-open:hover{color:#fff}
.flag{display:inline-block;width:18px;height:18px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 1px rgba(255,255,255,.25)}.flag svg{width:100%;height:100%;display:block}
.langmodal{position:fixed;inset:0;z-index:120;background:rgba(8,12,22,.94);display:grid;place-items:center;opacity:0;transition:opacity .35s}.langmodal.on{opacity:1}.langmodal[hidden]{display:none}
.lm-in{text-align:center;color:#fff;transform:translateY(16px);transition:transform .45s}.langmodal.on .lm-in{transform:none}
.lm-in h2{color:#fff;font-size:1.3rem;margin:0 0 34px}
.lm-list{display:flex;gap:44px;flex-wrap:wrap;justify-content:center}
.lm-list a{color:#fff;font:700 1.05rem "Fira Sans",sans-serif;display:flex;align-items:center;gap:12px;opacity:.85;transition:.2s}.lm-list a:hover,.lm-list a[aria-current]{opacity:1;color:#fff}.lm-list a:hover .flag{transform:scale(1.1)}
.lm-list .flag{width:42px;height:42px;transition:transform .25s}
.lm-close{position:absolute;top:30px;right:34px;background:none;border:0;color:#fff;cursor:pointer;padding:8px}.lm-close:hover{color:var(--red)}
html:not(.js) .langs{display:flex}html:not(.js) .lang-open,html:not(.js) .cart-open{display:none}

/* ---------- plus attrayant ---------- */
.page-hero{background-size:cover;background-position:center;padding:74px 0 58px}
.page-hero h1{font-size:clamp(1.8rem,3.4vw,2.6rem);text-shadow:0 2px 14px rgba(0,0,0,.25)}
.services{margin-block:70px 20px}.services .hd{margin-bottom:26px}
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px}
.svc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);overflow:hidden;color:var(--text);transition:box-shadow .3s,transform .3s}
.svc:hover{box-shadow:0 14px 34px rgba(29,68,137,.16);transform:translateY(-4px);color:var(--text)}
.simg{aspect-ratio:4/3;overflow:hidden;background:var(--soft)}.simg img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.svc:hover .simg img{transform:scale(1.07)}
.sbody{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1}.sbody h3{margin:0 0 .35em;font-size:1.05rem;position:relative;padding-bottom:10px}
.sbody h3::after{content:"";position:absolute;left:0;bottom:0;width:30px;height:2px;background:var(--red);transition:width .35s}.svc:hover .sbody h3::after{width:56px}
.sbody p{font-size:13.5px;line-height:1.65;flex:1;margin:0 0 12px}.more{font-weight:700;font-size:12.5px;color:var(--red);letter-spacing:.02em}
.statband{background:linear-gradient(110deg,var(--blue),#2a67c9);color:#fff;margin-top:20px;padding:54px 0}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.stat b{display:block;font:700 clamp(2.2rem,5vw,3.3rem)/1.1 "Fira Sans",sans-serif;letter-spacing:-.01em}.stat span{font-size:13px;text-transform:uppercase;letter-spacing:.1em;opacity:.85}
.stat+.stat{border-left:1px solid rgba(255,255,255,.22)}
@media(max-width:700px){.stats{grid-template-columns:1fr 1fr;row-gap:30px}.stat:nth-child(3){border-left:0}}
.prose>p:first-of-type{font-size:17px;line-height:1.75;color:#444}
.prose h2{position:relative;padding-bottom:12px}.prose h2::after{content:"";position:absolute;left:0;bottom:0;width:38px;height:3px;background:var(--red)}
.prose .gallery img,.prose figure img{transition:transform .5s ease,box-shadow .4s;cursor:zoom-in}.prose .gallery img:hover{transform:scale(1.04);box-shadow:0 10px 26px rgba(0,0,0,.2);position:relative;z-index:2}
.prose img{box-shadow:0 4px 18px rgba(0,0,0,.08)}
.valsband .val{box-shadow:0 6px 20px rgba(29,68,137,.08);transition:transform .3s}.valsband .val:hover{transform:translateY(-4px)}
.val .ico{width:36px;height:36px}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:130;display:grid;place-items:center;padding:30px;cursor:zoom-out;opacity:0;transition:opacity .25s}.lightbox.on{opacity:1}.lightbox img{max-width:min(1100px,100%);max-height:100%;border-radius:4px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.pimg img{transition:transform .5s}.prod:hover .pimg img{transform:scale(1.06)}

/* ---------- carte « Throughout Germany » : sans recadrage, plus compacte ---------- */
.germany{margin-block:36px;gap:34px;grid-template-columns:.9fr 1.1fr}
.germany .ph img{max-height:none;width:100%;max-width:420px;height:auto;object-fit:contain;border-radius:0;margin:0 auto;box-shadow:none}
.germany .kicker{color:#777;text-transform:none;font-weight:400;letter-spacing:.08em;font-size:13px;margin:0 0 2px;padding-left:58px}
.germany .hd{gap:20px;margin:0 0 .5em;font-size:clamp(1.3rem,2.2vw,1.7rem)}.germany .hd::before{width:38px;background:var(--red)}
.germany p{font-size:14px;line-height:1.7;margin-bottom:.8em}
@media(max-width:820px){.germany .ph img{max-width:320px}.germany .kicker{padding-left:0}}
/* ---------- mobile : en-tête plus propre ---------- */
@media(max-width:700px){
 .tb-info{display:none}.topbar .wrap{justify-content:flex-end;padding-left:130px}
 .mainbar .wrap{padding-left:130px}.brand{width:116px;height:64px;top:-36px}.brand img{width:92px}
 .tb-right{gap:12px}
 .mainbar{height:36px}.topbar{height:34px}.nav{max-height:calc(100vh - 70px)}
 .slide .scont h2{font-size:1.7rem}.slide .scont p{font-size:14.5px}
 .tnavs{padding:0}.tnav{padding:14px 12px 12px}
}

/* ---------- bannières de page + page entreprise ---------- */
.page-hero{text-align:center;padding:84px 0 66px;background-color:#2a4a99}
.page-hero::before{display:none}
.page-hero h1{font-size:clamp(1.7rem,3.2vw,2.4rem)}.crumbs{justify-content:center;font-size:12px}
.prose .gallery.logos{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px 26px}.prose .gallery.logos img{aspect-ratio:auto;object-fit:contain;max-height:80px;box-shadow:none;border-radius:0;cursor:default}
.crow{padding:44px 0;border-bottom:0}.crow.tint{background:#dbe0ed}
.cgrid{display:grid;grid-template-columns:230px 1fr;gap:34px;max-width:860px}
.cgrid .hd.side{margin:0;font-size:.95rem;align-self:start;gap:12px}.cgrid .hd.side::after{content:"";width:34px;height:2px;background:var(--red);order:2}.cgrid .hd.side::before{display:none}
.cbody{border-left:1px solid var(--line);padding-left:30px}.cbody p{font-size:14.5px}.cbody>*:first-child{margin-top:0}
.checks{list-style:none;margin:0;padding:0}.checks li{position:relative;padding:5px 0 5px 26px;font-size:14.5px}.checks li::before{content:"";position:absolute;left:2px;top:12px;width:12px;height:6px;border:solid var(--red);border-width:0 0 2px 2px;transform:rotate(-45deg)}
.tint .cbody{border-left:0;padding-left:0}
.ev{display:grid;grid-template-columns:130px 1fr;gap:18px;padding:12px 0;align-items:start}
.when small{display:block;color:var(--red);font-size:12.5px;letter-spacing:.04em}.when b{font:700 1.15rem "Fira Sans",sans-serif;color:#000}
.what{position:relative;padding-left:34px}.what::before{content:"";position:absolute;left:0;top:12px;width:22px;height:2px;background:var(--red)}
.what h3{margin:0 0 .25em;font-size:.98rem}.what p{margin:0;font-size:14px}
.cert{padding:50px 0 30px;border-bottom:1px dotted #bbb}.ctr{text-align:center;font-size:1.25rem;margin:0 0 26px}
.isos{display:flex;justify-content:center;gap:90px;flex-wrap:wrap}.isobox{text-align:center;max-width:210px}.isobox img{width:96px;height:auto;margin:0 auto 10px}.isobox h3{margin:.2em 0;font-size:.95rem}.isobox p{font-size:12px;color:#999;margin:0}
.cpart{margin-block:44px 10px}.notice.wrap{margin-block:20px 0}
@media(max-width:760px){.cgrid{grid-template-columns:1fr;gap:12px}.cbody{border-left:0;padding-left:0}.ev{grid-template-columns:1fr;gap:4px}.isos{gap:40px}}

/* ---------- rendu Elementor : pages de contenu ---------- */
.elsec{padding-block:6px}.elrow{display:flex;gap:34px;align-items:flex-start;flex-wrap:wrap}
.elrow.narrow{max-width:880px}.elcol{min-width:0}
.elsec h2,.elsec h3,.elsec h4{margin:.2em 0 .6em}.elsec h2{font-size:1.6rem}
.elsec>.wrap>.elcol>h2:first-child::after{content:"";display:block;width:38px;height:3px;background:var(--red);margin-top:12px}
.elsec h2.ta-center::after,.elsec h4.ta-center::after{margin-inline:auto}
.ta-center{text-align:center}.ta-right{text-align:right}
.te p{font-size:14.5px}.te>p:first-child{font-size:16.5px;line-height:1.75;color:#444}
.te ul,.te ol{padding-left:1.2em}.te li::marker{color:var(--red)}
.elimg{margin:8px 0}.elimg img{width:100%;height:auto;border-radius:3px}.elimg.ta-center img{margin:0 auto}
.elimg a{display:block;transition:transform .35s}.elimg a:hover{transform:translateY(-3px)}
.iconlist{list-style:none;margin:.6em 0;padding:0}.iconlist li{display:flex;gap:12px;align-items:flex-start;padding:5px 0;font-size:14.5px}
.li-ico{width:15px;height:15px;flex:none;margin-top:5px;fill:none;stroke:var(--red);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.bigicon{text-align:center;padding:10px 0}.bi{width:86px;height:86px;fill:none;stroke:currentColor;color:#283E6C;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}
.iconbox{text-align:center;padding:6px 10px}.iconbox .bi{width:44px;height:44px;margin:0 auto 10px;display:block;color:var(--blue)}.iconbox h3{margin:.1em 0;font-size:1rem}
.accs{margin:10px 0}.acc{border:1px solid var(--line);background:#fff;margin:0 0 8px}.acc summary{cursor:pointer;padding:13px 18px;font-weight:700;color:#000;list-style:none;position:relative;font-size:14.5px}
.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:"+";position:absolute;right:18px;top:9px;font-size:1.4rem;color:var(--red);transition:transform .25s}.acc[open] summary::after{content:"–"}
.accb{padding:4px 18px 16px;border-top:1px solid var(--line)}.accb p{font-size:14px}
hr.dot{border:0;border-top:1px dotted #bbb;margin:34px 0}.sp{height:26px}.stars{color:#f5a623;font-size:1.4rem;letter-spacing:3px}
.lcar .li{flex:0 0 calc(100% / var(--vis,4))}
.lcar.photos{margin:10px 0 24px}.lcar.photos .li{padding:0 6px;height:auto;display:block}.lcar.photos .li img{width:100%;max-height:none;aspect-ratio:3/2;object-fit:cover;border-radius:3px}
.lcar[data-vis="1"] .li img{aspect-ratio:16/9}
@media(max-width:760px){.elrow{gap:10px}.elcol{flex:1 1 100%!important;max-width:100%!important}}

/* ---------- pointeur de l'onglet actif, en-tête fixe réduit au défilement, pied de page ---------- */
.tabsbar{z-index:3}
.tnav.on::before{left:34px;top:-14px;width:0;height:0;background:none;transform:none;border-left:15px solid transparent;border-right:15px solid transparent;border-bottom:14px solid #fff;border-top:0}
:root{--hh:82px}
body{padding-top:var(--hh)}
.site-header{position:fixed;top:0;left:0;right:0;transition:box-shadow .3s}
.topbar,.mainbar,.brand,.brand img{transition:all .3s ease}
.site-header.stuck .topbar{position:absolute;top:0;right:0;left:auto;width:auto;height:60px;border:0;background:transparent;z-index:6}
.site-header.stuck .topbar .wrap{width:auto;padding:0 max(20px,calc((100vw - 1170px)/2)) 0 0;margin:0}
.site-header.stuck .tb-info{display:none}
.site-header.stuck .mainbar{height:60px;background:#1b1b1b}
.site-header.stuck .mainbar .wrap{padding-left:210px}
.site-header.stuck .brand{top:0;height:60px;width:170px;background:transparent}
.site-header.stuck .brand img{width:118px}
.site-header.stuck .nav a,.site-header.stuck .sub-toggle{padding:22px 12px}
.site-header.stuck .nav ul.sub{top:100%}
.sp-open,.cart-open,.lang-open{transition:color .2s}
@media(max-width:1060px){:root{--hh:70px}.site-header.stuck .topbar{height:36px;right:0}.site-header.stuck .mainbar{height:36px;background:rgba(29,68,137,1)}.site-header.stuck .brand{top:-36px;height:64px;background:#1b1b1b;width:116px}.site-header.stuck .brand img{width:92px}.site-header.stuck .mainbar .wrap{padding-left:130px}.site-header.stuck .topbar .wrap{padding:0 20px 0 0}.site-header.stuck .nav a,.site-header.stuck .sub-toggle{padding:12px 4px}}
.site-footer{margin-top:60px}
.foot{grid-template-columns:minmax(300px,1.6fr) 1fr 1fr 1.2fr;padding-top:0;margin-top:-1px}
.site-footer .about{padding:30px 34px 34px;margin-top:0}.about img{width:150px;margin-bottom:16px}.about p{font-size:15px;line-height:1.75;color:#a5a5a5}
.foot>div:not(.about){padding-top:44px}
.legalbar{background:#0a0a0a;border-top:1px solid #1d1d1d}
.legal{border-top:0!important;display:flex;align-items:center;gap:0;padding:26px 0!important;font-size:14px}
.legal .cp{color:#fff;font-weight:700;padding-right:22px}.legal .lk a{margin:0;padding:0 22px;border-left:1px solid #2c2c2c;color:#fff;font-weight:700}.legal .lk a:hover{color:var(--red)}
.totop{margin-left:auto;width:50px;height:50px;border:2px solid #888;background:none;color:#fff;cursor:pointer;display:grid;place-items:center;transition:.25s}.totop:hover{background:#fff;color:#000;border-color:#fff}
@media(max-width:820px){.foot{grid-template-columns:1fr 1fr}.site-footer .about{grid-column:1/-1}.foot>div:not(.about){padding-top:20px}.legal{flex-wrap:wrap;row-gap:12px}.legal .lk a:first-child{border-left:0;padding-left:0}}
@media(max-width:760px){.elcol{flex:1 1 100%!important;max-width:100%!important}}

/* ---------- catalogue : vue d'ensemble + catégories ---------- */
.iconlist.ctr{align-items:center;text-align:center}.iconlist li.plain{display:block;padding:7px 0;font:500 15px "Fira Sans",sans-serif}
.iconlist li.plain a,.iconlist li.plain span{color:#000;font-weight:500;position:relative;padding-bottom:2px;border-bottom:1px solid transparent;transition:.2s}
.iconlist li.plain a:hover{color:var(--red);border-color:var(--red)}
.elsec .elcol .iconlist.ctr{margin:1em auto}
.catnav{margin:34px 0 4px;justify-content:center}.chip{text-decoration:none}.chip.on{background:var(--blue);color:#fff;border-color:var(--blue)}
a.chip:hover{color:#fff}
.pact{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;align-items:center}
.sheet{display:inline-flex;align-items:center;gap:6px;font:700 12px "Fira Sans",sans-serif;color:var(--red);border:1px solid var(--red);border-radius:999px;padding:6px 12px}.sheet:hover{background:var(--red);color:#fff}
.pact .padd{margin-top:0}
.noprod{grid-column:1/-1;text-align:center;color:#888;padding:40px 0}
.pbody{display:flex;flex-direction:column;flex:1}.pbody .pact{margin-top:auto;padding-top:12px}

/* ---------- alignement et rythme des pages de contenu ---------- */
.elrow.narrow{max-width:1170px}
.elrow.narrow .elcol{max-width:100%!important;flex:1 1 100%!important}
.elrow.narrow .te,.elrow.narrow .iconlist,.elrow.narrow .accs{max-width:880px}
.elsec.ctr .te{margin-inline:auto}
.elsec.ctr .elrow.narrow>.elcol>h2,.elsec.ctr .elrow.narrow>.elcol>h3,.elsec.ctr .elrow.narrow>.elcol>h4{text-align:center}
.te p{font-size:15.5px;line-height:1.85;margin-bottom:1.1em}
.te>p:first-child{font-size:15.5px;line-height:1.85;color:inherit}
.elrow.narrow .te>p:first-child{font-size:17px;line-height:1.8;color:#444}
.elsec{margin-block:0}
.elsec .elcol>h2:first-child{margin-top:.1em}
.elrow{gap:44px}
.elcol .elimg img{border-radius:4px;box-shadow:0 8px 26px rgba(29,68,137,.12)}
.elrow{--gap:44px;gap:var(--gap)}
@media(max-width:1000px){.elrow{--gap:28px}}
.page-hero+.elsec,.notice+.elsec{margin-top:46px}.page-hero+.elsec.ctr{margin-top:56px}

/* ---------- images : tailles d'affichage plus modestes ---------- */
.elcol .elimg img{max-height:430px;width:auto;max-width:100%;object-fit:cover;margin-inline:auto}
.elcol:only-child .elimg img{max-height:520px}
.elimg{text-align:center}
.prose img,.elimg img{height:auto}
.sbody .simg img{object-fit:cover}
.lcar.photos .li img{max-height:420px}
.ph img{max-height:380px}

/* ================= typographie et mise en page plus soignées ================= */
body{font-size:16px;line-height:1.8}
.te p,.accb p{font-size:16px;line-height:1.85;color:#5f6368}
.te strong,.te b{color:#222}
.elrow.narrow .te>p:first-child{font-size:18px;line-height:1.8;color:#3b3f45}
.te{max-width:74ch}.elrow.narrow .te,.elsec.ctr .te{max-width:820px}
.elsec h2{font-size:clamp(1.55rem,2.6vw,2rem);line-height:1.2;letter-spacing:-.01em}
.elsec h3{font-size:1.2rem}.elsec h4{font-size:1.05rem}
.elsec>.wrap>.elcol>h2:first-child::after{margin-top:14px}
.elsec{margin-block:0;padding-block:34px}
.elsec[style*="background"]{padding-block:54px}
.elsec .iconlist li{font-size:16px;padding:6px 0}
.page-hero{padding:92px 0 70px}.page-hero h1{font-weight:700;letter-spacing:-.01em}
.page-hero+.elsec{margin-top:24px}
.te p+p{margin-top:-.2em}
.te ul{margin:.6em 0 1.2em}.te li{margin:.35em 0}
.elimg img{border-radius:6px}
/* ================= diaporama de photos ================= */
.lcar.photos{position:relative;display:block;max-width:900px;margin:22px auto 34px}
.lcar.photos .lview{border-radius:8px;box-shadow:0 14px 40px rgba(20,40,90,.18)}
.lcar.photos .li{padding:0}.lcar.photos .li img{border-radius:0;aspect-ratio:16/9;max-height:none;width:100%;object-fit:cover}
.lcar.photos .lprev,.lcar.photos .lnext{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);color:#111;display:grid;place-items:center;padding:0;z-index:3;box-shadow:0 4px 14px rgba(0,0,0,.25);opacity:0;transition:opacity .25s,background .2s}
.lcar.photos:hover .lprev,.lcar.photos:hover .lnext,.lcar.photos .lprev:focus-visible,.lcar.photos .lnext:focus-visible{opacity:1}
.lcar.photos .lprev{left:14px}.lcar.photos .lnext{right:14px}.lcar.photos .lprev:hover,.lcar.photos .lnext:hover{background:#fff;color:var(--red)}
.ldots{display:flex;justify-content:center;gap:9px;margin-top:14px}.ldots button{width:9px;height:9px;border-radius:50%;border:0;background:#c9cfda;padding:0;cursor:pointer;transition:.25s}.ldots button.on{background:var(--red);width:26px;border-radius:5px}
@media(hover:none){.lcar.photos .lprev,.lcar.photos .lnext{opacity:1}}
/* ================= diaporama d'accueil amélioré ================= */
.progress{display:none}
.tnav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left}
.slider.run+.tabsbar .tnav.on::after{animation:tprog var(--iv,5s) linear forwards}
.slider:not(.run)+.tabsbar .tnav.on::after{transform:scaleX(1);opacity:.35}
@keyframes tprog{to{transform:scaleX(1)}}
.slider .arrow{width:52px;height:52px;border-radius:50%;background:rgba(8,26,56,.35);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.35);transition:background .25s,transform .25s}
.slider .arrow:hover{background:var(--red);border-color:var(--red)}
.slide::after{background:linear-gradient(90deg,rgba(14,32,76,.7),rgba(14,32,76,.18) 62%)}
.scont h2{font-size:clamp(1.9rem,3.8vw,2.9rem)}
.slider{min-height:580px}.slides,.slide .wrap{min-height:580px}
.slide .sbg{transition:transform 8s ease-out}
.counter{position:absolute;right:26px;bottom:22px;z-index:6;color:#fff;font:700 13px "Fira Sans",sans-serif;letter-spacing:.14em;text-shadow:0 1px 6px rgba(0,0,0,.4)}
.counter b{font-size:20px}

/* ================= menus déroulants comme l'ancien site ================= */
.nav ul.sub{background:#1b1b1b;min-width:250px;padding:14px 22px 18px;border-top:0;box-shadow:0 18px 40px rgba(0,0,0,.35);border-radius:0 0 3px 3px}
.nav ul.sub a{position:relative;font:400 15px/1.35 "Fira Sans",sans-serif;padding:8px 0 8px 15px;color:#fff;border:0;width:100%;white-space:normal}
.nav ul.sub a::before{content:"";position:absolute;left:0;top:50%;width:5px;height:5px;border:solid currentColor;border-width:1.6px 1.6px 0 0;transform:translateY(-50%) rotate(45deg)}
.nav ul.sub a:hover,.nav ul.sub a[aria-current]{color:var(--sky)}
.nav ul.sub.mega{flex-direction:row;padding:0;min-width:0;width:max-content;max-width:min(760px,92vw)}
.nav ul.sub.mega>li.mcol{padding:22px 30px 24px;flex:1 1 auto;min-width:250px}
.nav ul.sub.mega>li.mcol+li.mcol{border-left:1px solid #2e2e2e}
.mh{display:block;font:500 15px "Fira Sans",sans-serif;color:#fff;padding:0 0 13px;margin-bottom:10px;border-bottom:1px solid #353535}
.mlist{list-style:none;margin:0;padding:0;display:block!important}
.nav .has-sub:hover>ul.sub.mega,.nav .has-sub.open>ul.sub.mega,.nav .has-sub:focus-within>ul.sub.mega{display:flex}
@media(max-width:1060px){
 .nav ul.sub.mega{flex-direction:column;width:auto;max-width:none}
 .nav ul.sub.mega>li.mcol{padding:6px 0 10px;min-width:0}.nav ul.sub.mega>li.mcol+li.mcol{border-left:0}
 .nav ul.sub{padding:6px 0 10px 14px;box-shadow:none}.mh{color:#8fd3f4;padding-bottom:6px;border-bottom:0;margin:6px 0 2px}
}

/* page équipe : portraits à taille identique */
.pg-team .elimg img{width:240px;height:310px;max-height:none;object-fit:cover;object-position:50% 12%;border-radius:4px;margin-inline:auto}
.pg-team .elcol h3,.pg-team .elcol h2{text-align:center}
.pg-team .te,.pg-team .te p{text-align:center;margin-inline:auto}

/* ================= texte plus grand et plus aéré (comme l'ancien site) ================= */
body{font-size:17px}
.te p,.accb p,.cbody p{font-size:17px;line-height:1.7}
.te p{margin-bottom:1.2em}
.te>p:first-child{font-size:17px}
.elrow.narrow .te>p:first-child{font-size:19px;line-height:1.7}
.elsec .iconlist li,.checks li,.acc summary{font-size:17px}
.elsec h2{font-size:clamp(1.7rem,2.8vw,2.2rem)}.elsec h3{font-size:1.3rem}.elsec h4{font-size:1.12rem}
.elsec{padding-block:46px}
.elsec[style*="background"]{padding-block:64px}
.page-hero{padding:104px 0 86px}.page-hero h1{font-size:clamp(2rem,3.6vw,2.8rem)}
.crumbs{font-size:13px}
/* page entreprise */
.cgrid{max-width:1170px;grid-template-columns:380px 1fr;gap:44px}
.cgrid .hd.side{font-size:1.5rem;gap:16px}.cgrid .hd.side::after{width:42px}
.cbody{padding-left:36px}.crow{padding:58px 0}
.checks li{padding:7px 0 7px 30px}.checks li::before{top:17px;width:13px;height:7px}
.ev{grid-template-columns:200px 1fr;padding:16px 0}
.when small{font-size:14px}.when b{font-size:1.35rem}
.what h3{font-size:1.12rem}.what p{font-size:16.5px}
.isobox h3{font-size:1.05rem}.isobox p{font-size:13px}
.cert{padding:64px 0 40px}.ctr{font-size:1.5rem}
@media(max-width:900px){.cgrid{grid-template-columns:1fr;gap:14px}.cbody{padding-left:0;border-left:0}.ev{grid-template-columns:1fr}.te p,.accb p,.cbody p{font-size:16.5px}}

/* ===== menus déroulants : style clair de l'ancien site (noir quand l'en-tête est réduit) ===== */
.nav ul.sub{background:#fff;box-shadow:0 12px 34px rgba(0,0,0,.22);border-radius:0;padding:12px 18px 16px}
.nav ul.sub a{color:#323232;font:400 15.5px/1.3 "Fira Sans",sans-serif;padding:9px 0 9px 16px}
.nav ul.sub a:hover,.nav ul.sub a[aria-current]{color:var(--blue)}
.nav ul.sub.mega>li.mcol{padding:26px 36px 28px;min-width:300px}
.nav ul.sub.mega>li.mcol+li.mcol{border-left:1px solid #ececec}
.mh{color:var(--blue);font:400 16px "Fira Sans",sans-serif;border-bottom:1px solid #e6e6e6;padding-bottom:14px;margin-bottom:14px}
.nav ul.sub .has-sub>.sub-toggle{color:var(--blue)}
.site-header.stuck .nav ul.sub{background:#1b1b1b;box-shadow:0 18px 40px rgba(0,0,0,.4)}
.site-header.stuck .nav ul.sub a{color:#fff}
.site-header.stuck .nav ul.sub a:hover,.site-header.stuck .nav ul.sub a[aria-current]{color:var(--sky)}
.site-header.stuck .nav ul.sub.mega>li.mcol+li.mcol{border-left-color:#2e2e2e}
.site-header.stuck .mh{color:#fff;border-bottom-color:#353535}
@media(max-width:1060px){
 .nav ul.sub,.site-header.stuck .nav ul.sub{background:none;box-shadow:none}
 .nav ul.sub a,.site-header.stuck .nav ul.sub a{color:#fff}.nav ul.sub a:hover{color:#8fd3f4}
 .mh,.site-header.stuck .mh{color:#8fd3f4;border:0}
 .nav ul.sub.mega>li.mcol{padding:6px 0 10px;min-width:0}
}

/* ===== flèches du diaporama d'accueil : simples traits blancs, comme l'original ===== */
.slider .arrow{width:60px;height:40px;border:0;border-radius:0;background:none;backdrop-filter:none;color:#fff;opacity:.9;transition:transform .25s,opacity .2s}
.slider .arrow svg{width:36px;height:13px;stroke-width:1.8;filter:drop-shadow(0 1px 4px rgba(0,0,0,.35))}
.slider .arrow:hover{background:none;border:0;opacity:1}
.slider .arrow.prev{left:14px}.slider .arrow.next{right:14px}
.slider .arrow.prev:hover{transform:translate(-5px,-50%)}.slider .arrow.next:hover{transform:translate(5px,-50%)}
.slide .wrap{padding-left:0}

/* ===== mobile : en-tête identique avant/après défilement (plus de superposition) ===== */
@media(max-width:1060px){
 .site-header.stuck .topbar{position:static;width:auto;height:34px;background:var(--black);border-bottom:1px solid #2c2c2c;z-index:auto}
 .site-header.stuck .topbar .wrap{width:min(1170px,100% - 40px);padding:0 0 0 130px;margin-inline:auto;justify-content:flex-end}
 .site-header.stuck .mainbar{height:36px;background:rgba(29,68,137,1)}
 .site-header.stuck .mainbar .wrap{padding-left:130px}
 .site-header.stuck .brand{top:-34px;height:64px;width:116px;background:var(--black)}
 .site-header.stuck .brand img{width:92px}
 .site-header.stuck .tb-info{display:none}
 .burger{position:relative;z-index:4;margin-left:auto}
}
@media(max-width:700px){
 .topbar .wrap,.site-header.stuck .topbar .wrap{padding-left:130px}
 .sp-open{padding:8px 2px}
}

/* ===== mobile (≤768px) : en-tête et diaporama comme l'original ===== */
@media(max-width:768px){
 :root{--hh:96px}
 .site-header,.site-header.stuck{background:#000}
 .topbar,.site-header.stuck .topbar{position:absolute;top:0;right:10px;left:auto;width:auto;height:96px;background:none;border:0;z-index:6}
 .topbar .wrap,.site-header.stuck .topbar .wrap{width:auto;height:100%;padding:0;margin:0;justify-content:flex-end}
 .tb-info{display:none!important}.tb-right{gap:10px}
 .mainbar,.site-header.stuck .mainbar{height:96px;background:#000}
 .mainbar .wrap,.site-header.stuck .mainbar .wrap{width:100%;height:100%;padding:0;justify-content:center;position:relative}
 .brand,.site-header.stuck .brand{position:static;width:auto;height:auto;background:none}
 .brand img,.site-header.stuck .brand img{width:200px;height:auto}
 .burger{position:absolute;left:14px;top:50%;transform:translateY(-50%);margin:0;z-index:7}
 .nav{top:96px;max-height:calc(100vh - 96px)}
 /* diaporama */
 .slider{background:#fff;color:#000;min-height:0;overflow:visible}
 .slides{display:grid;min-height:0}
 .slide{grid-area:1/1;position:relative;inset:auto;display:flex;flex-direction:column}
 .slide::after{display:none}
 .slide .sbg,.slide.on .sbg{position:relative;inset:auto;height:300px;transform:none;animation:none}
 .slide .sbg::after{content:"";position:absolute;inset:0;background:rgba(29,68,137,.38)}
 .slide .wrap{position:static;min-height:0;display:block;padding:34px 22px 84px;width:100%}
 .scont{max-width:none;text-align:center}
 .scont h2{color:#000;font-size:1.9rem;text-shadow:none;margin:0 0 .5em}
 .scont p{color:#777;font-size:17px;text-shadow:none}
 .slider .arrow{top:auto;bottom:22px;transform:none;width:50px;height:36px;color:#000;opacity:1}
 .slider .arrow svg{filter:none}
 .slider .arrow.prev{left:18px}.slider .arrow.next{right:18px}
 .slider .arrow.prev:hover{transform:translateX(-4px)}.slider .arrow.next:hover{transform:translateX(4px)}
 .slider::after{content:"";position:absolute;left:0;right:0;bottom:70px;border-top:1px solid #e5e5e5}
 .counter,.progress{display:none}
 .tabsbar{border-top:0}
}

/* ===== mobile : panneau de menu noir plein écran, comme l'original ===== */
@media(max-width:768px){
 .topbar,.site-header.stuck .topbar{display:none}
 .site-header.menu-open .topbar{display:block;height:96px}
 .site-header.menu-open .brand,.site-header.menu-open .brand img{display:none}
 .site-header.menu-open .mainbar{background:#000}
 .burger span,.burger span::before,.burger span::after{transition:transform .25s,top .25s,background .2s}
 .burger[aria-expanded="true"] span{background:transparent}
 .burger[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}
 .burger[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}
 .nav{background:#000;top:96px;left:0;right:0;bottom:0;height:calc(100vh - 96px);max-height:none;padding:0;position:fixed}
 .nav.open{display:block;overflow:auto}
 .nav>ul{padding:14px 26px 40px}
 .nav>ul>li{border:0}
 .nav>ul>li>a,.nav>ul>li>.sub-toggle{padding:17px 0;border:0;font:700 15px/1.2 "Fira Sans",sans-serif;display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;color:#fff}
 .nav .has-sub>.sub-toggle::after{content:"+";border:0;transform:none;width:auto;height:auto;margin:0;font:400 22px/1 "Fira Sans",sans-serif}
 .nav .has-sub.open>.sub-toggle::after{content:"–"}
 .nav ul.sub,.site-header.stuck .nav ul.sub{padding:0 0 8px 14px;background:none}
 .nav ul.sub a{padding:11px 0 11px 16px;font-weight:400;font-size:15px;color:#ddd}
 .mh{color:#8fd3f4}
 body.nav-lock{overflow:hidden}
 .site-header.menu-open .tb-right{gap:16px}
}

/* ===== tablette (769–1060px) : en-tête et menu comme sur mobile, diaporama pleine image ===== */
@media(min-width:769px) and (max-width:1060px){
 :root{--hh:96px}
 .site-header,.site-header.stuck{background:#000}
 .topbar,.site-header.stuck .topbar{display:none}
 .site-header.menu-open .topbar{display:block;position:absolute;top:0;right:10px;left:auto;width:auto;height:96px;background:none;border:0;z-index:6}
 .site-header.menu-open .topbar .wrap{width:auto;height:100%;padding:0;margin:0;justify-content:flex-end}
 .tb-info{display:none!important}
 .mainbar,.site-header.stuck .mainbar{height:96px;background:#000}
 .mainbar .wrap,.site-header.stuck .mainbar .wrap{width:100%;height:100%;padding:0;justify-content:center;position:relative}
 .brand,.site-header.stuck .brand{position:static;width:auto;height:auto;background:none}
 .brand img,.site-header.stuck .brand img{width:210px;height:auto}
 .site-header.menu-open .brand,.site-header.menu-open .brand img{display:none}
 .burger{position:absolute;left:24px;top:50%;transform:translateY(-50%);margin:0;z-index:7;display:block}
 .burger span,.burger span::before,.burger span::after{transition:transform .25s,top .25s,background .2s}
 .burger[aria-expanded="true"] span{background:transparent}
 .burger[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}
 .burger[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}
 .nav{background:#000;top:96px;left:0;right:0;bottom:0;height:calc(100vh - 96px);max-height:none;padding:0;position:fixed}
 .nav.open{display:block;overflow:auto}
 .nav>ul{padding:18px 44px 40px;flex-direction:column;align-items:stretch}
 .nav>ul>li>a,.nav>ul>li>.sub-toggle{padding:19px 0;border:0;font:700 16px/1.2 "Fira Sans",sans-serif;display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;color:#fff}
 .nav .has-sub>.sub-toggle::after{content:"+";border:0;transform:none;width:auto;height:auto;margin:0;font:400 24px/1 "Fira Sans",sans-serif}
 .nav .has-sub.open>.sub-toggle::after{content:"–"}
 .nav ul.sub,.site-header.stuck .nav ul.sub{position:static;display:none;padding:0 0 8px 14px;background:none;box-shadow:none}
 .nav .has-sub.open>ul.sub{display:flex}
 .nav ul.sub.mega{flex-direction:column;width:auto;max-width:none}
 .nav ul.sub a{padding:12px 0 12px 16px;font-weight:400;font-size:16px;color:#ddd}
 .nav ul.sub.mega>li.mcol{padding:6px 0 10px;min-width:0;border:0!important}
 .mh{color:#8fd3f4;border:0;padding-bottom:6px}
 body.nav-lock{overflow:hidden}
 .site-header.menu-open .tb-right{gap:18px}
 .slide .wrap{padding-left:max(24px,6vw)}
 .slider,.slides,.slide .wrap{min-height:520px}
}

/* ===== en-tête réduit : sous-menus compacts ===== */
@media(min-width:1061px){
 .site-header.stuck .nav ul.sub a{padding:7px 0 7px 16px;font-size:15px;line-height:1.3}
 .site-header.stuck .nav ul.sub.mega>li.mcol{padding:20px 32px 22px;min-width:270px}
 .site-header.stuck .mh{padding-bottom:11px;margin-bottom:8px;font-size:15.5px}
}

/* ===== bande bleue du menu : 65px comme l'original (bureau) ===== */
@media(min-width:1061px){
 :root{--hh:101px}
 .site-header:not(.stuck) .mainbar{height:65px}
 .site-header:not(.stuck) .brand{top:-36px;height:101px;width:190px}
 .site-header:not(.stuck) .brand img{width:158px}
 .site-header:not(.stuck) .nav a,.site-header:not(.stuck) .sub-toggle{padding:25px 13px;font-size:14px}
 .site-header:not(.stuck) .nav ul.sub{top:100%}
 .site-header:not(.stuck) .nav ul.sub a{padding:9px 0 9px 16px}
 .site-header:not(.stuck) .mainbar .wrap{padding-left:210px}
 .site-header:not(.stuck) .topbar .wrap{padding-left:210px}
}

/* ===== bande noire du haut : 65px, icônes seules, comme l'original (bureau) ===== */
@media(min-width:1061px){
 :root{--hh:130px}
 .site-header:not(.stuck) .topbar{height:65px;border-bottom:0}
 .site-header:not(.stuck) .tb-info{display:none}
 .site-header:not(.stuck) .topbar .wrap{justify-content:flex-end}
 .site-header:not(.stuck) .brand{top:-65px;height:136px;width:190px}
 .site-header:not(.stuck) .brand img{width:165px}
 .site-header:not(.stuck) .tb-right{gap:22px}
 .site-header:not(.stuck) .lang-open{font:700 16px "Fira Sans",sans-serif;color:#fff;gap:10px}
 .site-header:not(.stuck) .lang-open .flag{width:28px;height:28px}
 .site-header:not(.stuck) .cart-open svg{width:23px;height:23px}
 .site-header:not(.stuck) .cart-open,.site-header:not(.stuck) .sp-open{color:#fff}
 .site-header:not(.stuck) .sp-open span,.site-header:not(.stuck) .sp-open span::before,.site-header:not(.stuck) .sp-open span::after{width:24px;background:#fff}
 .site-header:not(.stuck) .sp-open span::before{top:-7px}.site-header:not(.stuck) .sp-open span::after{top:7px}
}

/* ===== sélecteur de langue : drapeaux en relief (3D) ===== */
.lm-list{perspective:700px;gap:56px}
.lm-list a{flex-direction:column;gap:16px;font-size:1.1rem;opacity:.9}
.lm-list .flag{position:relative;width:78px;height:78px;overflow:visible;box-shadow:none;transform-style:preserve-3d;
  filter:drop-shadow(0 14px 14px rgba(0,0,0,.55)) drop-shadow(0 3px 3px rgba(0,0,0,.35));
  transition:transform .35s cubic-bezier(.2,.7,.2,1),filter .35s}
.lm-list .flag svg{border-radius:50%}
.lm-list .flag::before{content:"";position:absolute;inset:0;border-radius:50%;z-index:2;pointer-events:none;
  background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.75) 0,rgba(255,255,255,.28) 22%,rgba(255,255,255,0) 46%),
             radial-gradient(circle at 50% 50%,rgba(0,0,0,0) 52%,rgba(0,0,0,.38) 100%);
  box-shadow:inset 0 -7px 12px rgba(0,0,0,.35),inset 0 3px 6px rgba(255,255,255,.35),0 0 0 2px rgba(255,255,255,.18)}
.lm-list a:hover .flag,.lm-list a:focus-visible .flag{transform:translateY(-8px) rotateX(14deg) rotateY(-14deg) scale(1.12);
  filter:drop-shadow(0 22px 18px rgba(0,0,0,.6)) drop-shadow(0 4px 4px rgba(0,0,0,.35))}
.lm-list a[aria-current] .flag::before{box-shadow:inset 0 -7px 12px rgba(0,0,0,.35),inset 0 3px 6px rgba(255,255,255,.35),0 0 0 3px #fff}
.lm-list a:hover,.lm-list a[aria-current]{opacity:1}
@media(prefers-reduced-motion:reduce){.lm-list .flag{transition:none}}

/* ===== logo et conteneur d'en-tête : proportions de l'original (bureau) ===== */
@media(min-width:1061px){
 .site-header .wrap,.slider .wrap{width:min(1220px,100% - 40px)}
 .site-header:not(.stuck) .brand{width:365px;height:136px;top:-65px}
 .site-header:not(.stuck) .brand img{width:270px}
 .site-header:not(.stuck) .mainbar .wrap,.site-header:not(.stuck) .topbar .wrap{padding-left:389px}
 .site-header.stuck .brand{width:210px}
 .site-header.stuck .mainbar .wrap{padding-left:230px}
}
@media(min-width:1061px){.site-header:not(.stuck) .brand img{width:255px}}
@media(min-width:1061px) and (max-width:1340px){
 .site-header:not(.stuck) .brand{width:270px;height:136px}
 .site-header:not(.stuck) .brand img{width:200px}
 .site-header:not(.stuck) .mainbar .wrap,.site-header:not(.stuck) .topbar .wrap{padding-left:290px}
 .site-header:not(.stuck) .nav a,.site-header:not(.stuck) .sub-toggle{padding:25px 9px;font-size:13.5px}
 .site-header.stuck .nav a,.site-header.stuck .sub-toggle{padding:22px 8px;font-size:13.5px}
}

/* ===== accueil : section Vision comme l'original ===== */
.split.vision{margin-block:90px;gap:30px;grid-template-columns:1fr 1fr;align-items:center}
.vision .kicker{color:#555;font-weight:400;letter-spacing:.2em;font-size:14px;padding-left:58px;margin:0 0 4px}
.vision h2.hd{gap:18px;margin:0 0 .6em;font-size:clamp(1.7rem,2.6vw,2.2rem)}
.vision h2.hd::before{width:40px;height:3px;background:var(--red)}
.vision p{font-size:17px;line-height:1.7;color:#6b6b6b}
.vision .btn{margin-top:22px}
.vision .ph img{box-shadow:none;border-radius:0;max-height:none;width:100%;max-width:640px;margin-left:auto}
@media(max-width:820px){.split.vision{margin-block:50px}.vision .kicker{padding-left:0}}
.tagband .te,.tagband p{max-width:70ch;margin-inline:auto}.tagband p,.tagband p span{color:#dfe5f1!important}
.vision p:first-of-type{margin-top:0}

/* ===== accueil mobile : proportions de l'original ===== */
@media(max-width:768px){
 :root{--hh:128px}
 .topbar,.site-header.stuck .topbar,.site-header.menu-open .topbar{height:128px}
 .mainbar,.site-header.stuck .mainbar{height:128px}
 .brand img,.site-header.stuck .brand img{width:220px}
 .nav{top:128px;height:calc(100vh - 128px)}
 .scont h2{font-size:2rem;line-height:1.2}
 .scont p{font-size:19px;line-height:1.5;color:#777}
 .slide .wrap{padding:34px 22px 92px}
 .tabsbar{display:none}
 .slider::after{bottom:76px}
}
@media(max-width:768px){.slider .arrow{display:grid;z-index:6}}

/* ===== accueil mobile : Vision en colonne unique (comme l'original) ===== */
@media(max-width:900px){
 .split.vision,.split.vision.rev,.split.germany{display:block;margin-block:44px}
 .split.vision>div+div,.split.germany>div+div{margin-top:30px}
 .vision .kicker,.germany .kicker{padding-left:0;letter-spacing:.2em;font-size:15px}
 .vision h2.hd,.germany h2.hd{font-size:2rem}
 .vision p,.germany p{font-size:18px;line-height:1.55}
 .vision .ph img,.germany .ph img{max-width:100%;width:100%;margin:0 auto}
 .split.germany .ph{order:2;margin-top:24px}
 .split.germany{display:flex;flex-direction:column}
 .split.germany>.ph{order:2}
 .split.germany>div:not(.ph){order:1}
 .valsband{padding:44px 0}
 .valsband .vals{grid-template-columns:1fr;gap:26px}
 .tagband{padding:60px 0}.tagband h1{font-size:2rem}
}
@media(max-width:900px){
 .split.germany{display:flex;flex-direction:column}
 .split.germany>.ph{order:0!important;margin:0 0 26px}
 .split.germany>div:not(.ph){order:1!important}
 .split.germany .ph img{max-width:360px;margin:0 auto}
 .split.germany .btn{margin-top:14px}
}

/* ===== œil : animation zoomIn de l'original (Elementor, vitesse « slow ») ===== */
.js .zoom{opacity:0;transform:scale(.3);transition:none}
.js .zoom.in{animation:zoomIn 1.5s cubic-bezier(.2,.7,.2,1) both;opacity:1;transform:none}
@keyframes zoomIn{from{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}to{opacity:1;transform:none}}
.vision .ph{overflow:hidden}
@media(prefers-reduced-motion:reduce){.js .zoom,.js .zoom.in{animation:none;opacity:1;transform:none}}

/* ===== diaporama : photos claires comme l'original (teinte déjà dans l'image) ===== */
.slide::after{background:linear-gradient(90deg,rgba(14,32,76,.16),rgba(14,32,76,0) 60%)}
.slide .sbg{filter:none}
@media(min-width:769px){.slider,.slides,.slide .wrap{min-height:555px}}
@media(max-width:768px){.slide .sbg::after{background:rgba(29,68,137,.12)}}
.page-hero{background-blend-mode:normal}
.slide .sbg::after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.23)}
.slide::after{background:none}

/* ===== diaporama : même teinte que l'original (bleu éclairci, pas de gris) ===== */
.slide .sbg::after{background:rgb(52,64,92);mix-blend-mode:screen}
@media(min-width:769px){
 .slide .wrap{padding-bottom:70px}
 .scont{max-width:580px}
 .scont p{font-weight:500;font-size:17px;line-height:1.5}
 .slider .arrow{top:50%}
}
@media(max-width:768px){.slide .sbg::after{background:rgb(52,64,92);mix-blend-mode:screen}}

/* ===== diaporama : image entière, sans zoom ni décalage, teinte plus profonde ===== */
.slide .sbg,.slide.on .sbg{inset:0;transform:none!important;animation:none!important;margin-top:0!important;background-size:cover;background-position:center}
.slide .sbg::after{opacity:.5}

/* ===== diaporama : voile bleu profond comme l'original ===== */
.slide .sbg::after{background:rgba(30,72,150,.30);mix-blend-mode:normal;opacity:1}
.slide .scont .btn{text-transform:uppercase;letter-spacing:.02em;font-size:12.5px}

/* ===== diaporama : photo brute, sans aucun voile (comme le thème d'origine) ===== */
.slide .sbg::after,.slide::after{content:none!important;display:none!important;background:none!important}
@media(max-width:768px){.slide .sbg::after{display:none!important}}

/* ===== pages de contenu : largeur et corps de texte de l'original ===== */
@media(min-width:1061px){.elsec .wrap{width:min(1120px,100% - 40px)}}
.elrow.narrow .te,.elrow.narrow .iconlist,.elrow.narrow .accs{max-width:none}
.te p,.accb p{font-size:16px;line-height:1.6}
.te>p:first-child,.elrow.narrow .te>p:first-child{font-size:16px;line-height:1.6;color:inherit}
.elsec .elcol>h2:first-child{font-size:2.2rem;margin-top:.2em}
.elsec{padding-block:30px}

/* ===== blocs en deux colonnes à fond coloré (texte sur fond bleu, photo sur fond clair) ===== */
.elrow.joined{gap:0;align-items:stretch}
.elrow.joined .elcol{padding:10px}
.elcol.hasbg>.wpad,.elcol.hasbg>.te{width:100%}
.elcol.dark,.elcol.dark .te p,.elcol.dark p,.elcol.dark li,.elcol.dark .iconlist li{color:#fff}
.elcol.dark h2,.elcol.dark h3,.elcol.dark h4,.elcol.dark strong,.elcol.dark b{color:#fff}
.elcol.dark .te>p:first-child{color:#fff}
.elcol.hasbg .elimg{margin:0}.elcol.hasbg .elimg img{width:100%;max-height:none;box-shadow:none;border-radius:0;object-fit:cover}
.elcol.dark a{color:#9fd4f6}
.elrow.joined .wpad{padding:20px}
@media(max-width:760px){.elrow.joined .elcol{flex:1 1 100%!important;max-width:100%!important}}

/* ===== comme l'original : pas de trait rouge sous les titres, bannière en haut à 100 % ===== */
.elsec>.wrap>.elcol>h2:first-child::after,.prose h2::after{display:none!important}
.page-hero{background-size:100% auto;background-position:center top;background-color:#2196f3;padding:100px 0 60px}
.page-hero h1{margin-bottom:8px}
.page-hero{padding:112px 0 82px}
@media(min-width:1061px){.page-hero+.elsec{margin-top:10px}}

/* ===== images rondes (page Statistiques) et colonnes de texte ===== */
.elimg.round img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:6px solid #fff;margin-inline:auto}
.elimg.shadowed img{box-shadow:0 8px 24px rgba(20,40,90,.22)}
.te[style*="column-count"] p{break-inside:avoid}
.elsec[style*="rgba"] .te p{color:#333}

.page-hero{background-size:cover;background-position:center center;padding:104px 0 76px}
@media(max-width:768px){.page-hero{padding:56px 0 40px}}
