:root {
  --itsm-navy: #052f5f;
  --itsm-navy-2: #073b70;
  --itsm-blue: #073b70;
  --itsm-blue-2: #0e5a98;
  --itsm-cyan: #34d7ef;
  --itsm-orange: #b00020;
  --itsm-red: #b00020;
  --itsm-green: #18b87a;
  --itsm-ink: #101827;
  --itsm-muted: #657186;
  --itsm-line: #e3e8f0;
  --itsm-soft: #f4f7fb;
  --itsm-white: #fff;
  --itsm-shadow: 0 18px 50px rgba(7, 26, 53, .09);
  --itsm-radius: 20px;
  --itsm-container: 1280px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--itsm-ink);
  background: var(--itsm-white);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
body.no-scroll { overflow: hidden; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.itsm-container { width: min(var(--itsm-container), calc(100% - 40px)); margin-inline: auto; }
.screen-reader-text {
  width: 1px; height: 1px; padding: 0; position: absolute; overflow: hidden;
  clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.screen-reader-text:focus {
  width: auto; height: auto; left: 8px; top: 8px; z-index: 99999; display: block;
  padding: 12px 16px; clip: auto; color: var(--itsm-navy); background: #fff;
}
[hidden] { display: none !important; }

.announcement-bar {
  min-height: 38px;
  padding: 8px max(20px, calc((100vw - var(--itsm-container)) / 2));
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
  color: #d8e7ff;
  background: #061326;
  font-size: 12px;
  letter-spacing: .02em;
}
.announcement-bar p, .announcement-bar a { margin: 0; }
.announcement-bar p { display: flex; align-items: center; gap: 8px; }
.announcement-bar p span { width: 6px; height: 6px; border-radius: 50%; background: #38e59f; }
.announcement-bar a { font-weight: 700; color: #fff; }

.site-header {
  min-height: 84px;
  margin-bottom: 0 !important;
  padding: 0 !important;
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,.96);
  border-bottom: 1px solid rgba(220,226,235,.85);
  backdrop-filter: blur(18px);
}
.admin-bar .site-header { top: 32px; }
.header-inner { min-height: 84px; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; }
.brand-mark { width: 38px; height: 42px; position: relative; display: inline-block; }
.brand-mark i { width: 11px; position: absolute; display: block; border-radius: 2px; transform: skewY(-27deg); background: var(--itsm-blue); }
.brand-mark i:nth-child(1) { height: 24px; left: 2px; bottom: 3px; }
.brand-mark i:nth-child(2) { height: 34px; left: 14px; bottom: 3px; background: #0e3c86; }
.brand-mark i:nth-child(3) { height: 24px; left: 26px; top: 2px; background: var(--itsm-orange); }
.brand-copy { display: flex; flex-direction: column; }
.brand-copy strong { color: #0a2448; font-size: 18px; letter-spacing: -.5px; line-height: 1.1; }
.brand-copy em { color: var(--itsm-orange); font-style: normal; }
.brand-copy small { margin-top: 4px; color: #64748b; font-size: 8px; font-weight: 700; letter-spacing: .045em; text-transform: uppercase; }
.custom-logo-wrap, .custom-logo-link { display: flex; align-items: center; }
.custom-logo { width: auto; max-width: 230px; max-height: 54px; }
.fallback-logo { width: 185px; height: 64px; object-fit: contain; }
.primary-navigation { display: block !important; margin-left: auto; margin-right: 42px; }
.primary-menu { margin: 0; padding: 0; display: flex; align-items: center; gap: 34px; list-style: none; }
.primary-menu li { position: relative; }
.primary-menu a { position: relative; display: block; padding: 31px 0; color: #3c4657; font-size: 14px; font-weight: 700; }
.primary-menu > li > a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 21px; height: 2px; background: var(--itsm-blue); transition: .25s ease; }
.primary-menu > li:hover > a::after, .primary-menu > .current-menu-item > a::after { right: 0; }
.primary-menu .sub-menu {
  min-width: 210px; margin: 0; padding: 9px; position: absolute; left: -14px; top: calc(100% - 10px);
  visibility: hidden; opacity: 0; transform: translateY(6px); list-style: none; border: 1px solid var(--itsm-line);
  border-radius: 12px; background: #fff; box-shadow: var(--itsm-shadow); transition: .2s;
}
.primary-menu li:hover > .sub-menu, .primary-menu li:focus-within > .sub-menu { visibility: visible; opacity: 1; transform: translateY(0); }
.primary-menu .sub-menu a { padding: 10px 12px; border-radius: 8px; font-size: 12px; }
.primary-menu .sub-menu a:hover { color: var(--itsm-blue); background: #f1f5fc; }
.header-actions { display: flex; align-items: center; gap: 10px; }
.icon-button, .menu-toggle { border: 0; background: transparent; cursor: pointer; }
.icon-button { width: 42px; height: 42px; display: grid; place-items: center; color: #27364a; border: 1px solid var(--itsm-line); border-radius: 12px; }
.icon-button svg { width: 19px; }
.quote-trigger {
  height: 44px; padding: 0 15px; display: flex; align-items: center; gap: 9px; color: #fff; border: 0;
  border-radius: 12px; background: var(--itsm-blue); box-shadow: 0 9px 18px rgba(21,87,255,.2);
  font-size: 13px; font-weight: 800; cursor: pointer;
}
.quote-trigger svg { width: 19px; }
.quote-trigger b { min-width: 20px; height: 20px; padding: 0 5px; display: grid; place-items: center; color: var(--itsm-blue); border-radius: 20px; background: #fff; font-size: 10px; }
.menu-toggle { width: 42px; height: 42px; display: none; }
.menu-toggle span { width: 21px; height: 2px; margin: 6px auto; display: block; background: var(--itsm-navy); transition: .25s; }
.header-search-panel {
  width: 100%; position: absolute; left: 0; top: 100%; visibility: hidden; opacity: 0; transform: translateY(-8px);
  border-top: 1px solid var(--itsm-line); background: #fff; box-shadow: 0 16px 30px rgba(7,26,53,.11); transition: .2s;
}
.header-search-panel.open { visibility: visible; opacity: 1; transform: translateY(0); }
.header-search-panel .itsm-container { padding-block: 16px; }
.search-form { display: flex; align-items: stretch; gap: 10px; }
.search-form label { min-height: 48px; padding: 0 15px; flex: 1; display: flex; align-items: center; gap: 10px; border: 1px solid var(--itsm-line); border-radius: 11px; }
.search-form label svg { width: 20px; color: #8190a5; }
.search-form input { width: 100%; border: 0; outline: 0; }
.search-form > button { padding: 0 20px; color: #fff; border: 0; border-radius: 10px; background: var(--itsm-blue); font-weight: 800; cursor: pointer; }

.hero-section {
  min-height: 650px;
  position: relative;
  overflow: hidden;
  color: #fff;
  background: radial-gradient(circle at 67% 5%, #173f81 0, transparent 34%), linear-gradient(125deg, #07162e 0%, #0a2448 62%, #081a33 100%);
}
.hero-section::before {
  content: ""; position: absolute; inset: 0; opacity: .055;
  background-image: linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);
  background-size: 55px 55px; mask-image: linear-gradient(to right,black,transparent);
}
.hero-grid { min-height: 650px; padding-block: 70px; position: relative; z-index: 2; display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: 5vw; }
.eyebrow { display: inline-flex; align-items: center; gap: 9px; color: #74c8ff; font-size: 11px; font-weight: 800; letter-spacing: .16em; }
.eyebrow i { width: 22px; height: 2px; background: var(--itsm-orange); }
.eyebrow.dark { color: var(--itsm-blue); }
.hero-content h1 { margin: 17px 0 20px; font-size: clamp(46px, 5vw, 74px); line-height: 1.02; letter-spacing: -.055em; }
.hero-content h1 span { color: #66c7ff; }
.hero-content > p { max-width: 600px; margin: 0 0 30px; color: #b7c8df; font-size: 17px; line-height: 1.75; }
.hero-search {
  width: min(625px, 100%); min-height: 61px; padding: 7px 7px 7px 18px; display: flex; align-items: center; gap: 12px;
  border: 1px solid rgba(255,255,255,.16); border-radius: 16px; background: rgba(255,255,255,.09);
  box-shadow: 0 18px 50px rgba(0,0,0,.18); backdrop-filter: blur(16px);
}
.hero-search svg { width: 21px; flex: 0 0 21px; color: #a9bdd5; }
.hero-search input { flex: 1; min-width: 80px; color: #fff; border: 0; outline: 0; background: transparent; font-size: 14px; }
.hero-search input::placeholder { color: #a5b6cb; }
.hero-search button { align-self: stretch; padding: 0 21px; color: #fff; border: 0; border-radius: 11px; background: var(--itsm-orange); font-size: 12px; font-weight: 800; cursor: pointer; }
.hero-reassurance { margin-top: 24px; display: flex; flex-wrap: wrap; gap: 20px; color: #c1d0e4; font-size: 11px; }
.hero-reassurance span::first-letter { color: #38d79e; }
.hero-visual { height: 465px; position: relative; }
.signal-rings { position: absolute; inset: 3% -2% -3% 2%; }
.signal-rings i { position: absolute; inset: 50%; transform: translate(-50%,-50%); display: block; border: 1px solid rgba(91,190,255,.13); border-radius: 50%; }
.signal-rings i:nth-child(1) { width: 310px; height: 310px; }
.signal-rings i:nth-child(2) { width: 440px; height: 440px; }
.signal-rings i:nth-child(3) { width: 570px; height: 570px; }
.hero-device { position: absolute; color: #6a7583; background: linear-gradient(145deg,#fff,#dfe6ec); box-shadow: -25px 32px 60px rgba(0,0,0,.35),inset -9px -8px 18px rgba(80,100,120,.14),inset 8px 8px 15px rgba(255,255,255,.9); }
.cpe-device { width: 205px; height: 350px; left: 38%; top: 3%; transform: rotate(10deg); border-radius: 100px 100px 42px 42px/72px 72px 42px 42px; }
.cpe-device::before { content: ""; width: 42px; height: 138px; position: absolute; left: 82px; top: -116px; border-radius: 30px 30px 6px 6px; background: linear-gradient(90deg,#cad4dd,#fff,#cbd4dc); }
.cpe-device::after { content: ""; width: 125px; height: 15px; position: absolute; left: 39px; bottom: -12px; border-radius: 3px 3px 15px 15px; background: #a9b5c0; }
.cpe-device b { position: absolute; left: 50%; top: 84px; transform: translateX(-50%); color: #6d747d; font-size: 10px; letter-spacing: .06em; }
.cpe-device span { width: 65px; height: 65px; position: absolute; left: 70px; top: 130px; border: 12px solid #d3dae1; border-radius: 50%; background: radial-gradient(circle at 40% 35%,#6f8ba2 0,#1c2b3a 18%,#07111c 50%,#263d4e 51%,#0a1722 70%); box-shadow: 0 8px 15px rgba(20,30,40,.25); }
.cpe-device > i { width: 5px; height: 5px; position: absolute; left: 101px; bottom: 90px; border-radius: 50%; background: #42e39e; box-shadow: 0 0 10px #42e39e; }
.router-device { width: 270px; height: 87px; right: 40%; bottom: 4%; border-radius: 22px 22px 33px 33px; transform: perspective(500px) rotateY(-11deg) rotateX(3deg); }
.router-device > div i { width: 13px; height: 136px; position: absolute; top: -114px; border-radius: 9px; background: linear-gradient(90deg,#cad5de,#fff,#bdc9d4); transform-origin: bottom; }
.router-device > div i:nth-child(1){left:25px;transform:rotate(-13deg)}.router-device > div i:nth-child(2){left:82px;transform:rotate(-4deg)}.router-device > div i:nth-child(3){right:82px;transform:rotate(4deg)}.router-device > div i:nth-child(4){right:25px;transform:rotate(13deg)}
.router-device > b { position: absolute; left: 50%; top: 24px; transform: translateX(-50%); font-size: 10px; }
.router-device > span { width: 5px; height: 5px; position: absolute; left: 50%; bottom: 19px; border-radius: 50%; background: #38d896; box-shadow: 0 0 6px #38d896; }
.floating-card { position: absolute; display: flex; align-items: center; color: #fff; border: 1px solid rgba(255,255,255,.15); border-radius: 15px; background: rgba(10,34,70,.72); box-shadow: 0 15px 30px rgba(0,0,0,.2); backdrop-filter: blur(12px); }
.speed-card { top: 42px; left: 2%; padding: 13px 17px; }.speed-card strong{font-size:22px}.speed-card span{margin:5px 0 0 3px;color:#69cfff;font-size:10px;font-weight:700}
.range-card { right: 2%; top: 37%; gap: 9px; padding: 11px 14px; }.range-card svg{width:25px;color:#52d8ff}.range-card span{display:flex;flex-direction:column}.range-card strong{font-size:13px}.range-card small{color:#9eb4cf;font-size:8px}

.trust-strip { padding-block: 30px; display: grid; grid-template-columns: repeat(4,1fr); border-bottom: 1px solid var(--itsm-line); background: #fff; }
.trust-strip article { padding: 7px clamp(10px,2.2vw,35px); display: flex; align-items: center; gap: 14px; border-right: 1px solid var(--itsm-line); }
.trust-strip article:first-child { padding-left: 0; }.trust-strip article:last-child{border:0}
.trust-icon { width: 43px; height: 43px; flex: 0 0 43px; display: grid; place-items: center; color: var(--itsm-blue); border-radius: 13px; background: #edf3ff; }
.trust-icon svg { width: 23px; }
.trust-strip article > span:last-child { display: flex; flex-direction: column; }
.trust-strip strong { color: #152138; font-size: 13px; }.trust-strip small{margin-top:3px;color:#8390a3;font-size:10px}

.home-catalogue, .catalogue-page .catalogue-app { padding-block: 95px 115px; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 35px; }
.section-heading.centered { display: block; text-align: center; }
.section-heading h2, .project-copy h2, .contact-section h2 { margin: 13px 0 11px; font-size: clamp(31px,3vw,46px); line-height: 1.12; letter-spacing: -.04em; }
.section-heading p { margin: 0; color: var(--itsm-muted); font-size: 14px; line-height: 1.7; }
.section-heading.centered p { max-width: 620px; margin-inline: auto; }
.text-link { flex: 0 0 auto; padding-bottom: 7px; color: var(--itsm-blue); font-size: 13px; font-weight: 800; }
.text-link span { margin-left: 7px; }
.category-scroller { margin-top: 45px; padding-bottom: 4px; display: flex; gap: 10px; overflow-x: auto; scrollbar-width: none; }
.category-scroller::-webkit-scrollbar { display:none; }
.category-chip {
  min-height: 42px; padding: 0 17px; flex: 0 0 auto; display: flex; align-items: center; gap: 8px;
  color: #536074; border: 1px solid #dfe5ee; border-radius: 50px; background: #fff;
  font-size: 12px; font-weight: 700; cursor: pointer; transition: .2s;
}
.category-chip:hover { color: var(--itsm-blue); border-color: #acc2f2; }
.category-chip.active { color: #fff; border-color: var(--itsm-blue); background: var(--itsm-blue); box-shadow: 0 7px 18px rgba(21,87,255,.18); }
.category-chip svg { width: 17px; }.category-chip b{padding:2px 6px;border-radius:8px;background:rgba(120,135,160,.12);font-size:9px}.category-chip.active b{background:rgba(255,255,255,.2)}
.catalogue-toolbar { min-height: 54px; margin-top: 37px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--itsm-line); }
.catalogue-toolbar p { color: #7a8597; font-size: 12px; }.catalogue-toolbar p strong{color:var(--itsm-ink)}
.toolbar-actions { display:flex;align-items:center;gap:10px }
.sort-control { display:flex;align-items:center;gap:9px;color:#7b8798;font-size:11px }.sort-control select{padding:8px 26px 8px 10px;color:#243045;border:0;outline:0;background:transparent;font-size:11px;font-weight:700;cursor:pointer}
.mobile-filter-trigger { display:none;align-items:center;gap:7px;padding:9px 12px;color:var(--itsm-navy);border:1px solid var(--itsm-line);border-radius:9px;background:#fff;font-size:11px;font-weight:800 }.mobile-filter-trigger svg{width:17px}
.catalogue-layout { margin-top: 27px; display:grid;grid-template-columns:210px minmax(0,1fr);gap:34px }
.catalogue-filters { align-self:start }
.filters-title { display:flex;align-items:center;justify-content:space-between }.filters-title h3{margin:0;font-size:15px}.filters-title .filters-reset{padding:0;color:#8290a4;border:0;background:transparent;font-size:9px;text-decoration:underline;cursor:pointer}.filters-close{display:none;width:34px;height:34px;border:1px solid var(--itsm-line);border-radius:50%;background:#fff;font-size:20px}
.filter-group { padding:22px 0;border-bottom:1px solid var(--itsm-line) }.filter-group h4{margin:0 0 14px;font-size:11px;text-transform:uppercase;letter-spacing:.09em}
.catalogue-search { height:40px;padding:0 10px;display:flex;align-items:center;gap:7px;border:1px solid var(--itsm-line);border-radius:9px }.catalogue-search svg{width:16px;color:#8c98a9}.catalogue-search input{width:100%;min-width:0;border:0;outline:0;font-size:10px}
.brand-filter-list { display:grid;gap:11px }.brand-filter-list label{display:flex;align-items:center;justify-content:space-between;color:#596579;font-size:11px;cursor:pointer}.brand-filter-list label span{display:flex;align-items:center;gap:9px}.brand-filter-list input{width:15px;height:15px;margin:0;accent-color:var(--itsm-blue)}.brand-filter-list b{color:#a0aaba;font-size:9px;font-weight:600}
.switch-row { display:flex;align-items:center;justify-content:space-between;border:0 }.switch-row>span{display:flex;flex-direction:column}.switch-row strong{font-size:11px}.switch-row small{margin-top:3px;color:#9aa4b3;font-size:9px}
.switch input{display:none}.switch i{width:37px;height:21px;display:block;position:relative;border-radius:20px;background:#d9dfe8;transition:.2s;cursor:pointer}.switch i::after{content:\"\";width:15px;height:15px;position:absolute;top:3px;left:3px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.2);transition:.2s}.switch input:checked+i{background:var(--itsm-blue)}.switch input:checked+i::after{left:19px}
.product-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px }
.product-card { min-width:0;position:relative;overflow:hidden;border:1px solid var(--itsm-line);border-radius:17px;background:#fff;transition:transform .25s,box-shadow .25s,border-color .25s }
.product-card:hover { transform:translateY(-5px);border-color:#cfd9e8;box-shadow:var(--itsm-shadow) }
.product-media { height:225px;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(150deg,#f4f7fb,#e9eff8) }
.product-media::before { content:\"\";width:210px;height:210px;position:absolute;right:-70px;top:-80px;border-radius:50%;background:#dce8ff;opacity:.75 }
.product-media::after { content:\"\";width:130px;height:18px;position:absolute;left:50%;bottom:28px;transform:translateX(-50%);border-radius:50%;background:rgba(22,41,65,.13);filter:blur(9px) }
.product-media > a:first-of-type { width:100%;height:100%;position:relative;z-index:2;display:grid;place-items:center }
.product-media img { width:88%;height:88%;object-fit:contain;transition:transform .28s }
.product-card:hover .product-media img { transform:scale(1.045) translateY(-2px) }
.product-badge { position:absolute;z-index:4;left:13px;top:13px;padding:6px 8px;color:#fff;border-radius:7px;background:var(--itsm-orange);font-size:8px;font-weight:900;letter-spacing:.06em;text-transform:uppercase }
.quick-view { position:absolute;z-index:4;left:50%;bottom:12px;transform:translate(-50%,16px);opacity:0;padding:9px 14px;white-space:nowrap;color:#fff;border-radius:9px;background:rgba(7,26,53,.88);font-size:9px;font-weight:800;transition:.23s;backdrop-filter:blur(8px) }
.product-card:hover .quick-view { opacity:1;transform:translate(-50%,0) }
.product-placeholder { width:155px;height:174px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:45px 45px 22px 22px;color:#667587;background:linear-gradient(145deg,#fff,#ccd6df);box-shadow:-12px 18px 28px rgba(27,45,65,.18),inset -5px -4px 10px rgba(85,100,120,.12) }
.product-placeholder::before { content:\"\";width:34px;height:62px;position:absolute;left:60px;top:-45px;border-radius:18px 18px 4px 4px;background:linear-gradient(90deg,#cbd6df,#fff,#c4cfd8) }
.product-placeholder i { width:48px;height:48px;margin-bottom:18px;border:9px solid #d5dce3;border-radius:50%;background:radial-gradient(circle at 40% 35%,#6f8ba2 0,#1c2b3a 25%,#07111c 62%);box-shadow:0 5px 10px rgba(0,0,0,.2) }
.product-placeholder b{font-size:9px;letter-spacing:.06em}.product-placeholder small{margin-top:5px;color:#8a97a5;font-size:7px}
.product-info { padding:18px }.product-brand{color:var(--itsm-blue);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.product-info h3 { min-height:41px;margin:7px 0 5px;font-size:14px;line-height:1.45;letter-spacing:-.01em }.product-info h3 a:hover{color:var(--itsm-blue)}
.product-summary { min-height:32px;margin:0;color:#7c8798;font-size:10px;line-height:1.55 }
.product-tags { min-height:25px;margin-top:12px;display:flex;flex-wrap:wrap;gap:5px }.product-tags span{padding:4px 6px;color:#53657c;border-radius:5px;background:#f1f4f8;font-size:8px;font-weight:700}
.stock-status { margin-top:9px;display:flex;align-items:center;gap:5px;color:var(--itsm-green);font-size:8px;font-weight:800 }.stock-status::before{content:\"\";width:5px;height:5px;border-radius:50%;background:currentColor}.stock-status.on-order{color:#b67b11}
.product-footer { margin-top:15px;padding-top:14px;display:flex;align-items:flex-end;justify-content:space-between;border-top:1px solid #edf0f4 }
.price { display:flex;flex-direction:column }.price small{min-height:14px;color:#98a2af;font-size:9px;text-decoration:line-through}.price strong{margin-top:2px;color:#132039;font-size:16px;letter-spacing:-.025em}
.add-to-quote { width:36px;height:36px;display:grid;place-items:center;color:#fff;border:0;border-radius:10px;background:var(--itsm-blue);box-shadow:0 7px 14px rgba(21,87,255,.2);cursor:pointer;transition:.2s }.add-to-quote:hover{background:#0744de;transform:scale(1.05)}.add-to-quote svg{width:17px}
.product-actions{display:flex;align-items:center;gap:7px}.card-buy-button{height:36px;padding:0 11px;display:inline-flex;align-items:center;justify-content:center;color:#fff;border-radius:9px;background:var(--itsm-red);font-size:9px;font-weight:900}.card-buy-button:hover{color:#fff;background:#870018}
.catalogue-empty { padding:80px 20px;text-align:center }.catalogue-empty>span{color:#b5bfcc;font-size:48px}.catalogue-empty h3{margin:9px 0 6px}.catalogue-empty p{color:var(--itsm-muted);font-size:12px}.catalogue-empty button{margin-top:15px;padding:10px 15px;color:#fff;border:0;border-radius:9px;background:var(--itsm-blue);font-size:11px;font-weight:800;cursor:pointer}

.catalogue-page-hero { padding:76px 0;color:#fff;background:linear-gradient(120deg,#07172e,#0b2a55) }.catalogue-page-hero h1{margin:12px 0 10px;font-size:clamp(38px,5vw,62px);letter-spacing:-.05em}.catalogue-page-hero p{max-width:680px;margin:0;color:#b8c9de;line-height:1.7}
.project-banner { min-height:480px;position:relative;overflow:hidden;color:#fff;background:linear-gradient(120deg,#07172e,#0b2a55) }
.project-banner::before { content:\"\";position:absolute;inset:0;opacity:.07;background-image:linear-gradient(45deg,transparent 48%,#fff 49%,#fff 50%,transparent 51%);background-size:24px 24px }
.project-inner { min-height:480px;position:relative;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px }
.project-copy { position:relative;z-index:2 }.project-copy h2{margin-top:14px;font-size:clamp(34px,4vw,52px)}.project-copy>p{max-width:570px;color:#b8c9de;font-size:15px;line-height:1.75}
.project-services { margin:24px 0 30px;display:flex;flex-wrap:wrap;gap:8px }.project-services span{padding:7px 10px;color:#bcd0e8;border:1px solid rgba(255,255,255,.15);border-radius:20px;font-size:9px;font-weight:700}
.primary-button { display:inline-flex;align-items:center;gap:16px;padding:14px 19px;color:#fff;border-radius:10px;background:var(--itsm-blue);font-size:11px;font-weight:900;box-shadow:0 12px 22px rgba(21,87,255,.18) }.primary-button.orange{background:var(--itsm-orange);box-shadow:0 12px 22px rgba(255,116,47,.18)}
.project-art { min-height:320px;position:relative }.project-art::before{content:\"\";width:340px;height:340px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(49,130,255,.2),transparent 68%)}.project-art svg{width:100%;height:320px;position:relative;color:rgba(74,157,255,.28);stroke-width:1}.project-art svg circle{fill:rgba(23,86,178,.1)}
.project-art>i { width:12px;height:12px;position:absolute;z-index:2;border:3px solid #fff;border-radius:50%;background:var(--itsm-orange);box-shadow:0 0 0 9px rgba(255,116,47,.12) }.project-art>i:nth-child(1){left:14%;bottom:24%}.project-art>i:nth-child(2){right:8%;top:42%}.project-art>i:nth-child(3){left:54%;top:18%;background:#3bd99e;box-shadow:0 0 0 9px rgba(59,217,158,.12)}
.contact-section { padding:100px 0;background:#f6f8fb }.contact-cards{max-width:1100px;margin:45px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.contact-cards a{min-height:130px;padding:22px;position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;border:1px solid var(--itsm-line);border-radius:16px;background:#fff;transition:.22s}.contact-cards a:hover{transform:translateY(-4px);box-shadow:var(--itsm-shadow);border-color:#cbd9ee}.contact-cards span{position:absolute;right:15px;top:3px;color:#eef2f7;font-size:62px;font-weight:800}.contact-cards small{position:relative;color:#8b96a6;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.contact-cards strong{position:relative;margin-top:7px;color:#13213a;font-size:13px}
.contact-form-wrap { max-width:800px;margin:40px auto 0;padding:30px;border-radius:18px;background:#fff;box-shadow:var(--itsm-shadow) }
.contact-form-wrap input:not([type=submit]),.contact-form-wrap textarea,.contact-form-wrap select{width:100%;padding:12px;border:1px solid var(--itsm-line);border-radius:9px}.contact-form-wrap input[type=submit],.contact-form-wrap button[type=submit]{padding:13px 18px;color:#fff;border:0;border-radius:9px;background:var(--itsm-blue);font-weight:800}

.site-footer { margin:0;padding:60px 0 25px;color:#b4c2d5;background:#061326 }.footer-main{padding-bottom:40px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:30px;border-bottom:1px solid rgba(255,255,255,.1)}.footer-brand .brand-copy strong{color:#fff}.footer-identity>p{max-width:410px;font-size:11px;line-height:1.7}.footer-widgets{padding:0;border:0;font-size:11px}.footer-widget h3{color:#fff;font-size:13px}.footer-menu{margin:0 0 14px;padding:0;display:flex;justify-content:flex-end;gap:25px;list-style:none;font-size:11px;font-weight:700}.footer-contact-mini{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:10px}.footer-bottom{padding-top:22px;display:flex;justify-content:space-between;color:#667992;font-size:9px}
.whatsapp-float { width:54px;height:54px;position:fixed;z-index:45;right:24px;bottom:24px;display:grid;place-items:center;color:#fff;border-radius:50%;background:#19b86a;box-shadow:0 12px 30px rgba(18,161,91,.35);transition:.2s }.whatsapp-float:hover{transform:scale(1.08)}.whatsapp-float svg{width:27px}
.itsm-backdrop { position:fixed;z-index:79;inset:0;visibility:hidden;opacity:0;background:rgba(5,15,29,.6);backdrop-filter:blur(5px);transition:.25s }.itsm-backdrop.show{visibility:visible;opacity:1}
.quote-drawer { width:min(460px,100%);position:fixed;z-index:80;right:0;top:0;bottom:0;display:flex;flex-direction:column;visibility:hidden;transform:translateX(100%);background:#fff;box-shadow:-20px 0 50px rgba(0,0,0,.18);transition:.3s ease }.quote-drawer.open{visibility:visible;transform:translateX(0)}
.drawer-head { padding:25px 27px 20px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--itsm-line) }.drawer-head span{color:var(--itsm-blue);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.drawer-head h2{margin:4px 0 0;font-size:22px}.drawer-close{width:35px;height:35px;border:1px solid var(--itsm-line);border-radius:50%;color:#445065;background:#fff;font-size:22px;line-height:1;cursor:pointer}
.drawer-items { flex:1;padding:8px 25px;overflow-y:auto }.drawer-item{padding:16px 0;display:grid;grid-template-columns:65px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--itsm-line)}.drawer-item-media{height:61px;display:grid;place-items:center;overflow:hidden;border-radius:10px;background:#f0f4f9}.drawer-item-media img{width:100%;height:100%;object-fit:contain}.drawer-item-placeholder{font-size:10px;font-weight:900;color:var(--itsm-blue)}.drawer-item h3{margin:0 0 4px;font-size:11px}.drawer-item p{margin:0 0 7px;color:var(--itsm-blue);font-size:10px;font-weight:800}.qty-control{display:inline-flex;align-items:center;border:1px solid var(--itsm-line);border-radius:7px}.qty-control button{width:24px;height:23px;border:0;background:transparent;cursor:pointer}.qty-control span{min-width:24px;text-align:center;font-size:9px}.remove-quote-item{color:#a4adba;border:0;background:transparent;font-size:17px;cursor:pointer}
.drawer-empty { flex:1;padding:70px 35px;display:flex;flex-direction:column;align-items:center;text-align:center }.drawer-empty>div{width:55px;height:55px;display:grid;place-items:center;border-radius:50%;color:var(--itsm-blue);background:#edf3ff;font-size:25px}.drawer-empty h3{margin:18px 0 7px;font-size:17px}.drawer-empty p{max-width:260px;margin:0;color:var(--itsm-muted);font-size:11px;line-height:1.6}
.drawer-foot { padding:18px 25px 25px;border-top:1px solid var(--itsm-line);background:#fff }.customer-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.customer-fields label{display:flex;flex-direction:column;gap:5px}.customer-fields span{color:#64748b;font-size:8px;font-weight:700;text-transform:uppercase}.customer-fields input{width:100%;min-width:0;padding:9px;border:1px solid var(--itsm-line);border-radius:8px;font-size:10px}.estimate{display:grid;grid-template-columns:1fr auto;gap:3px;margin-bottom:15px}.estimate span{color:#667489;font-size:11px}.estimate strong{font-size:18px}.estimate small{grid-column:1/-1;color:#9ba5b2;font-size:8px}.send-quote{width:100%;height:48px;display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;border:0;border-radius:10px;background:#18ad65;font-size:11px;font-weight:900;cursor:pointer}.send-quote svg{width:20px}.clear-quote{width:100%;margin-top:10px;color:#8893a3;border:0;background:transparent;font-size:9px;text-decoration:underline;cursor:pointer}
.itsm-toast { min-width:240px;position:fixed;z-index:100;left:50%;bottom:28px;transform:translate(-50%,30px);visibility:hidden;opacity:0;padding:12px 17px;display:flex;align-items:center;gap:10px;color:#fff;border-radius:11px;background:#10213b;box-shadow:0 12px 30px rgba(0,0,0,.2);transition:.25s }.itsm-toast.show{visibility:visible;opacity:1;transform:translate(-50%,0)}.itsm-toast span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--itsm-green);font-size:11px}.itsm-toast p{margin:0;font-size:11px;font-weight:700}

.content-shell,.woo-shell { padding-block:80px 100px }.narrow-content{max-width:900px}.page-heading{margin-bottom:35px}.page-heading h1{max-width:960px;margin:8px 0;font-size:clamp(38px,5vw,62px);line-height:1.1;letter-spacing:-.045em}.page-heading small{color:var(--itsm-blue);font-weight:800}.entry-content{font-size:16px;line-height:1.8}.entry-content a{color:var(--itsm-blue);text-decoration:underline}.entry-content img,.single-featured img{border-radius:17px}.single-featured{margin-bottom:35px}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.post-card{overflow:hidden;border:1px solid var(--itsm-line);border-radius:16px;background:#fff}.post-thumbnail{height:220px;display:block;background:#eef2f7}.post-thumbnail img{width:100%;height:100%;object-fit:cover}.post-card-content{padding:20px}.post-card-content small{color:var(--itsm-blue);font-size:9px;font-weight:800}.post-card h2{margin:7px 0;font-size:18px;line-height:1.35}.post-card p{color:var(--itsm-muted);font-size:12px;line-height:1.65}.pagination{grid-column:1/-1}
.site-content > .col-full { padding-top: 64px; padding-bottom: 70px; }
.comments-area{margin-top:55px;padding-top:35px;border-top:1px solid var(--itsm-line)}.comments-title{font-size:22px}.comment-list{padding-left:22px}.comment-list li{margin-block:18px}.comment-body{padding:18px;border-radius:12px;background:var(--itsm-soft)}.comment-form input:not([type=submit]),.comment-form textarea{width:100%;padding:11px;border:1px solid var(--itsm-line);border-radius:8px}.comment-form input[type=submit]{padding:12px 17px;color:#fff;border:0;border-radius:9px;background:var(--itsm-blue);font-weight:800}
.not-found { min-height:600px;padding-block:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center }.not-found>span{color:#eaf0fb;font-size:150px;font-weight:900;line-height:.8}.not-found h1{font-size:38px}.not-found p{max-width:550px;color:var(--itsm-muted);line-height:1.7}

/* WooCommerce */
.woocommerce .woocommerce-breadcrumb{margin-bottom:30px;color:#7c8798;font-size:11px}.woocommerce div.product div.images img{border-radius:18px;background:#f2f5f9}.woocommerce div.product .product_title{font-size:clamp(30px,4vw,48px);letter-spacing:-.04em}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--itsm-blue);font-size:24px;font-weight:800}.woocommerce button.button.alt,.woocommerce a.button.alt,.woocommerce button.button,.woocommerce a.button{color:#fff;border-radius:9px;background:var(--itsm-blue);font-weight:800}.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover{background:#0845de}.woocommerce .quantity .qty{min-height:42px;border:1px solid var(--itsm-line);border-radius:8px}.single-add-to-quote,.loop-add-to-quote{width:auto;min-height:42px;margin-top:10px;padding:0 17px;display:flex;align-items:center;justify-content:center;gap:9px;color:#fff;border:0;border-radius:9px;background:var(--itsm-red);font-size:12px;font-weight:800}.single-add-to-quote svg{width:18px}.loop-add-to-quote{width:100%}.itsm-price-on-request{color:var(--itsm-red);font-weight:800}.woocommerce div.product .woocommerce-tabs ul.tabs li{border-color:var(--itsm-line);background:#f4f7fb}.woocommerce div.product .woocommerce-tabs .panel{line-height:1.7}.woocommerce ul.products li.product{padding:14px;border:1px solid var(--itsm-line);border-radius:15px}.woocommerce ul.products li.product a img{border-radius:11px;background:#f2f5f9}.woocommerce ul.products li.product .price{color:var(--itsm-blue);font-weight:800}.woocommerce-message,.woocommerce-info{border-top-color:var(--itsm-blue)}.woocommerce-message::before,.woocommerce-info::before{color:var(--itsm-blue)}

@media (max-width: 1120px) {
  .primary-navigation{margin-right:24px}.primary-menu{gap:23px}
  .hero-grid{grid-template-columns:1.15fr .85fr}.hero-visual{transform:scale(.88);transform-origin:center}
  .trust-strip{grid-template-columns:repeat(2,1fr)}.trust-strip article:nth-child(2){border-right:0}.trust-strip article:nth-child(-n+2){padding-bottom:18px;border-bottom:1px solid var(--itsm-line)}.trust-strip article:nth-child(n+3){padding-top:18px}.trust-strip article:nth-child(3){padding-left:0}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 900px) {
  .admin-bar .site-header{top:46px}
  .primary-navigation{position:absolute;left:0;right:0;top:100%;margin:0;padding:10px 20px 20px;visibility:hidden;opacity:0;transform:translateY(-10px);background:#fff;border-bottom:1px solid var(--itsm-line);box-shadow:0 16px 30px rgba(9,25,45,.12);transition:.2s}.primary-navigation.open{visibility:visible;opacity:1;transform:translateY(0)}.primary-menu{display:block}.primary-menu a{padding:12px;border-bottom:1px solid #edf0f4}.primary-menu>li>a::after{display:none}.primary-menu .sub-menu{position:static;visibility:visible;opacity:1;transform:none;box-shadow:none;border:0;padding-left:18px}
  .menu-toggle{display:block}.menu-toggle.open span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle.open span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .hero-grid{grid-template-columns:1fr;text-align:center}.hero-content{display:flex;flex-direction:column;align-items:center}.hero-visual{width:min(500px,100%);height:390px;margin:10px auto -10px}.cpe-device{left:38%;transform:scale(.87) rotate(10deg)}.router-device{right:36%;transform:scale(.87) perspective(500px) rotateY(-11deg)}
  .catalogue-layout{grid-template-columns:1fr}.mobile-filter-trigger{display:flex}.catalogue-filters{width:min(340px,88vw);position:fixed;z-index:85;left:0;top:0;bottom:0;padding:28px 25px;visibility:hidden;transform:translateX(-100%);background:#fff;box-shadow:20px 0 50px rgba(0,0,0,.15);transition:.25s;overflow-y:auto}.catalogue-filters.open{visibility:visible;transform:translateX(0)}.filters-close{display:block}.filters-title .filters-reset{margin-left:auto;margin-right:12px}
  .project-inner{grid-template-columns:1fr}.project-art{display:none}.contact-cards{grid-template-columns:1fr;max-width:530px}
  .footer-main{grid-template-columns:1fr}.footer-menu{justify-content:flex-start}.footer-contact-mini{align-items:flex-start}
  .post-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 600px) {
  .itsm-container{width:min(calc(100% - 32px),var(--itsm-container))}
  .announcement-bar p{display:none}.announcement-bar{justify-content:center}
  .site-header,.header-inner{min-height:72px}.brand-copy small{display:none}.brand-mark{transform:scale(.88);transform-origin:left center;margin-right:-3px}.custom-logo{max-width:180px;max-height:45px}.icon-button{display:none}.quote-trigger{width:43px;padding:0;justify-content:center;position:relative}.quote-trigger>span{display:none}.quote-trigger b{position:absolute;right:-5px;top:-5px;color:#fff;background:var(--itsm-orange)}
  .hero-grid{min-height:auto;padding-block:58px 35px}.hero-section{min-height:auto}.hero-content h1{font-size:42px}.hero-content>p{font-size:14px}.hero-search{padding-left:14px}.hero-search button{display:none}.hero-reassurance{justify-content:center;gap:10px 15px}.hero-visual{height:315px;transform:scale(.85);margin:-10px auto -30px}.cpe-device{left:34%;top:-7%}.router-device{right:27%;bottom:-2%}.speed-card{left:-3%;top:14px}.range-card{right:-5%}
  .trust-strip{grid-template-columns:1fr;padding-block:18px}.trust-strip article{padding:14px 0!important;border-right:0;border-bottom:1px solid var(--itsm-line)!important}.trust-strip article:last-child{border-bottom:0!important}
  .home-catalogue,.catalogue-page .catalogue-app{padding-block:67px 80px}.section-heading{align-items:flex-start;flex-direction:column}.section-heading h2{font-size:32px}.text-link{display:none}.category-scroller{margin-top:30px}.catalogue-toolbar{margin-top:24px}.sort-control>span{display:none}.product-grid{grid-template-columns:1fr;gap:16px}.product-media{height:255px}.product-info h3{min-height:auto}
  .project-inner{min-height:auto;padding-block:65px}.project-banner{min-height:auto}.contact-section{padding-block:70px}.contact-section h2{font-size:31px}
  .footer-bottom{flex-direction:column;gap:8px}.footer-menu{flex-wrap:wrap}.whatsapp-float{width:50px;height:50px;right:16px;bottom:17px}
  .customer-fields{grid-template-columns:1fr}.drawer-foot{max-height:45vh;overflow-y:auto}
  .post-grid{grid-template-columns:1fr}.not-found>span{font-size:110px}.not-found h1{font-size:30px}
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}

/* Version institutionnelle ITSM SOLUTIONS 2.0 */
.hero-actions { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 12px; }
.primary-button.brand-red { background: var(--itsm-red); box-shadow: 0 12px 24px rgba(176,0,32,.22); }
.outline-button { display: inline-flex; align-items: center; justify-content: center; padding: 13px 19px; color: #fff; border: 1px solid rgba(255,255,255,.32); border-radius: 10px; font-size: 11px; font-weight: 900; transition: .2s; }
.outline-button:hover { color: var(--itsm-navy); background: #fff; }
.corporate-hero { background: radial-gradient(circle at 78% 22%, rgba(30,105,170,.5), transparent 32%), linear-gradient(125deg,#041c38 0%,#073b70 66%,#052d58 100%); }
.corporate-visual { display: grid; place-items: center; }
.network-orbit { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); border: 1px solid rgba(255,255,255,.14); border-radius: 50%; }
.network-orbit::before,.network-orbit::after { content: ""; width: 10px; height: 10px; position: absolute; border: 3px solid #fff; border-radius: 50%; background: var(--itsm-red); box-shadow: 0 0 0 8px rgba(176,0,32,.15); }
.orbit-one { width: 360px; height: 360px; }.orbit-one::before{left:18px;top:92px}.orbit-one::after{right:20px;bottom:83px;background:#34d7ef;box-shadow:0 0 0 8px rgba(52,215,239,.13)}
.orbit-two { width: 500px; height: 500px; border-color: rgba(255,255,255,.08); }.orbit-two::before{right:61px;top:54px}.orbit-two::after{left:38px;bottom:77px;background:#34d7ef;box-shadow:0 0 0 8px rgba(52,215,239,.13)}
.network-core { width: 285px; height: 205px; position: relative; z-index: 2; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.6); border-radius: 28px; background: #fff; box-shadow: 0 28px 60px rgba(0,0,0,.3); transform: rotate(-3deg); }
.network-core::after { content: ""; width: 210px; height: 18px; position: absolute; left: 50%; bottom: -38px; transform: translateX(-50%); border-radius: 50%; background: rgba(0,0,0,.3); filter: blur(12px); }
.network-core img { width: 230px; }
.capability-card { min-width: 135px; padding: 12px 15px; position: absolute; z-index: 3; display: flex; flex-direction: column; border: 1px solid rgba(255,255,255,.2); border-radius: 14px; background: rgba(4,28,56,.76); box-shadow: 0 16px 28px rgba(0,0,0,.2); backdrop-filter: blur(12px); }
.capability-card b { color: #fff; font-size: 12px; }.capability-card span{margin-top:4px;color:#8fdcff;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.cap-network{left:1%;top:17%}.cap-security{right:0;top:45%}.cap-support{left:13%;bottom:8%}
.narrow-heading { max-width: 820px; margin-inline: auto; }
.solutions-section { padding: 105px 0; background: #f7f9fc; }
.solutions-grid { margin-top: 48px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.solution-card { min-height: 285px; padding: 30px; position: relative; overflow: hidden; border: 1px solid var(--itsm-line); border-radius: 19px; background: #fff; transition: .25s; }
.solution-card::after { content:""; width: 120px; height: 120px; position: absolute; right: -65px; bottom: -65px; border-radius: 50%; background: #edf3f9; transition: .25s; }
.solution-card:hover { transform: translateY(-5px); border-color: #bfd1e3; box-shadow: var(--itsm-shadow); }.solution-card:hover::after{background:#dbeaf7;transform:scale(1.15)}
.solution-card>span { width: 50px; height: 50px; display: grid; place-items: center; color: var(--itsm-blue); border-radius: 14px; background: #edf4fa; }.solution-card>span svg{width:25px}
.solution-card h3 { margin: 22px 0 10px; color: var(--itsm-navy); font-size: 20px; }.solution-card p{margin:0;color:var(--itsm-muted);font-size:12px;line-height:1.75}.solution-card a{margin-top:24px;position:relative;z-index:2;display:inline-block;color:var(--itsm-red);font-size:11px;font-weight:900}
.about-section { padding: 110px 0; background: #fff; }
.about-grid { display: grid; grid-template-columns: 1.03fr .97fr; gap: 8vw; align-items: center; }
.about-copy h2 { margin: 14px 0 18px; font-size: clamp(34px,4vw,53px); line-height:1.1;letter-spacing:-.045em }.about-copy>p{color:var(--itsm-muted);font-size:14px;line-height:1.8}
.commitment-list { margin: 30px 0; padding: 0; display: grid; gap: 18px; list-style: none; }.commitment-list li{display:flex;align-items:flex-start;gap:15px}.commitment-list li>b{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;color:var(--itsm-red);border-radius:11px;background:#fae9ed;font-size:10px}.commitment-list li>span{display:flex;flex-direction:column}.commitment-list strong{font-size:13px}.commitment-list small{margin-top:4px;color:var(--itsm-muted);font-size:10px;line-height:1.5}
.process-panel { padding: 42px; position: relative; overflow: hidden; color: #fff; border-radius: 25px; background: linear-gradient(145deg,#052d58,#073b70); box-shadow: 0 28px 60px rgba(5,47,95,.2); }.process-panel::before{content:"";width:230px;height:230px;position:absolute;right:-110px;top:-110px;border-radius:50%;background:rgba(255,255,255,.05)}.process-panel>span{color:#74c8ff;font-size:9px;font-weight:900;letter-spacing:.16em}.process-panel h3{margin:10px 0 28px;font-size:27px}.process-panel ol{margin:0;padding:0;display:grid;gap:9px;list-style:none}.process-panel li{padding:15px 0;display:flex;gap:14px;border-top:1px solid rgba(255,255,255,.12)}.process-panel li>b{width:29px;height:29px;flex:0 0 29px;display:grid;place-items:center;color:#fff;border-radius:50%;background:var(--itsm-red);font-size:10px}.process-panel li div{display:flex;flex-direction:column}.process-panel li strong{font-size:12px}.process-panel li small{margin-top:4px;color:#b8c9de;font-size:9px}
.sectors-section { padding: 95px 0; border-block: 1px solid var(--itsm-line); background: #f7f9fc; }.sectors-grid{margin-top:38px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.sectors-grid span{min-height:80px;padding:20px;display:flex;align-items:center;color:#26374d;border:1px solid var(--itsm-line);border-radius:14px;background:#fff;font-size:12px;font-weight:800}.sectors-grid span::before{content:"";width:7px;height:7px;margin-right:12px;border-radius:50%;background:var(--itsm-red);box-shadow:0 0 0 6px #fae9ed}
.catalogue-external-link { margin-top: 35px; display: flex; justify-content: center; }
.ecosystem-section { padding: 105px 0; color: #fff; background: linear-gradient(135deg,#041c38,#073b70); }.ecosystem-section .section-heading h2{color:#fff}.ecosystem-grid{margin-top:45px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ecosystem-grid>a{min-height:265px;padding:30px;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.15);border-radius:19px;background:rgba(255,255,255,.07);transition:.25s}.ecosystem-grid>a::after{content:"";width:150px;height:150px;position:absolute;right:-75px;bottom:-75px;border-radius:50%;background:rgba(255,255,255,.06)}.ecosystem-grid>a:hover{transform:translateY(-5px);background:rgba(255,255,255,.11)}.ecosystem-grid b{color:#6ed5ff;font-size:9px;letter-spacing:.14em}.ecosystem-grid h3{margin:18px 0 11px;font-size:23px}.ecosystem-grid p{color:#b7c8df;font-size:11px;line-height:1.75}.ecosystem-grid span{position:absolute;left:30px;bottom:28px;color:#fff;font-size:10px;font-weight:900}
.footer-logo { width: 150px; height: 76px; padding: 7px; border-radius: 11px; background: #fff; }
.footer-main { grid-template-columns: 1.2fr .8fr .7fr 1fr; align-items: start; }
.footer-ecosystem { display: flex; flex-direction: column; gap: 9px; font-size: 10px; }.footer-ecosystem strong{margin-bottom:4px;color:#fff;font-size:12px}.footer-ecosystem a:hover{color:#fff}
.footer-default-links { display:flex; flex-direction:column; gap:8px; }.footer-default-links h3{margin:0 0 5px}.footer-default-links a:hover{color:#fff}

@media (max-width:1120px) {
  .solutions-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:45px}.footer-main{grid-template-columns:1fr 1fr}.capability-card{transform:scale(.92)}
}
@media (max-width:900px) {
  .corporate-visual{height:430px}.about-grid{grid-template-columns:1fr}.process-panel{max-width:650px}.ecosystem-grid{grid-template-columns:1fr}.ecosystem-grid>a{min-height:220px}.sectors-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px) {
  .fallback-logo{width:142px;height:52px}.corporate-hero .hero-grid{text-align:left}.corporate-hero .hero-content{align-items:flex-start}.corporate-hero .hero-reassurance{justify-content:flex-start}.hero-actions{width:100%;flex-direction:column}.hero-actions a{width:100%;justify-content:center}.corporate-visual{height:300px;transform:scale(.82);margin:-20px auto -25px}.network-core{width:260px;height:185px}.network-core img{width:210px}.orbit-two{width:430px;height:430px}.orbit-one{width:320px;height:320px}.cap-network{left:-10%}.cap-security{right:-12%}.cap-support{left:2%;bottom:0}
  .solutions-section,.about-section,.ecosystem-section,.sectors-section{padding-block:72px}.solutions-grid,.sectors-grid{grid-template-columns:1fr}.solution-card{min-height:auto}.about-grid{gap:45px}.process-panel{padding:28px}.ecosystem-grid>a{min-height:230px}.footer-main{grid-template-columns:1fr}
}

/* ITSM PRO STORE 3.1 — lisibilité, accessibilité et pages commerciales */
.itsm-theme .hero-content h1 { color: #fff !important; text-shadow: 0 3px 22px rgba(0,0,0,.24); }
.itsm-theme .hero-content h1 span { color: #75d6ff !important; }
.itsm-theme .ecosystem-grid h3,.itsm-theme .process-panel h3,.itsm-theme .project-copy h2,.itsm-theme .page-cta h2,.itsm-theme .support-action.primary h2 { color: #fff !important; }
.fallback-logo,.custom-logo,.network-core img,.footer-logo { display: block; opacity: 1; visibility: visible; }
.network-core img { height: auto; object-fit: contain; }
.brand-copy small { font-size: 11px; }
.primary-menu a { font-size: 15px; }
.primary-menu .sub-menu a { font-size: 14px; }
.add-to-quote { width: 44px; height: 44px; }
.card-buy-button { min-height: 44px; padding-inline: 14px; font-size: 12px; }
.category-chip,.mobile-filter-trigger { min-height: 44px; }
.catalogue-search { height: 44px; }
.brand-filter-list input { width: 18px; height: 18px; }
.hero-reassurance { font-size: 13px; }
.trust-strip strong { font-size: 14px; }
.trust-strip small { font-size: 12px; line-height: 1.45; }
.solution-card p,.about-copy > p,.ecosystem-grid p { font-size: 14px; }
.solution-card a,.outline-button,.ecosystem-grid span { font-size: 13px; }
.commitment-list strong { font-size: 14px; }
.commitment-list small,.process-panel li small { font-size: 12px; }
.process-panel li strong,.sectors-grid span { font-size: 14px; }
.product-summary { min-height: 42px; color: var(--itsm-muted); font-size: 13px; }
.product-tags span,.stock-status,.product-brand { font-size: 11px; }
.range-card small,.category-chip b,.filters-title .filters-reset,.catalogue-search input,.brand-filter-list b,.switch-row small,.product-badge,.quick-view,.product-placeholder b,.price small,.card-buy-button,.project-services span,.contact-cards small,.drawer-head span,.qty-control span,.capability-card span,.process-panel > span,.ecosystem-grid b { font-size: 11px; }
.product-placeholder small,.drawer-item h3,.drawer-item p,.drawer-empty p,.clear-quote,.itsm-toast p { font-size: 12px; }
.brand-filter-list label,.switch-row strong,.drawer-item-placeholder { font-size: 12px; }
.filters-title .filters-reset,.brand-filter-list b,.switch-row small,.product-placeholder small,.price small,.contact-cards small,.clear-quote { color: #59677a; }
.stock-status { color: #08794e; }
.site-footer,.footer-widgets,.footer-identity > p,.footer-menu,.footer-ecosystem,.footer-contact-mini { font-size: 13px; }
.footer-bottom { color: #a9b8ca; font-size: 12px; }
.footer-widget h3,.footer-ecosystem strong { font-size: 15px; }
.customer-fields span,.estimate small { font-size: 11px; }
.customer-fields input,.customer-fields textarea,.send-quote { font-size: 13px; }
.customer-fields textarea { width: 100%; min-width: 0; padding: 9px; resize: vertical; border: 1px solid var(--itsm-line); border-radius: 8px; font-family: inherit; }
.quote-need-field { grid-column: 1 / -1; }
.itsm-theme a:focus-visible,.itsm-theme button:focus-visible,.itsm-theme input:focus-visible,.itsm-theme select:focus-visible,.itsm-theme textarea:focus-visible { outline: 3px solid #f3a51a; outline-offset: 3px; }
.itsm-theme [id] { scroll-margin-top: 125px; }

.training-preview { padding: 100px 0; background: #fff; }
.training-preview .section-heading > div { max-width: 760px; }
.training-grid { margin-top: 42px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.training-grid article { min-height: 275px; padding: 31px; position: relative; border: 1px solid var(--itsm-line); border-radius: 19px; background: linear-gradient(145deg,#fff,#f7f9fc); box-shadow: 0 13px 35px rgba(8,29,58,.05); }
.training-grid article > span { color: var(--itsm-red); font-size: 12px; font-weight: 900; letter-spacing: .12em; }
.training-grid h3 { margin: 23px 0 12px; color: var(--itsm-navy); font-size: 22px; line-height: 1.25; }
.training-grid p { margin: 0; color: var(--itsm-muted); font-size: 14px; line-height: 1.7; }
.training-grid small { position: absolute; left: 31px; bottom: 28px; color: var(--itsm-blue); font-size: 12px; font-weight: 800; }

.inner-page-hero { padding: 92px 0; color: #fff; background: radial-gradient(circle at 82% 15%,rgba(49,132,210,.34),transparent 30%),linear-gradient(125deg,#041a34,#073a6d); }
.inner-page-hero.compact-hero { padding-block: 78px; }
.inner-page-hero h1 { max-width: 830px; margin: 16px 0 18px; color: #fff !important; font-size: clamp(42px,5vw,68px); line-height: 1.04; letter-spacing: -.052em; }
.inner-page-hero p { max-width: 760px; margin: 0; color: #c4d4e7; font-size: 17px; line-height: 1.75; }
.inner-hero-grid { display: grid; grid-template-columns: 1.25fr .75fr; align-items: center; gap: 7vw; }
.hero-side-card { padding: 30px; border: 1px solid rgba(255,255,255,.18); border-radius: 20px; background: rgba(255,255,255,.08); box-shadow: 0 22px 45px rgba(0,0,0,.15); backdrop-filter: blur(14px); }
.hero-side-card strong { display: block; color: #fff; font-size: 21px; }
.hero-side-card p { margin: 12px 0 22px; color: #c4d4e7; font-size: 14px; line-height: 1.7; }
.hero-side-card small { display: block; color: #8fdcff; font-size: 13px; line-height: 1.6; }
.hero-side-card.brand-statement strong { margin: 5px 0; font-size: clamp(27px,3vw,38px); }
.hero-side-card.brand-statement strong:last-child { color: #75d6ff; }

.service-list { padding-block: 95px; display: grid; gap: 16px; }
.service-detail-card { padding: 35px; display: grid; grid-template-columns: 64px 1fr 1fr; align-items: start; gap: 30px; border: 1px solid var(--itsm-line); border-radius: 18px; background: #fff; transition: .2s; }
.service-detail-card:hover { border-color: #b9cce5; box-shadow: var(--itsm-shadow); }
.service-number,.course-number { width: 48px; height: 48px; display: grid; place-items: center; color: var(--itsm-red); border-radius: 13px; background: #fae9ed; font-size: 12px; font-weight: 900; }
.service-detail-card h2 { margin: 0 0 10px; color: var(--itsm-navy); font-size: 27px; }
.service-detail-card p { margin: 0; color: var(--itsm-muted); font-size: 14px; line-height: 1.7; }
.service-detail-card ul { margin: 0; padding: 0; display: grid; gap: 10px; list-style: none; }
.service-detail-card li { position: relative; padding-left: 22px; color: #3d4a5d; font-size: 14px; line-height: 1.55; }
.service-detail-card li::before { content: "✓"; position: absolute; left: 0; color: var(--itsm-green); font-weight: 900; }

.page-cta { padding: 70px 0; color: #fff; background: linear-gradient(120deg,#06172d,#092e59); }
.page-cta .itsm-container { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.page-cta span { color: #75d6ff; font-size: 11px; font-weight: 900; letter-spacing: .15em; }
.page-cta h2 { margin: 9px 0 8px; color: #fff; font-size: clamp(30px,4vw,46px); letter-spacing: -.04em; }
.page-cta p { max-width: 760px; margin: 0; color: #b8c9dd; font-size: 14px; line-height: 1.7; }
.page-cta .primary-button { flex: 0 0 auto; }

.course-section { padding-block: 95px; }
.course-grid { margin-top: 42px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.course-card { min-height: 420px; padding: 30px; display: flex; flex-direction: column; border: 1px solid var(--itsm-line); border-radius: 19px; background: #fff; box-shadow: 0 13px 35px rgba(8,29,58,.05); }
.course-card h3 { margin: 22px 0 12px; font-size: 22px; line-height: 1.25; }
.course-card > p { margin: 0; color: var(--itsm-muted); font-size: 14px; line-height: 1.7; }
.course-meta { margin-top: 23px; display: flex; flex-wrap: wrap; gap: 7px; }
.course-meta span { padding: 6px 9px; color: #42536a; border-radius: 20px; background: #edf3f8; font-size: 11px; font-weight: 700; }
.course-card > a { margin-top: auto; padding-top: 22px; color: var(--itsm-blue); font-size: 14px; font-weight: 900; }

.contact-page-content,.support-content { padding-block: 90px 105px; }
.contact-method-grid,.support-actions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.contact-method-grid > a,.support-action { min-height: 235px; padding: 29px; display: flex; flex-direction: column; color: var(--itsm-ink); border: 1px solid var(--itsm-line); border-radius: 18px; background: #fff; transition: .2s; }
.contact-method-grid > a:hover,.support-action:hover { transform: translateY(-4px); border-color: #b9cce5; box-shadow: var(--itsm-shadow); }
.contact-method-grid > a > span,.support-action > span { color: var(--itsm-red); font-size: 12px; font-weight: 900; }
.contact-method-grid small { margin: 25px 0 7px; color: var(--itsm-muted); font-size: 13px; }
.contact-method-grid strong { overflow-wrap: anywhere; font-size: 18px; }
.contact-method-grid em { margin-top: auto; color: var(--itsm-blue); font-size: 13px; font-style: normal; font-weight: 800; }
.contact-info-panel { margin-top: 65px; display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.contact-info-panel h2,.support-guide h2,.about-story h2 { margin: 14px 0 17px; font-size: clamp(32px,4vw,48px); line-height: 1.12; letter-spacing: -.04em; }
.contact-info-panel p,.about-story p { color: var(--itsm-muted); font-size: 15px; line-height: 1.8; }
.contact-info-panel ul { margin: 25px 0 0; padding: 0; display: grid; gap: 10px; list-style: none; }
.contact-info-panel li { position: relative; padding-left: 25px; font-size: 14px; }
.contact-info-panel li::before { content: "✓"; position: absolute; left: 0; color: var(--itsm-green); font-weight: 900; }
.contact-form-panel { padding: 34px; border-radius: 20px; background: #f3f6fa; }
.contact-form-panel h3 { margin-top: 0; font-size: 25px; }
.contact-form-panel p { font-size: 14px; }

.about-story { padding-block: 95px; display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; align-items: center; }
.method-steps { margin: 0; padding: 35px; display: grid; gap: 0; list-style: none; border-radius: 22px; background: #f4f7fb; }
.method-steps li { padding: 17px 0; display: flex; align-items: center; gap: 16px; border-bottom: 1px solid var(--itsm-line); }
.method-steps li:last-child { border: 0; }
.method-steps b { width: 42px; height: 42px; display: grid; place-items: center; color: #fff; border-radius: 12px; background: var(--itsm-blue); font-size: 11px; }
.method-steps span { display: flex; flex-direction: column; }
.method-steps strong { font-size: 15px; }
.method-steps small { margin-top: 4px; color: var(--itsm-muted); font-size: 13px; }
.values-section,.quote-process { padding-block: 95px; background: #f6f8fb; }
.values-grid,.process-grid { margin-top: 42px; display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.values-grid article,.process-grid article { padding: 30px; border: 1px solid var(--itsm-line); border-radius: 18px; background: #fff; }
.values-grid span { color: var(--itsm-red); font-size: 12px; font-weight: 900; }
.values-grid h3,.process-grid h3 { margin: 19px 0 9px; font-size: 21px; }
.values-grid p,.process-grid p { margin: 0; color: var(--itsm-muted); font-size: 14px; line-height: 1.65; }

.support-action.primary { color: #fff; border-color: transparent; background: linear-gradient(145deg,#06305c,#075092); }
.support-action h2 { margin: 24px 0 11px; color: inherit; font-size: 25px; }
.support-action p { margin: 0; color: var(--itsm-muted); font-size: 14px; line-height: 1.7; }
.support-action.primary p { color: #c4d4e7; }
.support-action strong { margin-top: auto; overflow-wrap: anywhere; color: var(--itsm-blue); font-size: 14px; }
.support-action.primary strong { color: #7addff; }
.support-guide { margin-top: 65px; padding: 45px; display: grid; grid-template-columns: .9fr 1.1fr; gap: 60px; border-radius: 22px; background: #f3f6fa; }
.support-guide ol { margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 13px; list-style: none; }
.support-guide li { padding: 18px; display: flex; gap: 13px; border-radius: 14px; background: #fff; }
.support-guide li b { width: 29px; height: 29px; flex: 0 0 29px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: var(--itsm-red); font-size: 11px; }
.support-guide li span { display: flex; flex-direction: column; }
.support-guide li strong { font-size: 14px; }
.support-guide li small { margin-top: 5px; color: var(--itsm-muted); font-size: 12px; line-height: 1.5; }

.quote-choice { padding-block: 95px; display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.quote-choice article { min-height: 340px; padding: 38px; display: flex; flex-direction: column; border: 1px solid var(--itsm-line); border-radius: 21px; background: #fff; box-shadow: 0 13px 35px rgba(8,29,58,.05); }
.quote-choice article > span { color: var(--itsm-red); font-size: 12px; font-weight: 900; }
.quote-choice h2 { margin: 24px 0 12px; font-size: 29px; }
.quote-choice p { margin: 0; color: var(--itsm-muted); font-size: 15px; line-height: 1.75; }
.quote-choice .primary-button { margin-top: auto; align-self: flex-start; }
.process-grid { grid-template-columns: repeat(4,1fr); }
.process-grid article b { width: 40px; height: 40px; display: grid; place-items: center; color: #fff; border-radius: 12px; background: var(--itsm-blue); }

.catalogue-hero-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 7vw; align-items: center; }
.catalogue-page-hero h1 { color: #fff !important; }
.catalogue-page-hero p { font-size: 16px; }
.catalogue-hero-help { padding: 25px; border: 1px solid rgba(255,255,255,.17); border-radius: 17px; background: rgba(255,255,255,.07); }
.catalogue-hero-help strong { display: block; color: #fff; font-size: 18px; }
.catalogue-hero-help p { margin: 10px 0 17px; color: #c2d3e7; font-size: 13px; line-height: 1.65; }
.catalogue-hero-help a { color: #75d6ff; font-size: 13px; font-weight: 900; }
.store-trust { margin-top: -1px; padding-block: 20px; display: flex; flex-wrap: wrap; justify-content: center; gap: 18px 35px; border-bottom: 1px solid var(--itsm-line); color: #405169; font-size: 13px; font-weight: 700; }

@media (max-width: 1000px) {
  .training-grid,.course-grid{grid-template-columns:repeat(2,1fr)}
  .inner-hero-grid,.contact-info-panel,.about-story,.support-guide,.catalogue-hero-grid{grid-template-columns:1fr}
  .service-detail-card{grid-template-columns:60px 1fr}.service-detail-card ul{grid-column:2}
  .process-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 760px) {
  .training-grid,.course-grid,.contact-method-grid,.support-actions,.values-grid,.quote-choice{grid-template-columns:1fr}
  .page-cta .itsm-container{align-items:flex-start;flex-direction:column}
  .service-detail-card{grid-template-columns:1fr;gap:17px}.service-detail-card ul{grid-column:auto}.service-number{width:43px;height:43px}
  .support-guide{padding:28px}.support-guide ol{grid-template-columns:1fr}
  .contact-page-content,.support-content,.course-section,.service-list,.about-story,.values-section,.quote-process,.quote-choice{padding-block:70px}
}
@media (max-width: 600px) {
  .inner-page-hero{padding-block:67px}.inner-page-hero h1{font-size:41px}.inner-page-hero p{font-size:15px}
  .training-preview{padding-block:72px}.training-grid article{min-height:265px}.course-card{min-height:390px}
  .process-grid{grid-template-columns:1fr}.page-cta{padding-block:58px}.page-cta .primary-button{width:100%;justify-content:center}
  .service-detail-card,.quote-choice article{padding:27px}.contact-form-panel{padding:26px}.support-guide{gap:25px}
  .catalogue-page-hero{padding-block:62px}.catalogue-page-hero h1{font-size:42px}.store-trust{justify-content:flex-start}
}
