/* Motion, security and contact form */
.scroll-progress{position:fixed;z-index:999;inset:0 0 auto;height:3px;pointer-events:none}.scroll-progress i{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--orange),var(--mint));transform:scaleX(0);transform-origin:left;box-shadow:0 0 14px rgba(119,210,181,.55)}
.brand{position:relative;padding:5px 9px;border-radius:10px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(4,36,41,.12)}.brand-mark{width:184px;height:43px;border-radius:0;background:transparent url('/assets/marque/logo-communes-it.png') center/contain no-repeat;color:transparent;font-size:0}.brand-mark span{display:none}.brand>span:last-child{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-header.scrolled .brand{padding:2px 0;background:transparent;box-shadow:none}.site-footer .brand{width:max-content}
.product-shot{align-self:center;margin:28px;overflow:hidden;border:1px solid rgba(15,59,62,.16);border-radius:15px;background:#fff;box-shadow:0 22px 60px rgba(8,45,48,.15)}.product-old .product-shot{margin-right:28px;margin-left:0}.product-gmao .product-shot{margin-right:0;margin-left:28px;border-color:rgba(255,255,255,.17);background:#071124}.product-stock .product-shot{margin-right:0;margin-left:28px}.shot-chrome{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;height:43px;padding:0 13px;border-bottom:1px solid #e4e9e7;background:#f8faf9;color:var(--ink)}.shot-chrome>span{display:flex;gap:4px}.shot-chrome>span i{width:7px;height:7px;border-radius:50%;background:#d2dad7}.shot-chrome>span i:first-child{background:var(--orange)}.shot-chrome>span i:nth-child(2){background:#e6bd55}.shot-chrome>span i:nth-child(3){background:#69ba91}.shot-chrome small{text-align:center;color:#788c89;font-size:7px;font-weight:700;letter-spacing:.06em}.shot-chrome b{color:var(--teal);font-size:7px}.product-shot>img,.custom-shot>img{display:block;width:100%;height:auto}.product-shot figcaption{display:flex;align-items:center;gap:7px;margin:0;padding:10px 13px;background:#fff;color:#647977;font-size:8px;font-weight:700}.product-shot figcaption i{width:6px;height:6px;border-radius:50%;background:var(--teal)}.shot-gmao figcaption,.shot-gmao .shot-chrome{border-color:#23304a;background:#101a2f;color:#d9e5fb}.shot-gmao .shot-chrome small,.shot-gmao figcaption{color:#9fb3d4}.shot-gmao .shot-chrome b{color:#44d5f2}.shot-gmao figcaption i{background:#44d5f2}.custom-shot{padding:34px 30px}.custom-shot>.shot-chrome{border:1px solid #dce5e1;border-bottom:0;border-radius:15px 15px 0 0}.custom-shot>img{border:1px solid #dce5e1;border-radius:0 0 15px 15px;box-shadow:0 30px 75px rgba(12,55,54,.14)}.custom-caption{display:grid;gap:2px;margin:12px 0 0;padding:13px 15px;border-left:3px solid var(--orange);background:#fff;box-shadow:0 10px 30px rgba(12,55,54,.08)}.custom-caption strong{font:700 11px var(--font-title)}.custom-caption span{color:#6d8185;font-size:8px}
.hero-grid{animation:grid-drift 24s linear infinite}.orb-one{animation:orb-float 10s ease-in-out infinite}.orb-two{animation:orb-float 13s ease-in-out -3s infinite reverse}.tag-top{animation:tag-float 5s ease-in-out infinite}.tag-bottom{animation:tag-float 6s ease-in-out -2s infinite}.bars i{position:relative;overflow:hidden;transform-origin:bottom;animation:bar-rise 1.1s cubic-bezier(.2,.8,.2,1) both}.bars i:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.42) 50%,transparent 80%);transform:translateX(-120%);animation:bar-shine 4.5s 1.4s ease-in-out infinite}.pin:after{content:"";position:absolute;inset:-7px;border:1px solid var(--orange);border-radius:50%;animation:pin-pulse 2.2s ease-out infinite}.status{animation:status-pulse 2.8s ease-in-out infinite}.service-icon{transition:transform .3s ease,background .3s ease}.expertise-grid article:hover .service-icon{transform:translateY(-4px) rotate(-4deg);background:rgba(119,210,181,.15)}.expertise-grid article:before{content:"";position:absolute;inset:0;opacity:0;pointer-events:none;background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),rgba(119,210,181,.13),transparent 55%);transition:opacity .3s}.expertise-grid article:hover:before{opacity:1}.expertise-grid article>*{position:relative}.button span,.text-link span,.nav-cta span{transition:transform .25s}.button:hover span,.text-link:hover span,.nav-cta:hover span{transform:translate(3px,-2px)}[data-tilt]{--tilt-x:0deg;--tilt-y:0deg;transform-style:preserve-3d;transition:transform .18s ease-out,box-shadow .3s ease}[data-tilt].visible,[data-tilt]:not(.reveal){transform:perspective(1100px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateZ(0)}.product:hover .product-visual{box-shadow:0 28px 70px rgba(12,55,55,.16)}
.security-section{position:relative;overflow:hidden;background:#e8ede8}.security-grid-bg{position:absolute;inset:0;opacity:.36;background:linear-gradient(rgba(16,45,51,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(16,45,51,.08) 1px,transparent 1px);background-size:65px 65px;mask-image:linear-gradient(90deg,#000,transparent)}.security-layout{position:relative;display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:center}.security-copy h2{margin:0;font-size:clamp(39px,4.4vw,59px)}.security-copy h2 em{display:block;color:var(--teal)}.security-copy>p:not(.eyebrow){margin:23px 0 27px;color:#5d7377;font-size:16px}.security-services{margin-bottom:30px;border-top:1px solid #ccd6d1}.security-services article{display:grid;grid-template-columns:39px 1fr;gap:15px;padding:17px 0;border-bottom:1px solid #ccd6d1}.security-services article>i{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#fff;color:var(--teal);font-size:8px;font-style:normal;font-weight:800}.security-services h3{margin:0 0 4px;font-size:15px}.security-services p{margin:0;color:#6b7e81;font-size:11px}.security-visual{overflow:hidden;border:1px solid rgba(255,255,255,.6);border-radius:18px;background:#082f35;box-shadow:0 35px 80px rgba(7,44,48,.25)}.security-screen-head{height:57px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;color:#d8e7e5;font-size:9px}.security-screen-head span{font-weight:700}.security-screen-head span i{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px rgba(119,210,181,.1)}.security-screen-head small{color:#709190}.camera-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:0 4px}.camera-view{position:relative;min-height:181px;overflow:hidden;background-color:#244c4d;background-image:linear-gradient(145deg,rgba(255,255,255,.08),transparent),repeating-linear-gradient(165deg,transparent 0 38px,rgba(255,255,255,.06) 39px 40px)}.camera-view:before{content:"";position:absolute;left:16%;right:15%;bottom:0;height:60%;border:2px solid rgba(183,222,214,.18);border-bottom:0;transform:perspective(250px) rotateX(56deg);transform-origin:bottom}.cam-two{background-color:#2a4648}.cam-three{background-color:#183f42}.cam-four{background-color:#304b4a}.camera-view span,.camera-view b,.camera-view i{position:absolute;z-index:2;font-size:6px;font-style:normal}.camera-view span{left:10px;top:9px;color:#c7dcda;letter-spacing:.1em}.camera-view i{right:10px;top:9px;color:#ff9270}.camera-view i:before{content:"";display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:#ff7250;animation:status-pulse 1.6s infinite}.camera-view b{right:10px;bottom:8px;color:#7fa2a0}.security-alert{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin:14px;padding:12px 13px;border:1px solid rgba(119,210,181,.18);border-radius:10px;background:rgba(119,210,181,.08);color:#fff}.security-alert>i{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--mint);color:var(--deep);font-style:normal}.security-alert b,.security-alert small{display:block}.security-alert b{font-size:9px}.security-alert small{color:#7d9e9c;font-size:7px}.security-alert em{color:var(--mint);font-size:7px;font-style:normal;font-weight:800}
.security-photo-showcase{display:grid;gap:9px;padding:9px;background:#f7f8f6}.security-photo-showcase figure{position:relative;margin:0;overflow:hidden;border-radius:12px;background:#fff}.security-photo-showcase img{display:block;width:100%;height:100%;object-fit:cover}.security-media-main img{aspect-ratio:1.9/1}.security-media-main figcaption{position:absolute;right:12px;bottom:12px;left:12px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 13px;border:1px solid rgba(255,255,255,.38);border-radius:9px;background:rgba(5,45,51,.86);backdrop-filter:blur(12px);color:#fff}.security-media-main figcaption span{font-size:9px;font-weight:800}.security-media-main figcaption span i{display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(119,210,181,.16)}.security-media-main figcaption small{color:#b7d4d0;font-size:7px}.security-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.security-media-grid figure{height:235px}.security-media-grid img{object-position:center 34%}.security-media-grid figcaption{position:absolute;right:9px;bottom:9px;padding:7px 9px;border-radius:7px;background:#fff;color:var(--deep);font-size:7px;font-weight:800;box-shadow:0 5px 18px rgba(4,36,41,.12)}
.custom-section{overflow:hidden;background:#fafbf8}.custom-layout{display:grid;grid-template-columns:1.12fr .88fr;gap:80px;align-items:center}.custom-copy h2{margin:0;font-size:clamp(39px,4.2vw,57px)}.custom-copy h2 em{display:block;color:var(--teal)}.custom-lead{margin:22px 0 24px;color:#5e7478;font-size:16px}.custom-points{margin-bottom:22px;border-top:1px solid var(--line)}.custom-points article{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}.custom-points article>i{color:var(--orange);font-size:9px;font-style:normal;font-weight:800}.custom-points h3{margin:0 0 3px;font-size:14px}.custom-points p{margin:0;color:#718488;font-size:10px}.custom-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:27px}.custom-tags span{padding:6px 9px;border:1px solid #dbe3df;border-radius:16px;background:#fff;color:#577074;font-size:8px;font-weight:700}.custom-visual{position:relative;padding:34px 30px}.custom-window-head{height:49px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:0 15px;border:1px solid #dce5e1;border-bottom:0;border-radius:15px 15px 0 0;background:#fff}.custom-window-head>span{display:flex;gap:4px}.custom-window-head>span i{width:7px;height:7px;border-radius:50%;background:#d7dfdc}.custom-window-head>span i:first-child{background:#ef7b45}.custom-window-head small{color:#98a6a3;font-size:7px;text-align:center}.custom-window-head>b{color:#278267;font-size:7px}.custom-window-body{display:grid;grid-template-columns:43px 1fr;min-height:420px;overflow:hidden;border:1px solid #dce5e1;border-radius:0 0 15px 15px;background:#f1f5f2;box-shadow:0 30px 75px rgba(12,55,54,.14)}.custom-window-body aside{display:flex;align-items:center;flex-direction:column;gap:19px;padding-top:17px;background:var(--deep)}.custom-window-body aside strong{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:var(--mint);color:var(--deep);font-size:9px}.custom-window-body aside i{width:11px;height:11px;border:1px solid #779696;border-radius:3px}.custom-window-body aside i.active{border-color:var(--mint);background:var(--mint);box-shadow:0 0 0 5px rgba(119,210,181,.1)}.custom-dashboard{padding:22px}.custom-dashboard>header{display:flex;align-items:center;justify-content:space-between}.custom-dashboard header small,.custom-dashboard header b{display:block}.custom-dashboard header small{color:#889a96;font-size:6px}.custom-dashboard header b{font:700 13px var(--font-title)}.custom-dashboard header button{border:0;border-radius:6px;background:var(--teal);color:#fff;padding:8px 10px;font-size:7px}.custom-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:19px 0}.custom-kpis article{padding:13px;border:1px solid #e0e7e3;border-radius:9px;background:#fff}.custom-kpis span,.custom-kpis small{display:block;color:#849893;font-size:6px}.custom-kpis b{display:block;font:700 20px var(--font-title)}.custom-kpis article:last-child small{color:var(--orange)}.custom-workflow{display:flex;align-items:center;justify-content:space-between;padding:13px;border:1px solid #e0e7e3;border-radius:9px;background:#fff;color:#506a68;font-size:6px;font-weight:700}.custom-workflow i{width:12px;height:1px;background:#b7c7c2}.custom-rows{margin-top:10px;border:1px solid #e0e7e3;border-radius:9px;background:#fff}.custom-rows>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:11px;border-bottom:1px solid #eef1ef}.custom-rows>div:last-child{border:0}.custom-rows>div>i{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e2f2ec;color:#26715e;font-size:6px;font-style:normal;font-weight:800}.custom-rows b,.custom-rows small{display:block}.custom-rows b{font-size:7px}.custom-rows small{color:#98a6a3;font-size:6px}.custom-rows em{padding:4px 6px;border-radius:8px;background:#e3f2eb;color:#277158;font-size:6px;font-style:normal}.custom-rows>div:last-child em{background:#fff0df;color:#9a6427}.custom-note{position:absolute;padding:8px 11px;border:1px solid #dce5e1;border-radius:8px;background:#fff;color:var(--teal);font-size:7px;font-weight:800;box-shadow:0 8px 20px rgba(17,57,53,.09);animation:tag-float 5s ease-in-out infinite}.note-one{left:0;top:16%}.note-two{right:0;top:39%;animation-delay:-1.5s}.note-three{left:5%;bottom:6%;animation-delay:-3s}
.contact{padding:120px 0}.contact-layout{position:relative;display:grid;grid-template-columns:.86fr 1.14fr;gap:80px;align-items:center}.contact-inner{text-align:left}.contact-inner .eyebrow{justify-content:flex-start}.contact-inner h2{font-size:clamp(42px,4.7vw,66px)}.contact-inner h2 em{display:block}.contact-inner>p:not(.eyebrow){margin:24px 0 35px;color:#d7f1eb;font-size:16px}.contact-details{display:grid;gap:1px;border-top:1px solid rgba(255,255,255,.2)}.contact-detail{display:grid;grid-template-columns:35px 1fr;gap:14px;align-items:center;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.2);transition:padding .25s}.contact-detail[href]:hover{padding-left:8px}.contact-detail>i{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.25);border-radius:50%;color:#c8f5e7;font-size:8px;font-style:normal;font-weight:800}.contact-detail small,.contact-detail b{display:block}.contact-detail small{color:#a9d9d0;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.contact-detail b{font:600 12px var(--font-title)}.contact-form{position:relative;padding:35px;border:1px solid rgba(255,255,255,.34);border-radius:20px;background:rgba(4,47,53,.74);backdrop-filter:blur(18px);box-shadow:0 30px 80px rgba(4,38,41,.25)}.contact-form:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 35%)}.form-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:27px}.form-head small{color:var(--mint);font-size:8px;font-weight:800;letter-spacing:.16em}.form-head h3{margin:5px 0 0;font-size:22px}.form-head>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--mint);color:var(--deep);font-size:17px}.form-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid label{display:grid;gap:7px}.form-grid label>span{color:#b8d2cf;font-size:8px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.form-wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid rgba(255,255,255,.15);border-radius:9px;outline:0;background:rgba(255,255,255,.07);color:#fff;padding:13px 14px;font:12px var(--font-body);transition:.2s}.form-grid select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#9fc4bf 50%),linear-gradient(135deg,#9fc4bf 50%,transparent 50%);background-position:calc(100% - 17px) 18px,calc(100% - 12px) 18px;background-size:5px 5px;background-repeat:no-repeat}.form-grid option{background:#08363c;color:#fff}.form-grid textarea{min-height:115px;resize:vertical}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#779b99}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--mint);background:rgba(255,255,255,.1);box-shadow:0 0 0 3px rgba(119,210,181,.11)}.form-grid .invalid{border-color:#ff9a78}.form-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-footer{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.form-footer p{max-width:245px;margin:0;color:#89aaa7;font-size:8px;line-height:1.5}.form-footer p a{color:#c9eee5;text-decoration:underline}.form-submit{width:auto;border:0;cursor:pointer;background:var(--mint);color:var(--deep)}.form-submit i{font-size:16px;font-style:normal}.form-submit:disabled{cursor:wait;opacity:.72}.form-submit.loading i{width:15px;height:15px;border:2px solid rgba(6,47,53,.25);border-top-color:var(--deep);border-radius:50%;font-size:0;animation:spin .7s linear infinite}.form-status{position:relative;min-height:0;margin:0;color:#d4f5eb;font-size:10px;font-weight:700;transition:.25s}.form-status:not(:empty){min-height:20px;margin-top:15px;padding:9px 11px;border-radius:7px;background:rgba(119,210,181,.12)}.form-status.error{color:#ffd2c4;background:rgba(239,123,69,.14)}.contact-form.sent{animation:form-success .55s ease}
@keyframes grid-drift{to{background-position:64px 64px,64px 64px}}@keyframes orb-float{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(20px,-25px,0) scale(1.08)}}@keyframes tag-float{0%,100%{translate:0 0}50%{translate:0 -8px}}@keyframes bar-rise{from{transform:scaleY(.05);opacity:.2}to{transform:scaleY(1);opacity:1}}@keyframes bar-shine{0%,45%{transform:translateX(-120%)}70%,100%{transform:translateX(150%)}}@keyframes pin-pulse{0%{opacity:.8;transform:scale(.7)}75%,100%{opacity:0;transform:scale(1.65)}}@keyframes status-pulse{0%,100%{box-shadow:0 0 0 0 currentColor}50%{box-shadow:0 0 0 4px transparent}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes form-success{50%{transform:translateY(-4px)}}
@media(max-width:1000px){.custom-layout,.security-layout{grid-template-columns:1fr;gap:50px}.custom-visual{max-width:720px;width:100%;margin:auto;order:2}.security-visual{max-width:720px;width:100%;margin:auto}.contact-layout{grid-template-columns:1fr;gap:50px}.contact-inner{max-width:700px}.contact-inner h2 em{display:inline}.contact-details{grid-template-columns:repeat(3,1fr);border-top:0}.contact-detail{align-content:start;border-top:1px solid rgba(255,255,255,.2);padding-right:12px}}
@media(max-width:600px){.brand-mark{width:150px;height:35px}.product-shot,.product-old .product-shot,.product-gmao .product-shot,.product-stock .product-shot{margin:12px}.shot-chrome small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shot-chrome b{display:none}.custom-visual{padding:20px 0}.custom-window-body{min-height:355px}.custom-dashboard{padding:13px}.custom-workflow{display:none}.custom-note{display:none}.contact{padding:84px 0}.contact-layout{gap:38px}.contact-details{grid-template-columns:1fr}.contact-detail{border-top:0}.contact-form{padding:27px 19px;border-radius:15px}.form-grid{grid-template-columns:1fr}.form-wide{grid-column:auto}.form-footer{align-items:stretch;flex-direction:column}.form-footer p{max-width:none}.form-submit{width:100%}.form-head h3{font-size:19px}.camera-view{min-height:130px}[data-tilt].visible,[data-tilt]:not(.reveal){transform:none!important}}
@media(prefers-reduced-motion:reduce){.hero-grid,.orb,.float-tag,.bars i,.bars i:after,.pin:after,.status,.camera-view i:before{animation:none!important}[data-tilt].visible,[data-tilt]:not(.reveal){transform:none!important}}
@media(max-width:600px){.security-photo-showcase{padding:6px;gap:6px}.security-media-grid{gap:6px}.security-media-grid figure{height:170px}.security-media-main figcaption{right:7px;bottom:7px;left:7px}.security-media-main figcaption small{display:none}}
