/* PC, tablette et téléphone */
img,video,svg{max-width:100%}img,video{vertical-align:middle}main,.container,section,article,figure{min-width:0}figure{margin-inline:0}p,li,h1,h2,h3,a{overflow-wrap:break-word}input,textarea,select{max-width:100%}a:focus-visible,button:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
@media(min-width:1200px){.container{width:min(1180px,calc(100% - 80px))}.nav-wrap{gap:25px}.solution-hero-grid,.alarm-hero-grid{gap:60px}.home-services .service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:761px) and (max-width:1100px){.solution-hero h1,.alarm-hero h1{font-size:clamp(38px,5vw,52px)}.solution-hero-grid,.alarm-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.logo{gap:8px}}
@media(max-width:900px){.nav-wrap{height:76px;position:relative}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:48px;min-height:48px;flex-shrink:0}.menu-toggle span{width:23px;height:2px;background:#fff}.nav{display:none;position:absolute;top:100%;left:-18px;right:-18px;padding:22px;background:#090b13;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:6px;max-height:calc(100dvh - 80px);overflow-y:auto}.nav.open{display:flex}.nav>a,.nav-service{display:block;padding:14px;font-size:15px;min-height:48px}.nav .btn{margin-top:8px}.logo-name{font-size:14px}.logo-name small{font-size:7px;letter-spacing:1px}.brand-logo{width:65px;height:auto}.solution-subnav,.alarm-subnav{top:76px}}
@media(max-width:760px){html{scroll-padding-top:90px}.container{width:calc(100% - 36px)}.topbar{display:none}.section{padding-block:52px}.section-head{display:block}.section-head>p{margin-top:20px}.section-head h2,h2{font-size:clamp(28px,7.8vw,38px);line-height:1.16}.hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px}.hero-actions .btn{width:100%;min-height:50px}.btn{min-height:48px}.solution-hero-grid,.alarm-hero-grid,.solution-split,.solution-two,.solution-three,.alexa-layout,.solution-video,.hub-layout,.app-layout,.contact-grid,.why-home-grid{grid-template-columns:minmax(0,1fr)!important}.solution-hero h1,.alarm-hero h1{font-size:clamp(34px,9vw,48px);letter-spacing:-1.3px;line-height:1.08}.solution-hero,.alarm-hero{padding-top:25px}.breadcrumb{font-size:11px;margin-bottom:28px}.solution-photo img,.solution-hero img,.alarm-hero figure img{width:100%;height:auto;max-height:340px;object-fit:cover}.solution-subnav>div,.alarm-subnav>div{display:flex;overflow-x:auto;flex-wrap:nowrap;gap:20px;scrollbar-width:thin}.solution-subnav a,.alarm-subnav a{white-space:nowrap;padding-block:9px;min-height:44px}.home-services .service-grid,.qualification-grid,.reviews-grid{grid-template-columns:minmax(0,1fr)!important}.home-services .service-visual{aspect-ratio:16/9}.form-grid{grid-template-columns:minmax(0,1fr)!important}input,textarea,select{font-size:16px!important;min-height:48px}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start;gap:22px}.solution-final .hero-actions,.alarm-final .hero-actions{align-items:stretch}.solution-note{font-size:13px}.hero-proof{flex-wrap:wrap;gap:12px}.solution-credits{overflow-wrap:anywhere}}
@media(max-width:380px){.container{width:calc(100% - 28px)}.logo-name{font-size:12px}.logo-name small{font-size:6px}.brand-logo{width:52px}.nav-wrap{gap:8px}.solution-hero h1,.alarm-hero h1{font-size:34px}.voice-commands{padding:16px}.voice-commands button{padding:14px 10px}}

.visual-portail{background:url("assets/solutions/portail-motorise.png") center/cover no-repeat}.gate-demo{padding:25px;border:1px solid var(--line);border-radius:18px;background:#101d29}.gate-demo img{width:100%;height:auto;margin:20px 0}.contact-fallback{margin-top:20px;grid-column:1/-1}.contact-fallback[hidden],#gate-demo-media[hidden]{display:none}.contact-fallback p,.form-local-note{font-size:13px;line-height:1.7;color:var(--muted)}.form-local-note{grid-column:1/-1;padding:16px;border:1px solid var(--line);border-radius:8px}
@media(min-width:1200px){.home-services .service-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.nav{gap:14px}.nav>a{font-size:11px}.logo-name{font-size:14px}.brand-logo{width:75px}.nav-wrap{gap:18px}}
@media(min-width:901px)and(max-width:1199px){.nav{gap:10px}.nav>a{font-size:10px}.logo-name{font-size:12px}.brand-logo{width:55px}.logo-name small{font-size:6px}.nav-wrap{gap:10px}}

@media(min-width:901px){.header .nav{flex:1;justify-content:flex-end}.header .nav .nav-contact{margin-left:auto;flex-shrink:0;white-space:nowrap}}
@media(max-width:900px){.header .nav .nav-contact{margin-left:0;margin-top:10px}}

.equipment-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:start}.equipment-grid .solution-product{min-width:0}.equipment-grid .solution-product-image{height:210px}.equipment-grid .solution-product>div:last-child{padding:24px 20px}.equipment-grid .solution-product h3{font-size:21px}.ptz-card-details{margin-top:22px;border-top:1px solid var(--line);padding-top:16px}.ptz-card-details summary{cursor:pointer;color:var(--cyan);font-size:13px;font-weight:700}.ptz-card-details p{font-size:13px;line-height:1.8}@media(max-width:1100px){.equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.equipment-grid{grid-template-columns:minmax(0,1fr)}.equipment-grid .solution-product-image{height:260px}.equipment-grid .solution-product>div:last-child{padding:25px}}

/* Coordonnees toujours visibles dans l'en-tete */
.header{position:sticky;top:0;z-index:50;background:#000}
.header .nav-wrap{height:auto;min-height:92px;display:grid;grid-template-columns:auto 1fr;gap:0 28px;padding-block:12px}
.header-contact{display:flex;align-items:center;justify-content:flex-end;gap:22px;min-width:0}
.header-phone{font-size:22px;font-weight:800;white-space:nowrap;line-height:1.3;min-height:44px;display:flex;align-items:center}
.header-phone:hover{color:var(--cyan)}
.header-no-subscription{font-size:17px;font-weight:800;color:#d38bff;white-space:nowrap}
.header .nav{grid-column:1/-1;width:100%;padding-top:8px}
@media(min-width:901px){html{scroll-padding-top:160px}.solution-subnav,.alarm-subnav{top:144px}.header .nav{justify-content:flex-start}.header .nav>a{font-size:12px}}
@media(max-width:900px){
.header .nav-wrap{grid-template-columns:minmax(0,1fr) auto 44px;column-gap:12px;min-height:82px;padding-block:8px}
.header-contact{flex-direction:column;align-items:flex-end;gap:2px}
.header-phone{font-size:16px;min-height:30px}.header-no-subscription{font-size:12px}
.header .menu-toggle{min-width:44px;width:44px;min-height:44px}
.header .nav{grid-column:auto;padding:22px;top:100%}
.header .logo{min-width:0;gap:5px}.header .brand-logo{width:52px;height:auto}.header .logo-name{font-size:12px;letter-spacing:.5px}.header .logo-name small{font-size:5px;letter-spacing:.6px}
.solution-subnav,.alarm-subnav{top:82px}html{scroll-padding-top:100px}
}
@media(max-width:380px){.header .nav-wrap{column-gap:7px}.header .brand-logo{width:37px}.header .logo-name{font-size:10px}.header .logo-name small{display:none}.header-phone{font-size:14px}.header-no-subscription{font-size:11px}}

@media(max-width:600px){.header .nav-wrap{column-gap:8px}.header .brand-logo{width:36px}.header .logo-name{font-size:10px;letter-spacing:0}.header .logo-name small{font-size:4px;letter-spacing:.25px}}
@media(max-width:380px){.header .brand-logo{display:none}.header .logo-name{font-size:10px}.header .logo-name small{display:none}}
