:root {
    --cases-ink: #07131d;
    --cases-deep: #071824;
    --cases-navy: #0a2638;
    --cases-blue: #0099c8;
    --cases-cyan: #22c7f2;
    --cases-paper: #f5f7f9;
    --cases-white: #ffffff;
    --cases-muted: #5f7180;
    --cases-line: #d6e0e7;
    --cases-shell: min(1220px, calc(100% - 48px));
}

.cases-page,
.cases-page * {
    box-sizing: border-box;
}

.cases-page {
    overflow: hidden;
    background: var(--cases-paper);
    color: var(--cases-ink);
}

.cases-page a {
    color: inherit;
}

.cases-shell {
    width: var(--cases-shell);
    margin-inline: auto;
}

.cases-hero {
    position: relative;
    min-height: min(860px, calc(100vh - 100px));
    display: grid;
    align-items: center;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 80% 22%, rgba(34, 199, 242, .22), transparent 28%),
        radial-gradient(circle at 14% 84%, rgba(0, 91, 130, .23), transparent 34%),
        linear-gradient(125deg, #03080c 0%, #071722 48%, #0a2a3e 100%);
}

.cases-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(2, 7, 11, .88),
        rgba(2, 7, 11, .44) 56%,
        rgba(2, 7, 11, .12)
    );
    pointer-events: none;
}

.cases-hero__blueprint {
    position: absolute;
    inset: 0;
    opacity: .22;
    background-image:
        linear-gradient(rgba(255, 255, 255, .06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .06) 1px, transparent 1px),
        linear-gradient(45deg, transparent 49.5%, rgba(255,255,255,.035) 50%, transparent 50.5%);
    background-size: 58px 58px, 58px 58px, 116px 116px;
    mask-image: linear-gradient(to bottom, #000, transparent 92%);
}

.cases-hero__layout {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(340px, .62fr);
    gap: 84px;
    align-items: center;
    padding-block: 108px;
}

.cases-eyebrow,
.cases-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--cases-blue);
    font-size: .74rem;
    font-weight: 850;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.cases-hero .cases-eyebrow,
.cases-heading--light .cases-kicker,
.cases-cta .cases-kicker {
    color: var(--cases-cyan);
}

.cases-eyebrow::before,
.cases-kicker::before {
    content: "";
    width: 34px;
    height: 1px;
    background: currentColor;
}

.cases-hero h1 {
    max-width: 980px;
    margin: 22px 0 14px;
    font-size: clamp(4rem, 8.6vw, 8.8rem);
    line-height: .84;
    letter-spacing: -.075em;
}

.cases-hero__lead {
    max-width: 820px;
    margin: 0 0 18px;
    color: #fff;
    font-size: clamp(1.35rem, 2.1vw, 2.05rem);
    line-height: 1.2;
    letter-spacing: -.025em;
}

.cases-hero__text {
    max-width: 820px;
    margin: 0;
    color: rgba(255, 255, 255, .68);
    font-size: clamp(1rem, 1.3vw, 1.2rem);
    line-height: 1.75;
}

.cases-hero__actions,
.cases-feature-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 34px;
}

.cases-button {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 23px;
    border: 1px solid transparent;
    font-weight: 850;
    text-decoration: none;
    transition:
        transform .25s ease,
        background .25s ease,
        color .25s ease,
        border-color .25s ease;
}

.cases-button:hover {
    transform: translateY(-2px);
}

.cases-button--primary {
    background: var(--cases-cyan);
    color: #00131d !important;
}

.cases-button--outline {
    border-color: rgba(255, 255, 255, .3);
    background: rgba(255, 255, 255, .05);
    color: #fff !important;
}

.cases-button--dark {
    background: var(--cases-ink);
    color: #fff !important;
}

.cases-hero__panel {
    position: relative;
    min-height: 500px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 42px;
    border: 1px solid rgba(255, 255, 255, .18);
    background:
        linear-gradient(155deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .02)),
        rgba(2, 14, 23, .34);
    backdrop-filter: blur(15px);
    box-shadow: 0 35px 90px rgba(0, 0, 0, .28);
}

.cases-hero__panel::before {
    content: "";
    position: absolute;
    inset: 20px;
    border: 1px solid rgba(255, 255, 255, .09);
    pointer-events: none;
}

.cases-hero__panel-top,
.cases-hero__panel-copy {
    position: relative;
    z-index: 2;
}

.cases-hero__panel-top {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    color: rgba(255, 255, 255, .6);
    font-size: .69rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.cases-hero__panel-top strong {
    color: var(--cases-cyan);
}

.cases-hero__panel-mark {
    position: absolute;
    right: 28px;
    top: 92px;
    color: transparent;
    font-size: clamp(5.2rem, 9vw, 8rem);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -.07em;
    -webkit-text-stroke: 1px rgba(255, 255, 255, .16);
}

.cases-hero__panel-copy span {
    color: var(--cases-cyan);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.cases-hero__panel-copy p {
    max-width: 380px;
    margin: 16px 0 0;
    color: #fff;
    font-size: clamp(1.5rem, 2.1vw, 2.15rem);
    line-height: 1.08;
    letter-spacing: -.03em;
}

.cases-featured,
.cases-library,
.cases-metrics,
.cases-philosophy {
    padding: 120px 0;
}

.cases-heading {
    max-width: 900px;
    margin-bottom: 46px;
}

.cases-heading h2 {
    margin: 20px 0 0;
    font-size: clamp(2.6rem, 5vw, 5.6rem);
    line-height: .95;
    letter-spacing: -.06em;
    text-wrap: balance;
}

.cases-heading--light {
    color: #fff;
}

.cases-feature-card {
    display: grid;
    grid-template-columns: minmax(340px, .78fr) minmax(0, 1.22fr);
    min-height: 590px;
    background: #fff;
    border: 1px solid var(--cases-line);
    box-shadow: 0 28px 80px rgba(15, 41, 61, .1);
}

.cases-feature-card__media,
.cases-card__media {
    position: relative;
    display: block;
    overflow: hidden;
    background: #071724;
}

.cases-feature-card__media img,
.cases-card__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .5s ease;
}

.cases-feature-card:hover img,
.cases-card:hover img {
    transform: scale(1.035);
}

.cases-media-placeholder {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 38px;
    color: #fff;
    background:
        radial-gradient(circle at 72% 18%, rgba(34, 199, 242, .48), transparent 24%),
        linear-gradient(155deg, #050e15, #0b2b3f);
}

.cases-media-placeholder::before,
.cases-media-placeholder::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(255, 255, 255, .14);
}

.cases-media-placeholder::before {
    inset: 24px;
}

.cases-media-placeholder::after {
    width: 190px;
    aspect-ratio: 1;
    top: 54px;
    right: -52px;
    border-radius: 50%;
}

.cases-media-placeholder i,
.cases-media-placeholder b,
.cases-media-placeholder em {
    position: relative;
    z-index: 2;
    font-style: normal;
}

.cases-media-placeholder i {
    margin-bottom: auto;
    color: var(--cases-cyan);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .18em;
}

.cases-media-placeholder b {
    max-width: 320px;
    font-size: clamp(2.4rem, 4vw, 4.4rem);
    line-height: .84;
    letter-spacing: -.055em;
}

.cases-media-placeholder em {
    margin-top: 18px;
    color: rgba(255, 255, 255, .54);
    font-size: .66rem;
    font-weight: 750;
    letter-spacing: .14em;
}

.cases-feature-card__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(38px, 6vw, 78px);
}

.cases-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    color: #6b7b88;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.cases-meta span:first-child {
    color: var(--cases-blue);
}

.cases-feature-card h3 {
    margin: 25px 0 20px;
    font-size: clamp(2.35rem, 4.6vw, 5.1rem);
    line-height: .95;
    letter-spacing: -.06em;
}

.cases-feature-card h3 a,
.cases-card h3 a {
    text-decoration: none;
}

.cases-feature-card p {
    max-width: 720px;
    margin: 0;
    color: var(--cases-muted);
    font-size: 1.08rem;
    line-height: 1.78;
}

.cases-text-link {
    display: inline-flex;
    align-items: center;
    align-self: center;
    gap: 8px;
    color: var(--cases-blue) !important;
    font-weight: 850;
    text-decoration: none;
}

.cases-sectors {
    padding: 115px 0;
    background: var(--cases-deep);
}

.cases-sectors__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-top: 1px solid rgba(255, 255, 255, .14);
    border-left: 1px solid rgba(255, 255, 255, .14);
}

.cases-sectors__grid article {
    min-height: 265px;
    padding: 32px;
    border-right: 1px solid rgba(255, 255, 255, .14);
    border-bottom: 1px solid rgba(255, 255, 255, .14);
    color: #fff;
    transition: background .3s ease, transform .3s ease;
}

.cases-sectors__grid article:hover {
    background: rgba(34, 199, 242, .09);
    transform: translateY(-4px);
}

.cases-sectors__grid article > span {
    color: var(--cases-cyan);
    font-size: .72rem;
    letter-spacing: .15em;
}

.cases-sectors__grid h3 {
    margin: 40px 0 14px;
    font-size: 1.35rem;
}

.cases-sectors__grid p {
    margin: 0;
    color: rgba(255, 255, 255, .6);
    line-height: 1.62;
}

.cases-library__top {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 45px;
    margin-bottom: 46px;
}

.cases-library__top .cases-heading {
    margin-bottom: 0;
}

.cases-filter {
    width: min(100%, 610px);
    display: grid;
    grid-template-columns: minmax(190px, 1fr) minmax(170px, .75fr) auto;
    gap: 8px;
}

.cases-filter input,
.cases-filter select,
.cases-filter button {
    min-height: 51px;
    border: 1px solid #cbd7df;
    background: #fff;
    padding: 0 15px;
    font: inherit;
}

.cases-filter input,
.cases-filter select {
    width: 100%;
}

.cases-filter button {
    border-color: var(--cases-cyan);
    background: var(--cases-cyan);
    color: #00131d;
    font-weight: 900;
    cursor: pointer;
}

.cases-library__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
}

.cases-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #fff;
    border: 1px solid var(--cases-line);
    transition: transform .3s ease, box-shadow .3s ease;
}

.cases-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 28px 65px rgba(12, 39, 62, .13);
}

.cases-card__media {
    aspect-ratio: 4 / 3;
}

.cases-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 27px;
}

.cases-card h3 {
    margin: 18px 0 13px;
    font-size: 1.46rem;
    line-height: 1.12;
    letter-spacing: -.03em;
}

.cases-card p {
    margin: 0;
    color: #607282;
    line-height: 1.66;
}

.cases-card__signals {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 22px;
}

.cases-card__signals span {
    padding: 7px 9px;
    border: 1px solid #d4e0e7;
    color: #597080;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.cases-card footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    margin-top: auto;
    padding-top: 27px;
    color: #6b7c89;
    font-size: .76rem;
    font-weight: 750;
}

.cases-card footer a {
    color: var(--cases-blue);
    font-weight: 800;
    text-decoration: none;
}

.cases-pagination {
    margin-top: 50px;
}

.cases-pagination ul {
    display: flex;
    justify-content: center;
    gap: 7px;
    padding: 0;
    list-style: none;
}

.cases-pagination .page-numbers {
    min-width: 42px;
    min-height: 42px;
    display: inline-grid;
    place-items: center;
    padding: 0 12px;
    border: 1px solid #c9d7e1;
    background: #fff;
    text-decoration: none;
}

.cases-pagination .current {
    border-color: var(--cases-cyan);
    background: var(--cases-cyan);
    color: #00131d;
}

.cases-empty {
    padding: 80px 30px;
    text-align: center;
    background: #fff;
    border: 1px solid var(--cases-line);
}

.cases-empty span {
    color: var(--cases-blue);
    font-size: .75rem;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.cases-empty h3 {
    max-width: 760px;
    margin: 20px auto 14px;
    font-size: clamp(2rem, 4vw, 3.7rem);
    line-height: 1;
    letter-spacing: -.045em;
}

.cases-empty p {
    max-width: 700px;
    margin: 0 auto 28px;
    color: #607282;
    line-height: 1.7;
}

.cases-methodology {
    padding: 115px 0;
    background: linear-gradient(125deg, #050d14, #09283a);
}

.cases-methodology__list {
    border-top: 1px solid rgba(255, 255, 255, .16);
}

.cases-methodology__list article {
    display: grid;
    grid-template-columns: 90px .72fr 1fr;
    gap: 30px;
    align-items: center;
    min-height: 145px;
    padding: 28px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .16);
    color: #fff;
}

.cases-methodology__list article > span {
    color: var(--cases-cyan);
    font-size: .75rem;
    font-weight: 850;
    letter-spacing: .15em;
}

.cases-methodology__list h3 {
    margin: 0;
    font-size: clamp(1.5rem, 2.4vw, 2.4rem);
    letter-spacing: -.035em;
}

.cases-methodology__list p {
    margin: 0;
    color: rgba(255, 255, 255, .58);
    line-height: 1.65;
}

.cases-metrics {
    background: #fff;
}

.cases-metrics__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-top: 1px solid var(--cases-line);
    border-left: 1px solid var(--cases-line);
}

.cases-metrics__grid article {
    min-height: 210px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 30px;
    border-right: 1px solid var(--cases-line);
    border-bottom: 1px solid var(--cases-line);
}

.cases-metrics__grid strong {
    color: var(--cases-blue);
    font-size: clamp(3rem, 5vw, 5.3rem);
    line-height: 1;
    letter-spacing: -.06em;
}

.cases-metrics__grid span {
    max-width: 220px;
    color: #637584;
    line-height: 1.5;
}

.cases-metrics__indicators {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 28px;
}

.cases-metrics__indicators span {
    padding: 10px 13px;
    border: 1px solid var(--cases-line);
    background: var(--cases-paper);
    color: #5d7180;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.cases-philosophy {
    background: #e9f0f4;
}

.cases-philosophy__layout {
    display: grid;
    grid-template-columns: .38fr 1fr;
    gap: 70px;
    align-items: start;
}

.cases-philosophy__mark {
    color: transparent;
    font-size: clamp(4.5rem, 10vw, 10rem);
    font-weight: 900;
    line-height: .78;
    letter-spacing: -.08em;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    -webkit-text-stroke: 1px rgba(0, 153, 200, .28);
}

.cases-philosophy__layout h2,
.cases-cta h2 {
    margin: 22px 0 24px;
    font-size: clamp(2.7rem, 5vw, 5.5rem);
    line-height: .95;
    letter-spacing: -.06em;
}

.cases-philosophy__layout p,
.cases-cta p {
    max-width: 900px;
    color: #536777;
    font-size: 1.08rem;
    line-height: 1.78;
}

.cases-cta {
    padding: 110px 0;
    color: #fff;
    background:
        radial-gradient(circle at 80% 30%, rgba(34, 199, 242, .18), transparent 25%),
        var(--cases-deep);
}

.cases-cta__layout {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 70px;
    align-items: center;
}

.cases-cta p {
    color: rgba(255,255,255,.62);
}

.cases-cta__action {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

[data-cases-reveal] {
    opacity: 0;
    transform: translateY(26px);
    transition:
        opacity .75s ease,
        transform .75s cubic-bezier(.2, .7, .2, 1);
}

[data-cases-reveal].is-visible {
    opacity: 1;
    transform: none;
}

@media (max-width: 1080px) {
    .cases-hero__layout,
    .cases-feature-card,
    .cases-philosophy__layout,
    .cases-cta__layout {
        grid-template-columns: 1fr;
    }

    .cases-hero__panel {
        max-width: 720px;
    }

    .cases-sectors__grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .cases-library__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .cases-library__top {
        align-items: stretch;
        flex-direction: column;
    }

    .cases-filter {
        width: 100%;
    }

    .cases-feature-card__media {
        min-height: 580px;
    }

    .cases-methodology__list article {
        grid-template-columns: 70px 1fr;
    }

    .cases-methodology__list p {
        grid-column: 2;
    }

    .cases-metrics__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .cases-philosophy__mark {
        writing-mode: initial;
        transform: none;
    }

    .cases-cta__action {
        justify-content: flex-start;
    }
}

@media (max-width: 720px) {
    :root {
        --cases-shell: min(100% - 30px, 1220px);
    }

    .cases-hero {
        min-height: auto;
    }

    .cases-hero__layout {
        padding-block: 82px;
    }

    .cases-hero h1 {
        font-size: clamp(3.2rem, 16vw, 5.5rem);
    }

    .cases-hero__panel {
        min-height: 420px;
        padding: 30px;
    }

    .cases-featured,
    .cases-library,
    .cases-metrics,
    .cases-philosophy,
    .cases-sectors,
    .cases-methodology,
    .cases-cta {
        padding: 78px 0;
    }

    .cases-sectors__grid,
    .cases-library__grid,
    .cases-metrics__grid {
        grid-template-columns: 1fr;
    }

    .cases-filter {
        grid-template-columns: 1fr;
    }

    .cases-feature-card__media {
        min-height: 470px;
    }

    .cases-feature-card__content {
        padding: 32px 24px;
    }

    .cases-methodology__list article {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .cases-methodology__list p {
        grid-column: 1;
    }

    .cases-philosophy__layout {
        gap: 34px;
    }

    .cases-empty {
        padding: 50px 22px;
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-cases-reveal] {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .cases-card,
    .cases-button,
    .cases-feature-card img,
    .cases-card img {
        transition: none;
    }
}

/* AW4_016_12_CASES_CONTROLLED_ACCESS_REV04_START */

.cases-page{
    --cases-access:#4fdce5;
    --cases-access-dark:#062331;
    --cases-access-line:rgba(70,207,224,.22);
}

.cases-button{
    border-radius:999px;
}

.cases-button--controlled{
    color:#001721 !important;
    background:
        linear-gradient(
            135deg,
            #68e5e7,
            #31afe1
        );
    box-shadow:
        0 15px 32px rgba(43,180,220,.2);
}

.cases-hero__panel{
    position:relative;
    overflow:hidden;
    border-radius:34px;
}

.cases-hero__panel::after{
    content:"";
    position:absolute;
    top:-45%;
    left:-55%;
    width:42%;
    height:195%;
    opacity:.42;
    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(103,227,238,.15),
            transparent
        );
    transform:skewX(-16deg);
    animation:casesControlledSweep 7.5s ease-in-out infinite;
}

.cases-hero__panel-mark{
    position:relative;
    z-index:2;
    inset:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:150px;
    margin-block:34px;
    color:transparent;
    font-size:0;
    -webkit-text-stroke:0;
}

.cases-hero__panel-mark img{
    display:block;
    width:min(74%,260px);
    max-width:260px;
    height:auto;
    max-height:70px;
    object-fit:contain;
    filter:
        drop-shadow(0 14px 27px rgba(0,0,0,.3))
        drop-shadow(0 0 19px rgba(66,207,224,.13));
    animation:casesControlledLogo 5.2s ease-in-out infinite;
}

.cases-feature-card,
.cases-card,
.cases-security-notice,
.cases-access-policy,
.cases-empty{
    overflow:hidden;
    border-radius:30px;
}

.cases-feature-card,
.cases-card{
    box-shadow:
        0 34px 84px rgba(7,38,57,.14),
        0 8px 24px rgba(7,38,57,.06);
}

.cases-feature-card__media,
.cases-card__media{
    cursor:default;
}

.cases-media-placeholder i{
    display:block;
    width:min(48%,230px);
    max-width:230px;
    min-height:55px;
    margin-bottom:auto;
}

.cases-media-placeholder i img{
    display:block;
    width:100%;
    height:auto;
    max-height:55px;
    object-fit:contain;
    object-position:left center;
    filter:
        drop-shadow(0 13px 27px rgba(0,0,0,.32));
}

.cases-access-badge{
    display:inline-flex;
    align-items:center;
    align-self:flex-start;
    min-height:33px;
    margin-bottom:20px;
    padding:0 12px;
    border:1px solid rgba(0,137,183,.17);
    border-radius:999px;
    color:#007ba5;
    background:#edf8fb;
    font-size:.65rem;
    font-weight:900;
    letter-spacing:.095em;
    text-transform:uppercase;
}

.cases-library__intro{
    max-width:760px;
    margin:21px 0 0;
    color:#5b7282;
    font-size:1.03rem;
    line-height:1.72;
}

.cases-security-notice{
    position:relative;
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    gap:32px;
    margin:0 0 24px;
    padding:clamp(28px,4.5vw,48px);
    border:1px solid rgba(83,216,229,.19);
    color:#fff;
    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(55,196,220,.2),
            transparent 26%
        ),
        linear-gradient(
            138deg,
            #04131d,
            #092d40
        );
    box-shadow:
        0 35px 83px rgba(6,34,52,.18),
        inset 0 1px 0 rgba(255,255,255,.035);
}

.cases-security-notice::before{
    content:"";
    position:absolute;
    inset:18px;
    border:1px solid rgba(97,220,232,.08);
    border-radius:22px;
    pointer-events:none;
}

.cases-security-notice__identity{
    position:relative;
    z-index:2;
    display:grid;
    place-items:center;
    width:96px;
    height:96px;
    border:1px solid rgba(82,218,230,.2);
    border-radius:28px;
    color:var(--cases-access);
    background:rgba(13,65,82,.54);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.035),
        0 18px 32px rgba(0,0,0,.18);
}

.cases-security-notice__identity span{
    font-size:1.5rem;
    font-weight:900;
    letter-spacing:.04em;
}

.cases-security-notice__content{
    position:relative;
    z-index:2;
}

.cases-security-notice__eyebrow{
    color:var(--cases-access);
    font-size:.69rem;
    font-weight:900;
    letter-spacing:.15em;
    text-transform:uppercase;
}

.cases-security-notice h3{
    max-width:920px;
    margin:16px 0 19px;
    color:#fff;
    font-size:clamp(1.8rem,3vw,3.15rem);
    line-height:1.02;
    letter-spacing:-.045em;
}

.cases-security-notice p{
    max-width:970px;
    margin:0 0 14px;
    color:rgba(231,247,250,.66);
    line-height:1.72;
}

.cases-security-notice .cases-button{
    margin-top:15px;
}

.cases-access-policy{
    display:grid;
    grid-template-columns:180px minmax(0,1fr);
    gap:26px;
    align-items:start;
    margin-bottom:38px;
    padding:25px 28px;
    border:1px solid rgba(8,91,124,.11);
    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.98),
            rgba(237,247,250,.95)
        );
    box-shadow:0 17px 40px rgba(7,39,58,.07);
}

.cases-access-policy strong{
    color:#007da8;
    font-size:.71rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.cases-access-policy p{
    margin:0 0 10px;
    color:#586f80;
    line-height:1.68;
}

.cases-access-policy p:last-child{
    margin-bottom:0;
}

.cases-access-level{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-bottom:16px;
}

.cases-access-level span,
.cases-access-level strong{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    font-size:.59rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.cases-access-level span{
    color:#506c7d;
    border:1px solid rgba(7,84,115,.1);
    background:#edf3f6;
}

.cases-access-level strong{
    color:#007aa4;
    border:1px solid rgba(0,139,187,.15);
    background:#e9f8fb;
}

.cases-card__request{
    display:inline-flex !important;
    align-items:center;
    gap:8px;
    color:#007da8 !important;
    font-weight:900;
    text-decoration:none;
}

.cases-card__request > span{
    display:inline-grid;
    place-items:center;
    width:27px;
    height:27px;
    border:1px solid rgba(0,125,168,.16);
    border-radius:50%;
    transition:
        color .25s ease,
        background .25s ease,
        transform .25s ease;
}

.cases-card__request:hover > span{
    color:#fff;
    background:#007da8;
    transform:translate(2px,-2px);
}

.cases-filter{
    padding:10px;
    border:1px solid rgba(7,91,124,.11);
    border-radius:22px;
    background:rgba(255,255,255,.9);
    box-shadow:
        0 18px 45px rgba(6,37,57,.08),
        inset 0 1px 0 rgba(255,255,255,.85);
}

.cases-filter input,
.cases-filter select,
.cases-filter button{
    border-radius:14px;
}

.cases-filter button{
    border:0;
    background:
        linear-gradient(
            135deg,
            #63e1e4,
            #31afe0
        );
}

.cases-sectors__grid{
    gap:20px;
    border:0;
}

.cases-sectors__grid article,
.cases-methodology__list article{
    border:1px solid rgba(113,222,234,.14);
    border-radius:26px;
    background:
        linear-gradient(
            145deg,
            rgba(18,61,80,.66),
            rgba(4,23,34,.86)
        );
    box-shadow:
        0 24px 52px rgba(0,0,0,.19),
        inset 0 1px 0 rgba(255,255,255,.025);
}

.cases-methodology__list{
    gap:18px;
    border:0;
}

.cases-philosophy__layout{
    grid-template-columns:minmax(250px,.38fr) minmax(0,1fr);
    align-items:stretch;
}

.cases-philosophy__mark{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:570px;
    padding:40px 26px;
    overflow:hidden;
    border-radius:32px;
    color:transparent;
    font-size:0;
    background:
        radial-gradient(
            circle at 50% 24%,
            rgba(50,186,216,.2),
            transparent 39%
        ),
        linear-gradient(
            180deg,
            #071f2d,
            #0a394e
        );
}

.cases-philosophy__mark::before{
    content:"";
    position:absolute;
    inset:21px;
    border:1px solid rgba(91,216,229,.1);
    border-radius:22px;
}

.cases-philosophy__mark img{
    position:relative;
    z-index:2;
    display:block;
    width:min(83%,235px);
    max-width:235px;
    height:auto;
    max-height:76px;
    object-fit:contain;
    filter:
        drop-shadow(0 14px 25px rgba(0,0,0,.28));
}

.cases-philosophy__mark span{
    position:relative;
    z-index:2;
    margin-top:36px;
    color:var(--cases-access);
    font-size:.61rem;
    font-weight:900;
    letter-spacing:.16em;
    white-space:nowrap;
}

.cases-philosophy__governance{
    margin-top:24px !important;
    padding:20px 22px;
    border-left:3px solid #25b9dd;
    color:#344f61 !important;
    background:#edf7fa;
}

.cases-cta__action{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:12px;
}

@media (max-width:1100px){

    .cases-security-notice{
        grid-template-columns:92px minmax(0,1fr);
    }

    .cases-security-notice__identity{
        width:82px;
        height:82px;
    }

    .cases-philosophy__layout{
        grid-template-columns:1fr;
    }

    .cases-philosophy__mark{
        min-height:290px;
    }
}

@media (max-width:760px){

    .cases-security-notice{
        grid-template-columns:1fr;
        padding:28px 23px;
    }

    .cases-security-notice__identity{
        width:70px;
        height:70px;
        border-radius:21px;
    }

    .cases-access-policy{
        grid-template-columns:1fr;
    }

    .cases-cta__action{
        align-items:stretch;
        justify-content:flex-start;
        flex-direction:column;
    }

    .cases-cta__action .cases-button{
        width:100%;
    }
}

@media (max-width:430px){

    .cases-security-notice,
    .cases-access-policy,
    .cases-feature-card,
    .cases-card{
        border-radius:23px;
    }

    .cases-philosophy__mark span{
        font-size:.53rem;
        letter-spacing:.12em;
    }
}

@media (prefers-reduced-motion:reduce){

    .cases-hero__panel::after,
    .cases-hero__panel-mark img{
        animation:none !important;
    }
}

@keyframes casesControlledSweep{

    0%,
    20%{
        left:-55%;
    }

    66%,
    100%{
        left:135%;
    }
}

@keyframes casesControlledLogo{

    0%,
    100%{
        opacity:.9;
        transform:scale(.98);
    }

    50%{
        opacity:1;
        transform:scale(1.025);
    }
}

/* AW4_016_12_CASES_CONTROLLED_ACCESS_REV04_END */
