/*
==========================================================================
iThink Media Ltd — Premium Homepage
Scoped only to the homepage.
==========================================================================
*/

.homepage-premium{
    --home-ink:#071b43;
    --home-navy:#06152f;
    --home-blue:#1769d6;
    --home-blue-rgb:23,105,214;
    --home-red:#ef2235;
    --home-red-rgb:239,34,53;
    --home-gold:#f29a14;
    --home-gold-rgb:242,154,20;
    --home-green:#07966b;
    --home-green-rgb:7,150,107;
    --home-cyan:#69d9ff;
    --home-muted:#58708d;
    --home-soft:#f5f8fc;
    --home-border:rgba(7,27,67,.10);
    --home-shadow:0 24px 60px rgba(7,27,67,.12);
}

.homepage-premium .home-icon-sprite{
    position:absolute;
    width:0;
    height:0;
    overflow:hidden;
}

.homepage-premium .site-header{
    box-shadow:0 10px 28px rgba(7,27,67,.08);
}

.homepage-premium .section{
    position:relative;
}

.homepage-premium .home-section-kicker{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:15px;
    color:var(--home-blue);
    font-size:.76rem;
    font-weight:900;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.homepage-premium .home-section-kicker::before{
    content:"";
    width:29px;
    height:3px;
    border-radius:999px;
    background:
        linear-gradient(
            90deg,
            var(--home-red),
            var(--home-gold)
        );
}

.homepage-premium .home-section-kicker.light{
    color:#8de4ff;
}

.homepage-premium .home-section-heading{
    max-width:820px;
}

.homepage-premium .home-heading-centered{
    margin:0 auto;
    text-align:center;
}

.homepage-premium .home-section-heading h2{
    margin:0;
    color:var(--home-ink);
    font-size:clamp(2.55rem,4.8vw,4.8rem);
    line-height:1.01;
    letter-spacing:-.057em;
}

.homepage-premium .home-section-heading h2 span{
    color:var(--home-blue);
}

.homepage-premium .home-section-heading > p{
    max-width:720px;
    margin:21px auto 0;
    color:var(--home-muted);
    font-size:1.04rem;
    line-height:1.75;
}

/*
==========================================================================
Permanent commercial ticker
==========================================================================
*/

.home-commercial-ticker{
    position:relative;
    z-index:40;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    min-height:60px;
    overflow:hidden;
    border-bottom:1px solid rgba(7,27,67,.12);
    background:
        linear-gradient(
            90deg,
            #061a3f 0%,
            #0a3474 55%,
            #08725f 100%
        );
    box-shadow:
        0 12px 32px rgba(7,27,67,.15),
        inset 0 1px 0 rgba(255,255,255,.08);
}

.home-ticker-label{
    position:relative;
    z-index:4;
    display:flex;
    align-items:center;
    gap:11px;
    min-width:230px;
    padding:10px 22px;
    color:#ffffff;
    background:
        linear-gradient(
            135deg,
            rgba(239,34,53,.95),
            rgba(191,12,36,.96)
        );
    clip-path:
        polygon(
            0 0,
            calc(100% - 26px) 0,
            100% 50%,
            calc(100% - 26px) 100%,
            0 100%
        );
}

.home-ticker-label span:last-child{
    display:grid;
}

.home-ticker-label strong{
    font-size:.82rem;
    letter-spacing:.02em;
}

.home-ticker-label small{
    margin-top:2px;
    color:rgba(255,255,255,.76);
    font-size:.64rem;
    font-weight:750;
    letter-spacing:.055em;
    text-transform:uppercase;
}

.home-ticker-live-dot{
    width:11px;
    height:11px;
    flex:0 0 11px;
    border-radius:50%;
    background:#ffffff;
    box-shadow:
        0 0 0 5px rgba(255,255,255,.15),
        0 0 18px rgba(255,255,255,.70);
    animation:homeTickerPulse 2s ease-in-out infinite;
}

.home-ticker-window{
    min-width:0;
    overflow:hidden;
    mask-image:
        linear-gradient(
            90deg,
            transparent,
            #000 3%,
            #000 97%,
            transparent
        );
}

.home-ticker-track{
    --home-ticker-duration:128s;
    display:flex;
    align-items:center;
    width:max-content;
    height:100%;
    animation:
        homeCommercialTicker
        var(--home-ticker-duration)
        linear
        infinite;
    will-change:transform;
}

.home-ticker-window:hover .home-ticker-track,
.home-ticker-window:focus-within .home-ticker-track{
    animation-play-state:paused;
}

.home-ticker-group{
    display:flex;
    align-items:center;
    flex-shrink:0;
    min-height:60px;
    padding-right:34px;
}

.home-ticker-item{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-right:11px;
    padding:8px 14px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:999px;
    background:rgba(255,255,255,.075);
    color:#f3f8ff;
    font-size:.79rem;
    font-weight:780;
    text-decoration:none;
    white-space:nowrap;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08);
    transition:
        background .22s ease,
        transform .22s ease,
        border-color .22s ease;
}

.home-ticker-item:hover{
    transform:translateY(-2px);
    border-color:rgba(255,255,255,.24);
    background:rgba(255,255,255,.13);
}

.home-ticker-item svg{
    width:20px;
    height:20px;
    flex:0 0 20px;
    fill:none;
    stroke:#81e4ff;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.home-ticker-advertise{
    border-color:rgba(255,173,23,.42);
    background:rgba(255,173,23,.14);
    color:#ffffff;
}

.home-ticker-advertise svg{
    stroke:#ffd26a;
}

.home-ticker-quote{
    position:relative;
    z-index:4;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-width:162px;
    padding:0 22px;
    border-left:1px solid rgba(255,255,255,.13);
    background:rgba(2,17,41,.40);
    color:#ffffff;
    font-size:.78rem;
    font-weight:850;
    text-decoration:none;
    transition:background .22s ease;
}

.home-ticker-quote:hover{
    background:rgba(239,34,53,.90);
}

.home-ticker-quote span{
    font-size:1rem;
}

/*
==========================================================================
Hero
==========================================================================
*/

.home-hero-premium{
    position:relative;
    overflow:hidden;
    padding:78px 0 88px;
    background:
        radial-gradient(
            circle at 84% 22%,
            rgba(23,105,214,.38),
            transparent 30%
        ),
        radial-gradient(
            circle at 8% 5%,
            rgba(239,34,53,.18),
            transparent 25%
        ),
        radial-gradient(
            circle at 74% 92%,
            rgba(7,150,107,.17),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #04112a 0%,
            #07265b 58%,
            #083f77 100%
        );
}

.home-hero-grid-pattern{
    position:absolute;
    inset:0;
    opacity:.16;
    background-image:
        linear-gradient(
            rgba(255,255,255,.08) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.08) 1px,
            transparent 1px
        );
    background-size:56px 56px;
    mask-image:
        linear-gradient(
            90deg,
            rgba(0,0,0,.9),
            rgba(0,0,0,.25)
        );
}

.home-hero-light{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
    filter:blur(4px);
}

.home-hero-light-one{
    top:16%;
    left:49%;
    width:11px;
    height:11px;
    background:#ef2235;
    box-shadow:
        0 0 0 9px rgba(239,34,53,.10),
        0 0 36px rgba(239,34,53,.80);
}

.home-hero-light-two{
    right:7%;
    bottom:14%;
    width:10px;
    height:10px;
    background:#69d9ff;
    box-shadow:
        0 0 0 9px rgba(105,217,255,.10),
        0 0 36px rgba(105,217,255,.75);
}

.home-hero-layout{
    position:relative;
    z-index:3;
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);
    align-items:center;
    gap:66px;
}

.home-hero-copy{
    max-width:680px;
}

.home-premium-kicker{
    display:inline-flex;
    align-items:center;
    gap:11px;
    margin-bottom:18px;
    color:#8fe5ff;
    font-size:.76rem;
    font-weight:900;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.home-premium-kicker i{
    width:32px;
    height:3px;
    border-radius:999px;
    background:
        linear-gradient(
            90deg,
            var(--home-red),
            var(--home-gold)
        );
}

.home-hero-copy h1{
    margin:0;
    color:#ffffff;
    font-size:clamp(3.4rem,6vw,6.4rem);
    line-height:.93;
    letter-spacing:-.068em;
}

.home-hero-copy h1 span{
    display:block;
    margin-top:11px;
    color:transparent;
    background:
        linear-gradient(
            90deg,
            #ff3348 0%,
            #ff9a15 34%,
            #52a8ff 68%,
            #3be39b 100%
        );
    -webkit-background-clip:text;
    background-clip:text;
}

.home-hero-copy > p{
    max-width:655px;
    margin:25px 0 0;
    color:#c8daed;
    font-size:1.07rem;
    line-height:1.78;
}

.home-hero-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin-top:31px;
}

.home-primary-action,
.home-advertise-action{
    min-height:51px;
}

.home-primary-action span{
    margin-left:5px;
}

.home-watch-action{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:51px;
    padding:7px 15px 7px 8px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:13px;
    background:rgba(255,255,255,.075);
    color:#ffffff;
    text-decoration:none;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.10);
    backdrop-filter:blur(9px);
    transition:
        transform .25s ease,
        background .25s ease,
        border-color .25s ease;
}

.home-watch-action:hover{
    transform:translateY(-3px);
    border-color:rgba(255,255,255,.27);
    background:rgba(255,255,255,.12);
}

.home-watch-play{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    flex:0 0 36px;
    border-radius:10px;
    background:#ef2235;
    color:#ffffff;
    font-size:.72rem;
    box-shadow:0 10px 25px rgba(239,34,53,.30);
}

.home-watch-action > span:last-child{
    display:grid;
}

.home-watch-action strong{
    font-size:.78rem;
}

.home-watch-action small{
    margin-top:2px;
    color:#aebfd2;
    font-size:.62rem;
}

.home-trust-row{
    display:flex;
    flex-wrap:wrap;
    gap:11px 18px;
    margin-top:25px;
    color:#b8cade;
    font-size:.72rem;
    font-weight:720;
}

.home-trust-row span{
    display:inline-flex;
    align-items:center;
    gap:7px;
}

.home-trust-row i{
    display:grid;
    place-items:center;
    width:22px;
    height:22px;
    border:1px solid rgba(105,217,255,.24);
    border-radius:8px;
    background:rgba(105,217,255,.09);
    color:#70ddff;
    font-style:normal;
    font-size:.68rem;
}

.home-hero-visual{
    position:relative;
    min-height:550px;
    perspective:1200px;
}

.home-hero-frame{
    --home-rx:0deg;
    --home-ry:0deg;
    position:absolute;
    inset:18px 0 70px 10px;
    margin:0;
    overflow:hidden;
    border:2px solid rgba(126,220,255,.72);
    border-radius:30px;
    background:#07162f;
    box-shadow:
        0 38px 90px rgba(0,0,0,.45),
        0 0 0 7px rgba(105,217,255,.055),
        0 0 50px rgba(23,105,214,.22),
        inset 0 1px 0 rgba(255,255,255,.22);
    transform:
        rotateX(var(--home-rx))
        rotateY(var(--home-ry));
    transform-style:preserve-3d;
    transition:
        transform .18s ease-out,
        box-shadow .35s ease;
}

.home-hero-frame:hover{
    box-shadow:
        0 44px 105px rgba(0,0,0,.50),
        0 0 0 8px rgba(105,217,255,.075),
        0 0 65px rgba(23,105,214,.31),
        inset 0 1px 0 rgba(255,255,255,.28);
}

.home-hero-frame::before{
    content:"";
    position:absolute;
    inset:11px;
    z-index:5;
    border:1px solid rgba(255,255,255,.44);
    border-radius:21px;
    pointer-events:none;
}

.home-hero-frame img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transform:scale(1.002);
    transition:
        transform .55s ease,
        filter .55s ease;
}

.home-hero-frame:hover img{
    transform:scale(1.035);
    filter:saturate(1.04) contrast(1.025);
}

.home-hero-image-shade{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            to top,
            rgba(3,12,31,.91) 0%,
            rgba(3,12,31,.25) 38%,
            transparent 67%
        );
}

.home-frame-corner{
    position:absolute;
    z-index:7;
    width:56px;
    height:56px;
    pointer-events:none;
}

.home-frame-corner.corner-one{
    top:17px;
    left:17px;
    border-top:3px solid #69d9ff;
    border-left:3px solid #69d9ff;
    border-radius:12px 0 0;
}

.home-frame-corner.corner-two{
    right:17px;
    bottom:17px;
    border-right:3px solid #ef2235;
    border-bottom:3px solid #ef2235;
    border-radius:0 0 12px;
}

.home-hero-frame figcaption{
    position:absolute;
    left:31px;
    right:31px;
    bottom:24px;
    z-index:6;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    color:#ffffff;
}

.home-hero-frame figcaption > span{
    display:grid;
}

.home-hero-frame figcaption small{
    color:#a9c4dd;
    font-size:.69rem;
    font-weight:780;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.home-hero-frame figcaption strong{
    margin-top:5px;
    font-size:1rem;
}

.home-hero-frame figcaption a{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 13px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:11px;
    background:rgba(255,255,255,.10);
    color:#ffffff;
    font-size:.72rem;
    font-weight:820;
    text-decoration:none;
    backdrop-filter:blur(8px);
}

.home-network-ribbon{
    position:absolute;
    left:42px;
    right:25px;
    bottom:0;
    z-index:8;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    overflow:hidden;
    border:1px solid rgba(255,255,255,.20);
    border-radius:19px;
    background:
        linear-gradient(
            135deg,
            rgba(6,21,47,.95),
            rgba(12,58,119,.93)
        );
    box-shadow:
        0 22px 46px rgba(0,0,0,.32),
        inset 0 1px 0 rgba(255,255,255,.10);
    backdrop-filter:blur(16px);
}

.home-network-ribbon a{
    position:relative;
    display:grid;
    padding:14px 16px 13px 29px;
    color:#ffffff;
    text-decoration:none;
}

.home-network-ribbon a + a{
    border-left:1px solid rgba(255,255,255,.12);
}

.home-network-ribbon strong{
    font-size:.78rem;
}

.home-network-ribbon small{
    margin-top:3px;
    color:#a9bfd5;
    font-size:.63rem;
}

.brand-signal{
    position:absolute;
    top:19px;
    left:13px;
    width:8px;
    height:8px;
    border-radius:50%;
}

.itv-signal{
    background:#ef2235;
    box-shadow:0 0 14px rgba(239,34,53,.80);
}

.iradio-signal{
    background:#ffad17;
    box-shadow:0 0 14px rgba(255,173,23,.75);
}

.idigest-signal{
    background:#36d18e;
    box-shadow:0 0 14px rgba(54,209,142,.75);
}

.home-visual-orbit{
    position:absolute;
    border:1px solid rgba(105,217,255,.19);
    border-radius:50%;
    pointer-events:none;
}

.home-visual-orbit::after{
    content:"";
    position:absolute;
    width:11px;
    height:11px;
    border-radius:50%;
    background:#ef2235;
    box-shadow:0 0 22px rgba(239,34,53,.85);
}

.home-visual-orbit.orbit-one{
    top:-5px;
    right:-70px;
    width:260px;
    height:260px;
}

.home-visual-orbit.orbit-one::after{
    left:26px;
    bottom:42px;
}

.home-visual-orbit.orbit-two{
    left:-52px;
    bottom:55px;
    width:160px;
    height:160px;
    opacity:.70;
}

.home-visual-orbit.orbit-two::after{
    top:13px;
    right:13px;
    background:#69d9ff;
    box-shadow:0 0 22px rgba(105,217,255,.80);
}

/*
==========================================================================
Media network
==========================================================================
*/

.home-network-section{
    overflow:hidden;
    padding-top:94px;
    padding-bottom:96px;
    background:
        radial-gradient(
            circle at 7% 12%,
            rgba(23,105,214,.09),
            transparent 28%
        ),
        radial-gradient(
            circle at 93% 88%,
            rgba(7,150,107,.08),
            transparent 25%
        ),
        #ffffff;
}

.home-network-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    margin-top:46px;
}

.home-network-card{
    --network-accent:#1769d6;
    --network-rgb:23,105,214;
    position:relative;
    min-height:390px;
    overflow:hidden;
    padding:28px 27px 27px;
    border:1px solid rgba(var(--network-rgb),.22);
    border-radius:27px;
    background:
        radial-gradient(
            circle at 16% 2%,
            rgba(var(--network-rgb),.14),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            #ffffff,
            #f7faff
        );
    color:var(--home-ink);
    text-decoration:none;
    box-shadow:
        0 20px 45px rgba(7,27,67,.09),
        0 8px 25px rgba(var(--network-rgb),.08);
    transition:
        transform .30s ease,
        box-shadow .30s ease,
        border-color .30s ease;
}

.home-network-card::before{
    content:"";
    position:absolute;
    inset:9px;
    border:1px solid rgba(var(--network-rgb),.19);
    border-radius:20px;
    pointer-events:none;
    transition:
        inset .30s ease,
        border-color .30s ease;
}

.home-network-card::after{
    content:"";
    position:absolute;
    right:-75px;
    bottom:-85px;
    width:230px;
    height:230px;
    border-radius:50%;
    background:rgb(var(--network-rgb));
    opacity:.055;
    transition:
        transform .35s ease,
        opacity .35s ease;
}

.home-network-card:hover{
    transform:translateY(-9px);
    border-color:rgba(var(--network-rgb),.45);
    box-shadow:
        0 30px 62px rgba(7,27,67,.14),
        0 15px 34px rgba(var(--network-rgb),.15);
}

.home-network-card:hover::before{
    inset:7px;
    border-color:rgba(var(--network-rgb),.38);
}

.home-network-card:hover::after{
    transform:scale(1.16);
    opacity:.085;
}

.home-network-itv{
    --network-accent:#ef2235;
    --network-rgb:239,34,53;
}

.home-network-iradio{
    --network-accent:#e39100;
    --network-rgb:227,145,0;
}

.home-network-idigest{
    --network-accent:#07966b;
    --network-rgb:7,150,107;
}

.home-network-card > *{
    position:relative;
    z-index:2;
}

.home-network-card-number{
    position:absolute;
    top:28px;
    right:28px;
    color:rgba(7,27,67,.34);
    font-size:.74rem;
    font-weight:900;
    letter-spacing:.18em;
}

.home-network-logo{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    height:88px;
    margin-bottom:20px;
}

.home-network-logo img{
    max-width:170px;
    max-height:76px;
    object-fit:contain;
    filter:drop-shadow(0 8px 12px rgba(7,27,67,.10));
    transition:transform .30s ease;
}

.home-network-card:hover .home-network-logo img{
    transform:translateY(-4px) scale(1.025);
}

.home-network-status{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 10px;
    border:1px solid rgba(var(--network-rgb),.17);
    border-radius:999px;
    background:rgba(var(--network-rgb),.07);
    color:var(--network-accent);
    font-size:.65rem;
    font-weight:850;
    letter-spacing:.03em;
}

.home-network-status i{
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--network-accent);
    box-shadow:0 0 12px rgba(var(--network-rgb),.65);
}

.home-network-card h3{
    margin:20px 0 12px;
    color:var(--home-ink);
    font-size:1.65rem;
    letter-spacing:-.035em;
}

.home-network-card p{
    margin:0;
    color:var(--home-muted);
    font-size:.92rem;
    line-height:1.70;
}

.home-network-link{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-top:25px;
    padding-top:20px;
    border-top:1px solid rgba(7,27,67,.08);
    color:var(--network-accent);
    font-size:.78rem;
    font-weight:870;
}

.home-network-link b{
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    border-radius:10px;
    background:rgba(var(--network-rgb),.10);
    transition:
        transform .25s ease,
        background .25s ease;
}

.home-network-card:hover .home-network-link b{
    transform:translateX(4px);
    background:rgba(var(--network-rgb),.17);
}

/*
==========================================================================
Featured network content
==========================================================================
*/

.home-featured-section{
    overflow:hidden;
    padding-top:96px;
    padding-bottom:102px;
    background:
        radial-gradient(
            circle at 88% 14%,
            rgba(23,105,214,.28),
            transparent 30%
        ),
        radial-gradient(
            circle at 10% 86%,
            rgba(239,34,53,.14),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #04142f,
            #08265b 58%,
            #093c72
        );
}

.home-featured-grid-pattern{
    position:absolute;
    inset:0;
    opacity:.13;
    background-image:
        linear-gradient(
            rgba(255,255,255,.07) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.07) 1px,
            transparent 1px
        );
    background-size:55px 55px;
}

.home-featured-intro{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr .82fr;
    align-items:end;
    gap:60px;
}

.home-featured-intro h2{
    max-width:720px;
    margin:0;
    color:#ffffff;
    font-size:clamp(2.8rem,5vw,5rem);
    line-height:.98;
    letter-spacing:-.06em;
}

.home-featured-intro p{
    margin:0;
    color:#c2d4e8;
    font-size:1rem;
    line-height:1.72;
}

.home-inline-action{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-top:18px;
    color:#7fe2ff;
    font-size:.78rem;
    font-weight:850;
    text-decoration:none;
}

.home-featured-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:19px;
    margin-top:46px;
}

.home-feature-card{
    overflow:hidden;
    border:1px solid rgba(255,255,255,.13);
    border-radius:23px;
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.12),
            rgba(255,255,255,.055)
        );
    box-shadow:
        0 23px 48px rgba(0,0,0,.24),
        inset 0 1px 0 rgba(255,255,255,.10);
    backdrop-filter:blur(12px);
    transition:
        transform .30s ease,
        border-color .30s ease,
        box-shadow .30s ease;
}

.home-feature-card:hover{
    transform:translateY(-8px);
    border-color:rgba(255,255,255,.27);
    box-shadow:
        0 33px 65px rgba(0,0,0,.32),
        inset 0 1px 0 rgba(255,255,255,.14);
}

.home-feature-card figure{
    position:relative;
    height:205px;
    margin:0;
    overflow:hidden;
}

.home-feature-card figure img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .45s ease;
}

.home-feature-card:hover figure img{
    transform:scale(1.055);
}

.home-feature-shade{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            to top,
            rgba(3,12,31,.75),
            transparent 62%
        );
}

.home-feature-tag{
    position:absolute;
    left:15px;
    bottom:14px;
    padding:7px 10px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    background:rgba(5,18,43,.74);
    color:#ffffff;
    font-size:.64rem;
    font-weight:850;
    backdrop-filter:blur(8px);
}

.home-feature-body{
    padding:20px 20px 22px;
}

.home-feature-body small{
    color:#8fdfff;
    font-size:.63rem;
    font-weight:820;
    letter-spacing:.045em;
    text-transform:uppercase;
}

.home-feature-body h3{
    margin:10px 0 10px;
    font-size:1.05rem;
    line-height:1.36;
}

.home-feature-body h3 a{
    color:#ffffff;
    text-decoration:none;
}

.home-feature-body p{
    margin:0;
    color:#b8cadd;
    font-size:.81rem;
    line-height:1.62;
}

/*
==========================================================================
Integrated commercial services
==========================================================================
*/

.home-services-section{
    overflow:hidden;
    padding-top:98px;
    padding-bottom:94px;
    background:
        radial-gradient(
            circle at 5% 15%,
            rgba(23,105,214,.09),
            transparent 28%
        ),
        radial-gradient(
            circle at 95% 85%,
            rgba(239,34,53,.07),
            transparent 25%
        ),
        linear-gradient(
            180deg,
            #f8fbff,
            #ffffff
        );
}

.home-services-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px;
    margin-top:46px;
}

.home-service-card{
    --service-accent:#1769d6;
    --service-rgb:23,105,214;
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:335px;
    overflow:hidden;
    padding:25px 23px 23px;
    border:1px solid rgba(var(--service-rgb),.34);
    border-radius:24px;
    background:
        radial-gradient(
            circle at 14% 2%,
            rgba(var(--service-rgb),.13),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            #ffffff,
            #f7faff
        );
    box-shadow:
        0 20px 42px rgba(7,27,67,.09),
        0 10px 28px rgba(var(--service-rgb),.09);
    transition:
        transform .28s ease,
        border-color .28s ease,
        box-shadow .28s ease;
}

.home-service-card::before{
    content:"";
    position:absolute;
    inset:6px;
    border:1px solid rgba(var(--service-rgb),.25);
    border-radius:18px;
    pointer-events:none;
    transition:
        inset .28s ease,
        border-color .28s ease;
}

.home-service-card::after{
    content:"";
    position:absolute;
    left:-60px;
    top:-70px;
    width:200px;
    height:200px;
    border-radius:50%;
    background:rgb(var(--service-rgb));
    opacity:.055;
    transition:
        transform .32s ease,
        opacity .32s ease;
}

.home-service-card:hover{
    transform:translateY(-8px);
    border-color:rgba(var(--service-rgb),.72);
    box-shadow:
        0 30px 58px rgba(7,27,67,.14),
        0 15px 34px rgba(var(--service-rgb),.17),
        0 0 25px rgba(var(--service-rgb),.08);
}

.home-service-card:hover::before{
    inset:4px;
    border-color:rgba(var(--service-rgb),.48);
}

.home-service-card:hover::after{
    transform:scale(1.15);
    opacity:.09;
}

.home-service-card > *{
    position:relative;
    z-index:2;
}

.service-red{
    --service-accent:#ef2235;
    --service-rgb:239,34,53;
}

.service-gold{
    --service-accent:#e39100;
    --service-rgb:227,145,0;
}

.service-green{
    --service-accent:#07966b;
    --service-rgb:7,150,107;
}

.home-service-card-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-bottom:25px;
}

.home-service-number{
    color:rgba(7,27,67,.38);
    font-size:.73rem;
    font-weight:900;
    letter-spacing:.17em;
}

.home-service-icon{
    display:grid;
    place-items:center;
    width:54px;
    height:54px;
    flex:0 0 54px;
    border:1px solid rgba(var(--service-rgb),.31);
    border-radius:17px;
    background:
        radial-gradient(
            circle at 28% 18%,
            rgba(255,255,255,1),
            transparent 42%
        ),
        linear-gradient(
            145deg,
            rgba(var(--service-rgb),.18),
            rgba(var(--service-rgb),.055)
        );
    box-shadow:
        0 12px 24px rgba(var(--service-rgb),.15),
        inset 0 1px 0 rgba(255,255,255,.96);
    color:var(--service-accent);
    transition:
        transform .28s ease,
        box-shadow .28s ease;
}

.home-service-icon svg{
    width:28px;
    height:28px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.75;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:transform .28s ease;
}

.home-service-card:hover .home-service-icon{
    transform:translateY(-4px);
    box-shadow:
        0 17px 31px rgba(var(--service-rgb),.24),
        0 0 18px rgba(var(--service-rgb),.12),
        inset 0 1px 0 rgba(255,255,255,1);
}

.home-service-card:hover .home-service-icon svg{
    transform:scale(1.10);
}

.home-service-card h3{
    margin:0 0 13px;
    color:var(--home-ink);
    font-size:1.18rem;
    line-height:1.30;
    letter-spacing:-.026em;
}

.home-service-card p{
    margin:0;
    color:var(--home-muted);
    font-size:.88rem;
    line-height:1.66;
}

.home-service-card > a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-top:auto;
    padding-top:23px;
    color:var(--service-accent);
    font-size:.75rem;
    font-weight:870;
    text-decoration:none;
}

.home-service-card > a span{
    display:grid;
    place-items:center;
    width:31px;
    height:31px;
    border-radius:10px;
    background:rgba(var(--service-rgb),.09);
    transition:
        transform .24s ease,
        background .24s ease;
}

.home-service-card:hover > a span{
    transform:translateX(4px);
    background:rgba(var(--service-rgb),.15);
}

.home-services-footer{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:17px;
    margin-top:34px;
    color:var(--home-muted);
    font-size:.82rem;
}

.home-services-footer a{
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:11px 16px;
    border:1px solid rgba(23,105,214,.18);
    border-radius:12px;
    background:#ffffff;
    color:var(--home-blue);
    font-size:.76rem;
    font-weight:850;
    text-decoration:none;
    box-shadow:0 10px 25px rgba(7,27,67,.07);
}

/*
==========================================================================
Outdoor + Digital
==========================================================================
*/

.home-outdoor-section{
    position:relative;
    overflow:hidden;
    padding-top:100px;
    padding-bottom:102px;
    background:
        radial-gradient(
            circle at 88% 20%,
            rgba(23,105,214,.26),
            transparent 29%
        ),
        radial-gradient(
            circle at 8% 80%,
            rgba(239,34,53,.15),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #04132d,
            #08285d 58%,
            #094778
        );
}

.home-outdoor-radiance{
    position:absolute;
    top:-140px;
    right:-100px;
    width:480px;
    height:480px;
    border-radius:50%;
    border:1px solid rgba(105,217,255,.15);
    box-shadow:
        0 0 0 80px rgba(105,217,255,.025),
        0 0 0 160px rgba(105,217,255,.018);
}

.home-outdoor-layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(470px,1.08fr) minmax(0,.92fr);
    align-items:center;
    gap:70px;
}

.home-outdoor-visual{
    position:relative;
    min-height:540px;
}

.home-outdoor-frame{
    position:absolute;
    inset:0 22px 45px 0;
    margin:0;
    overflow:hidden;
    border:2px solid rgba(105,217,255,.65);
    border-radius:30px;
    background:#07162f;
    box-shadow:
        0 35px 80px rgba(0,0,0,.40),
        0 0 0 7px rgba(105,217,255,.05),
        0 0 42px rgba(23,105,214,.20);
}

.home-outdoor-inner-frame{
    position:absolute;
    inset:11px;
    z-index:5;
    border:1px solid rgba(255,255,255,.50);
    border-radius:21px;
    pointer-events:none;
}

.home-outdoor-frame img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:
        transform .50s ease,
        filter .50s ease;
}

.home-outdoor-visual:hover .home-outdoor-frame img{
    transform:scale(1.045);
    filter:saturate(1.05) contrast(1.025);
}

.home-outdoor-image-shade{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            to top,
            rgba(3,12,31,.85),
            transparent 54%
        );
}

.home-outdoor-frame figcaption{
    position:absolute;
    left:28px;
    bottom:24px;
    z-index:6;
    display:grid;
    color:#ffffff;
}

.home-outdoor-frame figcaption strong{
    font-size:1.05rem;
}

.home-outdoor-frame figcaption span{
    margin-top:4px;
    color:#bad1e6;
    font-size:.72rem;
}

.home-outdoor-badge{
    position:absolute;
    right:0;
    bottom:0;
    z-index:8;
    display:flex;
    align-items:center;
    gap:12px;
    min-width:275px;
    padding:16px 19px;
    border:1px solid rgba(255,255,255,.20);
    border-radius:18px;
    background:
        linear-gradient(
            135deg,
            rgba(239,34,53,.96),
            rgba(174,11,37,.96)
        );
    color:#ffffff;
    box-shadow:
        0 22px 45px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.16);
}

.home-outdoor-badge svg{
    width:30px;
    height:30px;
    fill:none;
    stroke:#ffffff;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.home-outdoor-badge span{
    display:grid;
}

.home-outdoor-badge strong{
    font-size:.85rem;
}

.home-outdoor-badge small{
    margin-top:3px;
    color:rgba(255,255,255,.78);
    font-size:.65rem;
}

.home-outdoor-copy{
    max-width:650px;
}

.home-outdoor-copy h2{
    margin:0;
    color:#ffffff;
    font-size:clamp(2.8rem,4.7vw,5rem);
    line-height:.99;
    letter-spacing:-.058em;
}

.home-outdoor-copy h2 span{
    display:block;
    color:#72ddff;
}

.home-outdoor-copy > p{
    margin:23px 0 0;
    color:#c5d7e9;
    font-size:1.03rem;
    line-height:1.75;
}

.home-outdoor-capabilities{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:11px;
    margin-top:27px;
}

.home-outdoor-capabilities span{
    display:flex;
    align-items:flex-start;
    gap:9px;
    padding:12px 13px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:13px;
    background:rgba(255,255,255,.06);
    color:#d8e7f4;
    font-size:.76rem;
    font-weight:740;
    line-height:1.45;
}

.home-outdoor-capabilities i{
    display:grid;
    place-items:center;
    width:22px;
    height:22px;
    flex:0 0 22px;
    border-radius:8px;
    background:rgba(105,217,255,.11);
    color:#72ddff;
    font-style:normal;
    font-size:.68rem;
}

.home-outdoor-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:30px;
}

.home-outline-button{
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:13px 17px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:11px;
    background:rgba(255,255,255,.06);
    color:#ffffff;
    font-size:.77rem;
    font-weight:840;
    text-decoration:none;
    backdrop-filter:blur(8px);
}

/*
==========================================================================
Compact statistics
==========================================================================
*/

.home-stats-section{
    position:relative;
    padding:54px 0;
    background:#f7faff;
}

.home-stats-band{
    position:relative;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    min-height:150px;
    overflow:hidden;
    padding:22px 20px;
    border:1px solid rgba(105,217,255,.65);
    border-radius:28px;
    background:
        radial-gradient(
            circle at 93% 50%,
            rgba(7,150,107,.42),
            transparent 36%
        ),
        linear-gradient(
            110deg,
            #061b42 0%,
            #0a3473 58%,
            #08745f 100%
        );
    box-shadow:
        0 26px 58px rgba(7,27,67,.18),
        0 0 0 7px rgba(23,105,214,.035),
        0 0 34px rgba(23,105,214,.13),
        inset 0 1px 0 rgba(255,255,255,.11);
}

.home-stats-glow-line{
    position:absolute;
    inset:2px;
    border:2px solid transparent;
    border-radius:25px;
    background:
        linear-gradient(
            90deg,
            #4d8cff,
            #65dbff,
            #36d99b,
            #4d8cff
        )
        border-box;
    mask:
        linear-gradient(#000 0 0) padding-box,
        linear-gradient(#000 0 0);
    -webkit-mask:
        linear-gradient(#000 0 0) padding-box,
        linear-gradient(#000 0 0);
    mask-composite:exclude;
    -webkit-mask-composite:xor;
    opacity:.86;
    pointer-events:none;
    animation:homeStatsGlow 5s linear infinite;
}

.home-stat-item{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:15px;
    min-width:0;
    padding:13px 20px;
    color:#ffffff;
}

.home-stat-item + .home-stat-item{
    border-left:1px solid rgba(255,255,255,.16);
}

.home-stat-icon{
    display:grid;
    place-items:center;
    width:53px;
    height:53px;
    flex:0 0 53px;
    border:1px solid rgba(105,217,255,.42);
    border-radius:16px;
    background:
        linear-gradient(
            145deg,
            rgba(23,105,214,.35),
            rgba(7,150,107,.16)
        );
    box-shadow:
        0 0 20px rgba(105,217,255,.16),
        inset 0 1px 0 rgba(255,255,255,.13);
}

.home-stat-icon svg{
    width:27px;
    height:27px;
    fill:none;
    stroke:#ffffff;
    stroke-width:1.75;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.home-stat-item > span:last-child{
    display:grid;
    min-width:0;
}

.home-stat-item strong{
    color:#ffffff;
    font-size:2.25rem;
    line-height:1;
    letter-spacing:-.04em;
}

.home-stat-item small{
    margin-top:7px;
    color:#c8daec;
    font-size:.71rem;
    line-height:1.35;
}

/*
==========================================================================
Leadership
==========================================================================
*/

.home-leadership-section{
    overflow:hidden;
    padding-top:96px;
    padding-bottom:92px;
    background:
        radial-gradient(
            circle at 8% 12%,
            rgba(23,105,214,.08),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 87%,
            rgba(7,150,107,.07),
            transparent 26%
        ),
        linear-gradient(
            180deg,
            #f7faff,
            #ffffff
        );
}

.home-leadership-pattern{
    position:absolute;
    inset:0;
    opacity:.18;
    background-image:
        radial-gradient(
            rgba(23,105,214,.18) 1px,
            transparent 1px
        );
    background-size:24px 24px;
    mask-image:
        linear-gradient(
            90deg,
            transparent,
            #000 14%,
            transparent 42%
        );
}

.home-leadership-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px;
    margin-top:45px;
}

.home-leader-card{
    --leader-accent:#1769d6;
    --leader-rgb:23,105,214;
    position:relative;
    display:grid;
    grid-template-columns:190px minmax(0,1fr);
    align-items:center;
    min-height:310px;
    overflow:hidden;
    padding:20px;
    border:1px solid rgba(var(--leader-rgb),.32);
    border-radius:27px;
    background:
        radial-gradient(
            circle at 8% 8%,
            rgba(var(--leader-rgb),.10),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            rgba(255,255,255,.99),
            rgba(247,250,255,.97)
        );
    box-shadow:
        0 24px 55px rgba(7,27,67,.11),
        0 11px 28px rgba(var(--leader-rgb),.09);
    transition:
        transform .30s ease,
        box-shadow .30s ease,
        border-color .30s ease;
}

.home-leader-card::before{
    content:"";
    position:absolute;
    inset:8px;
    border:1px solid rgba(var(--leader-rgb),.18);
    border-radius:20px;
    pointer-events:none;
}

.home-leader-card:hover{
    transform:translateY(-8px);
    border-color:rgba(var(--leader-rgb),.60);
    box-shadow:
        0 34px 70px rgba(7,27,67,.16),
        0 15px 34px rgba(var(--leader-rgb),.15);
}

.leader-coo{
    --leader-accent:#07966b;
    --leader-rgb:7,150,107;
}

.home-leader-glow{
    position:absolute;
    right:-70px;
    bottom:-70px;
    width:210px;
    height:210px;
    border-radius:50%;
    background:rgb(var(--leader-rgb));
    opacity:.055;
    pointer-events:none;
}

.home-leader-portrait{
    position:relative;
    height:270px;
    overflow:hidden;
    border:2px solid rgba(var(--leader-rgb),.60);
    border-radius:22px;
    background:
        linear-gradient(
            145deg,
            rgba(var(--leader-rgb),.95),
            #061b42
        );
    box-shadow:
        0 17px 34px rgba(var(--leader-rgb),.18),
        0 0 0 5px rgba(var(--leader-rgb),.045);
}

.home-leader-inner-frame{
    position:absolute;
    inset:7px;
    z-index:3;
    border:1px solid rgba(255,255,255,.65);
    border-radius:15px;
    pointer-events:none;
}

.home-leader-portrait img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:transform .45s ease;
}

.home-leader-card:hover .home-leader-portrait img{
    transform:scale(1.045);
}

.home-leader-monogram{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    color:#ffffff;
    background:
        radial-gradient(
            circle at 75% 18%,
            rgba(105,217,255,.30),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            #061a42,
            #1769d6
        );
}

.home-leader-monogram::after{
    content:"";
    position:absolute;
    inset:0;
    opacity:.20;
    background-image:
        linear-gradient(
            rgba(255,255,255,.08) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.08) 1px,
            transparent 1px
        );
    background-size:26px 26px;
}

.home-leader-monogram strong,
.home-leader-monogram small{
    position:relative;
    z-index:2;
}

.home-leader-monogram strong{
    font-size:3.6rem;
    letter-spacing:-.04em;
    text-shadow:0 8px 18px rgba(0,0,0,.25);
}

.home-leader-monogram small{
    max-width:135px;
    margin-top:7px;
    color:#c7dcf0;
    font-size:.62rem;
    font-weight:800;
    line-height:1.4;
    text-align:center;
    text-transform:uppercase;
}

.home-leader-copy{
    position:relative;
    z-index:2;
    padding:15px 17px 15px 25px;
}

.home-leader-role{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--leader-accent);
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.06em;
    line-height:1.45;
    text-transform:uppercase;
}

.home-leader-role::before{
    content:"";
    width:22px;
    height:3px;
    border-radius:999px;
    background:var(--leader-accent);
}

.home-leader-copy h3{
    margin:15px 0 15px;
    color:var(--home-ink);
    font-size:1.48rem;
    line-height:1.23;
    letter-spacing:-.035em;
}

.home-leader-copy p{
    margin:0;
    color:var(--home-muted);
    font-size:.91rem;
    line-height:1.72;
}

.home-leader-focus{
    display:inline-flex;
    margin-top:20px;
    padding:8px 11px;
    border:1px solid rgba(var(--leader-rgb),.15);
    border-radius:999px;
    background:rgba(var(--leader-rgb),.07);
    color:var(--leader-accent);
    font-size:.64rem;
    font-weight:820;
}

.home-leadership-action{
    display:flex;
    justify-content:center;
    margin-top:34px;
}

.home-leadership-button{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:14px;
    min-width:360px;
    padding:8px 9px 8px 10px;
    border:1px solid rgba(105,217,255,.52);
    border-radius:999px;
    background:
        linear-gradient(
            90deg,
            #0c4dc3,
            #08759b 72%,
            #07815e
        );
    color:#ffffff;
    text-decoration:none;
    box-shadow:
        0 17px 38px rgba(23,105,214,.22),
        0 0 0 6px rgba(23,105,214,.035),
        inset 0 1px 0 rgba(255,255,255,.18);
    transition:
        transform .28s ease,
        box-shadow .28s ease;
}

.home-leadership-button:hover{
    transform:translateY(-4px);
    box-shadow:
        0 23px 46px rgba(23,105,214,.28),
        0 0 26px rgba(105,217,255,.18),
        inset 0 1px 0 rgba(255,255,255,.22);
}

.home-leadership-button-icon,
.home-leadership-button-arrow{
    display:grid;
    place-items:center;
    width:43px;
    height:43px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:50%;
    background:rgba(255,255,255,.09);
}

.home-leadership-button-icon svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:#ffffff;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.home-leadership-button strong{
    font-size:.79rem;
    text-align:center;
}

/*
==========================================================================
Enquiry
==========================================================================
*/

.home-enquiry-section{
    position:relative;
    overflow:hidden;
    padding-top:102px;
    padding-bottom:105px;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(239,34,53,.18),
            transparent 28%
        ),
        radial-gradient(
            circle at 88% 80%,
            rgba(23,105,214,.30),
            transparent 31%
        ),
        linear-gradient(
            135deg,
            #04122c,
            #08285d 56%,
            #084b72
        );
}

.home-enquiry-pattern{
    position:absolute;
    inset:0;
    opacity:.13;
    background-image:
        linear-gradient(
            rgba(255,255,255,.07) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.07) 1px,
            transparent 1px
        );
    background-size:54px 54px;
}

.home-enquiry-layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,.83fr) minmax(520px,1.17fr);
    align-items:center;
    gap:68px;
}

.home-enquiry-copy h2{
    margin:0;
    color:#ffffff;
    font-size:clamp(2.8rem,4.8vw,5rem);
    line-height:.99;
    letter-spacing:-.058em;
}

.home-enquiry-copy h2 span{
    display:block;
    color:#72ddff;
}

.home-enquiry-copy > p{
    margin:23px 0 0;
    color:#c4d6e8;
    font-size:1rem;
    line-height:1.75;
}

.home-contact-cards{
    display:grid;
    gap:11px;
    margin-top:28px;
}

.home-contact-cards a{
    display:flex;
    align-items:center;
    gap:13px;
    padding:13px 15px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:14px;
    background:rgba(255,255,255,.065);
    color:#ffffff;
    text-decoration:none;
    backdrop-filter:blur(8px);
}

.home-contact-cards svg{
    width:25px;
    height:25px;
    flex:0 0 25px;
    fill:none;
    stroke:#72ddff;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.home-contact-cards span{
    display:grid;
}

.home-contact-cards small{
    color:#a9bfd4;
    font-size:.64rem;
}

.home-contact-cards strong{
    margin-top:3px;
    font-size:.78rem;
    overflow-wrap:anywhere;
}

.home-enquiry-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:15px;
    margin-top:29px;
}

.home-enquiry-secondary{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#75dfff;
    font-size:.76rem;
    font-weight:850;
    text-decoration:none;
}

.home-enquiry-form-card{
    padding:28px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:28px;
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.15),
            rgba(255,255,255,.075)
        );
    box-shadow:
        0 35px 80px rgba(0,0,0,.32),
        inset 0 1px 0 rgba(255,255,255,.16);
    backdrop-filter:blur(18px);
}

.home-form-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:23px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(255,255,255,.12);
    color:#ffffff;
}

.home-form-heading > span{
    display:grid;
}

.home-form-heading small{
    color:#8ddfff;
    font-size:.65rem;
    font-weight:850;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.home-form-heading strong{
    margin-top:5px;
    font-size:1.23rem;
}

.home-form-heading i{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:14px;
    background:rgba(255,255,255,.08);
    color:#ffffff;
    font-style:normal;
    font-size:.72rem;
    font-weight:900;
}

.home-enquiry-form-card label{
    color:#d9e7f4;
    font-size:.68rem;
    font-weight:820;
}

.home-enquiry-form-card input,
.home-enquiry-form-card select,
.home-enquiry-form-card textarea{
    border:1px solid rgba(255,255,255,.14);
    background:rgba(3,16,39,.40);
    color:#ffffff;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.05);
}

.home-enquiry-form-card input::placeholder,
.home-enquiry-form-card textarea::placeholder{
    color:#8499ae;
}

.home-enquiry-form-card select option{
    color:#071b43;
}

.home-enquiry-form-card input:focus,
.home-enquiry-form-card select:focus,
.home-enquiry-form-card textarea:focus{
    border-color:rgba(105,217,255,.58);
    box-shadow:0 0 0 4px rgba(105,217,255,.08);
}

.home-message-field{
    margin-top:16px;
}

.home-form-submit{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    margin-top:17px;
    padding:14px 17px;
    border:0;
    border-radius:12px;
    background:
        linear-gradient(
            90deg,
            #1769d6,
            #0a80a7,
            #07966b
        );
    color:#ffffff;
    font-weight:880;
    cursor:pointer;
    box-shadow:0 15px 30px rgba(23,105,214,.24);
}

/*
==========================================================================
Homepage advertising stream and footer refinement
==========================================================================
*/

.homepage-premium .ad-stream{
    border-top:0;
    box-shadow:
        0 -8px 25px rgba(7,27,67,.08),
        0 8px 25px rgba(7,27,67,.08);
}

.homepage-premium .site-footer{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(
            circle at 88% 20%,
            rgba(23,105,214,.18),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #031027,
            #061c42
        );
}

.homepage-premium .site-footer::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:2px;
    background:
        linear-gradient(
            90deg,
            var(--home-red),
            var(--home-gold),
            var(--home-blue),
            var(--home-green)
        );
}

/*
==========================================================================
Animations
==========================================================================
*/

@keyframes homeCommercialTicker{
    from{
        transform:translateX(0);
    }

    to{
        transform:translateX(-50%);
    }
}

@keyframes homeTickerPulse{
    0%,
    100%{
        transform:scale(.90);
        opacity:.72;
    }

    50%{
        transform:scale(1.06);
        opacity:1;
    }
}

@keyframes homeStatsGlow{
    0%{
        filter:hue-rotate(0deg);
    }

    100%{
        filter:hue-rotate(16deg);
    }
}

/*
==========================================================================
Responsive — large tablets
==========================================================================
*/

@media(max-width:1180px){

    .home-hero-layout{
        grid-template-columns:minmax(0,.9fr) minmax(470px,1.1fr);
        gap:42px;
    }

    .home-hero-copy h1{
        font-size:clamp(3.2rem,5.7vw,5.7rem);
    }

    .home-featured-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .home-feature-card figure{
        height:235px;
    }

    .home-services-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .home-outdoor-layout{
        grid-template-columns:minmax(410px,1fr) minmax(0,1fr);
        gap:45px;
    }

    .home-stats-band{
        padding-inline:12px;
    }

    .home-stat-item{
        padding-inline:12px;
    }

    .home-stat-icon{
        width:47px;
        height:47px;
        flex-basis:47px;
    }

    .home-leader-card{
        grid-template-columns:165px minmax(0,1fr);
    }

    .home-enquiry-layout{
        grid-template-columns:minmax(0,.85fr) minmax(470px,1.15fr);
        gap:45px;
    }

}

/*
==========================================================================
Responsive — tablets
==========================================================================
*/

@media(max-width:960px){

    .home-commercial-ticker{
        grid-template-columns:auto minmax(0,1fr);
    }

    .home-ticker-quote{
        display:none;
    }

    .home-ticker-label{
        min-width:205px;
    }

    .home-hero-premium{
        padding-top:66px;
        padding-bottom:76px;
    }

    .home-hero-layout{
        grid-template-columns:1fr 1fr;
        gap:30px;
    }

    .home-hero-visual{
        min-height:465px;
    }

    .home-hero-frame{
        inset:15px 0 63px;
    }

    .home-network-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .home-network-card:last-child{
        grid-column:1 / -1;
        max-width:540px;
        width:100%;
        justify-self:center;
    }

    .home-featured-intro{
        grid-template-columns:1fr;
        gap:22px;
    }

    .home-services-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .home-outdoor-layout{
        grid-template-columns:1fr;
        gap:48px;
    }

    .home-outdoor-visual{
        min-height:520px;
    }

    .home-stats-band{
        grid-template-columns:repeat(2,1fr);
    }

    .home-stat-item:nth-child(3){
        border-left:0;
        border-top:1px solid rgba(255,255,255,.16);
    }

    .home-stat-item:nth-child(4){
        border-top:1px solid rgba(255,255,255,.16);
    }

    .home-leadership-grid{
        grid-template-columns:1fr;
    }

    .home-leader-card{
        max-width:780px;
        width:100%;
        justify-self:center;
    }

    .home-enquiry-layout{
        grid-template-columns:1fr;
        gap:44px;
    }

}

/*
==========================================================================
Responsive — phones and small tablets
==========================================================================
*/

@media(max-width:760px){

    .home-commercial-ticker{
        grid-template-columns:1fr;
        min-height:auto;
    }

    .home-ticker-label{
        min-width:0;
        padding:9px 15px;
        clip-path:none;
    }

    .home-ticker-label small{
        display:none;
    }

    .home-ticker-window{
        min-height:52px;
    }

    .home-ticker-group{
        min-height:52px;
    }

    .home-ticker-item{
        padding:7px 12px;
        font-size:.73rem;
    }

    .home-ticker-item svg{
        width:18px;
        height:18px;
    }

    .home-hero-premium{
        padding:52px 0 65px;
    }

    .home-hero-layout{
        grid-template-columns:1fr;
        gap:43px;
    }

    .home-hero-copy{
        max-width:none;
    }

    .home-hero-copy h1{
        font-size:clamp(3rem,14vw,4.7rem);
    }

    .home-hero-copy > p{
        font-size:.98rem;
    }

    .home-hero-actions{
        align-items:stretch;
    }

    .home-primary-action,
    .home-advertise-action{
        flex:1 1 calc(50% - 8px);
        justify-content:center;
    }

    .home-watch-action{
        flex:1 1 100%;
    }

    .home-hero-visual{
        min-height:450px;
    }

    .home-hero-frame{
        inset:0 0 66px;
        border-radius:24px;
    }

    .home-hero-frame::before{
        inset:8px;
        border-radius:17px;
    }

    .home-hero-frame figcaption{
        left:21px;
        right:21px;
        bottom:18px;
    }

    .home-hero-frame figcaption a{
        display:none;
    }

    .home-network-ribbon{
        left:14px;
        right:14px;
    }

    .home-network-ribbon a{
        padding:12px 8px 11px 24px;
    }

    .home-network-ribbon small{
        display:none;
    }

    .brand-signal{
        left:10px;
        top:17px;
    }

    .home-network-grid{
        grid-template-columns:1fr;
    }

    .home-network-card:last-child{
        grid-column:auto;
        max-width:none;
    }

    .home-featured-grid{
        grid-template-columns:1fr;
    }

    .home-feature-card figure{
        height:250px;
    }

    .home-services-grid{
        grid-template-columns:1fr;
    }

    .home-service-card{
        min-height:0;
    }

    .home-services-footer{
        flex-direction:column;
        text-align:center;
    }

    .home-outdoor-section{
        padding-top:72px;
        padding-bottom:78px;
    }

    .home-outdoor-visual{
        min-height:430px;
    }

    .home-outdoor-frame{
        inset:0 0 55px;
        border-radius:24px;
    }

    .home-outdoor-inner-frame{
        inset:8px;
        border-radius:17px;
    }

    .home-outdoor-badge{
        left:18px;
        right:18px;
        min-width:0;
    }

    .home-outdoor-capabilities{
        grid-template-columns:1fr;
    }

    .home-stats-section{
        padding:38px 0;
    }

    .home-stats-band{
        grid-template-columns:1fr;
        min-height:0;
        padding:12px;
        border-radius:24px;
    }

    .home-stat-item{
        justify-content:flex-start;
        min-height:86px;
        padding:13px 18px;
    }

    .home-stat-item + .home-stat-item{
        border-left:0;
        border-top:1px solid rgba(255,255,255,.15);
    }

    .home-stat-item strong{
        font-size:1.95rem;
    }

    .home-leader-card{
        grid-template-columns:1fr;
    }

    .home-leader-portrait{
        height:320px;
    }

    .home-leader-copy{
        padding:19px 10px 13px;
    }

    .home-leadership-button{
        min-width:0;
        width:100%;
    }

    .home-enquiry-section{
        padding-top:76px;
        padding-bottom:80px;
    }

    .home-enquiry-form-card{
        padding:21px;
        border-radius:23px;
    }

}

/*
==========================================================================
Small phones
==========================================================================
*/

@media(max-width:480px){

    .home-primary-action,
    .home-advertise-action{
        flex-basis:100%;
    }

    .home-hero-visual{
        min-height:390px;
    }

    .home-hero-frame{
        bottom:61px;
    }

    .home-network-ribbon{
        grid-template-columns:repeat(3,1fr);
    }

    .home-network-ribbon strong{
        font-size:.64rem;
    }

    .home-feature-card figure{
        height:220px;
    }

    .home-outdoor-visual{
        min-height:380px;
    }

    .home-outdoor-frame figcaption{
        left:20px;
        bottom:19px;
    }

    .home-leader-portrait{
        height:285px;
    }

    .home-enquiry-form-card .form-grid{
        grid-template-columns:1fr;
    }

}

/*
==========================================================================
Reduced motion
==========================================================================
*/

@media(prefers-reduced-motion:reduce){

    .home-ticker-track,
    .home-ticker-live-dot,
    .home-stats-glow-line{
        animation:none !important;
    }

    .home-hero-frame{
        transform:none !important;
    }

    .home-network-card,
    .home-feature-card,
    .home-service-card,
    .home-leader-card{
        transition:none;
    }

}


/* BEGIN HOMEPAGE MEDIA CARDS V2 */

/*
==========================================================================
Premium defining-brand cards
==========================================================================
*/

.homepage-premium .home-brand-network-v2{
    position:relative;
    overflow:hidden;
    padding-top:98px;
    padding-bottom:96px;
    background:
        radial-gradient(
            circle at 5% 15%,
            rgba(23,105,214,.11),
            transparent 28%
        ),
        radial-gradient(
            circle at 95% 82%,
            rgba(7,150,107,.09),
            transparent 27%
        ),
        linear-gradient(
            180deg,
            #f8fbff 0%,
            #ffffff 100%
        );
}

.homepage-premium .home-brand-network-radiance{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
    filter:blur(3px);
}

.homepage-premium .brand-radiance-one{
    top:105px;
    left:-170px;
    width:360px;
    height:360px;
    border:1px solid rgba(23,105,214,.12);
    box-shadow:
        0 0 0 70px rgba(23,105,214,.025),
        0 0 0 140px rgba(23,105,214,.015);
}

.homepage-premium .brand-radiance-two{
    right:-150px;
    bottom:-100px;
    width:320px;
    height:320px;
    border:1px solid rgba(7,150,107,.12);
    box-shadow:
        0 0 0 65px rgba(7,150,107,.022),
        0 0 0 130px rgba(7,150,107,.014);
}

.homepage-premium .home-brand-grid-v2{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:26px;
    margin-top:48px;
}

/*
|--------------------------------------------------------------------------
| Individual brand colours
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-card-v2{
    --brand-primary:#1769d6;
    --brand-secondary:#ef2235;
    --brand-rgb:23,105,214;
    --brand-secondary-rgb:239,34,53;

    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    min-height:520px;
    overflow:hidden;
    padding:22px;
    border:2px solid rgba(var(--brand-rgb),.52);
    border-radius:29px;
    background:
        radial-gradient(
            circle at 14% 0%,
            rgba(var(--brand-secondary-rgb),.13),
            transparent 32%
        ),
        radial-gradient(
            circle at 92% 100%,
            rgba(var(--brand-rgb),.14),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            rgba(255,255,255,.995),
            rgba(246,250,255,.98)
        );
    box-shadow:
        0 28px 62px rgba(7,27,67,.13),
        0 15px 38px rgba(var(--brand-rgb),.13),
        0 0 0 7px rgba(var(--brand-rgb),.035);
    transition:
        transform .32s ease,
        border-color .32s ease,
        box-shadow .32s ease;
}

.homepage-premium .home-brand-itv-v2{
    --brand-primary:#1769d6;
    --brand-secondary:#ef2235;
    --brand-rgb:23,105,214;
    --brand-secondary-rgb:239,34,53;
}

.homepage-premium .home-brand-iradio-v2{
    --brand-primary:#1d4f91;
    --brand-secondary:#f29400;
    --brand-rgb:29,79,145;
    --brand-secondary-rgb:242,148,0;
}

.homepage-premium .home-brand-idigest-v2{
    --brand-primary:#1769d6;
    --brand-secondary:#07966b;
    --brand-rgb:23,105,214;
    --brand-secondary-rgb:7,150,107;
}

/*
|--------------------------------------------------------------------------
| Full glowing edges
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-edge-v2{
    position:absolute;
    inset:7px;
    z-index:1;
    border:1px solid rgba(var(--brand-rgb),.34);
    border-radius:21px;
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.72),
        inset 0 0 28px rgba(var(--brand-rgb),.035),
        0 0 23px rgba(var(--brand-rgb),.10);
    pointer-events:none;
    transition:
        inset .32s ease,
        border-color .32s ease,
        box-shadow .32s ease;
}

.homepage-premium .home-brand-edge-v2::before,
.homepage-premium .home-brand-edge-v2::after{
    content:"";
    position:absolute;
    width:64px;
    height:64px;
    pointer-events:none;
}

.homepage-premium .home-brand-edge-v2::before{
    top:-1px;
    left:-1px;
    border-top:3px solid var(--brand-secondary);
    border-left:3px solid var(--brand-secondary);
    border-radius:14px 0 0;
    box-shadow:
        -2px -2px 18px rgba(var(--brand-secondary-rgb),.30);
}

.homepage-premium .home-brand-edge-v2::after{
    right:-1px;
    bottom:-1px;
    border-right:3px solid var(--brand-primary);
    border-bottom:3px solid var(--brand-primary);
    border-radius:0 0 14px;
    box-shadow:
        2px 2px 18px rgba(var(--brand-rgb),.30);
}

.homepage-premium .home-brand-card-v2:hover{
    transform:translateY(-12px);
    border-color:rgba(var(--brand-rgb),.86);
    box-shadow:
        0 40px 82px rgba(7,27,67,.18),
        0 22px 46px rgba(var(--brand-rgb),.22),
        0 0 36px rgba(var(--brand-secondary-rgb),.10),
        0 0 0 8px rgba(var(--brand-rgb),.045);
}

.homepage-premium .home-brand-card-v2:hover
.home-brand-edge-v2{
    inset:5px;
    border-color:rgba(var(--brand-rgb),.62);
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.85),
        inset 0 0 34px rgba(var(--brand-rgb),.06),
        0 0 30px rgba(var(--brand-rgb),.18);
}

.homepage-premium .home-brand-orb-v2{
    position:absolute;
    right:-95px;
    bottom:-105px;
    width:280px;
    height:280px;
    border-radius:50%;
    background:
        radial-gradient(
            circle,
            rgba(var(--brand-secondary-rgb),.14),
            rgba(var(--brand-rgb),.07) 46%,
            transparent 72%
        );
    pointer-events:none;
    transition:
        transform .40s ease,
        opacity .40s ease;
}

.homepage-premium .home-brand-card-v2:hover
.home-brand-orb-v2{
    transform:scale(1.16) translate(-9px,-9px);
}

/*
|--------------------------------------------------------------------------
| Card content
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-card-v2 > *:not(
    .home-brand-edge-v2,
    .home-brand-orb-v2
){
    position:relative;
    z-index:3;
}

.homepage-premium .home-brand-top-v2{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:7px 7px 16px;
}

.homepage-premium .home-brand-number-v2{
    color:rgba(7,27,67,.43);
    font-size:.72rem;
    font-weight:950;
    letter-spacing:.19em;
}

.homepage-premium .home-brand-category-v2{
    padding:7px 10px;
    border:1px solid rgba(var(--brand-rgb),.16);
    border-radius:999px;
    background:rgba(var(--brand-rgb),.065);
    color:var(--brand-primary);
    font-size:.62rem;
    font-weight:900;
    letter-spacing:.055em;
    text-transform:uppercase;
}

/*
|--------------------------------------------------------------------------
| Official logo stage
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-logo-stage-v2{
    position:relative;
    display:grid;
    place-items:center;
    height:145px;
    margin:0 2px 22px;
    overflow:hidden;
    border:1px solid rgba(var(--brand-rgb),.25);
    border-radius:22px;
    background:
        radial-gradient(
            circle at 50% 20%,
            rgba(255,255,255,1),
            rgba(255,255,255,.70) 38%,
            transparent 68%
        ),
        linear-gradient(
            145deg,
            rgba(var(--brand-rgb),.09),
            rgba(var(--brand-secondary-rgb),.045)
        );
    box-shadow:
        0 18px 34px rgba(var(--brand-rgb),.11),
        inset 0 1px 0 rgba(255,255,255,1);
}

.homepage-premium .home-brand-logo-frame-v2{
    position:absolute;
    inset:8px;
    border:1px solid rgba(var(--brand-rgb),.19);
    border-radius:15px;
    pointer-events:none;
}

.homepage-premium .home-brand-logo-v2{
    position:relative;
    z-index:2;
    display:block;
    max-width:82%;
    max-height:112px;
    object-fit:contain;
    filter:
        drop-shadow(
            0 11px 12px rgba(7,27,67,.20)
        );
    transition:
        transform .34s ease,
        filter .34s ease;
}

.homepage-premium .home-brand-logo-itv-v2{
    max-width:60%;
    max-height:105px;
}

.homepage-premium .home-brand-logo-iradio-v2{
    max-width:65%;
    max-height:120px;
}

.homepage-premium .home-brand-logo-idigest-v2{
    max-width:46%;
    max-height:115px;
}

.homepage-premium .home-brand-card-v2:hover
.home-brand-logo-v2{
    transform:translateY(-5px) scale(1.045);
    filter:
        drop-shadow(
            0 15px 16px rgba(7,27,67,.25)
        );
}

/*
|--------------------------------------------------------------------------
| Official coloured brand names
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-status-v2{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 10px;
    border:1px solid rgba(var(--brand-rgb),.17);
    border-radius:999px;
    background:rgba(var(--brand-rgb),.065);
    color:var(--brand-primary);
    font-size:.63rem;
    font-weight:900;
    letter-spacing:.025em;
}

.homepage-premium .home-brand-status-v2 i{
    width:8px;
    height:8px;
    flex:0 0 8px;
    border-radius:50%;
    background:var(--brand-secondary);
    box-shadow:
        0 0 13px rgba(var(--brand-secondary-rgb),.70);
}

.homepage-premium .home-brand-name-v2{
    margin:18px 0 13px;
    font-size:1.75rem;
    line-height:1.12;
    letter-spacing:-.045em;
}

.homepage-premium .home-brand-red-i{
    color:#ef2235;
}

.homepage-premium .home-brand-blue-name{
    color:#1d438d;
}

.homepage-premium .home-brand-copy-v2 p{
    margin:0;
    color:#536b87;
    font-size:.90rem;
    line-height:1.70;
}

/*
|--------------------------------------------------------------------------
| Premium action buttons
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-button-v2{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
    margin-top:auto;
    padding:10px 11px;
    border:1px solid rgba(255,255,255,.20);
    border-radius:17px;
    background:
        linear-gradient(
            100deg,
            var(--brand-primary) 0%,
            color-mix(
                in srgb,
                var(--brand-primary) 65%,
                var(--brand-secondary)
            ) 60%,
            var(--brand-secondary) 100%
        );
    color:#ffffff;
    text-decoration:none;
    box-shadow:
        0 17px 34px rgba(var(--brand-rgb),.22),
        inset 0 1px 0 rgba(255,255,255,.21);
    transition:
        transform .28s ease,
        box-shadow .28s ease,
        filter .28s ease;
}

.homepage-premium .home-brand-button-v2:hover{
    transform:translateY(-4px);
    filter:saturate(1.08);
    box-shadow:
        0 24px 43px rgba(var(--brand-rgb),.30),
        0 0 24px rgba(var(--brand-secondary-rgb),.16),
        inset 0 1px 0 rgba(255,255,255,.28);
}

.homepage-premium .home-brand-button-mark-v2{
    display:grid;
    place-items:center;
    width:43px;
    height:43px;
    border:1px solid rgba(255,255,255,.21);
    border-radius:13px;
    background:rgba(255,255,255,.12);
    color:#ffffff;
    font-size:.66rem;
    font-weight:950;
    letter-spacing:.04em;
}

.homepage-premium .home-brand-button-v2 > span:nth-child(2){
    display:grid;
}

.homepage-premium .home-brand-button-v2 small{
    color:rgba(255,255,255,.72);
    font-size:.59rem;
    font-weight:760;
}

.homepage-premium .home-brand-button-v2 strong{
    margin-top:3px;
    color:#ffffff;
    font-size:.78rem;
}

.homepage-premium .home-button-red-i{
    color:#ffcfda;
    font-size:1.06em;
}

.homepage-premium .home-brand-button-v2 b{
    display:grid;
    place-items:center;
    width:39px;
    height:39px;
    border:1px solid rgba(255,255,255,.20);
    border-radius:13px;
    background:rgba(3,15,37,.18);
    color:#ffffff;
    font-size:1rem;
    transition:
        transform .25s ease,
        background .25s ease;
}

.homepage-premium .home-brand-button-v2:hover b{
    transform:translateX(4px);
    background:rgba(3,15,37,.28);
}

/*
|--------------------------------------------------------------------------
| Section footer
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-network-footer-v2{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    margin-top:36px;
    color:#58708d;
    font-size:.81rem;
    text-align:center;
}

.homepage-premium .home-brand-network-footer-v2 a{
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:11px 16px;
    border:1px solid rgba(23,105,214,.20);
    border-radius:12px;
    background:#ffffff;
    color:#1769d6;
    font-size:.74rem;
    font-weight:900;
    text-decoration:none;
    box-shadow:
        0 12px 28px rgba(7,27,67,.08);
}

/*
|--------------------------------------------------------------------------
| Responsive
|--------------------------------------------------------------------------
*/

@media(max-width:1040px){

    .homepage-premium .home-brand-grid-v2{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .homepage-premium .home-brand-card-v2:last-child{
        grid-column:1 / -1;
        width:100%;
        max-width:610px;
        justify-self:center;
    }

}

@media(max-width:720px){

    .homepage-premium .home-brand-network-v2{
        padding-top:72px;
        padding-bottom:75px;
    }

    .homepage-premium .home-brand-grid-v2{
        grid-template-columns:1fr;
    }

    .homepage-premium .home-brand-card-v2,
    .homepage-premium .home-brand-card-v2:last-child{
        grid-column:auto;
        max-width:none;
        min-height:0;
    }

    .homepage-premium .home-brand-logo-stage-v2{
        height:135px;
    }

    .homepage-premium .home-brand-network-footer-v2{
        flex-direction:column;
    }

}

@media(max-width:480px){

    .homepage-premium .home-brand-card-v2{
        padding:18px;
        border-radius:24px;
    }

    .homepage-premium .home-brand-edge-v2{
        inset:6px;
        border-radius:17px;
    }

    .homepage-premium .home-brand-name-v2{
        font-size:1.55rem;
    }

    .homepage-premium .home-brand-button-v2{
        gap:9px;
    }

}

/* END HOMEPAGE MEDIA CARDS V2 */


/* BEGIN HOMEPAGE MEDIA CARDS V2.2 */

/*
==========================================================================
Three defining brands — coloured raised cards
==========================================================================
*/

.homepage-premium .home-brand-grid-v2{
    gap:28px;
}

/*
|--------------------------------------------------------------------------
| Shared card construction
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-card-v2{
    --card-deep:#123c89;
    --card-mid:#2e75d8;
    --card-bright:#79b8ff;

    --card-accent:#ef2235;
    --card-accent-rgb:239,34,53;

    --card-surface-one:#e9f3ff;
    --card-surface-two:#dbeaff;
    --card-surface-three:#f8fbff;

    position:relative;
    isolation:isolate;

    min-height:470px;
    padding:19px;

    overflow:visible;

    border:2px solid rgba(var(--brand-rgb),.78);
    border-radius:28px;

    background:
        radial-gradient(
            circle at 5% 0%,
            rgba(var(--brand-secondary-rgb),.22),
            transparent 31%
        ),
        radial-gradient(
            circle at 96% 100%,
            rgba(var(--brand-rgb),.23),
            transparent 36%
        ),
        linear-gradient(
            145deg,
            var(--card-surface-one) 0%,
            var(--card-surface-three) 46%,
            var(--card-surface-two) 100%
        );

    box-shadow:
        0 8px 0 var(--card-deep),
        0 14px 0 rgba(7,27,67,.14),
        0 28px 44px rgba(7,27,67,.20),
        0 17px 36px rgba(var(--brand-rgb),.22),
        0 0 0 7px rgba(var(--brand-rgb),.055),
        inset 0 2px 0 rgba(255,255,255,.96),
        inset 0 -12px 22px rgba(var(--brand-rgb),.09);

    transform:translateY(0);
    transform-style:preserve-3d;

    transition:
        transform .32s ease,
        border-color .32s ease,
        box-shadow .32s ease,
        background .32s ease;
}

/*
|--------------------------------------------------------------------------
| Brand-specific colour systems
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-itv-v2{
    --brand-primary:#164fae;
    --brand-secondary:#ef2235;
    --brand-rgb:22,79,174;
    --brand-secondary-rgb:239,34,53;

    --card-deep:#143c8b;
    --card-mid:#2c70d1;
    --card-bright:#7bb9ff;

    --card-surface-one:#e7f2ff;
    --card-surface-two:#d8e9ff;
    --card-surface-three:#f9fbff;
}

.homepage-premium .home-brand-iradio-v2{
    --brand-primary:#173f7d;
    --brand-secondary:#f29a14;
    --brand-rgb:23,63,125;
    --brand-secondary-rgb:242,154,20;

    --card-deep:#183c73;
    --card-mid:#b7750d;
    --card-bright:#ffd07b;

    --card-surface-one:#fff1d9;
    --card-surface-two:#f4dfb7;
    --card-surface-three:#fffaf0;
}

.homepage-premium .home-brand-idigest-v2{
    --brand-primary:#164f9e;
    --brand-secondary:#07966b;
    --brand-rgb:22,79,158;
    --brand-secondary-rgb:7,150,107;

    --card-deep:#125276;
    --card-mid:#078668;
    --card-bright:#79e2c2;

    --card-surface-one:#ddf6f1;
    --card-surface-two:#cdece7;
    --card-surface-three:#f6fffd;
}

/*
|--------------------------------------------------------------------------
| Visible lower 3D lip
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-card-v2::after{
    content:"";

    position:absolute;
    left:18px;
    right:18px;
    bottom:-15px;

    height:22px;

    z-index:-2;

    border-radius:0 0 22px 22px;

    background:
        linear-gradient(
            180deg,
            var(--card-mid) 0%,
            var(--card-deep) 100%
        );

    box-shadow:
        0 12px 22px rgba(7,27,67,.25),
        0 4px 12px rgba(var(--brand-rgb),.20);

    transform:
        perspective(240px)
        rotateX(-24deg);

    transform-origin:top;
}

/*
|--------------------------------------------------------------------------
| Raised side extrusion
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-card-v2::before{
    content:"";

    position:absolute;
    inset:0;

    z-index:-1;

    border-radius:27px;

    background:
        linear-gradient(
            110deg,
            rgba(255,255,255,.82) 0%,
            transparent 23%,
            transparent 74%,
            rgba(var(--brand-rgb),.19) 100%
        );

    box-shadow:
        inset 3px 3px 0 rgba(255,255,255,.92),
        inset -5px -6px 0 rgba(var(--brand-rgb),.12),
        inset 0 -17px 24px rgba(var(--brand-rgb),.07);

    pointer-events:none;
}

/*
|--------------------------------------------------------------------------
| Strong full edge
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-edge-v2{
    inset:6px;

    border:2px solid rgba(var(--brand-rgb),.53);
    border-radius:20px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.32),
            transparent 34%,
            transparent 70%,
            rgba(var(--brand-rgb),.07)
        );

    box-shadow:
        inset 0 0 0 2px rgba(255,255,255,.72),
        inset 0 0 28px rgba(var(--brand-rgb),.08),
        0 0 22px rgba(var(--brand-rgb),.17);

    transition:
        inset .32s ease,
        border-color .32s ease,
        box-shadow .32s ease;
}

.homepage-premium .home-brand-edge-v2::before{
    top:-2px;
    left:-2px;

    width:70px;
    height:70px;

    border-top:4px solid var(--brand-secondary);
    border-left:4px solid var(--brand-secondary);

    box-shadow:
        -3px -3px 20px rgba(var(--brand-secondary-rgb),.34);
}

.homepage-premium .home-brand-edge-v2::after{
    right:-2px;
    bottom:-2px;

    width:70px;
    height:70px;

    border-right:4px solid var(--brand-primary);
    border-bottom:4px solid var(--brand-primary);

    box-shadow:
        3px 3px 22px rgba(var(--brand-rgb),.36);
}

/*
|--------------------------------------------------------------------------
| Card hover lift
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-card-v2:hover{
    transform:translateY(-13px);

    border-color:var(--card-bright);

    background:
        radial-gradient(
            circle at 5% 0%,
            rgba(var(--brand-secondary-rgb),.28),
            transparent 32%
        ),
        radial-gradient(
            circle at 96% 100%,
            rgba(var(--brand-rgb),.29),
            transparent 37%
        ),
        linear-gradient(
            145deg,
            var(--card-surface-one) 0%,
            #ffffff 46%,
            var(--card-surface-two) 100%
        );

    box-shadow:
        0 11px 0 var(--card-deep),
        0 18px 0 rgba(7,27,67,.16),
        0 43px 72px rgba(7,27,67,.25),
        0 24px 48px rgba(var(--brand-rgb),.28),
        0 0 38px rgba(var(--brand-secondary-rgb),.15),
        0 0 0 8px rgba(var(--brand-rgb),.065),
        inset 0 2px 0 rgba(255,255,255,1),
        inset 0 -14px 25px rgba(var(--brand-rgb),.11);
}

.homepage-premium .home-brand-card-v2:hover
.home-brand-edge-v2{
    inset:4px;

    border-color:rgba(var(--brand-rgb),.78);

    box-shadow:
        inset 0 0 0 2px rgba(255,255,255,.91),
        inset 0 0 35px rgba(var(--brand-rgb),.11),
        0 0 32px rgba(var(--brand-rgb),.26);
}

/*
|--------------------------------------------------------------------------
| Top category area — numbers removed
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-top-v2{
    justify-content:flex-end;

    min-height:37px;
    padding:4px 5px 11px;
}

.homepage-premium .home-brand-category-v2{
    padding:7px 12px;

    border:1px solid rgba(var(--brand-rgb),.26);

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.80),
            rgba(var(--brand-rgb),.10)
        );

    box-shadow:
        0 7px 15px rgba(var(--brand-rgb),.10),
        inset 0 1px 0 rgba(255,255,255,.95);
}

/*
|--------------------------------------------------------------------------
| Coloured raised logo stage
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-logo-stage-v2{
    height:116px;
    margin:0 2px 17px;

    border:2px solid rgba(var(--brand-rgb),.48);
    border-radius:20px;

    background:
        radial-gradient(
            circle at 50% 17%,
            rgba(255,255,255,.95),
            rgba(255,255,255,.38) 35%,
            transparent 66%
        ),
        linear-gradient(
            145deg,
            rgba(var(--brand-secondary-rgb),.14),
            rgba(var(--brand-rgb),.18)
        );

    box-shadow:
        0 7px 0 rgba(var(--brand-rgb),.13),
        0 17px 27px rgba(var(--brand-rgb),.17),
        inset 0 2px 0 rgba(255,255,255,.96),
        inset 0 -10px 18px rgba(var(--brand-rgb),.08);
}

.homepage-premium .home-brand-logo-frame-v2{
    inset:7px;

    border:2px solid rgba(var(--brand-rgb),.29);

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.70),
        inset 0 0 22px rgba(var(--brand-rgb),.08);
}

.homepage-premium .home-brand-logo-v2{
    max-height:91px;
}

.homepage-premium .home-brand-logo-itv-v2{
    max-width:48%;
    max-height:87px;
}

.homepage-premium .home-brand-logo-iradio-v2{
    max-width:55%;
    max-height:98px;
}

.homepage-premium .home-brand-logo-idigest-v2{
    max-width:38%;
    max-height:92px;
}

/*
|--------------------------------------------------------------------------
| Status, names and body copy
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-status-v2{
    border-color:rgba(var(--brand-rgb),.25);

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.78),
            rgba(var(--brand-rgb),.11)
        );

    box-shadow:
        0 7px 15px rgba(var(--brand-rgb),.09),
        inset 0 1px 0 rgba(255,255,255,.90);
}

.homepage-premium .home-brand-name-v2{
    margin:14px 0 10px;
    font-size:1.62rem;

    text-shadow:
        0 1px 0 rgba(255,255,255,.85);
}

.homepage-premium .home-brand-copy-v2 p{
    color:#425c7a;
    font-size:.86rem;
    line-height:1.60;
}

/*
|--------------------------------------------------------------------------
| Stronger premium buttons
|--------------------------------------------------------------------------
*/

.homepage-premium .home-brand-button-v2{
    min-height:64px;
    margin-top:20px;

    border:2px solid rgba(255,255,255,.32);

    box-shadow:
        0 7px 0 var(--card-deep),
        0 15px 29px rgba(var(--brand-rgb),.27),
        inset 0 2px 0 rgba(255,255,255,.27),
        inset 0 -7px 11px rgba(7,27,67,.13);
}

.homepage-premium .home-brand-button-v2:hover{
    transform:translateY(-4px);

    box-shadow:
        0 9px 0 var(--card-deep),
        0 22px 39px rgba(var(--brand-rgb),.34),
        0 0 25px rgba(var(--brand-secondary-rgb),.18),
        inset 0 2px 0 rgba(255,255,255,.31);
}

/*
==========================================================================
Tablet
==========================================================================
*/

@media(max-width:1040px){

    .homepage-premium .home-brand-card-v2{
        min-height:455px;
    }

}

/*
==========================================================================
Mobile — complete coloured raised cards
==========================================================================
*/

@media(max-width:720px){

    .homepage-premium .home-brand-grid-v2{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) !important;

        width:100% !important;

        gap:34px !important;
        margin-top:36px !important;
    }

    .homepage-premium .home-brand-card-v2,
    .homepage-premium .home-brand-card-v2:last-child{
        display:flex !important;
        flex-direction:column !important;

        grid-column:auto !important;

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;
        min-height:0 !important;

        margin:0 0 13px !important;
        padding:17px !important;

        overflow:visible !important;

        border:2px solid rgba(var(--brand-rgb),.82) !important;
        border-radius:25px !important;

        background:
            radial-gradient(
                circle at 5% 0%,
                rgba(var(--brand-secondary-rgb),.22),
                transparent 34%
            ),
            radial-gradient(
                circle at 96% 100%,
                rgba(var(--brand-rgb),.24),
                transparent 39%
            ),
            linear-gradient(
                145deg,
                var(--card-surface-one),
                var(--card-surface-three) 48%,
                var(--card-surface-two)
            ) !important;

        box-shadow:
            0 8px 0 var(--card-deep),
            0 14px 0 rgba(7,27,67,.14),
            0 29px 50px rgba(7,27,67,.22),
            0 17px 34px rgba(var(--brand-rgb),.22),
            0 0 0 6px rgba(var(--brand-rgb),.055),
            inset 0 2px 0 rgba(255,255,255,.98),
            inset 0 -11px 20px rgba(var(--brand-rgb),.09) !important;
    }

    .homepage-premium .home-brand-card-v2::after{
        left:16px !important;
        right:16px !important;
        bottom:-14px !important;

        height:20px !important;
    }

    .homepage-premium .home-brand-card-v2::before{
        display:block !important;

        inset:0 !important;

        border-radius:23px !important;

        box-shadow:
            inset 3px 3px 0 rgba(255,255,255,.92),
            inset -5px -6px 0 rgba(var(--brand-rgb),.13),
            inset 0 -15px 22px rgba(var(--brand-rgb),.07) !important;
    }

    .homepage-premium .home-brand-edge-v2{
        display:block !important;

        inset:5px !important;

        border:2px solid rgba(var(--brand-rgb),.56) !important;
        border-radius:18px !important;

        background:
            linear-gradient(
                135deg,
                rgba(255,255,255,.34),
                transparent 35%,
                transparent 70%,
                rgba(var(--brand-rgb),.08)
            ) !important;

        box-shadow:
            inset 0 0 0 2px rgba(255,255,255,.79),
            inset 0 0 27px rgba(var(--brand-rgb),.09),
            0 0 24px rgba(var(--brand-rgb),.20) !important;
    }

    .homepage-premium .home-brand-top-v2{
        display:flex !important;
        justify-content:flex-end !important;

        min-height:36px !important;
        padding:4px 4px 11px !important;
    }

    .homepage-premium .home-brand-category-v2{
        display:inline-flex !important;
    }

    .homepage-premium .home-brand-logo-stage-v2{
        display:grid !important;
        place-items:center !important;

        width:100% !important;
        height:124px !important;

        margin:0 0 17px !important;

        border:2px solid rgba(var(--brand-rgb),.52) !important;
        border-radius:19px !important;

        background:
            radial-gradient(
                circle at 50% 16%,
                rgba(255,255,255,.96),
                rgba(255,255,255,.39) 36%,
                transparent 67%
            ),
            linear-gradient(
                145deg,
                rgba(var(--brand-secondary-rgb),.15),
                rgba(var(--brand-rgb),.19)
            ) !important;

        box-shadow:
            0 7px 0 rgba(var(--brand-rgb),.13),
            0 17px 28px rgba(var(--brand-rgb),.18),
            inset 0 2px 0 rgba(255,255,255,.98),
            inset 0 -10px 17px rgba(var(--brand-rgb),.08) !important;
    }

    .homepage-premium .home-brand-logo-frame-v2{
        display:block !important;

        inset:7px !important;

        border:2px solid rgba(var(--brand-rgb),.30) !important;
        border-radius:13px !important;
    }

    .homepage-premium .home-brand-logo-v2{
        display:block !important;

        width:auto !important;
        height:auto !important;

        object-fit:contain !important;
    }

    .homepage-premium .home-brand-logo-itv-v2{
        max-width:46% !important;
        max-height:90px !important;
    }

    .homepage-premium .home-brand-logo-iradio-v2{
        max-width:55% !important;
        max-height:100px !important;
    }

    .homepage-premium .home-brand-logo-idigest-v2{
        max-width:38% !important;
        max-height:94px !important;
    }

    .homepage-premium .home-brand-copy-v2{
        display:block !important;
        padding:0 3px !important;
    }

    .homepage-premium .home-brand-status-v2{
        display:inline-flex !important;

        max-width:100% !important;
    }

    .homepage-premium .home-brand-name-v2{
        display:block !important;

        margin:15px 0 10px !important;

        font-size:1.55rem !important;
    }

    .homepage-premium .home-brand-red-i{
        color:#ef2235 !important;
    }

    .homepage-premium .home-brand-blue-name{
        color:#1d438d !important;
    }

    .homepage-premium .home-brand-copy-v2 p{
        display:block !important;

        margin:0 !important;

        color:#425c7a !important;

        font-size:.88rem !important;
        line-height:1.62 !important;
    }

    .homepage-premium .home-brand-button-v2{
        display:grid !important;
        grid-template-columns:auto minmax(0,1fr) auto !important;
        align-items:center !important;

        width:100% !important;
        min-height:64px !important;

        margin-top:20px !important;
        padding:9px 10px !important;

        border:2px solid rgba(255,255,255,.34) !important;
        border-radius:16px !important;

        color:#ffffff !important;
        text-decoration:none !important;

        box-shadow:
            0 7px 0 var(--card-deep),
            0 17px 31px rgba(var(--brand-rgb),.29),
            inset 0 2px 0 rgba(255,255,255,.27),
            inset 0 -7px 11px rgba(7,27,67,.14) !important;
    }

    .homepage-premium .home-brand-button-v2 small,
    .homepage-premium .home-brand-button-v2 strong{
        display:block !important;
        color:#ffffff !important;
    }

}

/*
==========================================================================
Small phones
==========================================================================
*/

@media(max-width:480px){

    .homepage-premium .home-brand-card-v2{
        padding:15px !important;
    }

    .homepage-premium .home-brand-logo-stage-v2{
        height:114px !important;
    }

    .homepage-premium .home-brand-logo-itv-v2{
        max-width:43% !important;
        max-height:83px !important;
    }

    .homepage-premium .home-brand-logo-iradio-v2{
        max-width:52% !important;
        max-height:92px !important;
    }

    .homepage-premium .home-brand-logo-idigest-v2{
        max-width:36% !important;
        max-height:87px !important;
    }

}

/* END HOMEPAGE MEDIA CARDS V2.2 */


/* BEGIN DESKTOP HERO TICKER FIX V1 */

/*
==========================================================================
Desktop ticker — keep it moving continuously
==========================================================================
*/

@media(min-width:961px){

    .homepage-premium .home-ticker-track{
        animation:
            homeCommercialTicker
            var(--home-ticker-duration,128s)
            linear
            infinite !important;

        animation-play-state:running !important;

        transform:translate3d(0,0,0);
        will-change:transform;
    }

    .homepage-premium .home-ticker-window:hover
    .home-ticker-track,

    .homepage-premium .home-ticker-window:focus-within
    .home-ticker-track{
        animation-play-state:running !important;
    }

}

/*
==========================================================================
Desktop hero — balanced title and reduced total height
==========================================================================
*/

@media(min-width:961px){

    .homepage-premium .home-hero-premium{
        padding-top:54px;
        padding-bottom:62px;
    }

    .homepage-premium .home-hero-layout{
        grid-template-columns:
            minmax(0,.96fr)
            minmax(520px,1.04fr);

        align-items:start;
        gap:38px;
    }

    .homepage-premium .home-hero-copy{
        max-width:590px;
        padding-top:12px;
    }

    .homepage-premium .home-hero-copy h1{
        max-width:585px;

        font-size:
            clamp(
                3.35rem,
                4.25vw,
                5.15rem
            );

        line-height:.95;
        letter-spacing:-.062em;

        text-wrap:balance;
    }

    .homepage-premium .home-hero-copy h1 span{
        margin-top:10px;
        text-wrap:balance;
    }

    .homepage-premium .home-hero-copy > p{
        max-width:570px;
        margin-top:21px;
        font-size:1rem;
        line-height:1.68;
    }

    .homepage-premium .home-hero-actions{
        margin-top:26px;
    }

    .homepage-premium .home-trust-row{
        margin-top:21px;
    }

    /*
    |--------------------------------------------------------------------------
    | Raise the visual and remove the empty space above it
    |--------------------------------------------------------------------------
    */

    .homepage-premium .home-hero-visual{
        min-height:470px;
        margin-top:0;
    }

    .homepage-premium .home-hero-frame{
        inset:
            0
            0
            60px
            0;

        border-radius:27px;
    }

    .homepage-premium .home-network-ribbon{
        left:34px;
        right:22px;
        bottom:0;
    }

    .homepage-premium .home-visual-orbit.orbit-one{
        top:-44px;
        right:-67px;
    }

    .homepage-premium .home-visual-orbit.orbit-two{
        left:-43px;
        bottom:46px;
    }

}

/*
==========================================================================
Medium desktop refinement
==========================================================================
*/

@media(min-width:961px) and (max-width:1180px){

    .homepage-premium .home-hero-layout{
        grid-template-columns:
            minmax(0,.98fr)
            minmax(465px,1.02fr);

        gap:30px;
    }

    .homepage-premium .home-hero-copy h1{
        font-size:
            clamp(
                3.15rem,
                4.55vw,
                4.45rem
            );
    }

    .homepage-premium .home-hero-visual{
        min-height:450px;
    }

}

/*
==========================================================================
Mobile and tablets remain unchanged
==========================================================================
*/

/* END DESKTOP HERO TICKER FIX V1 */


/* BEGIN HOME HERO TAGLINE V1 */

/*
==========================================================================
iThink Media hero tagline
Positioned above the visual frame so it never covers the image.
==========================================================================
*/

.homepage-premium .home-hero-tagline{
    position:absolute;
    top:-43px;
    left:24px;
    z-index:15;

    display:flex;
    align-items:center;
    gap:10px;

    min-height:34px;
    padding:7px 13px;

    border:1px solid rgba(255,255,255,.22);
    border-radius:999px;

    background:
        linear-gradient(
            110deg,
            rgba(3,15,38,.90),
            rgba(10,45,92,.84)
        );

    box-shadow:
        0 14px 30px rgba(0,0,0,.24),
        0 0 0 4px rgba(105,217,255,.035),
        inset 0 1px 0 rgba(255,255,255,.13);

    backdrop-filter:blur(13px);
    -webkit-backdrop-filter:blur(13px);

    white-space:nowrap;
    pointer-events:none;
}

.homepage-premium .home-hero-tagline::before{
    content:"";

    position:absolute;
    inset:4px;

    border:1px solid rgba(105,217,255,.14);
    border-radius:999px;

    pointer-events:none;
}

.homepage-premium .home-tagline-word{
    position:relative;
    z-index:2;

    display:inline-flex;
    align-items:center;
    gap:5px;

    font-size:.67rem;
    font-weight:950;
    letter-spacing:.12em;
    line-height:1;
}

.homepage-premium .home-tagline-word strong{
    color:currentColor;
    font-size:inherit;
    font-weight:950;
}

.homepage-premium .tagline-inform{
    color:#ff4054;
}

.homepage-premium .tagline-inspire{
    color:#ffb31f;
}

.homepage-premium .tagline-empower{
    color:#5ee6c0;
}

/*
|--------------------------------------------------------------------------
| Blinking star dots
|--------------------------------------------------------------------------
*/

.homepage-premium .home-tagline-star{
    position:relative;

    display:block;

    width:7px;
    height:7px;
    flex:0 0 7px;

    border-radius:50%;

    background:currentColor;

    box-shadow:
        0 0 5px currentColor,
        0 0 11px currentColor,
        0 0 18px currentColor;

    transform-origin:center;

    animation:
        homeTaglineStarBlink
        2.2s
        ease-in-out
        infinite;
}

.homepage-premium .home-tagline-star::before,
.homepage-premium .home-tagline-star::after{
    content:"";

    position:absolute;
    top:50%;
    left:50%;

    border-radius:999px;

    background:currentColor;

    transform:translate(-50%,-50%);
    opacity:.78;
}

.homepage-premium .home-tagline-star::before{
    width:1px;
    height:15px;
}

.homepage-premium .home-tagline-star::after{
    width:15px;
    height:1px;
}

.homepage-premium .tagline-inspire
.home-tagline-star{
    animation-delay:.48s;
}

.homepage-premium .tagline-empower
.home-tagline-star{
    animation-delay:.96s;
}

@keyframes homeTaglineStarBlink{

    0%,
    100%{
        opacity:.46;

        transform:
            scale(.68)
            rotate(0deg);

        box-shadow:
            0 0 3px currentColor,
            0 0 7px currentColor;
    }

    45%{
        opacity:1;

        transform:
            scale(1.18)
            rotate(45deg);

        box-shadow:
            0 0 7px currentColor,
            0 0 15px currentColor,
            0 0 24px currentColor;
    }

    58%{
        opacity:.72;

        transform:
            scale(.88)
            rotate(70deg);
    }

}

/*
==========================================================================
Medium desktop
==========================================================================
*/

@media(min-width:761px) and (max-width:1180px){

    .homepage-premium .home-hero-tagline{
        top:-40px;
        left:18px;

        gap:8px;
        padding:7px 11px;
    }

    .homepage-premium .home-tagline-word{
        font-size:.62rem;
        letter-spacing:.10em;
    }

}

/*
==========================================================================
Mobile
The badge sits in the existing gap above the image and does not alter
the hero height or cover the billboard.
==========================================================================
*/

@media(max-width:760px){

    .homepage-premium .home-hero-tagline{
        top:-37px;
        left:12px;
        right:auto;

        gap:7px;

        min-height:31px;
        padding:6px 10px;

        border-radius:999px;
    }

    .homepage-premium .home-tagline-word{
        gap:4px;

        font-size:.56rem;
        letter-spacing:.085em;
    }

    .homepage-premium .home-tagline-star{
        width:6px;
        height:6px;
        flex-basis:6px;
    }

    .homepage-premium .home-tagline-star::before{
        height:12px;
    }

    .homepage-premium .home-tagline-star::after{
        width:12px;
    }

}

/*
==========================================================================
Small phones
==========================================================================
*/

@media(max-width:390px){

    .homepage-premium .home-hero-tagline{
        left:6px;

        gap:5px;
        padding:6px 8px;
    }

    .homepage-premium .home-tagline-word{
        font-size:.50rem;
        letter-spacing:.065em;
    }

}

/*
==========================================================================
Reduced motion
==========================================================================
*/

@media(prefers-reduced-motion:reduce){

    .homepage-premium .home-tagline-star{
        animation:none;
        opacity:1;
    }

}

/* END HOME HERO TAGLINE V1 */


/* BEGIN HOMEPAGE COMMERCIAL SERVICES V3 */

/*
==========================================================================
Integrated Commercial Services — advanced eight-card presentation
==========================================================================
*/

.homepage-premium .home-commercial-services-v3{
    position:relative;
    isolation:isolate;
    overflow:hidden;
}

.homepage-premium .home-commercial-services-v3::before{
    content:"";

    position:absolute;
    top:90px;
    left:50%;

    width:min(1080px,90vw);
    height:420px;

    z-index:-2;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(36,112,224,.075),
            rgba(36,112,224,.025) 42%,
            transparent 72%
        );

    transform:translateX(-50%);
    pointer-events:none;
}

.homepage-premium .home-commercial-services-v3::after{
    content:"";

    position:absolute;
    inset:0;

    z-index:-3;

    background:
        radial-gradient(
            circle at 12% 28%,
            rgba(239,34,53,.035),
            transparent 24%
        ),
        radial-gradient(
            circle at 88% 72%,
            rgba(27,119,221,.045),
            transparent 26%
        );

    pointer-events:none;
}

/*
|--------------------------------------------------------------------------
| Section title — same font and colours, stronger visual finish
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-commercial-services-v3
:is(
    .home-section-title,
    .home-section-title-v2,
    .section-title,
    h2
){
    position:relative;
    z-index:2;

    text-shadow:
        0 2px 0 rgba(255,255,255,.96),
        0 12px 30px rgba(13,48,100,.12);
}

.homepage-premium
.home-commercial-services-v3
:is(
    .home-section-title,
    .home-section-title-v2,
    .section-title,
    h2
)::after{
    content:"";

    display:block;

    width:116px;
    height:5px;

    margin:18px auto 0;

    border-radius:999px;

    background:
        linear-gradient(
            90deg,
            #ef2235 0 18%,
            #236fda 18% 74%,
            #69d9ff 74% 100%
        );

    box-shadow:
        0 5px 15px rgba(35,111,218,.22);
}

/*
|--------------------------------------------------------------------------
| Stronger supporting statement
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-lead-v3{
    position:relative;

    max-width:910px;

    margin:
        22px
        auto
        0 !important;

    padding:
        15px
        24px;

    border:
        1px
        solid
        rgba(35,111,218,.20);

    border-radius:22px;

    background:
        linear-gradient(
            135deg,
            rgba(231,242,255,.92),
            rgba(247,251,255,.96)
        );

    color:#24476e !important;

    font-size:
        clamp(
            .98rem,
            1.35vw,
            1.10rem
        ) !important;

    font-weight:800 !important;
    line-height:1.62 !important;
    letter-spacing:-.01em;

    box-shadow:
        0 9px 0 rgba(35,111,218,.055),
        0 20px 38px rgba(13,48,100,.10),
        inset 0 2px 0 rgba(255,255,255,.96);
}

/*
==========================================================================
Shared eight-card construction
==========================================================================
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-card-v3{
    --service-main:#246fd4;
    --service-main-rgb:36,111,212;

    --service-second:#ef2235;
    --service-second-rgb:239,34,53;

    --service-edge:#164481;

    --service-surface-one:#e3f0ff;
    --service-surface-two:#cfe3ff;
    --service-surface-three:#f2f8ff;

    position:relative;
    isolation:isolate;

    display:flex;
    flex-direction:column;

    min-width:0;
    min-height:360px;

    margin-bottom:18px;
    padding:24px 22px 22px;

    overflow:visible;

    border:
        2px
        solid
        rgba(var(--service-main-rgb),.68);

    border-radius:34px;

    background:
        radial-gradient(
            circle at 8% 4%,
            rgba(var(--service-second-rgb),.23),
            transparent 31%
        ),
        radial-gradient(
            circle at 96% 96%,
            rgba(var(--service-main-rgb),.23),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            var(--service-surface-one) 0%,
            var(--service-surface-three) 48%,
            var(--service-surface-two) 100%
        );

    box-shadow:
        0 11px 0 var(--service-edge),
        0 18px 0 rgba(7,27,67,.12),
        0 34px 54px rgba(7,27,67,.20),
        0 21px 40px rgba(var(--service-main-rgb),.20),
        0 0 0 7px rgba(var(--service-main-rgb),.045),
        inset 0 3px 0 rgba(255,255,255,.96),
        inset 0 -15px 24px rgba(var(--service-main-rgb),.10);

    transform:
        translateY(0)
        perspective(900px)
        rotateX(0)
        rotateY(0);

    transform-style:preserve-3d;

    transition:
        transform .34s cubic-bezier(.2,.75,.2,1),
        border-color .34s ease,
        box-shadow .34s ease,
        filter .34s ease;
}

/*
|--------------------------------------------------------------------------
| Deep round lower lip
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-card-v3::after{
    content:"";

    position:absolute;

    left:19px;
    right:19px;
    bottom:-18px;

    height:27px;

    z-index:-2;

    border-radius:
        0
        0
        28px
        28px;

    background:
        linear-gradient(
            180deg,
            color-mix(
                in srgb,
                var(--service-main) 76%,
                #ffffff
            ),
            var(--service-edge)
        );

    box-shadow:
        0 13px 23px rgba(7,27,67,.27),
        0 6px 14px rgba(var(--service-main-rgb),.24);

    transform:
        perspective(260px)
        rotateX(-25deg);

    transform-origin:top;
}

/*
|--------------------------------------------------------------------------
| Rounded bevel and edge lighting
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-card-v3::before{
    content:"";

    position:absolute;
    inset:6px;

    z-index:-1;

    border:
        2px
        solid
        rgba(var(--service-main-rgb),.35);

    border-radius:27px;

    background:
        linear-gradient(
            130deg,
            rgba(255,255,255,.62),
            transparent 30%,
            transparent 68%,
            rgba(var(--service-main-rgb),.10)
        );

    box-shadow:
        inset 0 0 0 2px rgba(255,255,255,.70),
        inset 4px 4px 0 rgba(255,255,255,.50),
        inset -6px -7px 0 rgba(var(--service-main-rgb),.11),
        inset 0 0 28px rgba(var(--service-main-rgb),.08);

    pointer-events:none;
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-card-v3 > *{
    position:relative;
    z-index:2;
}

/*
==========================================================================
Eight coordinated colour identities
==========================================================================
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-tone-1{
    --service-main:#1768cc;
    --service-main-rgb:23,104,204;

    --service-second:#ed263d;
    --service-second-rgb:237,38,61;

    --service-edge:#164884;

    --service-surface-one:#dcecff;
    --service-surface-two:#c9dfff;
    --service-surface-three:#f1f7ff;
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-tone-2{
    --service-main:#6547c8;
    --service-main-rgb:101,71,200;

    --service-second:#18a8d8;
    --service-second-rgb:24,168,216;

    --service-edge:#413282;

    --service-surface-one:#e9e2ff;
    --service-surface-two:#d8d0ff;
    --service-surface-three:#f6f3ff;
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-tone-3{
    --service-main:#c43d7d;
    --service-main-rgb:196,61,125;

    --service-second:#f08a20;
    --service-second-rgb:240,138,32;

    --service-edge:#812951;

    --service-surface-one:#ffe0ed;
    --service-surface-two:#f7cee0;
    --service-surface-three:#fff3f8;
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-tone-4{
    --service-main:#087d82;
    --service-main-rgb:8,125,130;

    --service-second:#236fd8;
    --service-second-rgb:35,111,216;

    --service-edge:#07515c;

    --service-surface-one:#d9f5f3;
    --service-surface-two:#c4e9e8;
    --service-surface-three:#f1fcfb;
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-tone-5{
    --service-main:#2670c9;
    --service-main-rgb:38,112,201;

    --service-second:#63aa23;
    --service-second-rgb:99,170,35;

    --service-edge:#194b83;

    --service-surface-one:#dfedff;
    --service-surface-two:#cfdfef;
    --service-surface-three:#f3f8ff;
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-tone-6{
    --service-main:#394eaa;
    --service-main-rgb:57,78,170;

    --service-second:#e7a317;
    --service-second-rgb:231,163,23;

    --service-edge:#293978;

    --service-surface-one:#e4e8ff;
    --service-surface-two:#d4daf5;
    --service-surface-three:#f5f6ff;
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-tone-7{
    --service-main:#a42f51;
    --service-main-rgb:164,47,81;

    --service-second:#168fae;
    --service-second-rgb:22,143,174;

    --service-edge:#702238;

    --service-surface-one:#f8dfe6;
    --service-surface-two:#ecd0da;
    --service-surface-three:#fff4f7;
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-tone-8{
    --service-main:#6a41b4;
    --service-main-rgb:106,65,180;

    --service-second:#d73f8c;
    --service-second-rgb:215,63,140;

    --service-edge:#49317d;

    --service-surface-one:#eadfff;
    --service-surface-two:#dacdf3;
    --service-surface-three:#f7f3ff;
}

/*
|--------------------------------------------------------------------------
| Icons
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-card-v3
:is(
    .home-service-icon,
    .home-service-icon-v2,
    .service-icon,
    [class*="service-icon"]
){
    display:grid;
    place-items:center;

    width:72px;
    height:72px;

    margin-bottom:21px;

    border:
        2px
        solid
        rgba(255,255,255,.63);

    border-radius:24px;

    background:
        linear-gradient(
            145deg,
            var(--service-second),
            var(--service-main)
        ) !important;

    color:#ffffff !important;

    font-size:1.65rem;
    font-weight:950;

    text-shadow:
        0 2px 7px rgba(0,0,0,.22);

    box-shadow:
        0 8px 0 var(--service-edge),
        0 17px 26px rgba(var(--service-main-rgb),.28),
        inset 0 2px 0 rgba(255,255,255,.34),
        inset 0 -7px 12px rgba(7,27,67,.15);

    transform:
        perspective(300px)
        rotateX(4deg)
        rotateY(-5deg);

    transition:
        transform .32s ease,
        box-shadow .32s ease;
}

/*
|--------------------------------------------------------------------------
| Card headings and copy
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-card-v3 h3{
    margin:
        7px
        0
        12px;

    color:#092e63 !important;

    font-size:
        clamp(
            1.17rem,
            1.55vw,
            1.40rem
        );

    line-height:1.18;
    letter-spacing:-.025em;

    text-shadow:
        0 1px 0 rgba(255,255,255,.84);
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-card-v3 p{
    margin:
        0
        0
        22px;

    color:#385675 !important;

    font-size:.91rem;
    font-weight:590;
    line-height:1.66;
}

/*
|--------------------------------------------------------------------------
| Every card button
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-card-v3
:is(
    .home-service-button,
    .home-service-button-v2,
    .home-service-link,
    .home-service-link-v2,
    .service-button,
    .service-link,
    a:last-child
){
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;

    width:100%;
    min-height:54px;

    margin-top:auto;
    padding:11px 17px;

    border:
        2px
        solid
        rgba(255,255,255,.38);

    border-radius:999px;

    background:
        linear-gradient(
            115deg,
            var(--service-second),
            var(--service-main)
        ) !important;

    color:#ffffff !important;

    font-size:.84rem;
    font-weight:900;
    letter-spacing:.025em;
    text-decoration:none !important;

    box-shadow:
        0 6px 0 var(--service-edge),
        0 15px 25px rgba(var(--service-main-rgb),.27),
        inset 0 2px 0 rgba(255,255,255,.28),
        inset 0 -6px 9px rgba(7,27,67,.13);

    transform:translateY(0);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        filter .25s ease;
}

/*
==========================================================================
Desktop hover and keyboard responses
==========================================================================
*/

@media(hover:hover) and (pointer:fine){

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3:hover{
        transform:
            translateY(-15px)
            perspective(900px)
            rotateX(2deg)
            rotateY(-1.2deg);

        border-color:
            rgba(var(--service-main-rgb),.94);

        box-shadow:
            0 14px 0 var(--service-edge),
            0 22px 0 rgba(7,27,67,.13),
            0 48px 76px rgba(7,27,67,.26),
            0 28px 50px rgba(var(--service-main-rgb),.27),
            0 0 40px rgba(var(--service-second-rgb),.13),
            0 0 0 8px rgba(var(--service-main-rgb),.055),
            inset 0 3px 0 rgba(255,255,255,1),
            inset 0 -17px 27px rgba(var(--service-main-rgb),.12);
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3:hover
    :is(
        .home-service-icon,
        .home-service-icon-v2,
        .service-icon,
        [class*="service-icon"]
    ){
        transform:
            translateY(-4px)
            perspective(300px)
            rotateX(0)
            rotateY(4deg)
            scale(1.04);

        box-shadow:
            0 10px 0 var(--service-edge),
            0 22px 35px rgba(var(--service-main-rgb),.34),
            0 0 24px rgba(var(--service-second-rgb),.18),
            inset 0 2px 0 rgba(255,255,255,.38);
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3
    :is(
        .home-service-button,
        .home-service-button-v2,
        .home-service-link,
        .home-service-link-v2,
        .service-button,
        .service-link,
        a:last-child
    ):hover{
        transform:translateY(-4px);

        filter:saturate(1.12) brightness(1.04);

        box-shadow:
            0 8px 0 var(--service-edge),
            0 23px 38px rgba(var(--service-main-rgb),.36),
            0 0 22px rgba(var(--service-second-rgb),.17),
            inset 0 2px 0 rgba(255,255,255,.33);
    }

}

/*
|--------------------------------------------------------------------------
| Keyboard accessibility
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-card-v3
a:focus-visible,

.homepage-premium
.home-commercial-services-v3
.home-commercial-cta-button-v3:focus-visible{
    outline:
        4px
        solid
        rgba(105,217,255,.68);

    outline-offset:5px;
}

/*
==========================================================================
Final invitation and Explore All Services button
==========================================================================
*/

.homepage-premium
.home-commercial-services-v3
.home-commercial-cta-copy-v3{
    display:block;

    width:fit-content;
    max-width:100%;

    margin:
        31px
        auto
        17px !important;

    padding:
        15px
        23px;

    border:
        1px
        solid
        rgba(35,111,218,.24);

    border-radius:24px;

    background:
        linear-gradient(
            135deg,
            rgba(220,237,255,.94),
            rgba(244,249,255,.98)
        );

    color:#092e63 !important;

    font-size:
        clamp(
            1rem,
            1.45vw,
            1.17rem
        ) !important;

    font-weight:900 !important;
    line-height:1.45 !important;
    text-align:center;

    box-shadow:
        0 8px 0 rgba(35,111,218,.075),
        0 20px 36px rgba(7,27,67,.12),
        inset 0 2px 0 rgba(255,255,255,.98);
}

.homepage-premium
.home-commercial-services-v3
.home-commercial-cta-button-v3{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:10px;

    min-width:230px;
    min-height:59px;

    padding:
        12px
        24px !important;

    border:
        2px
        solid
        rgba(255,255,255,.31) !important;

    border-radius:999px !important;

    background:
        linear-gradient(
            110deg,
            #ef2235,
            #b81438 38%,
            #185ebd 100%
        ) !important;

    color:#ffffff !important;

    font-weight:950 !important;
    letter-spacing:.025em;
    text-decoration:none !important;

    box-shadow:
        0 7px 0 #0c3978,
        0 18px 34px rgba(18,76,158,.30),
        0 0 0 6px rgba(35,111,218,.055),
        inset 0 2px 0 rgba(255,255,255,.28),
        inset 0 -7px 11px rgba(7,27,67,.17);

    transform:translateY(0);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        filter .25s ease;
}

@media(hover:hover) and (pointer:fine){

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-cta-button-v3:hover{
        transform:
            translateY(-5px)
            scale(1.025);

        filter:
            saturate(1.12)
            brightness(1.04);

        box-shadow:
            0 10px 0 #0c3978,
            0 27px 46px rgba(18,76,158,.38),
            0 0 30px rgba(239,34,53,.17),
            0 0 0 7px rgba(35,111,218,.065),
            inset 0 2px 0 rgba(255,255,255,.34);
    }

}

/*
==========================================================================
Tablet
==========================================================================
*/

@media(max-width:1050px){

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3{
        min-height:345px;
        border-radius:31px;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3::before{
        border-radius:24px;
    }

}

/*
==========================================================================
Mobile
==========================================================================
*/

@media(max-width:720px){

    .homepage-premium
    .home-commercial-services-v3{
        overflow:hidden;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-lead-v3{
        width:100%;

        margin-top:19px !important;
        padding:14px 17px;

        border-radius:19px;

        font-size:.94rem !important;
        line-height:1.58 !important;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3{
        width:100%;
        min-height:0;

        margin-bottom:17px;
        padding:21px 19px 20px;

        border-radius:29px;

        box-shadow:
            0 9px 0 var(--service-edge),
            0 15px 0 rgba(7,27,67,.11),
            0 29px 48px rgba(7,27,67,.20),
            0 17px 32px rgba(var(--service-main-rgb),.20),
            0 0 0 6px rgba(var(--service-main-rgb),.045),
            inset 0 3px 0 rgba(255,255,255,.96),
            inset 0 -13px 22px rgba(var(--service-main-rgb),.10);
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3::before{
        inset:5px;
        border-radius:23px;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3::after{
        left:17px;
        right:17px;
        bottom:-15px;
        height:23px;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3
    :is(
        .home-service-icon,
        .home-service-icon-v2,
        .service-icon,
        [class*="service-icon"]
    ){
        width:65px;
        height:65px;

        margin-bottom:18px;

        border-radius:21px;

        font-size:1.45rem;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3 h3{
        font-size:1.24rem;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3 p{
        font-size:.90rem;
        line-height:1.62;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-cta-copy-v3{
        width:100%;

        margin-top:29px !important;
        padding:14px 17px;

        border-radius:20px;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-cta-button-v3{
        width:100%;
        min-width:0;
        min-height:58px;

        padding:
            12px
            17px !important;
    }

}

/*
==========================================================================
Small phones
==========================================================================
*/

@media(max-width:420px){

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3{
        padding:
            19px
            17px
            18px;

        border-radius:27px;
    }

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3::before{
        border-radius:21px;
    }

}

/*
==========================================================================
Reduced motion
==========================================================================
*/

@media(prefers-reduced-motion:reduce){

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3,

    .homepage-premium
    .home-commercial-services-v3
    .home-commercial-card-v3
    :is(
        .home-service-icon,
        .home-service-icon-v2,
        .service-icon,
        [class*="service-icon"]
    ),

    .homepage-premium
    .home-commercial-services-v3
    a{
        transition:none !important;
        transform:none !important;
    }

}

/* END HOMEPAGE COMMERCIAL SERVICES V3 */


/* BEGIN HOMEPAGE EXECUTIVE LEADERSHIP V4 */

/*
==========================================================================
Executive Leadership — premium coloured 3D presentation
==========================================================================
*/

.homepage-premium
.home-executive-leadership-v4{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 9% 26%,
            rgba(34,105,213,.075),
            transparent 27%
        ),
        radial-gradient(
            circle at 91% 73%,
            rgba(5,151,111,.075),
            transparent 27%
        ),
        linear-gradient(
            180deg,
            #f8fbff,
            #f3f8fc
        ) !important;
}

.homepage-premium
.home-executive-leadership-v4::before{
    content:"";

    position:absolute;
    top:120px;
    left:50%;

    width:min(980px,86vw);
    height:330px;

    z-index:-2;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(34,105,213,.07),
            transparent 68%
        );

    transform:translateX(-50%);
    pointer-events:none;
}

/*
==========================================================================
Shared executive-card construction
==========================================================================
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4{
    --leader-main:#216bd4;
    --leader-main-rgb:33,107,212;

    --leader-accent:#63d9ff;
    --leader-accent-rgb:99,217,255;

    --leader-depth:#123f84;

    --leader-surface-one:#dcecff;
    --leader-surface-two:#c9dfff;
    --leader-surface-three:#edf6ff;

    position:relative;
    isolation:isolate;

    overflow:visible;

    border:
        2px
        solid
        rgba(var(--leader-main-rgb),.72) !important;

    border-radius:36px !important;

    background:
        radial-gradient(
            circle at 8% 3%,
            rgba(var(--leader-accent-rgb),.25),
            transparent 29%
        ),
        radial-gradient(
            circle at 92% 100%,
            rgba(var(--leader-main-rgb),.22),
            transparent 37%
        ),
        linear-gradient(
            145deg,
            var(--leader-surface-one) 0%,
            var(--leader-surface-three) 48%,
            var(--leader-surface-two) 100%
        ) !important;

    box-shadow:
        0 12px 0 var(--leader-depth),
        0 19px 0 rgba(7,27,67,.12),
        0 36px 58px rgba(7,27,67,.21),
        0 22px 42px rgba(var(--leader-main-rgb),.20),
        0 0 0 7px rgba(var(--leader-main-rgb),.045),
        inset 0 3px 0 rgba(255,255,255,.95),
        inset 0 -16px 27px rgba(var(--leader-main-rgb),.10) !important;

    transform:
        translateY(0)
        perspective(950px)
        rotateX(0)
        rotateY(0);

    transform-style:preserve-3d;

    transition:
        transform .36s cubic-bezier(.2,.75,.2,1),
        border-color .36s ease,
        box-shadow .36s ease,
        filter .36s ease;
}

/*
|--------------------------------------------------------------------------
| CEO sapphire-blue identity
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-ceo-v4{
    --leader-main:#1765c8;
    --leader-main-rgb:23,101,200;

    --leader-accent:#6bdcff;
    --leader-accent-rgb:107,220,255;

    --leader-depth:#123f81;

    --leader-surface-one:#d9eaff;
    --leader-surface-two:#c5dcff;
    --leader-surface-three:#eef6ff;
}

/*
|--------------------------------------------------------------------------
| Managing Director emerald-teal identity
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-chief-v4{
    --leader-main:#078f70;
    --leader-main-rgb:7,143,112;

    --leader-accent:#72e7c6;
    --leader-accent-rgb:114,231,198;

    --leader-depth:#075e51;

    --leader-surface-one:#d8f4eb;
    --leader-surface-two:#c3e9df;
    --leader-surface-three:#effbf7;
}

/*
|--------------------------------------------------------------------------
| Inner bevel
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4::before{
    content:"";

    position:absolute;
    inset:6px;

    z-index:0;

    border:
        2px
        solid
        rgba(var(--leader-main-rgb),.34);

    border-radius:29px;

    background:
        linear-gradient(
            128deg,
            rgba(255,255,255,.60),
            transparent 30%,
            transparent 68%,
            rgba(var(--leader-main-rgb),.09)
        );

    box-shadow:
        inset 0 0 0 2px rgba(255,255,255,.70),
        inset 4px 4px 0 rgba(255,255,255,.47),
        inset -6px -7px 0 rgba(var(--leader-main-rgb),.11),
        inset 0 0 28px rgba(var(--leader-main-rgb),.08);

    pointer-events:none;
}

/*
|--------------------------------------------------------------------------
| Deep raised lower edge
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4::after{
    content:"";

    position:absolute;
    left:22px;
    right:22px;
    bottom:-19px;

    height:28px;

    z-index:-2;

    border-radius:
        0
        0
        29px
        29px;

    background:
        linear-gradient(
            180deg,
            var(--leader-main),
            var(--leader-depth)
        );

    box-shadow:
        0 14px 24px rgba(7,27,67,.27),
        0 6px 15px rgba(var(--leader-main-rgb),.25);

    transform:
        perspective(270px)
        rotateX(-25deg);

    transform-origin:top;
}

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4
> *:not(
    .home-executive-live-ring-v4
):not(
    .home-executive-orbit-light-v4
){
    position:relative;
    z-index:2;
}

/*
==========================================================================
Live glowing line around the inner card edge
==========================================================================
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-live-ring-v4{
    position:absolute;
    inset:8px;

    z-index:7;

    padding:2px;

    border-radius:28px;

    background:
        conic-gradient(
            from 0deg,
            rgba(var(--leader-main-rgb),.16) 0deg,
            rgba(var(--leader-main-rgb),.16) 245deg,
            rgba(var(--leader-accent-rgb),.32) 275deg,
            rgba(255,255,255,1) 302deg,
            var(--leader-accent) 322deg,
            rgba(var(--leader-main-rgb),.16) 350deg,
            rgba(var(--leader-main-rgb),.16) 360deg
        );

    box-shadow:
        0 0 12px rgba(var(--leader-accent-rgb),.20),
        inset 0 0 9px rgba(var(--leader-accent-rgb),.14);

    -webkit-mask:
        linear-gradient(#000 0 0)
        content-box,

        linear-gradient(#000 0 0);

    -webkit-mask-composite:xor;

    mask:
        linear-gradient(#000 0 0)
        content-box,

        linear-gradient(#000 0 0);

    mask-composite:exclude;

    pointer-events:none;

    animation:
        homeExecutiveRingTravel
        5.6s
        linear
        infinite;
}

/*
|--------------------------------------------------------------------------
| Bright travelling star
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-orbit-light-v4{
    position:absolute;
    top:0;
    left:0;

    z-index:8;

    width:10px;
    height:10px;

    border-radius:50%;

    background:#ffffff;

    box-shadow:
        0 0 5px #ffffff,
        0 0 11px var(--leader-accent),
        0 0 20px var(--leader-accent),
        0 0 31px rgba(var(--leader-accent-rgb),.88);

    offset-path:
        inset(
            9px
            round
            27px
        );

    offset-distance:0%;
    offset-rotate:0deg;

    pointer-events:none;

    animation:
        homeExecutiveOrbitLight
        5.6s
        linear
        infinite;
}

@keyframes homeExecutiveRingTravel{

    to{
        transform:rotate(360deg);
    }

}

@keyframes homeExecutiveOrbitLight{

    0%{
        offset-distance:0%;
        opacity:.74;
        transform:scale(.72);
    }

    11%{
        opacity:1;
        transform:scale(1.18);
    }

    48%{
        opacity:.82;
        transform:scale(.86);
    }

    79%{
        opacity:1;
        transform:scale(1.14);
    }

    100%{
        offset-distance:100%;
        opacity:.74;
        transform:scale(.72);
    }

}

/*
==========================================================================
Dr. Mugisha Jeremiah photograph
==========================================================================
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-photo-shell-v4{
    position:relative;

    width:190px;
    min-width:190px;
    height:270px;

    overflow:hidden;

    border:
        3px
        solid
        rgba(107,220,255,.82);

    border-radius:25px;

    background:#0b3f85;

    box-shadow:
        0 9px 0 #123f81,
        0 19px 29px rgba(7,27,67,.25),
        0 0 0 6px rgba(107,220,255,.10),
        inset 0 2px 0 rgba(255,255,255,.55);
}

.homepage-premium
.home-executive-leadership-v4
.home-executive-photo-shell-v4 img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center top;

    border-radius:21px;

    filter:
        contrast(1.035)
        saturate(1.035);
}

.homepage-premium
.home-executive-leadership-v4
.home-executive-photo-sheen-v4{
    position:absolute;
    inset:0;

    z-index:2;

    background:
        linear-gradient(
            118deg,
            transparent 10%,
            rgba(255,255,255,.20) 28%,
            transparent 43%
        );

    transform:translateX(-120%);

    pointer-events:none;

    animation:
        homeExecutivePhotoSheen
        6.8s
        ease-in-out
        infinite;
}

@keyframes homeExecutivePhotoSheen{

    0%,
    59%{
        transform:translateX(-125%);
    }

    76%,
    100%{
        transform:translateX(135%);
    }

}

/*
==========================================================================
Leadership text refinement
==========================================================================
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4
:is(
    h3,
    h4
){
    color:#071f49 !important;

    text-shadow:
        0 1px 0 rgba(255,255,255,.82);
}

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4 p{
    color:#385878 !important;
    font-weight:540;
}

.homepage-premium
.home-executive-leadership-v4
.home-executive-ceo-v4
:is(
    .role,
    [class*="role"]
){
    color:#155ec5 !important;
}

.homepage-premium
.home-executive-leadership-v4
.home-executive-chief-v4
:is(
    .role,
    [class*="role"]
){
    color:#078665 !important;
}

/*
==========================================================================
Card hover interaction
==========================================================================
*/

@media(hover:hover) and (pointer:fine){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4:hover{
        transform:
            translateY(-15px)
            perspective(950px)
            rotateX(2deg)
            rotateY(-1deg);

        border-color:
            rgba(var(--leader-accent-rgb),.98) !important;

        box-shadow:
            0 15px 0 var(--leader-depth),
            0 23px 0 rgba(7,27,67,.13),
            0 50px 78px rgba(7,27,67,.27),
            0 29px 52px rgba(var(--leader-main-rgb),.28),
            0 0 43px rgba(var(--leader-accent-rgb),.14),
            0 0 0 8px rgba(var(--leader-main-rgb),.055),
            inset 0 3px 0 rgba(255,255,255,1),
            inset 0 -18px 29px rgba(var(--leader-main-rgb),.12) !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4:hover
    .home-executive-live-ring-v4{
        animation-duration:3.8s;

        filter:
            saturate(1.25)
            brightness(1.12);
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4:hover
    .home-executive-orbit-light-v4{
        animation-duration:3.8s;
    }

}

/*
==========================================================================
New leadership-access panel
==========================================================================
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-cta-v4{
    position:relative;
    isolation:isolate;

    display:grid !important;

    grid-template-columns:
        58px
        minmax(0,1fr)
        54px;

    align-items:center;
    gap:15px;

    width:min(560px,100%);
    min-height:82px;

    margin-top:42px !important;
    padding:10px 12px !important;

    overflow:hidden;

    border:
        2px
        solid
        rgba(130,205,255,.50) !important;

    border-radius:24px !important;

    background:
        radial-gradient(
            circle at 5% 10%,
            rgba(85,113,255,.48),
            transparent 35%
        ),
        radial-gradient(
            circle at 95% 90%,
            rgba(19,196,156,.34),
            transparent 34%
        ),
        linear-gradient(
            120deg,
            #071c49,
            #173e88 48%,
            #075f68
        ) !important;

    color:#ffffff !important;
    text-align:left;
    text-decoration:none !important;

    box-shadow:
        0 10px 0 #041b3d,
        0 22px 43px rgba(7,27,67,.31),
        0 0 0 7px rgba(73,157,255,.055),
        inset 0 2px 0 rgba(255,255,255,.20),
        inset 0 -8px 14px rgba(0,0,0,.16);

    transform:translateY(0);

    transition:
        transform .30s ease,
        box-shadow .30s ease,
        border-color .30s ease,
        filter .30s ease;
}

/*
|--------------------------------------------------------------------------
| Moving light scan
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-cta-v4::before{
    content:"";

    position:absolute;
    top:-60%;
    bottom:-60%;
    left:-35%;

    width:24%;

    z-index:-1;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.31),
            transparent
        );

    transform:
        skewX(-18deg)
        translateX(0);

    animation:
        homeLeadershipCtaScan
        5.2s
        ease-in-out
        infinite;
}

.homepage-premium
.home-executive-leadership-v4
.home-executive-cta-v4::after{
    content:"";

    position:absolute;
    inset:5px;

    z-index:-2;

    border:
        1px
        solid
        rgba(131,216,255,.29);

    border-radius:17px;

    box-shadow:
        inset 0 0 24px rgba(87,172,255,.08);

    pointer-events:none;
}

@keyframes homeLeadershipCtaScan{

    0%,
    58%{
        left:-35%;
    }

    81%,
    100%{
        left:125%;
    }

}

/*
|--------------------------------------------------------------------------
| Animated leadership signal
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-leadership-cta-signal-v4{
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:5px;

    width:58px;
    height:58px;

    padding:15px;

    border:
        1px
        solid
        rgba(151,218,255,.40);

    border-radius:17px;

    background:
        linear-gradient(
            145deg,
            rgba(86,141,255,.30),
            rgba(5,34,80,.58)
        );

    box-shadow:
        0 6px 0 rgba(2,20,52,.62),
        inset 0 2px 0 rgba(255,255,255,.18);
}

.homepage-premium
.home-executive-leadership-v4
.home-leadership-cta-signal-v4 i{
    display:block;

    width:5px;

    border-radius:999px;

    background:
        linear-gradient(
            180deg,
            #ffffff,
            #6fe6ff
        );

    box-shadow:
        0 0 8px rgba(111,230,255,.80);

    animation:
        homeLeadershipSignal
        1.35s
        ease-in-out
        infinite;
}

.homepage-premium
.home-executive-leadership-v4
.home-leadership-cta-signal-v4 i:nth-child(1){
    height:13px;
    animation-delay:0s;
}

.homepage-premium
.home-executive-leadership-v4
.home-leadership-cta-signal-v4 i:nth-child(2){
    height:24px;
    animation-delay:.18s;
}

.homepage-premium
.home-executive-leadership-v4
.home-leadership-cta-signal-v4 i:nth-child(3){
    height:18px;
    animation-delay:.36s;
}

@keyframes homeLeadershipSignal{

    0%,
    100%{
        transform:scaleY(.72);
        opacity:.55;
    }

    50%{
        transform:scaleY(1.18);
        opacity:1;
    }

}

/*
|--------------------------------------------------------------------------
| Two-line CTA copy
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-leadership-cta-copy-v4{
    display:flex;
    flex-direction:column;
    min-width:0;
}

.homepage-premium
.home-executive-leadership-v4
.home-leadership-cta-copy-v4 small{
    display:block;

    margin-bottom:4px;

    color:#80e6ff !important;

    font-size:.60rem;
    font-weight:900;
    letter-spacing:.12em;
    line-height:1.25;
}

.homepage-premium
.home-executive-leadership-v4
.home-leadership-cta-copy-v4 strong{
    display:block;

    color:#ffffff !important;

    font-size:
        clamp(
            .92rem,
            1.6vw,
            1.08rem
        );

    font-weight:950;
    line-height:1.25;
}

/*
|--------------------------------------------------------------------------
| Arrow control
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-leadership-cta-arrow-v4{
    display:grid;
    place-items:center;

    width:52px;
    height:52px;

    border:
        1px
        solid
        rgba(122,241,210,.48);

    border-radius:16px;

    background:
        linear-gradient(
            145deg,
            rgba(17,181,143,.85),
            rgba(5,94,104,.95)
        );

    color:#ffffff;

    font-size:1.18rem;
    font-weight:900;

    box-shadow:
        0 6px 0 rgba(2,47,57,.80),
        0 13px 22px rgba(3,71,80,.28),
        inset 0 2px 0 rgba(255,255,255,.22);

    transition:
        transform .28s ease,
        box-shadow .28s ease;
}

/*
|--------------------------------------------------------------------------
| CTA hover
|--------------------------------------------------------------------------
*/

@media(hover:hover) and (pointer:fine){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-cta-v4:hover{
        transform:
            translateY(-7px)
            scale(1.018);

        border-color:
            rgba(128,230,255,.88) !important;

        filter:
            saturate(1.10)
            brightness(1.04);

        box-shadow:
            0 13px 0 #041b3d,
            0 31px 54px rgba(7,27,67,.39),
            0 0 34px rgba(94,216,255,.16),
            0 0 0 8px rgba(73,157,255,.065),
            inset 0 2px 0 rgba(255,255,255,.25),
            inset 0 -8px 14px rgba(0,0,0,.16);
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-cta-v4:hover
    .home-leadership-cta-arrow-v4{
        transform:
            translateY(-3px)
            rotate(8deg)
            scale(1.06);

        box-shadow:
            0 8px 0 rgba(2,47,57,.80),
            0 19px 29px rgba(3,71,80,.37),
            0 0 18px rgba(114,231,198,.26),
            inset 0 2px 0 rgba(255,255,255,.26);
    }

}

/*
|--------------------------------------------------------------------------
| Keyboard accessibility
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-cta-v4:focus-visible{
    outline:
        4px
        solid
        rgba(105,217,255,.72);

    outline-offset:6px;
}

/*
==========================================================================
Tablet
==========================================================================
*/

@media(max-width:1020px){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4{
        border-radius:33px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4::before{
        border-radius:26px;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-live-ring-v4{
        border-radius:25px;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-shell-v4{
        width:170px;
        min-width:170px;
        height:250px;
    }

}

/*
==========================================================================
Mobile
==========================================================================
*/

@media(max-width:720px){

    .homepage-premium
    .home-executive-leadership-v4{
        overflow:hidden;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4{
        width:100%;

        margin-bottom:19px;

        border-radius:30px !important;

        box-shadow:
            0 10px 0 var(--leader-depth),
            0 16px 0 rgba(7,27,67,.11),
            0 31px 50px rgba(7,27,67,.21),
            0 18px 34px rgba(var(--leader-main-rgb),.20),
            0 0 0 6px rgba(var(--leader-main-rgb),.045),
            inset 0 3px 0 rgba(255,255,255,.95),
            inset 0 -14px 23px rgba(var(--leader-main-rgb),.10) !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4::before{
        inset:5px;
        border-radius:24px;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4::after{
        left:18px;
        right:18px;
        bottom:-16px;
        height:24px;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-live-ring-v4{
        inset:7px;
        border-radius:23px;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-orbit-light-v4{
        offset-path:
            inset(
                8px
                round
                22px
            );
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-shell-v4{
        width:100%;
        max-width:270px;
        min-width:0;
        height:305px;

        margin:
            0
            auto
            22px;
    }

    /*
    |--------------------------------------------------------------------------
    | Mobile leadership access panel
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-cta-v4{
        grid-template-columns:
            51px
            minmax(0,1fr)
            47px;

        gap:10px;

        width:100%;
        min-height:76px;

        margin-top:35px !important;
        padding:9px 10px !important;

        border-radius:21px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-leadership-cta-signal-v4{
        width:51px;
        height:51px;

        padding:13px;

        border-radius:15px;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-leadership-cta-copy-v4 small{
        font-size:.50rem;
        letter-spacing:.08em;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-leadership-cta-copy-v4 strong{
        font-size:.86rem;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-leadership-cta-arrow-v4{
        width:45px;
        height:45px;

        border-radius:14px;
    }

}

/*
==========================================================================
Small phones
==========================================================================
*/

@media(max-width:420px){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-cta-v4{
        grid-template-columns:
            46px
            minmax(0,1fr)
            42px;

        gap:8px;

        padding:8px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-leadership-cta-signal-v4{
        width:46px;
        height:46px;

        padding:12px;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-leadership-cta-copy-v4 small{
        display:none;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-leadership-cta-copy-v4 strong{
        font-size:.83rem;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-leadership-cta-arrow-v4{
        width:40px;
        height:40px;
    }

}

/*
==========================================================================
Reduced motion
==========================================================================
*/

@media(prefers-reduced-motion:reduce){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-live-ring-v4,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-orbit-light-v4,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-sheen-v4,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-cta-v4,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-cta-v4::before,

    .homepage-premium
    .home-executive-leadership-v4
    .home-leadership-cta-signal-v4 i{
        animation:none !important;
        transition:none !important;
    }

}

/* END HOMEPAGE EXECUTIVE LEADERSHIP V4 */


/* BEGIN EXECUTIVE LEADERSHIP COMPACT FIX V1 */

/*
==========================================================================
Executive Leadership — compact proportion correction
Preserves all existing colours, glitter lines and three-dimensional effects.
==========================================================================
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4{
    height:auto !important;
    max-height:none !important;

    overflow:visible !important;
}

/*
==========================================================================
Desktop — restore the intended horizontal executive-card layout
==========================================================================
*/

@media(min-width:761px){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4{
        display:grid !important;

        grid-template-columns:
            minmax(160px,185px)
            minmax(0,1fr) !important;

        grid-template-rows:
            auto !important;

        align-items:center !important;
        align-content:center !important;

        column-gap:27px !important;
        row-gap:0 !important;

        min-height:318px !important;

        padding:
            25px
            27px !important;

        border-radius:34px !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Keep the animated lines outside normal grid placement
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > .home-executive-live-ring-v4,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > .home-executive-orbit-light-v4{
        position:absolute !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Dr. Mugisha photograph
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-shell-v4{
        grid-column:1 !important;
        grid-row:1 !important;

        align-self:center !important;
        justify-self:center !important;

        width:174px !important;
        min-width:174px !important;
        max-width:174px !important;

        height:242px !important;
        min-height:242px !important;
        max-height:242px !important;

        margin:0 !important;

        border-radius:24px !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Existing Managing Director portrait or portrait frame
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > figure,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="photo"]:not(
        .home-executive-photo-sheen-v4
    ),

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="portrait"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="image"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="visual"]{
        grid-column:1 !important;
        grid-row:1 !important;

        align-self:center !important;
        justify-self:center !important;

        width:184px !important;
        min-width:184px !important;
        max-width:184px !important;

        height:242px !important;
        min-height:242px !important;
        max-height:242px !important;

        margin:0 !important;

        overflow:hidden !important;

        border-radius:24px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > figure img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="photo"] img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="portrait"] img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="image"] img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="visual"] img{
        width:100% !important;
        height:100% !important;

        object-fit:cover !important;
        object-position:center top !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Put the written profile into the wide right column
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > :last-child:not(
        .home-executive-live-ring-v4
    ):not(
        .home-executive-orbit-light-v4
    ){
        grid-column:2 !important;
        grid-row:1 !important;

        align-self:center !important;

        width:100% !important;
        min-width:0 !important;
        max-width:none !important;

        margin:0 !important;
        padding:0 !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Prevent role labels and names from being squeezed
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    :is(
        .role,
        [class*="role"]
    ){
        display:block !important;

        width:100% !important;
        max-width:100% !important;

        margin:
            0
            0
            15px !important;

        padding-left:27px !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;

        font-size:.69rem !important;
        line-height:1.42 !important;
        letter-spacing:.045em !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4 h3{
        width:100% !important;
        max-width:none !important;

        margin:
            0
            0
            14px !important;

        white-space:nowrap !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;

        font-size:
            clamp(
                1.22rem,
                1.62vw,
                1.52rem
            ) !important;

        line-height:1.18 !important;
        letter-spacing:-.035em !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4 p{
        width:100% !important;
        max-width:100% !important;

        margin:
            0
            0
            17px !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;

        font-size:.91rem !important;
        line-height:1.62 !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Restore the strategy and operations labels below the descriptions
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > :last-child
    > :last-child{
        position:static !important;

        display:inline-flex !important;
        align-items:center !important;

        width:auto !important;
        max-width:100% !important;

        margin:
            2px
            0
            0 !important;

        opacity:1 !important;
        visibility:visible !important;

        transform:none !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Keep glitter line aligned with the smaller cards
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-live-ring-v4{
        inset:8px !important;
        border-radius:26px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-orbit-light-v4{
        offset-path:
            inset(
                9px
                round
                25px
            ) !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Bring leadership access panel closer to the cards
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-cta-v4{
        margin-top:33px !important;
    }

}

/*
==========================================================================
Medium desktop
==========================================================================
*/

@media(min-width:761px) and (max-width:1120px){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4{
        grid-template-columns:
            minmax(145px,164px)
            minmax(0,1fr) !important;

        column-gap:21px !important;

        min-height:300px !important;

        padding:
            22px
            23px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-shell-v4,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > figure,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="photo"]:not(
        .home-executive-photo-sheen-v4
    ),

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="portrait"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="image"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="visual"]{
        width:158px !important;
        min-width:158px !important;
        max-width:158px !important;

        height:225px !important;
        min-height:225px !important;
        max-height:225px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4 h3{
        font-size:
            clamp(
                1.10rem,
                1.55vw,
                1.30rem
            ) !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4 p{
        font-size:.84rem !important;
        line-height:1.55 !important;
    }

}

/*
==========================================================================
Mobile — compact, centred and complete
==========================================================================
*/

@media(max-width:760px){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4{
        display:grid !important;

        grid-template-columns:
            minmax(0,1fr) !important;

        grid-template-rows:
            auto
            auto !important;

        align-items:start !important;
        justify-items:stretch !important;

        gap:18px !important;

        min-height:0 !important;
        height:auto !important;

        margin-bottom:19px !important;

        padding:
            20px
            18px
            21px !important;

        border-radius:29px !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Compact portraits
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-shell-v4{
        grid-column:1 !important;
        grid-row:1 !important;

        justify-self:center !important;

        width:156px !important;
        min-width:156px !important;
        max-width:156px !important;

        height:205px !important;
        min-height:205px !important;
        max-height:205px !important;

        margin:
            0
            auto !important;

        border-radius:22px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > figure,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="photo"]:not(
        .home-executive-photo-sheen-v4
    ),

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="portrait"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="image"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="visual"]{
        grid-column:1 !important;
        grid-row:1 !important;

        justify-self:center !important;

        width:190px !important;
        min-width:190px !important;
        max-width:190px !important;

        height:205px !important;
        min-height:205px !important;
        max-height:205px !important;

        margin:
            0
            auto !important;

        overflow:hidden !important;

        border-radius:22px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > figure img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="photo"] img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="portrait"] img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="image"] img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="visual"] img{
        width:100% !important;
        height:100% !important;

        object-fit:cover !important;
        object-position:center top !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Written profile
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > :last-child:not(
        .home-executive-live-ring-v4
    ):not(
        .home-executive-orbit-light-v4
    ){
        grid-column:1 !important;
        grid-row:2 !important;

        width:100% !important;
        min-width:0 !important;

        margin:0 !important;
        padding:0 !important;

        text-align:left !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    :is(
        .role,
        [class*="role"]
    ){
        width:100% !important;
        max-width:100% !important;

        margin:
            0
            0
            12px !important;

        padding-left:24px !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:normal !important;

        font-size:.66rem !important;
        line-height:1.38 !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4 h3{
        width:100% !important;
        max-width:100% !important;

        margin:
            0
            0
            12px !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;

        font-size:1.35rem !important;
        line-height:1.20 !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4 p{
        width:100% !important;
        max-width:100% !important;

        margin:
            0
            0
            15px !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:normal !important;

        font-size:.88rem !important;
        line-height:1.58 !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Ensure final strategy/operations labels remain visible
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > :last-child
    > :last-child{
        position:static !important;

        display:inline-flex !important;
        align-items:center !important;

        width:auto !important;
        max-width:100% !important;

        margin:
            1px
            0
            0 !important;

        opacity:1 !important;
        visibility:visible !important;

        transform:none !important;

        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Keep glitter line fitted to the compact mobile card
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-live-ring-v4{
        inset:7px !important;
        border-radius:22px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-orbit-light-v4{
        offset-path:
            inset(
                8px
                round
                21px
            ) !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-cta-v4{
        margin-top:31px !important;
    }

}

/*
==========================================================================
Small phones
==========================================================================
*/

@media(max-width:420px){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4{
        padding:
            18px
            16px
            19px !important;

        border-radius:27px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-shell-v4{
        width:145px !important;
        min-width:145px !important;
        max-width:145px !important;

        height:190px !important;
        min-height:190px !important;
        max-height:190px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > figure,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="photo"]:not(
        .home-executive-photo-sheen-v4
    ),

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="portrait"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="image"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="visual"]{
        width:176px !important;
        min-width:176px !important;
        max-width:176px !important;

        height:190px !important;
        min-height:190px !important;
        max-height:190px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4 h3{
        font-size:1.25rem !important;
    }

}

/* END EXECUTIVE LEADERSHIP COMPACT FIX V1 */


/* BEGIN EXECUTIVE LEADERSHIP HEIGHT FIX V2 */

/*
==========================================================================
Stop the leadership row from stretching both cards vertically
==========================================================================
*/

.homepage-premium
.home-executive-leadership-v4
:is(
    .home-leadership-grid-v2,
    .home-executive-grid-v2,
    .home-leadership-grid,
    .leadership-grid,
    [class*="leadership"][class*="grid"],
    [class*="executive"][class*="grid"]
){
    align-items:start !important;
    align-content:start !important;

    grid-auto-rows:auto !important;
    grid-template-rows:auto !important;
}

.homepage-premium
.home-executive-leadership-v4
:has(
    > .home-executive-card-v4
){
    align-items:start !important;
    align-content:start !important;

    grid-auto-rows:auto !important;
    grid-template-rows:auto !important;
}

/*
==========================================================================
Allow each executive card to end immediately after its content
==========================================================================
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4{
    align-self:start !important;
    justify-self:stretch !important;

    flex:
        0
        0
        auto !important;

    min-height:0 !important;
    height:auto !important;
    block-size:auto !important;
    max-height:none !important;

    aspect-ratio:auto !important;

    align-content:center !important;

    margin-bottom:20px !important;
}

/*
|--------------------------------------------------------------------------
| Prevent internal wrappers from carrying old fixed heights
|--------------------------------------------------------------------------
*/

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4
> :not(
    .home-executive-live-ring-v4
):not(
    .home-executive-orbit-light-v4
){
    min-height:0 !important;
    max-height:none !important;
}

.homepage-premium
.home-executive-leadership-v4
.home-executive-card-v4
:is(
    [class*="content"],
    [class*="copy"],
    [class*="details"],
    [class*="profile"],
    [class*="body"],
    [class*="information"]
){
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;

    align-self:center !important;
}

/*
==========================================================================
Desktop — compact card height around the photographs and text
==========================================================================
*/

@media(min-width:761px){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4{
        grid-template-columns:
            176px
            minmax(0,1fr) !important;

        grid-template-rows:auto !important;

        min-height:292px !important;
        height:auto !important;

        padding:
            23px
            27px
            25px !important;

        column-gap:27px !important;
        row-gap:0 !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Photographs remain large enough but no longer force excessive height
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-shell-v4{
        width:170px !important;
        min-width:170px !important;
        max-width:170px !important;

        height:235px !important;
        min-height:235px !important;
        max-height:235px !important;

        margin:0 !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > figure,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="photo"]:not(
        .home-executive-photo-sheen-v4
    ),

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="portrait"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="image"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="visual"]{
        width:184px !important;
        min-width:184px !important;
        max-width:184px !important;

        height:235px !important;
        min-height:235px !important;
        max-height:235px !important;

        margin:0 !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Written profile carries no forced minimum height
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > :last-child:not(
        .home-executive-live-ring-v4
    ):not(
        .home-executive-orbit-light-v4
    ){
        min-height:0 !important;
        height:auto !important;
        max-height:none !important;

        align-self:center !important;

        margin:0 !important;
        padding:0 !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Keep final role badges visible inside the compact card
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > :last-child
    > :last-child{
        position:static !important;

        display:inline-flex !important;
        align-items:center !important;

        margin:
            2px
            0
            0 !important;

        opacity:1 !important;
        visibility:visible !important;

        transform:none !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Keep the glitter line fitted to the reduced card
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-live-ring-v4{
        inset:8px !important;
        border-radius:26px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-orbit-light-v4{
        offset-path:
            inset(
                9px
                round
                25px
            ) !important;
    }

}

/*
==========================================================================
Medium desktop
==========================================================================
*/

@media(min-width:761px) and (max-width:1120px){

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4{
        grid-template-columns:
            158px
            minmax(0,1fr) !important;

        min-height:278px !important;

        padding:
            21px
            23px
            23px !important;

        column-gap:21px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-shell-v4{
        width:154px !important;
        min-width:154px !important;
        max-width:154px !important;

        height:218px !important;
        min-height:218px !important;
        max-height:218px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > figure,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="photo"]:not(
        .home-executive-photo-sheen-v4
    ),

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="portrait"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="image"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="visual"]{
        width:164px !important;
        min-width:164px !important;
        max-width:164px !important;

        height:218px !important;
        min-height:218px !important;
        max-height:218px !important;
    }

}

/*
==========================================================================
Mobile — prevent inherited row stretching
==========================================================================
*/

@media(max-width:760px){

    .homepage-premium
    .home-executive-leadership-v4
    :has(
        > .home-executive-card-v4
    ){
        align-items:start !important;
        align-content:start !important;

        grid-auto-rows:auto !important;
        grid-template-rows:auto !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4{
        min-height:0 !important;
        height:auto !important;
        block-size:auto !important;
        max-height:none !important;

        align-self:start !important;
        align-content:start !important;

        padding:
            19px
            18px
            21px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > :last-child:not(
        .home-executive-live-ring-v4
    ):not(
        .home-executive-orbit-light-v4
    ){
        min-height:0 !important;
        height:auto !important;
        max-height:none !important;

        margin:0 !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-card-v4
    > :last-child
    > :last-child{
        position:static !important;

        display:inline-flex !important;

        opacity:1 !important;
        visibility:visible !important;

        transform:none !important;
    }

    /*
    |--------------------------------------------------------------------------
    | Slightly shorter mobile photographs
    |--------------------------------------------------------------------------
    */

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-photo-shell-v4{
        width:150px !important;
        min-width:150px !important;
        max-width:150px !important;

        height:194px !important;
        min-height:194px !important;
        max-height:194px !important;
    }

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > img,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > figure,

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="photo"]:not(
        .home-executive-photo-sheen-v4
    ),

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="portrait"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="image"],

    .homepage-premium
    .home-executive-leadership-v4
    .home-executive-chief-v4
    > [class*="visual"]{
        width:181px !important;
        min-width:181px !important;
        max-width:181px !important;

        height:194px !important;
        min-height:194px !important;
        max-height:194px !important;
    }

}

/* END EXECUTIVE LEADERSHIP HEIGHT FIX V2 */
