html {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    scroll-behavior: smooth
}

html,
body {
    overflow-x: clip;
}

*,
:after,
:before {
    -webkit-box-sizing: inherit;
    -moz-box-sizing: inherit;
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    scroll-behavior: smooth;
}

a,
aside,
body,
del,
div,
dl,
footer,
header,
li,
main,
ol,
p,
section,
span,
ul {
    padding: 0;
    margin: 0;
    text-shadow: none;
    outline: 0;
    box-shadow: none;
    text-decoration: none;
    list-style: none;
}

b,
strong {
    font-weight: 700;
}

body {
    padding: 0;
    margin: 0;
    font-family: "Google Sans", sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 28px;
    color: #000000;
    overflow-x: clip;
}

p {
    margin-bottom: 30px;

    &:last-child {
        margin-bottom: 0;
    }
}

a {
    color: #000000;
    -webkit-transition: .5s all ease;
    -ms-transition: .5s all ease;
    transition: .5s all ease;
}

a:hover,
a:focus,
a:active {
    color: #204CA0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
    font-family: "Google Sans", sans-serif;
}

img {
    max-width: 100%;
    max-height: auto;
    object-fit: cover;
}

.mtb-120 {
    margin-block: 120px;
}

.ptb-80 {
    padding-block: 80px;
}

.mt-50 {
    margin-top: 50px;
}

.mt-80 {
    margin-top: 80px;
}

.mt-30 {
    margin-top: 30px;
}


header {
    padding: 10px 0;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #FFFFFF;
    z-index: 99;
    -webkit-transition: .5s all ease;
    -ms-transition: .5s all ease;
    transition: .5s all ease;
}

header.sticky {
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}

header .navbar,
header .navbar-brand {
    padding: 0;
    margin: 0;
}

header .navbar-nav {
    margin-left: 90px;
    width: 100%;
}

header .menu-item {
    display: flex;
}

header .menu-item+.menu-item {
    margin-left: 30px;
}

header .menu-item:not(:last-child)>a {
    font-weight: 400;
    font-size: 15px;
    line-height: 19px;
    color: #000000;
}

header .menu-item:not(:last-child) a:hover,
header .menu-item:not(:last-child) a:focus,
header .menu-item:not(:last-child) a:active,
header .menu-item:not(:last-child).current-menu-item>a {
    color: #204CA0;
}

header .menu-item:not(:last-child).current-menu-item>a {
    font-weight: 600;
}

header .menu-item:last-child {
    margin-left: auto;
}

header .menu-item:last-child>a {
    font-weight: 700;
    font-size: 15px;
    line-height: 21px;
    color: #FFFFFF;
    background: #204CA0;
    border-radius: 10px;
    padding: 10px 22px;
    transition: all 0.4s ease-in-out;

    &:hover,
    &:active,
    &:focus {
        background: #FEB82F;
        color: #383336;
    }
}

header .menu-item.menu-item-has-children>a {
    display: flex;
    align-items: center;
    gap: 5px;
}

header .menu-item.menu-item-has-children>a::after {
    content: "";
    display: block;
    height: 10px;
    width: 10px;
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.00002 6.875C4.9201 6.875 4.8401 6.84445 4.77908 6.78344L1.65408 3.65844C1.53197 3.53633 1.53197 3.33859 1.65408 3.21656C1.77619 3.09453 1.97393 3.09445 2.09596 3.21656L5.00002 6.12063L7.90408 3.21656C8.02619 3.09445 8.22393 3.09445 8.34596 3.21656C8.46799 3.33867 8.46807 3.53641 8.34596 3.65844L5.22096 6.78344C5.15994 6.84445 5.07994 6.875 5.00002 6.875Z' fill='black'/%3E%3C/svg%3E%0A");
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
}

header .menu-item.menu-item-has-children {
    position: static;
}

header .menu-item.menu-item-has-children:has(.megamenupanel-main-small) {
    position: relative;
}

.megamenupanel-main {
    position: absolute;
    top: 30px;
    left: 12px;
    right: 12px;
    transition: all .35s ease-in-out;
    transform: rotateX(90deg);
    transform-origin: top;
    opacity: 0;
    padding-top: 40px;
    display: none;
}

.megamenupanel-main-small.megamenupanel-main {
    width: 450px;
    left: 50%;
    transform: translateX(-50%);
    right: auto;
    top: 100%;
}

header .menu-item.menu-item-has-children:hover .megamenupanel-main {
    display: block;
    opacity: 1;
    transform: rotateX(0);
    transform-origin: top;
}

header .menu-item.menu-item-has-children:hover .megamenupanel-main.megamenupanel-main-small {
    transform: rotateX(0) translateX(-50%);
}

.megamenu-panel {
    background-color: #FFF;
    border-radius: 15px;
    border: 1px solid #E4EAF7;
    display: grid;
    grid-template-columns: 45% 1fr;
    box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
}


.megamenupanel-main-small.megamenupanel-main .megamenu-panel {
    grid-template-columns: 1fr;
}


.megamenu-panel .megamenu-left,
.megamenu-panel .megamenu-right {
    padding: 20px;
}

.megamenu-panel .megamenu-left {
    border-right: 1px solid #C9D8FF;
}

.megamenupanel-main-small.megamenupanel-main .megamenu-panel .megamenu-left {
    border-right: 0;
}

.megamenu-nav .megamenu-item+.megamenu-item {
    margin-top: 15px;
}

.megamenu-nav .megamenu-item>a,
.megamenu-tabs .megamenu-item {
    display: flex;
    gap: 15px;
    padding: 12px;
    background-color: #F7F9FE;
    border-radius: 8px;
    border: 1px solid #E4EAF7;
    transition: all 0.35s ease-in-out;
    cursor: pointer;

    .megamenu-icon {
        min-width: 50px;
        height: 50px;
        background-color: #204CA0;
        display: grid;
        place-items: center;
        border-radius: 8px;

        img {
            max-width: 24px;
            max-height: 24px;
        }
    }

    &:hover,
    &:active,
    &:focus {
        transform: translateY(-2px);
        border-color: #C9D8FF;
        box-shadow: 0px 10px 15px -15px rgba(32, 76, 160, 0.7);

        .megamenu-arrow {
            opacity: 1;
        }

        .megamenu-desc p b,
        .megamenu-desc p strong {
            color: #204CA0;
        }
    }
}

.megamenu-tabs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0px 15px;
}

.megamenu-tabs .megamenu-item:nth-child(1) {
    grid-column: 3 span;
}

.megamenu-tabs .megamenu-item+.megamenu-item {
    display: block;
    padding: 0;
    background-color: transparent;
    border-radius: 8px;
    border: 0;
    transition: all 0.35s ease-in-out;
    cursor: pointer;

    a {
        display: grid;
        gap: 10px;
        height: 100%;

        .megamenu-icon {
            max-width: 50px;
        }

        .megamenu-arrow {
            margin-left: 0 !important;
            opacity: 1 !important;
        }
    }
}

.megamenu-item a .megamenu-desc p,
.megamenu-tabs .megamenu-item .megamenu-desc p {
    font-weight: 400;
    font-size: 14px;
    line-height: 23px;
    color: rgb(90, 100, 140);
    margin-bottom: 0;
    max-width: 280px;
    transition: all 0.35s ease-in-out;

    b,
    strong {
        display: block;
        font-size: 18px;
        line-height: 24px;
        font-weight: 700;
        color: #0A0F26;
        margin-bottom: 2px;
        transition: all 0.35s ease-in-out;
    }
}

.megamenu-tabs .megamenu-item .megamenu-desc p {
    max-width: 100%;
}

.megamenu-tabs .megamenu-item .megamenu-desc a {
    display: inline-block;
    font-weight: 700;
    font-size: 14px;
    line-height: 18px;
    text-decoration-line: underline;
    color: rgb(32, 76, 160);
    margin-top: 10px;

    &:hover,
    &:active,
    &:focus {
        color: #FEB82F;
    }
}

.megamenu-arrow {
    margin-left: auto;
    display: flex;
    align-items: center;
    opacity: 0;
    transition: all 0.35s ease-in-out;

    img {
        max-width: 25px;
    }
}

.megamenur-head {
    margin-bottom: 20px;
}

.megamenur-head h3 {
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    color: #0A0F26;
    margin-bottom: 0;
}

.megamenurnav-main .megamenur-nav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 30px;
}

.megamenur-nav .megamenur-item {
    display: flex;
}

.megamenur-nav .megamenur-item a {
    font-weight: 400;
    font-size: 17px;
    line-height: 24px;
    color: #4A5578;
    display: flex;
    align-items: center;
    gap: 10px;

    &::before {
        content: "";
        display: block;
        height: 18px;
        width: 18px;
        background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99609 10L10.0672 2.92893L17.1382 10L10.0672 17.0711L2.99609 10Z' fill='%23C9D8FF'/%3E%3C/svg%3E%0A");
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: center;
        transition: all 0.35s ease-in-out;
    }

    &:hover,
    &:active,
    &:focus {
        &::before {
            background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99609 10L10.0672 2.92893L17.1382 10L10.0672 17.0711L2.99609 10Z' fill='%23204CA0'/%3E%3C/svg%3E%0A");
        }
    }
}

.megamenutb-content,
.megamenupanel-back {
    display: none;
}

/* HOME Banner  */

.header-space {
    margin-top: 61px;
}

.ptmban-box {
    min-height: 700px;
    display: flex;
    align-items: end;
    padding-bottom: 120px;
}

.ptmbanimg-inner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }
}

.pttitle-design h5 {
    font-weight: 400;
    font-size: 13px;
    line-height: 16px;
    letter-spacing: 1.82px;
    color: #204CA0;
    padding: 10px 10px 10px 16px;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 8px;
    background: #E9EFFF;
    border: 1px solid #C9D8FF;
    border-radius: 50px;
    width: fit-content;
    text-transform: uppercase;

    &::before {
        content: "";
        display: block;
        background: #22B36B;
        opacity: 0.27;
        border-radius: 3.5px;
        height: 7px;
        width: 7px;
    }
}

.pttitle-design-center {
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
}

.ptmban-box .pttitle-design h5 {
    margin-bottom: 30px;
}


.ptmhm-desc {
    position: relative;
    z-index: 1;
}

.ptmhm-desc h1 {
    font-weight: 500;
    font-size: 50px;
    line-height: 63px;
    color: #FFFFFF;
    margin-bottom: 30px;

    b,
    strong {
        font-weight: 700;
        font-size: 60px;
        line-height: 75px;
    }
}

.ptmhm-desc p {
    font-weight: 400;
    font-size: 20px;
    line-height: 25px;
    color: #FFFFFF;
    margin-bottom: 0;
}

.ptmbtn-inner {
    display: flex;
    gap: 15px;
}

.ptmsec-btn {
    font-weight: 700;
    font-size: 20px;
    line-height: 25px;
    color: #383336;
    background: #FEB82F;
    box-shadow: 0px 14px 30px -12px rgba(26, 77, 214, 0.55);
    border-radius: 12px;
    padding: 12px 44px;
    display: block;
    width: fit-content;
    transition: all 0.4s ease-in-out;

    &:hover,
    &:active,
    &:focus {
        background: #204CA0;
        color: #FFFFFF;
    }
}

.ptmhm-client {
    padding-block: 40px;
    border: 1px solid #EEF1F8;
}

.pttitle h4 {
    font-weight: 400;
    font-size: 13px;
    line-height: 16px;
    letter-spacing: 2.08px;
    color: #204CA0;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.ptmhm-client .pttitle h4 {
    font-weight: 700;
    color: #8A93B2;
    letter-spacing: 1.82px;
    margin-bottom: 0;
}

.ptmctmarq-main {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: flex-start;
    overflow: hidden;
}

.ptmctmarq-track {
    display: flex;
    width: max-content;
    transform: translate3d(0, 0, 0);
    will-change: transform;
}

.ptmctmarq-group {
    display: flex;
    align-items: center;
    gap: 80px;
    padding-right: 80px;
    flex-shrink: 0;
}

.ptmctmarq-box img {
    max-height: 32px;
    width: 110px;
    object-fit: contain;
}

.ptpert-logo .ptmctmarq-box img {
    max-height: 52px;
}

/* GLOBAL Awards Announcement Ticker */

.ptmannounce-bar {
    background: #204CA0;
    overflow: hidden;
    padding: 9px 0;
    display: none;
}

.ptmannounce-bar .ptmctmarq-group {
    gap: 50px;
    padding-right: 50px;
}

.ptmannounce-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 500;
    font-size: 13px;
    color: #FFFFFF;
    text-decoration: none;
    white-space: nowrap;
    transition: color 0.3s ease-in-out;

    &::before {
        content: "";
        display: block;
        width: 5px;
        height: 5px;
        border-radius: 100%;
        background: #FEB82F;
        flex-shrink: 0;
    }

    &:hover {
        color: #8FB2FF;
    }
}

/* GLOBAL GDPR Cookie Consent */

.cookie-consent {
    display: none !important;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    background: #0A0F26;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 18px 0;
    transform: translateY(110%);
    transition: transform 0.4s ease-in-out;
}

.cookie-consent.is-visible {
    transform: translateY(0);
}

.cookie-consent-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

.cookie-consent-bar p {
    font-weight: 400;
    font-size: 14px;
    color: #B7C0DD;
    margin-bottom: 0;
    flex: 1;
    min-width: 240px;
}

.cookie-consent-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.cookie-consent-settings-btn {
    font-weight: 600;
    font-size: 14px;
    color: #FFFFFF;
    background: none;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 10px;
    padding: 10px 18px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;

    &:hover {
        border-color: #8FB2FF;
        color: #8FB2FF;
    }
}

.cookie-consent-accept-btn {
    font-weight: 700;
    font-size: 14px;
    color: #FFFFFF;
    background: #204CA0;
    border: none;
    border-radius: 10px;
    padding: 10px 20px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;

    &:hover {
        background: #FEB82F;
        color: #383336;
    }
}

.cookie-consent-settings {
    display: none;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.cookie-consent-settings.is-open {
    display: block;
}

.cookie-consent-toggle-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 10px 0;
}

.cookie-consent-toggle-row span {
    font-weight: 600;
    font-size: 14px;
    color: #FFFFFF;
}

.cookie-consent-toggle-row small {
    display: block;
    font-weight: 400;
    font-size: 12px;
    color: #8A93B2;
    margin-top: 2px;
}

.cookie-consent-switch {
    position: relative;
    width: 42px;
    height: 24px;
    border-radius: 999px;
    background: #204CA0;
    opacity: 0.55;
    flex-shrink: 0;

    &::before {
        content: "";
        position: absolute;
        top: 3px;
        left: 21px;
        width: 18px;
        height: 18px;
        border-radius: 100%;
        background: #FFFFFF;
    }
}

.cookie-consent-settings-foot {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 12px;
    flex-wrap: wrap;
}


/* HOME Expert Platform */

.pttitle h2 {
    font-weight: 700;
    font-size: 40px;
    line-height: 50px;
    color: #0A0F26;
    margin-bottom: 0;

    b,
    strong {
        color: #204CA0;
        font-weight: 700;
    }
}

.pttitle:has(h2+p) h2 {
    margin-bottom: 15px;
}

.pttitle p {
    font-weight: 400;
    font-size: 18px;
    line-height: 30px;
    color: #4A5578;
    margin-bottom: 0px;
}

.pttitle p+p {
    margin-top: 15px;
}

.ptmdef-btn,
.gform_button {
    font-weight: 700;
    font-size: 16px;
    line-height: 20px;
    color: #FFFFFF;
    background: #204CA0;
    border-radius: 12px;
    box-shadow: 0px 14px 30px -12px rgba(26, 77, 214, 0.55);
    padding: 16px 30px;
    transition: all 0.35s ease-in-out;

    &:hover,
    &:focus,
    &:active {
        background: #FEB82F;
        color: #383336;
    }
}

.ptmout-btn {
    border: 1px solid #C4CEE6;
    border-radius: 12px;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    color: #0A0F26;
    padding: 16px 30px;
    transition: all 0.35s ease-in-out;

    &:hover,
    &:focus,
    &:active {
        border-color: #204CA0;
    }
}

.ptmhm-expert-tags {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 20px;
}

.ptmhm-expert-tags li {
    font-weight: 600;
    font-size: 13px;
    line-height: 16px;
    color: #3A4463;
    padding: 9px 14px;
    background: #F4F7FC;
    border: 1px solid #E4EAF7;
    border-radius: 8px;
    text-wrap: nowrap;
}

.ptmhm-expert-img::before {
    content: "";
    position: absolute;
    border-radius: 100px;
    height: 150px;
    width: 150px;
    background: radial-gradient(74.33% 74.33% at 50% 45%, rgba(96, 140, 255, 0.28) 0%, rgba(96, 140, 255, 0) 70%);
    top: -25px;
    right: -22px;
    z-index: -1;
}

/* HOME Why Plutomen */

.ptmwhy-box {
    height: 100%;
    padding: 30px 25px;
    transition: all 0.35s ease-in-out;
    background: #F7F9FE;
    border: 1px solid #E4EAF7;
    border-radius: 18px;

    &:hover {
        transform: translateY(-6px);
        border-color: #C9D8FF;
        box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
    }
}


.ptmwhy-icon {
    margin-bottom: 18px;

    img,
    svg {

        height: 40px;
        width: 40px;
    }
}

.ptmwhy-box h3 {
    font-weight: 700;
    font-size: 20px;
    line-height: 25px;
    color: #0A0F26;
    margin-bottom: 10px;
}

.ptmwhy-box p {
    font-weight: 400;
    font-size: 18px;
    line-height: 23px;
    color: #5A648C;
    margin-bottom: 0;
}

/* HOME Ecosystem */

.ptmhm-ecosystem .pttitle h2 {
    max-width: 90%;
}

.ptmeco-item {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 15px;
    align-items: center;

    &+.ptmeco-item {
        margin-top: 20px;
    }
}

.ptmeco-item span {
    height: 34px;
    width: 100%;
    border-radius: 9px;
    background: #204CA0;
    font-size: 16px;
    line-height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
}

.ptmeco-item h3 {
    font-weight: 700;
    font-size: 20px;
    line-height: 25px;
    color: #000000;
    margin-bottom: 0px;

}

.ptmeco-item p {
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: rgba(51, 51, 51, 0.8);
    margin-bottom: 0;
}

.ptmhmeco-main {
    position: relative;
    width: 340px;
    height: 340px;
    z-index: 2;
    margin-left: auto;
    margin-right: 50px;
}

.ptmhmeco-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.ptmhmeco-logo img {
    box-shadow: 0px 18px 40px -10px rgba(26, 77, 214, 0.55);
    border-radius: 100%;
}

.ptmhmeco-wrap {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    animation: productRotate linear infinite;
    pointer-events: none;
    border: 1px dashed #C9D8FF;
    border-radius: 100%;
    animation-duration: 15s;
    z-index: 2;
}

.ptmhmeco-main .ptmhmeco-wrap:nth-child(2) {
    pointer-events: none;
    border-color: #D6E0FA;
    border-radius: 100%;
    width: 230px;
    height: 230px;
    top: 55px;
    left: 55px;
    animation-duration: 7s;
}

.ptmhmeco-box {
    position: absolute;
    animation: productRotateLeft 15s linear infinite;
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.ptmhmeco-img {
    width: 80px;
    height: 80px;
    background: #FFFFFF;
    box-shadow: 0px 18px 40px -10px rgba(26, 77, 214, 0.55);
    border-radius: 50px;
    display: grid;
    place-items: center;
    margin-bottom: 5px;
}

.ptmhmeco-box p {
    background: #FFFFFF;
    box-shadow: 0px 6px 16px -8px rgba(11, 18, 48, 0.2);
    border-radius: 50px;
    font-weight: 600;
    font-size: 13px;
    line-height: 18px;
    color: #0A0F26;
    padding: 9px 15px;
    border: 1px solid #D6E0FA;
    margin-bottom: 0;
    transition: all 0.4s ease-in-out;
}

.ptmhmeco-box:nth-child(1) {
    top: -55px;
    left: 50%;
    transform: translateX(-50%);
}

.ptmhmeco-box:nth-child(2) {
    top: 190px;
    left: -20px;
}

.ptmhmeco-box:nth-child(3) {
    top: 190px;
    right: -30px;
}


@keyframes productRotate {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(1turn);
    }
}

@keyframes productRotateLeft {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(-1turn);
    }
}

/* HOME Value */

.ptmhm-value .white-pttitle h2 {
    max-width: 90%;
}

.white-pttitle h4,
.white-pttitle h2,
.white-pttitle p {
    color: #FFFFFF;
}

.ptmvalue-box {
    padding: 20px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 18px;
    height: 100%;
    transition: all 0.35s ease-in-out;

    &:hover {
        transform: translateY(-6px);
        border-color: #C9D8FF;
        box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
    }
}

.ptmvalue-box h3 {
    font-weight: 700;
    font-size: 34px;
    line-height: 43px;
    color: #FFFFFF;
    margin-bottom: 15px;
}

.ptmvalue-box h4 {
    font-weight: 700;
    font-size: 20px;
    line-height: 25px;
    color: #FFFFFF;
    margin-bottom: 10px;
}

.ptmvalue-box p {
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #9AA6D4;
    margin-bottom: 0;
}

/* HOME Platform */

.ptplat-sticky {
    min-height: calc(100vh - 60px);
    display: flex;
    align-items: center;
}

/* JS adds .is-pinned once the scroll-driven slider is active */
.ptmhm-platform.is-pinned .ptplat-sticky {
    position: sticky;
    top: 0;
    height: 100vh;
    min-height: 0;
    padding-top: 60px;
    overflow: hidden;
}

.ptplatform-slider {
    max-height: 372px;
}

.ptplat-content h5 {
    display: inline-block;
    background: #E9EFFF;
    border-radius: 50px;
    padding: 7px 15px;
    margin-bottom: 10px;
    font-weight: 700;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 1.5px;
    color: #204CA0;
    border: 1px solid #C9D8FF;
    text-transform: uppercase;

}

.ptplat-content h3 {
    font-weight: 700;
    font-size: 30px;
    line-height: 38px;
    color: #000000;
    margin-bottom: 15px;
}

.ptplat-content p {
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #333333;
    margin-bottom: 20px;
}

.ptplat-content li {
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    display: flex;
    align-items: center;
    color: #3A4463;
    gap: 10px;

    &+li {
        margin-top: 15px;
    }

    &::before {
        content: "";
        display: block;
        height: 20px;
        width: 20px;
        margin-top: -2px;
        background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99609 10L10.0672 2.92893L17.1382 10L10.0672 17.0711L2.99609 10Z' fill='%23204CA0'/%3E%3C/svg%3E%0A");
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: center;
    }
}

.ptplat-content a {
    display: inline-block;
    font-weight: 700;
    font-size: 16px;
    line-height: 20px;
    text-decoration-line: underline;
    color: #204CA0;
    margin-top: 30px;

    &:hover,
    &:active,
    &:focus {
        color: #FEB82F;
    }
}

.ptplatform-img {
    margin-left: auto;
}


/* HOME Industry */
.ptmhm-industry {
    z-index: 0;
}

.ptmhm-industry::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #000000 50.48%, rgba(0, 0, 0, 0) 100%);
    z-index: -1;
}

.ptindutabs-slider {
    max-width: 280px;
    margin-left: 0;
}

.ptindutabs-slider .swiper-wrapper {
    flex-direction: column;
}

.ptindutabs-slider .swiper-slide+.swiper-slide {
    margin-top: 5px;
}

.ptindu-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 600;
    font-size: 15px;
    line-height: 19px;
    color: #FFFFFF;
    padding: 16px 20px;
    border-radius: 12px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.35s ease-in-out;

    &.active,
    &:hover {
        border-color: #4D7DFF;

        span {
            opacity: 1;
            visibility: visible;
        }
    }
}


.ptindu-item span {
    opacity: 0;
    visibility: hidden;
    font-weight: 700;
    font-size: 16px;
    line-height: 22px;
    color: #FFFFFF;
    transition: all 0.35s ease-in-out;
}


.ptindutabs-content {
    display: none;
}

.ptindutabs-content h5 {
    font-weight: 400;
    font-size: 13px;
    line-height: 16px;
    letter-spacing: 2.08px;
    text-transform: uppercase;
    color: #FFFFFF;
    margin-bottom: 12px;
}

.ptindutabs-content p {
    margin-bottom: 20px;
    max-width: 75%;
}

.ptmhm-cta {
    position: relative;
    z-index: 0;
}

.ptmhm-cta::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #0A0F269C;
    z-index: -1;
}

.ptindutabs-content h4,
.ptmhm-cta .pttitle h4 {
    display: inline-block;
    font-weight: 700;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 1.5px;
    color: #1A4DD6;
    padding: 6px 15px;
    background-color: #E9EFFF;
    border-radius: 20px;
    text-transform: uppercase;
}

.ptindutabs-content h3 {
    font-weight: 700;
    font-size: 30px;
    line-height: 38px;
    color: #FFFFFF;
    margin-bottom: 15px;
}

.ptindutabs-content ul {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    margin-block: 30px;
}

.ptindutabs-content li {
    background: #FFFFFF;
    border-radius: 12px;
    padding: 15px;
    font-weight: 500;
    font-size: 15px;
    line-height: 20px;
    color: #204CA0;
}

.ptindutabs-content a {
    font-weight: 700;
    font-size: 15px;
    line-height: 19px;
    text-decoration-line: underline;
    color: #FFFFFF;

    &:hover,
    &:active,
    &:focus {
        color: #FEB82F;
    }
}

/* HOME Labs */

.ptmhm-labs .pttitle ul {
    display: flex;
    align-items: center;
    gap: 36px;
    margin: 25px 0 20px;
}

.ptmhm-labs .pttitle li {
    font-weight: 500;
    font-size: 13px;
    line-height: 16px;
    color: #3A4463;
    background: #F4F7FC;
    border: 1px solid #E4EAF7;
    border-radius: 9px;
    padding: 10px 14px;
    position: relative;

    &::after {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: calc(-38px / 2 - 6px);
        height: 12px;
        width: 8px;
        background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.77516e-06 4.25599V3.24799H9.76801L7.14401 0.623992L7.78401 -8.58307e-06L11.536 3.75199L7.78401 7.50399L7.14401 6.87999L9.76801 4.25599H9.77516e-06Z' fill='%231A4DD6'/%3E%3C/svg%3E%0A");
        background-size: 100%;
        background-repeat: no-repeat;
        background-position: center;
    }

    &:last-child {
        &::after {
            display: none;
        }
    }
}

.ptmhm-labs .pttitle .ptmout-btn {
    display: inline-block;
}

.ptlabs-main {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.ptlabs-main .ptmwhy-icon {
    height: 30px;
    width: 30px;
    margin-bottom: 10px;

    img {
        height: 100%;
        width: 100%;
    }
}

/* HOME Case Studies */

.ptcases-feature {
    border: 1px solid #E1E8F6;
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    box-shadow: 0px 30px 70px -46px rgba(11, 18, 48, 0.3);
    border-radius: 24px;
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(2, 1fr);
}

.ptcases-desc {
    height: 100%;
    padding: 50px 0 50px 50px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.ptcsdesc-head {
    display: flex;
    align-items: center;
    gap: 25px;
    margin-bottom: 15px;
}

.ptcsdesc-head h3 {
    font-weight: 700;
    font-size: 30px;
    line-height: 38px;
    color: #0A0F26;
    margin-bottom: 0px;
}

.ptcsdesc-head span {
    display: inline-block;
    font-weight: 700;
    font-size: 12px;
    line-height: 15px;
    color: #1A4DD6;
    background: #E9EFFF;
    border-radius: 50px;
    padding: 6px 12px;
}

.ptcases-desc p {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #4A5578;
    margin-bottom: 15px;

    &:nth-child(2) {
        font-size: 18px;
        line-height: 30px;
    }

}

.ptcases-desc ul {
    display: flex;
    justify-content: space-between;
    gap: 24px;
}

.ptcases-desc li strong {
    display: block;
    font-weight: 700;
    font-size: 24px;
    line-height: 30px;
    color: #1A4DD6;
    margin-bottom: 5px;
}

.ptcases-desc li {
    display: block;
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    color: #5A648C;
}

.ptcases-img,
.ptcases-img img {
    height: 100%;
}

.ptcases-img img {
    width: 100%;
    display: block;
}

/* .ptcase-img (singular) is the small 3-up card grid variant -- e.g. the
   Home page's case-study grid and every Solution page's "related industries"
   cards. Each card can show a different source image (photo or vector
   illustration) with wildly different native aspect ratios, so it needs its
   own fixed-ratio box + object-fit:cover to render consistently instead of
   showing each image at its raw native size (leaving mismatched blank space
   in shorter images' cards). */
.ptcase-img {
    height: 220px;
    flex-shrink: 0;
    overflow: hidden;
    display: block;
}

.ptcase-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.ptcases-box {
    height: 100%;
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    box-shadow: 0px 18px 40px -34px rgba(11, 18, 48, 0.3);
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    transition: all 0.35s ease-in-out;

    &:hover {
        transform: translateY(-6px);
        border-color: #C9D8FF;
        box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
    }
}

.ptcase-desc {
    padding: 15px 20px 25px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.ptcase-head {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 10px;
}

.ptcase-desc h3 {
    font-weight: 700;
    font-size: 16px;
    line-height: 21px;
    color: #0A0F26;
    margin: 0;
}

.ptcase-desc .ptcase-head p {
    font-weight: 700;
    font-size: 11px;
    line-height: 14px;
    color: #1A4DD6;
    margin-bottom: 0;
    text-transform: uppercase;
    flex: none;
}

.ptcase-desc p {
    font-weight: 400;
    font-size: 14px;
    line-height: 23px;
    color: #5A648C;
    margin-bottom: 20px;
    flex: 1;
}

.ptcase-desc a {
    display: inline-block;
    font-weight: 700;
    font-size: 14px;
    line-height: 18px;
    color: #1A4DD6;

    &:hover,
    &:active,
    &:focus {
        color: #FEB82F;
    }
}

/* HOME Stats Strip */
.ptstat-box h3 {
    margin-bottom: 5px;
    font-weight: 700;
    font-size: 46px;
    line-height: 58px;
    letter-spacing: -0.92px;
    color: #FFFFFF;
}

.ptstat-box p {
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    text-transform: capitalize;
    color: #CBD8FF;
    margin-bottom: 0;
}

/* HOME Stack */
.ptmhm-stack .pttitle p {
    max-width: 74%;
    margin-inline: auto;
}

.ptstack-box {
    padding: 30px;
    background: #F7F9FE;
    border: 1px solid #E4EAF7;
    border-radius: 18px;
}

.ptstack-box h3 {
    font-weight: 700;
    font-size: 17px;
    line-height: 21px;
    color: #0A0F26;
    margin-bottom: 20px;
}

.ptstack-logos {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.ptstack-logos li {
    min-width: 58px;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 9px;
    padding: 4px 15px;
    display: flex;
    align-items: center;
    justify-content: center;

    img {
        max-height: 28px;
        max-width: 80px;
    }

}

.ptstack-checks {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

.ptstack-checks li {
    font-weight: 600;
    font-size: 13px;
    line-height: 16px;
    color: #178A54;
    padding: 11px 15px;
    background: #E7F7EE;
    border: 1px solid #B9E6CE;
    border-radius: 9px;
    display: flex;
    align-items: center;
    gap: 8px;

    &::before {
        content: "";
        display: block;
        height: 10px;
        width: 12px;
        background-image: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.783 9.75L-3.90131e-06 5.746L0.987996 4.758L3.809 7.761L10.985 -4.47035e-06L11.934 0.935996L3.783 9.75Z' fill='%23178A54'/%3E%3C/svg%3E%0A");
        background-size: 100%;
        background-repeat: no-repeat;
    }
}

/* HOME Testimonials */

.pttest-slider .swiper-slide {
    height: auto;
}

.pttest-box {
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 18px;
    padding: 30px;
    box-shadow: 0px 18px 40px -34px rgba(11, 18, 48, 0.3);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.pttest-img {
    margin-bottom: 15px;
    display: flex;
}

.pttest-box p {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #0A0F26;
    margin-bottom: 20px;
    flex: 1;
}

.pttest-auto {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 10px;
    align-items: center;
}

.ptauto-name {
    display: grid;
    place-items: center;
    font-weight: 700;
    font-size: 14px;
    line-height: 19px;
    color: #FFFFFF;
    height: 40px;
    background: #204CA0;
    border-radius: 20px;
}

.ptauto-desc h5 {
    font-weight: 700;
    font-size: 14px;
    line-height: 18px;
    color: #0A0F26;
    margin-bottom: 2px;

}

.ptauto-desc p {
    font-weight: 400;
    font-size: 13px;
    line-height: 16px;
    color: #5A648C;
    margin-bottom: 0;
}

.pttest-custome-pagi {
    position: static;
    margin-top: 30px;
    display: none;
    align-items: center;
    justify-content: center;
    gap: 8px;

    .swiper-pagination-bullet {
        height: 8px;
        width: 8px;
        border-radius: 20px;
        opacity: 1;
        background-color: #9AA6D4;
        margin: 0 !important;
        transition: all 0.35s ease-in-out;

        &.swiper-pagination-bullet-active {
            background-color: #204CA0;
            width: 50px;
        }
    }
}

/* HOME Partner */

.ptmhm-partner {
    z-index: 0;

    &::before {
        content: "";
        position: absolute;
        inset: 0;
        background: radial-gradient(33.33% 73.18% at 12% 110%, rgba(26, 77, 214, 0.4) 0%, rgba(26, 77, 214, 0) 60%);
        z-index: -1;
    }
}

.ptmhm-partner .pttitle h4 {
    color: #7FA0FF;
}

.ptmhm-partner .pttitle p {
    color: #B9C2E8;
}

.ptmhm-partner .ptmvalue-box {
    padding: 25px;
}

.ptmhm-partner .ptmvalue-box h3 {
    font-weight: 700;
    font-size: 16px;
    line-height: 21px;
    margin-bottom: 7px;
}

.ptmhm-partner .ptmvalue-box p {
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
}

/* HOME Guide */
.ptguide-card {
    padding: 50px;
    background: #F1F5FF;
    border: 1px solid #D6E0FA;
    border-radius: 22px;

}

.ptmhm-guide .pttitle ul {
    margin-top: 20px;
}

.ptmhm-guide .pttitle li {
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    color: #3A4463;
    display: flex;
    align-items: center;
    gap: 10px;

    &::before {
        content: "";
        display: block;
        height: 12px;
        width: 11px;
        background-image: url("data:image/svg+xml,%3Csvg width='11' height='12' viewBox='0 0 11 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.291 11.1653C2.291 11.0397 2.26683 10.9768 2.2185 10.9768L1.885 11.1363C1.885 11.0687 1.84633 11.0203 1.769 10.9913L1.653 10.9768C1.57566 10.9768 1.479 11.0107 1.363 11.0783C1.34366 11.03 1.3195 10.9817 1.2905 10.9333C1.2615 10.885 1.23733 10.8415 1.218 10.8028C1.09233 10.5612 0.966665 10.2953 0.840998 10.0053C0.724998 9.70568 0.613831 9.42051 0.507498 9.14984C0.410831 8.87918 0.333498 8.66651 0.275498 8.51184C0.236831 8.38618 0.193331 8.19768 0.144998 7.94634C0.0966648 7.69501 0.0483314 7.37601 -1.91294e-06 6.98934C0.106331 7.05701 0.188498 7.09084 0.246498 7.09084C0.314165 7.09084 0.376998 6.98934 0.434998 6.78634C0.463998 6.82501 0.517165 6.84434 0.594498 6.84434C0.652498 6.84434 0.695998 6.82501 0.724998 6.78634L0.956998 6.43834L1.218 6.52534H1.2325C1.25183 6.52534 1.27116 6.51568 1.2905 6.49634C1.30983 6.47701 1.33883 6.45768 1.3775 6.43834C1.45483 6.39001 1.51283 6.36584 1.5515 6.36584L1.595 6.38034C1.83666 6.49634 1.99133 6.70901 2.059 7.01834C2.233 7.75301 2.407 8.12034 2.581 8.12034C2.755 8.12034 2.958 7.93668 3.19 7.56934C3.306 7.38568 3.422 7.17301 3.538 6.93134C3.66367 6.68968 3.78933 6.41901 3.915 6.11934C3.93433 6.23534 3.95366 6.29334 3.973 6.29334C4.02133 6.29334 4.1035 6.17251 4.2195 5.93084C4.34516 5.68918 4.54333 5.35568 4.814 4.93034C4.96866 4.66934 5.162 4.37451 5.394 4.04584C5.63566 3.71718 5.89183 3.37884 6.1625 3.03084C6.43316 2.68284 6.69416 2.35418 6.9455 2.04484C7.2065 1.73551 7.4385 1.46968 7.6415 1.24734C7.8445 1.02501 7.99433 0.88001 8.091 0.812344C8.45833 0.56101 8.74833 0.319343 8.961 0.0873433C8.95133 0.15501 8.93683 0.217843 8.9175 0.275844C8.90783 0.324177 8.903 0.35801 8.903 0.377343C8.903 0.41601 8.92233 0.435343 8.961 0.435343L9.367 0.232343V0.290343C9.367 0.367677 9.38633 0.406344 9.425 0.406344C9.454 0.406344 9.512 0.362844 9.599 0.275844C9.686 0.188843 9.73433 0.12601 9.744 0.0873433L9.715 0.290343L10.208 0.000343591L10.092 0.261344C10.2467 0.15501 10.3578 0.101843 10.4255 0.101843C10.4642 0.101843 10.4932 0.12601 10.5125 0.174343C10.5318 0.21301 10.5415 0.251677 10.5415 0.290343C10.5415 0.348343 10.5173 0.41601 10.469 0.493343C10.4207 0.570677 10.3578 0.66251 10.2805 0.768843C10.2225 0.846177 10.1258 0.962177 9.9905 1.11684C9.86483 1.26184 9.6715 1.47934 9.4105 1.76934C9.1495 2.04968 8.8015 2.44118 8.3665 2.94384C8.2505 3.06951 8.07167 3.29184 7.83 3.61084C7.58833 3.92018 7.31283 4.28268 7.0035 4.69834C6.70383 5.10434 6.40417 5.51518 6.1045 5.93084C5.80483 6.34651 5.539 6.72351 5.307 7.06184C5.075 7.39051 4.91066 7.63701 4.814 7.80134L3.915 9.32384C3.72167 9.65251 3.56217 9.92318 3.4365 10.1358C3.31083 10.3388 3.21416 10.479 3.1465 10.5563C3.0015 10.7303 2.842 10.885 2.668 11.0203L2.5375 10.9478L2.4215 11.0203L2.291 11.1653Z' fill='%231A4DD6'/%3E%3C/svg%3E%0A");
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: center;
    }

    &+li {
        margin-top: 10px;
    }
}

.ptmhm-guide .ptmbtn-inner p {
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
    color: #8A93B2;
    margin-bottom: 0;
    width: 100%;
}

/* HOME CTA */
.ptmhm-cta .ptmout-btn {
    background: #FFFFFF;
}

/* Brochure / Lead Modal */

.ptmform-modal {
    position: relative;
    padding: 40px;
    border: none;
    border-radius: 20px;

    .btn-close {
        position: absolute;
        top: 20px;
        right: 20px;
    }

    h3 {
        font-weight: 700;
        font-size: 24px;
        line-height: 30px;
        color: #0A0F26;
        margin-bottom: 8px;
    }

    p {
        font-weight: 400;
        font-size: 15px;
        color: #5A648C;
        margin-bottom: 24px;
    }
}

.ptmform-group {
    margin-bottom: 16px;

    input,
    textarea {
        width: 100%;
        background: #FFFFFF;
        border: 1px solid #E4EAF7;
        border-radius: 8px;
        font-weight: 400;
        font-size: 14px;
        color: #0A0F26;
        padding: 13px 16px;
        outline: none;
        transition: border-color 0.3s ease-in-out;
        font-family: inherit;

        &::placeholder {
            color: rgba(10, 15, 38, 0.4);
        }

        &:focus {
            border-color: #204CA0;
        }
    }

    textarea {
        resize: vertical;
    }
}

.ptmform-file {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #FFFFFF;
    border: 1px dashed #C9D8FF;
    border-radius: 8px;
    padding: 13px 16px;
    cursor: pointer;

    span {
        font-weight: 400;
        font-size: 14px;
        color: rgba(10, 15, 38, 0.4);
    }

    input[type="file"] {
        max-width: 130px;
        font-size: 12px;
        color: #5A648C;
    }
}

.ptmform-check {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 24px;

    input {
        margin-top: 4px;
    }

    label {
        font-weight: 400;
        font-size: 13px;
        color: #5A648C;
    }
}

.ptmform-modal .ptmdef-btn {
    width: 100%;
    text-align: center;
    border: none;
    cursor: pointer;
}

/* Gravity Forms — real form markup, styled to the .ptmform-group /
   .ptmform-check / .ptmform-file language above. Scoped to every
   context a Gravity Forms shortcode is embedded in on the redesign:
   CTA cards, the e-book download card, and brochure/lead modals. */

.product-cta-form,
.ebook-form-card,
.ptmform-modal,
.ptquote-form {

    .gform_wrapper {
        width: 100%;

        .gform_heading,
        .gform_required_legend {
            display: none;
        }

        .gform_fields {
            display: grid;
            grid-template-columns: 1fr;
            row-gap: 0;
        }

        .gfield {
            margin-bottom: 16px;
            max-width: 100% !important;
        }

        .gfield--type-hidden,
        .gform_validation_container {
            display: none !important;
        }

        .gfield_label {
            display: block;
            font-weight: 500;
            font-size: 13px;
            color: #3A4463;
            margin-bottom: 6px;
        }

        .gfield_required {
            color: #E14D4D;
        }

        .gfield_required_text {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0;
        }

        .gfield_description {
            font-size: 12px;
            color: #8A93B2;
            margin-top: 4px;
        }

        .ginput_container input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="submit"]),
        .ginput_container textarea,
        .ginput_container select {
            width: 100%;
            background: #FFFFFF;
            border: 1px solid #E4EAF7;
            border-radius: 8px;
            font-weight: 400;
            font-size: 14px;
            color: #0A0F26;
            padding: 13px 16px;
            outline: none;
            transition: border-color 0.3s ease-in-out;
            font-family: inherit;

            &::placeholder {
                color: rgba(10, 15, 38, 0.4);
            }

            &:focus {
                border-color: #204CA0;
            }
        }

        .ginput_container textarea {
            resize: vertical;
        }

        .ginput_container select {
            appearance: none;
            background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235A648C' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: right 16px center;
            padding-right: 40px;
            cursor: pointer;
        }

        .ginput_container_fileupload {
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            gap: 8px 12px;
            background: #FFFFFF;
            border: 1px dashed #C9D8FF;
            border-radius: 8px;
            padding: 13px 16px;

            input[type="file"] {
                width: 100%;
                font-size: 12px;
                color: #5A648C;
                font-family: inherit;
            }

            .gfield_description {
                width: 100%;
                margin: 0;
                font-size: 12px;
                color: #8A93B2;
            }
        }

        .gfield--type-consent .ginput_container_consent {
            display: flex;
            align-items: flex-start;
            gap: 8px;

            input {
                margin-top: 4px;
            }

            .gfield_consent_label {
                font-weight: 400;
                font-size: 13px;
                color: #5A648C;
            }
        }

        a {
            color: #204CA0;
            font-weight: 600;
        }

        .gfield_error {

            .ginput_container input,
            .ginput_container textarea,
            .ginput_container select {
                border-color: #E14D4D;
            }
        }

        .validation_message {
            font-size: 12px;
            color: #E14D4D;
            margin-top: 4px;
        }

        .gform_validation_errors {
            background: rgba(225, 77, 77, 0.08);
            border: 1px solid #E14D4D;
            border-radius: 8px;
            padding: 16px;
            margin-bottom: 16px;
            font-size: 13px;
            color: #E14D4D;
        }

        .gform_footer {
            margin-top: 8px;
            padding-top: 0;
        }

    }

    /* Gravity Forms swaps out .gform_wrapper entirely for a sibling
       .gform_confirmation_wrapper on successful submit, so this is
       styled at the same level as .gform_wrapper above, not nested in it. */
    .gform_confirmation_message {
        font-weight: 500;
        font-size: 15px;
        color: #22B36B;
        text-align: center;
        padding: 20px 0;
    }
}


.gform_button {
    margin-bottom: 0 !important;
    width: 100%;
    text-align: center;
    border: none;
    cursor: pointer;
    font-weight: 700;
    font-size: 16px;
    line-height: 20px;
    color: #FFFFFF;
    background: #204CA0;
    border-radius: 12px;
    box-shadow: 0px 14px 30px -12px rgba(26, 77, 214, 0.55);
    padding: 16px 30px;
    transition: all 0.35s ease-in-out;

    &:hover,
    &:active {
        background: #FEB82F;
        color: #383336;
    }
}

/* CONNECT Problem - Minimal Numbered Rows */

.connect-problem {
    padding-block: 100px;
}

.connect-problem-head {
    position: sticky;
    top: 120px;
}

.connect-problem-head .pttitle-design h5 {
    margin-bottom: 18px;
}

.connect-problem-head h2 {
    font-size: 32px;
    line-height: 1.3;
    color: #0A0F26;
    margin-bottom: 16px;
}

.connect-problem-head p {
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
    color: #5A648C;
    max-width: 360px;
    margin-bottom: 0;
}

.connect-problem-head-img {
    max-width: 320px;
    margin-top: 40px;

    img {
        width: 100%;
        height: auto;
        display: block;
    }
}

.workflow-problem-img {
    max-width: 100%;
    width: 100%;
    height: 420px;
    border-radius: 16px;
    overflow: hidden;

    img {
        height: 100%;
        object-fit: cover;
        border-radius: 16px;
    }
}

.connect-problem-head-static {
    position: static;
}

.connect-problem-rows {
    list-style: none;
    margin: 0;
    padding: 0;

    li {
        display: flex;
        align-items: baseline;
        gap: 28px;
        padding: 30px 0;
        border-bottom: 1px solid #E4EAF7;
        transition: gap 0.3s ease-in-out;

        &:first-child {
            padding-top: 0;
        }

        &:last-child {
            padding-bottom: 0;
            border-bottom: none;
        }

        &:hover {
            gap: 36px;
        }

        &:hover .connect-problem-rows-num {
            color: #204CA0;
        }
    }

    p {
        font-weight: 500;
        font-size: 20px;
        line-height: 30px;
        color: #0A0F26;
        margin-bottom: 0;
    }
}

.connect-problem-rows-num {
    flex-shrink: 0;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: 0.5px;
    color: #C9D8FF;
    transition: color 0.3s ease-in-out;
}

/* CONNECT Capability - Vertical Stepper + Crossfade Panel */

.connect-capability-shell {
    position: relative;
    display: grid;
    grid-template-columns: 320px 1fr;
    align-items: start;
    gap: 50px;
}

.connect-capability-input {
    position: fixed;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.connect-capability-steps {
    position: relative;
    display: flex;
    flex-direction: column;
    border-left: 2px solid #E4EAF7;
}

.connect-capability-step {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 20px 20px 20px 26px;
    margin-left: -2px;
    border-left: 2px solid transparent;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

.connect-capability-step-num {
    font-weight: 700;
    font-size: 13px;
    color: #A6B0CC;
    transition: color 0.3s ease-in-out;
}

.connect-capability-step-text {
    strong {
        display: block;
        font-weight: 700;
        font-size: 17px;
        color: #5A648C;
        margin-bottom: 4px;
        transition: color 0.3s ease-in-out;
    }

    small {
        display: block;
        font-weight: 400;
        font-size: 13px;
        color: #A6B0CC;
        transition: color 0.3s ease-in-out;
    }
}

#connect-cap-01:checked~.connect-capability-steps label[for="connect-cap-01"],
#connect-cap-02:checked~.connect-capability-steps label[for="connect-cap-02"],
#connect-cap-03:checked~.connect-capability-steps label[for="connect-cap-03"],
#connect-cap-04:checked~.connect-capability-steps label[for="connect-cap-04"],
#connect-cap-05:checked~.connect-capability-steps label[for="connect-cap-05"],
#connect-cap-06:checked~.connect-capability-steps label[for="connect-cap-06"] {
    border-left-color: #204CA0;
    background: #FFFFFF;

    .connect-capability-step-num {
        color: #204CA0;
    }

    .connect-capability-step-text strong {
        color: #0A0F26;
    }

    .connect-capability-step-text small {
        color: #5A648C;
    }
}

.connect-capability-panels {
    display: grid;
}

.connect-capability-panel {
    grid-area: 1 / 1;
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    align-items: center;
    gap: 40px;
    opacity: 0;
    pointer-events: none;
    transform: translateY(14px);
    transition: opacity 0.45s ease-in-out, transform 0.45s ease-in-out;
}

#connect-cap-01:checked~.connect-capability-panels .connect-capability-panel-01,
#connect-cap-02:checked~.connect-capability-panels .connect-capability-panel-02,
#connect-cap-03:checked~.connect-capability-panels .connect-capability-panel-03,
#connect-cap-04:checked~.connect-capability-panels .connect-capability-panel-04,
#connect-cap-05:checked~.connect-capability-panels .connect-capability-panel-05,
#connect-cap-06:checked~.connect-capability-panels .connect-capability-panel-06 {
    opacity: 1;
    pointer-events: auto;
    transform: none;
    z-index: 1;
}

.connect-capability-panel-img {
    position: relative;

    &::before {
        content: "";
        position: absolute;
        border-radius: 100px;
        height: 150px;
        width: 150px;
        background: radial-gradient(74.33% 74.33% at 50% 45%, rgba(96, 140, 255, 0.28) 0%, rgba(96, 140, 255, 0) 70%);
        top: -25px;
        right: -10px;
        z-index: -1;
    }

    img {
        width: 100%;
    }
}

.connect-capability-panel-body h3 {
    font-weight: 700;
    font-size: 22px;
    line-height: 28px;
    color: #0A0F26;
    margin-bottom: 12px;
}

.connect-capability-panel-body p {
    font-weight: 400;
    font-size: 17px;
    line-height: 27px;
    color: #5A648C;
    margin-bottom: 0;
}

.workflow-usecase-panels .connect-capability-panel-img {
    aspect-ratio: 4 / 3;
    border-radius: 18px;
    overflow: hidden;

    img {
        height: 100%;
        object-fit: cover;
    }
}

/* CONNECT Compare - Toggle Demo Screen */

.connect-compare {
    padding-block: 60px;
}

.connect-compare .pttitle h2 {
    margin-bottom: 10px;
}

.connect-compare-stage {
    max-width: 560px;
    margin-inline: auto;
    text-align: center;
}

.connect-compare-input {
    position: fixed;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.connect-compare-toggle {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    padding: 6px;
    margin-bottom: 24px;

    label {
        position: relative;
        z-index: 1;
        padding: 10px;
        font-weight: 700;
        font-size: 14px;
        color: rgba(255, 255, 255, 0.5);
        text-align: center;
        cursor: pointer;
        transition: color 0.3s ease-in-out;
    }
}

.connect-compare-toggle-indicator {
    position: absolute;
    top: 6px;
    left: 6px;
    width: calc(50% - 6px);
    height: calc(100% - 12px);
    background: #204CA0;
    border-radius: 999px;
    transition: transform 0.4s cubic-bezier(0.65, 0, 0.35, 1);
    z-index: 0;
}

#connect-compare-good:checked~.connect-compare-toggle .connect-compare-toggle-indicator {
    transform: translateX(100%);
}

#connect-compare-bad:checked~.connect-compare-toggle label[for="connect-compare-bad"],
#connect-compare-good:checked~.connect-compare-toggle label[for="connect-compare-good"] {
    color: #FFFFFF;
}

.connect-compare-panels {
    display: grid;
}

.connect-compare-panel {
    grid-area: 1 / 1;
    opacity: 0;
    pointer-events: none;
    transform: scale(0.98);
    transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;

    p {
        margin-top: 16px;
        font-weight: 500;
        font-size: 15px;
        line-height: 23px;
        color: #B7C0DD;
    }
}

#connect-compare-bad:checked~.connect-compare-panels .connect-compare-panel-bad,
#connect-compare-good:checked~.connect-compare-panels .connect-compare-panel-good {
    opacity: 1;
    pointer-events: auto;
    transform: none;
    z-index: 1;
}

.connect-compare-screen {
    position: relative;
    aspect-ratio: 4 / 3;
    border-radius: 18px;
    overflow: hidden;
    border: 2px solid;

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center 20%;
    }
}

.connect-compare-screen-bad {
    border-color: rgba(214, 69, 69, 0.5);

    img {
        filter: grayscale(45%) brightness(0.8) contrast(0.9);
    }
}

.connect-compare-noise {
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.06) 0px, rgba(255, 255, 255, 0.06) 1px, transparent 1px, transparent 3px);
    mix-blend-mode: overlay;
}

.connect-compare-screen-good {
    border-color: rgba(34, 179, 107, 0.6);
}

.connect-compare-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(10, 15, 38, 0.75);
    border-radius: 999px;
    padding: 6px 14px;
    font-weight: 700;
    font-size: 12px;
    color: #FFFFFF;

    i {
        width: 8px;
        height: 8px;
        border-radius: 100%;
        display: block;
    }
}

.connect-compare-badge-bad i {
    background: #D64545;
}

.connect-compare-badge-good i {
    background: #22B36B;
    box-shadow: 0 0 0 4px rgba(34, 179, 107, 0.25);
}

.connect-compare-annotation {
    position: absolute;
    background: rgba(10, 15, 38, 0.85);
    border: 1px solid #22B36B;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 11px;
    padding: 5px 10px;
    border-radius: 6px;

    &::before {
        content: "";
        position: absolute;
        width: 6px;
        height: 6px;
        border-radius: 100%;
        background: #22B36B;
        top: 50%;
        left: -3px;
        transform: translateY(-50%);
    }
}

.connect-compare-annotation-1 {
    top: 30%;
    left: 20%;
}

.connect-compare-annotation-2 {
    bottom: 22%;
    right: 16%;
}

.connect-compare-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    font-size: 11px;
    font-weight: 700;
    margin-right: 6px;
}

.connect-compare-mark-bad {
    background: rgba(214, 69, 69, 0.15);
    color: #D64545;
}

.connect-compare-mark-good {
    background: rgba(34, 179, 107, 0.15);
    color: #22B36B;
}

/* PRODUCT Solution - Split Copy + Framed Visual */

.product-solution-grid {
    display: grid;
    grid-template-columns: 1fr 0.9fr;
    align-items: stretch;
    gap: 60px;
}

.product-solution-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.product-solution-copy h2 {
    font-weight: 700;
    font-size: 34px;
    line-height: 1.3;
    color: #0A0F26;
    margin-bottom: 16px;
}

.product-solution-copy p {
    font-weight: 400;
    font-size: 16px;
    line-height: 27px;
    color: #5A648C;
    margin-bottom: 0;
}

.product-solution-visual {
    position: relative;
    height: 420px;
}

.product-solution-visual::before {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    border-radius: 100px;
    background: radial-gradient(74.33% 74.33% at 50% 45%, rgba(32, 76, 160, 0.18) 0%, rgba(32, 76, 160, 0) 70%);
    top: -25px;
    right: -25px;
    z-index: 0;
}

.product-solution-visual-frame {
    position: relative;
    z-index: 1;
    height: 100%;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0px 30px 60px -30px rgba(10, 15, 38, 0.25);
}

.product-solution-visual-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.product-solution-reverse {
    grid-template-columns: 0.9fr 1fr;
}

.product-solution-reverse .product-solution-visual {
    order: -1;
}

.service-why-list li {
    position: relative;
    padding-left: 30px;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #3A4463;

    &+li {
        border-top: 1px solid #204CA0;
        margin-top: 15px;
        padding-top: 15px;

    }
}

.mb-30 {
    margin-bottom: 30px;
}

.ptmwhy-box .service-why-list {
    margin: 15px 0 20px;
}

.service-industries-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.service-industry-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 30px 24px;
    background: #F7F9FE;
    border: 1px solid #E4EAF7;
    border-radius: 18px;
    transition: all 0.35s ease-in-out;
}

.service-industry-card:hover {
    transform: translateY(-6px);
    background: #FFFFFF;
    border-color: #C9D8FF;
    box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
}

.service-industry-card-icon {
    display: flex;
    margin-bottom: 18px;
    color: #0A0F26;
}

.service-industry-card-icon svg {
    height: 40px;
    width: 40px;
}

.service-industry-card h3 {
    font-weight: 700;
    font-size: 18px;
    line-height: 23px;
    color: #0A0F26;
    margin-bottom: 0;
}

.service-awards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    gap: 20px;
}

.service-award-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 28px 20px;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 16px;
    transition: all 0.3s ease-in-out;
}

.service-award-card:hover {
    transform: translateY(-6px);
    border-color: #C9D8FF;
    box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
}

.service-award-card-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 56px;
    margin-bottom: 18px;
}

.service-award-card-logo img {
    max-height: 56px;
    max-width: 140px;
    object-fit: contain;
}

.service-award-card p {
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
    color: #3A4463;
    margin-bottom: 0;
}

.service-stack-section {
    background: #0A0F26;
}

.service-stack-section .pttitle p {
    color: #B7C0DD;
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
}

.service-stack-accordion {
    max-width: 820px;
    margin: 0 auto;
}

.service-stack-input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.service-stack-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.service-stack-head {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 26px 10px;
    cursor: pointer;
}

.service-stack-head-num {
    flex-shrink: 0;
    font-weight: 700;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.35);
}

.service-stack-head-text {
    flex: 1;
    font-weight: 700;
    font-size: 19px;
    color: #FFFFFF;
}

.service-stack-chevron {
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 100%;
    transition: transform 0.35s ease-in-out, background 0.3s ease-in-out;
}

.service-stack-chevron::before {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid #B7C0DD;
    border-bottom: 2px solid #B7C0DD;
    transform: rotate(45deg);
    margin-top: -4px;
}

.service-stack-input:checked~.service-stack-head .service-stack-chevron {
    transform: rotate(180deg);
    background: #204CA0;
    border-color: #204CA0;
}

.service-stack-input:checked~.service-stack-head .service-stack-chevron::before {
    border-color: #FFFFFF;
}

.service-stack-input:checked~.service-stack-head .service-stack-head-num {
    color: #8FB2FF;
}

.service-stack-panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s ease-in-out;
}

.service-stack-input:checked~.service-stack-panel {
    grid-template-rows: 1fr;
}

.service-stack-panel-inner {
    overflow: hidden;
}

.service-stack-icons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 0 10px 26px;
}

.service-stack-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 52px;
    padding: 0 16px;
    background: #FFFFFF;
    border-radius: 10px;
}

.service-stack-icon img {
    max-height: 26px;
    max-width: 90px;
    object-fit: contain;
}

.product-cta-copy .ptmout-btn {
    color: #FFFFFF;
    border-color: rgba(255, 255, 255, 0.3);
}

.product-cta-copy .ptmout-btn:hover,
.product-cta-copy .ptmout-btn:focus,
.product-cta-copy .ptmout-btn:active {
    border-color: #FFFFFF;
}

.service-reads-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.service-read-card {
    display: block;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 18px;
    overflow: hidden;
    transition: all 0.35s ease-in-out;
}

.service-read-card:hover {
    transform: translateY(-6px);
    border-color: #C9D8FF;
    box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
}

.service-read-card-img {
    height: 190px;
    overflow: hidden;
}

.service-read-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease-in-out;
}

.service-read-card:hover .service-read-card-img img {
    transform: scale(1.06);
}

.service-read-card-body {
    padding: 22px;
}

.service-read-card-body h3 {
    font-weight: 700;
    font-size: 17px;
    line-height: 24px;
    color: #0A0F26;
    margin-bottom: 14px;
}

.service-read-card-meta {
    display: block;
    font-weight: 500;
    font-size: 13px;
    color: #8A93B2;
}

.ptplat-content-link {
    display: inline-block;
    font-weight: 700;
    font-size: 16px;
    line-height: 20px;
    text-decoration-line: underline;
    color: #204CA0;
}

/* USE-CASE Feature Switcher - Tabs + Sticky Synced Image */

.pm-feature-input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.pm-feature-shell {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 30px;
    align-items: start;
}

.pm-feature-tabs {
    display: flex;
    flex-direction: column;
}

.pm-feature-tab {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 24px 10px;
    border-bottom: 1px solid #E4EAF7;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

.pm-feature-tab:first-of-type {
    border-top: 1px solid #E4EAF7;
}

.pm-feature-tab-num {
    flex-shrink: 0;
    font-weight: 700;
    font-size: 14px;
    color: #C4CEE6;
}

.pm-feature-tab-text {
    .pm-feature-tab-title {
        display: block;
        font-weight: 700;
        font-size: 18px;
        line-height: 25px;
        color: #0A0F26;
        margin-bottom: 8px;
    }

    small {
        display: none;
        font-weight: 400;
        font-size: 14px;
        line-height: 22px;
        color: #5A648C;
    }
}

#pm-feat-01:checked~.pm-feature-tabs label[for="pm-feat-01"],
#pm-feat-02:checked~.pm-feature-tabs label[for="pm-feat-02"],
#pm-feat-03:checked~.pm-feature-tabs label[for="pm-feat-03"],
#pm-feat-04:checked~.pm-feature-tabs label[for="pm-feat-04"] {
    background: #F7F9FE;
}

#pm-feat-01:checked~.pm-feature-tabs label[for="pm-feat-01"] .pm-feature-tab-num,
#pm-feat-02:checked~.pm-feature-tabs label[for="pm-feat-02"] .pm-feature-tab-num,
#pm-feat-03:checked~.pm-feature-tabs label[for="pm-feat-03"] .pm-feature-tab-num,
#pm-feat-04:checked~.pm-feature-tabs label[for="pm-feat-04"] .pm-feature-tab-num {
    color: #1A4DD6;
}

#pm-feat-01:checked~.pm-feature-tabs label[for="pm-feat-01"] .pm-feature-tab-text small,
#pm-feat-02:checked~.pm-feature-tabs label[for="pm-feat-02"] .pm-feature-tab-text small,
#pm-feat-03:checked~.pm-feature-tabs label[for="pm-feat-03"] .pm-feature-tab-text small,
#pm-feat-04:checked~.pm-feature-tabs label[for="pm-feat-04"] .pm-feature-tab-text small {
    display: block;
    margin-top: 4px;
}

.pm-feature-frame {
    position: sticky;
    top: 120px;
    height: 460px;
    border-radius: 20px;
    overflow: hidden;
    background: #F7F9FE;
    border: 1px solid #E4EAF7;
}

.pm-feature-panel {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 30px;
    opacity: 0;
    transition: opacity 0.4s ease-in-out;
}

#pm-feat-01:checked~.pm-feature-frame .pm-feature-panel-01,
#pm-feat-02:checked~.pm-feature-frame .pm-feature-panel-02,
#pm-feat-03:checked~.pm-feature-frame .pm-feature-panel-03,
#pm-feat-04:checked~.pm-feature-frame .pm-feature-panel-04 {
    opacity: 1;
}

/* USE-CASE Stats - Standalone Light Band (image-independent) */

.pm-stats-band {
    background: #F7F9FE;
}

.pm-stats-row {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 60px;
}

.pm-stat-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.pm-stat-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    width: 48px;
    border-radius: 50%;
    background: #E7F7EE;
    color: #178A54;
    margin-bottom: 16px;
}

.pm-stat-icon svg {
    height: 22px;
    width: 22px;
}

.pm-stat-value {
    display: block;
    font-weight: 800;
    font-size: 44px;
    color: #0A0F26;
    margin-bottom: 8px;
}

.pm-stat-label {
    display: block;
    font-weight: 500;
    font-size: 15px;
    color: #5A648C;
}

.pm-stat-divider {
    width: 1px;
    background: #E4EAF7;
}

/* EBOOK Hero - Lead-Gen Split */

.ebook-hero-grid {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    align-items: center;
    gap: 60px;
}

.ebook-hero-crumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
    font-size: 14px;
    color: #8A93B2;
    margin-bottom: 24px;

    a {
        color: #8A93B2;
        text-decoration: none;
    }
}

.ebook-hero-copy h1 {
    font-weight: 700;
    font-size: 42px;
    line-height: 1.3;
    color: #0A0F26;
    margin-bottom: 20px;

    b {
        color: #1A4DD6;
    }
}

.ebook-hero-copy p {
    font-weight: 400;
    font-size: 16px;
    line-height: 27px;
    color: #5A648C;
}

.ebook-hero-panel {
    position: relative;
}

.ebook-hero-cover {
    display: none;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0px 30px 60px -30px rgba(10, 15, 38, 0.25);
    margin-bottom: -60px;
    position: relative;
    z-index: 1;
}

.ebook-hero-cover img {
    width: 100%;
    display: block;
}

.ebook-form-card {
    position: relative;
    z-index: 2;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 18px;
    box-shadow: 0px 22px 45px -20px rgba(10, 15, 38, 0.18);
    padding: 30px;
    margin-left: 30px;
}

.ebook-form-card h3 {
    font-weight: 700;
    font-size: 19px;
    color: #0A0F26;
    margin-bottom: 18px;
}

/* EBOOK Takeaways - Numbered Horizontal Strip */

.ebook-takeaway-row {
    display: flex;
    align-items: stretch;
    gap: 0;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 20px;
    overflow: hidden;
}

.ebook-takeaway {
    flex: 1;
    padding: 40px 32px;
    border-left: 1px solid #E4EAF7;
    position: relative;
}

.ebook-takeaway:first-child {
    border-left: none;
}

.ebook-takeaway::before {
    content: "";
    position: absolute;
    top: 0;
    left: -1px;
    width: 3px;
    height: 0;
    background: #1A4DD6;
    transition: height 0.35s ease-in-out;
}

.ebook-takeaway:hover::before {
    height: 100%;
}

.ebook-takeaway-num {
    display: block;
    font-weight: 800;
    font-size: 40px;
    line-height: 1;
    color: #E4EAF7;
    margin-bottom: 20px;
}

.ebook-takeaway p {
    font-weight: 700;
    font-size: 18px;
    line-height: 27px;
    color: #0A0F26;
    margin-bottom: 0;
}

/* EBOOK Narrative - Light Editorial Split */

.ebook-narrative {
    background: #FFFFFF;
}

.ebook-narrative-grid {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    align-items: center;
    gap: 30px;
}

.ebook-narrative-visual {
    position: relative;
    height: 380px;
    border-radius: 20px;
    background: linear-gradient(145deg, #E9EFFF 0%, #F7F9FE 100%);
    border: 1px solid #E4EAF7;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    overflow: hidden;
}

.ebook-narrative-visual img {
    max-height: 95%;
    width: auto;
    display: block;
}

.ebook-narrative-eyebrow {
    display: inline-block;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: 1.5px;
    color: #1A4DD6;
    margin-bottom: 20px;
}

.ebook-narrative-copy h2 {
    font-weight: 700;
    font-size: 30px;
    line-height: 1.4;
    color: #0A0F26;
    margin-bottom: 24px;

    b {
        color: #1A4DD6;
    }
}

.ebook-narrative-copy p {
    font-weight: 400;
    font-size: 16px;
    line-height: 27px;
    color: #5A648C;
}

/* EBOOK Brand Statement - Gradient Panel with Capability Chips */

.ebook-brand-panel {
    position: relative;
    background: linear-gradient(135deg, #0A0F26 0%, #14204D 55%, #1A4DD6 140%);
    border-radius: 28px;
    padding: 64px;
    overflow: hidden;
}

.ebook-brand-blob {
    position: absolute;
    border-radius: 100%;
    background: radial-gradient(74.33% 74.33% at 50% 45%, rgba(127, 160, 255, 0.35) 0%, rgba(127, 160, 255, 0) 70%);
    z-index: 0;
}

.ebook-brand-blob-1 {
    width: 380px;
    height: 380px;
    top: -160px;
    right: -60px;
}

.ebook-brand-blob-2 {
    width: 260px;
    height: 260px;
    bottom: -140px;
    left: 10%;
}

.ebook-brand-panel-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    align-items: center;
    gap: 50px;
}

.ebook-brand-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.ebook-brand-mark img {
    height: 30px;
    width: auto;
    filter: brightness(0) invert(1);
}

.ebook-brand-panel-copy h3 {
    font-weight: 700;
    font-size: 26px;
    color: #FFFFFF;
    margin: 20px 0 14px;
}

.ebook-brand-panel-copy p {
    font-weight: 600;
    font-size: 22px;
    line-height: 1.6;
    color: #FFFFFF;
}

.ebook-brand-chips {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.ebook-brand-chip {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 20px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 14px;
    font-weight: 600;
    font-size: 15px;
    color: #FFFFFF;
    transition: all 0.3s ease-in-out;
}

.ebook-brand-chip:hover {
    background: rgba(255, 255, 255, 0.14);
    transform: translateX(4px);
}

.ebook-brand-chip-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    width: 36px;
    flex-shrink: 0;
    border-radius: 50%;
    background: rgba(127, 160, 255, 0.2);
    color: #7FA0FF;
}

.ebook-brand-chip-icon svg {
    height: 18px;
    width: 18px;
}

/* EBOOK Final CTA - Bold Full-Bleed Dark with Geometric Accents */

.ebook-final-cta {
    position: relative;
    background: linear-gradient(135deg, #0A0F26 0%, #14204D 55%, #1A4DD6 140%);
    overflow: hidden;
}

.ebook-final-cta-grid-lines {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
    background-size: 48px 48px;
    z-index: 0;
}

.ebook-final-cta-shape {
    position: absolute;
    z-index: 0;
}

.ebook-final-cta-shape-1 {
    width: 220px;
    height: 220px;
    border: 2px solid rgba(127, 160, 255, 0.25);
    border-radius: 40px;
    transform: rotate(20deg);
    top: -60px;
    right: 8%;
}

.ebook-final-cta-shape-2 {
    width: 140px;
    height: 140px;
    border-radius: 100%;
    background: radial-gradient(74.33% 74.33% at 50% 45%, rgba(127, 160, 255, 0.4) 0%, rgba(127, 160, 255, 0) 70%);
    bottom: -40px;
    left: 6%;
}

.ebook-final-cta-shell {
    position: relative;
    z-index: 1;
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
}

.ebook-final-cta-shell h2 {
    font-weight: 800;
    font-size: 36px;
    line-height: 1.3;
    color: #FFFFFF;
    margin-bottom: 16px;

    b {
        color: #7FA0FF;
    }
}

.ebook-final-cta-shell p {
    font-weight: 400;
    font-size: 16px;
    line-height: 27px;
    color: #B7C0DD;
    margin-bottom: 0;
}

.ebook-cta-pill {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #1A4DD6;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 16px;
    padding: 16px 28px;
    border-radius: 50px;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0px 20px 40px -14px rgba(26, 77, 214, 0.6);
    transition: all 0.3s ease-in-out;
}

.ebook-cta-pill-arrow {
    transition: transform 0.3s ease-in-out;
}

.ebook-cta-pill:hover {
    background: #FFFFFF;
    color: #0A0F26;
}

.ebook-cta-pill:hover .ebook-cta-pill-arrow {
    transform: translateX(4px);
}

/* SOLUTION Products - Bento Card Showcase */

.solution-products-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: stretch;
}

.solution-product-card {
    display: flex;
    flex-direction: column;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 20px;
    overflow: hidden;
    transition: all 0.3s ease-in-out;

    &:hover {
        transform: translateY(-6px);
        border-color: #C9D8FF;
        box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
    }
}

.solution-product-card-img {
    aspect-ratio: 4 / 3;
    overflow: hidden;

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }
}

.solution-product-card-body {
    padding: 26px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.solution-product-card-eyebrow {
    font-weight: 600;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #204CA0;
    margin-bottom: 5px;
}

.solution-product-card-body h3 {
    font-weight: 700;
    font-size: 19px;
    line-height: 26px;
    color: #0A0F26;
    margin-bottom: 10px;
}

.solution-product-card-body p {
    font-weight: 400;
    font-size: 15px;
    line-height: 24px;
    color: #5A648C;
    margin-bottom: 0;
    flex-grow: 1;
}

.solution-product-card-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 700;
    font-size: 14px;
    color: #204CA0;
}

/* SOLUTION/SERVICE Benefits - Dark Ghost-Numeral Grid */

.solution-benefits .row,
.ptservice-list .row {
    row-gap: 30px;
}

.solution-benefits .about-mvv-panel-num {
    color: rgba(255, 255, 255, 0.12);
}

.solution-benefits h3 {
    color: #FFFFFF;
    font-weight: 700;
    font-size: 22px;
    margin-bottom: 12px;
}

.solution-benefits p {
    color: #B7C0DD;
    font-size: 16px;
    line-height: 26px;
}

/* SOLUTION Stats - Unified Grouped Panel */

.solution-stats-panel {
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 20px;
    box-shadow: 0px 24px 50px -34px rgba(11, 18, 48, 0.3);
    padding: 40px 20px 0;
}

.solution-stats-groups {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    text-align: center;
    margin-bottom: 26px;
}

.solution-stats-groups span {
    font-weight: 700;
    font-size: 14px;
    color: #204CA0;
}

.solution-stats-numbers {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, auto);
    grid-auto-flow: column;
    row-gap: 26px;
    padding-bottom: 34px;
}

.solution-stats-numbers>div {
    padding: 0 20px;
    text-align: center;
    border-right: 1px solid #E4EAF7;
}

.solution-stats-numbers>div:nth-last-child(-n+2) {
    border-right: none;
}

.solution-stats-numbers h3 {
    white-space: nowrap;
}

.solution-stats-numbers h3 {
    font-weight: 800;
    font-size: 38px;
    color: #204CA0;
    margin-bottom: 6px;
}

.solution-stats-numbers>div>span {
    font-weight: 600;
    font-size: 13px;
    line-height: 18px;
    color: #5A648C;
    display: block;
}

/* SOLUTION Statement Card - Editorial Callout */

.solution-statement-card {
    max-width: 780px;
    margin-inline: auto;
    text-align: center;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 24px;
    box-shadow: 0px 30px 60px -34px rgba(11, 18, 48, 0.35);
    padding: 56px 48px;
}

.solution-statement-icon {
    width: 56px;
    height: 56px;
    border-radius: 100%;
    background: rgba(32, 76, 160, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 22px;

    img {
        width: 26px;
        height: 26px;
    }
}

.solution-statement-card h2 {
    font-weight: 700;
    font-size: 32px;
    line-height: 1.3;
    color: #0A0F26;
    margin-bottom: 18px;
}

.solution-statement-card p {
    font-weight: 400;
    font-size: 17px;
    line-height: 28px;
    color: #5A648C;
    margin-bottom: 0;
}

/* CONNECT Testimonial - Editorial Pull Quote */

.connect-testi-card {
    position: relative;
}

.connect-testi-mark {
    display: block;
    font-family: Georgia, serif;
    font-weight: 700;
    font-size: 90px;
    line-height: 1;
    color: #E4EAF7;
    margin-bottom: -10px;
}

.connect-testi-quote {
    font-weight: 500;
    font-size: 26px;
    line-height: 1.5;
    color: #0A0F26;
    margin-bottom: 30px;
}

.connect-testi-person {
    display: inline-flex;
    align-items: center;
    gap: 14px;
}

.connect-testi-symbol {
    color: #204CA0;
    margin-right: 4px;
}

.connect-testi-info {

    strong {
        display: block;
        font-weight: 700;
        font-size: 15px;
        color: #0A0F26;
    }

    small {
        display: block;
        font-weight: 400;
        font-size: 13px;
        color: #5A648C;
    }
}

/* CONNECT Demo - Interactive Live Device Frame */

.connect-demo-shell {
    position: relative;
    max-width: 780px;
    margin-inline: auto;
}

.connect-demo-input {
    position: fixed;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.connect-demo-frame {
    background: #0A0F26;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0px 30px 60px -30px rgba(11, 18, 48, 0.4);
    margin-bottom: 30px;
}

.connect-demo-chrome {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.connect-demo-dot {
    width: 10px;
    height: 10px;
    border-radius: 100%;
}

.connect-demo-dot-red {
    background: #D64545;
}

.connect-demo-dot-yellow {
    background: rgba(255, 255, 255, 0.25);
}

.connect-demo-dot-green {
    background: #22B36B;
}

.connect-demo-url {
    margin-left: 14px;
    padding: 6px 16px;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 999px;
    font-weight: 500;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.5);
}

.connect-demo-live {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
    font-weight: 700;
    font-size: 11px;
    letter-spacing: 0.5px;
    color: #D64545;

    i {
        width: 6px;
        height: 6px;
        border-radius: 100%;
        background: #D64545;
        animation: connectDemoLiveBlink 1.4s ease-in-out infinite;
    }
}

@keyframes connectDemoLiveBlink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.25;
    }
}

.connect-demo-screens {
    display: grid;
    aspect-ratio: 16 / 6;
    background: #F7F9FE;
}

.connect-demo-screen {
    grid-area: 1 / 1;
    display: grid;
    place-items: center;
    padding: 16px;
    opacity: 0;
    pointer-events: none;
    transform: scale(0.97);
    transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;

    img {
        max-height: 100%;
        max-width: 100%;
        width: auto;
    }
}

#connect-demo-01:checked~.connect-demo-frame .connect-demo-screen-01,
#connect-demo-02:checked~.connect-demo-frame .connect-demo-screen-02,
#connect-demo-03:checked~.connect-demo-frame .connect-demo-screen-03 {
    opacity: 1;
    pointer-events: auto;
    transform: none;
    z-index: 1;
}

.connect-demo-tabs {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 4px;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 16px;
    padding: 6px;
}

.connect-demo-tab-indicator {
    position: absolute;
    top: 6px;
    left: 6px;
    width: calc(33.333% - 4px);
    height: calc(100% - 12px);
    background: #204CA0;
    border-radius: 10px;
    transition: transform 0.4s cubic-bezier(0.65, 0, 0.35, 1);
    z-index: 0;
}

#connect-demo-01:checked~.connect-demo-tabs .connect-demo-tab-indicator {
    transform: translateX(0%);
}

#connect-demo-02:checked~.connect-demo-tabs .connect-demo-tab-indicator {
    transform: translateX(100%);
}

#connect-demo-03:checked~.connect-demo-tabs .connect-demo-tab-indicator {
    transform: translateX(200%);
}

.connect-demo-tab {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 16px 14px;
    border-radius: 10px;
    cursor: pointer;
}

.connect-demo-tab-num {
    flex-shrink: 0;
    font-weight: 700;
    font-size: 12px;
    color: #A6B0CC;
    transition: color 0.3s ease-in-out;
}

.connect-demo-tab-text {
    strong {
        display: block;
        font-weight: 700;
        font-size: 15px;
        color: #5A648C;
        margin-bottom: 3px;
        transition: color 0.3s ease-in-out;
    }

    small {
        display: block;
        font-weight: 400;
        font-size: 12px;
        line-height: 17px;
        color: #A6B0CC;
        transition: color 0.3s ease-in-out;
    }
}

#connect-demo-01:checked~.connect-demo-tabs label[for="connect-demo-01"] .connect-demo-tab-num,
#connect-demo-02:checked~.connect-demo-tabs label[for="connect-demo-02"] .connect-demo-tab-num,
#connect-demo-03:checked~.connect-demo-tabs label[for="connect-demo-03"] .connect-demo-tab-num {
    color: #8FB2FF;
}

#connect-demo-01:checked~.connect-demo-tabs label[for="connect-demo-01"] .connect-demo-tab-text strong,
#connect-demo-02:checked~.connect-demo-tabs label[for="connect-demo-02"] .connect-demo-tab-text strong {
    color: #FFFFFF;
}

#connect-demo-03:checked~.connect-demo-tabs label[for="connect-demo-03"] .connect-demo-tab-text strong {
    color: #FFFFFF;
}

#connect-demo-01:checked~.connect-demo-tabs label[for="connect-demo-01"] .connect-demo-tab-text small,
#connect-demo-02:checked~.connect-demo-tabs label[for="connect-demo-02"] .connect-demo-tab-text small,
#connect-demo-03:checked~.connect-demo-tabs label[for="connect-demo-03"] .connect-demo-tab-text small {
    color: rgba(255, 255, 255, 0.7);
}

/* CONNECT Features - Expanding Accordion */

.connect-features-accordion {
    max-width: 880px;
    margin-inline: auto;
}

.connect-features-input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.connect-features-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.connect-features-head {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 26px 10px;
    cursor: pointer;
}

.connect-features-head-num {
    flex-shrink: 0;
    font-weight: 700;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.35);
}

.connect-features-head-text {
    flex: 1;

    strong {
        display: block;
        font-weight: 700;
        font-size: 19px;
        color: #FFFFFF;
        margin-bottom: 4px;
    }

    small {
        display: block;
        font-weight: 400;
        font-size: 14px;
        color: #B7C0DD;
    }
}

.connect-features-chevron {
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 100%;
    transition: transform 0.35s ease-in-out, background 0.3s ease-in-out;

    &::before {
        content: "";
        width: 8px;
        height: 8px;
        border-right: 2px solid #B7C0DD;
        border-bottom: 2px solid #B7C0DD;
        transform: rotate(45deg);
        margin-top: -4px;
    }
}

.connect-features-input:checked~.connect-features-head .connect-features-chevron {
    transform: rotate(180deg);
    background: #204CA0;
    border-color: #204CA0;

    &::before {
        border-color: #FFFFFF;
    }
}

.connect-features-input:checked~.connect-features-head .connect-features-head-num {
    color: #8FB2FF;
}

.connect-features-panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s ease-in-out;
}

.connect-features-input:checked~.connect-features-panel {
    grid-template-rows: 1fr;
}

.connect-features-panel-inner {
    overflow: hidden;
}

.connect-features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    padding: 0 10px 30px;
}

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

.connect-features-chip {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;

    img {
        flex-shrink: 0;
        width: 44px;
        height: 44px;
        padding: 8px;
        background: rgba(255, 255, 255, 0.06);
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 10px;
        box-sizing: border-box;
        object-fit: contain;
    }

    strong {
        display: block;
        font-weight: 700;
        font-size: 14px;
        color: #FFFFFF;
        margin-bottom: 4px;
    }

    p {
        font-weight: 400;
        font-size: 13px;
        line-height: 19px;
        color: #B7C0DD;
        margin-bottom: 0;
    }
}

/* CONNECT Results - Spotlight Numbers + Ambient Ticker */

.connect-results-shell {
    max-width: 720px;
    margin-inline: auto;
    text-align: center;
}

.connect-results-input {
    position: fixed;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.connect-results-copy .pttitle-design {
    display: flex;
    justify-content: center;
}

.connect-results-panels {
    display: grid;
    margin-bottom: 30px;
}

.connect-results-panel {
    grid-area: 1 / 1;
    opacity: 0;
    pointer-events: none;
    transform: translateY(14px);
    transition: opacity 0.45s ease-in-out, transform 0.45s ease-in-out;

    h2 {
        font-weight: 700;
        font-size: 32px;
        line-height: 1.3;
        color: #0A0F26;
        margin-bottom: 16px;
    }

    p {
        font-weight: 400;
        font-size: 16px;
        line-height: 25px;
        color: #5A648C;
        max-width: 480px;
        margin: 0 auto 34px;
    }
}

/* The template prefixes these ids with the product slug, so they are matched by
   position rather than by id - otherwise only the "connect" product would ever
   reveal a panel. Positional pairing also lifts the old three-panel ceiling. */
.connect-results-input:nth-of-type(1):checked~.connect-results-copy .connect-results-panel:nth-of-type(1),
.connect-results-input:nth-of-type(2):checked~.connect-results-copy .connect-results-panel:nth-of-type(2),
.connect-results-input:nth-of-type(3):checked~.connect-results-copy .connect-results-panel:nth-of-type(3),
.connect-results-input:nth-of-type(4):checked~.connect-results-copy .connect-results-panel:nth-of-type(4),
.connect-results-input:nth-of-type(5):checked~.connect-results-copy .connect-results-panel:nth-of-type(5),
.connect-results-input:nth-of-type(6):checked~.connect-results-copy .connect-results-panel:nth-of-type(6),
.connect-results-input:nth-of-type(7):checked~.connect-results-copy .connect-results-panel:nth-of-type(7),
.connect-results-input:nth-of-type(8):checked~.connect-results-copy .connect-results-panel:nth-of-type(8) {
    opacity: 1;
    pointer-events: auto;
    transform: none;
    z-index: 1;
}

.connect-results-carousel {
    position: relative;
}

.connect-results-arrow {
    position: absolute;
    top: auto;
    bottom: 75px;
    z-index: 2;
    width: 44px;
    height: 44px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #204CA0;
    border: 1px solid #204CA0;
    border-radius: 100%;
    box-shadow: 0px 14px 30px -18px rgba(11, 18, 48, 0.5);
    font-family: inherit;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: #FFFFFF;
    cursor: pointer;
    transition: all 0.3s ease-in-out;

    &:hover {
        background: #0A0F26;
        color: #FFFFFF;
        border-color: #204CA0;
    }
}

.connect-results-arrow-prev {
    left: -22px;
}

.connect-results-arrow-next {
    right: -22px;
}

.connect-results-spotlight {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 0;
    background: #F7F9FE;
    border: 1px solid #E4EAF7;
    border-radius: 20px;
    padding: 34px 10px;
    box-shadow: 0px 24px 50px -34px rgba(11, 18, 48, 0.3);

    div {
        flex: 1;
        padding: 0 30px;

        &:first-child {
            border-right: 1px solid #E4EAF7;
        }
    }

    h3 {
        font-weight: 800;
        font-size: 44px;
        color: #204CA0;
        margin-bottom: 6px;
    }

    >div>span {
        font-weight: 600;
        font-size: 14px;
        color: #5A648C;
    }
}

.connect-results-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    label {
        width: 10px;
        height: 10px;
        border-radius: 999px;
        background: #C9D8FF;
        cursor: pointer;
        transition: all 0.3s ease-in-out;
    }
}

.connect-results-input:nth-of-type(1):checked~.connect-results-copy .connect-results-dots label:nth-of-type(1),
.connect-results-input:nth-of-type(2):checked~.connect-results-copy .connect-results-dots label:nth-of-type(2),
.connect-results-input:nth-of-type(3):checked~.connect-results-copy .connect-results-dots label:nth-of-type(3),
.connect-results-input:nth-of-type(4):checked~.connect-results-copy .connect-results-dots label:nth-of-type(4),
.connect-results-input:nth-of-type(5):checked~.connect-results-copy .connect-results-dots label:nth-of-type(5),
.connect-results-input:nth-of-type(6):checked~.connect-results-copy .connect-results-dots label:nth-of-type(6),
.connect-results-input:nth-of-type(7):checked~.connect-results-copy .connect-results-dots label:nth-of-type(7),
.connect-results-input:nth-of-type(8):checked~.connect-results-copy .connect-results-dots label:nth-of-type(8) {
    width: 26px;
    background: #204CA0;
}

.connect-results-ticker {
    margin-top: 60px;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}

.connect-results-chip {
    padding: 12px 22px;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 999px;
    font-weight: 600;
    font-size: 14px;
    color: #0A0F26;
    white-space: nowrap;
}

/* PRODUCT Final CTA - reusable verbatim across every product page */

.product-cta-shell {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 60px;
}

.product-cta-copy h2 {
    font-weight: 700;
    font-size: 36px;
    line-height: 1.3;
    color: #FFFFFF;
    margin: 16px 0 18px;
}

.product-cta-copy h4 {
    color: #FFFFFF;
    font-size: 18px;
    margin-top: 30px;
    margin-bottom: 15px;
}

.product-cta-copy>p {
    font-weight: 400;
    font-size: 17px;
    line-height: 27px;
    color: #B7C0DD;
    max-width: 460px;
    margin-bottom: 30px;
}

.product-cta-points {
    list-style: none;
    margin: 0;
    padding: 0;

    li {
        display: flex;
        align-items: center;
        gap: 12px;
        font-weight: 500;
        font-size: 15px;
        color: #FFFFFF;
        padding: 12px 0;
        border-top: 1px solid rgba(255, 255, 255, 0.1);

        &:last-child {
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        }
    }
}

.product-cta-check {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(34, 179, 107, 0.15);
    color: #22B36B;
    font-size: 11px;
    font-weight: 700;
    border-radius: 100%;
}

.product-cta-form {
    background: #FFFFFF;
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0px 30px 60px -30px rgba(0, 0, 0, 0.5);

    h3 {
        font-weight: 700;
        font-size: 22px;
        color: #0A0F26;
        margin-bottom: 22px;
    }

    .ptmdef-btn {
        width: 100%;
        text-align: center;
        border: none;
        cursor: pointer;
    }
}

/* CONNECT Devices - Compatibility Rail */

.connect-devices-rail {
    position: relative;
    display: flex;
    justify-content: space-between;
    max-width: 720px;
    margin-inline: auto;

    &::before {
        content: "";
        position: absolute;
        top: 34px;
        left: 34px;
        right: 34px;
        height: 1px;
        background: rgba(255, 255, 255, 0.15);
        z-index: 0;
    }
}

.connect-devices-node {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;

    p {
        font-weight: 600;
        font-size: 14px;
        color: #FFFFFF;
        margin-bottom: 0;
    }
}

.connect-devices-icon {
    width: 68px;
    height: 68px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #0A0F26;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 100%;

    img {
        max-width: 30px;
        max-height: 30px;
    }
}

footer {
    padding: 65px 0 40px;
}

.ptf-desc p {
    font-weight: 400;
    font-size: 14.5px;
    line-height: 23px;
    color: #9AA6D4;
    margin: 15px 0 20px;
}

.ptsocial-icon {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.ptsocial-icon li a {
    height: 34px;
    width: 34px;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 9px;
    display: grid;
    place-items: center;

    img,
    svg {
        max-width: 18px;
        max-height: 18px;
    }

    &:hover,
    &:active,
    &:focus {
        background: rgba(255, 255, 255, 1);

        svg path {
            fill: #0A0F26;
        }
    }
}

.pf-title h6 {
    font-weight: 500;
    font-size: 15px;
    line-height: 19px;
    color: #FFFFFF;
    margin-bottom: 14px;
}

.pf-link .menu-item {
    display: flex;

    &+.menu-item {
        margin-top: 10px;
    }
}

.pf-link .menu-item a {
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    color: #9AA6D4;

    &:hover,
    &:active,
    &:focus {
        color: #FFFFFF;
    }
}

.ft-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    margin-top: 40px;
    padding-top: 22px;
}

.pf-copyright p {
    font-weight: 400;
    font-size: 13px;
    line-height: 18px;
    color: #6B7597;
    margin-bottom: 0;

    a {
        color: #6B7597;
        transition: all 0.35s ease-in-out;

        &:hover,
        &:active,
        &:focus {
            color: #FFFFFF;
        }
    }
}

/* Home Step Form */
.ptquote-card {
    background: #FFFFFF;
    overflow: hidden;
    border: 1px solid #E4EAF7;
    box-shadow: 0px 30px 70px -46px rgba(11, 18, 48, 0.3);
    border-radius: 22px;

}

.ptquote-steps {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #FAFBFE;
    border-bottom: 1px solid #EEF1F8;
    padding: 20px 40px;
}

.ptquote-step {
    display: grid;
    grid-template-columns: 26px 1fr;
    align-items: center;
    gap: 12px;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    color: #8A93B2;
}

.ptquote-step.active,
.ptquote-step.is-done {
    color: #0A0F26;
}

.ptquote-step span {
    height: 26px;
    width: 100%;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #E4EAF7;
    font-weight: 700;
    font-size: 13px;
    line-height: 16px;
    color: #8A93B2;
}

.ptquote-step.active span,
.ptquote-step.is-done span {
    background: #204CA0;
    color: #FFFFFF;
}

.ptquote-step.is-clickable {
    cursor: pointer;
}

.ptquote-body {
    padding: 30px;
}

.ptquote-body h3 {
    font-weight: 700;
    font-size: 22px;
    line-height: 28px;
    color: #0A0F26;
    margin-bottom: 30px;
}

.ptquote-body h3 small {
    font-weight: 400;
    font-size: 15px;
    line-height: 20px;
    color: #8A98BC;
    margin-left: 10px;
}

.ptquote-panel {
    display: none;
}

.ptquote-panel.is-active {
    display: block;
    animation: ptquote-fade .35s ease-in-out;
}

@keyframes ptquote-fade {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.ptquote-options {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
}

.ptquote-options button {
    position: relative;
    padding: 15px 25px;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    color: #3A4463;
    cursor: pointer;
    transition: all .3s ease-in-out;
}

.ptquote-options button:hover,
.ptquote-options button:focus {
    border-color: #204CA0;
    color: #204CA0;
    box-shadow: 0px 16px 35px -32px rgba(32, 76, 160, .8);
}

.ptquote-options button.is-selected {
    border-color: #204CA0;
    background: #F4F7FE;
    color: #204CA0;
    box-shadow: 0px 16px 35px -32px rgba(32, 76, 160, .8);
}

.ptquote-options button svg,
.ptquote-options button img {
    width: 30px;
    height: 30px;
    object-fit: contain;
}

.ptquote-options button path {
    transition: all 0.35s ease-in-out;
}

.ptquote-options button.is-selected path {
    fill: #204CA0;
}

.ptquote-error {
    display: none;
    margin: 22px 0 0;
    font-size: 12px;
    line-height: 18px;
    padding: 6px 10px;
    border-radius: 6px;
    color: #000;
    background-color: #FFAFBC;
}

.ptquote-error.is-visible {
    display: block;
}

.ptquote-action {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 14px;
    margin-top: 52px;
}

.ptquote-action button {
    border: 0;
    cursor: pointer;
}

.ptquote-action .ptmout-btn {
    border: none;
}

.ptquote-back {
    margin-right: auto;
    background: #3A4463;
    color: #FFFFFF;
}

.ptquote-result {
    height: 100%;
    background: #204CA0;
    border-radius: 20px;
}

.ptquote-summary {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    padding: 30px;

}

.ptquote-summary li {
    font-weight: 700;
    font-size: 18px;
    line-height: 28px;
    color: #FFFFFF;
}

.ptquote-summary small {
    display: block;
    font-weight: 400;
    font-size: 13px;
    line-height: 16px;
    color: #CBD8FF;
    margin-bottom: 4px;
}

.ptquote-form {
    background: #F7F9FE;
    border: 1px solid #E4EAF7;
    border-radius: 20px;
    padding: 30px;
}

.ptquote-form h4 {
    font-weight: 700;
    font-size: 20px;
    line-height: 25px;
    color: #0A0F26;
    margin-bottom: 10px;
}

.ptquote-form p {
    font-weight: 400;
    font-size: 13px;
    line-height: 16px;
    color: #5A648C;
    margin-bottom: 10px;
}

.ptquote-note p {
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    text-align: center;
    color: #8A93B2;
    margin-bottom: 0;
}

/* Home Faq Sextion */

.ptfqacco .accordion-item {
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 14px;
    overflow: hidden;

    &+.accordion-item {
        margin-top: 12px;
    }
}

.ptfqacco .accordion-button {
    background-color: transparent;
    box-shadow: none !important;
    font-weight: 500;
    font-size: 17px;
    line-height: 21px;
    color: #0A0F26;
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 17px 25px;
    border-radius: 0 !important;

    &::after {
        display: block;
        height: 11px;
        width: 11px;
        background-image: url("data:image/svg+xml,%3Csvg width='11' height='11' viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.59999 10.032V6.38402H-1.11461e-05V3.64802H3.59999V1.52588e-05H6.43199V3.64802H10.032V6.38402H6.43199V10.032H3.59999Z' fill='%238A93B2'/%3E%3C/svg%3E%0A");
        background-position: center;
        background-repeat: no-repeat;
        background-size: 100%;
    }
}

.ptfqacco .accordion-button:not(.collapsed) {
    &::after {
        height: 3px;
        background-image: url("data:image/svg+xml,%3Csvg width='11' height='3' viewBox='0 0 11 3' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-1.89543e-05 2.73628V0.000281096H10.752V2.73628H-1.89543e-05Z' fill='%231A4DD6'/%3E%3C/svg%3E%0A");
    }
}

.ptfqacco .accordion-body {
    padding: 0 45px 25px 25px;
}

.ptfqacco .accordion-body p {
    font-weight: 400;
    font-size: 15px;
    line-height: 26px;
    color: #4A5578;
    margin-bottom: 16px;
}

.ptfqacco .accordion-body ul,
.ptfqacco .accordion-body ol {
    margin: 0 0 16px;
    padding-left: 22px;
}

.ptfqacco .accordion-body li {
    display: list-item;
    list-style: disc;
    font-weight: 400;
    font-size: 15px;
    line-height: 24px;
    color: #4A5578;
    margin-bottom: 8px;
}

.ptfqacco .accordion-body ol li {
    list-style: decimal;
}

.ptfqacco .accordion-body>*:last-child {
    margin-bottom: 0;
}

.ptplatformtabmain {
    display: none;
    margin-bottom: 30px;

    .ptplatformtab {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 6px;
        background: #F7F9FE;
        border: 1px solid #E4EAF7;
        border-radius: 50px;
        padding: 4px;

        li {
            border-radius: 50px;
            padding: 8px 15px;
            font-weight: 700;
            font-size: 12px;
            line-height: 16px;
            letter-spacing: 1.5px;
            color: #204CA0;
            text-transform: uppercase;
            cursor: pointer;
            text-align: center;
            transition: all 0.35s ease-in-out;

            &.active,
            &:hover {
                background-color: #204CA0;
                color: #FFFFFF;
            }
        }
    }
}

.ptindutabs-prnext {
    display: none;
}

/* INNER PAGE Banner - content left, circular visual right (reusable across inner pages) */

.ptminner-banner {
    position: relative;
    padding-top: 70px;
    z-index: 0;
}

.ptminner-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    bottom: calc(400px / 2);
    z-index: -1;
    background-color: #EEF2FF;
}

.ptminner-banner-grid {
    display: grid;
    grid-template-columns: 6fr 5fr;
    align-items: center;
    gap: 50px;
}

.ptminner-banner-crumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.5);
    margin-bottom: 18px;

    a {
        color: rgba(255, 255, 255, 0.5);
        transition: color 0.3s ease-in-out;

        &:hover {
            color: #8FB2FF;
        }
    }

    span:last-child {
        color: #8FB2FF;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}

.ptminner-banner-crumb span:nth-child(3) {
    text-wrap: nowrap;
}

.ptminner-banner-content h1 {
    color: #FFFFFF;
}

.ptminner-banner-content p {
    color: #B7C0DD;
}

.ptminner-banner-content p:last-child {
    margin-bottom: 0;
}

.ptminner-banner-content .ptmout-btn {
    background: #FFFFFF;
}

.ptminner-banner-visual {
    position: relative;
    max-width: 460px;
    margin-inline: auto;
    aspect-ratio: 1 / 1;
    display: grid;
    place-items: center;
}

.ptminner-banner-circle {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 100%;
    overflow: hidden;
    border: 6px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0px 30px 60px -20px rgba(0, 0, 0, 0.6);

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center 15%;
        transition: transform 0.6s ease-in-out;
    }

    &:hover img {
        transform: scale(1.06);
    }
}

/* INNER PAGE Hero - light background + split layout variant (image right).
   Add "ptminner-banner-light" alongside "ptminner-banner" on the section,
   and use ptminner-hero-row/left/right/image-frame instead of the
   ptminner-banner-grid/visual/circle markup for the split-with-image-right layout. */

.ptminner-banner-light {
    padding-bottom: 70px;
}

.ptminner-banner-light::before {
    bottom: 0;
}

.ptminner-banner-light .ptminner-banner-crumb {
    color: #5A648C;
}

.ptminner-banner-light .ptminner-banner-crumb a {
    color: #5A648C;
}

.ptminner-banner-light .ptminner-banner-crumb a:hover {
    color: #204CA0;
}

.ptminner-banner-light .ptminner-banner-crumb span:last-child {
    color: #204CA0;
}

.ptminner-banner-light .ptminner-banner-content h1 {
    color: #0A0F26;
    margin-bottom: 20px;
}

.ptminner-banner-content h1 span {
    font-weight: 700;
}

.ptminner-banner-light .ptminner-banner-content p {
    color: #5A648C;
}

.news-share {
    display: flex;
    align-items: center;
    gap: 10px;
}

.news-grid,
.recent-blogli {
    row-gap: 30px;
}

.news-share a {
    height: 34px;
    width: 34px;
    background: rgba(10, 15, 38, 0.06);
    border-radius: 9px;
    display: grid;
    place-items: center;
    transition: background 0.3s ease-in-out;
}

.news-share a svg {
    max-width: 16px;
    max-height: 16px;
}

.news-share a:hover {
    background: #204CA0;
}

.news-share a:hover svg path {
    fill: #FFFFFF;
}

.ptminner-hero-row {
    display: grid;
    grid-template-columns: 5fr 6fr;
    gap: 50px;
    align-items: center;
}

.ptminner-hero-left h1 {
    margin-bottom: 20px;
}

.ptminner-hero-left p {
    margin-bottom: 0;
}

.ptminner-hero-image-frame {
    width: 100%;
    height: 420px;
    margin-inline: auto;
}

.ptminner-hero-image-frame img {
    width: 100%;
    border-radius: 20px;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    filter: drop-shadow(0px 30px 30px rgba(11, 18, 48, 0.35));

}


/* ABOUT Story - Bento Grid */

.about-story-grid {
    display: grid;
    grid-template-columns: 7fr 5fr;
    align-items: center;
    gap: 60px;
}

.about-story-narrative h4 {
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.12em;
    color: #204CA0;
    margin-bottom: 14px;
}

.about-story-narrative h2 {
    font-size: 34px;
    line-height: 1.25;
    color: #0A0F26;
    margin-bottom: 22px;
}

/* .about-story-narrative h2's color would otherwise tie with .white-pttitle h2 on
   specificity and win on source order, rendering dark navy text invisible against a
   dark section background (e.g. Features listing's final CTA). */
.about-story-narrative .white-pttitle h2 {
    color: #FFFFFF;
}

.about-story-narrative p {
    font-weight: 400;
    font-size: 16px;
    line-height: 26px;
    color: #5A648C;
    margin-bottom: 18px;

    &:last-of-type {
        margin-bottom: 30px;
    }
}

.about-story-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    font-size: 16px;
    color: #204CA0;
    padding-bottom: 4px;
    border-bottom: 2px solid #C9D8FF;
    transition: all 0.3s ease-in-out;

    svg {
        transition: transform 0.3s ease-in-out;
    }

    &:hover {
        color: #0A0F26;
        border-color: #204CA0;

        svg {
            transform: translateX(4px);
        }
    }
}

.about-story-visual {
    position: relative;
    max-width: 320px;
    margin-inline: auto;
}

.about-story-photo {
    aspect-ratio: 3 / 4;

    img {
        border-radius: 0 30px 0 30px;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center 15%;
        transition: transform 0.6s ease-in-out;
        filter: drop-shadow(0px 30px 30px rgba(11, 18, 48, 0.35));
    }

    &:hover img {
        transform: scale(1.05);
    }
}

.about-story-chip {
    position: absolute;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 14px;
    padding: 14px 22px;
    box-shadow: 0px 18px 40px -20px rgba(11, 18, 48, 0.3);

    span {
        font-weight: 700;
        font-size: 15px;
        color: #0A0F26;
    }
}

.about-story-chip-company {
    top: 30px;
    left: -30px;
}

.about-story-chip-global {
    bottom: 30px;
    right: -20px;
}

.about-story-timeline {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    margin-top: 50px;
    border-top: 1px solid #E4EAF7;
    padding-top: 50px;
}

.about-story-milestone {
    text-align: center;
    padding: 0 30px;
    border-right: 1px solid #E4EAF7;
    display: flex;
    flex-direction: column;
    justify-content: center;

    &:last-child {
        border-right: none;
    }

    h3 {
        font-weight: 800;
        font-size: 48px;
        line-height: 1;
        color: #204CA0;
        margin-bottom: 14px;
    }

    p {
        font-weight: 400;
        font-size: 15px;
        line-height: 23px;
        color: #5A648C;
        max-width: 260px;
        margin-inline: auto;
    }
}

/* ABOUT Mission Vision Values */

.about-mvv-tabs {
    position: relative;
}

.about-mvv-input {
    position: fixed;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.about-mvv-nav {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 999px;
    padding: 6px;
    max-width: 620px;
    margin-inline: auto;
    box-shadow: 0px 18px 40px -34px rgba(11, 18, 48, 0.3);
}

.about-mvv-nav-indicator {
    position: absolute;
    top: 6px;
    left: 6px;
    width: calc(33.333% - 4px);
    height: calc(100% - 12px);
    background: #204CA0;
    border-radius: 999px;
    transition: transform 0.4s cubic-bezier(0.65, 0, 0.35, 1);
    z-index: 0;
}

.about-mvv-tab {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 10px;
    border-radius: 999px;
    cursor: pointer;
    transition: color 0.3s ease-in-out;
}

.about-mvv-tab-num {
    font-weight: 700;
    font-size: 13px;
    color: #A6B0CC;
    transition: color 0.3s ease-in-out;
}

.about-mvv-tab-text {
    font-weight: 700;
    font-size: 15px;
    color: #5A648C;
    transition: color 0.3s ease-in-out;
    white-space: nowrap;
}

#about-mvv-01:checked~.about-mvv-nav .about-mvv-nav-indicator {
    transform: translateX(0%);
}

#about-mvv-02:checked~.about-mvv-nav .about-mvv-nav-indicator {
    transform: translateX(100%);
}

#about-mvv-03:checked~.about-mvv-nav .about-mvv-nav-indicator {
    transform: translateX(200%);
}

#about-mvv-01:checked~.about-mvv-nav label[for="about-mvv-01"] .about-mvv-tab-num,
#about-mvv-01:checked~.about-mvv-nav label[for="about-mvv-01"] .about-mvv-tab-text,
#about-mvv-02:checked~.about-mvv-nav label[for="about-mvv-02"] .about-mvv-tab-num,
#about-mvv-02:checked~.about-mvv-nav label[for="about-mvv-02"] .about-mvv-tab-text,
#about-mvv-03:checked~.about-mvv-nav label[for="about-mvv-03"] .about-mvv-tab-num,
#about-mvv-03:checked~.about-mvv-nav label[for="about-mvv-03"] .about-mvv-tab-text {
    color: #FFFFFF;
}

.about-mvv-panels {
    display: grid;
    margin-top: 50px;
}

.about-mvv-panel {
    grid-area: 1 / 1;
    display: grid;
    grid-template-columns: 5fr 7fr;
    align-items: center;
    gap: 50px;
    opacity: 0;
    pointer-events: none;
    transform: translateY(16px);
    transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

#about-mvv-01:checked~.about-mvv-panels .about-mvv-panel-01,
#about-mvv-02:checked~.about-mvv-panels .about-mvv-panel-02,
#about-mvv-03:checked~.about-mvv-panels .about-mvv-panel-03 {
    opacity: 1;
    pointer-events: auto;
    transform: none;
    z-index: 1;
}

.about-mvv-panel-img {
    position: relative;
    border-radius: 0 40px 0 40px;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    box-shadow: 0px 30px 60px -30px rgba(11, 18, 48, 0.35);

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.6s ease-in-out;
    }
}

.about-mvv-panel:hover .about-mvv-panel-img img {
    transform: scale(1.06);
}

.about-mvv-panel-body {
    position: relative;
    padding-left: 10px;
}

.about-mvv-panel-num {
    display: block;
    font-weight: 800;
    font-size: 80px;
    line-height: 1;
    color: #E4EAF7;
    margin-bottom: 10px;
}

.about-mvv-panel-body h3 {
    font-weight: 700;
    font-size: 26px;
    line-height: 32px;
    color: #0A0F26;
    margin-bottom: 14px;
}

.about-mvv-panel-body p {
    font-weight: 400;
    font-size: 17px;
    line-height: 27px;
    color: #5A648C;
    margin-bottom: 0;
}

/* ABOUT Leadership */

.about-leader-list {
    display: flex;
    flex-direction: column;
    gap: 70px;
}

.about-leader-row {
    display: flex;
    align-items: center;
    gap: 60px;
}

.about-leader-row-reverse {
    flex-direction: row-reverse;
}


.about-leader-row-reverse .about-leader-photo {
    border-radius: 40px 0 40px 0;
}

.about-leader-row-reverse .about-leader-info {
    display: flex;
    flex-direction: column;
    align-items: end;

    p {
        text-align: end;
    }
}

.about-leader-photo {
    position: relative;
    flex: 0 0 280px;
    width: 280px;
    min-height: 280px;
    border-radius: 0 40px 0 40px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0px 30px 60px -30px rgba(0, 0, 0, 0.6);

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.5s ease-in-out;
    }

    &:hover img {
        transform: scale(1.06);
    }
}

.about-leader-info {
    flex: 1;
}

.about-leader-role {
    display: block;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #8FB2FF;
    margin-bottom: 10px;
}

.about-leader-info h3 {
    font-weight: 700;
    font-size: 30px;
    line-height: 1.2;
    color: #FFFFFF;
    margin-bottom: 16px;
}

.about-leader-info p {
    font-weight: 400;
    font-size: 16px;
    line-height: 26px;
    color: #B7C0DD;
    max-width: 560px;
    margin-bottom: 20px;
}

.about-leader-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    font-size: 15px;
    color: #FFFFFF;
    padding-bottom: 4px;
    border-bottom: 2px solid rgba(255, 255, 255, 0.25);
    transition: all 0.3s ease-in-out;

    &:hover {
        color: #8FB2FF;
        border-color: #8FB2FF;
    }
}

/* ABOUT Awards */

.about-awards-row {
    overflow: hidden;
}

.about-awards-row h3 {
    text-align: center;
    margin-bottom: 25px;
}

.about-awards-row .ptmctmarq-group {
    gap: 25px;
    padding-right: 25px;
}

.about-awards-row .ptmctmarq-box {
    height: 90px;
    min-width: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 14px 26px;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 12px;

    img {
        max-height: 48px;
        max-width: 130px;
    }
}

/* ABOUT Actions */

.about-actions-box {
    height: 100%;
    padding: 35px 30px;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 18px;
    box-shadow: 0px 18px 40px -34px rgba(11, 18, 48, 0.3);
    transition: all 0.35s ease-in-out;

    &:hover {
        transform: translateY(-6px);
        border-color: #C9D8FF;
        box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
    }
}


.about-actions-icon {
    height: 52px;
    width: 52px;
    margin-bottom: 18px;
    border-radius: 14px;
    background: #E9EFFF;
    display: grid;
    place-items: center;

    svg {
        height: 24px;
        width: 24px;
        stroke: #204CA0;
    }
}

.whyplutomen-solutions .about-actions-icon {
    background: #204CA0;
}

.about-actions-box h3 {
    font-weight: 700;
    font-size: 22px;
    line-height: 28px;
    color: #0A0F26;
    margin-bottom: 10px;
}

.about-actions-box p {
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
    color: #5A648C;
    margin-bottom: 0;
}

/* ABOUT Final CTA */

.about-cta {
    position: relative;

    &::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg, rgba(10, 15, 38, 0.92) 0%, rgba(10, 15, 38, 0.78) 55%, rgba(10, 15, 38, 0.55) 100%);
    }
}

.about-cta-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 7fr 5fr;
    align-items: center;
    gap: 60px;
}

.about-cta-primary .pttitle h2 {
    margin-bottom: 14px;
}

.about-cta-primary .pttitle p {
    max-width: 480px;
}

.about-cta-paths {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.about-cta-path {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 24px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 16px;
    color: #FFFFFF;
    transition: all 0.3s ease-in-out;

    strong {
        display: block;
        font-weight: 700;
        font-size: 17px;
        margin-bottom: 4px;
    }

    small {
        display: block;
        font-weight: 400;
        font-size: 13px;
        color: #B7C0DD;
    }

    svg {
        flex-shrink: 0;
        transition: transform 0.3s ease-in-out;
    }

    &:hover {
        background: rgba(255, 255, 255, 0.12);
        border-color: rgba(255, 255, 255, 0.35);

        svg {
            transform: translateX(4px);
        }
    }
}

/* WHY PLUTOMEN Deskless-Worker Wheel */

.text-accent {
    color: #204CA0;
}

.text-accent-underline {
    color: #204CA0;
    text-decoration: underline;
    text-underline-offset: 6px;
}

.whyplutomen-wheel-grid {
    display: grid;
    grid-template-columns: 1fr 300px 1fr;
    align-items: center;
    gap: 40px;
}

.whyplutomen-wheel-col {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.whyplutomen-wheel-point h3 {
    display: inline-block;
    font-weight: 700;
    font-size: 20px;
    color: #204CA0;
    padding-bottom: 8px;
    margin-bottom: 10px;
    border-bottom: 2px solid #204CA0;
}

.whyplutomen-wheel-point p {
    font-weight: 400;
    font-size: 15px;
    line-height: 23px;
    color: #5A648C;
    margin-bottom: 0;
}

.whyplutomen-wheel-visual {
    display: flex;
    justify-content: center;
}

.whyplutomen-wheel-visual svg {
    width: 100%;
    max-width: 280px;
    height: auto;
}

.whyplutomen-wheel-label {
    font-weight: 700;
    font-size: 11px;
    letter-spacing: 1px;
    fill: #FFFFFF;
}

/* FEATURES Listing Cards */

.feature-card {
    display: block;
    text-decoration: none;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 18px;
    overflow: hidden;
    height: 100%;
    transition: all 0.35s ease-in-out;

    &:hover {
        transform: translateY(-6px);
        border-color: #C9D8FF;
        box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
    }
}

.feature-card-img {
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #F7F9FE;

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: top;
        transition: transform 0.5s ease-in-out;
    }
}

.feature-card:hover .feature-card-img img {
    transform: scale(1.05);
}

.feature-card h3 {
    font-weight: 700;
    font-size: 17px;
    line-height: 23px;
    color: #0A0F26;
    padding: 18px 20px;
    margin-bottom: 0;
}

/* CAREER Benefits */

.career-benefits-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px 40px;
    max-width: 1000px;
    margin-inline: auto;
}

.career-benefits-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 20px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 14px;
    color: #FFFFFF;
    font-weight: 500;
    font-size: 16px;
}

.career-benefits-icon {
    flex-shrink: 0;
    height: 26px;
    width: 26px;
    display: grid;
    place-items: center;
    border-radius: 100%;
    background: #204CA0;

    svg {
        height: 13px;
        width: 13px;
        color: #FFFFFF;
    }
}

/* CAREER Jobs Accordion */

.career-jobs-accordion {
    max-width: 1000px;
    margin-inline: auto;
}

.career-jobs-input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.career-jobs-item {
    border-bottom: 1px solid #E4EAF7;
}

.career-jobs-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 26px 10px;
    cursor: pointer;
}

.career-jobs-head-main {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.career-jobs-head-title {
    font-weight: 700;
    font-size: 19px;
    color: #0A0F26;
}

.career-jobs-head-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;

    span {
        font-weight: 500;
        font-size: 13px;
        color: #5A648C;
        padding: 4px 12px;
        background: #F7F9FE;
        border: 1px solid #E4EAF7;
        border-radius: 100px;
    }
}

.career-jobs-chevron {
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #E4EAF7;
    border-radius: 100%;
    transition: transform 0.35s ease-in-out, background 0.3s ease-in-out;
}

.career-jobs-chevron::before {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid #5A648C;
    border-bottom: 2px solid #5A648C;
    transform: rotate(45deg);
    margin-top: -4px;
}

.career-jobs-input:checked~.career-jobs-head .career-jobs-chevron {
    transform: rotate(180deg);
    background: #204CA0;
    border-color: #204CA0;
}

.career-jobs-input:checked~.career-jobs-head .career-jobs-chevron::before {
    border-color: #FFFFFF;
}

.career-jobs-panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s ease-in-out;
}

.career-jobs-input:checked~.career-jobs-panel {
    grid-template-rows: 1fr;
}

.career-jobs-panel-inner {
    overflow: hidden;
}

.career-jobs-panel-inner p {
    padding: 0 10px 20px;
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
    color: #5A648C;
    margin-bottom: 0;
}

.career-jobs-panel-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 0 10px 26px;

    span {
        font-weight: 500;
        font-size: 14px;
        color: #0A0F26;
    }
}

.ptminner-blog .alm-listing {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.about-awards-row {
    padding-inline: 0 !important;
}


/* CASE STUDY - Hero */

.case-study-hero {
    padding-bottom: 80px;
}

.case-study-hero-crumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
    font-size: 14px;
    margin-bottom: 40px;

    a {
        text-decoration: none;
    }

    span:last-child {
        color: #8FB2FF;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}

.case-study-hero-crumb a:nth-child(3) {
    text-wrap: nowrap;
}

.case-study-hero-grid {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    align-items: center;
    gap: 60px;
}

.case-study-hero-logo {
    height: 44px;
    margin-bottom: 24px;
}

.case-study-hero-logo img {
    height: 100%;
    width: auto;
}

.case-study-hero-copy h1 {
    font-weight: 700;
    font-size: 42px;
    line-height: 1.25;
    color: #0A0F26;
}

.case-study-hero-visual {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0px 30px 60px -30px rgba(10, 15, 38, 0.25);
}

.case-study-hero-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.case-study-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}

.case-study-meta-item span {
    display: block;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #8A93B2;
    margin-bottom: 4px;
}

.case-study-meta-item p {
    font-weight: 700;
    font-size: 17px;
    color: #0A0F26;
    margin-bottom: 0;
}

/* CASE STUDY - Inner Divider Image (between Solution and Results) */

.case-study-inner-img {
    height: 420px;
}

.case-study-inner-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.case-study-copy {
    max-width: 820px;
    margin: 0 auto;
}

.case-study-copy .pttitle-design {
    margin-bottom: 16px;
}

.case-study-copy h2 {
    font-weight: 700;
    font-size: 32px;
    line-height: 1.3;
    color: #0A0F26;
    margin-bottom: 18px;
}

.case-study-copy h3 {
    margin-bottom: 18px;
}

.case-study-copy p {
    font-weight: 400;
    font-size: 16px;
    line-height: 27px;
    color: #5A648C;
    margin-bottom: 20px;
}

.case-study-copy p:last-child {
    margin-bottom: 0;
}

.case-study-testimonial {
    text-align: center;
}

.case-study-testimonial p {
    font-weight: 500;
    font-size: 20px;
    line-height: 30px;
    color: #0A0F26;
}

.case-study-testimonial .pttest-auto {
    justify-content: center;
    width: fit-content;
    margin-inline: auto;
}

.case-study-testimonial .ptauto-desc {
    text-align: left;
}

/* Resource card - used on Case Study / Ebook / Webinar / Blog hub pages */

.resource-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    border: 1px solid #E4EAF7;
    border-radius: 18px;
    overflow: hidden;
    background: #FFFFFF;
    transition: all 0.35s ease-in-out;
}

.resource-card:hover {
    transform: translateY(-6px);
    border-color: #C9D8FF;
    box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
}

.resource-card-media {
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #F7F9FE;
    height: 100%;
}
.ptcase-listing .resource-card-media {
    aspect-ratio: unset;
    height: initial;
}

.resource-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.resource-card-body {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.resource-card-tag {
    font-weight: 600;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #204CA0;
    margin-bottom: 5px;
}

.resource-card-body h3 {
    font-weight: 700;
    font-size: 19px;
    line-height: 1.35;
    color: #0A0F26;
    margin-bottom: 10px;

}

.resource-card-body p {
    font-weight: 400;
    font-size: 15px;
    line-height: 22px;
    color: #5A648C;
    margin-bottom: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.resource-card-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    font-size: 14px;
    color: #204CA0;
    margin-top: 18px;
    text-decoration: none;
}

.alm-load-more-btn {
    font-size: 16px;
    font-weight: 600;
    color: #FFF;
    padding: 10px 25px;
    margin-inline: auto;
    background-color: #204CA0;
    border-radius: 100px;
    margin-top: 30px;
    border: none !important;
    box-shadow: 0 !important;
    outline: 0 !important;
    display: inherit;
}

/* Blog detail hero — author byline row */

.blog-hero-author {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 30px;
}

.blog-hero-author img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.blog-hero-author-meta {
    text-align: left;
}

.blog-hero-author-meta strong {
    display: block;
    font-size: 15px;
    color: #0A0F26;
}

.blog-hero-author-meta span {
    font-size: 13px;
    color: #5A648C;
}

/* Blog article body (single post) */

.blog-article-body {
    max-width: 720px;
}

.blog-article-body img {
    width: 100%;
    height: auto;
    border-radius: 14px;
    margin-bottom: 30px;
}

.blog-article-body p {
    font-weight: 400;
    font-size: 16px;
    line-height: 27px;
    color: #5A648C;
    margin-bottom: 20px;
}

.blog-article-body h2 {
    font-weight: 700;
    font-size: 26px;
    line-height: 1.35;
    color: #0A0F26;
    margin: 46px 0 18px;
    scroll-margin-top: 100px;
}

.blog-article-body h3 {
    font-weight: 700;
    font-size: 20px;
    line-height: 1.4;
    color: #0A0F26;
    margin: 0 0 14px;
    scroll-margin-top: 100px;
}

.blog-article-body ol,
.blog-article-body ul {
    margin: 0 0 20px;
    padding-left: 22px;
}

.blog-article-body ol li,
.blog-article-body ul li {
    font-size: 16px;
    line-height: 26px;
    color: #5A648C;
    margin-bottom: 12px;
}

.blog-article-body ol li strong,
.blog-article-body ul li strong {
    color: #0A0F26;
}

.blog-article-body figure {
    margin: 0 0 30px;
}

.blog-article-body figcaption {
    font-size: 13px;
    color: #5A648C;
    text-align: center;
}

.blog-article-body #ez-toc-container {
    display: none !important;
}

.blog-article-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 30px;
    font-size: 14px;
}

.blog-article-table th,
.blog-article-table td {
    border: 1px solid #E4EAF7;
    padding: 12px 14px;
    text-align: left;
    color: #5A648C;
}

.blog-article-table th {
    background: #F7F9FE;
    color: #0A0F26;
    font-weight: 700;
}

/* Table of Contents widget */

.blog-toc {
    background: #F7F9FE;
    border: 1px solid #E4EAF7;
    border-radius: 14px;
    padding: 20px 10px;
    position: sticky;
    top: 100px;
}

.blog-toc h4 {
    font-weight: 700;
    font-size: 15px;
    color: #0A0F26;
    margin-bottom: 14px;
}

.blog-toc ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.blog-toc a {
    font-size: 13px;
    line-height: 1.5;
    color: #5A648C;
    text-decoration: none;
}

.blog-toc a:hover {
    color: #204CA0;
}

/* Related-reads inline callout */

.blog-related-box {
    background: #F7F9FE;
    border: 1px solid #E4EAF7;
    border-left: 4px solid #204CA0;
    border-radius: 10px;
    padding: 22px 26px;
    margin: 10px 0 30px;
}

.blog-related-box h3 {
    font-weight: 700;
    font-size: 16px;
    color: #0A0F26;
    margin: 0 0 12px;
}

.blog-related-box ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.blog-related-box a {
    font-size: 15px;
    font-weight: 600;
    color: #204CA0;
    text-decoration: none;
}

/* Mid-article CTA banner */

.blog-mid-cta {
    background: #0A0F26;
    border-radius: 16px;
    padding: 34px 36px;
    margin: 10px 0 40px;
}

.blog-mid-cta h3 {
    font-size: 20px;
    margin-bottom: 10px;
}

.blog-mid-cta h3 a {
    color: #FFFFFF;
    text-decoration: none;
}

.blog-mid-cta p {
    color: #B7C0DD;
    margin-bottom: 20px;
}

/* Fixed vertical social-share rail */

.blog-social-share {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 40;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #0A0F26;
    border-radius: 12px 0 0 12px;
    padding: 16px 12px;
    box-shadow: 0px 12px 30px -18px rgba(10, 15, 38, 0.3);
}

.blog-social-share a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
}

/* FAQ section (single post) */

.blog-faq-section {
    margin: 46px 0 18px;
}

.blog-faq-eyebrow {
    display: block;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #204CA0;
    margin-bottom: 10px;
}

.blog-faq-accordion .accordion-item {
    box-shadow: 0px 16px 32px -26px rgba(10, 15, 38, 0.35);
    transition: border-color 0.25s ease-in-out;
}

.blog-faq-accordion .accordion-item:has(.accordion-button:not(.collapsed)) {
    border-color: #C9D8FF;
}

.blog-faq-num {
    flex-shrink: 0;
    font-weight: 700;
    font-size: 13px;
    color: #C9D8FF;
}

.blog-faq-accordion .accordion-button:not(.collapsed) .blog-faq-num {
    color: #204CA0;
}

/* Author bio box */

.blog-author-bio {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 16px;
    padding: 28px;
    margin-top: 50px;
    box-shadow: 0px 22px 45px -30px rgba(10, 15, 38, 0.35);
}

.blog-author-bio img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.blog-author-bio-copy {
    min-width: 0;
}

.social-links img {
    margin-bottom: 0;
}

.blog-author-bio-eyebrow {
    display: block;
    font-weight: 700;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #8A93B2;
    margin-bottom: 6px;
}

.blog-author-bio h3 {
    font-size: 17px;
    color: #0A0F26;
    margin-bottom: 2px;
}

.blog-author-bio .designation {
    display: block;
    font-size: 13px;
    color: #204CA0;
    font-weight: 600;
    margin-bottom: 10px;
}

.blog-author-bio p {
    font-size: 14px;
    line-height: 22px;
    color: #5A648C;
    margin-bottom: 12px;
}

.blog-author-bio .social-links a {
    display: inline-grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #204CA0;
    transition: background-color 0.25s ease-in-out;

    &:hover,
    &:focus {
        background: #FEB82F;
    }
}

/* Thank You page — shared across confirmation/download/demo-video pages */

.thankyou-hero {
    position: relative;
    background: #F7F9FE;
    border-bottom: 1px solid #E4EAF7;
    overflow: hidden;
    z-index: 0;
}

/* Hairline grid — the page's structure left visible, fading out down the section */
.thankyou-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: repeating-linear-gradient(90deg, #E4EAF7 0 1px, transparent 1px 96px);
    -webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 78%);
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 78%);
    pointer-events: none;
    z-index: -1;
}

.thankyou-hero-row {
    align-items: center;
    row-gap: 40px;
}

.thankyou-content h1,
.thankyou-content h2 {
    font-weight: 700;
    font-size: 46px;
    line-height: 1.18;
    letter-spacing: -0.5px;
    color: #0A0F26;
    margin-bottom: 18px;
}

.thankyou-content p {
    font-weight: 400;
    font-size: 18px;
    line-height: 30px;
    color: #4A5578;
    max-width: 34em;
}

.thankyou-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    margin-top: 32px;
}

.thankyou-actions .ptmdef-btn,
.thankyou-actions .ptmout-btn {
    display: inline-block;
}

/* Next-steps card — folio numerals threaded on a hairline spine */

.thankyou-next {
    background: #FFFFFF;
    border: 1px solid #E4EAF7;
    border-radius: 22px;
    padding: 32px 30px;
    box-shadow: 0px 30px 70px -46px rgba(11, 18, 48, 0.3);
}

.thankyou-next-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 15px;
    padding-bottom: 18px;
    margin-bottom: 26px;
    border-bottom: 1px solid #E4EAF7;
}

.thankyou-next-head h2 {
    font-weight: 700;
    font-size: 20px;
    line-height: 25px;
    color: #0A0F26;
    margin-bottom: 0;
}

.thankyou-next-head span {
    font-weight: 700;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #8A93B2;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.thankyou-step {
    position: relative;
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 15px;
    padding-bottom: 26px;
}

.thankyou-step:last-child {
    padding-bottom: 0;
}

.thankyou-step:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 42px;
    bottom: 8px;
    left: 17px;
    width: 1px;
    background: #E4EAF7;
}

.thankyou-step-no {
    height: 34px;
    width: 34px;
    border-radius: 9px;
    display: flex;
    justify-content: center;
    place-items: center;
    font-weight: 700;
    font-size: 13px;
    line-height: 17px;
    font-variant-numeric: tabular-nums;
    color: #204CA0;
    background: #E9EFFF;
    border: 1px solid #C9D8FF;
}

/* Step 01 is already true the moment the page loads, so it renders as complete */
.thankyou-step.is-done .thankyou-step-no {
    background: #204CA0;
    border-color: #204CA0;
    font-size: 0;
}

.thankyou-step.is-done .thankyou-step-no::before {
    content: "";
    display: block;
    height: 10px;
    width: 12px;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.783 9.75L-3.90131e-06 5.746L0.987996 4.758L3.809 7.761L10.985 -4.47035e-06L11.934 0.935996L3.783 9.75Z' fill='%23FFFFFF'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-size: 100%;
}

.thankyou-step-copy h3 {
    font-weight: 700;
    font-size: 17px;
    line-height: 23px;
    color: #0A0F26;
    margin-bottom: 4px;
}

.thankyou-step-copy p {
    font-weight: 400;
    font-size: 15px;
    line-height: 23px;
    color: #5A648C;
    margin-bottom: 0;
}

.thankyou-video {
    max-width: 940px;
    margin: 60px auto 0;
    aspect-ratio: 16 / 9;
    border: 1px solid #E4EAF7;
    border-radius: 20px;
    background: #0A0F26;
    overflow: hidden;
    box-shadow: 0px 30px 70px -46px rgba(11, 18, 48, 0.3);
}

.thankyou-video iframe {
    width: 100%;
    height: 100%;
    display: block;
    border: 0;
}

/* Testimonial */

.thankyou-quote {
    max-width: 760px;
    margin-inline: auto;
}

.thankyou-testimonial {
    display: grid;
    grid-template-columns: 72px 1fr;
    align-items: center;
    gap: 24px;
    padding: 34px;
    background: #F7F9FE;
    border: 1px solid #E4EAF7;
    border-radius: 22px;
    text-align: left;
}

.thankyou-testimonial:not(:has(img)) {
    grid-template-columns: 1fr;
}

.thankyou-testimonial img {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.thankyou-testimonial p {
    position: relative;
    font-weight: 500;
    font-size: 18px;
    line-height: 30px;
    color: #0A0F26;
    margin-bottom: 0;
    padding-top: 18px;
}

.thankyou-testimonial p::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 3px;
    width: 40px;
    border-radius: 3px;
    background: #204CA0;
}

/* Resource grid */

.thankyou-resources {
    background: #FFFFFF;
}

.thankyou-resources .resource-card-body h3 {
    margin-bottom: 0;
}

.thankyou-resources .resource-card-link {
    margin-top: 14px;
}

.thankyou-resources .resource-card:hover .resource-card-link {
    color: #FEB82F;
}

/* Closing CTA */

.thankyou-cta .ptmdef-btn {
    margin-inline: auto;
    display: block;
    width: fit-content;
    margin-top: 28px;
    background: #FEB82F;
    color: #383336;
}

.thankyou-cta .ptmdef-btn:hover,
.thankyou-cta .ptmdef-btn:focus,
.thankyou-cta .ptmdef-btn:active {
    background: #FFFFFF;
    color: #0A0F26;
}

.ptcase-listing .row,
.ptwhy-ptnr .row,
.workflow-usecases .row,
.platform-features .row {
    row-gap: 30px;
}

.connect-results .ptmctmarq-group {
    gap: 30px;
    padding-right: 30px;
}

.product-cta-copy p {
    margin-bottom: 0;
}

.feature-capabilities:has(.row.mt-50) .feac-list {
    margin-top: 50px;
}

.bolg-details-main .resource-card {
    height: fit-content !important;
}

.blog-toc .ez-toc-title-container {
    display: flex;
    justify-content: space-between;
}

.ez-toc-title {
    margin-bottom: 15px;
}

.wp-block-table {
    overflow: hidden;
    overflow-x: hidden;
    overflow-x: auto;
}

.wp-block-table td {
    font-size: 16px;
    line-height: 27px;
    color: #5A648C;
    border: 1px solid #5A648C;
    padding: 8px 10px;
    text-wrap: nowrap;
}

.gform_footer #gform_ajax_spinner_8 {
    display: none !important;
}

@media screen and (max-width: 1399px) {
    .ptcases-feature {
        grid-template-columns: 480px 1fr;
    }
}

@media screen and (max-width: 1199px) {
    body {
        font-size: 16px;
        line-height: 26px;
    }

    .mtb-120 {
        margin-block: 90px;
    }

    .ptb-80 {
        padding-block: 70px;
    }

    header .navbar-nav {
        margin-left: 60px;
    }

    .megamenu-panel .megamenu-left,
    .megamenu-panel .megamenu-right {
        padding: 15px;
    }

    .megamenu-nav .megamenu-item>a,
    .megamenu-tabs .megamenu-item {
        .megamenu-icon {
            min-width: 40px;
            height: 40px;
            background-color: #204CA0;
            display: grid;
            place-items: center;
            border-radius: 8px;
        }
    }

    .megamenu-item a .megamenu-desc p,
    .megamenu-tabs .megamenu-item .megamenu-desc p {
        font-size: 13px;
        line-height: 22px;

        b,
        strong {
            font-size: 16px;
            line-height: 22px;
        }
    }

    .megamenu-tabs .megamenu-item+.megamenu-item {
        & a {
            & .megamenu-icon {
                max-width: 40px;
            }
        }
    }

    .megamenu-arrow img {
        max-width: 20px;
    }

    .megamenur-head h3 {
        font-size: 22px;
        line-height: 28px;
    }

    .megamenurnav-main .megamenur-nav {
        gap: 18px 10px;
    }

    .megamenur-nav .megamenur-item a {
        font-size: 14px;
        line-height: 20px;
        gap: 4px;
        text-wrap: nowrap;

        &::before {
            height: 16px;
            width: 16px;
            margin-top: -1px;
        }
    }

    .megamenu-tabs .megamenu-item .megamenu-desc a {
        font-size: 13px;
        line-height: 17px;
    }

    .ptmban-box {
        padding-bottom: 60px;
        min-height: 630px;
    }

    .pttitle-design h5 {
        font-size: 11px;
        line-height: 14px;
        padding: 8px 8px 8px 14px;
    }

    .ptmban-box .pttitle-design h5 {
        margin-bottom: 20px;
    }

    .ptmhm-desc h1 {
        font-size: 46px;
        line-height: 58px;
        margin-bottom: 25px;

        & b,
        & strong {
            font-size: 54px;
            line-height: 69px;
        }
    }

    .ptmhm-desc p {
        font-size: 18px;
        line-height: 26px;
    }

    .ptmsec-btn,
    .ptmdef-btn,
    .ptmout-btn,
    .gform_button {
        font-size: 15px;
        line-height: 21px;
        padding: 12px 20px;
    }

    .ptmctmarq-group {
        gap: 60px;
        padding-right: 60px;
    }

    .ptmctmarq-box img {
        max-height: 28px;
        width: 95px;
    }

    .pttitle h2 {
        font-size: 36px;
        line-height: 46px;
    }

    .pttitle p {
        font-size: 16px;
        line-height: 28px;
    }

    .ptmbtn-inner.mt-50 {
        margin-top: 30px;
    }

    .ptmhm-expert-tags {
        flex-wrap: wrap;
    }

    .ptmwhy-box h3 {
        font-size: 18px;
        line-height: 23px;
    }

    .ptmwhy-box p,
    .ptmeco-item p {
        font-size: 16px;
        line-height: 23px;
    }

    .ptmeco-item h3 {
        font-size: 18px;
        line-height: 23px;
    }

    .ptmhm-value .white-pttitle h2 {
        max-width: 100%;
    }

    .ptmvalue-box h3 {
        font-size: 30px;
        line-height: 40px;
    }

    .ptmvalue-box h4 {
        font-size: 18px;
        line-height: 23px;
    }

    .ptmvalue-box p {
        font-size: 15px;
        line-height: 21px;
    }

    .ptplat-content h5,
    .ptindutabs-content h4,
    .ptmhm-cta .pttitle h4 {
        padding: 6px 13px;
        font-size: 11px;
        line-height: 15px;
    }

    .ptplat-content h3 {
        font-size: 26px;
        line-height: 32px;
    }

    .ptplat-content p {
        font-size: 16px;
        line-height: 24px;
    }

    .ptplat-content li {
        font-size: 15px;
        line-height: 18px;
    }

    .ptindutabs-content h5 {
        font-size: 12px;
        line-height: 15px;
    }

    .ptindutabs-content p {
        max-width: 85%;
    }

    .ptindutabs-content li {
        padding: 12px;
        font-size: 14px;
        line-height: 18px;
    }

    .ptindu-item {
        font-size: 14px;
        line-height: 18px;
        padding: 14px 16px;
    }

    .ptmwhy-box {
        padding: 25px 20px;
    }

    .ptcases-feature {
        grid-template-columns: 380px 1fr;
    }

    .ptcases-desc {
        padding: 30px 0 30px 30px;
    }

    .ptcsdesc-head h3 {
        font-size: 24px;
        line-height: 32px;
    }

    .ptcases-desc p {
        &:nth-child(2) {
            font-size: 16px;
            line-height: 28px;
        }
    }

    .ptcases-desc li {
        font-size: 12px;
        line-height: 16px;
    }

    .ptcases-desc li strong {
        font-size: 18px;
        line-height: 24px;
    }

    .ptstack-box {
        padding: 25px;
    }

    .pttest-pagination {
        display: flex;
    }

    .ptquote-steps {
        padding: 20px 30px;
    }

    .ptquote-body {
        padding: 25px;
    }

    .ptquote-body h3 {
        font-size: 20px;
        line-height: 24px;
        margin-bottom: 25px;
    }

    .ptquote-options button {
        padding: 12px 22px;
        font-size: 14px;
        line-height: 18px;
    }

    .ptquote-options button svg,
    .ptquote-options button img {
        width: 25px;
        height: 25px;
        object-fit: contain;
    }

    .ptquote-action {
        margin-top: 40px;
    }

    .ptquote-summary,
    .ptquote-form {
        padding: 25px;
    }

    .ptquote-summary li {
        font-size: 16px;
        line-height: 26px;
    }

    .ptquote-summary small {
        font-size: 12px;
        line-height: 15px;
    }

    .ptguide-card {
        padding: 40px;
        border-radius: 20px;
    }

    footer {
        padding: 50px 0 30px;
    }

    .ptstat-box h3 {
        font-size: 40px;
        line-height: 52px;
    }

    .ptmhmeco-img {
        width: 70px;
        height: 70px;

        img,
        svg {
            max-width: 40px;
        }
    }

    .ptmhmeco-box p {
        font-size: 12px;
        line-height: 17px;
        padding: 6px 12px;
    }

    .ptmhmeco-logo img {
        max-width: 100px;
    }

    .ptminner-hero-row {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }

    .about-leader-row {
        gap: 40px;
    }

    .blog-social-share {
        display: none;
    }

    .resource-card-body,
    .solution-product-card-body,
    .service-read-card-body {
        padding: 15px;
    }

    .resource-card-body h3,
    .solution-product-card-body h3 {
        font-size: 17px;
    }

    .service-read-card-body h3 {
        font-size: 16px;

    }

    .resource-card-link {
        margin-top: 15px;
    }

    .ptmhm-cta {
        background-position: center top 0 !important;
    }

    .about-actions-box {
        padding: 20px;

        h3 {
            font-size: 18px;
            line-height: 25px;
        }

        p {
            font-size: 15px;
            line-height: 24px;
        }
    }

    .connect-testi-quote {
        font-size: 20px;
    }

    .connect-testi-mark {
        font-size: 80px;
        line-height: 50px;
        margin-bottom: 0;
    }

    .ebook-brand-panel {
        padding: 44px;
    }

    .ebook-brand-panel-copy p {
        font-size: 18px;
    }

    .case-study-hero-copy h1 {
        font-size: 34px;
    }

    .case-study-meta {
        gap: 20px;
    }
}

@media screen and (max-width: 991px) {
    .thankyou-content h1,
    .thankyou-content h2 {
        font-size: 36px;
    }

    .thankyou-content p {
        max-width: 100%;
    }

    .thankyou-next {
        padding: 26px 24px;
    }

    .thankyou-video {
        margin-top: 45px;
    }

    .ptminner-hero-row {
        grid-template-columns: 1fr;
    }

    .ptminner-hero-right {
        order: -1;
    }

    .ptminner-hero-image-frame {
        width: 80%;
        height: 360px;
        margin-inline: auto;
    }

    .ptminner-hero-row {
        text-align: center;
    }

    .ptminner-hero-row .pttitle-design h5 {
        margin-inline: auto;
    }

    .product-cta-shell {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .product-cta-copy>p {
        max-width: 100%;
    }

    .connect-results-spotlight {
        gap: 20px;
    }

    .connect-results-spotlight div {
        padding: 0 20px;
    }

    .connect-results-dots {
        justify-content: center;
    }

    .connect-features-grid {
        grid-template-columns: 1fr 1fr;
    }

    .connect-capability-shell {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .connect-capability-panel {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .connect-problem {
        padding-block: 60px;
    }

    .connect-problem-head {
        position: static;
        margin-bottom: 40px;
        text-align: center;
    }

    .connect-problem-head p {
        margin-inline: auto;
    }

    .connect-problem-head-img {
        margin-inline: auto;
    }

    .ptminner-banner-grid {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }

    .ptminner-banner-crumb {
        justify-content: center;
    }

    .ptminner-banner-content .ptmbtn-inner {
        justify-content: center;
    }

    .ptminner-banner-visual {
        order: -1;
    }

    .about-cta-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .about-cta-primary .pttitle p {
        max-width: 100%;
    }

    .about-story-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .about-story-visual {
        order: -1;
    }

    .about-story-timeline {
        grid-template-columns: repeat(3, 1fr);
        row-gap: 30px;
    }

    .about-mvv-panel {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .about-leader-row,
    .about-leader-row-reverse {
        flex-direction: column;
        gap: 30px;
        text-align: center;
    }

    .about-leader-photo,
    .about-leader-row-reverse .about-leader-photo {
        width: 240px;
        min-height: 240px;
        aspect-ratio: 1 / 1;
        border-radius: 0 40px 0 40px;
        margin-inline: auto;
    }

    .about-leader-info p {
        margin-inline: auto;
    }

    .about-mvv-panel-num {
        font-size: 60px;
    }

    .mtb-120 {
        margin-block: 70px;
    }

    .ptb-80 {
        padding-block: 60px;
    }

    .mt-50 {
        margin-top: 30px;
    }

    .row {
        row-gap: 30px;
    }

    .navbar-toggler {
        width: 26px;
        height: 26px;
        display: flex;
        align-items: end;
        justify-content: center;
        flex-direction: column;
        gap: 7px;
        padding: 0;
        border: 0;
        box-shadow: none !important;
    }

    .navbar-toggler .icon-bar {
        height: 4px;
        width: 100%;
        background-color: #204CA0;
        border-radius: 10px;
        transition: transform .35s ease-in-out, width .35s ease-in-out;
    }

    /* Two 4px bars with a 7px gap sit 11px apart, so each travels half of that
       to meet in the middle before rotating into the cross. */
    .navbar-toggler.active .icon-bar {
        width: 100%;
    }

    .navbar-toggler.active .icon-bar:nth-child(1) {
        transform: translateY(5.5px) rotate(45deg);
    }

    .navbar-toggler.active .icon-bar:nth-child(2) {
        transform: translateY(-5.5px) rotate(-45deg);
    }

    .close-btn {
        display: none;
    }

    header .navbar-expand-lg .navbar-collapse {
        position: fixed;
        top: 65px;
        right: 24px;
        left: 24px;
        transition: all 0.4s ease-in-out;
        padding: 7px 20px !important;
        z-index: 10;
        overflow-y: auto;
        border-radius: 10px;
        background-color: #FFF;
        border-radius: 15px;
        border: 1px solid #E4EAF7;
        box-shadow: 0px 22px 45px -34px rgba(32, 76, 160, 0.7);
        min-height: 450px;
        display: none;
    }

    header .navbar-expand-lg .navbar-collapse.show {
        display: block;
    }

    header .navbar-nav,
    header .menu-item:last-child,
    header .menu-item+.menu-item {
        margin-left: 0px;
    }

    header .menu-item,
    header .menu-item>a {
        width: 100%;
    }

    header .menu-item+.menu-item {
        border-top: 1px solid #C4CEE6;
    }

    header .navbar-nav {
        align-items: flex-start !important;
    }

    header .menu-item:not(:last-child)>a,
    header .menu-item:last-child>a {
        font-weight: 500;
        font-size: 16px;
        line-height: 22px;
        padding: 13px 0;
        color: #000000;
        justify-content: space-between;
        background: transparent !important;

        &::after {
            height: 18px;
            width: 18px;
            transform: rotate(-90deg);
        }
    }

    header .menu-item>a:hover,
    header .menu-item>a:focus,
    header .menu-item>a:active,
    header .menu-item.current-menu-item>a {
        color: #204CA0 !important;
    }

    header .menu-item.menu-item-has-children:has(.megamenupanel-main-small) {
        position: static;
    }

    .megamenupanel-main {
        position: absolute;
        width: 100% !important;
        inset: 0 !important;
        transition: all .35s ease-in-out;
        transform: rotateX(0deg) !important;
        transform-origin: top !important;
        opacity: 1 !important;
        padding-top: 0;
        display: none !important;
        z-index: 10;
    }

    .megamenupanel-main.megamenupanel-show {
        display: block !important;
    }

    .megamenupanel-main-small.megamenupanel-main .megamenu-panel {
        height: 100%;
        display: block;
    }

    .megamenu-panel {
        border: none;
        grid-template-columns: 1fr;
    }

    .megamenu-nav .megamenu-item>a,
    .megamenu-tabs .megamenu-item {
        gap: 10px;
        padding: 10px;
    }

    .megamenu-item a .megamenu-desc p,
    .megamenu-tabs .megamenu-item .megamenu-desc p {
        font-size: 12px;
        line-height: 21px;
        max-width: 100%;

        b,
        strong {
            font-size: 15px;
            line-height: 21px;
        }
    }

    .megamenu-nav .megamenu-item+.megamenu-item {
        margin-top: 10px;
    }

    .megamenu-panel .megamenu-right {
        padding-top: 0;
    }

    .megamenur-head h3 {
        font-size: 20px;
        line-height: 26px;
    }

    .megamenu-tabs .megamenu-item .megamenu-desc {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: end;
    }

    .megamenupanel-back {
        background: #204CA0;
        padding: 12px 15px;
        display: flex;
        cursor: pointer;
        align-items: center;
        gap: 10px;
    }

    .megamenupanel-back img {
        max-width: 18px;
    }

    .megamenupanel-back p {
        margin-bottom: 0;
        font-size: 16px;
        color: #fff;
        font-weight: 600;
        display: flex;
        gap: 10px;
        line-height: 16px;
    }


    .megamenutb-content .megamenupanel-back {
        display: none;
    }

    .header-space {
        margin-top: 50px;
    }

    .ptmban-box {
        padding-bottom: 50px;
        min-height: 550px;
    }

    .pttitle-design h5 {
        font-size: 9px;
        line-height: 11px;
        padding: 6px 6px 6px 10px;
    }

    .ptmhm-desc h1 {
        font-size: 40px;
        line-height: 52px;
        margin-bottom: 20px;

        & b,
        & strong {
            font-size: 48px;
            line-height: 63px;
            display: block;
        }
    }

    .ptmhm-desc p,
    .pttitle p {
        font-size: 16px;
        line-height: 26px;
    }

    .ptmsec-btn,
    .ptmdef-btn,
    .ptmout-btn,
    .gform_button {
        font-size: 14px;
        line-height: 20px;
        padding: 10px 20px;
        border-radius: 8px;
    }

    .ptmhm-client {
        padding-block: 30px;
    }

    .ptmctmarq-group {
        gap: 40px;
        padding-right: 40px;
    }

    .ptmctmarq-box img {
        max-height: 24px;
        width: 80px;
    }

    .pttitle h4 {
        font-size: 11px;
        line-height: 14px;
    }

    .pttitle h2 {
        font-size: 32px;
        line-height: 42px;
    }

    .ptmhm-expert-img,
    .ptguide-img {
        max-width: 75%;
        display: block;
        margin-inline: auto;
    }

    .ptmwhy-box {
        padding: 20px 15px;
    }

    .ptmwhy-icon {
        margin-bottom: 15px;

        img,
        svg {
            height: 35px;
            width: 35px;
        }
    }

    .ptmwhy-box h3,
    .ptmeco-item h3 {
        font-size: 16px;
        line-height: 21px;
    }

    .ptmwhy-box p,
    .ptmeco-item p {
        font-size: 15px;
        line-height: 22px;
    }

    .ptmeco-item+.ptmeco-item {
        margin-top: 15px;
    }

    .ptmhmeco-main {
        margin: 55px auto;
    }

    .ptplatform-slider {
        max-height: 342px;
    }

    .ptplat-content h5,
    .ptindutabs-content h4,
    .ptmhm-cta .pttitle h4 {
        padding: 4px 11px;
        font-size: 10px;
        line-height: 14px;
    }

    .ptplat-content h3 {
        font-size: 24px;
        line-height: 30px;
    }

    .ptplat-content p {
        font-size: 15px;
        line-height: 23px;
    }

    .ptplat-content li {
        font-size: 13px;
        line-height: 16px;

        &+li {
            margin-top: 10px;
        }
    }

    .ptplat-content a,
    .ptindutabs-content a {
        font-size: 14px;
        line-height: 18px;
    }

    .ptindutabs-slider {
        max-width: 100%;
        background: #fff;
        border-radius: 50px;
        padding: 4px;

        .swiper-wrapper {
            flex-direction: row;
        }
    }

    .ptindutabs-swipermain .swiper-button-prev,
    .ptindutabs-swipermain .swiper-button-next {
        opacity: 1 !important;
        display: block;
        height: max-content;
        top: 50%;
        transform: translateY(-50%);
        margin: 0;
        color: transparent;

        svg {
            width: 40px;
            height: 40px;
        }
    }

    .ptindutabs-prnext {
        display: block;
    }

    .ptindutabs-prnext svg ellipse:first-child {
        fill: #0A0F26;
        transition: all 0.5s;
    }

    .ptindutabs-prnext svg g ellipse:first-child {
        fill: #0A0F26;
        transition: all 0.5s;
    }

    .ptindutabs-prnext .ptindutabs-swiper-next:hover svg g ellipse:first-child {
        fill: #4D7DFF;
    }

    .ptindutabs-prnext .ptindutabs-swiper-prev:hover svg g ellipse:first-child {
        fill: #4D7DFF;
    }


    .ptindutabs-swipermain .swiper-button-disabled {
        display: none;
    }

    .ptindutabs-swiper-prev {
        left: -30px;
        width: auto;
    }

    .ptindutabs-swiper-next {
        right: -30px;
        width: auto;
    }

    .ptindu-item {
        padding: 12px;
        color: #0A0F26;
        border-radius: 50px;
        justify-content: center;
        border-color: #4D7DFF;

        &.active,
        &:hover {
            background-color: #4D7DFF;
            color: #FFFFFF;
        }
    }

    .ptindu-item span {
        display: none;
    }

    .ptindutabs-slider .swiper-slide+.swiper-slide {
        margin-top: 0px;
    }

    .ptindutabs-content p {
        max-width: 100%;
    }

    .ptindutabs-content h3 {
        font-size: 26px;
        line-height: 32px;
    }

    .ptindutabs-content li {
        padding: 8px 12px;
        font-size: 12px;
        line-height: 16px;
        border-radius: 8px;
    }

    .ptcases-feature {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .ptcases-desc {
        padding: 20px 0 20px 20px;
    }

    .ptcsdesc-head {
        gap: 15px;
    }

    .ptcsdesc-head h3 {
        font-size: 20px;
        line-height: 30px;
    }

    .ptcsdesc-head span {
        font-size: 11px;
        line-height: 14px;
    }

    .ptcases-desc p {
        font-size: 14px;
        line-height: 22px;

        &:nth-child(2) {
            font-size: 15px;
            line-height: 24px;
        }

    }

    .ptcases-desc li {
        font-size: 11px;
        line-height: 15px;
    }

    .ptcases-desc li strong {
        font-size: 16px;
        line-height: 22px;
    }

    .ptstat-box h3 {
        font-size: 30px;
        line-height: 46px;
    }

    .ptstat-box p {
        font-size: 14px;
        line-height: 18px;
    }

    .pttest-box {
        padding: 20px;
    }

    .ptquote-card {
        border-radius: 15px;
    }

    .ptquote-steps {
        padding: 15px 20px;
    }

    .ptquote-step {
        grid-template-columns: 24px 1fr;
        gap: 8px;
        font-size: 14px;
        line-height: 18px;

        span {
            height: 24px;
            font-size: 11px;
            line-height: 16px;
        }
    }

    .ptquote-body {
        padding: 20px;
    }

    .ptquote-options button {
        padding: 10px 15px;
        gap: 8px;
    }

    .ptquote-body h3 {
        font-size: 16px;
        line-height: 20px;
        margin-bottom: 20px;
    }

    .ptquote-options button svg,
    .ptquote-options button img {
        width: 20px;
        height: 20px;
    }

    .ptquote-action {
        margin-top: 30px;
    }

    .ptquote-result,
    .ptquote-form {
        border-radius: 10px;
    }

    .ptquote-summary,
    .ptquote-form {
        padding: 20px;
    }

    .ptquote-form h4 {
        font-size: 18px;
        line-height: 23px;
        text-align: center;
    }

    .ptquote-form p {
        margin-bottom: 20px;
        text-align: center;
    }

    .ptfqacco .accordion-button {
        padding: 17px 20px;
    }

    .ptfqacco .accordion-body {
        padding: 0 20px 20px 20px;
    }

    .ptguide-card {
        padding: 30px;
        border-radius: 15px;
    }

    .ptmhm-value .row:nth-child(1) {
        row-gap: 15px;
    }

    .about-leader-row-reverse .about-leader-info {
        align-items: center;

        p {
            text-align: center;
        }
    }

    .about-cta-paths {
        flex-direction: row;
    }

    .about-mvv-panels {
        margin-top: 30px;
    }

    .about-leader-list {
        gap: 30px;
    }

    .ptstack-box.mt-30 {
        margin-top: 0;
    }

    .product-solution-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .product-solution-visual {
        height: 280px;
        order: -1;
    }

    .ptminner-blog .alm-listing {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .service-industries-cards {
        grid-template-columns: repeat(3, 1fr);
    }

    .pm-feature-shell {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .pm-feature-frame {
        position: relative;
        height: 320px;
        order: -1;
        top: 0;
    }

    .pm-feature-tab-text small {
        display: block !important;
        margin-top: 4px;
    }

    .ebook-hero-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .ebook-hero-copy h1 {
        font-size: 32px;
    }

    .ebook-hero-cover {
        margin-bottom: -40px;
        max-width: 320px;
        margin-left: auto;
        margin-right: auto;
    }

    .ebook-form-card {
        margin-left: 0;
        max-width: 400px;
        margin-inline: auto;
    }

    .ebook-narrative-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .ebook-narrative-visual {
        height: 280px;
        order: -1;
    }

    .ebook-narrative-copy h2 {
        font-size: 24px;
    }

    .ebook-brand-panel {
        padding: 40px 30px;
    }

    .ebook-brand-panel-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .ebook-brand-panel-copy p {
        font-size: 18px;
    }

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

    .whyplutomen-wheel-grid {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .whyplutomen-wheel-visual {
        order: -1;
    }

    .whyplutomen-wheel-point h3 {
        border-bottom: none;
        padding-bottom: 0;
    }

    .case-study-hero-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .case-study-hero-copy h1 {
        font-size: 32px;
    }

    .career-benefits-list {
        gap: 16px 20px;
    }

    .about-story-milestone {
        padding: 0 15px;
    }

    .career-benefits-item {
        padding: 15px;
    }

    .solution-benefits h3 {
        font-size: 18px;
        line-height: 24px;
    }

    .connect-capability-panel-img {
        & img {
            width: 60%;
            margin-inline: auto;
            display: block;
        }
    }

    .ptminner-hero-image-frame img {
        filter: drop-shadow(0px 6px 6px rgba(11, 18, 48, 0.35));
    }

    .connect-problem .pttitle-design h5 {
        margin-inline: auto;
    }

    .pm-stat-value {
        font-size: 30px;
        line-height: 36px;
    }

    .pm-stat-label {
        font-size: 14px;
        line-height: 20px;
    }

    .feature-capabilities:has(.row.mt-50) .feac-list {
        margin-top: 30px;
    }

    .ebook-takeaway-row {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .case-study-meta {
        gap: 50px;
    }
}


@media screen and (max-width: 767px) {
    .connect-devices-icon {
        width: 52px;
        height: 52px;
    }

    .connect-devices-icon img {
        max-width: 22px;
        max-height: 22px;
    }

    .connect-devices-rail::before {
        top: 26px;
        left: 26px;
        right: 26px;
    }

    .connect-devices-node p {
        font-size: 11px;
    }

    .connect-results-arrow {
        display: none;
    }

    .connect-results-spotlight {
        flex-direction: column;
        gap: 16px;
    }

    .connect-results-spotlight div:first-child {
        border-right: none;
        border-bottom: 1px solid #E4EAF7;
        padding-bottom: 16px;
    }

    .connect-results-panel h2 {
        font-size: 26px;
    }

    .connect-features-grid,
    .connect-features-grid-2 {
        grid-template-columns: 1fr;
    }

    .connect-features-head {
        gap: 12px;
        padding: 20px 0;
    }

    .connect-features-head-num {
        display: none;
    }

    .connect-demo-url {
        display: none;
    }

    .connect-demo-tabs {
        grid-template-columns: 1fr;
        gap: 10px;
        background: transparent;
        border: none;
        padding: 0;
    }

    .connect-demo-tab-indicator {
        display: none;
    }

    .connect-demo-tab {
        background: #FFFFFF;
        border: 1px solid #E4EAF7;
    }

    #connect-demo-01:checked~.connect-demo-tabs label[for="connect-demo-01"],
    #connect-demo-02:checked~.connect-demo-tabs label[for="connect-demo-02"],
    #connect-demo-03:checked~.connect-demo-tabs label[for="connect-demo-03"] {
        border-color: #204CA0;
    }

    #connect-demo-01:checked~.connect-demo-tabs label[for="connect-demo-01"] .connect-demo-tab-num,
    #connect-demo-02:checked~.connect-demo-tabs label[for="connect-demo-02"] .connect-demo-tab-num,
    #connect-demo-03:checked~.connect-demo-tabs label[for="connect-demo-03"] .connect-demo-tab-num,
    #connect-demo-01:checked~.connect-demo-tabs label[for="connect-demo-01"] .connect-demo-tab-text strong,
    #connect-demo-02:checked~.connect-demo-tabs label[for="connect-demo-02"] .connect-demo-tab-text strong,
    #connect-demo-03:checked~.connect-demo-tabs label[for="connect-demo-03"] .connect-demo-tab-text strong,
    #connect-demo-01:checked~.connect-demo-tabs label[for="connect-demo-01"] .connect-demo-tab-text small,
    #connect-demo-02:checked~.connect-demo-tabs label[for="connect-demo-02"] .connect-demo-tab-text small,
    #connect-demo-03:checked~.connect-demo-tabs label[for="connect-demo-03"] .connect-demo-tab-text small {
        color: #204CA0;
    }

    .connect-testi-quote {
        font-size: 20px;
    }

    .connect-testi-mark {
        font-size: 70px;
    }

    .connect-problem-rows li {
        gap: 16px;
        padding: 22px 0;
    }

    .connect-problem-rows li:hover {
        gap: 16px;
    }

    .connect-problem-rows p {
        font-size: 17px;
        line-height: 26px;
    }

    .about-mvv-nav {
        max-width: 100%;
    }

    .about-mvv-tab-num {
        display: none;
    }

    .about-mvv-tab-text {
        font-size: 11px;
        white-space: normal;
        text-align: center;
        line-height: 11px;
    }

    .about-mvv-panel-img {
        aspect-ratio: 16 / 10;
    }

    .about-story-photo {
        border-radius: 0 36px 0 36px;
    }

    .about-story-visual {
        max-width: 240px;
    }

    .about-story-chip {
        padding: 10px 16px;
    }

    .about-story-chip-company {
        left: 0;
    }

    .about-story-chip-global {
        right: 0;
    }

    .about-story-narrative h2 {
        font-size: 26px;
    }

    .about-story-timeline {
        grid-template-columns: 1fr;
        row-gap: 30px;
        margin-top: 50px;
        padding-top: 30px;
    }

    .about-story-milestone {
        border-right: none;
        border-bottom: 1px solid #E4EAF7;
        padding-bottom: 30px;

        &:last-child {
            border-bottom: none;
            padding-bottom: 0;
        }
    }

    .mtb-120 {
        margin-block: 50px;
    }

    .ptb-80 {
        padding-block: 40px;
    }

    header .navbar-expand-lg .navbar-collapse {
        top: 60px;
        right: 8px;
        left: 8px;
        padding: 7px 15px !important;
        min-height: 500px;
    }

    .megamenu-panel {
        display: block;
    }

    .megamenu-panel .megamenu-left,
    .megamenu-panel .megamenu-right {
        padding: 10px;
    }

    .megamenu-panel {
        box-shadow: none !important;
    }

    .megamenu-nav .megamenu-item>a,
    .megamenu-tabs .megamenu-item {
        .megamenu-icon {
            min-width: 35px;
            height: 35px;
            background-color: #204CA0;
            display: grid;
            place-items: center;
            border-radius: 8px;

            img {
                max-width: 20px;
                max-height: 20px;
            }
        }
    }


    .megamenu-tabs .megamenu-item:nth-child(1) {
        grid-column: 1 span;
    }

    .megamenu-tabs {
        grid-template-columns: repeat(1, 1fr);
    }

    .megamenu-tabs .megamenu-item+.megamenu-item {
        & a {
            display: flex;

            & .megamenu-icon {
                max-width: 35px;
            }
        }
    }

    .megamenur-head {
        margin-bottom: 10px;
    }

    .megamenu-panel:has(.megamenu-tabs) .megamenur-head {
        padding-inline: 10px;
        margin-top: 10px;
    }

    .megamenu-panel:has(.megamenu-tabs) .megamenurnav-main {
        padding-inline: 10px;
    }

    .megamenurnav-main .megamenur-nav {
        gap: 12px;
        grid-template-columns: 1fr;
    }

    .megamenu-tabs .megamenu-item .megamenu-desc {
        flex-wrap: wrap;
    }

    .megamenutb-content {
        position: absolute;
        inset: 0;
        background: #FFF;
    }

    .megamenu-panel:has(.megamenu-tabs) .megamenu-right {
        display: none;
    }

    .megamenu-arrow img {
        max-width: 15px;
    }

    .megamenutb-content .megamenupanel-back {
        display: flex;
    }

    .ptmban-box {
        padding-top: 250px;
        padding-bottom: 40px;
        min-height: initial;
        z-index: 0;

        &::before {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(0deg, #000000 0%, rgba(0, 0, 0, 0) 70%);
            z-index: 0;
        }
    }


    .pttitle-design h5 {
        font-size: 8px;
        line-height: 10px;
        padding: 6px 8px;
        margin-bottom: 15px;

        &::before {
            display: none;
        }
    }

    .ptmban-box .pttitle-design h5 {
        margin-bottom: 15px;
        margin-inline: auto;
    }

    .ptmhm-desc {
        text-align: center;
    }

    .ptmhm-desc h1 {
        font-size: 30px;
        line-height: 42px;
        margin-bottom: 15px;

        & b,
        & strong {
            font-size: 30px;
            line-height: 42px;
            display: block;
        }
    }

    .ptmhm-desc .ptmbtn-inner {
        justify-content: center;
        margin-top: 20px;
    }

    .ptmsec-btn,
    .ptmdef-btn,
    .ptmout-btn,
    .gform_button {
        font-size: 11px;
        line-height: 18px;
        padding: 8px 13px;
        border-radius: 6px;
    }

    .ptmctmarq-group {
        gap: 30px;
        padding-right: 30px;
    }

    .ptmctmarq-box img {
        max-height: 20px;
        width: 68px;
    }

    .ptmhm-expert-img,
    .ptguide-img {
        max-width: 100%;
    }

    .pttitle h2 {
        font-size: 26px;
        line-height: 36px;
    }

    .ptmhm-desc p,
    .pttitle p,
    .ptquote-note p {
        font-size: 15px;
        line-height: 24px;
    }

    .ptmbtn-inner.mt-50,
    .ptmbtn-inner.mt-30 {
        margin-top: 20px;
    }

    .ptmhm-expert-tags li {
        font-size: 12px;
        line-height: 15px;
    }

    .ptmeco-item {
        grid-template-columns: 30px 1fr;
        gap: 10px;

        span {
            height: 30px;
            font-size: 14px;
            line-height: 18px;
        }
    }

    .ptmhmeco-logo img {
        max-width: 90px;
    }

    .ptmhmeco-main {
        width: 285px;
        height: 285px;
    }

    .ptmhmeco-main .ptmhmeco-wrap:nth-child(2) {
        width: 180px;
        height: 180px;
        top: 53px;
        left: 53px;
    }

    .ptmhmeco-box:nth-child(1) {
        top: -35px;
    }

    .ptmhmeco-box:nth-child(2) {
        top: 180px;
        left: -5px;
    }

    .ptmhmeco-box:nth-child(3) {
        top: 180px;
        right: -5px;
    }

    .ptmhmeco-img {
        width: 60px;
        height: 60px;

        img,
        svg {
            max-width: 30px;
        }
    }

    .ptplatformtabmain {
        display: block;
    }

    .ptplat-sticky {
        min-height: initial;
        margin-block: 50px;
    }

    .ptplatform-slider {
        max-height: initial;
        overflow: visible;

        .swiper-wrapper {
            display: block;
            transform: none;
        }

        .swiper-slide {
            width: 100%;
            height: auto;
        }
    }

    .ptplat-box {
        display: none;
    }

    .ptindutabs-swiper-prev {
        left: -10px;
    }

    .ptindutabs-swiper-next {
        right: -10px;
    }

    .ptindutabs-content h3 {
        font-size: 22px;
        line-height: 28px;
    }

    .ptindutabs-content h5 {
        font-size: 11px;
        line-height: 14px;
    }

    .ptindutabs-content ul {
        margin-block: 20px;
    }

    .ptindutabs-content li {
        padding: 7px 10px;
        font-size: 11px;
        line-height: 15px;
        border-radius: 5px;
    }

    .ptplat-content a,
    .ptindutabs-content a {
        font-size: 13px;
        line-height: 17px;
    }

    .ptmhm-labs .pttitle li {
        font-size: 13px;
        line-height: 16px;
        padding: 8px 10px;
    }

    .ptmhm-labs .pttitle ul {
        gap: 20px;
        margin: 20px 0 20px;
    }

    .ptmhm-labs .pttitle li::after {
        right: calc(-20px / 2 - 6px);
    }

    .ptlabs-main {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }

    .ptcases-feature {
        gap: 0;
        flex-direction: column-reverse;
        display: flex;
    }

    .ptcases-desc {
        padding: 15px;
    }

    .ptcsdesc-head h3 {
        font-size: 18px;
        line-height: 26px;
    }

    .ptcases-desc p {
        font-size: 13px;
        line-height: 21px;

        &:nth-child(2) {
            font-size: 14px;
            line-height: 23px;
        }
    }

    .ptcases-desc ul {
        gap: 10px;
    }

    .ptmhm-stack .pttitle p {
        max-width: 100%;
    }

    .ptstack-box {
        padding: 15px;
        border-radius: 10px;
    }

    .ptstack-logos {
        gap: 10px;
    }

    .ptmhm-stack .col-lg-12.mt-30 {
        margin-top: 0;
    }

    .ptstack-checks li {
        font-size: 11px;
        line-height: 13px;
        padding: 9px 12px;
    }

    .pttest-box p {
        font-size: 14px;
        line-height: 24px;
    }

    .ptquote-steps {
        padding: 15px;
        overflow-x: auto;
        gap: 25px;
        justify-content: flex-start;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .ptquote-steps::-webkit-scrollbar {
        display: none;
    }

    .ptquote-step {
        text-wrap: nowrap;
        flex-shrink: 0;
    }

    .ptquote-body {
        padding: 15px;
    }

    .ptquote-body h3 {
        font-size: 15px;
        line-height: 18px;
        margin-bottom: 15px;
    }

    .ptquote-options {
        gap: 10px;
    }

    .ptquote-options button {
        padding: 8px 12px;
        font-size: 13px;
        line-height: 19px;
        border-radius: 6px;
    }

    .ptquote-action {
        margin-top: 20px;
    }

    .ptquote-summary {
        gap: 10px;
    }

    .ptfqacco .accordion-button {
        padding: 15px;
        font-size: 15px;
        line-height: 19px;
        gap: 15px;
    }

    .ptfqacco .accordion-body {
        padding: 0 15px 15px 15px;
    }

    .ptfqacco .accordion-body p,
    .ptfqacco .accordion-body li {
        font-size: 14px;
        line-height: 24px;
    }

    .ptmhm-partner .ptmvalue-box {
        padding: 20px;
    }

    .ptguide-card {
        padding: 20px;
        border-radius: 15px;
    }

    .ptmhm-guide .pttitle li {
        font-size: 13px;
        line-height: 17px;
    }

    .ptmhm-cta {
        background-position: right !important;
    }

    footer {
        padding: 40px 0 25px;
    }

    .ft-bottom .row {
        row-gap: 10px;
    }

    .pf-copyright {
        text-align: center !important;
    }

    .ptminner-banner-visual {
        max-width: 260px;
    }

    .about-story-img {
        height: 320px;
    }

    .about-mvv-img img {
        height: 150px;
    }

    .about-team-img {
        width: 100px;
        height: 100px;
    }

    .about-actions-box {
        padding: 26px 22px;
    }

    .ptminner-hero-image-frame {
        width: 100%;
        height: 210px;
    }

    .ptminner-banner {
        padding: 40px 0;
    }

    body {
        font-size: 15px;
        line-height: 24px;
    }

    .about-leader-photo,
    .about-leader-row-reverse .about-leader-photo {
        width: 100%;
        min-height: fit-content;
    }

    .about-cta-paths {
        flex-direction: column;
    }

    .cookie-consent-bar {
        flex-direction: column;
        align-items: stretch;
    }

    .cookie-consent-actions {
        justify-content: stretch;
    }

    .cookie-consent-settings-btn,
    .cookie-consent-accept-btn {
        flex: 1;
        text-align: center;
    }

    .thankyou-content h1,
    .thankyou-content h2 {
        font-size: 28px;
    }

    .thankyou-content p {
        font-size: 16px;
        line-height: 26px;
    }

    .thankyou-hero::before {
        background-image: repeating-linear-gradient(90deg, #E4EAF7 0 1px, transparent 1px 60px);
    }

    .thankyou-actions {
        margin-top: 26px;
    }

    .thankyou-actions .ptmdef-btn,
    .thankyou-actions .ptmout-btn {
        width: 100%;
        text-align: center;
    }

    .thankyou-next {
        padding: 24px 20px;
    }

    .thankyou-next-head {
        margin-bottom: 22px;
    }

    .thankyou-video {
        margin-top: 32px;
        border-radius: 14px;
    }

    .thankyou-testimonial {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
        padding: 26px 20px;
    }

    .thankyou-testimonial p {
        font-size: 16px;
        line-height: 27px;
    }

    .thankyou-testimonial p::before {
        left: 50%;
        transform: translateX(-50%);
    }

    .workflow-problem-img {
        height: 280px;
    }

    .service-industries-cards {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }

    .service-industry-card {
        padding: 22px 18px;
    }

    .ptminner-blog .alm-listing {
        grid-template-columns: repeat(1, 1fr) !important;
    }

    .service-reads-grid {
        grid-template-columns: 1fr;
    }

    .ebook-takeaway-row {
        flex-direction: column;
    }

    .ebook-takeaway {
        border-left: none;
        border-top: 1px solid #E4EAF7;
    }

    .ebook-takeaway:first-child {
        border-top: none;
    }

    .ebook-takeaway::before {
        top: -1px;
        left: 0;
        width: 0;
        height: 3px;
    }

    .ebook-takeaway:hover::before {
        width: 100%;
        height: 3px;
    }

    .ebook-final-cta-shell h2 {
        font-size: 26px;
    }

    .solution-stats-groups {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .solution-stats-numbers {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(3, auto);
        row-gap: 24px;
    }

    .solution-stats-numbers>div:nth-child(2n) {
        border-right: none;
    }

    .solution-stats-numbers>div {
        border-bottom: 1px solid #E4EAF7;
        padding-bottom: 20px;
    }

    .solution-statement-card {
        padding: 30px 20px;
    }

    .case-study-inner-img {
        height: 260px;
    }

    .case-study-meta {
        gap: 24px;
    }

    .case-study-copy h2 {
        font-size: 26px;
    }

    .blog-article-body h2 {
        font-size: 22px;
    }

    .blog-toc {
        position: static;
        margin-bottom: 30px;
    }

    .career-benefits-list {
        grid-template-columns: 1fr;
    }

    .career-jobs-head {
        align-items: flex-start;
    }

    .career-jobs-panel-foot {
        flex-wrap: wrap;
    }

    .pm-stats-row {
        flex-direction: column;
        gap: 30px;
    }

    .pm-stat-divider {
        display: none;
    }

    .ptminner-banner-crumb {
        margin-bottom: 15px;
    }

    .ptminner-banner-light .ptminner-banner-content h1 {
        margin-bottom: 12px;
    }

    .about-story-narrative p,
    .career-jobs-panel-inner p,
    .case-study-copy p {
        font-size: 15px;
        line-height: 25px;
    }

    .product-cta-form {
        padding: 20px;
    }

    .solution-products-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .ebook-takeaway-row {
        grid-template-columns: repeat(1, 1fr);
    }

    .ebook-brand-panel-copy h3 {
        font-size: 22px;
        margin: 10px 0 14px;
    }

    .ebook-brand-panel-copy p {
        font-size: 15px;
        font-weight: 400;
    }

    .ebook-brand-panel {
        padding: 30px 25px;
    }

    .resource-card {
        flex-direction: column !important;
        overflow: hidden;
        background: #FFFFFF;
        transition: all 0.35s ease-in-out;
    }

    .resource-card-media {
        width: 100% !important;
        height: fit-content !important;
    }

    .ptminner-blog .pttitle.mb-30 {
        margin-bottom: 0;
    }

    .blog-article-body h2 {
        font-size: 20px;
        margin: 26px 0 15px;
    }

    .blog-author-bio {
        padding: 18px;
        flex-wrap: wrap;

    }

    .blog-article-body img {
        margin-bottom: 20px;
    }
    .case-study-hero-logo {
	height: 34px;
	margin-bottom: 20px;
}
.case-study-hero-copy h1 {
	font-size: 24px;
}
.case-study-meta {
	gap: 14px;
	margin-top: 15px;
}
}