
        .antenna-detail-page {
            --navy: #07365b;
            --red: #ef2028;
            --ink: #0a3457
        }

        .antenna-detail-page .ttsl-navbar .nav-link.active {
            color: var(--ttsl-maroon)
        }

        .antenna-hero {
            background: var(--navy);
            color: #fff;
            overflow: hidden;
            position: relative
        }

        .antenna-hero:before {
            content: "";
            position: absolute;
            width: 470px;
            height: 470px;
            border: 1px solid rgba(255, 255, 255, .15);
            border-radius: 50%;
            top: 50%;
            left: 47%;
            transform: translate(-50%, -50%)
        }

        .antenna-hero .container {
            position: relative;
            z-index: 1
        }

        .breadcrumb {
            --bs-breadcrumb-divider: '>';
            margin: 0 0 24px;
            font-size: .77rem;
            font-weight: 700
        }

        .breadcrumb a {
            color: #fff
        }

        .breadcrumb-item.active {
            color: rgba(255, 255, 255, .8)
        }

        .service-kicker {
            color: #ff3640;
            font-size: .74rem;
            font-weight: 800;
            letter-spacing: .14em;
            text-transform: uppercase;
            margin-bottom: 12px
        }

        .hero-copy {
            padding: 10px 0 10px
        }

        .hero-copy h1 {
            color: #fff;
            font-size: clamp(2.45rem, 5vw, 4.1rem);
            margin-bottom: 10px
        }

        .accent-line {
            display: block;
            width: 35px;
            height: 4px;
            background: var(--red);
            margin: 14px 0
        }

        .hero-lead {
            color: #fff;
            font-family: var(--font-heading);
            font-size: clamp(1.1rem, 2vw, 1.36rem);
            line-height: 1.45;
            font-weight: 700;
            max-width: 610px;
            margin: 0 0 13px
        }

        .hero-summary {
            color: rgba(255, 255, 255, .92);
            font-size: .87rem;
            line-height: 1.85;
            max-width: 590px;
            margin: 0
        }

        .hero-points {
            display: flex;
            gap: 13px 29px;
            flex-wrap: wrap;
            list-style: none;
            padding: 0;
            margin: 23px 0 0;
            font-size: .72rem;
            font-weight: 800
        }

        .hero-points i {
            margin-right: 4px
        }

        .hero-visual {
            min-height: 388px;
            display: flex;
            align-items: center;
            justify-content: center;
            background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .09) 15%, rgba(250, 251, 253, .94) 52%, #d7dce4)
        }

        .hero-visual img {
            width: 100%;
            height: 388px;
            object-fit: contain
        }

        .service-overview {
            padding: 48px 0 56px
        }

        .section-heading {
            color: var(--ink);
            font-size: clamp(1.85rem, 3vw, 2.65rem);
            margin: 0
        }

        .overview-copy p {
            color: #154564;
            font-size: .91rem;
            line-height: 1.75;
            max-width: 510px
        }

        .cta-service {
            display: inline-flex;
            align-items: center;
            background: var(--red);
            color: #fff;
            padding: 14px 19px;
            font-size: .75rem;
            font-weight: 800;
            letter-spacing: .04em;
            text-transform: uppercase;
            margin-top: 12px
        }

        .cta-service:hover,
        .cta-service:focus {
            color: #fff;
            background: #cc151d;
            transform: translateY(-2px)
        }

        .gallery-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px 12px
        }

        .gallery-card {
            margin: 0;
            overflow: hidden;
            background: #f6f8fa;
            border: 1px solid #e4e8ed
        }

        .gallery-card img {
            display: block;
            width: 100%;
            aspect-ratio: 1.65/1;
            object-fit: cover;
            transition: transform .3s ease
        }

        .gallery-card:hover img {
            transform: scale(1.025)
        }

        .gallery-card figcaption {
            color: #0d4166;
            font-size: .65rem;
            font-weight: 600;
            padding: 7px 0 0;
            background: #fff
        }

        .gallery-card:last-child img {
            object-fit: contain;
            background: #f5f6f7
        }

        .capability-band {
            background: #f6f8fa;
            padding: 52px 0
        }

        .capability {
            height: 100%;
            padding: 21px;
            background: #fff;
            border-top: 3px solid var(--red);
            box-shadow: 0 8px 24px rgba(3, 43, 72, .06)
        }

        .capability i {
            color: var(--red);
            font-size: 1.38rem
        }

        .capability h2 {
            color: var(--ink);
            font-size: 1rem;
            margin: 13px 0 7px
        }

        .capability p {
            font-size: .81rem;
            line-height: 1.65;
            margin: 0
        }

        @media(max-width:991.98px) {
            .hero-copy {
                padding-top: 32px
            }

            .hero-visual {
                min-height: 300px
            }

            .hero-visual img {
                height: 300px
            }

            .antenna-hero:before {
                left: 50%
            }

            .gallery-grid {
                max-width: 620px
            }
        }

        @media(max-width:575.98px) {
            .hero-copy {
                padding-bottom: 26px
            }

            .breadcrumb {
                margin-bottom: 16px
            }

            .hero-points {
                gap: 10px 14px;
                font-size: .66rem
            }

            .hero-visual,
            .hero-visual img {
                min-height: 245px;
                height: 245px
            }

            .service-overview {
                padding: 36px 0 42px
            }

            .gallery-grid {
                grid-template-columns: 1fr;
                gap: 18px
            }

            .gallery-card img {
                aspect-ratio: 1.55/1
            }

            .cta-service {
                width: 100%;
                justify-content: center
            }
        }
        /* TTSL logo palette: deep charcoal, signal red and golden yellow. */
        .antenna-detail-page {
            --ttsl-logo-red: #b7131b;
            --ttsl-logo-gold: #f2d319;
            --ttsl-logo-charcoal: #262626;
            --ttsl-logo-slate: #4a4a4a;
        }

        .antenna-hero {
            background: linear-gradient(112deg, var(--ttsl-logo-charcoal) 0%, #313131 54%, var(--ttsl-logo-slate) 100%);
            border-bottom: 4px solid var(--ttsl-logo-red);
        }

        .antenna-hero::after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(90deg, rgba(183, 19, 27, .17), transparent 46%);
            pointer-events: none;
        }

        .antenna-hero::before {
            border-color: rgba(242, 211, 25, .28);
        }

        .antenna-hero .service-kicker {
            color: var(--ttsl-logo-gold);
        }

        .antenna-hero .accent-line {
            background: var(--ttsl-logo-gold);
            box-shadow: 0 0 0 4px rgba(242, 211, 25, .11);
        }

        .antenna-hero .hero-points i {
            color: var(--ttsl-logo-gold);
        }

        .antenna-hero .hero-visual {
            background: linear-gradient(90deg, rgba(183, 19, 27, .22), rgba(242, 211, 25, .10) 34%, rgba(247, 247, 247, .96) 57%, #d2d2d2);
        }
        .environmental-left-gallery {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px 12px;
            margin-top: 28px;
        }

        @media (max-width: 575.98px) {
            .environmental-left-gallery {
                grid-template-columns: 1fr;
                margin-top: 24px;
            }
        }
    
