.service-mobile-filters,.page-services .home-mobile-quote{display:none}
@media(max-width:900px){
 body.page-services{background:#03131e;padding-bottom:calc(90px + env(safe-area-inset-bottom))}
 .page-services .topbar{display:none}.page-services .site-header-shell{background:#05131f!important}
 .page-services .site-header-inner{min-height:78px;padding:12px 16px;gap:12px}
 .page-services .brand{max-width:155px;margin-right:auto}.page-services .brand img{max-width:100%;max-height:48px;height:auto;object-fit:contain}
 .page-services .home-mobile-quote{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;gap:8px;background:linear-gradient(110deg,#ff7407,#ff950f);border-radius:9px;color:white;font-size:12px;font-weight:650;text-decoration:none;white-space:nowrap}
 .page-services .nav-toggle{order:3;width:44px;height:44px;border:1px solid #ffffff25;background:#0a1b2a;border-radius:9px}
 .page-services .service-page-hero{position:relative;display:block;min-height:330px;padding:28px 20px 32px;background:linear-gradient(90deg,#03121ef5,#03121e55),url('../img/project-solar.jpg') center/cover;overflow:hidden}
 .page-services .service-hero-gallery{display:none}.page-services .service-hero-shade{background:linear-gradient(0deg,#03131e,transparent 65%)}
 .page-services .service-page-hero .page-hero-content{position:relative;z-index:1;padding:0;width:100%;max-width:600px}
 .page-services .service-page-hero h1{font-size:clamp(32px,6vw,52px);line-height:1.08;letter-spacing:-1px;color:#fff;margin:14px 0 18px}
 .page-services .service-page-hero .eyebrow{font-size:12px;letter-spacing:2px;color:#ff970a}
 .page-services .service-page-hero p{font-size:15px;line-height:1.55;color:#ccd6e1;max-width:520px}
 .page-services .service-mobile-filters{display:flex;gap:8px;padding:10px 14px 18px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#ff8400 #102332;overscroll-behavior-x:contain}
 .page-services .service-mobile-filters button{flex:0 0 auto;min-height:44px;padding:10px 16px;border:1px solid #2a3b4c;border-radius:12px;background:linear-gradient(#1b2a36,#10202d);color:#f2f6fa;font:inherit;font-size:13px;cursor:pointer}
 .page-services .service-mobile-filters button[aria-pressed=true]{background:linear-gradient(110deg,#ff7300,#ff980f);border-color:#ff9700;box-shadow:0 4px 15px #ff870022}
 .page-services .service-mobile-filters button:focus-visible{outline:2px solid white;outline-offset:2px}
 body.page-services .service-showcase{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding:0 12px 24px!important;width:100%;max-width:100%;box-sizing:border-box}
 body.page-services .service-showcase-card{display:flex!important;flex-direction:column;grid-column:auto!important;min-width:0;width:auto!important;padding:0!important;border:2px solid #e6edf2;border-radius:14px;background:#fbfcff;overflow:hidden;box-shadow:0 5px 16px #0002}
 body.page-services .service-showcase-card[hidden]{display:none!important}
 body.page-services .service-showcase-card>img{width:100%!important;height:115px!important;min-height:0!important;object-fit:cover;border-radius:0}
 body.page-services .service-showcase-body{padding:24px 12px 12px!important;position:relative;display:flex;flex-direction:column;flex:1;min-width:0}
 .page-services .floating-service-icon{position:absolute;top:-22px;left:12px;width:38px;height:38px;display:grid;place-items:center;border:2px solid #fff;border-radius:10px;background:#ff8a00;color:white;font-size:22px}
 .page-services .service-showcase-cctv .floating-service-icon{background:#007dff}.page-services .service-showcase-network .floating-service-icon{background:#00b87e}.page-services .service-showcase-app .floating-service-icon{background:#872aff}
 body.page-services .service-showcase-card h2{font-size:18px;line-height:1.15;letter-spacing:-.5px;text-transform:none;color:#061422;overflow-wrap:anywhere;margin:4px 0 8px}
 body.page-services .service-showcase-card p{font-size:13px;line-height:1.4;color:#62728d;margin:0 0 12px}
 body.page-services .service-showcase-card .check-list{display:grid;grid-template-columns:1fr;gap:8px;margin:0 0 8px;padding:0;list-style:none}
 body.page-services .service-showcase-card .check-list li{font-size:12px;line-height:1.4;color:#27354a;padding-left:19px;position:relative}
 .page-services .service-showcase-card .check-list li:before{content:'✓';position:absolute;left:0;top:1px;width:14px;height:14px;display:grid;place-items:center;border-radius:50%;background:#ff8900;color:#fff;font-size:10px}
 .page-services .service-showcase-cctv .check-list li:before{background:#007dff}.page-services .service-showcase-network .check-list li:before{background:#00b87e}.page-services .service-showcase-app .check-list li:before{background:#872aff}
 .page-services .service-showcase-actions{margin-top:auto}.page-services .service-showcase-actions a{display:flex;align-items:center;min-height:44px;color:#fa7d00;font-size:13px;text-transform:none}
 body.page-services .service-help-bar{grid-column:1 / -1;display:block;padding:20px;background:#f5f9ff;border-radius:15px;color:#07182a}
 .page-services .service-help-bar>div:not(.service-help-main){display:none}.page-services .service-help-main{display:flex;gap:12px}.page-services .service-help-main strong{font-size:20px}.page-services .service-help-main small{font-size:14px;line-height:1.5}.page-services .service-help-main .button{min-height:44px;margin-top:12px}
 .page-services .mobile-dock{position:fixed;bottom:0;left:0;right:0;transform:none;width:100%;max-width:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:4px;border-radius:22px 22px 0 0;background:#04131ff5;backdrop-filter:blur(15px);z-index:90}
 .page-services .mobile-dock a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:55px;gap:5px;background:none;color:#d7e0e8;box-shadow:none;border-radius:14px}.page-services .mobile-dock a.is-active{background:linear-gradient(110deg,#ff7b00,#ff990a);color:white}.page-services .mobile-dock small{font-size:11px}.page-services .mobile-dock a>span{font-size:23px}
}
@media(max-width:360px){.page-services .brand{max-width:110px}.page-services .home-mobile-quote{font-size:11px;padding:8px}.page-services .site-header-inner{padding:10px;gap:8px}body.page-services .service-showcase-body{padding-left:9px!important;padding-right:9px!important}body.page-services .service-showcase-card h2{font-size:16px}}
.service-mobile-title,.service-mobile-promises,.service-mobile-signature{display:none}
@media(max-width:900px){
 body.page-services .service-original-title{display:none}
 body.page-services .service-mobile-title{display:block}
 body.page-services .service-mobile-title span{color:#ff8b0b}
 body.page-services .service-mobile-promises{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px;padding-bottom:20px;border-bottom:1px solid #ffffff17}
 .service-mobile-promises>div{display:flex;align-items:center;gap:9px;min-width:0}
 .service-mobile-promises b{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border:1px solid #ff9b0b;border-radius:50%;color:#ff960a;font-size:24px}
 .service-mobile-promises strong,.service-mobile-promises small{display:block}
 .service-mobile-promises strong{font-size:12px;color:#fff;line-height:1.3}.service-mobile-promises small{font-size:11px;color:#bdc8d4;line-height:1.4;margin-top:3px}
 body.page-services .service-page-hero{padding-bottom:12px}
 body.page-services .service-help-main>.button{background:transparent;color:#087afa;border:1px solid #087afa}
}
@media(max-width:450px){.service-mobile-promises>div{flex-direction:column;align-items:flex-start}.service-mobile-promises strong{font-size:11px}.service-mobile-promises small{font-size:10px}}
@media(min-width:600px) and (max-width:900px){
 body.page-services .service-page-hero .page-hero-content{max-width:66%}
 body.page-services .service-mobile-signature{display:block;position:absolute;right:28px;top:52px;transform:rotate(-9deg);font:italic 24px/1.4 'Brush Script MT','Segoe Script',cursive;color:white}
 .service-mobile-signature:after{content:'';display:block;height:10px;border-top:3px solid #ff8b0b;border-radius:50%;width:160px;margin:12px 0 0 auto}
 body.page-services .service-showcase-card>img{height:145px!important}
 body.page-services .service-showcase-card h2{font-size:23px}
 body.page-services .service-showcase-card p{font-size:16px}
 body.page-services .service-showcase-card .check-list li{font-size:15px;padding-left:22px}
 body.page-services .service-showcase-actions a{font-size:16px}
}
.service-approved-description{display:none}
@media(max-width:900px){
 body.page-services .site-header-shell{position:relative!important;top:auto!important;background:#03131f!important}
 body.page-services .main-has-hero{padding-top:0!important;margin-top:0!important}
 body.page-services .site-header-inner{display:flex!important;justify-content:space-between!important;padding:16px 4%!important;height:96px!important}
 body.page-services .brand{width:34%!important;max-width:280px!important;flex:0 1 280px!important}
 body.page-services .brand img{width:100%!important;height:auto!important;max-height:68px!important;object-fit:contain!important}
 body.page-services .home-mobile-quote{margin-left:auto!important;margin-right:16px!important;min-height:52px;padding:12px 23px;font-size:14px}
 body.page-services .nav-toggle{flex:0 0 56px!important;width:56px!important;height:54px!important}
 body.page-services .header-actions{display:none!important}
 body.page-services .service-page-hero{height:auto!important;min-height:0!important;padding:24px 4.8% 0!important;background-color:#03131e!important;background-size:cover!important;background-position:center!important}
 body.page-services .service-page-hero .service-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#00111fed 0%,#00111fb0 50%,#00111f18),linear-gradient(0deg,#03131e,transparent)!important}
 body.page-services .service-page-hero .page-hero-content{margin:0!important;max-width:65%!important}
 body.page-services .service-mobile-title{font-size:clamp(28px,6vw,54px)!important;font-weight:750;line-height:1.05!important;margin:14px 0 20px!important}
 body.page-services .service-original-description{display:none!important}
 body.page-services .service-approved-description{display:block;font-size:clamp(14px,2.2vw,20px)!important;line-height:1.35!important;margin:0!important}
 body.page-services .service-mobile-promises{gap:16px;margin-top:24px;padding-bottom:28px;margin-bottom:0}
 body.page-services .service-mobile-promises>div{flex-direction:row;align-items:center}
 body.page-services .service-mobile-promises b{width:54px;height:54px}
 body.page-services .service-mobile-promises svg{width:30px;height:30px}
 body.page-services .service-mobile-promises strong{font-size:18px}.page-services .service-mobile-promises small{font-size:15px}
 body.page-services .service-mobile-filters{padding:16px 3.6% 24px!important;gap:6px}
 body.page-services .service-mobile-filters button{display:flex;align-items:center;justify-content:center;gap:8px;flex:1 0 auto;min-height:59px;font-size:17px;padding:10px 16px}
 body.page-services .service-mobile-filters svg{width:25px;height:25px;flex-shrink:0}
 body.page-services .service-showcase{padding:0 2% 12px!important;gap:16px!important}
 body.page-services .service-showcase-card{border-radius:20px!important;border:3px solid #f0f4f7!important}
 body.page-services .service-showcase-card>img{height:132px!important;flex:none!important}
 body.page-services .service-showcase-body{padding:24px 27px 10px!important;gap:0!important;display:flex!important;min-height:0!important}
 body.page-services .floating-service-icon{width:60px!important;height:60px!important;top:-44px!important;left:26px!important;border:3px solid white!important;box-shadow:none!important}
 body.page-services .floating-service-icon svg{width:36px;height:36px}
 body.page-services .service-showcase-card h2{font-size:24px!important;line-height:1.1!important;margin:0 0 8px!important;min-height:0!important}
 body.page-services .service-showcase-card p{font-size:19px!important;line-height:1.22!important;margin:0 0 16px!important;min-height:0!important}
 body.page-services .service-showcase-card .check-list{gap:5px!important;border:0!important;padding:0!important;margin:0!important}
 body.page-services .service-showcase-card .check-list li{font-size:18px!important;line-height:1.28!important;padding:0 0 0 36px!important;border:0!important;margin:0!important}
 body.page-services .service-showcase-card .check-list li:before{width:22px;height:22px;font-size:15px;top:0}
 body.page-services .service-showcase-actions{display:block!important;margin-top:8px!important;padding:0!important}
 body.page-services .service-showcase-actions a{display:inline-flex!important;justify-content:flex-start!important;gap:16px!important;padding:0!important;border:0!important;box-shadow:none!important;background:none!important;color:#ff7f00!important;font-size:19px!important;min-height:40px!important}
 body.page-services .service-help-bar{padding:24px 30px!important;background:#f5f9ff!important;border-radius:20px!important}
 body.page-services .service-help-main{display:flex!important;align-items:center;gap:24px}
 body.page-services .service-help-main>span{color:#087fff;flex:0 0 76px;width:76px;height:76px;display:grid;place-items:center;border:2px solid #e1edff;border-radius:50%}
 body.page-services .service-help-main>span svg{width:48px;height:48px}
 body.page-services .service-help-main>div{display:grid;grid-template-columns:1fr auto;column-gap:18px;flex:1}
 body.page-services .service-help-main strong{font-size:24px!important}.page-services .service-help-main small{font-size:18px!important;margin-top:8px}
 body.page-services .service-help-main a.button{grid-column:2;grid-row:1 / 3;align-self:center;background:transparent!important;color:#087bff!important;border:1px solid #087bff!important;border-radius:13px;margin:0!important;padding:14px 24px!important;font-size:17px!important;text-transform:none}
 body.page-services .site-footer{display:none}
 body.page-services .mobile-dock{padding:12px 26px calc(12px + env(safe-area-inset-bottom))!important;min-height:108px;box-sizing:border-box;border:1px solid #71808d;border-radius:32px 32px 0 0!important}
 body.page-services .mobile-dock a{min-height:82px!important}.page-services .mobile-dock small{font-size:18px!important}.page-services .mobile-dock a>span{font-size:32px!important}
}
@media(max-width:599px){
 body.page-services .site-header-inner{height:76px!important;padding:10px 12px!important}
 body.page-services .home-mobile-quote{font-size:11px;padding:8px 10px;min-height:44px;margin-right:8px!important}
 body.page-services .nav-toggle{width:44px!important;height:44px!important;flex-basis:44px!important}
 body.page-services .service-page-hero .page-hero-content{max-width:100%!important}
 body.page-services .service-mobile-promises{gap:8px;padding-bottom:18px}.page-services .service-mobile-promises>div{flex-direction:column!important;align-items:flex-start!important}
 body.page-services .service-mobile-promises b{width:34px;height:34px}.page-services .service-mobile-promises svg{width:21px;height:21px}
 body.page-services .service-mobile-promises strong{font-size:11px}.page-services .service-mobile-promises small{font-size:10px}
 body.page-services .service-mobile-filters button{min-height:44px;font-size:12px;padding:8px 10px}.page-services .service-mobile-filters svg{width:18px;height:18px}
 body.page-services .service-showcase{gap:10px!important}.page-services .service-showcase-card>img{height:100px!important}
 body.page-services .service-showcase-body{padding:25px 10px 8px!important}
 body.page-services .floating-service-icon{width:38px!important;height:38px!important;top:-22px!important;left:10px!important}.page-services .floating-service-icon svg{width:23px!important;height:23px!important}
 body.page-services .service-showcase-card h2{font-size:16px!important}.page-services .service-showcase-card p{font-size:12px!important}
 body.page-services .service-showcase-card .check-list li{font-size:11px!important;padding-left:20px!important}.page-services .service-showcase-card .check-list li:before{width:14px;height:14px;font-size:10px}
 body.page-services .service-showcase-actions a{font-size:12px!important;gap:6px!important}
 body.page-services .service-help-bar{padding:16px!important}.page-services .service-help-main{gap:10px!important}.page-services .service-help-main>span{width:40px!important;height:40px!important;flex-basis:40px!important}.page-services .service-help-main>span svg{width:27px!important;height:27px!important}
 body.page-services .service-help-main>div{display:block}.page-services .service-help-main strong{font-size:18px!important}.page-services .service-help-main small{font-size:13px!important}.page-services .service-help-main a.button{font-size:13px!important;margin-top:12px!important}
 body.page-services .mobile-dock{min-height:76px;padding:8px 12px calc(8px + env(safe-area-inset-bottom))!important}.page-services .mobile-dock a{min-height:55px!important}.page-services .mobile-dock small{font-size:12px!important}.page-services .mobile-dock a>span{font-size:25px!important}
}
.service-approved-logo{display:none}
@media(max-width:900px){
 body.page-services .brand .site-logo{display:none!important}
 body.page-services .brand .service-approved-logo{display:block!important;width:100%!important;max-height:78px!important}
 body.page-services .service-page-hero .page-hero-content{max-width:70%!important}
 body.page-services .service-mobile-title{font-size:clamp(28px,5.85vw,52px)!important;letter-spacing:-1.8px!important}
 body.page-services .service-showcase-body{padding-top:24px!important}
 body.page-services .service-showcase-card h2{font-size:22px!important;letter-spacing:-.8px!important}
 body.page-services .service-showcase-card .check-list li{line-height:1.2!important;min-height:0!important}
 body.page-services .service-showcase-actions a{min-height:35px!important}
}
@media(max-width:599px){body.page-services .service-page-hero .page-hero-content{max-width:100%!important}body.page-services .service-showcase-card h2{font-size:16px!important}}
.service-approved-picture{display:contents}
@media(max-width:900px){
 body.page-services .service-approved-picture{display:block;width:100%;height:132px;flex-shrink:0;overflow:hidden}
 body.page-services .service-approved-picture img{display:block!important;width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important}
 body.page-services .service-showcase-cctv .service-approved-picture img{object-position:center 32%}
 body.page-services .service-page-hero{background-image:linear-gradient(90deg,#03121ee8,#03121e35),url('../img/realisation-solaire-residentiel.webp')!important}
 body.page-services .mobile-dock .mobile-tab-indicator{background:linear-gradient(110deg,#ff7900,#ff970b)!important;border:1px solid #ffa027!important;box-shadow:0 6px 22px #ff810032!important}
 body.page-services .mobile-dock a.is-active{color:#fff!important}
}
@media(max-width:599px){body.page-services .service-approved-picture{height:100px}}
/* Phone overrides must outrank the tablet typography rules. */
@media(max-width:599px){
 body.page-services .service-showcase-card p{font-size:12px!important;line-height:1.35!important;margin-bottom:12px!important}
 body.page-services .service-showcase-card .check-list li{font-size:11px!important;line-height:1.35!important;padding-left:20px!important}
 body.page-services .service-showcase-card .check-list li:before{width:14px!important;height:14px!important;font-size:10px!important}
 body.page-services .service-showcase-card .check-list{gap:7px!important}
 body.page-services .service-showcase-actions a{font-size:12px!important;min-height:44px!important;gap:8px!important}
 body.page-services .service-showcase-body{padding:24px 10px 6px!important}
 body.page-services .service-mobile-promises strong{font-size:11px!important}
 body.page-services .service-mobile-promises small{font-size:10px!important}
 body.page-services .service-mobile-promises b{width:34px!important;height:34px!important}
 body.page-services .service-mobile-promises svg{width:21px!important;height:21px!important}
 body.page-services .service-mobile-filters button{font-size:12px!important;min-height:44px!important;padding:8px 10px!important}
 body.page-services .service-mobile-filters svg{width:18px!important;height:18px!important}
 body.page-services .service-help-main>div{display:block!important}
 body.page-services .service-help-main strong{font-size:18px!important}
 body.page-services .service-help-main small{font-size:13px!important}
 body.page-services .service-help-main a.button{font-size:13px!important;margin-top:12px!important;padding:10px 12px!important;min-height:44px}
 body.page-services .mobile-dock small{font-size:12px!important}
}
/* Approved phone proportions: compact hero and two equally sized cards. */
@media(max-width:599px){
 body.page-services .service-page-hero{padding:16px 5% 0!important}
 body.page-services .service-page-hero .page-hero-content{max-width:68%!important}
 body.page-services .service-mobile-title{font-size:clamp(24px,6vw,34px)!important;letter-spacing:-1px!important;margin:10px 0 14px!important}
 body.page-services .service-approved-description{font-size:12px!important;line-height:1.4!important}
 body.page-services .service-mobile-signature{display:block!important;position:absolute;top:28px;right:12px;width:29%;font:italic 14px/1.35 'Brush Script MT','Segoe Script',cursive;text-align:center;color:white;transform:rotate(-9deg)}
 body.page-services .service-mobile-signature:after{width:80%;height:7px;border-top-width:2px}
 body.page-services .service-mobile-promises{margin-top:18px!important;gap:8px!important;padding-bottom:16px!important}
 body.page-services .service-mobile-promises>div{flex-direction:row!important;align-items:center!important;gap:5px!important}
 body.page-services .service-mobile-promises b{width:28px!important;height:28px!important}
 body.page-services .service-mobile-promises strong{font-size:9px!important}
 body.page-services .service-mobile-promises small{font-size:9px!important}
 body.page-services .service-mobile-filters{gap:4px!important;padding:10px 3% 14px!important}
 body.page-services .service-mobile-filters button{font-size:10px!important;gap:4px!important;padding:6px 8px!important;min-height:44px!important}
 body.page-services .service-mobile-filters svg{width:15px!important;height:15px!important}
 body.page-services .service-showcase-body{padding:23px 10px 6px!important}
 body.page-services .service-showcase-card h2{font-size:15px!important;letter-spacing:-.5px!important}
 body.page-services .service-showcase-card .check-list{gap:5px!important}
 body.page-services .service-approved-picture{height:85px!important}
 body.page-services .service-showcase-actions{margin-top:auto!important}
 body.page-services .service-help-main{gap:10px!important}
}
@media(max-width:900px){
 html body.page-services[class] nav.mobile-dock .mobile-tab-indicator{background:linear-gradient(110deg,#ff7900,#ff970b)!important;border-color:#ff9b20!important;box-shadow:0 5px 20px #ff850030!important}
 html body.page-services[class] nav.mobile-dock a.is-active{color:#fff!important}
}
.service-filter-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:900px){
 body.page-services .service-showcase-actions a:focus-visible,body.page-services .service-help-main a:focus-visible{outline:2px solid #087dff;outline-offset:3px;border-radius:4px}
 body.page-services .service-mobile-filters{scroll-padding-inline:12px}
 body.page-services .service-showcase-card{scroll-margin-top:20px}
}
@media(prefers-reduced-motion:reduce){body.page-services .service-mobile-filters{scroll-behavior:auto!important}}
/* Service detail pages share the same mobile visual language. */
@media(max-width:900px){
 body.page-services:has(.service-detail-grid){background:#f4f7fb}
 body.page-services .detail-hero{position:relative;min-height:0!important;height:auto!important;padding:24px 20px 30px!important;overflow:hidden;background:#071827}
 body.page-services .detail-hero>img{position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}
 body.page-services .detail-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#031422f5,#031422a8),linear-gradient(0deg,#031422,transparent)!important}
 body.page-services .detail-hero-content{position:relative;z-index:1;width:100%!important;padding:0!important;margin:0!important}
 body.page-services .detail-hero .breadcrumb{display:flex;flex-wrap:wrap;gap:7px;font-size:12px;line-height:1.5;margin-bottom:24px;color:#bdccdb}
 body.page-services .detail-hero .breadcrumb a{color:#bdccdb;min-height:30px;display:inline-flex;align-items:center}
 body.page-services .detail-hero h1{font-size:32px!important;line-height:1.1!important;color:#fff;letter-spacing:-1px;margin:12px 0}
 body.page-services .detail-hero p{font-size:15px!important;line-height:1.55;color:#d7e1eb}
 body.page-services .detail-hero .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px}
 body.page-services .detail-hero .button{min-height:48px!important;padding:12px!important;justify-content:center;font-size:14px;text-transform:none}
 body.page-services .service-detail-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;padding:18px 14px!important}
 body.page-services .service-detail-grid>div{background:#fff;border:1px solid #dce5ee;border-radius:14px;padding:20px!important;min-width:0;box-shadow:0 4px 15px #142c4610}
 body.page-services .service-detail-grid h2{font-size:21px!important;line-height:1.2;margin:0 0 16px;color:#071827}
 body.page-services .service-detail-grid .check-list{display:grid;gap:12px;margin:0;padding:0}
 body.page-services .service-detail-grid .check-list li{font-size:14px!important;line-height:1.5;color:#40546a}
 body.page-services:has(.service-detail-grid) .how-it-works-section,body.page-services:has(.service-detail-grid) .faq-section{padding:22px 14px!important}
 body.page-services:has(.service-detail-grid) .center-heading h2{font-size:25px!important;line-height:1.2}
 body.page-services:has(.service-detail-grid) .how-it-works-grid{display:grid;grid-template-columns:1fr!important;gap:12px}
 body.page-services:has(.service-detail-grid) .how-it-works-grid li{padding:18px!important;border-radius:12px}
 body.page-services:has(.service-detail-grid) .faq-item summary{min-height:48px;padding:16px!important;font-size:14px;line-height:1.4}
 body.page-services:has(.service-detail-grid) .faq-item p{padding:0 16px 16px!important;font-size:14px;line-height:1.55}
 body.page-services:has(.service-detail-grid) .band-dark{margin:14px!important;padding:22px!important;display:grid;gap:16px;border-radius:16px;background:linear-gradient(130deg,#083c7e,#031725)}
 body.page-services:has(.service-detail-grid) .band-dark h2{font-size:24px;line-height:1.2}
 body.page-services:has(.service-detail-grid) .home-final-cta-actions{display:grid;gap:10px}
 body.page-services:has(.service-detail-grid) .band-dark .button{min-height:48px;white-space:normal;text-transform:none}
}
.service-detail-shortcuts{display:flex;justify-content:center;gap:12px;padding:16px;flex-wrap:wrap}
.service-detail-shortcuts a{display:flex;align-items:center;min-height:44px;padding:9px 15px;border:1px solid #d5e0eb;border-radius:24px;background:#fff;color:#294762;text-decoration:none;font-size:13px;font-weight:600}
#service-prestations,#service-method,#service-questions{scroll-margin-top:100px}
@media(max-width:900px){
 body.page-services .detail-hero-cctv{padding-top:20px!important;padding-bottom:26px!important}
 body.page-services .detail-hero-cctv>img{object-position:65% 30%!important}
 body.page-services .detail-hero-cctv .detail-hero-shade{background:linear-gradient(90deg,#031422f5,#03142280),linear-gradient(0deg,#031422,transparent)!important}
 body.page-services .detail-hero-cctv .eyebrow{color:#55b8ff;letter-spacing:1.5px;font-size:11px}
 body.page-services .detail-hero-cctv h1{font-size:30px!important;max-width:300px}
 body.page-services .detail-hero-cctv .hero-actions a:last-child{order:-1;background:linear-gradient(110deg,#ff810a,#ff9a18)!important;color:#fff!important;border-color:#ff9500!important;font-weight:700}
 body.page-services .detail-hero-cctv .hero-actions a:first-child{background:#0d263abf!important;border:1px solid #5a7992!important;box-shadow:none!important}
 body.page-services .service-detail-shortcuts{flex-wrap:nowrap;justify-content:flex-start;overflow:auto;padding:14px;gap:8px;overscroll-behavior-x:contain}
 body.page-services .service-detail-shortcuts a{white-space:nowrap;flex-shrink:0;font-size:12px;padding:8px 12px}
 body.page-services:has(.detail-hero-cctv) .service-detail-grid{padding-top:0!important}
 body.page-services:has(.detail-hero-cctv) .service-detail-grid>div{border-top:3px solid #168bdf}
 body.page-services:has(.detail-hero-cctv) .service-detail-grid .check-list li{padding-top:5px;padding-bottom:5px}
 body.page-services:has(.detail-hero-cctv) .faq-item{background:white;border:1px solid #dce5ee;border-radius:12px;overflow:hidden;margin-bottom:10px}
 body.page-services:has(.detail-hero-cctv) .faq-item[open]{border-color:#73b4e8;box-shadow:0 4px 12px #0c70be0d}
}
/* Camera service visual identity. */
body.page-services .detail-hero-cctv{background:#061a2b;overflow:hidden}
.detail-hero-cctv .cctv-service-tags{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0}
.cctv-service-tags>span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #5fabc744;border-radius:24px;background:#0a2e428c;color:#ceeaff;font-size:12px}
.cctv-service-tags svg{width:17px;height:17px;color:#62c7ff}
body:has(.detail-hero-cctv) .service-detail-grid h2{display:flex;align-items:center;gap:10px}
body:has(.detail-hero-cctv) .service-detail-grid h2 svg{width:28px;height:28px;flex-shrink:0;color:#087edd}
body:has(.detail-hero-cctv) .service-detail-grid>div{border-radius:16px;box-shadow:0 6px 22px #1336530b}
@media(max-width:900px){
 html body.page-services .detail-hero-cctv{padding:22px 18px 28px!important;border-radius:0 0 24px 24px}
 html body.page-services .detail-hero-cctv>img{height:225px!important;object-position:center 20%!important;opacity:.8;mask-image:linear-gradient(#000 45%,transparent)}
 html body.page-services .detail-hero-cctv .detail-hero-shade{background:linear-gradient(90deg,#031422e8,#03142260 80%),linear-gradient(0deg,#061a2b 20%,transparent 75%)!important}
 html body.page-services .detail-hero-cctv h1{font-size:34px!important;line-height:1.06!important;letter-spacing:-1.2px!important;max-width:330px;margin:16px 0!important}
 html body.page-services .detail-hero-cctv .breadcrumb{margin-bottom:25px!important;font-size:11px}
 html body.page-services .detail-hero-cctv .eyebrow{display:inline-flex;padding:6px 10px;border:1px solid #55b8ff35;border-radius:6px;background:#0b344d80}
 html body.page-services .detail-hero-cctv .hero-actions{gap:10px;margin-top:20px}
 html body.page-services .detail-hero-cctv .hero-actions .button{border-radius:11px!important;min-height:50px!important}
 html body.page-services:has(.detail-hero-cctv) .service-detail-shortcuts{padding-top:18px;padding-bottom:18px}
 html body.page-services:has(.detail-hero-cctv) .service-detail-shortcuts a{box-shadow:0 3px 9px #18355008;border-color:#dbe6ef}
 html body.page-services:has(.detail-hero-cctv) .service-detail-grid>div{padding:20px!important;border-top:0;border:1px solid #dae5f0}
 html body.page-services:has(.detail-hero-cctv) .service-detail-grid h2{font-size:20px!important;padding-bottom:14px;border-bottom:1px solid #edf1f7}
 html body.page-services:has(.detail-hero-cctv) .how-it-works-grid li{position:relative;padding-left:66px!important;min-height:100px;background:white;border:1px solid #dce7ef;box-shadow:none}
 html body.page-services:has(.detail-hero-cctv) .how-it-works-index{position:absolute;left:16px;top:19px;width:34px;height:34px;font-size:15px;display:grid;place-items:center;border-radius:10px;background:#e6f3ff;color:#0879ce;margin:0}
 html body.page-services:has(.detail-hero-cctv) .how-it-works-grid h3{font-size:17px;margin:0 0 6px}
 html body.page-services:has(.detail-hero-cctv) .how-it-works-grid p{font-size:14px;line-height:1.5;margin:0;color:#65788d}
}
/* Related installations: clear image, project context and real action links. */
body.page-services .service-related-projects{padding:36px 24px;background:#edf4f9}
body.page-services .service-related-projects .center-heading{max-width:680px;margin:0 auto 24px;text-align:center}
body.page-services .service-related-projects .center-heading p{color:#657a90;font-size:15px;line-height:1.5;margin-top:10px}
body.page-services .service-related-projects .home-portfolio-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;gap:20px!important}
body.page-services .service-related-projects .portfolio-card{display:flex!important;flex-direction:column;min-width:0;background:#fff!important;border:1px solid #dbe6ef;border-radius:16px;overflow:hidden;box-shadow:0 5px 18px #1439570a}
body.page-services .service-related-projects .portfolio-card-link{display:block;position:relative;height:200px;overflow:hidden}
body.page-services .service-related-projects .portfolio-card-link img{display:block;width:100%;height:100%;object-fit:cover}
body.page-services .service-related-projects .project-badge{position:absolute;bottom:12px;left:12px;top:auto;max-width:calc(100% - 24px);padding:6px 10px;border-radius:7px;background:#062139db;color:#e7f4ff;font-size:11px;line-height:1.3}
body.page-services .service-related-projects .portfolio-card-body{display:flex;flex-direction:column;flex:1;gap:12px;padding:20px!important}
body.page-services .service-related-projects .portfolio-card-body h2{font-size:20px!important;line-height:1.25;margin:0!important}
body.page-services .service-related-projects .portfolio-card-body h2 a{color:#112c43;text-decoration:none}
body.page-services .service-related-projects .portfolio-card-body p{color:#5b7187;font-size:14px;line-height:1.55;margin:0}
body.page-services .service-related-projects .project-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px;color:#6b8195;padding:10px 0;border-top:1px solid #edf2f6}
body.page-services .service-related-projects .portfolio-card-action{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:10px 12px;margin-top:auto;border-radius:8px;background:#edf7ff;color:#0873c2;text-decoration:none;font-size:14px;font-weight:650}
body.page-services .related-projects-all{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;width:fit-content;margin:24px auto 0;padding:10px 20px;border:1px solid #bad2e4;border-radius:9px;color:#145c91;text-decoration:none;font-weight:600;font-size:14px;background:#fff}
@media(max-width:700px){body.page-services .service-related-projects{padding:26px 14px!important}body.page-services .service-related-projects .home-portfolio-grid{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}body.page-services .service-related-projects .portfolio-card-link{height:185px!important}body.page-services .service-related-projects .center-heading h2{font-size:25px!important;line-height:1.2}body.page-services .related-projects-all{width:100%;box-sizing:border-box}}
