
      :root {
        --navy: #071426;
        --navy2: #0b2039;
        --blue: #1178bf;
        --red: #ed1c24;
        --paper: #f4f6f8;
        --ink: #101c31;
        --muted: #647084;
        --line: #dce2e8;
        --white: #fff;
        --shadow: 0 18px 50px rgba(7, 20, 38, 0.12);
      }
      * {
        box-sizing: border-box;
      }
      html {
        scroll-behavior: smooth;
        max-width: 100%;
        overflow-x: clip;
      }
      body {
        margin: 0;
        max-width: 100%;
        overflow-x: clip;
        font-family: Arial,Helvetica,sans-serif;
        color: var(--ink);
        background: #fff;
        line-height: 1.6;
      }
      a {
        color: inherit;
      }
      img {
        max-width: 100%;
        height: auto;
      }
      img[src$=".svg"] {
        object-fit: contain;
      }
      .wrap {
        width: min(1180px,90%);
        margin: auto;
      }
      .skip {
        position: absolute;
        left: -9999px;
      }
      .skip:focus {
        left: 12px;
        top: 12px;
        background: #fff;
        padding: 10px;
        z-index: 100;
      }
      button,input,select,textarea {
        font: inherit;
      }
      a,button {
        transition: transform 0.18s ease,filter 0.18s ease,background-color 0.18s ease;
      }
      a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {
        outline: 3px solid #ffd54a;
        outline-offset: 3px;
      }
      .brand img {
        display: block;
      }
      .page-hero,.hero {
        isolation: isolate;
      }
      .topline {
        background: #030a12;
        color: #cbd4df;
        text-align: center;
        font-size: 12px;
        letter-spacing: 1.5px;
        padding: 7px;
      }
      .topline strong {
        color: #fff;
      }
      .site-header {
        position: sticky;
        top: 0;
        z-index: 30;
        background: rgba(6,17,32,0.98);
        border-bottom: 1px solid rgba(255,255,255,0.12);
      }
      .nav {
        min-height: 84px;
        display: flex;
        align-items: center;
        gap: 24px;
      }
      .brand {
        display: flex;
        align-items: center;
        margin-right: auto;
      }
      .brand img {
        width: 178px;
        height: 62px;
        object-fit: contain;
      }
      .nav-links {
        display: flex;
        align-items: center;
        gap: 20px;
      }
      .nav-links a {
        color: #fff;
        text-decoration: none;
        font-size: 12px;
        font-weight: 800;
        letter-spacing: 0.8px;
        padding: 30px 0;
        border-bottom: 3px solid transparent;
      }
      .nav-links a:hover,.nav-links a[aria-current=page] {
        color: #fff;
        border-color: var(--red);
      }
      .nav-call,.btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        border: 0;
        border-radius: 5px;
        text-decoration: none;
        font-weight: 900;
        letter-spacing: 0.3px;
        cursor: pointer;
      }
      .nav-call {
        background: var(--red);
        color: #fff;
        padding: 13px 16px;
        white-space: nowrap;
      }
      .menu-toggle {
        display: none;
        background: none;
        border: 1px solid #536175;
        color: #fff;
        border-radius: 5px;
        padding: 10px 12px;
        font-weight: 800;
      }
      .hero {
        position: relative;
        overflow: hidden;
        background: radial-gradient(circle at 76% 44%,#17375d 0,#0a1d34 28%,#071426 62%);
        color: #fff;
        padding: 88px 0 72px;
      }
      .hero:after {
        content: "";
        position: absolute;
        inset: 0 0 0 55%;
        opacity: 0.18;
        background: repeating-linear-gradient(90deg,transparent 0 40px,#91a1b4 41px 43px),repeating-linear-gradient(0deg,transparent 0 54px,#91a1b4 55px 57px);
        mask-image: linear-gradient(to left,#000,transparent);
      }
      .hero-grid {
        display: grid;
        grid-template-columns: 1.05fr 0.95fr;
        align-items: center;
        gap: 58px;
        position: relative;
        z-index: 1;
      }
      .eyebrow {
        color: #ff3940;
        font-size: 12px;
        letter-spacing: 4px;
        font-weight: 900;
        text-transform: uppercase;
      }
      .hero h1,.page-hero h1 {
        font-size: clamp(44px,6vw,76px);
        line-height: 0.94;
        letter-spacing: -3px;
        margin: 15px 0 25px;
        text-transform: uppercase;
      }
      .hero h1 span,.page-hero h1 span {
        color: var(--red);
      }
      .lead {
        color: #d6dce5;
        font-size: 19px;
        max-width: 620px;
      }
      .actions {
        display: flex;
        gap: 13px;
        flex-wrap: wrap;
        margin-top: 30px;
      }
      .btn {
        min-height: 50px;
        padding: 0 22px;
        background: var(--red);
        color: #fff;
      }
      .btn:hover {
        filter: brightness(0.92);
        transform: translateY(-1px);
      }
      .btn-outline {
        background: transparent;
        border: 1px solid #fff;
      }
      .btn-dark {
        background: var(--navy);
      }
      .hero-panel {
        position: relative;
        min-height: 420px;
        border: 1px solid rgba(255,255,255,0.14);
        border-radius: 14px;
        background: linear-gradient(145deg,rgba(255,255,255,0.1),rgba(255,255,255,0.02));
        box-shadow: 0 30px 80px rgba(0,0,0,0.32);
        padding: 34px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
      }
      .hero-panel:before {
        content: "";
        position: absolute;
        top: 35px;
        right: 35px;
        width: 170px;
        height: 170px;
        background: url(/assets/icon.png) center/contain no-repeat;
        opacity: 0.22;
      }
      .signal {
        color: var(--red);
        font-weight: 900;
        letter-spacing: 3px;
        font-size: 11px;
      }
      .hero-panel strong {
        font-size: 32px;
        line-height: 1.1;
        max-width: 330px;
      }
      .hero-panel p {
        color: #b9c5d2;
        margin-bottom: 0;
      }
      .status {
        display: flex;
        gap: 10px;
        align-items: center;
        margin-bottom: 18px;
      }
      .pulse {
        width: 12px;
        height: 12px;
        background: #24d17e;
        border-radius: 50%;
        box-shadow: 0 0 0 7px rgba(36,209,126,0.15);
      }
      .trust {
        background: #0c1d33;
        color: #fff;
      }
      .trust-grid {
        display: grid;
        grid-template-columns: repeat(4,1fr);
      }
      .trust-item {
        padding: 25px 22px;
        border-right: 1px solid rgba(255,255,255,0.14);
        display: flex;
        gap: 14px;
        align-items: center;
      }
      .trust-item:last-child {
        border: 0;
      }
      .trust-icon {
        font-size: 27px;
        color: var(--red);
        font-weight: 900;
      }
      .trust-item strong {
        display: block;
      }
      .trust-item small {
        color: #aeb8c5;
      }
      .section {
        padding: 80px 0;
      }
      .section-grey {
        background: var(--paper);
      }
      .section-dark {
        background: var(--navy);
        color: #fff;
      }
      .section-head {
        text-align: center;
        max-width: 760px;
        margin: 0 auto 38px;
      }
      .section-head h2,.split h2 {
        font-size: clamp(32px,4vw,48px);
        line-height: 1.05;
        letter-spacing: -1.5px;
        margin: 10px 0 16px;
      }
      .section-head p,.split p {
        color: var(--muted);
      }
      .section-dark .section-head p,.section-dark .split p {
        color: #b8c3d0;
      }
      .cards {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 18px;
      }
      .card {
        background: #fff;
        border: 1px solid var(--line);
        border-radius: 9px;
        padding: 28px 24px;
        box-shadow: 0 10px 28px rgba(12,28,51,0.06);
      }
      .card:hover {
        transform: translateY(-4px);
        box-shadow: var(--shadow);
      }
      .card .num {
        color: var(--red);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: 2px;
      }
      .card h3 {
        margin: 14px 0 8px;
        line-height: 1.2;
      }
      .card p {
        font-size: 14px;
        color: var(--muted);
      }
      .text-link {
        color: #073579;
        text-decoration: none;
        font-size: 13px;
        font-weight: 900;
      }
      .feature-grid {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 18px;
      }
      .feature {
        padding: 26px;
        border-left: 3px solid var(--red);
        background: #fff;
        box-shadow: var(--shadow);
      }
      .feature h3 {
        margin: 0 0 8px;
      }
      .feature p {
        margin: 0;
        color: var(--muted);
        font-size: 14px;
      }
      .section-dark .feature {
        background: #0d223c;
      }
      .section-dark .feature p {
        color: #b8c3d0;
      }
      .split {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: 65px;
      }
      .stat-panel {
        background: var(--navy2);
        color: #fff;
        border-radius: 10px;
        padding: 30px;
      }
      .stat {
        display: flex;
        justify-content: space-between;
        gap: 20px;
        padding: 17px 0;
        border-bottom: 1px solid rgba(255,255,255,0.15);
      }
      .stat:last-child {
        border: 0;
      }
      .stat b {
        color: var(--red);
        font-size: 22px;
      }
      .steps {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 16px;
      }
      .step {
        text-align: center;
      }
      .step-no {
        width: 68px;
        height: 68px;
        border: 2px solid var(--red);
        border-radius: 50%;
        display: grid;
        place-items: center;
        margin: auto;
        color: #fff;
        font-size: 22px;
        font-weight: 900;
      }
      .step h3 {
        font-size: 15px;
        margin: 17px 0 6px;
      }
      .step p {
        color: #aeb8c5;
        font-size: 13px;
      }
      .cta-band {
        background: linear-gradient(112deg,#c81018 0,var(--red) 50%,var(--navy) 50%);
        color: #fff;
        padding: 55px 0;
      }
      .cta-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: 60px;
      }
      .cta-band h2 {
        font-size: 38px;
        line-height: 1;
        margin: 7px 0;
      }
      .cta-band p {
        margin: 0;
        color: #f4d9da;
      }
      .contact-lines {
        font-weight: 800;
        font-size: 18px;
        display: flex;
        flex-direction: column;
        gap: 5px;
      }
      .contact-lines a {
        text-decoration: none;
      }
      .page-hero {
        background: radial-gradient(circle at 76% 45%,#18395f,#071426 60%);
        color: #fff;
        padding: 72px 0;
      }
      .page-hero .wrap {
        max-width: 960px;
        margin-left: 5%;
      }
      .page-hero h1 {
        font-size: clamp(40px,5vw,64px);
        max-width: 900px;
      }
      .page-hero .lead {
        max-width: 700px;
      }
      .tag-list {
        display: flex;
        flex-wrap: wrap;
        gap: 9px;
        margin-top: 25px;
      }
      .tag {
        border: 1px solid rgba(255,255,255,0.28);
        border-radius: 99px;
        padding: 8px 13px;
        font-size: 12px;
        font-weight: 700;
      }
      .software-demo {
        background: #071426;
        border-radius: 16px;
        padding: 20px;
        box-shadow: var(--shadow);
      }
      .software-bar {
        display: flex;
        gap: 7px;
        margin-bottom: 16px;
      }
      .software-bar i {
        width: 9px;
        height: 9px;
        border-radius: 50%;
        background: #ed1c24;
      }
      .software-bar i:nth-child(2) {
        background: #ffbd2e;
      }
      .software-bar i:nth-child(3) {
        background: #28c840;
      }
      .dashboard {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
      }
      .metric {
        background: #102945;
        color: #fff;
        padding: 18px;
        border-radius: 7px;
      }
      .metric b {
        display: block;
        color: #fff;
        font-size: 28px;
      }
      .metric small {
        color: #aab8c8;
      }
      .metric.red {
        border-left: 4px solid var(--red);
      }
      .form-shell {
        display: grid;
        grid-template-columns: 0.8fr 1.2fr;
        gap: 36px;
      }
      .emergency-box {
        background: var(--red);
        color: #fff;
        border-radius: 10px;
        padding: 34px;
      }
      .emergency-box h2 {
        font-size: 35px;
        line-height: 1.05;
      }
      .emergency-number {
        font-size: clamp(27px,4vw,42px);
        font-weight: 900;
        text-decoration: none;
        display: block;
      }
      .contact-form {
        background: #fff;
        box-shadow: var(--shadow);
        border-radius: 10px;
        padding: 32px;
      }
      .fields {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 18px;
      }
      .field {
        display: flex;
        flex-direction: column;
        gap: 6px;
      }
      .field.full {
        grid-column: 1/-1;
      }
      .field label {
        font-size: 13px;
        font-weight: 800;
      }
      .field input,.field select,.field textarea {
        width: 100%;
        font: inherit;
        border: 1px solid #cfd7df;
        border-radius: 5px;
        padding: 12px;
        background: #fff;
      }
      .field textarea {
        min-height: 125px;
        resize: vertical;
      }
      .form-note {
        font-size: 12px;
        color: var(--muted);
      }
      .form-status {
        display: none;
        margin-top: 15px;
        padding: 13px;
        border-left: 3px solid #168a53;
        background: #edf9f3;
      }
      .form-status.show {
        display: block;
      }
      footer {
        background: #030a12;
        color: #94a1b1;
        padding: 42px 0 24px;
      }
      .footer-grid {
        display: grid;
        grid-template-columns: 1.3fr 1fr 1fr;
        gap: 40px;
      }
      .footer-logo {
        width: 170px;
        height: 70px;
        object-fit: contain;
      }
      .footer-grid h3 {
        color: #fff;
        font-size: 14px;
      }
      .footer-grid a {
        display: block;
        text-decoration: none;
        margin: 7px 0;
      }
      .footer-bottom {
        border-top: 1px solid #263140;
        margin-top: 30px;
        padding-top: 20px;
        font-size: 12px;
        display: flex;
        justify-content: space-between;
        gap: 20px;
      }
      .mobile-call {
        display: none;
      }
      @media(max-width:980px) {
        .menu-toggle {
          display: block;
        }
        .nav-call {
          display: none;
        }
        .nav-links {
          display: none;
          position: absolute;
          top: 84px;
          left: 0;
          right: 0;
          background: #061120;
          padding: 12px 5% 22px;
          flex-direction: column;
          align-items: stretch;
        }
        .nav-links.open {
          display: flex;
        }
        .nav-links a {
          padding: 12px 0;
        }
        .hero-grid,.split,.form-shell {
          grid-template-columns: 1fr;
        }
        .hero-panel {
          min-height: 300px;
        }
        .cards {
          grid-template-columns: 1fr 1fr;
        }
        .feature-grid {
          grid-template-columns: 1fr 1fr;
        }
        .trust-grid {
          grid-template-columns: 1fr 1fr;
        }
        .steps {
          grid-template-columns: 1fr 1fr;
        }
        .cta-grid {
          grid-template-columns: 1fr;
        }
        .footer-grid {
          grid-template-columns: 1fr 1fr;
        }
        .footer-grid>div:first-child {
          grid-column: 1/-1;
        }
        .mobile-call {
          display: block;
          position: fixed;
          z-index: 40;
          bottom: 15px;
          left: 5%;
          right: 5%;
          background: var(--red);
          color: #fff;
          text-align: center;
          padding: 14px;
          border-radius: 6px;
          text-decoration: none;
          font-weight: 900;
          box-shadow: 0 10px 35px rgba(0,0,0,0.3);
        }
        body {
          padding-bottom: 68px;
        }
      }
      @media(max-width:600px) {
        .topline {
          font-size: 10px;
        }
        .brand img {
          width: 145px;
        }
        .nav {
          min-height: 72px;
        }
        .nav-links {
          top: 72px;
        }
        .hero {
          padding: 60px 0;
        }
        .hero h1,.page-hero h1 {
          letter-spacing: -2px;
        }
        .hero-panel {
          min-height: 270px;
          padding: 24px;
        }
        .trust-grid,.cards,.feature-grid,.steps,.footer-grid,.fields {
          grid-template-columns: 1fr;
        }
        .trust-item {
          border-right: 0;
          border-bottom: 1px solid rgba(255,255,255,0.14);
        }
        .footer-grid>div:first-child {
          grid-column: auto;
        }
        .cta-band {
          background: var(--red);
        }
        .section {
          padding: 62px 0;
        }
        .dashboard {
          grid-template-columns: 1fr;
        }
        .footer-bottom {
          flex-direction: column;
        }
      }
      @media(prefers-reduced-motion:reduce) {
        html {
          scroll-behavior: auto;
        }
        * {
          transition: none!important;
        }
      }
      .hero {
        background: #071426 url(/assets/customer-breakdown.webp) 50% 42% / cover no-repeat;
        padding: 100px 0 86px;
      }
      .hero:before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg,#06101e 0%,rgba(6,16,30,0.96) 35%,rgba(6,16,30,0.55) 62%,rgba(6,16,30,0.06) 100%);
      }
      .hero:after {
        left: 0;
        right: 0;
        top: auto;
        bottom: 0;
        width: auto;
        height: 5px;
        opacity: 1;
        background: linear-gradient(90deg,var(--red) 0 38%,transparent 38%);
        mask-image: none;
      }
      .hero-panel {
        min-height: auto;
        align-self: end;
        margin: 0 0 -45px auto;
        width: min(360px,100%);
        border-color: rgba(255,255,255,0.22);
        border-radius: 10px;
        background: rgba(7,20,38,0.86);
        backdrop-filter: blur(12px);
        padding: 28px;
      }
      .hero-panel:before {
        top: -30px;
        right: 25px;
        width: 92px;
        height: 92px;
        opacity: 1;
      }
      .intro-strip {
        background: #fff;
        padding: 34px 0;
        border-bottom: 1px solid var(--line);
      }
      .intro-grid {
        display: grid;
        grid-template-columns: 1.3fr repeat(3,0.65fr);
        gap: 30px;
        align-items: center;
      }
      .intro-grid>p {
        font-size: 18px;
        font-weight: 700;
        line-height: 1.4;
        margin: 0;
      }
      .mini-proof {
        border-left: 1px solid var(--line);
        padding-left: 24px;
      }
      .mini-proof b {
        display: block;
        color: var(--red);
        font-size: 28px;
        line-height: 1;
      }
      .mini-proof span {
        font-size: 12px;
        color: var(--muted);
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 1px;
      }
      .photo-story {
        display: grid;
        grid-template-columns: 1.05fr 0.95fr;
        gap: 0;
        background: var(--navy);
        color: #fff;
        min-height: 520px;
      }
      .photo-story.reverse {
        grid-template-columns: 0.95fr 1.05fr;
      }
      .photo-story.reverse .story-image {
        order: 2;
      }
      .story-image {
        width: 100%;
        height: 100%;
        min-height: 460px;
        object-fit: cover;
      }
      .story-copy {
        padding: 70px clamp(35px,6vw,90px);
        display: flex;
        flex-direction: column;
        justify-content: center;
      }
      .story-copy h2 {
        font-size: clamp(34px,4vw,50px);
        line-height: 1.04;
        margin: 10px 0 18px;
      }
      .story-copy p {
        color: #bdc7d3;
      }
      .check-list {
        list-style: none;
        padding: 0;
        margin: 20px 0;
      }
      .check-list li {
        padding: 8px 0 8px 28px;
        position: relative;
      }
      .check-list li:before {
        content: "✓";
        position: absolute;
        left: 0;
        color: var(--red);
        font-weight: 900;
      }
      .outcomes {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 18px;
      }
      .outcome {
        background: #fff;
        border-top: 4px solid var(--red);
        padding: 28px;
        box-shadow: var(--shadow);
      }
      .outcome strong {
        display: block;
        font-size: 22px;
        line-height: 1.15;
        margin-bottom: 10px;
      }
      .outcome p {
        color: var(--muted);
        font-size: 14px;
        margin: 0;
      }
      .quote {
        background: #fff;
        border-radius: 10px;
        padding: 38px;
        box-shadow: var(--shadow);
        position: relative;
      }
      .quote:before {
        content: "“";
        position: absolute;
        top: -15px;
        left: 25px;
        color: var(--red);
        font-size: 80px;
        font-weight: 900;
        line-height: 1;
      }
      .quote p {
        font-size: 20px;
        line-height: 1.5;
        margin: 18px 0;
      }
      .quote small {
        color: var(--muted);
        font-weight: 700;
      }
      .page-hero {
        position: relative;
        overflow: hidden;
        padding: 88px 0;
      }
      .page-hero:before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg,#071426 0%,rgba(7,20,38,0.93) 48%,rgba(7,20,38,0.25) 100%);
      }
      .page-hero .wrap {
        position: relative;
        z-index: 1;
      }
      .breakdown-page .page-hero {
        background: #071426 url(/assets/customer-breakdown.webp) center/cover no-repeat;
      }
      .maintenance-page .page-hero {
        background: #071426 url(/assets/planned-maintenance.png) center/cover no-repeat;
      }
      .about-page .page-hero,.contact-page .page-hero {
        background: #071426 url(/assets/customer-consultation.png) center/cover no-repeat;
      }
      .software-page .page-hero,.asset-page .page-hero {
        background: #071426 url(/assets/customer-breakdown.webp) center/cover no-repeat;
      }
      @media(max-width:980px) {
        .hero-panel {
          min-height: auto;
          margin-top: 40px;
        }
        .intro-grid {
          grid-template-columns: 1fr 1fr;
        }
        .intro-grid>p {
          grid-column: 1/-1;
        }
        .photo-story,.photo-story.reverse {
          grid-template-columns: 1fr;
        }
        .photo-story.reverse .story-image {
          order: 0;
        }
        .story-image {
          min-height: 390px;
        }
        .outcomes {
          grid-template-columns: 1fr 1fr;
        }
      }
      @media(max-width:600px) {
        .hero {
          background-position: 65% center;
        }
        .hero:before {
          background: linear-gradient(90deg,rgba(6,16,30,0.97),rgba(6,16,30,0.78));
        }
        .hero-panel {
          min-height: auto;
        }
        .intro-grid,.outcomes {
          grid-template-columns: 1fr;
        }
        .intro-grid>p {
          grid-column: auto;
        }
        .mini-proof {
          border-left: 0;
          border-top: 1px solid var(--line);
          padding: 18px 0 0;
        }
        .story-image {
          min-height: 270px;
        }
        .story-copy {
          padding: 48px 6%;
        }
      }
      .app-showcase {
        padding: 76px 0;
        background: linear-gradient(135deg,#071426,#0d2947);
        color: #fff;
        overflow: hidden;
      }
      .app-showcase-grid {
        display: grid;
        grid-template-columns: 0.8fr 1.2fr;
        gap: 54px;
        align-items: center;
      }
      .app-showcase h2 {
        font-size: clamp(36px,4vw,52px);
        line-height: 1.03;
        margin: 10px 0 18px;
      }
      .app-showcase p {
        color: #c4ceda;
      }
      .app-showcase img {
        width: 100%;
        border-radius: 14px;
        box-shadow: 0 28px 75px rgba(0,0,0,0.45);
        border: 1px solid rgba(255,255,255,0.15);
      }
      .about-detail {
        padding: 80px 0;
        background: #f4f6f8;
      }
      .about-pillars {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 20px;
      }
      .about-pillars article {
        background: #fff;
        border-top: 4px solid var(--red);
        padding: 30px;
        box-shadow: var(--shadow);
      }
      .about-pillars b {
        color: var(--red);
        font-size: 13px;
        letter-spacing: 2px;
      }
      .about-pillars h3 {
        font-size: 22px;
        line-height: 1.15;
        margin: 13px 0;
      }
      .about-pillars p,.about-capabilities p {
        color: var(--muted);
      }
      .about-capabilities {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        margin-top: 20px;
      }
      .about-capabilities>div {
        background: var(--navy);
        color: #fff;
        padding: 32px;
        border-radius: 8px;
      }
      .about-capabilities h3 {
        font-size: 23px;
        margin-top: 0;
      }
      .about-capabilities p {
        color: #c4ceda;
        margin-bottom: 0;
      }
      .emergency-box {
        position: relative;
        overflow: hidden;
        background: linear-gradient(155deg,#ed1c24 0,#c81018 42%,#0a2039 42.3%,#071426 100%)!important;
        border-radius: 14px!important;
        padding: 42px 36px!important;
        box-shadow: 0 24px 60px rgba(7,20,38,0.24);
        border: 1px solid rgba(255,255,255,0.14);
      }
      .emergency-box:after {
        content: "24 / 7";
        position: absolute;
        right: -16px;
        bottom: -6px;
        font-size: 78px;
        font-weight: 900;
        color: rgba(255,255,255,0.06);
        letter-spacing: -5px;
        pointer-events: none;
      }
      .emergency-box h2 {
        font-size: 38px!important;
        margin-top: 16px;
      }
      .emergency-box .emergency-number {
        display: inline-block;
        margin: 18px 0;
        padding: 12px 16px;
        background: #fff;
        color: var(--red);
        border-radius: 6px;
        box-shadow: 0 12px 30px rgba(0,0,0,0.2);
      }
      .emergency-box li {
        margin: 9px 0;
      }
      .contact-form {
        border-top: 5px solid var(--red);
      }
      @media(max-width:900px) {
        .app-showcase-grid,.about-capabilities {
          grid-template-columns: 1fr;
        }
        .app-showcase-grid img {
          order: -1;
        }
        .about-pillars {
          grid-template-columns: 1fr;
        }
        .emergency-box {
          min-height: auto;
        }
      }
      .home-story .story-copy {
        background: radial-gradient(circle at 20% 20%,#0e2b4d,#061426 70%);
      }
      .home-story .story-copy h2 {
        font-size: clamp(42px,5vw,66px);
        text-transform: uppercase;
        letter-spacing: -2px;
      }
      .results-section {
        padding: 55px 0;
        background: #eef1f4;
      }
      .proof-grid {
        display: grid;
        grid-template-columns: 1.25fr repeat(4,1fr);
        gap: 0;
        align-items: center;
      }
      .proof-grid>div {
        min-height: 150px;
        padding: 18px 24px;
        border-right: 1px solid #c8d0d9;
        display: flex;
        flex-direction: column;
        justify-content: center;
      }
      .proof-grid>div:last-child {
        border: 0;
      }
      .proof-grid h2 {
        font-size: 38px;
        line-height: 1;
        margin: 8px 0;
      }
      .proof-grid p {
        font-size: 14px;
        color: var(--muted);
        margin: 0;
      }
      .proof-item {
        text-align: center;
      }
      .proof-item b {
        font-size: 31px;
        color: var(--navy);
        line-height: 1;
      }
      .proof-item strong {
        font-size: 14px;
        text-transform: uppercase;
        margin: 10px 0 3px;
      }
      .proof-item span {
        font-size: 12px;
        color: var(--muted);
        line-height: 1.35;
      }
      .industries {
        padding: 38px 0;
        background: #fff;
        text-align: center;
      }
      .industries h2 {
        font-size: 27px;
        text-transform: uppercase;
        letter-spacing: -0.8px;
        margin: 0 0 28px;
      }
      .industry-grid {
        display: grid;
        grid-template-columns: repeat(6,1fr);
      }
      .industry-grid span {
        padding: 18px 12px;
        border-right: 1px solid var(--line);
        font-size: 12px;
        font-weight: 900;
      }
      .industry-grid span:last-child {
        border: 0;
      }
      .industry-grid span:before {
        content: "◆";
        display: block;
        color: var(--navy);
        font-size: 26px;
        margin-bottom: 8px;
      }
      body:not(.contact-page) .page-hero {
        min-height: 440px;
        display: flex;
        align-items: center;
      }
      .maintenance-page .page-hero {
        background-position: center 45%;
      }
      .software-page .page-hero {
        background-image: url(/assets/downtime-app-interface.webp);
        background-position: center;
      }
      .asset-page .page-hero {
        background-image: url(/assets/asset-app-interface.webp);
        background-position: center;
      }
      footer {
        border-top: 1px solid #253249;
      }
      .footer-grid {
        grid-template-columns: 1.35fr 1fr 1fr;
      }
      .footer-grid p {
        max-width: 360px;
      }
      @media(max-width:980px) {
        .proof-grid {
          grid-template-columns: 1fr 1fr;
        }
        .proof-grid>div {
          border-bottom: 1px solid #c8d0d9;
        }
        .proof-grid>div:first-child {
          grid-column: 1/-1;
        }
        .industry-grid {
          grid-template-columns: repeat(3,1fr);
        }
      }
      @media(max-width:600px) {
        .proof-grid,.industry-grid {
          grid-template-columns: 1fr;
        }
        .proof-grid>div:first-child {
          grid-column: auto;
        }
        .proof-grid>div,.industry-grid span {
          border-right: 0;
          border-bottom: 1px solid var(--line);
        }
        .home-story .story-copy h2 {
          font-size: 40px;
        }
        .page-hero {
          min-height: 360px!important;
        }
        .cta-band {
          background: linear-gradient(145deg,var(--red) 0 58%,var(--navy) 58%);
        }
      }
      .service-hero {
        position: relative;
        isolation: isolate;
        min-height: 560px;
        display: flex;
        align-items: center;
        color: #fff;
        background-color: var(--navy);
        background-size: cover;
        background-position: center;
        overflow: hidden;
      }
      .service-hero:before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        background: linear-gradient(90deg,#061426 0%,rgba(6,20,38,0.94) 40%,rgba(6,20,38,0.2) 75%);
      }
      .service-hero .wrap {
        position: relative;
      }
      .service-hero h1 {
        font-size: clamp(48px,6vw,76px);
        line-height: 0.96;
        text-transform: uppercase;
        letter-spacing: -3px;
        margin: 14px 0 24px;
        max-width: 720px;
      }
      .service-hero p {
        font-size: 19px;
        line-height: 1.5;
        max-width: 580px;
        color: #eef2f6;
      }
      .service-hero .btn {
        margin-top: 20px;
      }
      .breakdown-hero {
        background-image: url(/assets/planned-maintenance.png);
        background-position: center 42%;
      }
      .software-hero {
        background-image: url(/assets/customer-breakdown.webp);
        background-position: center;
      }
      .contact-hero {
        background-image: url(/assets/planned-maintenance.png);
        min-height: 500px;
        background-position: center 35%;
      }
      .content-split {
        display: grid;
        grid-template-columns: 0.85fr 1.15fr;
        gap: 70px;
        align-items: center;
      }
      .content-split h2 {
        font-size: clamp(38px,4vw,55px);
        line-height: 1.02;
        text-transform: uppercase;
        letter-spacing: -1.8px;
        margin: 12px 0 25px;
      }
      .content-split p {
        color: var(--muted);
        font-size: 17px;
      }
      .content-split>img {
        width: 100%;
        min-height: 390px;
        object-fit: cover;
        box-shadow: var(--shadow);
      }
      .breakdown-features {
        grid-template-columns: repeat(4,1fr);
      }
      .breakdown-features article:nth-last-child(-n+3) {
        transform: translateX(50%);
      }
      .software-features {
        grid-template-columns: repeat(3,1fr);
      }
      .process-section .step-no {
        color: var(--navy);
        background: #f1f3f6;
      }
      .process-section .step p {
        color: var(--muted);
      }
      .process-section .steps.three {
        grid-template-columns: repeat(3,1fr);
        max-width: 850px;
        margin: auto;
      }
      .call-info {
        text-align: center;
        margin-top: 55px;
      }
      .call-info h2,.proof-band h2,.contact-next h2 {
        text-transform: uppercase;
      }
      .call-info>div {
        display: grid;
        grid-template-columns: repeat(6,1fr);
        gap: 10px;
      }
      .call-info span {
        border: 1px solid var(--line);
        padding: 16px 10px;
        font-size: 12px;
      }
      .call-info span::first-letter {
        color: var(--red);
      }
      .proof-band {
        padding: 48px 0;
        background: #f1f3f6;
        text-align: center;
      }
      .proof-band h2 {
        margin-top: 0;
      }
      .proof-band .industry-grid span:before {
        content: "●";
      }
      .software-intro {
        grid-template-columns: 0.9fr 1.1fr;
      }
      .software-intro>img {
        min-height: 0;
        border-radius: 10px;
      }
      .mini-benefits {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        margin-top: 30px;
      }
      .mini-benefits span {
        text-align: center;
        font-size: 26px;
        color: var(--navy);
        padding: 12px;
        border-right: 1px solid var(--line);
      }
      .mini-benefits span:last-child {
        border: 0;
      }
      .mini-benefits b {
        display: block;
        font-size: 11px;
        margin-top: 8px;
      }
      .benefit-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 22px;
      }
      .benefit-grid span {
        font-size: 14px;
        color: #c3ced9;
      }
      .benefit-grid b {
        display: block;
        color: #fff;
        font-size: 17px;
        text-transform: uppercase;
      }
      .contact-stage {
        background: var(--navy);
        padding: 0 0 70px;
      }
      .contact-stage .form-shell {
        position: relative;
        margin-top: -70px;
        z-index: 2;
        align-items: stretch;
      }
      .contact-stage .emergency-box {
        border: 2px solid var(--red);
        border-radius: 5px!important;
        background: linear-gradient(#ed1c24 0 74px,#071426 74px)!important;
        padding: 0 36px 34px!important;
        text-align: left;
      }
      .emergency-title {
        height: 74px;
        display: flex;
        align-items: center;
        font-size: 22px;
        font-weight: 900;
        text-transform: uppercase;
      }
      .contact-stage .emergency-box h2 {
        text-align: center;
        font-size: 25px!important;
        margin: 28px 0 15px;
      }
      .contact-stage .emergency-number {
        text-align: center;
        background: transparent;
        color: #fff;
        box-shadow: none;
        font-size: 42px;
        margin: auto;
      }
      .response-line {
        display: block;
        text-align: center;
        color: var(--red);
        font-size: 19px;
        margin: 10px 0 28px;
      }
      .contact-stage .emergency-box .btn {
        width: 100%;
        margin-top: 20px;
      }
      .contact-stage .emergency-box li::marker {
        color: var(--red);
      }
      .contact-stage .contact-form {
        border-radius: 5px;
        border: 0;
        padding: 36px;
      }
      .contact-stage .contact-form .section-head {
        margin-bottom: 20px;
      }
      .contact-stage .contact-form .section-head h2 {
        text-transform: uppercase;
      }
      .contact-stage .contact-form .btn {
        width: 100%;
      }
      .service-card-grid {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 18px;
      }
      .service-card-grid article {
        border: 1px solid var(--line);
        padding: 26px;
      }
      .service-card-grid b {
        display: grid;
        place-items: center;
        width: 44px;
        height: 44px;
        border: 2px solid var(--red);
        border-radius: 50%;
        color: var(--red);
      }
      .service-card-grid h3 {
        text-transform: uppercase;
        line-height: 1.2;
      }
      .service-card-grid p {
        font-size: 14px;
        color: var(--muted);
      }
      .contact-next {
        padding: 55px 0;
        color: #fff;
        text-align: center;
        background: linear-gradient(rgba(7,20,38,0.86),rgba(7,20,38,0.9)),url(/assets/customer-breakdown.webp) center/cover;
      }
      .contact-next .steps.three {
        grid-template-columns: repeat(3,1fr);
        max-width: 900px;
        margin: auto;
      }
      .contact-next .step p {
        color: #c7d0da;
      }
      @media(max-width:980px) {
        .service-hero {
          min-height: 480px;
        }
        .content-split {
          grid-template-columns: 1fr;
        }
        .breakdown-features {
          grid-template-columns: 1fr 1fr;
        }
        .breakdown-features article:nth-last-child(-n+3) {
          transform: none;
        }
        .call-info>div {
          grid-template-columns: 1fr 1fr 1fr;
        }
        .service-card-grid {
          grid-template-columns: 1fr 1fr;
        }
        .contact-stage .form-shell {
          margin-top: -40px;
        }
        .mini-benefits {
          grid-template-columns: 1fr 1fr;
        }
      }
      @media(max-width:600px) {
        .service-hero {
          min-height: 500px;
          background-position: 62% center;
        }
        .service-hero:before {
          background: linear-gradient(90deg,rgba(6,20,38,0.97),rgba(6,20,38,0.68));
        }
        .service-hero h1 {
          font-size: 45px;
          letter-spacing: -2px;
        }
        .content-split>img {
          min-height: 250px;
        }
        .breakdown-features,.software-features,.service-card-grid,.call-info>div,.contact-next .steps.three,.process-section .steps.three,.footer-grid {
          grid-template-columns: 1fr;
        }
        .footer-grid>div:first-child {
          grid-column: auto;
        }
        .contact-stage .form-shell {
          margin-top: 0;
          width: 100%;
        }
        .contact-stage {
          padding-top: 20px;
        }
        .contact-stage .emergency-number {
          font-size: 31px;
        }
        .contact-stage .contact-form {
          padding: 28px 20px;
        }
        .mini-benefits,.benefit-grid {
          grid-template-columns: 1fr;
        }
        .mini-benefits span {
          border-right: 0;
          border-bottom: 1px solid var(--line);
        }
      }
      .ui-icon {
        display: block;
        width: 1em;
        height: 1em;
        object-fit: contain;
        filter: brightness(0) saturate(100%);
      }
      .trust-icon {
        width: 46px;
        height: 46px;
        display: grid;
        place-items: center;
      }
      .trust-icon .ui-icon {
        font-size: 30px;
        filter: brightness(0) invert(18%) sepia(99%) saturate(6124%) hue-rotate(354deg) brightness(97%) contrast(91%);
      }
      .icon-ring,.feature-icon {
        width: 48px;
        height: 48px;
        border: 2px solid var(--red);
        border-radius: 50%;
        display: grid;
        place-items: center;
        margin-bottom: 16px;
      }
      .icon-ring .ui-icon,.feature-icon .ui-icon {
        font-size: 22px;
        filter: brightness(0) saturate(100%) invert(18%) sepia(99%) saturate(6124%) hue-rotate(354deg) brightness(97%) contrast(91%);
      }
      .feature-icon {
        width: 42px;
        height: 42px;
        float: left;
        margin: 0 14px 12px 0;
      }
      .feature {
        overflow: hidden;
      }
      .feature h3 {
        min-height: 42px;
        display: flex;
        align-items: center;
      }
      .step-no {
        position: relative;
        width: 88px;
        height: 88px;
        background: #f1f3f6;
        border: 0!important;
      }
      .step-no .ui-icon {
        font-size: 36px;
        filter: none;
      }
      .section-dark .step-no .ui-icon,.contact-next .step-no .ui-icon {
        filter: brightness(0) invert(1);
      }
      .step-no small {
        position: absolute;
        top: -7px;
        left: -6px;
        background: var(--red);
        color: #fff;
        width: 25px;
        height: 25px;
        border-radius: 50%;
        display: grid;
        place-items: center;
        font-size: 11px;
        font-weight: 900;
      }
      .steps .step:not(:last-child) {
        position: relative;
      }
      .steps .step:not(:last-child):after {
        content: "····→";
        position: absolute;
        right: -28px;
        top: 28px;
        color: var(--navy);
        font-weight: 900;
        letter-spacing: 3px;
      }
      .section-dark .steps .step:not(:last-child):after,.contact-next .steps .step:not(:last-child):after {
        color: #fff;
      }
      .proof-item>.ui-icon {
        font-size: 34px;
        margin: 0 auto 10px;
        filter: none;
      }
      .industries .industry-grid span:before,.proof-band .industry-grid span:before {
        display: none;
      }
      .industries .industry-grid .ui-icon,.proof-band .industry-grid .ui-icon {
        font-size: 28px;
        margin: 0 auto 9px;
        filter: none;
      }
      .proof-band .industry-grid .ui-icon {
        font-size: 34px;
      }
      .contact-lines a {
        display: flex;
        align-items: center;
        gap: 12px;
      }
      .contact-lines .ui-icon {
        font-size: 24px;
        filter: brightness(0) invert(1);
      }
      .footer-grid {
        grid-template-columns: 1.35fr 0.8fr 0.7fr 1fr 0.9fr;
        gap: 30px;
      }
      .footer-seal {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 14px;
        color: #fff;
      }
      .footer-seal span {
        width: 64px;
        height: 64px;
        border: 2px solid #fff;
        border-radius: 50%;
        display: grid;
        place-items: center;
        font-weight: 900;
      }
      .footer-seal b {
        font-size: 17px;
        line-height: 1.2;
      }
      .section-head h2:after,.call-info h2:after,.proof-band h2:after,.contact-next h2:after {
        content: "";
        display: block;
        width: 42px;
        height: 3px;
        background: var(--red);
        margin: 14px auto 0;
      }
      .emergency-title {
        gap: 10px;
      }
      .emergency-title:before {
        content: "";
        width: 28px;
        height: 34px;
        background: url(/assets/icons/bolt.svg) center/contain no-repeat;
        filter: brightness(0) invert(1);
      }
      .emergency-number {
        display: flex!important;
        align-items: center;
        justify-content: center;
        gap: 14px;
      }
      .emergency-number:before {
        content: "";
        width: 48px;
        height: 48px;
        border-radius: 50%;
        background: var(--red) url(/assets/icons/phone.svg) center/21px no-repeat;
        filter: none;
      }
      @media(max-width:980px) {
        .footer-grid {
          grid-template-columns: 1fr 1fr;
        }
        .footer-seal {
          justify-content: flex-start;
        }
        .steps .step:after {
          display: none;
        }
      }
      @media(max-width:600px) {
        .footer-grid {
          grid-template-columns: 1fr;
        }
        .feature h3 {
          min-height: auto;
        }
        .footer-seal {
          padding-top: 10px;
        }
        .industry-grid .ui-icon {
          font-size: 34px;
        }
      }
      .maintenance-hero,.about-hero {
        background-image: url(/assets/planned-maintenance.png);
        background-position: center 38%;
      }
      .asset-hero {
        background-image: url(/assets/customer-breakdown.webp);
        background-position: center;
      }
      .maintenance-page .topline,.software-page .topline,.contact-page .topline {
        display: none;
      }
      .maintenance-features {
        grid-template-columns: repeat(4,1fr);
      }
      .maintenance-features .wide-feature {
        grid-column: 1/-1;
      }
      .maintenance-features .wide-feature h3 {
        min-height: auto;
      }
      .industry-grid.five {
        grid-template-columns: repeat(5,1fr);
      }
      .asset-control {
        padding-bottom: 35px;
      }
      .asset-product {
        display: grid;
        grid-template-columns: 0.8fr 1.2fr;
        align-items: center;
        gap: 45px;
        background: linear-gradient(120deg,#071426,#0d2947);
        color: #fff;
        border-radius: 10px;
        padding: 45px;
        box-shadow: var(--shadow);
      }
      .asset-product h2 {
        font-size: clamp(38px,4vw,54px);
        line-height: 1;
        text-transform: uppercase;
      }
      .asset-product p {
        color: #c4ceda;
      }
      .asset-product img {
        border-radius: 10px;
        box-shadow: 0 24px 50px rgba(0,0,0,0.38);
      }
      .asset-features {
        grid-template-columns: repeat(5,1fr);
      }
      .asset-features .feature {
        padding: 23px 18px;
      }
      .asset-features .feature h3 {
        font-size: 16px;
        line-height: 1.15;
        text-transform: uppercase;
      }
      .about-proof {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 15px;
      }
      .about-proof>div {
        padding: 22px;
        border-left: 1px solid var(--line);
      }
      .about-proof .icon-ring {
        float: left;
        margin: 0 14px 28px 0;
      }
      .about-proof h3 {
        text-transform: uppercase;
        margin: 5px 0;
      }
      .about-proof p {
        font-size: 13px;
        margin: 0;
      }
      .about-who {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 65px;
        align-items: center;
      }
      .about-who h2,.about-action h2,.coverage-band h2,.choose-row h2,.capability-row h2 {
        font-size: clamp(34px,4vw,48px);
        line-height: 1.05;
        text-transform: uppercase;
      }
      .about-who aside {
        background: var(--navy);
        color: #fff;
        padding: 46px;
      }
      .about-who aside p {
        color: #c4ceda;
      }
      .values-grid {
        display: grid;
        grid-template-columns: repeat(5,1fr);
        gap: 18px;
      }
      .values-grid article {
        border: 1px solid var(--line);
        padding: 25px;
        text-align: center;
      }
      .values-grid .icon-ring {
        margin: 0 auto 16px;
      }
      .values-grid h3 {
        text-transform: uppercase;
        line-height: 1.1;
      }
      .values-grid p {
        font-size: 13px;
        color: var(--muted);
      }
      .about-action {
        background: #f4f6f8;
      }
      .about-action>.wrap {
        display: grid;
        grid-template-columns: 0.7fr 1.3fr;
        align-items: center;
      }
      .about-action>.wrap>div {
        padding: 55px 55px 55px 0;
      }
      .about-action img {
        width: 100%;
        height: 430px;
        object-fit: cover;
      }
      .capability-row {
        display: grid;
        grid-template-columns: 0.45fr 1.55fr;
        gap: 35px;
        align-items: center;
      }
      .capability-row .service-card-grid article {
        border: 0;
        border-left: 1px solid var(--line);
        padding: 18px;
        text-align: center;
      }
      .capability-row .icon-ring {
        margin: 0 auto 12px;
      }
      .capability-row .service-card-grid p {
        display: none;
      }
      .coverage-band {
        background: linear-gradient(90deg,var(--navy) 0 40%,#f4f6f8 40%);
        padding: 55px 0;
      }
      .coverage-band>.wrap {
        display: grid;
        grid-template-columns: 0.65fr 1.35fr;
        gap: 65px;
        align-items: center;
      }
      .coverage-band>.wrap>div:first-child {
        color: #fff;
      }
      .coverage-band>.wrap>div:first-child p {
        color: #c4ceda;
      }
      .coverage-band .industry-grid {
        grid-template-columns: repeat(6,1fr);
      }
      .coverage-band .industry-grid span {
        font-size: 10px;
        text-align: center;
      }
      .coverage-band .industry-grid .ui-icon {
        font-size: 28px;
        margin: 0 auto 10px;
      }
      .choose-row {
        display: grid;
        grid-template-columns: 0.8fr 1.2fr;
        gap: 70px;
        align-items: center;
      }
      .choose-row .check-list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 5px 25px;
      }
      @media(max-width:980px) {
        .maintenance-features,.asset-features {
          grid-template-columns: 1fr 1fr;
        }
        .asset-product,.about-who,.about-action>.wrap,.capability-row,.coverage-band>.wrap,.choose-row {
          grid-template-columns: 1fr;
        }
        .values-grid {
          grid-template-columns: 1fr 1fr;
        }
        .coverage-band {
          background: linear-gradient(var(--navy) 0 34%,#f4f6f8 34%);
        }
        .coverage-band>.wrap {
          gap: 70px;
        }
        .coverage-band .industry-grid {
          grid-template-columns: repeat(3,1fr);
        }
        .industry-grid.five {
          grid-template-columns: repeat(3,1fr);
        }
      }
      @media(max-width:600px) {
        .maintenance-features,.asset-features,.values-grid,.about-proof,.coverage-band .industry-grid,.industry-grid.five,.choose-row .check-list {
          grid-template-columns: 1fr;
        }
        .asset-product {
          padding: 28px 20px;
        }
        .about-action>.wrap>div {
          padding: 48px 0;
        }
        .about-action img {
          height: 270px;
        }
        .coverage-band {
          background: linear-gradient(var(--navy) 0 28%,#f4f6f8 28%);
        }
      }
      .benefit-grid span {
        position: relative;
        padding-left: 48px;
        min-height: 48px;
      }
      .benefit-grid span>.ui-icon {
        position: absolute;
        left: 0;
        top: 2px;
        font-size: 30px;
        filter: brightness(0) invert(1);
      }
      .call-info span {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
      }
      .call-info span>.ui-icon {
        width: 15px;
        flex: 0 0 15px;
        filter: brightness(0) saturate(100%) invert(18%) sepia(99%) saturate(6124%) hue-rotate(354deg) brightness(97%) contrast(91%);
      }
      .coverage-map {
        position: relative;
        width: 210px;
        height: 150px;
        margin: 25px auto 0;
      }
      .coverage-map>.ui-icon {
        width: 100%;
        height: 100%;
        filter: brightness(0) invert(1);
        opacity: 0.95;
      }
      .coverage-map i {
        position: absolute;
        width: 12px;
        height: 12px;
        background: var(--red);
        border: 3px solid #fff;
        border-radius: 50%;
        box-shadow: 0 0 0 5px rgba(237,28,36,0.25);
      }
      .coverage-map i:nth-of-type(1) {
        left: 48%;
        top: 23%;
      }
      .coverage-map i:nth-of-type(2) {
        left: 58%;
        top: 52%;
      }
      .coverage-map i:nth-of-type(3) {
        left: 40%;
        top: 72%;
      }
      .contact-lines .ui-icon {
        width: 48px;
        height: 48px;
        padding: 13px;
        border: 2px solid #fff;
        border-radius: 50%;
      }
      body.modal-open {
        overflow: hidden;
      }
      .contact-modal {
        position: fixed;
        inset: 0;
        z-index: 100;
        display: grid;
        place-items: center;
        padding: 28px;
        opacity: 1;
        visibility: visible;
        transition: opacity 0.22s ease,visibility 0.22s ease;
      }
      .contact-modal[aria-hidden=true] {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
      }
      .modal-backdrop {
        position: absolute;
        inset: 0;
        background: rgba(2,9,17,0.82);
        backdrop-filter: blur(8px);
      }
      .modal-dialog {
        position: relative;
        z-index: 1;
        width: min(1050px,96vw);
        max-height: 92vh;
        overflow: auto;
        display: grid;
        grid-template-columns: 0.82fr 1.18fr;
        background: #fff;
        border-radius: 12px;
        box-shadow: 0 35px 100px rgba(0,0,0,0.55);
      }
      .modal-close {
        position: absolute;
        right: 15px;
        top: 13px;
        z-index: 3;
        width: 42px;
        height: 42px;
        border: 0;
        border-radius: 50%;
        background: var(--red);
        color: #fff;
        font-size: 28px;
        line-height: 1;
        cursor: pointer;
      }
      .modal-emergency {
        position: relative;
        overflow: hidden;
        padding: 48px 42px;
        background: linear-gradient(155deg,#ed1c24 0 76px,#071426 76px);
        color: #fff;
      }
      .modal-emergency:after {
        content: "24/7";
        position: absolute;
        right: -8px;
        bottom: -28px;
        font-size: 100px;
        font-weight: 900;
        color: rgba(255,255,255,0.05);
      }
      .modal-emergency>img {
        width: 165px;
        height: 54px;
        object-fit: contain;
        margin-bottom: 55px;
      }
      .modal-emergency h2 {
        font-size: 42px;
        line-height: 1;
        text-transform: uppercase;
        margin: 13px 0;
      }
      .modal-emergency p {
        color: #c7d2de;
      }
      .modal-emergency>a {
        display: flex;
        align-items: center;
        gap: 16px;
        color: #fff;
        text-decoration: none;
        margin: 28px 0;
        padding: 18px;
        border: 1px solid rgba(255,255,255,0.22);
        background: rgba(255,255,255,0.06);
      }
      .modal-emergency>a .ui-icon {
        width: 42px;
        height: 42px;
        padding: 11px;
        background: var(--red);
        border-radius: 50%;
        filter: brightness(0) invert(1);
      }
      .modal-emergency>a small {
        display: block;
        color: #abb8c7;
        text-transform: uppercase;
        font-size: 10px;
        letter-spacing: 1px;
      }
      .modal-emergency>a span {
        font-size: 27px;
        font-weight: 900;
      }
      .modal-form {
        box-shadow: none;
        border: 0;
        padding: 48px 48px 38px;
        border-radius: 0;
      }
      .modal-form h2 {
        font-size: 40px;
        line-height: 1;
        text-transform: uppercase;
        margin: 10px 0;
      }
      .modal-form>p {
        color: var(--muted);
        margin: 0 0 22px;
      }
      .modal-form textarea {
        min-height: 90px;
      }
      .modal-form .btn {
        width: 100%;
      }
      @media(max-width:760px) {
        .contact-modal {
          padding: 0;
        }
        .modal-dialog {
          width: 100%;
          height: 100%;
          max-height: none;
          border-radius: 0;
          grid-template-columns: 1fr;
          overflow: auto;
        }
        .modal-emergency {
          padding: 32px 24px;
        }
        .modal-emergency>img {
          margin-bottom: 35px;
        }
        .modal-emergency h2 {
          font-size: 34px;
        }
        .modal-form {
          padding: 36px 24px 80px;
        }
        .modal-close {
          position: fixed;
        }
        .modal-form .fields {
          grid-template-columns: 1fr;
        }
        .modal-emergency>a span {
          font-size: 23px;
        }
      }
      .modal-emergency>a .ui-icon {
        background: transparent;
        padding: 9px;
        border: 2px solid var(--red);
        filter: brightness(0) invert(1);
      }
      @media(max-width:600px) {
        .nav {
          gap: 8px;
        }
        .nav-call {
          display: inline-flex;
          padding: 10px 9px;
          font-size: 10px;
        }
        .menu-toggle {
          padding: 8px 9px;
          font-size: 11px;
        }
        .brand img {
          width: 125px;
        }
      }
      body:not([class]) .section-dark {
        background: #fff;
        color: var(--navy);
      }
      body:not([class]) .section-dark .step p {
        color: var(--muted);
      }
      body:not([class]) .section-dark .steps .step:not(:last-child):after,body:not([class]) .section-dark .steps .step:not(:last-child):before {
        color: #26364b;
      }
      .steps {
        gap: 38px;
        align-items: start;
      }
      .step {
        position: relative;
        min-width: 0;
      }
      .step-no {
        width: 86px;
        height: 86px;
        margin: 0 auto 18px;
        background: #f0f2f5!important;
        border: 0!important;
        box-shadow: inset 0 0 0 1px #e3e7ec;
      }
      .step-no .ui-icon,.section-dark .step-no .ui-icon,.contact-next .step-no .ui-icon {
        width: 34px;
        height: 34px;
        filter: brightness(0) saturate(100%) invert(10%) sepia(31%) saturate(1401%) hue-rotate(177deg) brightness(94%) contrast(103%);
      }
      .step-no small {
        top: -6px;
        left: -6px;
        width: 26px;
        height: 26px;
      }
      .steps .step:not(:last-child):after {
        content: "";
        position: absolute;
        width: 58px;
        height: 3px;
        right: -48px;
        top: 42px;
        background: repeating-linear-gradient(90deg,currentColor 0 5px,transparent 5px 10px);
        color: #26364b;
        opacity: 0.8;
      }
      .steps .step:not(:last-child):before {
        content: "›";
        position: absolute;
        right: -52px;
        top: 23px;
        color: #26364b;
        font-size: 34px;
        font-weight: 900;
        line-height: 1;
      }
      .section-dark .steps .step:not(:last-child):after,.section-dark .steps .step:not(:last-child):before,.contact-next .steps .step:not(:last-child):after,.contact-next .steps .step:not(:last-child):before {
        color: #d8e0e9;
      }
      .mini-benefits {
        gap: 0;
        border-top: 1px solid var(--line);
        border-bottom: 1px solid var(--line);
        padding: 20px 0;
      }
      .mini-benefits span {
        min-height: 116px;
        padding: 18px 12px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        font-size: inherit;
      }
      .mini-benefits .ui-icon {
        width: 44px;
        height: 44px;
        margin: 0 auto 14px;
        filter: brightness(0) saturate(100%) invert(18%) sepia(99%) saturate(6124%) hue-rotate(354deg) brightness(97%) contrast(91%);
      }
      .mini-benefits b {
        font-size: 13px;
        line-height: 1.25;
        text-align: center;
        text-transform: uppercase;
        color: var(--navy);
        letter-spacing: 0.2px;
      }
      .maintenance-features {
        grid-template-columns: repeat(3,1fr);
      }
      .maintenance-features .wide-feature {
        grid-column: auto;
      }
      .maintenance-features .wide-feature h3 {
        min-height: 42px;
      }
      .coverage-band {
        background: #f4f6f8;
        padding: 70px 0;
      }
      .coverage-band>.wrap {
        grid-template-columns: 0.68fr 1.32fr;
        gap: 28px;
        align-items: stretch;
      }
      .coverage-band>.wrap>div:first-child {
        position: relative;
        background: linear-gradient(145deg,#0b2949,#061426);
        color: #fff;
        border-radius: 12px;
        padding: 42px;
        overflow: hidden;
        box-shadow: var(--shadow);
      }
      .coverage-band>.wrap>div:first-child:after {
        content: "UK";
        position: absolute;
        right: -8px;
        bottom: -38px;
        font-size: 150px;
        line-height: 1;
        font-weight: 900;
        color: rgba(255,255,255,0.055);
      }
      .coverage-band>.wrap>div:first-child h2 {
        font-size: 42px;
        margin: 10px 0;
      }
      .coverage-band>.wrap>div:nth-child(2) {
        background: #fff;
        border-radius: 12px;
        padding: 38px;
        box-shadow: var(--shadow);
      }
      .coverage-band>.wrap>div:nth-child(2)>h2 {
        margin-top: 0;
      }
      .coverage-band .industry-grid {
        gap: 10px;
      }
      .coverage-band .industry-grid span {
        border: 1px solid var(--line);
        border-radius: 7px;
        padding: 18px 8px;
        background: #fff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        min-height: 112px;
      }
      .coverage-band .industry-grid .ui-icon {
        width: 32px;
        height: 32px;
        filter: brightness(0) saturate(100%) invert(18%) sepia(99%) saturate(6124%) hue-rotate(354deg) brightness(97%) contrast(91%);
      }
      .coverage-map {
        display: none!important;
      }
      .contact-page .proof-band {
        padding: 58px 0;
      }
      .contact-page .proof-band .industry-grid {
        grid-template-columns: repeat(5,1fr);
        max-width: 1080px;
        margin: auto;
      }
      .contact-page .proof-band .industry-grid span {
        min-height: 145px;
        padding: 22px 14px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        font-size: 13px;
        line-height: 1.25;
      }
      .contact-page .proof-band .industry-grid .ui-icon {
        width: 44px;
        height: 44px;
        margin: 0 auto 15px;
      }
      @media(max-width:980px) {
        .steps {
          gap: 30px;
        }
        .steps .step:after,.steps .step:before {
          display: none;
        }
        .maintenance-features {
          grid-template-columns: 1fr 1fr;
        }
        .coverage-band>.wrap {
          grid-template-columns: 1fr;
        }
        .coverage-band .industry-grid {
          grid-template-columns: repeat(3,1fr);
        }
        .contact-page .proof-band .industry-grid {
          grid-template-columns: repeat(3,1fr);
        }
      }
      @media(max-width:600px) {
        .steps,.process-section .steps.three,.contact-next .steps.three {
          grid-template-columns: 1fr;
        }
        .step {
          padding-bottom: 24px;
        }
        .maintenance-features,.coverage-band .industry-grid,.contact-page .proof-band .industry-grid {
          grid-template-columns: 1fr;
        }
        .mini-benefits {
          grid-template-columns: 1fr 1fr;
        }
        .coverage-band {
          padding: 50px 0;
        }
        .coverage-band>.wrap>div:first-child,.coverage-band>.wrap>div:nth-child(2) {
          padding: 30px 22px;
        }
        .contact-page .proof-band .industry-grid span {
          min-height: 120px;
        }
      }
      .topline {
        display: block!important;
        background: var(--red);
        color: #fff;
      }
      .topline strong {
        color: #fff;
      }
      #services .section-head h2 {
        text-transform: uppercase;
      }
      .industry-grid span:before {
        display: none!important;
        content: none!important;
      }
      .maintenance-hero {
        background-image: url(/assets/maintenance-inspection-hero.webp);
        background-position: center;
      }
      .software-hero {
        background-image: url(/assets/downtime-app-interface.webp);
        background-position: center;
      }
      .asset-hero {
        background-image: url(/assets/asset-app-interface.webp);
        background-position: center;
      }
      .about-hero {
        background-image: url(/assets/customer-consultation.png);
        background-position: center;
      }
      .contact-hero {
        background-image: url(/assets/contact-support-hero.webp);
        background-position: center;
        min-height: 500px;
      }
      .company-number {
        display: block;
        color: #d5dce4;
        font-weight: 800;
        letter-spacing: 0.5px;
        margin-top: 12px;
      }
      .legal-hero,.locations-hero {
        padding: 82px 0;
        background: linear-gradient(120deg,#071426,#0d2947);
        color: #fff;
      }
      .legal-hero h1,.locations-hero h1 {
        font-size: clamp(42px,6vw,70px);
        line-height: 1;
        text-transform: uppercase;
        margin: 10px 0;
      }
      .legal-content {
        max-width: 900px;
      }
      .legal-content h2 {
        margin-top: 42px;
        font-size: 27px;
      }
      .legal-content h3 {
        margin-top: 28px;
      }
      .legal-content p,.legal-content li {
        color: #465468;
      }
      .legal-note {
        padding: 18px 20px;
        border-left: 4px solid var(--red);
        background: #f4f6f8;
      }
      .region-grid {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 18px;
      }
      .region-card {
        border: 1px solid var(--line);
        background: #fff;
        padding: 28px;
        border-top: 4px solid var(--red);
        box-shadow: 0 10px 28px rgba(12,28,51,0.06);
      }
      .region-card h2 {
        font-size: 22px;
        margin: 0 0 9px;
      }
      .region-card p {
        color: var(--muted);
        font-size: 14px;
      }
      .region-card a {
        color: #073579;
        font-weight: 900;
        text-decoration: none;
      }
      .locations-hero .actions {
        margin-top: 28px;
      }
      .plc-region-grid .region-card,.electrical-region-grid .region-card {
        position: relative;
        padding-top: 32px;
      }
      .plc-region-grid .region-card::before {
        content: "PLC";
        position: absolute;
        top: 12px;
        right: 16px;
        color: var(--red);
        font-size: 10px;
        font-weight: 900;
        letter-spacing: 1.5px;
      }
      .electrical-region-grid .region-card::before {
        content: "ELECTRICAL";
        position: absolute;
        top: 12px;
        right: 16px;
        color: var(--red);
        font-size: 10px;
        font-weight: 900;
        letter-spacing: 1.5px;
      }
      .plc-region-grid .region-card h3,.electrical-region-grid .region-card h3 {
        margin: 0 0 10px;
        font-size: 21px;
      }
      .plc-region-grid .region-card p,.electrical-region-grid .region-card p {
        min-height: 44px;
      }
      @media(max-width:980px) {
        .mobile-call {
          left: 12px;
          right: 12px;
          bottom: max(12px,env(safe-area-inset-bottom));
          width: auto;
          transform: translateZ(0);
        }
        body {
          padding-bottom: calc(84px + env(safe-area-inset-bottom));
        }
        .region-grid {
          grid-template-columns: 1fr 1fr;
        }
      }
      @media(max-width:600px) {
        .locations-hero .actions {
          align-items: stretch;
          flex-direction: column;
        }
        .locations-hero .actions .btn {
          width: 100%;
        }
        .plc-region-grid .region-card p,.electrical-region-grid .region-card p {
          min-height: 0;
        }
        .region-grid {
          grid-template-columns: 1fr;
        }
        .legal-hero,.locations-hero {
          padding: 58px 0;
        }
        .mobile-call {
          bottom: max(10px,env(safe-area-inset-bottom));
          padding: 13px;
        }
      }
      .hero {
        background-image: url(/assets/home-engineering-hero.webp);
        background-position: center;
      }
      .breakdown-hero {
        background-image: url(/assets/breakdown-response-hero.webp);
        background-position: center;
      }
      .maintenance-hero {
        background-image: url(/assets/planned-maintenance-hero.webp);
        background-position: center;
      }
      .software-hero {
        background-image: url(/assets/downtime-software-hero.webp);
        background-position: center;
      }
      .asset-hero {
        background-image: url(/assets/asset-management-hero.webp);
        background-position: center;
      }
      .about-hero {
        background-image: url(/assets/about-engineering-hero.webp);
        background-position: center;
      }
      .contact-hero {
        background-image: url(/assets/contact-response-hero.webp);
        background-position: center;
        min-height: 500px;
      }
      .region-hero {
        position: relative;
        isolation: isolate;
        min-height: 480px;
        display: flex;
        align-items: center;
        color: #fff;
        background: var(--navy) url(/assets/home-engineering-hero.webp) center/cover no-repeat;
      }
      .region-hero:before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        background: linear-gradient(90deg,#061426 0%,rgba(6,20,38,0.96) 47%,rgba(6,20,38,0.28) 100%);
      }
      .emergency-breakdown-engineer-page .region-hero {
        background-image: url(/assets/breakdown-response-hero.webp);
      }
      .industrial-maintenance-engineer-page .region-hero,.mechanical-maintenance-engineer-page .region-hero {
        background-image: url(/assets/planned-maintenance-hero.webp);
      }
      .control-panel-engineer-page .region-hero {
        background-image: url(/assets/maintenance-inspection-hero.webp);
      }
      .hmi-scada-engineer-page .region-hero {
        background-image: url(/assets/downtime-software-hero.webp);
      }
      .inverter-drive-engineer-page .region-hero {
        background-image: url(/assets/asset-management-hero.webp);
      }
      .production-line-engineer-page .region-hero {
        background-image: url(/assets/home-engineering-hero.webp);
      }
      .machinery-installation-engineer-page .region-hero {
        background-image: url(/assets/contact-response-hero.webp);
      }
      .region-hero h1 {
        max-width: 760px;
        font-size: clamp(44px,6vw,76px);
        line-height: 0.98;
        text-transform: uppercase;
        letter-spacing: -2px;
        margin: 14px 0 22px;
      }
      .region-hero p {
        max-width: 640px;
        color: #e5ebf1;
        font-size: 19px;
      }
      .plc-region-page .region-hero,.electrical-region-page .region-hero,.keyword-region-page .region-hero {
        min-height: 520px;
        padding: 42px 0 58px;
      }
      .region-services {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 18px;
      }
      .region-services article {
        padding: 27px;
        background: #fff;
        border-top: 4px solid var(--red);
        box-shadow: var(--shadow);
      }
      .region-services h2 {
        font-size: 21px;
        margin: 0 0 10px;
      }
      .region-services p {
        font-size: 14px;
        color: var(--muted);
      }
      .region-services a {
        font-weight: 900;
        color: var(--blue);
        text-decoration: none;
      }
      .region-detail {
        display: grid;
        grid-template-columns: 1.1fr 0.9fr;
        gap: 55px;
        align-items: start;
      }
      .region-detail aside {
        padding: 30px;
        background: var(--navy);
        color: #fff;
        border-radius: 8px;
      }
      .region-detail aside h2 {
        color: #fff;
        margin-top: 0;
      }
      .region-detail aside a {
        color: #fff;
        font-weight: 900;
      }
      .region-links {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        margin-top: 22px;
      }
      .region-links a {
        padding: 9px 12px;
        background: #eef2f5;
        color: var(--blue);
        text-decoration: none;
        font-weight: 800;
        border-radius: 4px;
      }
      .breadcrumbs {
        font-size: 13px;
        margin-bottom: 18px;
      }
      .breadcrumbs a {
        color: #fff;
      }
      .region-page .site-header {
        border-bottom: 1px solid rgba(255,255,255,0.08);
      }
      @media(max-width:980px) {
        .region-services {
          grid-template-columns: 1fr 1fr;
        }
        .region-detail {
          grid-template-columns: 1fr;
        }
      }
      @media(max-width:600px) {
        .region-hero {
          min-height: 420px;
          background-position: 68% center;
        }
        .plc-region-page .region-hero,.electrical-region-page .region-hero,.keyword-region-page .region-hero {
          min-height: 0;
          padding: 32px 0 46px;
        }
        .region-hero:before {
          background: linear-gradient(90deg,rgba(6,20,38,0.98),rgba(6,20,38,0.74));
        }
        .region-services {
          grid-template-columns: 1fr;
        }
        .region-hero h1 {
          font-size: 42px;
        }
      }
      .form-trap {
        position: absolute!important;
        left: -10000px!important;
        width: 1px!important;
        height: 1px!important;
        opacity: 0!important;
        pointer-events: none!important;
      }
      .contact-form button:disabled {
        opacity: 0.7;
        cursor: wait;
      }
      .top-whatsapp {
        margin-left: 8px;
      }
      .top-whatsapp a {
        color: #fff;
        text-decoration: underline;
        text-underline-offset: 3px;
        font-weight: 900;
      }
      .whatsapp-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 12px 0 20px;
        padding: 12px 16px;
        border: 1px solid rgba(255,255,255,0.35);
        color: #fff!important;
        text-decoration: none;
        font-weight: 900;
        border-radius: 5px;
      }
      .field-help {
        display: block;
        margin-top: 7px;
        color: var(--muted);
        font-size: 12px;
      }
      .contact-form input[type=file] {
        padding: 11px;
        background: #f7f8fa;
      }
      .example-grid {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 22px;
      }
      .example-card {
        background: #fff;
        border-top: 5px solid var(--red);
        box-shadow: var(--shadow);
        padding: 30px;
      }
      .example-card .example-type {
        color: var(--red);
        font-weight: 900;
        font-size: 11px;
        letter-spacing: 1.3px;
        text-transform: uppercase;
      }
      .example-card h2 {
        font-size: 25px;
      }
      .example-card dl {
        margin: 22px 0;
      }
      .example-card dt {
        font-weight: 900;
        color: var(--navy);
        margin-top: 14px;
      }
      .example-card dd {
        margin: 4px 0 0;
        color: var(--muted);
      }
      .trust-evidence {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 1px;
        background: var(--line);
        border: 1px solid var(--line);
      }
      .trust-evidence div {
        background: #fff;
        padding: 25px;
        text-align: center;
      }
      .trust-evidence strong {
        display: block;
        color: var(--navy);
        font-size: 16px;
      }
      .trust-evidence span {
        display: block;
        color: var(--muted);
        font-size: 13px;
        margin-top: 6px;
      }
      .thank-you-panel {
        max-width: 850px;
        margin: auto;
        text-align: center;
        padding: 70px 40px;
        background: #fff;
        box-shadow: var(--shadow);
        border-top: 6px solid var(--red);
      }
      .thank-you-panel .success-mark {
        width: 86px;
        height: 86px;
        margin: 0 auto 25px;
        display: grid;
        place-items: center;
        border-radius: 50%;
        background: var(--red);
        color: #fff;
        font-size: 44px;
        font-weight: 900;
      }
      .thank-you-panel h1 {
        font-size: clamp(40px,6vw,68px);
        text-transform: uppercase;
        margin: 0 0 18px;
      }
      .thank-you-actions {
        display: flex;
        justify-content: center;
        gap: 12px;
        flex-wrap: wrap;
        margin-top: 30px;
      }
      @media(max-width:980px) {
        .example-grid,.trust-evidence {
          grid-template-columns: 1fr 1fr;
        }
      }
      @media(max-width:600px) {
        .top-whatsapp {
          display: block;
          margin: 4px 0 0;
        }
        .example-grid,.trust-evidence {
          grid-template-columns: 1fr;
        }
        .thank-you-panel {
          padding: 48px 22px;
        }
      }
      .portal-page {
        background: #fff;
      }
      .portal-page .topline {
        background: var(--red);
        color: #fff;
        font-weight: 900;
      }
      .portal-page .site-header {
        position: relative;
      }
      .portal-hero {
        position: relative;
        isolation: isolate;
        overflow: hidden;
        color: #fff;
        background: #061426;
        padding: 34px 0 20px;
        min-height: 565px;
      }
      .portal-hero:before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -2;
        background: linear-gradient(90deg,rgba(6,20,38,0.97) 0%,rgba(6,20,38,0.88) 38%,rgba(6,20,38,0.44) 70%,rgba(6,20,38,0.82) 100%),url(/assets/downtime-software-hero.webp) center/cover no-repeat;
      }
      .portal-hero:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 31%;
        height: 4px;
        background: var(--red);
      }
      .portal-gridline {
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 42%;
        opacity: 0.25;
        background-image: linear-gradient(rgba(237,28,36,0.26) 1px,transparent 1px),linear-gradient(90deg,rgba(237,28,36,0.26) 1px,transparent 1px);
        background-size: 48px 48px;
        mask-image: linear-gradient(90deg,#000,transparent);
      }
      .portal-hero-grid {
        position: relative;
        z-index: 1;
        display: grid;
        grid-template-columns: 0.73fr 1.27fr;
        align-items: center;
        gap: 35px;
      }
      .portal-hero-copy {
        padding: 40px 0 52px;
      }
      .portal-hero h1 {
        font-size: clamp(54px,5.7vw,90px);
        line-height: 0.86;
        letter-spacing: -4px;
        text-transform: uppercase;
        margin: 0 0 26px;
      }
      .portal-hero h1 span {
        color: var(--red);
      }
      .portal-hero h2 {
        margin: 0 0 9px;
        font-size: 22px;
        text-transform: uppercase;
        letter-spacing: 0.4px;
      }
      .portal-hero p {
        max-width: 520px;
        color: #e1e7ed;
        font-size: 16px;
        line-height: 1.5;
      }
      .portal-product-visual {
        position: relative;
        min-height: 485px;
      }
      .portal-product-visual figure {
        margin: 0;
        position: absolute;
        overflow: hidden;
        background: #fff;
        box-shadow: 0 28px 65px rgba(0,0,0,0.5);
      }
      .portal-mobile-shot {
        z-index: 2;
        left: 0;
        bottom: 15px;
        width: 46%;
        aspect-ratio: 1.31;
        border-radius: 10px;
        border: 1px solid rgba(255,255,255,0.2);
      }
      .portal-mobile-shot img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: 53% center;
        transform: scale(1.03);
      }
      .portal-dashboard-shot {
        z-index: 1;
        right: -4%;
        top: 5px;
        width: 70%;
        aspect-ratio: 1.78;
        border: 10px solid #17202a;
        border-bottom-width: 24px;
        border-radius: 16px 16px 6px 6px;
      }
      .portal-dashboard-shot:after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -20px;
        width: 170px;
        height: 6px;
        background: #555;
        border-radius: 0 0 8px 8px;
        transform: translateX(-50%);
      }
      .portal-dashboard-shot img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
      .portal-process {
        padding: 22px 0 28px;
        background: #fff;
        border-bottom: 1px solid #dce2e8;
      }
      .portal-process h2,.portal-area h2 {
        text-transform: uppercase;
        color: var(--navy);
        font-size: clamp(30px,3vw,43px);
        line-height: 1;
        margin: 0 0 24px;
        letter-spacing: -1.2px;
      }
      .portal-process h2 {
        text-align: center;
      }
      .portal-steps {
        display: grid;
        grid-template-columns: repeat(4,1fr);
      }
      .portal-steps article {
        position: relative;
        display: grid;
        grid-template-columns: 70px 25px 1fr;
        align-items: center;
        gap: 9px;
        padding: 7px 22px;
        border-right: 1px solid #ccd3dc;
      }
      .portal-steps article:last-child {
        border: 0;
      }
      .portal-steps article:not(:last-child):after {
        content: "→";
        position: absolute;
        right: -17px;
        z-index: 2;
        color: var(--red);
        background: #fff;
        padding: 0 5px;
        font-size: 32px;
        font-weight: 300;
      }
      .portal-step-icon {
        width: 62px;
        height: 62px;
        display: grid;
        place-items: center;
      }
      .portal-step-icon img {
        width: 48px;
        height: 48px;
      }
      .portal-steps b {
        width: 24px;
        height: 24px;
        display: grid;
        place-items: center;
        background: var(--red);
        color: #fff;
        border-radius: 50%;
        font-size: 13px;
      }
      .portal-steps h3 {
        margin: 0;
        text-transform: uppercase;
        font-size: 14px;
        line-height: 1.15;
      }
      .portal-steps p {
        margin: 4px 0 0;
        color: #576477;
        font-size: 12px;
        line-height: 1.35;
      }
      .portal-area {
        background: linear-gradient(135deg,#f8f9fb,#eef1f4);
        padding: 36px 0 40px;
      }
      .portal-area-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: 35px;
      }
      .portal-benefits {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 12px;
      }
      .portal-benefits article {
        background: #fff;
        border: 1px solid #d9dfe6;
        border-radius: 7px;
        padding: 17px 14px;
        box-shadow: 0 8px 20px rgba(7,20,38,0.06);
      }
      .portal-benefits article>span {
        width: 43px;
        height: 43px;
        display: grid;
        place-items: center;
        background: var(--navy);
        border-radius: 5px;
        margin-bottom: 11px;
      }
      .portal-benefits img {
        width: 25px;
        height: 25px;
        filter: brightness(0) invert(1);
      }
      .portal-benefits h3 {
        text-transform: uppercase;
        font-size: 12px;
        line-height: 1.2;
        margin: 0 0 8px;
      }
      .portal-benefits p {
        font-size: 11px;
        line-height: 1.45;
        color: #647084;
        margin: 0;
      }
      .portal-assurances {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        gap: 14px;
        margin-top: 20px;
        padding-top: 18px;
        border-top: 1px solid #c8d0d9;
      }
      .portal-assurances div {
        display: grid;
        grid-template-columns: 38px 1fr;
        gap: 9px;
        align-items: start;
      }
      .portal-assurances img {
        width: 32px;
        height: 32px;
      }
      .portal-assurances p {
        font-size: 10px;
        line-height: 1.35;
        color: #5d6878;
        margin: 0;
      }
      .portal-assurances strong {
        display: block;
        color: var(--navy);
        text-transform: uppercase;
        font-size: 10px;
        margin-bottom: 3px;
      }
      .portal-area-dashboard {
        margin: 0;
        overflow: hidden;
        border: 1px solid #ccd3db;
        border-radius: 9px;
        background: #fff;
        box-shadow: 0 20px 45px rgba(7,20,38,0.16);
      }
      .portal-area-dashboard img {
        display: block;
        width: 100%;
        aspect-ratio: 1.78;
        object-fit: cover;
      }
      .portal-cta {
        position: relative;
        overflow: hidden;
        background: linear-gradient(95deg,#c80f17,var(--red) 62%,#91060b);
        color: #fff;
        padding: 30px 0;
      }
      .portal-cta:before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(120deg,transparent 0 9%,rgba(255,255,255,0.1) 9% 9.2%,transparent 9.2% 11%,rgba(255,255,255,0.1) 11% 11.2%,transparent 11.2%);
      }
      .portal-cta .wrap {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 30px;
      }
      .portal-cta h2 {
        font-size: clamp(29px,3.4vw,48px);
        line-height: 1;
        text-transform: uppercase;
        margin: 0;
      }
      .portal-cta .btn {
        min-width: 230px;
      }
      @media(max-width:1100px) {
        .portal-hero-grid {
          grid-template-columns: 0.85fr 1.15fr;
        }
        .portal-product-visual {
          min-height: 420px;
        }
        .portal-dashboard-shot {
          width: 72%;
        }
        .portal-mobile-shot {
          width: 50%;
        }
        .portal-steps article {
          grid-template-columns: 50px 22px 1fr;
          padding: 7px 12px;
        }
        .portal-step-icon,.portal-step-icon img {
          width: 42px;
          height: 42px;
        }
        .portal-area-grid {
          grid-template-columns: 1fr;
        }
        .portal-area-dashboard {
          max-width: 850px;
          margin: auto;
        }
      }
      @media(max-width:780px) {
        .portal-hero {
          padding-top: 0;
        }
        .portal-hero-grid {
          grid-template-columns: 1fr;
        }
        .portal-hero-copy {
          padding: 48px 0 10px;
        }
        .portal-hero h1 {
          font-size: 59px;
          letter-spacing: -3px;
        }
        .portal-product-visual {
          min-height: 380px;
        }
        .portal-mobile-shot {
          width: 54%;
          left: 0;
        }
        .portal-dashboard-shot {
          width: 72%;
          right: 0;
        }
        .portal-steps {
          grid-template-columns: 1fr 1fr;
          gap: 0;
        }
        .portal-steps article {
          border-bottom: 1px solid #d4dbe3;
        }
        .portal-steps article:nth-child(2) {
          border-right: 0;
        }
        .portal-steps article:not(:last-child):after {
          display: none;
        }
        .portal-benefits,.portal-assurances {
          grid-template-columns: 1fr 1fr;
        }
        .portal-cta .wrap {
          align-items: flex-start;
          flex-direction: column;
        }
      }
      @media(max-width:520px) {
        .portal-hero-copy {
          padding-top: 38px;
        }
        .portal-hero h1 {
          font-size: 49px;
        }
        .portal-hero h2 {
          font-size: 18px;
        }
        .portal-product-visual {
          min-height: 430px;
        }
        .portal-dashboard-shot {
          top: 0;
          width: 96%;
          right: 2%;
          border-width: 6px;
          border-bottom-width: 16px;
        }
        .portal-mobile-shot {
          width: 84%;
          left: 8%;
          bottom: 0;
        }
        .portal-process {
          padding-top: 30px;
        }
        .portal-steps {
          grid-template-columns: 1fr;
        }
        .portal-steps article {
          border-right: 0;
          padding: 15px 4px;
          grid-template-columns: 54px 25px 1fr;
        }
        .portal-benefits,.portal-assurances {
          grid-template-columns: 1fr 1fr;
        }
        .portal-benefits article {
          padding: 14px 12px;
        }
        .portal-area-dashboard img {
          aspect-ratio: 1.35;
          object-position: left;
          object-fit: cover;
        }
        .portal-cta .btn {
          width: 100%;
        }
      }
      .portal-device-composition {
        position: relative;
        display: flex;
        align-items: center;
        margin: 0;
        min-height: 485px;
        overflow: visible;
      }
      .portal-device-composition img {
        display: block;
        width: 118%;
        max-width: none;
        margin-left: -8%;
        filter: drop-shadow(0 24px 34px rgba(0,0,0,0.28));
      }
      .portal-hero:before {
        background: linear-gradient(90deg,#061426 0%,#061426 31%,rgba(6,20,38,0.94) 40%,rgba(6,20,38,0.1) 58%,rgba(6,20,38,0) 72%),url(/assets/portal-device-hero.webp) right center/auto 92% no-repeat,#061426;
      }
      .portal-device-composition img {
        opacity: 0;
      }
      @media(max-width:1100px) {
        .portal-device-composition {
          min-height: 420px;
        }
        .portal-device-composition img {
          width: 112%;
          margin-left: -5%;
        }
      }
      @media(max-width:780px) {
        .portal-hero:before {
          background: linear-gradient(180deg,#061426,#07182b);
        }
        .portal-device-composition {
          min-height: 350px;
        }
        .portal-device-composition img {
          width: 100%;
          margin: 0;
          opacity: 1;
          -webkit-mask-image: linear-gradient(180deg,transparent 0,#000 7%,#000 93%,transparent 100%);
          mask-image: linear-gradient(180deg,transparent 0,#000 7%,#000 93%,transparent 100%);
        }
      }
      @media(max-width:520px) {
        .portal-device-composition {
          min-height: 245px;
        }
        .portal-device-composition img {
          width: 112%;
          margin-left: -6%;
        }
      }
      .connected-portal-promo {
        position: relative;
        overflow: hidden;
        background: #061426;
        color: #fff;
        padding: 68px 0;
      }
      .connected-portal-promo:before {
        content: "";
        position: absolute;
        inset: 0;
        background-image: linear-gradient(rgba(237,28,36,0.08) 1px,transparent 1px),linear-gradient(90deg,rgba(237,28,36,0.08) 1px,transparent 1px);
        background-size: 54px 54px;
        mask-image: linear-gradient(90deg,#000,transparent 45%);
      }
      .connected-portal-grid {
        position: relative;
        display: grid;
        grid-template-columns: 0.8fr 1.2fr;
        align-items: center;
        gap: 42px;
      }
      .connected-portal-promo h2 {
        font-size: clamp(44px,5vw,70px);
        line-height: 0.9;
        letter-spacing: -2.5px;
        text-transform: uppercase;
        margin: 12px 0 24px;
      }
      .connected-portal-promo h2 span {
        color: var(--red);
      }
      .connected-portal-promo p {
        max-width: 570px;
        color: #d4dde7;
        font-size: 17px;
      }
      .connected-portal-promo img {
        display: block;
        width: 110%;
        max-width: none;
        margin-left: -5%;
        -webkit-mask-image: radial-gradient(ellipse 76% 88% at 54% 50%,#000 72%,transparent 100%);
        mask-image: radial-gradient(ellipse 76% 88% at 54% 50%,#000 72%,transparent 100%);
      }
      @media(max-width:1180px) {
        .nav {
          gap: 16px;
        }
        .nav-links {
          gap: 13px;
        }
        .nav-links a {
          font-size: 11px;
        }
        .nav-call {
          padding: 12px 13px;
        }
      }
      @media(max-width:980px) {
        .connected-portal-grid {
          grid-template-columns: 1fr;
        }
        .connected-portal-promo img {
          width: 100%;
          margin: 0;
        }
      }
      @media(max-width:600px) {
        .connected-portal-promo {
          padding: 54px 0;
        }
        .connected-portal-promo h2 {
          font-size: 46px;
        }
        .connected-portal-promo .actions {
          align-items: stretch;
          flex-direction: column;
        }
        .connected-portal-promo .btn {
          width: 100%;
        }
      }
      .software-page .software-hero {
        background-image: url(/assets/software-portal-system.webp);
        background-position: center;
      }
      .asset-page .asset-hero {
        background-image: url(/assets/asset-dashboard-hero.webp);
        background-position: center;
      }
      .software-page .software-intro img,.asset-page .asset-product img {
        border-radius: 10px;
        box-shadow: 0 22px 55px rgba(7,20,38,0.18);
      }
      .software-page .operational-benefits .story-image,.asset-page .photo-story .story-image {
        object-position: center;
      }
      .site-header,.region-page .site-header {
        background: #fff;
        border-bottom: 1px solid #dfe4ea;
        box-shadow: 0 5px 24px rgba(7,20,38,0.12);
      }
      .nav {
        min-height: 92px;
      }
      .brand img {
        width: 190px;
        height: 68px;
      }
      .nav-links a {
        color: var(--ink);
        padding: 33px 0;
      }
      .nav-links a:hover,.nav-links a[aria-current=page] {
        color: var(--ink);
        border-color: var(--red);
      }
      .menu-toggle {
        background: var(--navy);
        border-color: var(--navy);
        color: #fff;
      }
      @media(max-width:980px) {
        .nav-links {
          top: 92px;
          background: #fff;
          box-shadow: 0 15px 28px rgba(7,20,38,0.14);
        }
        .nav-links a {
          color: var(--ink);
          padding: 12px 0;
        }
      }
      @media(max-width:600px) {
        .nav {
          min-height: 76px;
        }
        .brand img {
          width: 150px;
          height: 56px;
        }
        .nav-links {
          top: 76px;
        }
      }
      .mobile-support,.mobile-nav-actions {
        display: none;
      }
      @media(max-width:980px) {
        body.menu-open {
          overflow: hidden;
        }
        .nav {
          gap: 9px;
        }
        .menu-toggle {
          order: 4;
          margin: 0;
          width: 46px;
          height: 44px;
          padding: 0;
          display: grid;
          place-items: center;
          border-radius: 4px;
        }
        .menu-toggle span {
          display: none;
        }
        .menu-toggle b {
          font-size: 22px;
          line-height: 1;
          font-weight: 800;
        }
        .mobile-support {
          display: inline-flex;
          order: 3;
          margin-left: auto;
          align-items: center;
          justify-content: center;
          height: 44px;
          padding: 0 17px;
          border-radius: 4px;
          background: var(--red);
          color: #fff;
          text-decoration: none;
          text-transform: uppercase;
          font: 800 14px "Barlow Condensed",Arial,sans-serif;
          letter-spacing: 0.7px;
        }
        .nav-call {
          display: none;
        }
        .nav-links {
          position: fixed;
          left: 0;
          right: 0;
          top: 124px;
          bottom: 0;
          height: auto;
          padding: 22px 4vw 30px;
          background: var(--navy);
          grid-template-columns: repeat(2,minmax(0,1fr));
          align-content: start;
          align-items: stretch;
          gap: 10px;
          overflow: auto;
          box-shadow: 0 24px 45px rgba(0,0,0,0.35);
        }
        .nav-links.open {
          display: grid;
        }
        .nav-links>a {
          display: flex;
          align-items: center;
          min-height: 66px;
          padding: 16px 18px;
          color: #fff!important;
          background: #0b2a4a;
          border: 1px solid rgba(255,255,255,0.09);
          border-bottom: 1px solid rgba(255,255,255,0.09);
          font-size: 16px;
          letter-spacing: 0.7px;
        }
        .nav-links>a:hover,.nav-links>a[aria-current=page] {
          background: var(--red);
          color: #fff!important;
          border-color: var(--red);
        }
        .mobile-nav-actions {
          display: flex;
          grid-column: 1/-1;
          gap: 10px;
          margin-top: 8px;
        }
        .mobile-nav-actions a {
          flex: 1;
          display: flex;
          align-items: center;
          justify-content: center;
          min-height: 54px;
          padding: 13px 16px;
          text-align: center;
          text-decoration: none;
          text-transform: uppercase;
          font: 800 16px "Barlow Condensed",Arial,sans-serif;
          letter-spacing: 0.6px;
          background: #fff;
          color: var(--navy);
        }
        .mobile-nav-actions a:first-child {
          background: var(--red);
          color: #fff;
        }
      }
      @media(max-width:600px) {
        .nav {
          padding-left: 14px;
          padding-right: 14px;
        }
        .brand {
          min-width: 0;
        }
        .brand img {
          width: 138px;
          height: 52px;
        }
        .mobile-support {
          height: 42px;
          padding: 0 13px;
          font-size: 13px;
        }
        .menu-toggle {
          width: 43px;
          height: 42px;
        }
        .nav-links {
          top: 108px;
          padding: 18px;
          grid-template-columns: 1fr;
          gap: 8px;
        }
        .nav-links>a {
          min-height: 55px;
          padding: 13px 16px;
          font-size: 17px;
        }
        .mobile-nav-actions {
          display: grid;
          grid-column: auto;
          margin-top: 7px;
        }
        .mobile-nav-actions a {
          min-height: 50px;
        }
      }
      @media(max-width:980px) {
        html,body {
          overscroll-behavior-y: none;
        }
        body {
          padding-bottom: 0;
        }
        footer {
          padding-bottom: calc(112px + env(safe-area-inset-bottom));
        }
      }
      .projects-unified-hero {
        position: relative;
        isolation: isolate;
        min-height: 650px;
        display: flex;
        align-items: center;
        color: #fff;
        background: #071426 url(/assets/projects-hero.webp) center/cover no-repeat;
      }
      .projects-unified-hero::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        background: linear-gradient(90deg,rgba(5,18,35,0.98) 0%,rgba(5,18,35,0.88) 48%,rgba(5,18,35,0.2) 100%);
      }
      .projects-hero-copy {
        padding: 70px 0;
      }
      .projects-hero-copy h1 {
        max-width: 780px;
        margin: 15px 0 24px;
        font-size: clamp(54px,7vw,92px);
        line-height: 0.92;
        letter-spacing: -3px;
        text-transform: uppercase;
      }
      .projects-hero-copy h1 span {
        color: var(--red);
      }
      .projects-hero-copy>p {
        max-width: 680px;
        color: #e2e8ef;
        font-size: 20px;
      }
      .projects-proof {
        display: grid;
        grid-template-columns: repeat(3,minmax(0,1fr));
        max-width: 790px;
        margin-top: 38px;
        border-top: 1px solid rgba(255,255,255,0.25);
      }
      .projects-proof div {
        padding: 20px 18px 0 0;
      }
      .projects-proof strong,.projects-proof span {
        display: block;
      }
      .projects-proof span {
        margin-top: 4px;
        color: #bdc8d5;
        font-size: 13px;
      }
      .projects-card-grid {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 20px;
      }
      .projects-card-grid article {
        overflow: hidden;
        background: #fff;
        border-top: 4px solid var(--red);
        box-shadow: var(--shadow);
      }
      .projects-card-grid img {
        width: 100%;
        height: 235px;
        object-fit: cover;
      }
      .projects-card-grid article>div {
        padding: 26px;
      }
      .projects-card-grid h2 {
        margin: 10px 0;
        font-size: 27px;
      }
      .projects-card-grid p {
        color: var(--muted);
      }
      .projects-card-grid a {
        color: var(--blue);
        font-weight: 900;
        text-decoration: none;
      }
      .project-detail .split {
        align-items: center;
      }
      .project-detail img {
        width: 100%;
        min-height: 440px;
        object-fit: cover;
        border-radius: 10px;
        box-shadow: var(--shadow);
      }
      .project-detail ul {
        margin: 24px 0 28px;
        padding-left: 20px;
      }
      .project-detail li {
        margin: 9px 0;
      }
      .site-map-hero {
        padding: 86px 0 80px;
        color: #fff;
        background: linear-gradient(120deg,#071426 0%,#0a2b55 72%,#ed1c24 160%);
      }
      .site-map-hero h1 {
        margin: 10px 0 16px;
        font-size: clamp(50px,7vw,82px);
        line-height: .95;
        text-transform: uppercase;
      }
      .site-map-hero p {
        max-width: 720px;
        color: #d8e1eb;
        font-size: 19px;
      }
      .site-map-content {
        background: #f5f7fa;
      }
      .site-map-summary {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        margin: -78px 0 52px;
        background: #fff;
        border-radius: 10px;
        box-shadow: 0 14px 38px rgba(7,20,38,.12);
      }
      .site-map-summary div {
        padding: 28px;
        border-right: 1px solid #dce2e8;
      }
      .site-map-summary div:last-child {
        border-right: 0;
      }
      .site-map-summary strong {
        display: block;
        color: #ed1c24;
        font-size: 36px;
      }
      .site-map-summary span {
        color: #445064;
        font-weight: 800;
        text-transform: uppercase;
      }
      .site-map-group {
        padding: 42px 0;
        border-bottom: 1px solid #d5dce4;
      }
      .site-map-heading {
        display: grid;
        grid-template-columns: 58px 1fr;
        gap: 20px;
        margin-bottom: 26px;
      }
      .site-map-heading>span {
        color: #ed1c24;
        font-size: 18px;
        font-weight: 900;
      }
      .site-map-heading h2 {
        margin: 0 0 7px;
        color: #071426;
        font-size: 34px;
        text-transform: uppercase;
      }
      .site-map-heading p {
        margin: 0;
        color: #596579;
      }
      .site-map-links {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 10px 24px;
        padding-left: 78px;
      }
      .site-map-links a,.site-map-regions a {
        position: relative;
        padding: 11px 12px 11px 25px;
        color: #0a356d;
        font-weight: 750;
        text-decoration: none;
        background: #fff;
        border-radius: 5px;
      }
      .site-map-links a::before,.site-map-regions a::before {
        content: "›";
        position: absolute;
        left: 11px;
        color: #ed1c24;
      }
      .site-map-links a:hover,.site-map-regions a:hover {
        color: #ed1c24;
        transform: translateX(2px);
      }
      .site-map-service-list {
        display: grid;
        gap: 14px;
        padding-left: 78px;
      }
      .site-map-service {
        background: #fff;
        border-left: 4px solid #071426;
        border-radius: 6px;
      }
      .site-map-service summary {
        cursor: pointer;
        padding: 18px 20px;
        color: #071426;
        font-size: 18px;
        font-weight: 900;
        text-transform: uppercase;
      }
      .site-map-service summary::marker {
        color: #ed1c24;
      }
      .site-map-regions {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 8px;
        padding: 0 18px 20px;
      }
      .site-map-regions a {
        background: #f5f7fa;
        font-size: 14px;
      }
      @media(max-width:800px) {
        .site-map-summary {
          grid-template-columns: 1fr 1fr;
          margin-top: -55px;
        }
        .site-map-summary div:nth-child(2) {
          border-right: 0;
        }
        .site-map-summary div:nth-child(-n+2) {
          border-bottom: 1px solid #dce2e8;
        }
        .site-map-links,.site-map-regions {
          grid-template-columns: 1fr 1fr;
        }
      }
      @media(max-width:560px) {
        .site-map-hero {
          padding: 58px 0 72px;
        }
        .site-map-hero h1 {
          font-size: 46px;
        }
        .site-map-summary div {
          padding: 18px 15px;
        }
        .site-map-summary strong {
          font-size: 28px;
        }
        .site-map-summary span {
          font-size: 12px;
        }
        .site-map-heading {
          grid-template-columns: 38px 1fr;
          gap: 10px;
        }
        .site-map-heading h2 {
          font-size: 27px;
        }
        .site-map-links,.site-map-service-list {
          padding-left: 0;
        }
        .site-map-links,.site-map-regions {
          grid-template-columns: 1fr;
        }
      }
      .site-search-trigger {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 11px 12px;
        color: #071426;
        font-family: Arial,Helvetica,sans-serif;
        font-size: 12px;
        font-weight: 800;
        letter-spacing: .8px;
        background: transparent;
        border: 0;
        cursor: pointer;
      }
      .site-search-trigger img {
        width: 18px;
        height: 18px;
      }
      .site-search-dialog {
        width: min(760px,calc(100% - 30px));
        max-height: min(720px,calc(100% - 40px));
        margin: 8vh auto auto;
        padding: 0;
        color: #071426;
        background: #fff;
        border: 0;
        border-radius: 10px;
        box-shadow: 0 24px 80px rgba(7,20,38,.35);
      }
      .site-search-dialog::backdrop {
        background: rgba(3,13,27,.78);
        backdrop-filter: blur(3px);
      }
      .site-search-shell {
        padding: 28px;
      }
      .site-search-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        margin-bottom: 18px;
      }
      .site-search-head h2 {
        margin: 0;
        font-size: 29px;
        text-transform: uppercase;
      }
      .site-search-close {
        width: 42px;
        height: 42px;
        color: #071426;
        font-size: 29px;
        line-height: 1;
        background: #eef2f6;
        border: 0;
        border-radius: 50%;
        cursor: pointer;
      }
      .site-search-field {
        position: relative;
      }
      .site-search-field img {
        position: absolute;
        left: 17px;
        top: 50%;
        width: 20px;
        transform: translateY(-50%);
      }
      .site-search-field input {
        width: 100%;
        min-height: 58px;
        padding: 13px 16px 13px 50px;
        color: #071426;
        font: inherit;
        font-size: 17px;
        background: #f5f7fa;
        border: 2px solid #cbd4de;
        border-radius: 6px;
      }
      .site-search-field input:focus {
        border-color: #ed1c24;
        outline: 3px solid rgba(237,28,36,.16);
      }
      .site-search-help {
        margin: 10px 0 18px;
        color: #596579;
        font-size: 13px;
      }
      .site-search-results {
        display: grid;
        gap: 8px;
        max-height: 430px;
        overflow-y: auto;
      }
      .site-search-results a {
        display: block;
        padding: 15px 16px;
        color: #071426;
        text-decoration: none;
        background: #f5f7fa;
        border-left: 3px solid transparent;
      }
      .site-search-results a:hover,.site-search-results a:focus {
        color: #b60c14;
        background: #fff4f4;
        border-left-color: #ed1c24;
      }
      .site-search-results strong {
        display: block;
        margin-bottom: 3px;
      }
      .site-search-results span {
        display: block;
        color: #596579;
        font-size: 14px;
      }
      .site-search-empty {
        padding: 22px;
        color: #596579;
        text-align: center;
        background: #f5f7fa;
      }
      .back-to-top {
        position: fixed;
        right: 22px;
        bottom: 24px;
        z-index: 90;
        display: grid;
        width: 48px;
        height: 48px;
        place-items: center;
        color: #fff;
        font-size: 23px;
        font-weight: 900;
        background: #071426;
        border: 2px solid rgba(255,255,255,.7);
        border-radius: 50%;
        box-shadow: 0 8px 24px rgba(7,20,38,.3);
        cursor: pointer;
        opacity: 0;
        pointer-events: none;
        transform: translateY(12px);
        transition: opacity 160ms ease,transform 160ms ease,background 160ms ease;
      }
      .back-to-top.is-visible {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
      }
      .back-to-top:hover {
        background: #ed1c24;
      }
      @media(max-width:1060px) {
        .site-search-trigger {
          margin-left: auto;
        }
        .site-search-trigger span {
          display: none;
        }
      }
      @media(max-width:980px) {
        .nav {
          gap: 4px;
        }
        .site-search-trigger {
          order: 2;
          flex: 0 0 42px;
          width: 42px;
          height: 42px;
          margin-left: auto;
          padding: 0;
          justify-content: center;
          background: #eef2f6;
          border-radius: 4px;
        }
      }
      @media(max-width:700px) {
        .site-search-trigger {
          padding: 0;
        }
        .site-search-dialog {
          margin-top: 18px;
        }
        .site-search-shell {
          padding: 20px;
        }
        .back-to-top {
          right: 14px;
          bottom: 82px;
        }
      }
      @media(prefers-reduced-motion:reduce) {
        .back-to-top {
          transition: none;
        }
        html {
          scroll-behavior: auto;
        }
      }
      .project-service-hero {
        position: relative;
        isolation: isolate;
        min-height: 570px;
        display: flex;
        align-items: center;
        color: #fff;
        background: #071426 var(--project-image) center/cover no-repeat;
      }
      .project-service-hero::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        background: linear-gradient(90deg,rgba(5,18,35,0.98) 0%,rgba(5,18,35,0.9) 52%,rgba(5,18,35,0.24) 100%);
      }
      .project-service-hero .wrap {
        padding-top: 52px;
        padding-bottom: 62px;
      }
      .project-service-hero h1 {
        max-width: 850px;
        margin: 15px 0 24px;
        font-size: clamp(48px,6vw,78px);
        line-height: 0.96;
        letter-spacing: -2.5px;
        text-transform: uppercase;
      }
      .project-service-hero p {
        max-width: 680px;
        color: #e2e8ef;
        font-size: 19px;
      }
      .section-dark.project-detail li,.section-dark.project-detail p {
        color: #c5cfda;
      }
      @media(max-width:980px) {
        .projects-card-grid {
          grid-template-columns: 1fr;
        }
        .projects-card-grid article {
          display: grid;
          grid-template-columns: 0.8fr 1.2fr;
        }
        .projects-card-grid img {
          height: 100%;
          min-height: 250px;
        }
      }
      @media(max-width:600px) {
        .projects-unified-hero {
          min-height: 0;
        }
        .projects-hero-copy {
          padding: 54px 0 62px;
        }
        .projects-hero-copy h1 {
          font-size: 48px;
        }
        .projects-proof {
          grid-template-columns: 1fr;
        }
        .projects-proof div {
          padding: 14px 0;
          border-bottom: 1px solid rgba(255,255,255,0.15);
        }
        .projects-card-grid article {
          display: block;
        }
        .projects-card-grid img {
          height: 220px;
          min-height: 0;
        }
        .project-detail img {
          min-height: 280px;
        }
      }
      .regional-planning {
        background: radial-gradient(circle at 92% 12%,rgba(237,28,36,0.08),transparent 24rem),#fff;
      }
      .regional-planning .section-head {
        max-width: 850px;
      }
      .regional-planning .region-services article {
        border-top: 3px solid var(--red);
      }
      .regional-next-step {
        max-width: 920px;
        margin: 28px 0 0;
        padding: 20px 24px;
        border-left: 4px solid var(--red);
        background: #f4f6f8;
        color: #26364b;
      }
      .regional-next-step a {
        color: #004a9f;
        font-weight: 800;
      }
      .insights-hero {
        position: relative;
        overflow: hidden;
        padding: 92px 0 78px;
        color: #fff;
        background: linear-gradient(90deg,rgba(5,18,35,0.98),rgba(5,18,35,0.78) 58%,rgba(5,18,35,0.35)),url(/assets/home-engineering-hero.webp) center/cover no-repeat;
      }
      .insights-hero::after {
        content: "";
        position: absolute;
        right: -90px;
        bottom: -170px;
        width: 420px;
        height: 420px;
        border: 1px solid rgba(237,28,36,0.55);
        transform: rotate(45deg);
      }
      .insights-hero .wrap {
        position: relative;
        z-index: 1;
      }
      .insights-hero h1 {
        max-width: 920px;
        margin: 12px 0 22px;
        font-size: clamp(48px,6.2vw,82px);
        line-height: 0.96;
        letter-spacing: -2.5px;
        text-transform: uppercase;
      }
      .insights-hero>.wrap>p {
        max-width: 700px;
        color: #dbe4ed;
        font-size: 19px;
      }
      .insight-category-nav {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        margin-top: 32px;
      }
      .insight-category-nav a,.insight-category-nav span {
        padding: 9px 14px;
        border: 1px solid rgba(255,255,255,.32);
        border-radius: 999px;
        color: #fff;
        font-size: 12px;
        font-weight: 800;
        text-decoration: none;
        text-transform: uppercase;
      }
      .insight-category-nav a {
        border-color: var(--red);
        background: var(--red);
      }
      .insight-featured article {
        display: grid;
        grid-template-columns: .9fr 1.1fr;
        overflow: hidden;
        border-radius: 12px;
        background: var(--navy);
        color: #fff;
        box-shadow: var(--shadow);
      }
      .insight-featured article>div {
        align-self: center;
        padding: 50px;
      }
      .insight-featured article>div>span,.insight-card>div>span {
        color: var(--red);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: 1px;
      }
      .insight-featured article h2 {
        margin: 10px 0 18px;
        font-size: clamp(34px,4vw,50px);
        line-height: 1.05;
        text-transform: uppercase;
      }
      .insight-featured article p {
        color: #c7d1dc;
      }
      .insight-featured article img {
        width: 100%;
        height: 100%;
        min-height: 430px;
        object-fit: cover;
      }
      .insight-grid {
        display: grid;
        grid-template-columns: repeat(3,1fr);
        gap: 24px;
      }
      .insight-card {
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 10px;
        background: #fff;
        box-shadow: 0 12px 34px rgba(7,20,38,.08);
      }
      .insight-card-image {
        display: block;
        overflow: hidden;
      }
      .insight-card-image img {
        display: block;
        width: 100%;
        height: 220px;
        object-fit: cover;
        transition: transform .35s ease;
      }
      .insight-card:hover .insight-card-image img {
        transform: scale(1.025);
      }
      .insight-card>div {
        padding: 26px;
      }
      .insight-card h2 {
        margin: 8px 0 12px;
        font-size: 25px;
        line-height: 1.08;
      }
      .insight-card h2 a {
        text-decoration: none;
      }
      .insight-card p {
        color: var(--muted);
      }
      .insight-card small {
        display: block;
        margin: 16px 0;
        color: #707b8d;
      }
      .insight-read {
        color: #004a9f;
        font-size: 13px;
        font-weight: 900;
        text-decoration: none;
      }
      .insight-topics {
        padding: 54px 0;
        background: var(--navy);
        color: #fff;
      }
      .insight-topics .wrap {
        display: grid;
        grid-template-columns: repeat(4,1fr);
      }
      .insight-topics .wrap>div {
        padding: 8px 30px;
        border-right: 1px solid rgba(255,255,255,.15);
      }
      .insight-topics .wrap>div:first-child {
        padding-left: 0;
      }
      .insight-topics .wrap>div:last-child {
        border: 0;
      }
      .insight-topics span {
        color: var(--red);
        font-weight: 900;
      }
      .insight-topics h2 {
        margin: 5px 0;
        font-size: 22px;
        text-transform: uppercase;
      }
      .insight-topics p {
        margin: 0;
        color: #bfcad5;
        font-size: 14px;
      }
      .insight-article-hero {
        position: relative;
        padding: 70px 0 74px;
        color: #fff;
        background: linear-gradient(90deg,rgba(5,18,35,.98),rgba(5,18,35,.85) 58%,rgba(5,18,35,.38)),var(--insight-image) center/cover no-repeat;
      }
      .breadcrumbs {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-bottom: 34px;
        color: #c8d2dd;
        font-size: 13px;
      }
      .breadcrumbs a {
        color: #fff;
      }
      .insight-article-hero h1 {
        max-width: 980px;
        margin: 10px 0 20px;
        font-size: clamp(46px,5.3vw,72px);
        line-height: .98;
        letter-spacing: -2px;
        text-transform: uppercase;
      }
      .insight-article-hero>.wrap>p {
        max-width: 760px;
        color: #dbe3eb;
        font-size: 19px;
      }
      .article-meta {
        display: flex;
        flex-wrap: wrap;
        gap: 18px;
        margin-top: 28px;
        color: #c7d2dc;
        font-size: 13px;
        font-weight: 700;
      }
      .article-meta span+span::before {
        content: "•";
        margin-right: 18px;
        color: var(--red);
      }
      .insight-article-layout {
        display: grid;
        grid-template-columns: minmax(0,1fr) 310px;
        align-items: start;
        gap: 60px;
        padding-top: 68px;
        padding-bottom: 76px;
      }
      .insight-article {
        max-width: 800px;
      }
      .article-lead {
        margin-top: 0;
        padding-left: 22px;
        border-left: 4px solid var(--red);
        color: #26364b;
        font-size: 21px;
        line-height: 1.55;
      }
      .insight-article section {
        margin-top: 44px;
      }
      .insight-article section h2 {
        margin-bottom: 12px;
        font-size: 32px;
        line-height: 1.1;
        text-transform: uppercase;
      }
      .insight-article section p {
        color: #3c4a5c;
        font-size: 17px;
      }
      .article-checklist {
        padding: 32px;
        border-radius: 10px;
        background: #f2f4f7;
      }
      .article-checklist ul {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px 28px;
        padding: 0;
        list-style: none;
      }
      .article-checklist li {
        position: relative;
        padding-left: 23px;
      }
      .article-checklist li::before {
        content: "✓";
        position: absolute;
        left: 0;
        color: var(--red);
        font-weight: 900;
      }
      .article-safety {
        display: block;
        margin-top: 36px;
        padding: 22px 24px;
        border: 1px solid #d9dee5;
        border-left: 4px solid var(--red);
      }
      .article-safety p {
        margin: 4px 0 0;
        color: var(--muted);
      }
      .insight-sidebar {
        position: sticky;
        top: 118px;
        display: grid;
        gap: 18px;
      }
      .insight-sidebar>div {
        padding: 26px;
        border: 1px solid var(--line);
        border-radius: 9px;
        background: #fff;
        box-shadow: 0 12px 30px rgba(7,20,38,.07);
      }
      .insight-sidebar h2 {
        margin: 7px 0 10px;
        line-height: 1.08;
        text-transform: uppercase;
      }
      .insight-sidebar h3 {
        margin-top: 0;
        text-transform: uppercase;
      }
      .insight-sidebar .btn {
        width: 100%;
        justify-content: center;
        text-align: center;
      }
      .sidebar-phone {
        display: block;
        color: var(--red);
        font-size: 25px;
        font-weight: 900;
        text-decoration: none;
      }
      .related-insights {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
      }
      .related-insights a {
        display: grid;
        gap: 6px;
        padding: 26px;
        border: 1px solid var(--line);
        border-radius: 8px;
        background: #fff;
        text-decoration: none;
      }
      .related-insights span {
        color: var(--red);
        font-size: 12px;
        font-weight: 900;
        text-transform: uppercase;
      }
      .related-insights strong {
        font-size: 21px;
        line-height: 1.15;
      }
      @media(max-width:900px) {
        .insight-grid {
          grid-template-columns: 1fr;
        }
        .insight-card {
          display: grid;
          grid-template-columns: .8fr 1.2fr;
        }
        .insight-card-image img {
          height: 100%;
          min-height: 260px;
        }
        .insight-topics .wrap {
          grid-template-columns: 1fr 1fr;
          gap: 28px 0;
        }
        .insight-article-layout {
          grid-template-columns: 1fr;
        }
        .insight-sidebar {
          position: static;
          grid-template-columns: 1fr 1fr;
        }
      }
      @media(max-width:600px) {
        .insights-hero {
          padding: 58px 0 52px;
        }
        .insights-hero h1 {
          font-size: 46px;
          letter-spacing: -1.3px;
        }
        .insight-category-nav {
          display: grid;
          grid-template-columns: 1fr 1fr;
        }
        .insight-category-nav a,.insight-category-nav span {
          border-radius: 5px;
          text-align: center;
        }
        .insight-featured article,.insight-card {
          display: block;
        }
        .insight-featured article>div {
          padding: 30px 25px;
        }
        .insight-featured article img,.insight-card-image img {
          height: 220px;
          min-height: 0;
        }
        .insight-topics .wrap {
          grid-template-columns: 1fr;
        }
        .insight-topics .wrap>div,.insight-topics .wrap>div:first-child {
          padding: 12px 0 20px;
          border-right: 0;
          border-bottom: 1px solid rgba(255,255,255,.15);
        }
        .insight-article-hero {
          padding: 48px 0 52px;
        }
        .insight-article-hero h1 {
          font-size: 43px;
          letter-spacing: -1.2px;
        }
        .article-meta {
          display: grid;
          gap: 5px;
        }
        .article-meta span+span::before {
          display: none;
        }
        .insight-article-layout {
          gap: 38px;
          padding-top: 45px;
          padding-bottom: 50px;
        }
        .article-lead {
          font-size: 18px;
        }
        .insight-article section h2 {
          font-size: 27px;
        }
        .article-checklist {
          padding: 25px;
        }
        .article-checklist ul,.insight-sidebar,.related-insights {
          grid-template-columns: 1fr;
        }
      }
      .rr-header .nav {
        min-height: 112px;
        gap: 22px;
      }
      .rr-header .brand {
        flex: 0 0 330px;
      }
      .rr-header .brand img {
        display: block;
        width: 330px;
        height: 110px;
        max-width: none;
        object-fit: contain;
      }
      .rr-header .nav-links {
        gap: 22px;
        align-items: center;
      }
      .rr-header .nav-group {
        position: relative;
      }
      .rr-header .nav-group summary,.rr-header .cctv-pending {
        padding: 42px 0;
        color: #071426;
        background: none;
        border: 0;
        font: 800 15px/1.2 Arial,sans-serif;
        letter-spacing: 0;
        text-transform: uppercase;
        white-space: nowrap;
        cursor: pointer;
      }
      .rr-header .nav-group summary {
        list-style: none;
        display: flex;
        align-items: center;
        gap: 7px;
      }
      .rr-header .nav-group summary::-webkit-details-marker {
        display: none;
      }
      .rr-header .nav-group summary::after {
        content: "";
        width: 6px;
        height: 6px;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg);
        margin-top: -4px;
      }
      .rr-header .nav-group[open] summary {
        color: #e51c2b;
      }
      .rr-header .nav-group[open] summary::after {
        transform: rotate(225deg);
        margin-top: 3px;
      }
      .rr-header .cctv-pending {
        cursor: default;
      }
      .rr-header .nav-dropdown {
        position: absolute;
        top: calc(100% - 4px);
        left: -18px;
        width: 292px;
        background: white;
        border: 1px solid #dfe4ea;
        border-top: 3px solid #e51c2b;
        box-shadow: 0 10px 28px #07142626;
        padding: 9px;
        z-index: 100;
      }
      .rr-header .nav-dropdown :is(a,button) {
        display: block;
        width: 100%;
        padding: 12px;
        font: 600 14px/1.4 Arial,sans-serif;
        color: #071426;
        background: white;
        text-align: left;
        text-transform: none;
        letter-spacing: 0;
        border: 0;
        white-space: normal;
      }
      .rr-header .nav-dropdown button[aria-disabled] {
        cursor: default;
      }
      .rr-header .nav-dropdown a:hover {
        background: #f2f5f8;
        color: #c8102e;
      }
      .rr-header .site-search-trigger {
        flex: 0 0 42px;
        width: 42px;
        height: 44px;
        padding: 10px;
        justify-content: center;
        margin-left: auto;
      }
      .rr-header .site-search-trigger span {
        display: none;
      }
      .rr-header .site-search-trigger img {
        width: 24px;
        height: 24px;
      }
      .rr-header .nav-call {
        flex-shrink: 0;
        font-size: 13px;
        letter-spacing: 0;
        white-space: nowrap;
        padding: 15px 17px;
      }
      .rr-header .nav-group summary {
        position: relative;
      }
      .rr-header .nav-group summary::before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 26px;
        height: 3px;
        background: #e51c2b;
        transform: scaleX(0);
        transition: transform .15s ease;
      }
      .rr-header .nav-group:is([open],:hover) summary::before {
        transform: scaleX(1);
      }
      .topline.final-topline {
        display: flex!important;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 4px 10px;
        letter-spacing: 0;
      }
      .final-topline>span {
        white-space: nowrap;
      }
      .final-topline .top-whatsapp {
        margin-left: 0;
      }
      @media(max-width:600px) {
        .topline.final-topline {
          font-size: 10px;
          padding: 8px 10px;
          gap: 4px 8px;
        }
      }
      .rr-header :is(a,button,summary):focus-visible {
        outline: 3px solid #0b4dae;
        outline-offset: 4px;
      }
      @media(max-width:1250px)and (min-width:1121px) {
        .rr-header .brand {
          flex-basis: 285px;
        }
        .rr-header .brand img {
          width: 285px;
          height: 96px;
        }
        .rr-header .nav {
          gap: 14px;
        }
        .rr-header[data-design] .nav-links {
          gap: 18px;
        }
      }
      @media(max-width:1120px) {
        .rr-header .menu-toggle {
          display: grid;
          order: 4;
          width: 46px;
          height: 44px;
        }
        .rr-header .mobile-support {
          display: inline-flex;
          order: 3;
        }
        .rr-header .nav-call {
          display: none;
        }
        .rr-header .nav-links {
          display: none;
          position: fixed;
          left: 0;
          right: 0;
          bottom: 0;
          overflow: auto;
          padding: 18px;
          background: #071426;
        }
        .rr-header .nav {
          min-height: 96px;
          gap: 10px;
        }
        .rr-header .brand {
          flex: 0 1 290px;
          margin-right: auto;
        }
        .rr-header .brand img {
          width: 100%;
          max-width: 290px;
          height: auto;
        }
        .rr-header .site-search-trigger {
          order: 2;
          margin-left: 0;
        }
        .rr-header .mobile-support {
          margin-left: 0;
        }
        .rr-header .nav-links {
          top: var(--preview-menu-top,128px);
          gap: 10px;
          align-items: start;
        }
        .rr-header .nav-links.open {
          grid-template-columns: 1fr;
        }
        .rr-header .nav-links.open {
          display: grid;
        }
        .rr-header .mobile-nav-actions {
          display: flex;
          grid-column: 1/-1;
          flex-direction: column;
          gap: 10px;
        }
        .rr-header .mobile-nav-actions a {
          padding: 16px;
          text-align: center;
          color: white;
          background: #e51c2b;
        }
        .rr-header .nav-group {
          width: 100%;
        }
        .rr-header .nav-group summary,.rr-header .cctv-pending {
          padding: 18px;
          width: 100%;
          min-height: 52px;
          color: white;
          background: #0b2a4a;
          text-align: left;
          font-size: 14px;
        }
        .rr-header .nav-group summary {
          justify-content: space-between;
        }
        .rr-header .nav-dropdown {
          position: static;
          width: 100%;
          box-shadow: none;
        }
        .rr-header .nav-group[open] summary {
          color: white;
          background: #123963;
        }
        .rr-header .nav-links .nav-dropdown :is(a,button) {
          min-height: 44px;
          background: white;
          border: 0;
          color: #071426;
        }
        .rr-header .nav-group summary::before {
          display: none;
        }
      }
      @media(max-width:600px) {
        .rr-header .nav {
          min-height: 84px;
          gap: 8px;
          padding-left: 14px;
          padding-right: 14px;
        }
        .rr-header .brand {
          flex: 1 1 auto;
        }
        .rr-header .brand img {
          width: 100%;
          max-width: 225px;
          height: auto;
        }
        .rr-header .mobile-support {
          flex-shrink: 0;
          padding: 0 11px;
        }
        .rr-header .site-search-trigger {
          display: none;
        }
        .rr-header .nav-links {
          top: var(--preview-menu-top,134px);
        }
        .rr-header .menu-search {
          display: flex;
          align-items: center;
          justify-content: center;
          gap: 10px;
          height: 48px;
          color: white;
          border: 1px solid #54708d;
          background: none;
          font: 700 14px Arial,sans-serif;
        }
      }
      @media(min-width:601px) {
        .rr-header .menu-search {
          display: none;
        }
      }
      body.menu-open:has(.rr-header) .mobile-call {
        display: none;
      }
      body.menu-open:has(.rr-header) {
        overflow: hidden;
      }
      @media(max-width:1120px) {
        .rr-header .mobile-support {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          height: 44px;
          padding: 0 17px;
          border-radius: 4px;
          background: #ed1c24;
          color: white;
          text-decoration: none;
          font-weight: 800;
          font-size: 14px;
        }
        .rr-header .menu-toggle {
          display: grid;
          place-items: center;
          border: 0;
          background: #071426;
          color: white;
          border-radius: 4px;
        }
        .rr-header .menu-toggle span {
          display: none;
        }
        .rr-header .menu-toggle b {
          font-size: 24px;
          line-height: 1;
        }
      }
      @media(max-width:600px) {
        .rr-header .mobile-support {
          padding: 0 11px;
          font-size: 13px;
        }
      }
      .cctv-page {
        color: #071426;
        background: #fff;
        letter-spacing: 0;
      }
      .cctv-wrap {
        width: min(1180px,90%);
        margin-inline: auto;
      }
      .cctv-hero {
        position: relative;
        overflow: hidden;
        height: calc(100vw * 444 / 971);
        min-height: 550px;
        max-height: 730px;
        background: #0b2039;
      }
      .cctv-frame {
        position: relative;
        overflow: hidden;
        aspect-ratio: var(--cw) / var(--ch);
      }
      .cctv-frame img {
        display: block;
        position: absolute;
        width: calc(var(--sw) / var(--cw) * 100%);
        max-width: none;
        height: auto;
        left: calc(-1 * var(--cx) / var(--cw) * 100%);
        top: calc(-1 * var(--cy) / var(--ch) * 100%);
      }
      .cctv-hero>.cctv-frame {
        position: absolute;
        width: 100%;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
      }
      .cctv-hero::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg,rgba(7,24,43,.96) 0%,rgba(7,24,43,.89) 33%,rgba(7,24,43,.35) 59%,transparent 82%);
      }
      .cctv-hero .cctv-wrap {
        position: relative;
        z-index: 1;
        display: flex;
        align-items: center;
        height: 100%;
      }
      .cctv-hero-copy {
        width: 58%;
        padding: 38px 0;
      }
      .cctv-kicker {
        color: #ed1c24;
        font-size: 13px;
        font-weight: 800;
        margin: 0 0 14px;
      }
      .cctv-hero h1 {
        color: white;
        font-size: 72px;
        line-height: 1.02;
        margin: 0 0 20px;
        font-weight: 800;
        letter-spacing: 0;
      }
      .cctv-hero h1 span {
        display: block;
        color: #ed1c24;
      }
      .cctv-page:not([data-sector="Shops & Retail"]) .cctv-hero h1 {
        font-size: 64px;
      }
      .cctv-page[data-sector="Business Premises"] .cctv-hero-copy {
        width: 66%;
      }
      .cctv-hero-copy>p:not(.cctv-kicker) {
        font-size: 22px;
        line-height: 1.4;
        color: white;
        max-width: 640px;
        margin: 0;
      }
      .cctv-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 16px;
        margin-top: 30px;
      }
      .cctv-button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        min-height: 58px;
        padding: 16px 28px;
        border: 1px solid #ed1c24;
        border-radius: 4px;
        background: #ed1c24;
        color: #fff;
        text-decoration: none;
        font: 700 17px/1.3 Arial,sans-serif;
        cursor: pointer;
      }
      .cctv-button:hover {
        filter: brightness(.92);
      }
      .cctv-button.phone {
        background: transparent;
        border-color: #fff;
      }
      .cctv-button.white {
        background: #fff;
        color: #ed1c24;
        border-color: #fff;
      }
      .cctv-button svg {
        width: 22px;
        height: 22px;
      }
      .cctv-benefits {
        border-bottom: 1px solid #e6ebf0;
        padding: 40px 0;
      }
      .cctv-benefits .cctv-wrap {
        display: grid;
        grid-template-columns: repeat(3,minmax(0,1fr));
      }
      .cctv-benefit {
        display: flex;
        align-items: center;
        gap: 24px;
        padding: 0 24px;
        border-right: 1px solid #dfe4ea;
      }
      .cctv-benefit:first-child {
        padding-left: 0;
      }
      .cctv-benefit:last-child {
        border: 0;
        padding-right: 0;
      }
      .cctv-benefit svg {
        color: #ed1c24;
        flex: 0 0 64px;
        width: 64px;
        height: 64px;
        stroke-width: 1.5;
      }
      .cctv-benefit h2 {
        font-size: 22px;
        line-height: 1.3;
        margin: 0 0 5px;
      }
      .cctv-benefit p {
        color: #52617a;
        font-size: 16px;
        line-height: 1.45;
        margin: 0;
      }
      .cctv-coverage {
        display: grid;
        grid-template-columns: 56% 44%;
        padding-top: 38px;
      }
      .cctv-coverage-copy {
        padding: 0 max(24px,calc((100vw - 1180px) / 2)) 38px max(5vw,calc((100vw - 1180px) / 2));
        padding-right: 24px;
      }
      .cctv-coverage h2 {
        font-size: 42px;
        line-height: 1.15;
        margin: 0 0 8px;
      }
      .cctv-coverage-intro {
        font-size: 19px;
        color: #52617a;
        margin: 0 0 26px;
        line-height: 1.4;
      }
      .cctv-coverage ul {
        list-style: none;
        padding: 0;
        margin: 0;
        display: grid;
        gap: 22px;
      }
      .cctv-coverage li {
        display: flex;
        gap: 24px;
        align-items: center;
      }
      .cctv-coverage li svg {
        width: 54px;
        height: 54px;
        flex: 0 0 54px;
        color: #ed1c24;
        stroke-width: 1.6;
      }
      .cctv-coverage li h3 {
        font-size: 20px;
        line-height: 1.3;
        margin: 0 0 3px;
      }
      .cctv-coverage li p {
        font-size: 16px;
        color: #52617a;
        line-height: 1.45;
        margin: 0;
      }
      .cctv-coverage>.cctv-frame {
        align-self: stretch;
        height: 100%;
        min-height: 474px;
        aspect-ratio: auto;
      }
      .cctv-coverage>.cctv-frame img {
        top: calc(-708 / 359 * 100%);
        width: calc(971 / 427 * 100%);
        left: calc(-544 / 427 * 100%);
        height: calc(1619 / 359 * 100%);
        object-fit: fill;
      }
      .cctv-products {
        background: #f8fafc;
        padding: 38px 0 46px;
      }
      .cctv-products h2 {
        font-size: 36px;
        line-height: 1.2;
        text-align: center;
        margin: 0 0 18px;
      }
      .cctv-product-grid {
        display: grid;
        grid-template-columns: repeat(3,minmax(0,1fr));
      }
      .cctv-product {
        text-align: center;
        padding: 0 18px;
        border-right: 1px solid #dfe4ea;
      }
      .cctv-product:last-child {
        border: 0;
      }
      .cctv-product h3 {
        font-size: 22px;
        line-height: 1.3;
        margin: 8px 0 5px;
      }
      .cctv-product p {
        color: #52617a;
        font-size: 16px;
        line-height: 1.45;
        margin: 0;
      }
      .cctv-survey-band {
        background: #ed1c24;
        padding: 26px 0;
      }
      .cctv-survey-band .cctv-wrap {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 48px;
      }
      .cctv-survey-band h2 {
        color: white;
        font-size: 40px;
        line-height: 1.2;
        margin: 0;
      }
      footer.cctv-footer {
        padding: 30px 0 24px;
        background: #071b30;
        color: #fff;
        border: 0;
      }
      .cctv-footer-grid {
        display: grid;
        grid-template-columns: 2.2fr 1.2fr .8fr 1fr;
        gap: 34px;
      }
      .cctv-footer .cctv-footer-logo {
        width: 330px;
        height: 110px;
        object-fit: contain;
        filter: brightness(0) invert(1);
      }
      .cctv-footer p {
        margin: 4px 0 0;
        font-size: 16px;
      }
      .cctv-footer h2 {
        margin: 10px 0 10px;
        font-size: 13px;
      }
      .cctv-footer a {
        display: block;
        color: white;
        text-decoration: none;
        font-size: 14px;
        line-height: 1.5;
        margin: 0 0 7px;
      }
      .cctv-footer a:hover {
        text-decoration: underline;
      }
      .cctv-footer-small {
        font-size: 12px;
        opacity: .8;
        margin-top: 16px;
      }
      .cctv-page .mobile-call {
        display: none;
      }
      .survey-dialog {
        padding: 0;
        width: min(1040px,94vw);
        max-height: 92dvh;
        border: 0;
        border-radius: 6px;
        color: #071426;
        box-shadow: 0 16px 70px #0006;
      }
      .survey-dialog::backdrop {
        background: #071426b3;
      }
      .survey-shell {
        position: relative;
        display: grid;
        grid-template-columns: 34% 66%;
      }
      .survey-summary {
        background: #071b30;
        color: #fff;
        padding: 40px 28px;
      }
      .survey-summary img {
        filter: brightness(0) invert(1);
        margin-bottom: 24px;
      }
      .survey-summary h2 {
        font-size: 30px;
        line-height: 1.2;
        margin: 0 0 16px;
      }
      .survey-summary p {
        font-size: 16px;
        line-height: 1.5;
      }
      .survey-summary a {
        color: #fff;
      }
      .survey-form {
        padding: 34px;
      }
      .survey-form h2 {
        font-size: 28px;
        margin: 0 32px 6px 0;
      }
      .survey-sector {
        color: #52617a;
        margin: 0 0 20px;
      }
      .survey-fields {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px;
      }
      .survey-fields .full {
        grid-column: 1/-1;
      }
      .survey-fields label {
        display: block;
        font-size: 14px;
        font-weight: 700;
        margin-bottom: 5px;
      }
      .survey-fields :is(input,select,textarea) {
        width: 100%;
        min-width: 0;
        min-height: 44px;
        padding: 10px 12px;
        border: 1px solid #bec9d6;
        border-radius: 3px;
        background: #fff;
        color: #071426;
      }
      .survey-fields textarea {
        min-height: 110px;
        resize: vertical;
      }
      .survey-fields .cctv-button {
        width: 100%;
      }
      .survey-close {
        position: absolute;
        top: 12px;
        right: 12px;
        width: 36px;
        height: 36px;
        border: 0;
        background: #f0f3f6;
        cursor: pointer;
        display: grid;
        place-items: center;
      }
      .survey-close svg {
        width: 20px;
        height: 20px;
      }
      .survey-status {
        margin: 12px 0 0;
        font-size: 14px;
      }
      body.cctv-page:has(.survey-dialog[open]) {
        overflow: hidden;
      }
      @media(min-width:1500px) {
        .cctv-hero-copy {
          width: 65%;
        }
      }
      @media(max-width:1120px) {
        .cctv-hero {
          min-height: 520px;
        }
        .cctv-hero h1 {
          font-size: 56px;
        }
        .cctv-page:not([data-sector="Shops & Retail"]) .cctv-hero h1 {
          font-size: 50px;
        }
        .cctv-hero-copy>p:not(.cctv-kicker) {
          font-size: 19px;
        }
        .cctv-benefit {
          gap: 14px;
          padding: 0 16px;
        }
        .cctv-benefit svg {
          flex-basis: 48px;
          width: 48px;
          height: 48px;
        }
        .cctv-benefit h2 {
          font-size: 18px;
        }
        .cctv-benefit p {
          font-size: 14px;
        }
        .cctv-coverage h2 {
          font-size: 32px;
        }
        .cctv-coverage-intro {
          font-size: 17px;
        }
        .cctv-coverage li h3 {
          font-size: 18px;
        }
        .cctv-coverage li p {
          font-size: 14px;
        }
        .cctv-products h2 {
          font-size: 30px;
        }
        .cctv-survey-band h2 {
          font-size: 32px;
        }
        .cctv-footer-grid {
          gap: 22px;
          grid-template-columns: 1.8fr 1.2fr .7fr 1fr;
        }
        .cctv-footer .cctv-footer-logo {
          width: 260px;
          height: auto;
        }
      }
      @media(max-width:700px) {
        .cctv-hero {
          height: auto;
          min-height: 620px;
        }
        .cctv-hero>.cctv-frame {
          width: 150%;
          left: -45%;
          top: 0;
          transform: none;
        }
        .cctv-hero::after {
          background: linear-gradient(0deg,#071b30 0%,rgba(7,27,48,.98) 48%,rgba(7,27,48,.25) 86%,transparent 100%);
        }
        .cctv-hero .cctv-wrap {
          align-items: end;
          padding-top: 190px;
        }
        .cctv-hero-copy {
          width: 100%;
          padding: 28px 0 38px;
        }
        .cctv-page[data-sector="Business Premises"] .cctv-hero-copy {
          width: 100%;
        }
        .cctv-hero h1 {
          font-size: 40px;
        }
        .cctv-page:not([data-sector="Shops & Retail"]) .cctv-hero h1 {
          font-size: 34px;
        }
        .cctv-hero-copy>p:not(.cctv-kicker) {
          font-size: 17px;
        }
        .cctv-kicker {
          font-size: 11px;
          margin-bottom: 12px;
        }
        .cctv-actions {
          margin-top: 24px;
          gap: 10px;
        }
        .cctv-button {
          min-height: 50px;
          font-size: 14px;
          padding: 13px 17px;
        }
        .cctv-benefits {
          padding: 20px 0;
        }
        .cctv-benefits .cctv-wrap {
          grid-template-columns: 1fr;
          gap: 20px;
        }
        .cctv-benefit {
          padding: 0;
          border: 0;
          gap: 20px;
        }
        .cctv-benefit svg {
          flex-basis: 52px;
          width: 52px;
          height: 52px;
        }
        .cctv-benefit h2 {
          font-size: 20px;
        }
        .cctv-benefit p {
          font-size: 15px;
        }
        .cctv-coverage {
          grid-template-columns: 1fr;
          padding-top: 0;
        }
        .cctv-coverage-copy {
          padding: 32px 5%;
        }
        .cctv-coverage h2 {
          font-size: 30px;
        }
        .cctv-coverage li {
          gap: 20px;
        }
        .cctv-coverage>.cctv-frame {
          height: auto;
          aspect-ratio: 427/359;
          min-height: 0;
        }
        .cctv-products {
          padding: 30px 0;
        }
        .cctv-products h2 {
          font-size: 28px;
          margin-bottom: 24px;
        }
        .cctv-product-grid {
          grid-template-columns: 1fr;
          gap: 28px;
        }
        .cctv-product {
          border: 0;
          padding: 0 16px;
        }
        .cctv-product h3 {
          font-size: 22px;
        }
        .cctv-survey-band .cctv-wrap {
          flex-direction: column;
          gap: 20px;
          text-align: center;
        }
        .cctv-survey-band h2 {
          font-size: 30px;
        }
        .cctv-footer-grid {
          grid-template-columns: 1fr 1fr;
          gap: 26px;
        }
        .cctv-footer-grid>:first-child {
          grid-column: 1/-1;
        }
        .cctv-footer .cctv-footer-logo {
          width: 285px;
        }
        .cctv-footer-grid>:last-child {
          grid-column: 1/-1;
        }
        .survey-shell {
          grid-template-columns: 1fr;
        }
        .survey-summary {
          display: none;
        }
        .survey-form {
          padding: 30px 20px;
        }
        .survey-fields {
          grid-template-columns: 1fr;
          gap: 14px;
        }
      }
      @media(prefers-reduced-motion:reduce) {
        .cctv-page * {
          scroll-behavior: auto;
          transition: none;
        }
      }
      .homepage-slides {
        color: #071426;
      }
      .home-carousel {
        position: relative;
        background: #071b30;
      }
      .home-slides {
        --hero-height: clamp(380px,calc(100svh - 280px),550px);
        position: relative;
        height: var(--hero-height);
        overflow: hidden;
      }
      .home-slide {
        position: absolute;
        inset: 0;
        overflow: hidden;
        background: #071b30;
      }
      .home-slide[hidden] {
        display: none;
      }
      .scene-crop {
        position: relative;
        overflow: hidden;
        aspect-ratio: var(--w)/var(--h);
      }
      .scene-crop img {
        position: absolute;
        display: block;
        max-width: none;
        width: calc(var(--sw)/var(--w)*100%);
        height: calc(var(--sh)/var(--h)*100%);
        left: calc(-1*var(--x)/var(--w)*100%);
        top: calc(-1*var(--y)/var(--h)*100%);
      }
      .home-slide>.scene-crop,.metal-hero>.scene-crop {
        position: absolute;
        inset: 0 0 0 40%;
        width: 60%;
        height: 100%;
        aspect-ratio: auto;
      }
      .home-slide>.scene-crop img,.metal-hero>.scene-crop img {
        height: calc(var(--sh)/var(--h)*100%);
      }
      .home-slide>.scene-crop,.metal-hero>.scene-crop {
        mask-image: linear-gradient(90deg,transparent,#000 24%);
      }
      .home-slide .scene-window {
        position: absolute;
        width: max(100%,calc(var(--hero-height) * var(--w) / var(--h)));
        aspect-ratio: var(--w)/var(--h);
        left: 50%;
        top: 0;
        transform: translateX(-50%);
      }
      .home-slide .scene-window img {
        height: auto;
      }
      .home-slide::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg,rgba(7,24,43,.97),rgba(7,24,43,.86) 34%,rgba(7,24,43,.2) 65%,transparent);
      }
      .home-slide .cctv-wrap {
        position: relative;
        z-index: 1;
        height: 100%;
        display: flex;
        align-items: center;
      }
      .home-slide-copy {
        width: 66%;
        max-width: 800px;
        padding: 30px 0;
      }
      .home-slide h1 {
        color: #fff;
        font-size: 68px;
        line-height: 1.03;
        letter-spacing: 0;
        margin: 0 0 22px;
      }
      .home-slide h1 span {
        display: block;
        color: #ed1c24;
      }
      .home-slide h1 small {
        display: block;
        font-size: 40px;
        margin-top: 5px;
      }
      .home-slide[data-slide=electrical] h1,.home-slide[data-slide=metal] h1 {
        font-size: 58px;
      }
      .home-slide-copy>p:not(.cctv-kicker) {
        color: white;
        font-size: 22px;
        line-height: 1.45;
        max-width: 660px;
        margin: 0;
      }
      .carousel-pause {
        position: absolute;
        right: 20px;
        bottom: 20px;
        z-index: 2;
        width: 1px;
        height: 1px;
        clip-path: inset(50%);
        overflow: hidden;
        border: 1px solid white;
        background: #071b30;
        color: white;
      }
      .carousel-pause:focus-visible {
        width: 42px;
        height: 42px;
        clip-path: none;
        padding: 8px;
        outline: 3px solid #ed1c24;
      }
      .homepage-slides .home-footer-logo {
        width: 300px;
        height: auto;
        object-fit: contain;
        filter: brightness(0) invert(1);
      }
      .homepage-slides .cards {
        grid-template-columns: repeat(4,minmax(0,1fr));
      }
      .homepage-slides .mobile-call {
        display: none;
      }
      body.homepage-slides:has(.survey-dialog[open]) {
        overflow: hidden;
      }
      .home-benefit-panels .cctv-benefits[hidden] {
        display: none;
      }
      .home-benefit-panels {
        height: 110px;
      }
      .home-benefit-panels .cctv-benefits {
        height: 100%;
        padding: 16px 0;
      }
      .home-benefit-panels .cctv-benefits .cctv-wrap {
        height: 100%;
      }
      .home-benefit-panels .cctv-benefit {
        min-height: 0;
        gap: 16px;
      }
      .home-benefit-panels .cctv-benefit svg {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
      }
      .home-benefit-panels h2 {
        font-size: 18px;
        margin-bottom: 3px;
      }
      .home-benefit-panels p {
        font-size: 14px;
      }
      .metal-page .cctv-hero-copy {
        width: 70%;
      }
      .metal-page .cctv-hero h1 {
        font-size: 58px;
      }
      .metal-page .cctv-hero h1 small {
        display: block;
        font-size: 58px;
      }
      .metal-page .cctv-coverage>.scene-crop {
        aspect-ratio: auto;
        min-height: 500px;
      }
      .metal-process svg {
        width: 70px;
        height: 70px;
        color: #ed1c24;
        margin: 10px auto 15px;
      }
      .metal-page .cctv-coverage h2 {
        font-size: 34px;
      }
      .metal-process .cctv-product {
        display: grid;
        grid-template-columns: 60px 1fr;
        column-gap: 20px;
        text-align: left;
        align-content: start;
      }
      .metal-process .cctv-product svg {
        grid-row: 1/3;
        width: 55px;
        height: 55px;
      }
      .metal-process .cctv-product p {
        grid-column: 2;
      }
      .access-page .cctv-hero-copy {
        width: 66%;
      }
      .access-mobile-image {
        display: none;
      }
      .access-hero>.scene-crop {
        position: absolute;
        inset: 0 0 0 40%;
        width: 60%;
        height: 100%;
        aspect-ratio: auto;
        mask-image: linear-gradient(90deg,transparent,#000 24%);
      }
      .access-hero .scene-window {
        position: absolute;
        width: max(100%,960px);
        aspect-ratio: var(--w)/var(--h);
        left: 50%;
        top: 0;
        transform: translateX(-50%);
      }
      .access-hero .scene-window img {
        height: auto;
      }
      .access-page .cctv-coverage>.scene-crop {
        aspect-ratio: auto;
        min-height: 500px;
      }
      @media(max-height:760px)and (min-width:701px) {
        .home-slide-copy {
          padding: 18px 0;
        }
        .home-slide h1 {
          font-size: 52px;
          margin-bottom: 14px;
        }
        .home-slide[data-slide=electrical] h1,.home-slide[data-slide=metal] h1 {
          font-size: 46px;
        }
        .home-slide h1 small {
          font-size: 30px;
        }
        .home-slide-copy>p:not(.cctv-kicker) {
          font-size: 18px;
        }
        .home-slide .cctv-actions {
          margin-top: 20px;
        }
      }
      @media(max-width:1120px) {
        .home-slide-copy {
          width: 80%;
        }
        .home-slide h1 {
          font-size: 56px;
        }
        .home-slide[data-slide=electrical] h1,.home-slide[data-slide=metal] h1,.metal-page .cctv-hero h1,.metal-page .cctv-hero h1 small {
          font-size: 48px;
        }
        .home-slide h1 small {
          font-size: 34px;
        }
        .home-slide-copy>p:not(.cctv-kicker) {
          font-size: 20px;
        }
        .homepage-slides .cards {
          grid-template-columns: repeat(2,minmax(0,1fr));
        }
      }
      @media(max-width:700px) {
        .home-slides {
          --hero-height: clamp(320px,calc(100svh - 340px),430px);
        }
        .home-slide>.scene-crop {
          left: 0;
          width: 100%;
          height: 100%;
          mask-image: none;
        }
        .metal-hero>.scene-crop {
          left: 0;
          width: 100%;
          height: 320px;
          mask-image: none;
        }
        .home-slide::after {
          background: linear-gradient(90deg,rgba(7,24,43,.94),rgba(7,24,43,.72) 65%,rgba(7,24,43,.45));
        }
        .home-slide .cctv-wrap {
          align-items: center;
        }
        .home-slide-copy {
          width: 100%;
          max-width: none;
          padding: 16px 0;
        }
        .home-slide h1 {
          font-size: 34px;
          margin-bottom: 12px;
        }
        .home-slide[data-slide=electrical] h1,.home-slide[data-slide=metal] h1 {
          font-size: 30px;
        }
        .metal-page .cctv-hero h1,.metal-page .cctv-hero h1 small {
          font-size: 34px;
        }
        .home-slide h1 small {
          font-size: 26px;
        }
        .home-slide-copy>p:not(.cctv-kicker) {
          font-size: 15px;
          line-height: 1.35;
        }
        .home-slide .cctv-kicker {
          margin-bottom: 10px;
        }
        .home-slide .cctv-actions {
          margin-top: 16px;
          gap: 8px;
        }
        .home-slide .cctv-button {
          min-height: 44px;
          font-size: 12px;
          padding: 11px 14px;
        }
        .home-slide .cctv-button svg {
          width: 18px;
          height: 18px;
        }
        .homepage-slides .cards {
          grid-template-columns: 1fr;
        }
        .home-benefit-panels {
          height: 184px;
        }
        .home-benefit-panels .cctv-benefits {
          padding: 10px 0;
        }
        .home-benefit-panels .cctv-benefits .cctv-wrap {
          grid-template-rows: repeat(3,minmax(0,1fr));
          gap: 10px;
        }
        .home-benefit-panels .cctv-benefit {
          min-height: 0;
          gap: 12px;
        }
        .home-benefit-panels .cctv-benefit svg {
          width: 28px;
          height: 28px;
          flex-basis: 28px;
        }
        .home-benefit-panels h2 {
          font-size: 14px;
          line-height: 1.2;
          margin-bottom: 2px;
        }
        .home-benefit-panels p {
          font-size: 12px;
          line-height: 1.25;
        }
        .metal-page .cctv-hero-copy {
          width: 100%;
        }
        .metal-page .cctv-hero .cctv-wrap {
          padding-top: 260px;
        }
        .metal-page .cctv-coverage>.scene-crop {
          aspect-ratio: 400/402;
          min-height: 0;
        }
        .metal-page .cctv-coverage h2 {
          font-size: 30px;
        }
        .access-page .cctv-hero-copy {
          width: 100%;
        }
        .access-page .access-hero>.scene-crop {
          display: none;
        }
        .access-mobile-image {
          display: block;
        }
        .access-page .cctv-hero .cctv-wrap {
          padding-top: 190px;
        }
        .access-page .cctv-coverage>.scene-crop {
          aspect-ratio: 659/590;
          min-height: 0;
        }
      }
      @media(max-width:370px) {
        .home-slide h1 {
          font-size: 30px;
        }
        .home-slide[data-slide=electrical] h1,.home-slide[data-slide=metal] h1 {
          font-size: 28px;
        }
        .metal-page .cctv-hero h1,.metal-page .cctv-hero h1 small {
          font-size: 29px;
        }
        .home-slide h1 small {
          font-size: 22px;
        }
        .home-slide .cctv-actions {
          gap: 8px;
        }
        .home-slide .cctv-button {
          font-size: 12px;
          padding: 12px 14px;
        }
      }
      @media(max-width:700px)and (max-height:740px) {
        .home-slide-copy {
          padding: 16px 0;
        }
        .home-slide h1 {
          font-size: 28px;
          margin-bottom: 10px;
        }
        .home-slide[data-slide=electrical] h1,.home-slide[data-slide=metal] h1 {
          font-size: 26px;
        }
        .home-slide h1 small {
          font-size: 22px;
        }
        .home-slide-copy>p:not(.cctv-kicker) {
          font-size: 14px;
          line-height: 1.3;
        }
        .home-slide .cctv-actions {
          margin-top: 14px;
        }
        .home-slide .cctv-button {
          min-height: 40px;
          font-size: 11px;
          padding: 10px 12px;
        }
      }
      footer .rr-footer-logo,footer.cctv-footer .rr-footer-logo {
        display: block;
        width: 330px;
        max-width: 100%;
        height: auto;
        object-fit: contain;
        filter: brightness(0) invert(1);
      }
      @media(max-width:1120px) {
        footer .rr-footer-logo,footer.cctv-footer .rr-footer-logo {
          width: 260px;
        }
      }
      @media(max-width:700px) {
        footer .rr-footer-logo,footer.cctv-footer .rr-footer-logo {
          width: 285px;
        }
      }
      @media(max-width:600px) {
        .rr-header .nav {
          display: grid;
          grid-template-columns: minmax(0,1fr) 90px 37px;
          column-gap: 8px;
        }
        .rr-header .brand {
          grid-column: 1;
          grid-row: 1;
          min-width: 0;
        }
        .rr-header .brand img {
          width: 100%;
          max-width: 225px;
          height: auto;
          aspect-ratio: 2170/725;
        }
        .rr-header .mobile-support {
          grid-column: 2;
          grid-row: 1;
          width: 90px;
          padding-inline: 0;
        }
        .rr-header .menu-toggle {
          grid-column: 3;
          grid-row: 1;
          width: 37px;
          min-width: 37px;
        }
      }
    