@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap");

:root {
    --navy: #050915;
    --navy-2: #081426;
    --ink: #101624;
    --blue: #0b63ce;
    --blue-soft: #28a0ff;
    --gold: #f2c94c;
    --gold-deep: #c89216;
    --white: #ffffff;
    --muted: #708097;
    --soft: #f4f7fb;
    --line: rgba(255, 255, 255, .14);
    --shadow: 0 24px 70px rgba(7, 18, 38, .16);
    --shadow-dark: 0 28px 90px rgba(0, 0, 0, .34);
}

/* Homepage audit refresh */
.home-section-heading {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, .55fr);
    gap: 64px;
    align-items: end;
    margin-bottom: 44px;
}
.home-section-heading .section-title {
    max-width: 850px;
    margin: 10px 0 0;
    font-size: 3.25rem;
    line-height: 1.04;
}
.home-section-heading > p {
    margin: 0 0 6px;
    color: #647087;
    font-size: 1.02rem;
    line-height: 1.72;
}
.home-section-footer {
    display: flex;
    justify-content: center;
    margin-top: 34px;
}
.home-problem-suite {
    color: #fff;
    background: #06152d;
}
.home-problem-layout {
    display: grid;
    grid-template-columns: .72fr 1.28fr;
    gap: 64px;
    align-items: center;
}
.home-problem-copy .eyebrow {
    color: #f2c94c;
}
.home-problem-copy .section-title {
    margin: 12px 0 20px;
    color: #fff;
    font-size: 3.4rem;
    line-height: 1.03;
}
.home-problem-copy > p {
    max-width: 570px;
    color: rgba(255,255,255,.68);
    font-size: 1.05rem;
    line-height: 1.75;
}
.home-problem-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}
.home-problem-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.home-problem-card {
    position: relative;
    min-height: 252px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 20px;
    background: #0c2447;
    box-shadow: 0 24px 54px rgba(0,0,0,.2);
}
.home-problem-card > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .28;
}
.home-problem-card::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(180deg, rgba(4,15,35,.12), rgba(4,15,35,.94));
}
.home-problem-card > div {
    position: absolute;
    z-index: 1;
    right: 22px;
    bottom: 22px;
    left: 22px;
}
.home-problem-card i {
    display: grid;
    width: 46px;
    height: 46px;
    margin-bottom: 36px;
    place-items: center;
    border-radius: 13px;
    color: #071328;
    background: #f2c94c;
    font-size: 1.15rem;
}
.home-problem-card span {
    display: block;
    margin-bottom: 8px;
    color: #65b4ff;
    font-size: .7rem;
    font-weight: 900;
    text-transform: uppercase;
}
.home-problem-card h3 {
    margin: 0;
    color: #fff;
    font-size: 1.18rem;
    line-height: 1.38;
}
.home-services-suite {
    background: #eef4ff;
}
.home-service-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}
.home-service-grid .service-card {
    min-height: 100%;
    border: 1px solid rgba(195,211,234,.88);
    background: rgba(255,255,255,.84);
    box-shadow: 0 24px 60px rgba(24,48,92,.11);
    backdrop-filter: blur(14px);
}
.home-service-grid .card-content {
    min-height: 260px;
    display: flex;
    flex-direction: column;
}
.home-service-grid .card-link {
    margin-top: auto;
}
.home-process-suite {
    background: #fff;
}
.home-process-panel {
    padding: 56px;
    overflow: hidden;
    border-radius: 28px;
    color: #fff;
    background: #071a38;
    box-shadow: 0 34px 80px rgba(7,25,57,.2);
}
.home-section-heading-light .section-title {
    color: #fff;
}
.home-section-heading-light > p {
    color: rgba(255,255,255,.64);
}
.home-section-heading-light .eyebrow {
    color: #f2c94c;
}
.home-process-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 20px;
}
.home-process-grid article {
    position: relative;
    min-height: 270px;
    padding: 24px 20px;
    border-right: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.045);
    transition: background .24s ease, transform .24s ease;
}
.home-process-grid article:last-child {
    border-right: 0;
}
.home-process-grid article:hover {
    background: rgba(32,132,245,.16);
}
.home-process-grid article > span {
    color: rgba(255,255,255,.48);
    font-size: .72rem;
    font-weight: 900;
}
.home-process-grid i {
    display: grid;
    width: 52px;
    height: 52px;
    margin: 48px 0 26px;
    place-items: center;
    border-radius: 14px;
    color: #071328;
    background: #f2c94c;
    font-size: 1.25rem;
}
.home-process-grid h3 {
    color: #fff;
    font-size: 1.08rem;
}
.home-process-grid p {
    margin: 0;
    color: rgba(255,255,255,.62);
    font-size: .86rem;
    line-height: 1.62;
}
.home-pricing-suite {
    background: #f7f8fb;
}
.home-pricing-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}
.home-price-card {
    position: relative;
    overflow: hidden;
    border: 1px solid #dce5f2;
    border-radius: 22px;
    background: rgba(255,255,255,.9);
    box-shadow: 0 24px 60px rgba(24,48,92,.1);
    transition: transform .24s ease, box-shadow .24s ease;
}
.home-price-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 32px 72px rgba(24,48,92,.16);
}
.home-price-card.is-recommended {
    border-color: #efc33c;
}
.home-price-card.is-recommended::before {
    position: absolute;
    z-index: 2;
    top: 14px;
    right: 14px;
    padding: 7px 10px;
    border-radius: 999px;
    content: "Recommended";
    color: #071328;
    background: #f2c94c;
    font-size: .65rem;
    font-weight: 900;
    text-transform: uppercase;
}
.home-price-media {
    position: relative;
    aspect-ratio: 16/9;
    overflow: hidden;
}
.home-price-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease;
}
.home-price-card:hover img {
    transform: scale(1.04);
}
.home-price-media span {
    position: absolute;
    bottom: 14px;
    left: 14px;
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 999px;
    color: #0a172c;
    background: rgba(255,255,255,.86);
    font-size: .68rem;
    font-weight: 900;
    backdrop-filter: blur(12px);
}
.home-price-body {
    display: flex;
    min-height: 300px;
    flex-direction: column;
    padding: 26px;
}
.home-price-body > small {
    color: #1670dc;
    font-weight: 850;
    text-transform: uppercase;
}
.home-price-body h3 {
    margin: 9px 0 12px;
    color: #08162b;
    font-size: 1.45rem;
}
.home-price-body p {
    color: #647087;
    line-height: 1.65;
}
.home-price-body > strong {
    margin-top: auto;
    color: #0b63ce;
    font-size: 1.45rem;
}
.home-price-body > a {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    margin-top: 18px;
    color: #101828;
    font-weight: 850;
    text-decoration: none;
}
.home-proof-suite {
    background: #eef4ff;
}
.home-case-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}
.home-case-grid.home-case-count-1 {
    grid-template-columns: 1fr;
}
.home-case-card {
    overflow: hidden;
    border: 1px solid #d9e4f2;
    border-radius: 22px;
    background: rgba(255,255,255,.86);
    box-shadow: 0 24px 64px rgba(22,47,91,.12);
    backdrop-filter: blur(14px);
}
.home-case-count-1 .home-case-card {
    display: grid;
    max-width: 1120px;
    grid-template-columns: 1.08fr .92fr;
    margin: 0 auto;
}
.home-case-media {
    min-height: 310px;
}
.home-case-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.home-case-content {
    display: flex;
    min-height: 310px;
    flex-direction: column;
    justify-content: center;
    padding: 34px;
}
.home-case-content > span {
    color: #f07a20;
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}
.home-case-content h3 {
    margin: 12px 0;
    color: #08162b;
    font-size: 1.65rem;
}
.home-case-content p {
    color: #647087;
    line-height: 1.7;
}
.home-case-content > strong {
    margin-top: 8px;
    color: #0b63ce;
    font-size: 1.25rem;
}
.home-case-content > strong small {
    color: #718096;
    font-size: .72rem;
    font-weight: 700;
}
.home-case-content > a {
    display: inline-flex;
    gap: 7px;
    align-items: center;
    margin-top: 20px;
    color: #0b63ce;
    font-weight: 850;
    text-decoration: none;
}
.home-testimonial-suite {
    background: #fff;
}
.home-testimonial-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 22px;
}
.home-testimonial-card {
    position: relative;
    min-height: 330px;
    padding: 30px;
    overflow: hidden;
    border: 1px solid #dce5f2;
    border-radius: 22px;
    background: rgba(248,251,255,.84);
    box-shadow: 0 24px 58px rgba(22,47,91,.1);
    backdrop-filter: blur(14px);
}
.home-testimonial-card::after {
    position: absolute;
    right: -24px;
    bottom: -34px;
    width: 120px;
    height: 120px;
    border: 22px solid rgba(11,99,206,.06);
    border-radius: 28px;
    content: "";
    transform: rotate(30deg);
}
.home-testimonial-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.testimonial-stars {
    display: inline-flex;
    gap: 3px;
    color: #eeb823;
}
.home-testimonial-top > i {
    color: #1670dc;
    font-size: 2.4rem;
}
.home-testimonial-card blockquote {
    position: relative;
    z-index: 1;
    min-height: 120px;
    margin: 28px 0;
    color: #26344c;
    font-size: 1.08rem;
    line-height: 1.72;
}
.home-testimonial-card .testimonial-person {
    position: relative;
    z-index: 1;
}
.testimonial-person > img,
.testimonial-admin-person img {
    width: 54px;
    height: 54px;
    border-radius: 15px;
    object-fit: cover;
}
.home-testimonial-card .testimonial-person > span {
    width: 54px;
    height: 54px;
    border-radius: 15px;
}

@media (max-width: 1199px) {
    .home-problem-layout {
        grid-template-columns: 1fr;
    }
    .home-service-grid,
    .home-pricing-grid,
    .home-case-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .home-process-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .home-process-grid article:nth-child(3) {
        border-right: 0;
    }
    .home-process-grid article:nth-child(-n+3) {
        border-bottom: 1px solid rgba(255,255,255,.14);
    }
}

@media (max-width: 767px) {
    .home-section-heading {
        grid-template-columns: 1fr;
        gap: 18px;
        margin-bottom: 30px;
    }
    .home-section-heading .section-title,
    .home-problem-copy .section-title {
        font-size: 2.2rem;
    }
    .home-problem-grid,
    .home-service-grid,
    .home-pricing-grid,
    .home-case-grid,
    .home-case-count-1 .home-case-card {
        grid-template-columns: 1fr;
    }
    .home-problem-card {
        min-height: 230px;
    }
    .home-process-panel {
        padding: 28px 20px;
    }
    .home-process-grid {
        grid-template-columns: 1fr;
    }
    .home-process-grid article,
    .home-process-grid article:nth-child(3) {
        min-height: 150px;
        padding: 22px 20px 22px 84px;
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.14);
    }
    .home-process-grid article:last-child {
        border-bottom: 0;
    }
    .home-process-grid i {
        position: absolute;
        top: 50%;
        left: 18px;
        width: 48px;
        height: 48px;
        margin: 0;
        transform: translateY(-50%);
    }
    .home-case-media {
        min-height: 230px;
    }
    .home-case-content {
        min-height: auto;
        padding: 26px;
    }
}

/* About page */
.about-story-section {
    background: #fff;
}
.about-story-layout {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(440px, 1.08fr);
    gap: 72px;
    align-items: center;
}
.about-story-copy h2,
.about-team-intro h2,
.about-capability-copy h2 {
    margin: 12px 0 22px;
    color: #071328;
    font-size: 3.35rem;
    line-height: 1.02;
    letter-spacing: 0;
}
.about-story-copy > p,
.about-team-intro > p,
.about-capability-copy p {
    color: #5c6880;
    font-size: 1.06rem;
    line-height: 1.75;
}
.about-story-copy .about-story-lead {
    color: #15233d;
    font-size: 1.2rem;
    font-weight: 650;
}
.about-story-signals {
    display: grid;
    gap: 0;
    margin-top: 32px;
    border-top: 1px solid #dfe6f2;
}
.about-story-signals span {
    display: grid;
    grid-template-columns: 52px 1fr;
    align-items: center;
    min-height: 62px;
    border-bottom: 1px solid #dfe6f2;
    color: #26344e;
    font-weight: 700;
}
.about-story-signals strong {
    color: #1670dc;
    font-size: .82rem;
}
.about-story-visual {
    position: relative;
    min-height: 600px;
    overflow: hidden;
    border: 1px solid rgba(14, 77, 159, .12);
    border-radius: 28px;
    background: #eaf1ff;
    box-shadow: 0 32px 70px rgba(21, 46, 91, .16);
}
.about-story-visual > img {
    width: 100%;
    height: 600px;
    object-fit: cover;
}
.about-story-overlay {
    position: absolute;
    right: 24px;
    bottom: 24px;
    left: 24px;
    display: flex;
    gap: 16px;
    align-items: center;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, .64);
    border-radius: 18px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 18px 44px rgba(8, 28, 64, .16);
    backdrop-filter: blur(16px);
}
.about-story-overlay > i {
    display: grid;
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 14px;
    background: #071b3d;
    color: #f4c842;
    font-size: 1.6rem;
}
.about-story-overlay span {
    display: grid;
    gap: 3px;
}
.about-story-overlay small {
    color: #1670dc;
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
}
.about-story-overlay strong {
    color: #071328;
    line-height: 1.35;
}
.about-story-stat {
    position: absolute;
    top: 22px;
    right: 22px;
    display: flex;
    max-width: 170px;
    gap: 10px;
    align-items: center;
    padding: 13px 15px;
    border: 1px solid rgba(255, 255, 255, .78);
    border-radius: 16px;
    background: rgba(5, 23, 53, .9);
    color: #fff;
    box-shadow: 0 14px 32px rgba(4, 16, 39, .22);
}
.about-story-stat strong {
    color: #f4c842;
    font-size: 1.8rem;
}
.about-story-stat span {
    font-size: .76rem;
    font-weight: 700;
    line-height: 1.25;
}
.about-direction-section {
    padding-top: 18px;
    background: #fff;
}
.about-direction-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    overflow: hidden;
    border-radius: 28px;
    box-shadow: 0 28px 64px rgba(18, 45, 88, .15);
}
.about-direction-card {
    position: relative;
    min-height: 430px;
    padding: 54px;
}
.about-direction-card.mission {
    background: #07172f;
    color: #fff;
}
.about-direction-card.vision {
    background: #f4c842;
    color: #071328;
}
.about-direction-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 62px;
}
.about-direction-head span {
    font-size: .78rem;
    font-weight: 900;
}
.about-direction-head i {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border: 1px solid currentColor;
    border-radius: 15px;
    font-size: 1.45rem;
}
.about-direction-card > small {
    display: block;
    margin-bottom: 14px;
    color: #2087ff;
    font-weight: 850;
    text-transform: uppercase;
}
.about-direction-card.vision > small {
    color: #0c57b5;
}
.about-direction-card h2 {
    max-width: 600px;
    margin-bottom: 20px;
    font-size: 2.65rem;
    line-height: 1.08;
    letter-spacing: 0;
}
.about-direction-card p {
    max-width: 590px;
    margin: 0;
    color: rgba(255, 255, 255, .72);
    font-size: 1.03rem;
    line-height: 1.7;
}
.about-direction-card.vision p {
    color: rgba(7, 19, 40, .72);
}
.compact-heading {
    max-width: 780px;
    margin-bottom: 46px;
}
.compact-heading h2 {
    margin: 10px 0 16px;
    color: #071328;
    font-size: 3rem;
    line-height: 1.06;
    letter-spacing: 0;
}
.compact-heading p {
    color: #637087;
    font-size: 1.05rem;
}
.about-principles-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid #dfe6f2;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 26px 58px rgba(21, 48, 94, .1);
}
.about-principle-card {
    min-height: 300px;
    padding: 30px;
    border-right: 1px solid #dfe6f2;
}
.about-principle-card:last-child {
    border-right: 0;
}
.about-principle-card > div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 76px;
}
.about-principle-card > div span {
    color: #7d899d;
    font-size: .76rem;
    font-weight: 800;
}
.about-principle-card i {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 14px;
    background: #e9f3ff;
    color: #126dd6;
    font-size: 1.25rem;
}
.about-principle-card h3 {
    margin-bottom: 13px;
    color: #0a172c;
    font-size: 1.28rem;
}
.about-principle-card p {
    margin: 0;
    color: #647087;
    line-height: 1.65;
}
.about-team-section {
    background: #fff;
}
.about-team-intro {
    display: grid;
    grid-template-columns: 1fr .65fr;
    gap: 72px;
    align-items: end;
    margin-bottom: 48px;
}
.about-team-intro h2 {
    max-width: 780px;
    margin-bottom: 0;
}
.about-team-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}
.about-team-card {
    overflow: hidden;
    border: 1px solid #dce5f2;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 20px 44px rgba(15, 42, 84, .09);
    transition: transform .25s ease, box-shadow .25s ease;
}
.about-team-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 28px 56px rgba(15, 42, 84, .15);
}
.about-team-art {
    position: relative;
    display: grid;
    height: 178px;
    place-items: center;
    overflow: hidden;
    background-color: #0a2852;
    background-image:
        linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
    background-size: 28px 28px;
}
.about-team-art::before,
.about-team-art::after {
    position: absolute;
    content: "";
}
.about-team-art::before {
    width: 118px;
    height: 118px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 24px;
    transform: rotate(45deg);
}
.about-team-art::after {
    right: 0;
    bottom: 0;
    width: 42%;
    height: 7px;
    background: #f4c842;
}
.about-team-art i {
    position: relative;
    z-index: 1;
    display: grid;
    width: 78px;
    height: 78px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.46);
    border-radius: 20px;
    background: rgba(255,255,255,.12);
    color: #fff;
    font-size: 2.2rem;
    backdrop-filter: blur(10px);
}
.about-team-art b {
    position: absolute;
    top: 16px;
    right: 18px;
    color: #f4c842;
    font-size: .76rem;
}
.about-team-body {
    min-height: 222px;
    padding: 26px;
}
.about-team-body > span {
    color: #1670dc;
    font-size: .72rem;
    font-weight: 850;
    text-transform: uppercase;
}
.about-team-body h3 {
    margin: 10px 0 12px;
    color: #08162b;
    font-size: 1.3rem;
}
.about-team-body p {
    margin: 0;
    color: #647087;
    line-height: 1.65;
}
.about-capability-section {
    background: #eef4ff;
}
.about-capability-panel {
    display: grid;
    grid-template-columns: .78fr 1.22fr;
    gap: 70px;
    align-items: center;
    padding: 64px;
    border-radius: 28px;
    background: #07172f;
    box-shadow: 0 32px 70px rgba(7, 24, 54, .2);
}
.about-capability-copy h2 {
    color: #fff;
}
.about-capability-copy p {
    color: rgba(255,255,255,.68);
}
.about-capability-map {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 20px;
}
.about-capability-map span {
    position: relative;
    display: flex;
    min-height: 220px;
    flex-direction: column;
    justify-content: flex-end;
    padding: 20px 16px;
    border-right: 1px solid rgba(255,255,255,.13);
    transition: background .22s ease;
}
.about-capability-map span:last-child {
    border-right: 0;
}
.about-capability-map span:hover {
    background: rgba(22, 112, 220, .18);
}
.about-capability-map i {
    position: absolute;
    top: 20px;
    left: 16px;
    color: #f4c842;
    font-size: 1.35rem;
}
.about-capability-map b {
    color: #fff;
    font-size: .94rem;
}
.about-capability-map small {
    margin-top: 7px;
    color: rgba(255,255,255,.52);
    font-size: .72rem;
    line-height: 1.4;
}

@media (max-width: 1199px) {
    .about-story-layout {
        grid-template-columns: 1fr 1fr;
        gap: 42px;
    }
    .about-story-copy h2,
    .about-team-intro h2,
    .about-capability-copy h2 {
        font-size: 2.8rem;
    }
    .about-principles-grid,
    .about-team-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .about-principle-card:nth-child(2) {
        border-right: 0;
    }
    .about-principle-card:nth-child(-n+2) {
        border-bottom: 1px solid #dfe6f2;
    }
    .about-capability-panel {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .about-story-layout,
    .about-direction-grid,
    .about-team-intro {
        grid-template-columns: 1fr;
    }
    .about-story-layout,
    .about-team-intro {
        gap: 30px;
    }
    .about-story-copy h2,
    .about-team-intro h2,
    .about-capability-copy h2,
    .compact-heading h2 {
        font-size: 2.15rem;
    }
    .about-story-visual,
    .about-story-visual > img {
        height: 430px;
        min-height: 430px;
    }
    .about-story-stat {
        top: 14px;
        right: 14px;
    }
    .about-story-overlay {
        right: 14px;
        bottom: 14px;
        left: 14px;
        padding: 15px;
    }
    .about-direction-card {
        min-height: auto;
        padding: 34px 26px 40px;
    }
    .about-direction-head {
        margin-bottom: 44px;
    }
    .about-direction-card h2 {
        font-size: 2.05rem;
    }
    .about-principles-grid,
    .about-team-grid {
        grid-template-columns: 1fr;
    }
    .about-principle-card {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid #dfe6f2;
    }
    .about-principle-card:last-child {
        border-bottom: 0;
    }
    .about-principle-card > div {
        margin-bottom: 42px;
    }
    .about-capability-panel {
        gap: 40px;
        padding: 34px 22px;
    }
    .about-capability-map {
        grid-template-columns: 1fr;
    }
    .about-capability-map span {
        min-height: 100px;
        padding: 22px 20px 20px 70px;
        justify-content: center;
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.13);
    }
    .about-capability-map span:last-child {
        border-bottom: 0;
    }
    .about-capability-map i {
        top: 50%;
        left: 22px;
        transform: translateY(-50%);
    }
}

* {
    box-sizing: border-box;
    letter-spacing: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #172033;
    background:
        linear-gradient(180deg, #ffffff 0%, #f7f9fd 100%);
    overflow-x: hidden;
}

a {
    text-decoration: none;
}

img {
    max-width: 100%;
}

.cb-nav {
    background: rgba(4, 9, 21, .82);
    border-bottom: 1px solid rgba(255, 255, 255, .12);
    backdrop-filter: blur(18px);
    box-shadow: 0 18px 50px rgba(0, 0, 0, .18);
}

.brand-logo {
    width: 46px;
    height: 46px;
    object-fit: cover;
    border-radius: 10px;
    box-shadow: 0 0 0 1px rgba(255,255,255,.16), 0 16px 34px rgba(11, 99, 206, .32);
}

.brand-preview-logo {
    width: min(100%, 240px);
    height: 78px;
    padding: 8px;
    object-fit: contain;
    border-radius: 12px;
    background: #eef2f7;
}

.navbar-brand span {
    font-weight: 900;
}

.nav-link {
    color: rgba(255,255,255,.78);
    font-weight: 700;
    font-size: .94rem;
}

.nav-link:hover,
.nav-link:focus {
    color: var(--gold);
}

.btn {
    border-radius: 999px;
    padding: .75rem 1.15rem;
    font-weight: 850;
}

.btn-lg {
    padding: .95rem 1.4rem;
}

.btn-gold {
    background: linear-gradient(135deg, #ffe78a, var(--gold) 48%, #d8a629);
    color: #111827;
    border: 0;
    box-shadow: 0 16px 40px rgba(242, 201, 76, .28);
}

.btn-gold:hover {
    color: #111827;
    transform: translateY(-1px);
    box-shadow: 0 22px 52px rgba(242, 201, 76, .38);
}

.btn-blue {
    background: linear-gradient(135deg, var(--blue), var(--blue-soft));
    color: var(--white);
    border: 0;
    box-shadow: 0 16px 38px rgba(11, 99, 206, .24);
}

.btn-blue:hover {
    color: var(--white);
    transform: translateY(-1px);
}

.btn-outline-light {
    border-color: rgba(255,255,255,.26);
    color: var(--white);
    background: rgba(255,255,255,.06);
}

.btn-outline-light:hover {
    color: #111827;
    background: var(--white);
}

.hero {
    position: relative;
    color: var(--white);
    min-height: calc(100vh - 78px);
    display: flex;
    align-items: center;
    padding: 88px 0 76px;
    isolation: isolate;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 18%, rgba(40,160,255,.38), transparent 26%),
        radial-gradient(circle at 20% 22%, rgba(242,201,76,.28), transparent 22%),
        linear-gradient(140deg, #030712 0%, #071425 42%, #08111f 100%);
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image:
        linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: radial-gradient(circle at 55% 32%, black, transparent 78%);
}

.hero::after {
    content: "";
    position: absolute;
    width: 860px;
    height: 860px;
    right: -380px;
    top: -320px;
    z-index: -1;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 50%;
    box-shadow: inset 0 0 80px rgba(40,160,255,.12);
    animation: slowSpin 28s linear infinite;
}

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

.hero h1 {
    font-size: clamp(2.55rem, 5vw, 5.5rem);
    font-weight: 950;
    line-height: .98;
    max-width: 920px;
}

.hero p {
    color: #d9e3f4;
    font-size: 1.16rem;
    max-width: 690px;
}

.hero .eyebrow {
    color: #f8d968;
}

.text-gradient {
    background: linear-gradient(135deg, #ffffff 20%, #d7ecff 46%, #f7d96a 78%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.hero-kicker-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.signal-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 13px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 999px;
    background: rgba(255,255,255,.07);
    color: #dfe8f7;
    font-weight: 700;
    font-size: .88rem;
}

.signal-pill i {
    color: var(--gold);
}

.trust-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 24px;
    color: rgba(255,255,255,.58);
    font-size: .88rem;
    font-weight: 700;
}

.trust-row strong {
    color: var(--white);
    padding: 9px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.12);
}

.hero-logo-panel {
    position: relative;
    min-height: 560px;
    display: grid;
    place-items: center;
    perspective: 1000px;
}

.automation-visual {
    position: relative;
    width: min(540px, 92vw);
    aspect-ratio: 1 / 1;
    animation: floatPanel 7s ease-in-out infinite;
}

.visual-core {
    position: absolute;
    inset: 22%;
    display: grid;
    place-items: center;
    border-radius: 28px;
    background: linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.04));
    border: 1px solid rgba(255,255,255,.18);
    box-shadow: var(--shadow-dark), inset 0 1px 0 rgba(255,255,255,.18);
    backdrop-filter: blur(14px);
    transform: rotateX(8deg) rotateY(-12deg);
}

.visual-core img {
    width: 72%;
    border-radius: 18px;
    box-shadow: 0 24px 64px rgba(0,0,0,.35);
}

.orbit-ring {
    position: absolute;
    inset: 7%;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 50%;
    animation: slowSpin 26s linear infinite;
}

.orbit-ring:nth-child(2) {
    inset: 17%;
    border-color: rgba(242,201,76,.22);
    animation-direction: reverse;
}

.orbit-node {
    position: absolute;
    width: 86px;
    min-height: 76px;
    border-radius: 16px;
    background: rgba(5, 12, 26, .78);
    border: 1px solid rgba(255,255,255,.15);
    color: var(--white);
    display: grid;
    place-items: center;
    text-align: center;
    padding: 10px;
    box-shadow: 0 20px 50px rgba(0,0,0,.26);
    backdrop-filter: blur(14px);
}

.orbit-node i {
    color: var(--gold);
    font-size: 1.25rem;
}

.orbit-node span {
    display: block;
    font-size: .72rem;
    font-weight: 800;
    margin-top: 5px;
}

.node-ai { top: 10%; left: 14%; }
.node-rpa { top: 14%; right: 8%; }
.node-web { right: 0; bottom: 25%; }
.node-excel { left: 4%; bottom: 17%; }

.workflow-card {
    position: absolute;
    left: 2%;
    right: 2%;
    bottom: 2%;
    border-radius: 18px;
    padding: 18px;
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.15);
    backdrop-filter: blur(18px);
    box-shadow: var(--shadow-dark);
}

.mini-dashboard {
    position: absolute;
    top: 11%;
    left: -4%;
    width: 184px;
    border-radius: 18px;
    padding: 14px;
    background: rgba(255,255,255,.09);
    border: 1px solid rgba(255,255,255,.15);
    box-shadow: 0 24px 70px rgba(0,0,0,.32);
    backdrop-filter: blur(18px);
    animation: floatPanel 6s ease-in-out infinite reverse;
}

.mini-top {
    display: flex;
    gap: 6px;
    margin-bottom: 12px;
}

.mini-top span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255,255,255,.32);
}

.mini-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.mini-grid div {
    padding: 10px;
    border-radius: 12px;
    background: rgba(5, 12, 26, .58);
}

.mini-grid strong {
    display: block;
    color: var(--gold);
    font-size: 1.25rem;
}

.mini-grid small {
    color: rgba(255,255,255,.68);
    font-size: .68rem;
    font-weight: 800;
}

.mini-grid .wide {
    grid-column: 1 / -1;
    display: grid;
    gap: 7px;
}

.mini-grid .wide span {
    display: block;
    height: 7px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(242,201,76,.85), rgba(40,160,255,.72));
}

.mini-grid .wide span:nth-child(2) {
    width: 72%;
}

.mini-grid .wide span:nth-child(3) {
    width: 48%;
}

.workflow-card .bar {
    display: block;
    height: 8px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--gold), var(--blue-soft));
    animation: progressPulse 3s ease-in-out infinite;
}

.metric-strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 18px 52px rgba(0,0,0,.22);
}

.metric-strip div {
    background: rgba(255,255,255,.075);
    padding: 20px;
    backdrop-filter: blur(10px);
}

.metric-strip strong {
    display: block;
    font-size: 1.72rem;
    color: var(--gold);
}

.metric-strip span {
    color: #d9e4f5;
    font-weight: 650;
}

.premium-strip {
    margin-top: -1px;
    background: #050915;
    color: var(--white);
    padding: 0 0 34px;
}

.premium-strip-inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 22px;
    overflow: hidden;
    background: rgba(255,255,255,.12);
    box-shadow: 0 24px 80px rgba(0,0,0,.25);
}

.premium-strip-inner div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px;
    background: rgba(255,255,255,.065);
    min-height: 76px;
    font-weight: 850;
}

.premium-strip-inner i {
    color: var(--gold);
    font-size: 1.25rem;
}

.section {
    position: relative;
    padding: 88px 0;
}

.section-light {
    background:
        linear-gradient(180deg, #f6f8fc, #eef4fb);
}

.section-dark {
    background:
        radial-gradient(circle at 20% 20%, rgba(11,99,206,.24), transparent 28%),
        linear-gradient(135deg, var(--navy), #071528 72%, #08101f);
    color: var(--white);
}

.eyebrow {
    color: var(--blue);
    font-weight: 950;
    text-transform: uppercase;
    font-size: .78rem;
}

.section-dark .eyebrow {
    color: var(--gold);
}

.section-title {
    font-weight: 950;
    color: var(--ink);
    font-size: clamp(2rem, 3vw, 3.25rem);
    line-height: 1.06;
}

.section-dark .section-title {
    color: var(--white);
}

.service-card,
.price-card,
.case-card,
.blog-card,
.admin-card {
    position: relative;
    border: 1px solid rgba(10, 30, 60, .1);
    border-radius: 18px;
    background: rgba(255,255,255,.86);
    height: 100%;
    padding: 28px;
    box-shadow: 0 12px 40px rgba(9, 24, 49, .07);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    overflow: hidden;
}

.section-light .service-card,
.section-light .price-card,
.section-light .case-card,
.section-light .blog-card {
    background: rgba(255,255,255,.92);
    backdrop-filter: blur(10px);
}

.service-card::before,
.price-card::before,
.case-card::before,
.blog-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(11,99,206,.12), transparent 36%, rgba(242,201,76,.14));
    opacity: 0;
    transition: opacity .25s ease;
    pointer-events: none;
}

.service-card:hover,
.case-card:hover,
.blog-card:hover,
.price-card:hover {
    transform: translateY(-7px);
    box-shadow: var(--shadow);
    border-color: rgba(11, 99, 206, .26);
}

.service-card:hover::before,
.price-card:hover::before,
.case-card:hover::before,
.blog-card:hover::before {
    opacity: 1;
}

.service-card > *,
.price-card > *,
.case-card > *,
.blog-card > * {
    position: relative;
}

.icon-box {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background:
        linear-gradient(135deg, rgba(11,99,206,1), rgba(40,160,255,.9));
    color: var(--gold);
    font-size: 1.45rem;
    margin-bottom: 20px;
    box-shadow: 0 16px 32px rgba(11, 99, 206, .24);
}

.feature-list {
    padding-left: 0;
    list-style: none;
}

.feature-list li {
    margin: 12px 0;
    display: flex;
    gap: 10px;
    color: #2d384c;
}

.feature-list i {
    color: var(--blue);
}

.process-step {
    position: relative;
    border-left: 0;
    padding: 22px;
    border-radius: 18px;
    background: rgba(255,255,255,.78);
    border: 1px solid rgba(11, 99, 206, .11);
}

.section-dark .process-step {
    background: rgba(255,255,255,.07);
    border-color: rgba(255,255,255,.13);
    backdrop-filter: blur(14px);
}

.process-step::before {
    content: "";
    position: absolute;
    left: 22px;
    top: 0;
    width: 42px;
    height: 3px;
    background: linear-gradient(90deg, var(--gold), var(--blue-soft));
    border-radius: 999px;
}

.faq .accordion {
    border-radius: 18px;
    overflow: hidden;
    box-shadow: var(--shadow);
}

.faq .accordion-button {
    font-weight: 850;
}

.cta-band {
    position: relative;
    background:
        radial-gradient(circle at 82% 20%, rgba(242,201,76,.32), transparent 28%),
        linear-gradient(135deg, #063a81, #071526);
    color: var(--white);
    padding: 66px 0;
    overflow: hidden;
}

.cta-band::after {
    content: "";
    position: absolute;
    inset: auto -90px -160px auto;
    width: 360px;
    height: 360px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%;
}

.form-control,
.form-select {
    border-radius: 14px;
    min-height: 50px;
    border-color: #dbe4ef;
}

.form-control:focus,
.form-select:focus {
    border-color: rgba(11, 99, 206, .55);
    box-shadow: 0 0 0 .25rem rgba(11, 99, 206, .12);
}

.footer {
    background:
        linear-gradient(135deg, #030712, #07111f);
    color: #d6deec;
    padding: 64px 0 26px;
}

.footer h3,
.footer h4 {
    color: var(--white);
    font-weight: 950;
}

.footer a {
    display: block;
    color: #c8d0df;
    margin: 9px 0;
}

.footer a:hover {
    color: var(--gold);
}

.footer-logo {
    width: 76px;
    height: 76px;
    object-fit: cover;
    border-radius: 14px;
    box-shadow: 0 18px 40px rgba(0,0,0,.28);
}

.footer-bottom {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    border-top: 1px solid rgba(255,255,255,.12);
    margin-top: 40px;
    padding-top: 24px;
    flex-wrap: wrap;
}

.page-hero {
    position: relative;
    background:
        radial-gradient(circle at 75% 22%, rgba(40,160,255,.28), transparent 30%),
        linear-gradient(135deg, var(--navy), #101827);
    color: var(--white);
    padding: 98px 0;
    overflow: hidden;
}

.page-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
    background-size: 48px 48px;
}

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

.page-hero h1 {
    font-size: clamp(2.2rem, 4vw, 4.3rem);
    font-weight: 950;
    line-height: 1.03;
}

.admin-shell {
    background:
        radial-gradient(circle at 80% 0%, rgba(11,99,206,.14), transparent 26%),
        linear-gradient(180deg, #eef4fb, #f8fafc);
    min-height: 100vh;
}

.admin-sidebar {
    background:
        radial-gradient(circle at 20% 8%, rgba(242,201,76,.2), transparent 24%),
        linear-gradient(180deg, #030712, #071527);
    min-height: 100vh;
    padding: 24px 18px;
    box-shadow: 18px 0 60px rgba(7, 18, 38, .16);
}

.admin-sidebar h1 {
    font-weight: 950;
}

.admin-sidebar a {
    color: #d6deec;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 13px;
    border-radius: 14px;
    font-weight: 750;
}

.admin-sidebar a:hover {
    background: rgba(255,255,255,.09);
    color: var(--gold);
}

.admin-card {
    background: rgba(255,255,255,.9);
    border-radius: 18px;
    border-color: rgba(11, 99, 206, .09);
    box-shadow: 0 14px 42px rgba(7, 18, 38, .08);
}

.admin-stat {
    min-height: 154px;
    background:
        radial-gradient(circle at 82% 18%, rgba(40,160,255,.2), transparent 28%),
        linear-gradient(135deg, rgba(255,255,255,.95), rgba(248,251,255,.88));
}

.admin-stat i {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: rgba(11, 99, 206, .1);
    color: var(--blue);
    font-size: 1.25rem;
}

.admin-stat strong {
    font-weight: 950;
}

.admin-hero {
    background:
        radial-gradient(circle at 82% 18%, rgba(242,201,76,.25), transparent 28%),
        linear-gradient(135deg, #071425, #0b2f64);
    color: var(--white);
    border-radius: 24px;
    padding: 28px;
    box-shadow: var(--shadow-dark);
    position: relative;
    overflow: hidden;
}

.admin-shell .service-card {
    backdrop-filter: blur(16px);
}

.admin-login-screen {
    min-height: 100vh;
    background:
        radial-gradient(circle at 15% 18%, rgba(242,201,76,.28), transparent 26%),
        radial-gradient(circle at 80% 10%, rgba(40,160,255,.28), transparent 28%),
        linear-gradient(135deg, #030712, #071527 58%, #eef4fb 58%);
    display: grid;
    place-items: center;
    padding: 28px;
}

.admin-login-wrap {
    width: min(1080px, 100%);
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 34px 110px rgba(0,0,0,.32);
    border: 1px solid rgba(255,255,255,.16);
}

.login-brand-panel {
    position: relative;
    min-height: 620px;
    padding: 54px;
    color: var(--white);
    background:
        radial-gradient(circle at 70% 34%, rgba(40,160,255,.28), transparent 28%),
        linear-gradient(135deg, rgba(5,9,21,.96), rgba(7,21,39,.96));
    overflow: hidden;
}

.login-brand-panel::after {
    content: "";
    position: absolute;
    right: -160px;
    bottom: -160px;
    width: 480px;
    height: 480px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%;
}

.login-mark {
    width: 112px;
    height: 112px;
    object-fit: cover;
    border-radius: 24px;
    box-shadow: 0 28px 80px rgba(0,0,0,.36);
    margin-bottom: 34px;
}

.login-brand-panel h1 {
    font-size: clamp(2.4rem, 4vw, 4.4rem);
    font-weight: 950;
    line-height: 1;
    max-width: 560px;
}

.login-brand-panel p {
    color: #d9e4f5;
    max-width: 570px;
    font-size: 1.08rem;
}

.login-signal-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-top: 36px;
}

.login-signal-grid div {
    padding: 20px;
    border-radius: 18px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.14);
    backdrop-filter: blur(14px);
}

.login-signal-grid i {
    color: var(--gold);
    font-size: 1.4rem;
}

.login-signal-grid strong,
.login-signal-grid span {
    display: block;
}

.login-signal-grid strong {
    margin-top: 12px;
}

.login-signal-grid span {
    color: rgba(255,255,255,.62);
    font-size: .88rem;
}

.login-card {
    background: rgba(255,255,255,.94);
    padding: 54px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.login-card h2 {
    font-weight: 950;
}

.admin-hero::after {
    content: "";
    position: absolute;
    right: -80px;
    bottom: -120px;
    width: 280px;
    height: 280px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%;
}

.admin-hero > * {
    position: relative;
    z-index: 1;
}

.table {
    --bs-table-bg: transparent;
}

.table td,
.table th {
    vertical-align: middle;
    padding: 14px 12px;
}

.table thead th {
    color: #64748b;
    font-size: .78rem;
    text-transform: uppercase;
}

.reveal {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity .7s ease, transform .7s ease;
}

.reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@keyframes slowSpin {
    to { transform: rotate(360deg); }
}

@keyframes floatPanel {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-16px); }
}

@keyframes progressPulse {
    0%, 100% { width: 42%; }
    50% { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation: none !important;
        transition: none !important;
    }
}

@media (max-width: 991px) {
    .hero {
        min-height: auto;
        padding: 64px 0;
    }
    .hero-logo-panel {
        min-height: 420px;
        margin-top: 34px;
    }
    .metric-strip {
        grid-template-columns: 1fr;
    }
    .admin-sidebar {
        min-height: auto;
    }
    .premium-strip-inner {
        grid-template-columns: repeat(2, 1fr);
    }
    .mini-dashboard {
        left: 0;
        top: 2%;
    }
    .admin-login-wrap {
        grid-template-columns: 1fr;
    }
    .login-brand-panel {
        min-height: auto;
        padding: 34px;
    }
    .login-card {
        padding: 34px;
    }
}

@media (max-width: 575px) {
    .section {
        padding: 62px 0;
    }
    .hero h1 {
        font-size: 2.45rem;
    }
    .orbit-node {
        width: 74px;
        min-height: 68px;
        font-size: .8rem;
    }
    .workflow-card {
        position: relative;
        margin-top: 20px;
    }
    .premium-strip-inner {
        grid-template-columns: 1fr;
    }
    .mini-dashboard {
        display: none;
    }
    .login-signal-grid {
        grid-template-columns: 1fr;
    }
    .admin-login-screen {
        padding: 14px;
    }
}

/* Final inner-page and footer cascade authority */
.public-site .page-hero.page-hero-premium {
    min-height: 620px;
    display: flex;
    align-items: center;
    padding: 92px 0;
    color: #111827;
    background:
        radial-gradient(circle at 80% 22%, rgba(83,126,255,.34), transparent 28%),
        radial-gradient(circle at 14% 80%, rgba(255,122,26,.16), transparent 25%),
        linear-gradient(135deg, #fff 0%, #eef3ff 56%, #fff8ef 100%);
}

.public-site .page-hero.page-hero-premium h1 {
    font-size: clamp(3rem, 5vw, 6rem);
}

.public-site .footer {
    margin: 0;
    padding: 0 0 30px;
    color: rgba(255,255,255,.7);
    background:
        radial-gradient(circle at 82% 18%, rgba(11,99,206,.25), transparent 28%),
        linear-gradient(135deg, #050915, #081a31);
    border-top: 0;
}

.public-site .footer h4 {
    color: #fff;
}

.public-site .footer p,
.public-site .footer a,
.public-site .footer-bottom {
    color: rgba(255,255,255,.66);
}

.public-site .footer-bottom {
    border-color: rgba(255,255,255,.12);
}

@media (max-width: 991px) {
    .public-site .page-hero.page-hero-premium {
        min-height: auto;
        padding: 70px 0;
    }
}

@media (max-width: 575px) {
    .public-site .page-hero.page-hero-premium {
        min-height: auto;
        padding: 46px 0 52px;
    }
    .public-site .page-hero.page-hero-premium h1 {
        font-size: clamp(2.35rem, 10.8vw, 3.25rem);
        line-height: .96;
    }
    .page-hero-premium .row {
        position: relative;
    }
    .page-hero-premium .col-lg-7 {
        position: relative;
        z-index: 2;
    }
    .page-hero-premium .col-lg-5 {
        position: absolute;
        inset: 0;
        z-index: 0;
        pointer-events: none;
    }
    .page-hero-visual,
    .page-hero-visual > img {
        width: 100%;
        height: 100%;
        min-height: 100%;
    }
    .page-hero-visual {
        border: 0;
        box-shadow: none;
        opacity: .1;
    }
    .hero-float {
        display: none;
    }
    .page-hero-badges {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 5px;
        scrollbar-width: none;
    }
    .page-hero-badges::-webkit-scrollbar {
        display: none;
    }
    .page-hero-badges span {
        flex: 0 0 auto;
    }
}

/* Homepage final cascade corrections */
.public-site .home-problem-copy .section-title,
.public-site .home-process-panel .section-title {
    color: #fff;
}

.public-site .home-process-panel {
    background: #071a38;
}

.public-site .home-problem-suite,
.public-site .home-services-suite,
.public-site .home-process-suite,
.public-site .home-pricing-suite,
.public-site .home-proof-suite,
.public-site .home-testimonial-suite {
    padding-top: 84px;
    padding-bottom: 84px;
}

@media (max-width: 767px) {
    .public-site .home-problem-suite,
    .public-site .home-services-suite,
    .public-site .home-process-suite,
    .public-site .home-pricing-suite,
    .public-site .home-proof-suite,
    .public-site .home-testimonial-suite {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

/* Blog publishing experience */
.blog-library-head,.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.blog-library-head .section-title{margin-bottom:0}.blog-result-summary{min-width:150px;padding:18px 22px;border:1px solid #dce6f4;border-radius:16px;background:rgba(255,255,255,.76);box-shadow:0 16px 38px rgba(28,47,96,.09)}.blog-result-summary strong,.blog-result-summary span{display:block}.blog-result-summary strong{color:#0b63ce;font-size:2rem;line-height:1}.blog-result-summary span{margin-top:5px;color:#758197;font-size:.76rem}
.blog-filter-console{display:grid;grid-template-columns:minmax(320px,1fr) repeat(3,minmax(150px,.25fr));gap:12px;padding:16px;border:1px solid rgba(186,204,231,.75);border-radius:18px;background:rgba(255,255,255,.72);box-shadow:0 20px 55px rgba(28,47,96,.1);backdrop-filter:blur(18px)}.blog-filter-console .form-select,.blog-search{height:52px;border:1px solid #dce6f3;border-radius:13px;background:#fff}.blog-search{padding:0 14px;display:flex;align-items:center;gap:10px}.blog-search i{color:#0b63ce}.blog-search input{min-width:0;flex:1;border:0;outline:0;background:transparent}.blog-search kbd{padding:4px 7px;border-radius:6px;color:#778399;background:#edf2f8;font-size:.62rem}
.blog-tag-filter{margin:18px 0 30px;display:flex;gap:8px;overflow-x:auto;padding-bottom:5px;scrollbar-width:none}.blog-tag-filter::-webkit-scrollbar{display:none}.blog-tag-filter button{flex:0 0 auto;padding:9px 14px;border:1px solid #d8e3f1;border-radius:999px;color:#526077;background:rgba(255,255,255,.78);font-size:.78rem;font-weight:800;transition:.2s ease}.blog-tag-filter button:hover,.blog-tag-filter button.active{color:#fff;border-color:#0b63ce;background:#0b63ce;box-shadow:0 10px 24px rgba(11,99,206,.2)}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.blog-library-card{min-width:0;overflow:hidden;border:1px solid rgba(205,217,235,.9);border-radius:20px;background:rgba(255,255,255,.86);box-shadow:0 18px 48px rgba(28,47,96,.1);transition:transform .25s ease,box-shadow .25s ease}.blog-library-card:hover{transform:translateY(-6px);box-shadow:0 28px 65px rgba(28,47,96,.16)}.blog-library-card[hidden]{display:none}.blog-card-media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#edf3fc}.blog-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.blog-library-card:hover .blog-card-media img{transform:scale(1.04)}.blog-card-media>span{position:absolute;left:14px;top:14px;padding:8px 11px;border:1px solid rgba(255,255,255,.8);border-radius:999px;color:#111827;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);font-size:.68rem;font-weight:900}.blog-card-media>span i{color:#ff7a1a}.blog-card-body{padding:22px}.blog-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#748197;font-size:.69rem;font-weight:850;text-transform:uppercase}.blog-card-meta span:first-child{color:#0b63ce}.blog-card-body h3{margin:13px 0 10px;font-size:1.28rem;line-height:1.25}.blog-card-body h3 a{color:#111827;text-decoration:none}.blog-card-body>p{min-height:76px;margin:0;color:#5d6879;font-size:.9rem;line-height:1.65}.blog-card-tags{min-height:28px;margin:16px 0;display:flex;gap:6px;flex-wrap:wrap}.blog-card-tags span{padding:5px 8px;border-radius:7px;color:#52647f;background:#edf4ff;font-size:.65rem}.blog-card-foot{padding-top:14px;display:flex;align-items:center;gap:15px;border-top:1px solid #e9eef5;color:#7b8799;font-size:.73rem}.blog-rating-compact{display:flex;align-items:center;gap:4px}.blog-rating-compact i{color:#f4b51f}.blog-rating-compact strong{color:#1b2638}.blog-card-foot>a{width:34px;height:34px;margin-left:auto;display:grid;place-items:center;border-radius:10px;color:#fff;background:#0b63ce}
.blog-empty-state{padding:70px 20px;text-align:center}.blog-empty-state i{width:64px;height:64px;margin:0 auto 18px;display:grid;place-items:center;border-radius:18px;color:#fff;background:linear-gradient(135deg,#071a35,#0b63ce);font-size:1.5rem}.blog-empty-state h3{font-weight:900}.blog-empty-state p{color:#748197}.blog-pagination{margin-top:35px;display:flex;justify-content:center;gap:8px}.blog-pagination:empty{display:none}.blog-pagination button{min-width:42px;height:42px;padding:0 13px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d7e3f2;border-radius:11px;color:#314057;background:#fff;font-weight:800}.blog-pagination button.active{color:#fff;border-color:#0b63ce;background:#0b63ce}.blog-pagination button:disabled{opacity:.4}
.article-hero{padding:78px 0 84px;background:radial-gradient(circle at 83% 14%,rgba(82,126,255,.3),transparent 30%),radial-gradient(circle at 10% 85%,rgba(255,122,26,.14),transparent 25%),linear-gradient(135deg,#fff,#edf3ff 60%,#fff7ee)}.article-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:36px;color:#526077;font-weight:800;text-decoration:none}.article-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:70px;align-items:center}.article-kicker{display:flex;align-items:center;gap:10px;color:#0b63ce;font-size:.75rem;font-weight:900;text-transform:uppercase}.article-kicker i{width:34px;height:2px;background:linear-gradient(90deg,#ff7a1a,#f2c94c,#0b63ce)}.article-hero h1{max-width:820px;margin:18px 0;font-size:3.8rem;font-weight:950;line-height:1.04;letter-spacing:0}.article-hero-grid>div>p{max-width:700px;color:#4f5c70;font-size:1.08rem;line-height:1.7}.article-author{margin-top:26px;display:flex;align-items:center;gap:12px}.article-author-mark{width:50px;height:50px;padding:7px;display:grid;place-items:center;border-radius:14px;background:#fff;box-shadow:0 10px 25px rgba(28,47,96,.12)}.article-author-mark img{width:100%}.article-author strong,.article-author small{display:block}.article-author small{color:#8390a3;font-size:.72rem}.article-tag-row{margin-top:18px;display:flex;gap:7px;flex-wrap:wrap}.article-tag-row a{padding:7px 10px;border-radius:8px;color:#4c607e;background:rgba(255,255,255,.72);font-size:.7rem;text-decoration:none}.article-cover{position:relative;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.88);border-radius:24px;background:#fff;box-shadow:0 28px 75px rgba(28,47,96,.18)}.article-cover>img{width:100%;aspect-ratio:4/3;object-fit:cover}.article-cover figcaption{position:absolute;left:16px;right:16px;bottom:16px;padding:12px;display:flex;justify-content:space-between;border:1px solid rgba(255,255,255,.75);border-radius:13px;background:rgba(255,255,255,.84);backdrop-filter:blur(15px);font-size:.75rem;font-weight:850}.article-cover figcaption i{color:#f4b51f}
.article-layout{display:grid;grid-template-columns:220px minmax(0,820px);justify-content:center;gap:45px;align-items:start}.article-side{position:sticky;top:120px}.article-side-card{padding:20px;border:1px solid #dce6f3;border-radius:16px;background:#f7faff}.article-side-card span,.article-side-card strong{display:block}.article-side-card span{color:#0b63ce;font-size:.68rem;font-weight:900;text-transform:uppercase}.article-side-card strong{margin:7px 0}.article-side-card p{margin:0;color:#7a8799;font-size:.76rem}.article-share{margin-top:14px;display:flex;align-items:center;gap:8px}.article-share>span{margin-right:auto;color:#7a8799;font-size:.72rem}.article-share a{width:34px;height:34px;display:grid;place-items:center;border:1px solid #dce6f3;border-radius:9px;color:#0b63ce;background:#fff}.article-rich-content{padding:0;background:transparent;border:0;box-shadow:none;color:#344054;font-size:1.04rem;line-height:1.85}.article-rich-content h2{margin:42px 0 14px;color:#101828;font-size:2rem;line-height:1.15}.article-rich-content h3{margin:30px 0 12px;color:#101828;font-size:1.4rem}.article-rich-content blockquote{margin:32px 0;padding:22px 25px;border-left:4px solid #ff7a1a;border-radius:0 14px 14px 0;color:#20314a;background:#f4f7fc;font-size:1.12rem;font-weight:700}.article-rich-content a{color:#0b63ce}.article-gallery-section{background:#f3f6fc}.article-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.article-gallery button{padding:0;overflow:hidden;border:0;border-radius:18px;background:#fff;box-shadow:0 15px 35px rgba(28,47,96,.1)}.article-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}
.article-community{padding-top:60px;padding-bottom:60px}.article-rating-panel{padding:30px 34px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:35px;border-radius:22px;color:#fff;background:linear-gradient(125deg,#06152d,#0b3c80);box-shadow:0 24px 65px rgba(7,28,61,.25)}.article-rating-panel h2{margin:6px 0;color:#fff;font-weight:900}.article-rating-panel p{margin:0;color:rgba(255,255,255,.65)}.rating-summary{display:flex;align-items:center;gap:13px}.rating-summary>strong{font-size:2.5rem}.rating-summary span,.rating-summary small{display:block}.rating-stars-static{color:#f2c94c}.rating-summary small{color:rgba(255,255,255,.6);font-size:.68rem}.rating-input{display:flex;flex-direction:row-reverse;align-items:center;gap:4px}.rating-input input{position:absolute;opacity:0}.rating-input label{cursor:pointer;color:rgba(255,255,255,.25);font-size:1.35rem}.rating-input label:hover,.rating-input label:hover~label,.rating-input input:checked~label{color:#f2c94c}.rating-input button{margin-left:12px}
.comments-section{background:linear-gradient(180deg,#f4f7fc,#fff)}.comments-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:45px;align-items:start}.comments-list{display:grid;gap:14px}.public-comment{margin-left:calc(var(--comment-depth) * 28px);padding:18px;display:grid;grid-template-columns:44px 1fr;gap:13px;border:1px solid #dfe7f1;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(28,47,96,.06)}.public-comment.is-admin{border-color:#b9d7fb;background:#f4f8ff}.comment-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(135deg,#0b63ce,#2d9bf0);font-weight:900}.public-comment.is-admin .comment-avatar{color:#382700;background:linear-gradient(135deg,#f2c94c,#ff9e2e)}.comment-body header{display:flex;justify-content:space-between;gap:15px}.comment-body header strong{color:#172238}.comment-body header span{margin-left:8px;color:#0b63ce;font-size:.64rem;font-weight:900}.comment-body time{color:#8a96a8;font-size:.65rem}.comment-body p{margin:8px 0;color:#59677a;line-height:1.65}.comment-body>button{padding:0;border:0;color:#0b63ce;background:transparent;font-size:.72rem;font-weight:850}.comment-replies{margin-top:14px;display:grid;gap:12px}.comments-empty{padding:45px;text-align:center;border:1px dashed #cbd9ea;border-radius:18px}.comments-empty i{color:#0b63ce;font-size:2rem}.comments-empty h3{margin-top:10px}.comments-empty p{color:#778399}.comment-form-card{position:sticky;top:120px;padding:28px;border:1px solid #dce6f3;border-radius:20px;background:#fff;box-shadow:0 20px 55px rgba(28,47,96,.1)}.comment-form-card h2{margin:6px 0;font-weight:900}.comment-form-card>p{color:#758197;font-size:.8rem}.comment-form-card label{margin-top:13px;display:grid;gap:6px;color:#344054;font-size:.75rem;font-weight:800}.comment-form-actions{margin-top:16px;display:flex;justify-content:flex-end;gap:8px}.related-articles{background:#f5f8fd}
@media(max-width:991px){.blog-filter-console{grid-template-columns:1fr 1fr}.blog-search{grid-column:1/-1}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-hero-grid,.comments-layout{grid-template-columns:1fr}.article-hero h1{font-size:3rem}.article-cover{max-width:650px}.article-layout{grid-template-columns:1fr}.article-side,.comment-form-card{position:static}.article-side{display:flex;gap:14px}.article-side-card{flex:1}.article-rating-panel{grid-template-columns:1fr auto}.rating-input{grid-column:1/-1;justify-content:flex-end}.article-gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:575px){.blog-library-head{align-items:start;flex-direction:column}.blog-result-summary{width:100%}.blog-filter-console{grid-template-columns:1fr}.blog-search{grid-column:auto}.blog-grid{grid-template-columns:1fr}.blog-card-body>p{min-height:0}.blog-pagination button span{display:none}.article-hero{padding:48px 0}.article-hero-grid{gap:34px}.article-hero h1{font-size:2.35rem}.article-kicker{align-items:flex-start;flex-direction:column}.article-kicker i{display:none}.article-layout{display:block}.article-side{display:grid;margin-bottom:30px}.article-rich-content{font-size:.98rem}.article-gallery{grid-template-columns:1fr}.article-rating-panel{padding:24px;grid-template-columns:1fr}.rating-summary{justify-content:flex-start}.rating-input{grid-column:auto;justify-content:flex-end;flex-wrap:wrap}.rating-input button{width:100%;margin:10px 0 0}.comments-layout{gap:30px}.public-comment{margin-left:0;padding:14px;grid-template-columns:36px 1fr}.comment-avatar{width:36px;height:36px}.comment-body header{align-items:flex-start;flex-direction:column;gap:3px}.comment-form-card{padding:22px}}

/* Premium case study proof library */
.proof-filter-console{grid-template-columns:minmax(320px,1fr) repeat(5,minmax(130px,.2fr))}.proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.proof-card{position:relative;min-width:0;overflow:hidden;border:1px solid rgba(205,217,235,.9);border-radius:22px;background:rgba(255,255,255,.9);box-shadow:0 20px 55px rgba(28,47,96,.11);transition:transform .25s ease,box-shadow .25s ease}.proof-card:hover{transform:translateY(-6px);box-shadow:0 30px 70px rgba(28,47,96,.17)}.proof-card[hidden]{display:none}.proof-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#ff7a1a,#f2c94c,#0b63ce)}.proof-media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#eef4fc}.proof-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.proof-card:hover .proof-media img{transform:scale(1.04)}.proof-media>span{position:absolute;left:14px;top:14px;padding:8px 11px;border:1px solid rgba(255,255,255,.8);border-radius:999px;color:#111827;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);font-size:.68rem;font-weight:900}.proof-media>span i{color:#ff7a1a}.proof-body{padding:22px}.proof-body h3{margin:13px 0 10px;font-size:1.28rem;line-height:1.25}.proof-body h3 a{color:#111827;text-decoration:none}.proof-body>p{margin:0;color:#5d6879;font-size:.9rem;line-height:1.65}.proof-metrics{margin:17px 0 14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.proof-metrics span{padding:11px 10px;border:1px solid #e1e9f4;border-radius:12px;background:linear-gradient(145deg,#f8fbff,#fff)}.proof-metrics strong,.proof-metrics small{display:block}.proof-metrics strong{color:#0b63ce;font-size:.95rem;line-height:1.1}.proof-metrics small{margin-top:4px;color:#7d899b;font-size:.6rem;text-transform:uppercase;font-weight:850}.proof-detail-hero .article-cover figcaption i{color:#0b63ce}.proof-hero-facts{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.proof-hero-facts span{padding:14px;display:grid;grid-template-columns:32px 1fr;column-gap:10px;border:1px solid rgba(255,255,255,.72);border-radius:13px;background:rgba(255,255,255,.62);box-shadow:0 12px 28px rgba(28,47,96,.08)}.proof-hero-facts i{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;color:#fff;background:#0b63ce}.proof-hero-facts strong,.proof-hero-facts small{display:block;min-width:0}.proof-hero-facts strong{overflow:hidden;color:#111827;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.proof-hero-facts small{color:#7b8799;font-size:.62rem}.proof-metric-band{padding:26px 0;background:linear-gradient(110deg,#06152d,#0b3d80)}.proof-metric-band-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.proof-metric-band article{padding:22px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.08)}.proof-metric-band strong,.proof-metric-band span{display:block}.proof-metric-band strong{color:#fff;font-size:2rem;line-height:1}.proof-metric-band span{margin-top:8px;color:rgba(255,255,255,.66);font-size:.78rem}.proof-story-layout{display:grid;grid-template-columns:220px minmax(0,820px);justify-content:center;gap:45px;align-items:start}.proof-story{display:grid;gap:18px}.proof-story>section{padding:24px;display:grid;grid-template-columns:54px 1fr;gap:18px;border:1px solid #dfe7f2;border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(28,47,96,.07)}.proof-story>section>span{width:50px;height:50px;display:grid;place-items:center;border-radius:14px;color:#071a35;background:linear-gradient(135deg,#f2c94c,#ff9e2e);font-weight:950}.proof-story h2{margin:0 0 8px;color:#101828;font-size:1.45rem;font-weight:900}.proof-story p{margin:0;color:#526077;line-height:1.75}.proof-story .article-rich-content{margin-top:18px;padding:24px;border:1px solid #dfe7f2;border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(28,47,96,.07)}
@media(max-width:1200px){.proof-filter-console{grid-template-columns:1fr 1fr 1fr}.proof-filter-console .blog-search{grid-column:1/-1}.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:991px){.proof-hero-facts,.proof-metric-band-grid{grid-template-columns:1fr}.proof-story-layout{grid-template-columns:1fr}.proof-filter-console{grid-template-columns:1fr 1fr}.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575px){.proof-filter-console{grid-template-columns:1fr}.proof-grid{grid-template-columns:1fr}.proof-metrics{grid-template-columns:1fr}.proof-story>section{grid-template-columns:1fr}.proof-story>section>span{width:44px;height:44px}.proof-metric-band strong{font-size:1.6rem}.proof-hero-facts span{grid-template-columns:30px 1fr}}

/* Premium pricing suite */
.pricing-suite-section{background:linear-gradient(130deg,#eaf1ff 0%,#f7faff 45%,#fff7ee 100%)}.pricing-command{margin-bottom:26px;padding:26px;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:22px;align-items:end;border:1px solid rgba(205,217,235,.92);border-radius:26px;background:rgba(255,255,255,.76);box-shadow:0 26px 70px rgba(28,47,96,.12);backdrop-filter:blur(18px)}.pricing-command h2{max-width:720px;margin:6px 0 10px;color:#071428;font-size:clamp(2rem,3.1vw,3.6rem);line-height:.98;font-weight:950}.pricing-command p{max-width:720px;margin:0;color:#5f6c81;font-size:1rem;line-height:1.7}.pricing-command-panel{padding:12px;display:grid;grid-template-columns:1fr 150px 155px;gap:10px;border:1px solid #dce7f5;border-radius:20px;background:#f8fbff}.pricing-command-panel label,.pricing-command-panel select{height:56px;border:1px solid #d4e2f5;border-radius:15px;background:#fff;color:#132034}.pricing-command-panel label{padding:0 14px;display:flex;align-items:center;gap:10px}.pricing-command-panel label i{color:#0b63ce}.pricing-command-panel input{width:100%;border:0;outline:0;background:transparent}.pricing-command-panel kbd{padding:5px 8px;border-radius:8px;color:#7b8799;background:#eef4fb;font-size:.65rem}.pricing-command-panel select{padding:0 14px}.pricing-proof-row{margin-bottom:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pricing-proof-row article{padding:18px;display:grid;grid-template-columns:48px 1fr;gap:4px 14px;align-items:center;border:1px solid rgba(205,217,235,.9);border-radius:20px;background:rgba(255,255,255,.82);box-shadow:0 18px 45px rgba(28,47,96,.09)}.pricing-proof-row i{grid-row:1/3;width:48px;height:48px;display:grid;place-items:center;border-radius:14px;color:#071428;background:linear-gradient(135deg,#f2c94c,#ff7a1a)}.pricing-proof-row strong{font-size:1rem}.pricing-proof-row span{color:#6d788b;font-size:.82rem}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.pricing-plan-card{position:relative;overflow:hidden;border:1px solid rgba(205,217,235,.95);border-radius:28px;background:rgba(255,255,255,.9);box-shadow:0 24px 70px rgba(28,47,96,.13);transition:transform .25s ease,box-shadow .25s ease}.pricing-plan-card:hover{transform:translateY(-7px);box-shadow:0 34px 85px rgba(28,47,96,.2)}.pricing-plan-card[hidden]{display:none}.pricing-plan-card.is-recommended{border-color:rgba(242,201,76,.9);box-shadow:0 30px 90px rgba(255,122,26,.18)}.pricing-plan-card.is-recommended::before{content:"Recommended";position:absolute;right:18px;top:18px;z-index:2;padding:8px 12px;border-radius:999px;color:#071428;background:linear-gradient(135deg,#f2c94c,#ff9b2d);font-size:.7rem;font-weight:950;text-transform:uppercase;box-shadow:0 12px 30px rgba(255,122,26,.25)}.pricing-plan-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#eef4fb}.pricing-plan-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.pricing-plan-card:hover .pricing-plan-media img{transform:scale(1.05)}.pricing-plan-media span{position:absolute;left:16px;bottom:16px;padding:8px 12px;border:1px solid rgba(255,255,255,.85);border-radius:999px;color:#101828;background:rgba(255,255,255,.86);backdrop-filter:blur(14px);font-size:.68rem;font-weight:950;text-transform:uppercase}.pricing-plan-media span i{color:#ff7a1a}.pricing-plan-body{padding:24px}.pricing-plan-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.pricing-plan-top span{color:#0b63ce;font-size:.7rem;font-weight:950;text-transform:uppercase}.pricing-plan-top strong{display:inline-flex;align-items:center;gap:5px;color:#0f1a2c;font-size:.78rem}.pricing-plan-top strong i{color:#f4b51f}.pricing-plan-body h2{margin:12px 0 10px;color:#101828;font-size:1.55rem;line-height:1.18;font-weight:900}.pricing-plan-body p{margin:0;color:#5d6879;line-height:1.65}.pricing-amount{margin:18px 0;padding:18px;border:1px solid #dce7f5;border-radius:18px;background:linear-gradient(145deg,#f8fbff,#fff)}.pricing-amount strong,.pricing-amount span{display:block}.pricing-amount strong{color:#0b63ce;font-size:1.7rem;line-height:1;font-weight:950}.pricing-amount span{margin-top:7px;color:#768397;font-size:.78rem}.pricing-plan-facts{display:grid;gap:9px;margin-bottom:18px}.pricing-plan-facts span{display:grid;grid-template-columns:22px 1fr;gap:8px;color:#526077;font-size:.8rem;line-height:1.45}.pricing-plan-facts i{color:#ff7a1a}.pricing-feature-list{padding:0;margin:0 0 18px;display:grid;gap:11px;list-style:none}.pricing-feature-list li{display:grid;grid-template-columns:22px 1fr;gap:9px;color:#253143}.pricing-feature-list i{color:#0b63ce}.pricing-outcomes{margin-bottom:18px;display:flex;flex-wrap:wrap;gap:8px}.pricing-outcomes span{padding:7px 10px;border:1px solid #dce7f5;border-radius:999px;color:#526077;background:#f7faff;font-size:.7rem;font-weight:850}.pricing-empty{padding:28px;border:1px dashed #bdd3ee;border-radius:20px;color:#667085;text-align:center;background:#fff}.pricing-addons-section{background:#f4f7fc}.pricing-addon-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.pricing-addon-card{padding:20px;display:grid;grid-template-columns:48px 1fr;gap:14px;border:1px solid #dce7f5;border-radius:20px;background:#fff;box-shadow:0 18px 45px rgba(28,47,96,.08)}.pricing-addon-card>i{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,#0b63ce,#28a7f6)}.pricing-addon-card h3{margin:0 0 7px;font-size:1rem}.pricing-addon-card p{margin:0;color:#667085;font-size:.82rem;line-height:1.55}.pricing-addon-card>span{grid-column:1/-1;justify-self:start;padding:7px 10px;border-radius:999px;color:#071428;background:#fff1d0;font-size:.72rem;font-weight:900}.pricing-estimator-section{padding:34px 0;background:linear-gradient(110deg,#ff7a1a 0%,#2d7ce5 100%)}.pricing-estimator{display:flex;justify-content:space-between;align-items:center;gap:24px;color:#fff}.pricing-estimator h2{margin:6px 0 8px;font-size:clamp(2rem,3vw,3.4rem);line-height:1;font-weight:950}.pricing-estimator p{max-width:760px;margin:0;color:rgba(255,255,255,.78);line-height:1.7}.pricing-estimator .eyebrow{color:#fff}.pricing-estimator-actions{display:flex;gap:12px;flex-wrap:wrap}.pricing-faq-section{background:#fff}.pricing-faq-list{max-width:920px;margin:0 auto;display:grid;gap:12px}.pricing-faq-list details{border:1px solid #dce7f5;border-radius:18px;background:#f8fbff;box-shadow:0 12px 35px rgba(28,47,96,.06)}.pricing-faq-list summary{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;color:#101828;font-weight:900}.pricing-faq-list summary::marker{display:none;content:""}.pricing-faq-list details[open] summary i{transform:rotate(45deg)}.pricing-faq-list p{padding:0 22px 22px;margin:0;color:#5d6879;line-height:1.75}@media(max-width:1200px){.pricing-command{grid-template-columns:1fr}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-addon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.pricing-command{padding:18px}.pricing-command-panel{grid-template-columns:1fr}.pricing-proof-row,.pricing-grid,.pricing-addon-grid{grid-template-columns:1fr}.pricing-estimator{align-items:flex-start;flex-direction:column}.pricing-plan-body{padding:20px}.pricing-amount strong{font-size:1.4rem}}

/* Premium service suite */
.service-suite-section{background:linear-gradient(135deg,#eaf1ff 0%,#f7faff 50%,#fff7ee 100%)}.service-command{margin-bottom:18px;padding:26px;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);gap:24px;align-items:end;border:1px solid rgba(205,217,235,.92);border-radius:28px;background:rgba(255,255,255,.78);box-shadow:0 26px 70px rgba(28,47,96,.12);backdrop-filter:blur(18px)}.service-command h2{max-width:760px;margin:7px 0 10px;color:#071428;font-size:clamp(2rem,3.2vw,3.7rem);line-height:.98;font-weight:950}.service-command p{max-width:720px;margin:0;color:#5f6c81;line-height:1.7}.service-command-panel{padding:12px;display:grid;grid-template-columns:1fr 160px 150px;gap:10px;border:1px solid #dce7f5;border-radius:20px;background:#f8fbff}.service-command-panel label,.service-command-panel select{height:56px;border:1px solid #d4e2f5;border-radius:15px;background:#fff;color:#132034}.service-command-panel label{padding:0 14px;display:flex;align-items:center;gap:10px}.service-command-panel label i{color:#0b63ce}.service-command-panel input{width:100%;border:0;outline:0;background:transparent}.service-command-panel kbd{padding:5px 8px;border-radius:8px;color:#7b8799;background:#eef4fb;font-size:.65rem}.service-command-panel select{padding:0 14px}.service-tag-rail{margin:0 0 22px;display:flex;gap:10px;overflow:auto;padding-bottom:4px}.service-tag-rail button{flex:0 0 auto;padding:11px 14px;border:1px solid #d8e5f5;border-radius:999px;color:#324053;background:rgba(255,255,255,.82);font-weight:850}.service-tag-rail button.active{color:#071428;border-color:#f2c94c;background:linear-gradient(135deg,#f2c94c,#ff9c2f)}.service-tag-rail span{margin-left:6px;opacity:.7}.service-proof-row{margin-bottom:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service-proof-row article{padding:18px;display:grid;grid-template-columns:48px 1fr;gap:4px 14px;align-items:center;border:1px solid rgba(205,217,235,.9);border-radius:20px;background:rgba(255,255,255,.84);box-shadow:0 18px 45px rgba(28,47,96,.09)}.service-proof-row i{grid-row:1/3;width:48px;height:48px;display:grid;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,#0b63ce,#28a7f6)}.service-proof-row strong{font-size:1rem}.service-proof-row span{color:#6d788b;font-size:.82rem}.service-suite-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-suite-card{overflow:hidden;border:1px solid rgba(205,217,235,.95);border-radius:28px;background:rgba(255,255,255,.9);box-shadow:0 24px 70px rgba(28,47,96,.13);transition:transform .25s ease,box-shadow .25s ease}.service-suite-card:hover{transform:translateY(-7px);box-shadow:0 34px 85px rgba(28,47,96,.2)}.service-suite-card[hidden]{display:none}.service-suite-card.is-featured{border-color:rgba(11,99,206,.38)}.service-suite-media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#eef4fb}.service-suite-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.service-suite-card:hover .service-suite-media img{transform:scale(1.05)}.service-suite-media span{position:absolute;left:16px;bottom:16px;padding:8px 12px;border:1px solid rgba(255,255,255,.88);border-radius:999px;color:#101828;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);font-size:.68rem;font-weight:950;text-transform:uppercase}.service-suite-media span i{color:#ff7a1a;margin-right:6px}.service-suite-body{padding:24px}.service-suite-top{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#7a8799;font-size:.72rem;font-weight:900;text-transform:uppercase}.service-suite-top strong{color:#0b63ce}.service-suite-body h2{margin:13px 0 10px;font-size:1.45rem;line-height:1.2}.service-suite-body h2 a{color:#101828;text-decoration:none}.service-suite-body p{margin:0;color:#5d6879;line-height:1.65}.service-outcomes,.service-tools{display:flex;flex-wrap:wrap;gap:8px}.service-outcomes{margin:18px 0 10px}.service-outcomes span{padding:7px 10px;border-radius:999px;color:#071428;background:#fff1d0;font-size:.7rem;font-weight:900}.service-tools{margin-bottom:18px}.service-tools small{padding:6px 9px;border:1px solid #dce7f5;border-radius:999px;color:#607087;background:#f7faff;font-size:.66rem;font-weight:850}.service-card-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.service-path-section{background:#fff}.service-path-panel{padding:32px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1fr);gap:30px;align-items:center;border-radius:28px;color:#fff;background:linear-gradient(125deg,#06152d,#0b376f);box-shadow:0 28px 80px rgba(8,25,55,.2)}.service-path-panel h2{margin:7px 0 12px;font-size:clamp(2rem,3vw,3.4rem);line-height:1;font-weight:950}.service-path-panel p{color:rgba(255,255,255,.72);line-height:1.7}.service-path-steps{display:grid;gap:12px}.service-path-steps article{padding:17px;display:grid;grid-template-columns:54px 1fr;gap:2px 14px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.08)}.service-path-steps b{grid-row:1/3;width:54px;height:54px;display:grid;place-items:center;border-radius:15px;color:#071428;background:linear-gradient(135deg,#f2c94c,#ff9b2f)}.service-path-steps strong{color:#fff}.service-path-steps span{color:rgba(255,255,255,.66)}.service-detail-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:36px}.service-detail-side{position:sticky;top:120px;align-self:start}.service-detail-tags{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.service-detail-tags span{padding:8px 10px;border-radius:999px;color:#0b63ce;background:#eaf3ff;font-size:.72rem;font-weight:900}.service-detail-intro{padding:28px;display:grid;grid-template-columns:64px 1fr;gap:20px;border:1px solid #dce7f5;border-radius:24px;background:#fff;box-shadow:0 20px 55px rgba(28,47,96,.1)}.service-detail-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:18px;color:#fff;background:linear-gradient(135deg,#0b63ce,#28a7f6);font-size:1.6rem}.service-detail-intro h2{margin:7px 0 12px;font-size:clamp(1.8rem,2.5vw,3rem);font-weight:950;line-height:1}.service-detail-intro p{color:#526077;line-height:1.78}.service-metric-band{margin:20px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service-metric-band article{padding:18px;border:1px solid #dce7f5;border-radius:18px;background:linear-gradient(145deg,#f8fbff,#fff)}.service-metric-band i{color:#0b63ce}.service-metric-band strong,.service-metric-band span{display:block}.service-metric-band strong{margin:9px 0 4px;color:#101828}.service-metric-band span{color:#7a8799;font-size:.72rem}.service-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.service-detail-grid section{padding:24px;border:1px solid #dce7f5;border-radius:22px;background:#fff}.service-detail-grid h2{margin:7px 0 18px;font-size:1.5rem}.service-process-list{display:grid;gap:10px}.service-process-list article{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center}.service-process-list b{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:#071428;background:#fff1d0}.service-tool-cloud{display:flex;flex-wrap:wrap;gap:9px}.service-tool-cloud span{padding:10px 12px;border:1px solid #dce7f5;border-radius:999px;color:#314057;background:#f8fbff;font-weight:850}.related-service-list{display:grid;gap:12px}.related-service-list a{padding:12px;display:grid;grid-template-columns:78px 1fr 30px;gap:14px;align-items:center;border:1px solid #dce7f5;border-radius:18px;background:#fff;text-decoration:none}.related-service-list img{width:78px;height:56px;object-fit:cover;border-radius:14px}.related-service-list strong,.related-service-list small{display:block}.related-service-list strong{color:#101828}.related-service-list small{color:#667085}.related-service-list i{color:#0b63ce}@media(max-width:1200px){.service-command{grid-template-columns:1fr}.service-suite-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-path-panel,.service-detail-layout{grid-template-columns:1fr}.service-detail-side{position:static}.service-detail-grid{grid-template-columns:1fr}}@media(max-width:767px){.service-command{padding:18px}.service-command-panel{grid-template-columns:1fr}.service-proof-row,.service-suite-grid,.service-metric-band{grid-template-columns:1fr}.service-path-panel{padding:24px}.service-detail-intro{grid-template-columns:1fr}.service-suite-body{padding:20px}}

/* Definitive public typography layer */
.public-site .hero h1 {
    max-width: 820px;
    font-size: 4.25rem;
    font-weight: 900;
    line-height: 1.03;
    letter-spacing: 0;
}

.public-site .page-hero.page-hero-premium {
    min-height: 540px;
    padding: 76px 0;
}

.public-site .page-hero.page-hero-premium .container h1 {
    max-width: 780px;
    font-size: 4rem;
    font-weight: 900;
    line-height: 1.04;
    letter-spacing: 0;
}

.public-site .page-hero.page-hero-premium .lead {
    max-width: 680px;
    font-size: 1.06rem;
    line-height: 1.65;
}

.public-site .section {
    padding-top: 88px;
    padding-bottom: 88px;
}

.public-site .section-title,
.public-site .contact-section .section-title {
    max-width: 850px;
    font-size: 3rem;
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: 0;
}

.public-site .footer-cta h2 {
    font-size: 2.55rem;
    line-height: 1.1;
    letter-spacing: 0;
}

@media (max-width: 1199px) {
    .public-site .hero h1 {
        font-size: 3.75rem;
    }

    .public-site .page-hero.page-hero-premium .container h1 {
        font-size: 3.5rem;
    }
}

@media (max-width: 991px) {
    .public-site .hero h1 {
        font-size: 3.25rem;
    }

    .public-site .page-hero.page-hero-premium {
        min-height: auto;
        padding: 58px 0;
    }

    .public-site .page-hero.page-hero-premium .container h1 {
        font-size: 3rem;
    }

    .public-site .section {
        padding-top: 68px;
        padding-bottom: 68px;
    }

    .public-site .section-title,
    .public-site .contact-section .section-title {
        font-size: 2.5rem;
    }
}

@media (max-width: 575px) {
    .public-site .hero h1 {
        font-size: 2.55rem;
        line-height: 1.04;
    }

    .public-site .page-hero.page-hero-premium {
        padding: 42px 0 48px;
    }

    .public-site .page-hero.page-hero-premium .container h1 {
        font-size: 2.35rem;
        line-height: 1.06;
    }

    .public-site .page-hero.page-hero-premium .lead {
        font-size: .98rem;
        line-height: 1.62;
    }

    .public-site .section {
        padding-top: 56px;
        padding-bottom: 56px;
    }

    .public-site .section-title,
    .public-site .contact-section .section-title {
        font-size: 2rem;
        line-height: 1.12;
    }

    .public-site .footer-cta h2 {
        font-size: 1.8rem;
    }
}

/* Final public type scale: keep this after all legacy theme layers. */
.public-site .hero h1 {
    max-width: 820px;
    font-size: 4.25rem;
    font-weight: 900;
    line-height: 1.03;
    letter-spacing: 0;
}

.public-site .page-hero.page-hero-premium {
    min-height: 540px;
    padding: 76px 0;
}

.public-site .page-hero.page-hero-premium .container h1 {
    max-width: 780px;
    font-size: 4rem;
    font-weight: 900;
    line-height: 1.04;
    letter-spacing: 0;
}

.public-site .page-hero.page-hero-premium .lead {
    max-width: 680px;
    font-size: 1.06rem;
    line-height: 1.65;
}

.public-site .section {
    padding-top: 88px;
    padding-bottom: 88px;
}

.public-site .section-title,
.public-site .contact-section .section-title {
    max-width: 850px;
    font-size: 3rem;
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: 0;
}

.public-site .footer-cta h2 {
    font-size: 2.55rem;
    line-height: 1.1;
    letter-spacing: 0;
}

@media (max-width: 1199px) {
    .public-site .hero h1 {
        font-size: 3.75rem;
    }

    .public-site .page-hero.page-hero-premium .container h1 {
        font-size: 3.5rem;
    }
}

@media (max-width: 991px) {
    .public-site .hero h1 {
        font-size: 3.25rem;
    }

    .public-site .page-hero.page-hero-premium {
        min-height: auto;
        padding: 58px 0;
    }

    .public-site .page-hero.page-hero-premium .container h1 {
        font-size: 3rem;
    }

    .public-site .section {
        padding-top: 68px;
        padding-bottom: 68px;
    }

    .public-site .section-title,
    .public-site .contact-section .section-title {
        font-size: 2.5rem;
    }
}

@media (max-width: 575px) {
    .public-site .hero h1 {
        font-size: 2.55rem;
        line-height: 1.04;
    }

    .public-site .page-hero.page-hero-premium {
        padding: 42px 0 48px;
    }

    .public-site .page-hero.page-hero-premium .container h1 {
        font-size: 2.35rem;
        line-height: 1.06;
    }

    .public-site .page-hero.page-hero-premium .lead {
        font-size: .98rem;
        line-height: 1.62;
    }

    .public-site .section {
        padding-top: 56px;
        padding-bottom: 56px;
    }

    .public-site .section-title,
    .public-site .contact-section .section-title {
        font-size: 2rem;
        line-height: 1.12;
    }

    .public-site .footer-cta h2 {
        font-size: 1.8rem;
    }
}

/* Public typography refinement */
.public-site {
    font-size: 16px;
    line-height: 1.65;
}

.public-site .hero h1 {
    max-width: 820px;
    font-size: 4.25rem;
    font-weight: 900;
    line-height: 1.03;
    letter-spacing: 0;
}

.public-site .hero p {
    max-width: 700px;
    font-size: 1.08rem;
    line-height: 1.68;
}

.public-site .page-hero.page-hero-premium {
    min-height: 540px;
    padding: 76px 0;
}

.public-site .page-hero.page-hero-premium h1,
.public-site .page-hero h1 {
    max-width: 780px;
    font-size: 4rem;
    font-weight: 900;
    line-height: 1.04;
    letter-spacing: 0;
}

.public-site .page-hero.page-hero-premium .lead,
.public-site .page-hero .lead {
    max-width: 680px;
    font-size: 1.06rem;
    line-height: 1.65;
}

.public-site .page-identity span {
    font-size: .9rem;
    letter-spacing: 0;
}

.public-site .section {
    padding-top: 88px;
    padding-bottom: 88px;
}

.public-site .section-title,
.public-site .contact-section .section-title {
    max-width: 850px;
    font-size: 3rem;
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: 0;
}

.public-site .section-subtitle,
.public-site .section-copy {
    max-width: 720px;
    font-size: 1.03rem;
    line-height: 1.7;
}

.public-site .service-card h3,
.public-site .process-card h3,
.public-site .feature-card h3,
.public-site .problem-card h3,
.public-site .pricing-card h3,
.public-site .case-card h3,
.public-site .blog-card h3 {
    font-size: 1.2rem;
    line-height: 1.3;
    letter-spacing: 0;
}

.public-site .form-heading h2 {
    font-size: 1.75rem;
    line-height: 1.15;
    letter-spacing: 0;
}

.public-site .footer-cta h2 {
    font-size: 2.55rem;
    line-height: 1.1;
    letter-spacing: 0;
}

@media (max-width: 1199px) {
    .public-site .hero h1 {
        font-size: 3.75rem;
    }

    .public-site .page-hero.page-hero-premium h1,
    .public-site .page-hero h1 {
        font-size: 3.5rem;
    }
}

@media (max-width: 991px) {
    .public-site .hero h1 {
        font-size: 3.25rem;
    }

    .public-site .page-hero.page-hero-premium {
        min-height: auto;
        padding: 58px 0;
    }

    .public-site .page-hero.page-hero-premium h1,
    .public-site .page-hero h1 {
        font-size: 3rem;
    }

    .public-site .section {
        padding-top: 68px;
        padding-bottom: 68px;
    }

    .public-site .section-title,
    .public-site .contact-section .section-title {
        font-size: 2.5rem;
    }

    .public-site .footer-cta h2 {
        font-size: 2.2rem;
    }
}

@media (max-width: 575px) {
    .public-site .hero h1 {
        font-size: 2.55rem;
        line-height: 1.04;
    }

    .public-site .hero p {
        font-size: 1rem;
    }

    .public-site .page-hero.page-hero-premium {
        padding: 42px 0 48px;
    }

    .public-site .page-hero.page-hero-premium h1,
    .public-site .page-hero h1 {
        font-size: 2.35rem;
        line-height: 1.06;
    }

    .public-site .page-hero.page-hero-premium .lead,
    .public-site .page-hero .lead {
        font-size: .98rem;
        line-height: 1.62;
    }

    .public-site .page-identity span {
        font-size: .78rem;
    }

    .public-site .section {
        padding-top: 56px;
        padding-bottom: 56px;
    }

    .public-site .section-title,
    .public-site .contact-section .section-title {
        font-size: 2rem;
        line-height: 1.12;
    }

    .public-site .section-subtitle,
    .public-site .section-copy {
        font-size: .98rem;
    }

    .public-site .footer-cta h2 {
        font-size: 1.8rem;
    }
}

/* Absolute final authority: administrator authentication */
body.admin-login-screen {
    min-height: 100vh;
    padding: 34px;
    display: grid;
    place-items: center;
    background:
        linear-gradient(rgba(11,18,32,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(11,18,32,.035) 1px, transparent 1px),
        radial-gradient(circle at 84% 10%, rgba(56,117,255,.22), transparent 27%),
        radial-gradient(circle at 8% 92%, rgba(255,151,45,.18), transparent 25%),
        #f3f6fc;
    background-size: 56px 56px, 56px 56px, auto, auto, auto;
}

body.admin-login-screen .admin-login-wrap {
    width: min(1240px, 100%);
    min-height: 720px;
    grid-template-columns: minmax(0, 1.12fr) minmax(420px, .88fr);
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 38px 100px rgba(19,37,78,.2);
}

body.admin-login-screen .login-brand-panel {
    min-height: 720px;
    padding: 42px 46px 34px;
    display: flex;
    flex-direction: column;
    color: #fff;
    background:
        radial-gradient(circle at 88% 12%, rgba(23,113,255,.34), transparent 27%),
        radial-gradient(circle at 12% 78%, rgba(242,201,76,.17), transparent 25%),
        linear-gradient(145deg, #050915, #071a31 58%, #0a2b58);
}

body.admin-login-screen .login-brand-panel::before {
    inset: 0;
    width: auto;
    height: auto;
    display: block;
    border-radius: 0;
    opacity: .22;
    background:
        linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
    background-size: 42px 42px;
    box-shadow: none;
}

body.admin-login-screen .login-brand-panel::after {
    right: -130px;
    top: -150px;
    bottom: auto;
    width: 390px;
    height: 390px;
    display: block;
    border: 1px solid rgba(255,255,255,.12);
}

body.admin-login-screen .login-mark {
    width: 270px;
    height: 58px;
    max-width: 100%;
    margin: 0;
    object-fit: contain;
    object-position: left center;
}

body.admin-login-screen .login-brand-panel h1 {
    color: #fff;
}

body.admin-login-screen .login-brand-panel p {
    color: rgba(255,255,255,.66);
}

body.admin-login-screen .login-card {
    min-width: 0;
    padding: 64px 58px;
    background:
        radial-gradient(circle at 100% 0%, rgba(83,126,255,.1), transparent 28%),
        #fff;
}

@media (max-width: 991px) {
    body.admin-login-screen {
        padding: 20px;
    }

    body.admin-login-screen .admin-login-wrap {
        min-height: 0;
        grid-template-columns: 1fr;
    }

    body.admin-login-screen .login-brand-panel {
        min-height: auto;
        padding: 30px;
    }

    body.admin-login-screen .login-card {
        padding: 46px 40px;
    }
}

@media (max-width: 575px) {
    body.admin-login-screen {
        padding: 10px;
        place-items: start center;
    }

    body.admin-login-screen .login-brand-panel {
        padding: 22px;
    }

    body.admin-login-screen .login-mark {
        width: 210px;
        height: 48px;
        margin: 0;
    }

    body.admin-login-screen .login-visual,
    body.admin-login-screen .password-rule-panel {
        display: none;
    }

    body.admin-login-screen .login-card {
        padding: 34px 22px;
    }
}

/* Absolute final authority: viewport-fixed public navigation */
.public-site {
    padding-top: 94px;
}

.site-frame {
    overflow: visible;
    backdrop-filter: none;
}

.public-site .cb-nav {
    position: fixed;
    inset: 0 0 auto;
    width: 100%;
    z-index: 1200;
    padding: 8px 0;
    background: rgba(255,255,255,.82);
    border-bottom: 1px solid rgba(255,255,255,.86);
    box-shadow: 0 14px 42px rgba(25,42,82,.12);
    backdrop-filter: blur(24px) saturate(1.25);
}

.public-site .cb-nav.is-scrolled {
    padding: 4px 0;
    background: rgba(255,255,255,.94);
    box-shadow: 0 16px 48px rgba(20,36,75,.18);
}

.public-site .cb-nav.is-scrolled .brand-logo {
    height: 52px;
}

@media (max-width: 991px) {
    .public-site {
        padding-top: 74px;
    }

    .public-site .cb-nav {
        padding: 5px 0;
    }
}

@media (max-width: 575px) {
    .public-site {
        padding-top: 68px;
    }
}

/* Final cascade: premium administrator authentication */
.admin-login-screen {
    min-height: 100vh;
    padding: 34px;
    display: grid;
    place-items: center;
    color: #101828;
    background:
        linear-gradient(rgba(11,18,32,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(11,18,32,.035) 1px, transparent 1px),
        radial-gradient(circle at 84% 10%, rgba(56,117,255,.22), transparent 27%),
        radial-gradient(circle at 8% 92%, rgba(255,151,45,.18), transparent 25%),
        #f3f6fc;
    background-size: 56px 56px, 56px 56px, auto, auto, auto;
}

.admin-login-wrap {
    width: min(1240px, 100%);
    min-height: 720px;
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(420px, .88fr);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 38px 100px rgba(19,37,78,.2);
}

.login-brand-panel {
    position: relative;
    min-height: 720px;
    padding: 42px 46px 34px;
    display: flex;
    flex-direction: column;
    color: #fff;
    overflow: hidden;
    background:
        radial-gradient(circle at 88% 12%, rgba(23,113,255,.34), transparent 27%),
        radial-gradient(circle at 12% 78%, rgba(242,201,76,.17), transparent 25%),
        linear-gradient(145deg, #050915, #071a31 58%, #0a2b58);
}

.login-brand-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    width: auto;
    height: auto;
    border-radius: 0;
    opacity: .22;
    background:
        linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
    background-size: 42px 42px;
    box-shadow: none;
}

.login-brand-panel::after {
    content: "";
    position: absolute;
    right: -130px;
    top: -150px;
    width: 390px;
    height: 390px;
    display: block;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 50%;
}

.login-brand-panel > * {
    position: relative;
    z-index: 1;
}

.login-brand-link {
    align-self: flex-start;
    display: inline-flex;
    padding: 8px 13px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 15px;
    background: rgba(255,255,255,.95);
    box-shadow: 0 14px 34px rgba(0,0,0,.18);
}

.login-mark {
    width: 270px;
    height: 58px;
    max-width: 100%;
    margin: 0;
    border-radius: 0;
    object-fit: contain;
    object-position: left center;
    box-shadow: none;
}

.login-brand-copy {
    margin-top: 34px;
}

.login-eyebrow,
.login-card-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: .75rem;
    font-weight: 850;
    letter-spacing: 0;
    text-transform: uppercase;
}

.login-eyebrow {
    color: #74afff;
}

.login-brand-panel h1 {
    max-width: 630px;
    margin: 12px 0 15px;
    color: #fff;
    font-size: clamp(2.55rem, 3.4vw, 4.45rem);
    font-weight: 900;
    line-height: .98;
    letter-spacing: 0;
}

.login-brand-panel p {
    max-width: 620px;
    margin: 0;
    color: rgba(255,255,255,.66);
    font-size: 1rem;
    line-height: 1.65;
}

.login-visual {
    position: relative;
    min-height: 245px;
    margin-top: 26px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 19px;
    background: #edf3ff;
    box-shadow: 0 24px 55px rgba(0,0,0,.28);
}

.login-visual > img {
    width: 100%;
    height: 245px;
    display: block;
    object-fit: cover;
    object-position: center 48%;
}

.login-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 38%, rgba(4,13,29,.88));
}

.login-visual-caption {
    position: absolute;
    z-index: 2;
    left: 20px;
    right: 20px;
    bottom: 17px;
}

.login-visual-caption span,
.login-visual-caption strong {
    display: block;
}

.login-visual-caption span {
    margin-bottom: 4px;
    color: #89b9ff;
    font-size: .75rem;
    font-weight: 800;
    text-transform: uppercase;
}

.login-visual-caption strong {
    color: #fff;
    font-size: 1.05rem;
}

.login-status {
    position: absolute;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 12px;
    border: 1px solid rgba(255,255,255,.74);
    border-radius: 12px;
    color: #101828;
    background: rgba(255,255,255,.88);
    box-shadow: 0 12px 28px rgba(13,35,74,.16);
    backdrop-filter: blur(12px);
    font-size: .76rem;
    font-weight: 800;
}

.login-status i {
    color: #0b63ce;
}

.login-status-top {
    right: 16px;
    top: 16px;
}

.login-status-bottom {
    right: 16px;
    bottom: 16px;
}

.login-trust-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: auto;
    padding-top: 25px;
}

.login-trust-row span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: rgba(255,255,255,.58);
    font-size: .77rem;
    font-weight: 700;
}

.login-trust-row i {
    color: #f2c94c;
}

.login-card {
    min-width: 0;
    padding: 64px 58px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background:
        radial-gradient(circle at 100% 0%, rgba(83,126,255,.1), transparent 28%),
        #fff;
}

.login-card-heading {
    margin-bottom: 28px;
}

.login-card-icon {
    width: 54px;
    height: 54px;
    margin-bottom: 20px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(11,99,206,.13);
    border-radius: 16px;
    color: #fff;
    background: linear-gradient(135deg, #0a315f, #0b79e8);
    box-shadow: 0 16px 34px rgba(11,99,206,.22);
    font-size: 1.28rem;
}

.login-card-kicker {
    color: #0b63ce;
}

.login-card h2 {
    margin: 7px 0 8px;
    color: #081426;
    font-size: clamp(2.15rem, 3vw, 3.15rem);
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0;
}

.login-card-heading p {
    margin: 0;
    color: #667085;
    line-height: 1.55;
}

.admin-auth-form .form-label {
    margin-bottom: 8px;
    color: #344054;
    font-size: .82rem;
    font-weight: 800;
}

.auth-input {
    position: relative;
}

.auth-input > i {
    position: absolute;
    z-index: 2;
    left: 17px;
    top: 50%;
    color: #8a97aa;
    transform: translateY(-50%);
}

.auth-input .form-control {
    min-height: 58px;
    padding: 12px 50px 12px 48px;
    border: 1px solid #dbe3ef;
    border-radius: 14px;
    color: #101828;
    background: rgba(248,250,253,.94);
    box-shadow: none;
}

.auth-input .form-control:focus {
    border-color: #5a9cf1;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(11,99,206,.1);
}

.password-toggle {
    position: absolute;
    z-index: 3;
    right: 9px;
    top: 50%;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 10px;
    color: #667085;
    background: transparent;
    transform: translateY(-50%);
}

.password-toggle:hover {
    color: #0b63ce;
    background: rgba(11,99,206,.08);
}

.forgot-link {
    color: #0b63ce;
    font-size: .8rem;
    font-weight: 800;
}

.auth-submit {
    min-height: 56px;
    margin-top: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 0;
    border-radius: 14px;
    font-weight: 850;
    box-shadow: 0 18px 35px rgba(11,99,206,.22);
}

.login-card-footer {
    margin-top: 27px;
    padding-top: 22px;
    display: flex;
    flex-direction: column;
    gap: 9px;
    border-top: 1px solid #e9eef5;
}

.login-card-footer span,
.login-card-footer a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: .78rem;
}

.login-card-footer span {
    color: #8993a4;
}

.login-card-footer a {
    align-self: flex-start;
    color: #344054;
    font-weight: 800;
}

.local-reset-preview {
    margin: 0 0 22px;
    padding: 17px;
    border: 1px solid rgba(11,99,206,.16);
    border-radius: 14px;
    background: #f2f7ff;
}

.local-reset-preview strong {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #0a315f;
}

.local-reset-preview p {
    margin: 6px 0 13px;
    color: #667085;
    font-size: .8rem;
}

.login-recovery-visual > img {
    object-position: center;
}

.password-rule-panel {
    margin-top: 36px;
    padding: 26px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 19px;
    background: rgba(255,255,255,.075);
    backdrop-filter: blur(14px);
}

.password-rule-panel > span {
    color: #74afff;
    font-size: .74rem;
    font-weight: 850;
    text-transform: uppercase;
}

.password-rule-panel > strong {
    display: block;
    margin-top: 4px;
    color: #fff;
    font-size: 1.7rem;
}

.password-rule-panel ul {
    margin: 18px 0 0;
    padding: 0;
    display: grid;
    gap: 9px;
    list-style: none;
}

.password-rule-panel li {
    color: rgba(255,255,255,.67);
    font-size: .88rem;
}

.password-rule-panel li i {
    margin-right: 7px;
    color: #f2c94c;
}

@media (max-width: 991px) {
    .admin-login-screen {
        padding: 20px;
    }

    .admin-login-wrap {
        grid-template-columns: 1fr;
    }

    .login-brand-panel {
        min-height: auto;
        padding: 30px;
    }

    .login-brand-copy {
        margin-top: 24px;
    }

    .login-brand-panel h1 {
        max-width: 720px;
        font-size: clamp(2.2rem, 7vw, 3.6rem);
    }

    .login-visual {
        min-height: 220px;
    }

    .login-visual > img {
        height: 220px;
    }

    .login-trust-row {
        margin-top: 0;
    }

    .login-card {
        padding: 46px 40px;
    }
}

@media (max-width: 575px) {
    .admin-login-screen {
        padding: 10px;
        place-items: start center;
    }

    .admin-login-wrap {
        min-height: 0;
        border-radius: 20px;
    }

    .login-brand-panel {
        padding: 22px;
    }

    .login-brand-link {
        padding: 6px 10px;
    }

    .login-mark {
        width: 210px;
        height: 48px;
    }

    .login-brand-panel h1 {
        font-size: 2.15rem;
    }

    .login-brand-panel p {
        font-size: .9rem;
    }

    .login-visual,
    .password-rule-panel {
        display: none;
    }

    .login-trust-row {
        padding-top: 18px;
        gap: 8px 14px;
    }

    .login-trust-row span:nth-child(3) {
        display: none;
    }

    .login-card {
        padding: 34px 22px;
    }

    .login-card h2 {
        font-size: 2.15rem;
    }
}

/* Final cascade: fixed premium navigation and homepage conversion band */
.public-site {
    padding-top: 94px;
}

.site-frame {
    overflow: visible;
    backdrop-filter: none;
}

.public-site .cb-nav {
    position: fixed;
    inset: 0 0 auto;
    width: 100%;
    z-index: 1200;
    padding: 8px 0;
    background: rgba(255,255,255,.82);
    border-bottom: 1px solid rgba(255,255,255,.86);
    box-shadow: 0 14px 42px rgba(25,42,82,.12);
    backdrop-filter: blur(24px) saturate(1.25);
    transition: padding .25s ease, background .25s ease, box-shadow .25s ease;
}

.public-site .cb-nav .container,
.public-site .brand-logo,
.public-site .navbar-brand {
    transition: all .25s ease;
}

.public-site .cb-nav .navbar-nav {
    gap: 2px;
    padding: 5px;
    border: 1px solid rgba(17,24,39,.06);
    border-radius: 999px;
    background: rgba(255,255,255,.46);
}

.public-site .cb-nav .nav-link {
    padding: .58rem .72rem !important;
    border-radius: 999px;
    font-weight: 700;
    transition: color .2s ease, background .2s ease;
}

.public-site .cb-nav .nav-link:hover,
.public-site .cb-nav .nav-link:focus {
    color: #0b63ce;
    background: rgba(11,99,206,.08);
}

.public-site .btn-client-portal {
    min-height: 42px;
    padding: .58rem .88rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    color: #075dbd;
    border: 1px solid rgba(11,99,206,.2);
    border-radius: 999px;
    background: linear-gradient(135deg,rgba(255,255,255,.92),rgba(232,243,255,.9));
    box-shadow: 0 10px 24px rgba(11,99,206,.1), inset 0 1px 0 rgba(255,255,255,.95);
    font-weight: 800;
    white-space: nowrap;
    transition: color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.public-site .btn-client-portal:hover,
.public-site .btn-client-portal:focus {
    color: #fff;
    border-color: #0b63ce;
    background: linear-gradient(135deg,#075dbd,#2d9bf0);
    box-shadow: 0 14px 30px rgba(11,99,206,.24);
    transform: translateY(-1px);
}

.public-site .btn-client-portal i {
    font-size: 1rem;
}

.public-site .cb-nav.is-scrolled {
    padding: 4px 0;
    background: rgba(255,255,255,.94);
    box-shadow: 0 16px 48px rgba(20,36,75,.18);
}

.public-site .cb-nav.is-scrolled .brand-logo {
    height: 52px;
}

.public-site .cb-nav.is-scrolled .navbar-brand {
    padding-top: 4px;
    padding-bottom: 4px;
}

.home-transition {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 66px 0;
    color: #fff;
    background:
        radial-gradient(circle at 82% 15%, rgba(255,255,255,.22), transparent 25%),
        linear-gradient(115deg, #ff7518 0%, #c77048 34%, #526da8 68%, #0967ce 100%);
}

.home-transition::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .16;
    background: url("../img/visual-ai-automation.jpg") center 42% / cover no-repeat;
    mix-blend-mode: luminosity;
}

.home-transition::after {
    content: "";
    position: absolute;
    width: 320px;
    aspect-ratio: 1;
    right: -70px;
    top: -190px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 50%;
}

.home-transition-label {
    display: inline-flex;
    margin-bottom: 14px;
    color: rgba(255,255,255,.78);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.home-transition h2 {
    max-width: 930px;
    margin: 0 0 14px;
    color: #fff;
    font-size: clamp(2.15rem, 4vw, 4.4rem);
    line-height: .98;
}

.home-transition p {
    max-width: 850px;
    margin: 0;
    color: rgba(255,255,255,.78);
    font-size: 1.08rem;
}

.home-transition-actions {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
}

.home-transition-actions .btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 0;
    border-radius: 16px;
    color: #091329;
    font-weight: 800;
    box-shadow: 0 18px 40px rgba(6,18,45,.2);
}

.home-transition-actions > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255,255,255,.82);
    font-size: .92rem;
    font-weight: 700;
}

.back-to-top {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 1180;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 58px;
    height: 52px;
    padding: 0 16px;
    border: 1px solid rgba(255,255,255,.62);
    border-radius: 16px;
    color: #fff;
    background: linear-gradient(135deg, rgba(5,9,21,.94), rgba(11,99,206,.94));
    box-shadow: 0 18px 42px rgba(5,15,42,.28);
    backdrop-filter: blur(16px);
    font-weight: 800;
    opacity: 0;
    pointer-events: none;
    transform: translateY(18px);
    transition: opacity .22s ease, transform .22s ease, box-shadow .22s ease;
}

.back-to-top:hover {
    box-shadow: 0 22px 48px rgba(5,15,42,.38);
    transform: translateY(-2px);
}

.back-to-top.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.public-toast-stack {
    position: fixed;
    top: 108px;
    right: 24px;
    z-index: 2000;
    width: min(390px, calc(100vw - 32px));
    display: grid;
    gap: 12px;
    pointer-events: none;
}

.public-toast {
    --toast-accent: #0b63ce;
    position: relative;
    min-height: 92px;
    padding: 17px 48px 19px 17px;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    align-items: center;
    gap: 13px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.88);
    border-radius: 16px;
    color: #101828;
    background: rgba(255,255,255,.94);
    box-shadow: 0 24px 65px rgba(10,35,76,.2);
    backdrop-filter: blur(20px);
    opacity: 0;
    pointer-events: auto;
    transform: translateX(34px) scale(.97);
    transition: opacity .28s ease, transform .28s ease;
}

.public-toast::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: var(--toast-accent);
}

.public-toast.is-visible {
    opacity: 1;
    transform: none;
}

.public-toast-success { --toast-accent: #079455; }
.public-toast-danger { --toast-accent: #d92d20; }
.public-toast-warning { --toast-accent: #e59a00; }
.public-toast-info { --toast-accent: #0b63ce; }

.public-toast-icon {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: #fff;
    background: var(--toast-accent);
    box-shadow: 0 12px 26px color-mix(in srgb, var(--toast-accent) 28%, transparent);
    font-size: 1.15rem;
}

.public-toast-copy {
    min-width: 0;
}

.public-toast-copy strong,
.public-toast-copy p {
    display: block;
}

.public-toast-copy strong {
    margin-bottom: 3px;
    color: var(--toast-accent);
    font-size: .76rem;
    font-weight: 900;
    text-transform: uppercase;
}

.public-toast-copy p {
    margin: 0;
    color: #344054;
    font-size: .9rem;
    line-height: 1.42;
}

.public-toast > button {
    position: absolute;
    top: 13px;
    right: 13px;
    width: 30px;
    height: 30px;
    padding: 0;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 9px;
    color: #667085;
    background: #f1f4f8;
    transition: color .18s ease, background .18s ease;
}

.public-toast > button:hover {
    color: #101828;
    background: #e4eaf2;
}

.public-toast-progress {
    position: absolute;
    inset: auto 0 0;
    height: 3px;
    background: var(--toast-accent);
    transform-origin: left;
    animation: public-toast-progress 6s linear forwards;
}

.public-toast-danger .public-toast-progress {
    animation-duration: 8s;
}

@keyframes public-toast-progress {
    to { transform: scaleX(0); }
}

@media (max-width: 991px) {
    .public-site {
        padding-top: 74px;
    }

    .public-site .cb-nav {
        padding: 5px 0;
    }

    .public-site .cb-nav .navbar-collapse {
        margin-top: 8px;
        padding: 14px;
        border: 1px solid rgba(17,24,39,.08);
        border-radius: 18px;
        background: rgba(255,255,255,.96);
        box-shadow: 0 18px 42px rgba(20,36,75,.16);
    }

    .public-site .cb-nav .navbar-nav {
        align-items: stretch !important;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
    }

    .public-site .nav-client-item,
    .public-site .nav-consultation-item {
        margin-top: 8px;
    }

    .public-site .btn-client-portal,
    .public-site .nav-consultation-item .btn {
        width: 100%;
        min-height: 48px;
    }

    .home-transition {
        padding: 54px 0;
    }
}

@media (max-width: 575px) {
    .public-site {
        padding-top: 68px;
    }

    .home-transition h2 {
        font-size: clamp(2.15rem, 10.5vw, 3rem);
    }

    .home-transition-actions .btn {
        width: 100%;
        justify-content: space-between;
        white-space: normal;
        text-align: left;
    }

    .back-to-top {
        right: 14px;
        bottom: 14px;
        width: 48px;
        min-width: 48px;
        height: 48px;
        padding: 0;
        justify-content: center;
        border-radius: 14px;
    }

    .back-to-top span {
        display: none;
    }
}

/* Premium inner pages */
.page-hero-premium {
    position: relative;
    min-height: 620px;
    display: flex;
    align-items: center;
    padding: 92px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 80% 22%, rgba(83,126,255,.34), transparent 28%),
        radial-gradient(circle at 14% 80%, rgba(255,122,26,.16), transparent 25%),
        linear-gradient(135deg, #fff 0%, #eef3ff 56%, #fff8ef 100%);
}

.page-hero-premium::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(11,18,32,.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(11,18,32,.05) 1px, transparent 1px);
    background-size: 52px 52px;
    mask-image: linear-gradient(to bottom, black, transparent 92%);
}

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

.page-identity {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px;
}

.page-identity span {
    color: #0b63ce;
    font-size: clamp(1rem, 1.3vw, 1.28rem);
    font-weight: 950;
    text-transform: uppercase;
}

.page-identity i {
    width: 76px;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, #ff7a1a, #f2c94c, #0b63ce);
}

.page-hero-premium h1 {
    max-width: 900px;
    color: #05070b;
    font-size: clamp(3rem, 5vw, 6rem);
    line-height: .98;
    font-weight: 950;
}

.page-hero-premium .lead {
    max-width: 760px;
    color: #4c5668 !important;
    font-size: 1.16rem;
    line-height: 1.7;
}

.page-hero-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.page-hero-badges span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 13px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.9);
    background: rgba(255,255,255,.68);
    box-shadow: 0 12px 30px rgba(28,47,96,.08);
    color: #263247;
    font-size: .84rem;
    font-weight: 800;
    backdrop-filter: blur(14px);
}

.page-hero-badges i {
    color: #ff7a1a;
}

.page-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.page-hero-visual {
    position: relative;
    min-height: 465px;
    border-radius: 32px;
    border: 1px solid rgba(255,255,255,.86);
    background: rgba(255,255,255,.48);
    box-shadow: 0 34px 90px rgba(28,47,96,.18);
    overflow: hidden;
    transform-style: preserve-3d;
    transition: transform .25s ease;
}

.page-hero-visual > img {
    width: 100%;
    height: 100%;
    min-height: 465px;
    object-fit: cover;
}

.page-hero-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(150deg, rgba(255,255,255,.14), transparent 45%, rgba(11,99,206,.08));
    pointer-events: none;
}

.hero-float {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 15px;
    border-radius: 15px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(255,255,255,.92);
    box-shadow: 0 18px 42px rgba(28,47,96,.15);
    color: #111827;
    font-size: .82rem;
    font-weight: 850;
    backdrop-filter: blur(16px);
}

.hero-float i {
    color: #ff7a1a;
}

.hero-float-top {
    top: 22px;
    right: 22px;
}

.hero-float-bottom {
    left: 22px;
    bottom: 22px;
}

.about-visual {
    position: relative;
    overflow: hidden;
    min-height: 440px;
    border-radius: 26px;
    box-shadow: 0 28px 70px rgba(28,47,96,.16);
}

.about-visual img {
    width: 100%;
    height: 100%;
    min-height: 440px;
    object-fit: cover;
}

.about-visual span {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 20px;
    padding: 15px 18px;
    border-radius: 14px;
    color: #fff;
    background: rgba(5,9,21,.78);
    backdrop-filter: blur(14px);
    font-weight: 850;
}

.about-visual span i {
    color: #f2c94c;
    margin-right: 8px;
}

.principle-card {
    height: 100%;
    min-height: 230px;
    padding: 28px;
    border-radius: 22px;
    color: #fff;
    background:
        linear-gradient(145deg, rgba(5,9,21,.8), rgba(11,47,100,.78)),
        url("../img/visual-ai-automation.jpg") center/cover;
    box-shadow: 0 20px 55px rgba(28,47,96,.15);
}

.principle-card > i {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    color: #071425;
    background: linear-gradient(135deg, #f2c94c, #ff9d2e);
    font-size: 1.25rem;
    margin-bottom: 38px;
}

.principle-card span {
    color: rgba(255,255,255,.56);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.principle-card h3 {
    margin-top: 7px;
    font-size: 1.08rem;
}

.public-site .blog-card {
    padding: 0;
    overflow: hidden;
    border-radius: 22px;
}

.service-enquiry-card {
    position: sticky;
    top: 110px;
    padding: 28px;
    border-radius: 22px;
    border: 1px solid rgba(255,255,255,.86);
    background: rgba(255,255,255,.8);
    box-shadow: 0 22px 65px rgba(28,47,96,.13);
    backdrop-filter: blur(18px);
}

.service-enquiry-card > p {
    color: #667085;
}

.article-surface {
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(28px, 5vw, 64px);
    border-radius: 24px;
    background: #fff;
    border: 1px solid rgba(11,99,206,.08);
    box-shadow: 0 24px 70px rgba(28,47,96,.1);
    color: #344054;
    font-size: 1.05rem;
    line-height: 1.85;
}

/* Premium contact workspace */
.contact-section {
    background:
        radial-gradient(circle at 10% 20%, rgba(255,122,26,.1), transparent 22%),
        linear-gradient(180deg, #f8faff, #eef3ff);
}

.contact-intro {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 50px;
    align-items: end;
    margin-bottom: 46px;
}

.contact-intro p {
    color: #5d6779;
    font-size: 1.06rem;
    line-height: 1.7;
}

.contact-channel-stack {
    display: grid;
    gap: 16px;
}

.contact-channel {
    display: grid;
    grid-template-columns: 54px minmax(0,1fr) 28px;
    gap: 14px;
    align-items: center;
    padding: 20px;
    border-radius: 18px;
    color: #111827;
    background: rgba(255,255,255,.82);
    border: 1px solid rgba(255,255,255,.9);
    box-shadow: 0 16px 42px rgba(28,47,96,.09);
    transition: transform .25s ease, box-shadow .25s ease;
}

.contact-channel:hover {
    color: #111827;
    transform: translateY(-3px);
    box-shadow: 0 22px 55px rgba(28,47,96,.14);
}

.contact-channel > span {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    color: #fff;
    background: linear-gradient(135deg, #0b63ce, #28a0ff);
    font-size: 1.25rem;
}

.contact-channel-whatsapp > span {
    background: linear-gradient(135deg, #16a34a, #4ade80);
}

.contact-channel small,
.contact-channel strong,
.contact-channel p {
    display: block;
}

.contact-channel small {
    color: #7c8799;
    font-size: .72rem;
    font-weight: 850;
    text-transform: uppercase;
}

.contact-channel strong {
    overflow-wrap: anywhere;
    margin: 2px 0 5px;
}

.contact-channel p {
    margin: 0;
    color: #667085;
    font-size: .82rem;
}

.contact-expectation {
    position: relative;
    min-height: 285px;
    padding: 26px;
    overflow: hidden;
    border-radius: 22px;
    color: #fff;
    background: #071425;
    box-shadow: 0 24px 65px rgba(7,20,37,.2);
}

.contact-expectation > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .2;
}

.contact-expectation::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(5,9,21,.92), rgba(11,47,100,.76));
}

.contact-expectation > div {
    position: relative;
    z-index: 1;
}

.contact-expectation h3 {
    margin-top: 10px;
    font-size: 1.45rem;
}

.contact-expectation ul {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.contact-expectation li {
    padding: 10px 0;
    border-bottom: 1px solid rgba(255,255,255,.12);
    color: rgba(255,255,255,.72);
}

.contact-expectation li::before {
    content: "✓";
    margin-right: 9px;
    color: #f2c94c;
    font-weight: 900;
}

.contact-workspace {
    overflow: hidden;
    border-radius: 24px;
    border: 1px solid rgba(255,255,255,.9);
    background: rgba(255,255,255,.78);
    box-shadow: 0 28px 80px rgba(28,47,96,.13);
    backdrop-filter: blur(18px);
}

.contact-tabs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    padding: 10px;
    gap: 8px;
    background: rgba(231,237,251,.8);
}

.contact-tabs button {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 16px;
    border: 0;
    border-radius: 16px;
    color: #667085;
    background: transparent;
    text-align: left;
}

.contact-tabs button > i {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    flex: 0 0 42px;
    border-radius: 13px;
    background: rgba(255,255,255,.7);
}

.contact-tabs button.active {
    color: #111827;
    background: #fff;
    box-shadow: 0 12px 32px rgba(28,47,96,.1);
}

.contact-tabs button.active > i {
    color: #fff;
    background: linear-gradient(135deg, #ff7a1a, #f2c94c);
}

.contact-tabs strong,
.contact-tabs small {
    display: block;
}

.contact-tabs small {
    margin-top: 2px;
    color: #8490a3;
    font-size: .73rem;
}

.contact-workspace .tab-pane {
    padding: 34px;
}

.form-heading {
    margin-bottom: 26px;
}

.form-heading > span {
    color: #0b63ce;
    font-size: .76rem;
    font-weight: 900;
    text-transform: uppercase;
}

.form-heading h2 {
    margin: 6px 0;
    color: #111827;
    font-size: 1.8rem;
    font-weight: 900;
}

.form-heading p {
    color: #667085;
    margin: 0;
}

.contact-workspace .form-control,
.contact-workspace .form-select {
    background: rgba(247,249,255,.9);
    border-color: rgba(11,99,206,.12);
}

/* Premium global footer */
.public-site .footer {
    padding: 0 0 30px;
    color: rgba(255,255,255,.7);
    background:
        radial-gradient(circle at 82% 18%, rgba(11,99,206,.25), transparent 28%),
        linear-gradient(135deg, #050915, #081a31);
    border-top: 0;
}

.footer-cta {
    position: relative;
    top: -48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 32px 36px;
    border-radius: 22px;
    color: #fff;
    background:
        radial-gradient(circle at 85% 20%, rgba(255,255,255,.2), transparent 25%),
        linear-gradient(135deg, #ff7a1a, #0b63ce);
    box-shadow: 0 28px 70px rgba(5,9,21,.3);
}

.footer-cta span {
    color: rgba(255,255,255,.7);
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.footer-cta h2 {
    max-width: 720px;
    margin: 6px 0 0;
    color: #fff;
    font-size: clamp(1.7rem, 3vw, 3.1rem);
    font-weight: 900;
    line-height: 1.05;
}

.footer-cta-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 0 0 auto;
}

.footer-whatsapp {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    border: 1px solid rgba(255,255,255,.32);
    border-radius: 999px;
    color: #fff !important;
    background: rgba(255,255,255,.1);
}

.public-site .footer h4 {
    margin-bottom: 20px;
    color: #fff;
    font-size: 1.35rem;
}

.public-site .footer a {
    color: rgba(255,255,255,.64);
}

.public-site .footer a:hover {
    color: #f2c94c;
}

.footer-label {
    display: block;
    margin-bottom: 4px;
    color: #6ea8ff;
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.footer-contact-link {
    display: grid !important;
    grid-template-columns: 24px minmax(0,1fr);
    align-items: start;
    gap: 7px;
}

.footer-contact-link span {
    overflow-wrap: anywhere;
}

.footer-social {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.footer-social a {
    width: 42px;
    height: 42px;
    display: grid !important;
    place-items: center;
    border-radius: 13px;
    color: #fff !important;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.12);
}

.public-site .footer-bottom {
    border-color: rgba(255,255,255,.12);
}

@media (max-width: 991px) {
    .page-hero-premium {
        min-height: auto;
        padding: 70px 0;
    }
    .page-hero-visual {
        min-height: 390px;
    }
    .page-hero-visual > img {
        min-height: 390px;
    }
    .contact-intro {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .footer-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 575px) {
    .page-hero-premium {
        padding: 56px 0 64px;
    }
    .page-hero-premium h1 {
        font-size: clamp(2.45rem, 12vw, 3.8rem);
    }
    .page-hero-premium .lead {
        font-size: 1rem;
    }
    .page-hero-visual,
    .page-hero-visual > img {
        min-height: 310px;
    }
    .hero-float {
        position: relative;
        inset: auto;
        margin: 8px;
    }
    .contact-tabs {
        grid-template-columns: 1fr;
    }
    .contact-workspace .tab-pane {
        padding: 22px;
    }
    .footer-cta {
        top: -32px;
        padding: 26px 22px;
    }
    .footer-cta-actions {
        align-items: stretch;
        flex-direction: column;
        width: 100%;
    }
    .footer-cta-actions .btn,
    .footer-whatsapp {
        justify-content: center;
        width: 100%;
    }
}

/* Unified premium card system */
.public-site .premium-strip {
    padding: 28px 0;
    background: #fff;
}

.public-site .premium-strip-inner {
    box-shadow: 0 18px 55px rgba(28,47,96,.1);
}

.public-site .premium-strip-inner > div {
    gap: 14px;
    min-height: 94px;
    padding: 20px 22px;
}

.premium-strip-inner .strip-icon {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(135deg, #ff7a1a, #f2c94c);
    box-shadow: 0 12px 24px rgba(255,122,26,.2);
}

.premium-strip-inner .strip-icon i {
    color: #fff;
}

.premium-strip-inner strong,
.premium-strip-inner small {
    display: block;
}

.premium-strip-inner strong {
    color: #111827;
    font-size: .96rem;
}

.premium-strip-inner small {
    color: #6b7280;
    font-weight: 600;
    margin-top: 3px;
}

.public-site .service-card,
.public-site .price-card,
.public-site .case-card {
    padding: 0;
    border-radius: 22px;
    background: rgba(255,255,255,.9);
    overflow: hidden;
}

.card-media {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #edf3ff;
}

.card-media::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 35%;
    background: linear-gradient(transparent, rgba(5,9,21,.12));
    pointer-events: none;
}

.card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .55s ease;
}

.service-card:hover .card-media img,
.price-card:hover .card-media img,
.case-card:hover .card-media img {
    transform: scale(1.045);
}

.card-content {
    position: relative;
    padding: 26px;
}

.card-content .icon-box {
    margin-top: -52px;
    margin-bottom: 20px;
    border: 5px solid #fff;
}

.card-content p {
    color: #596273;
}

.card-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #0b63ce;
    font-weight: 850;
    font-size: .9rem;
}

.case-label {
    display: inline-block;
    margin-bottom: 10px;
    color: #ff7a1a;
    font-size: .75rem;
    font-weight: 900;
    text-transform: uppercase;
}

.price-tag {
    display: block;
    color: #0b63ce;
    font-size: 1.35rem;
    margin: 10px 0;
}

.problem-card {
    position: relative;
    min-height: 224px;
    overflow: hidden;
    border-radius: 22px;
    background: #071425;
    box-shadow: 0 20px 50px rgba(7,20,37,.16);
}

.problem-card > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .42;
    filter: saturate(.8);
}

.problem-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(7,20,37,.1), rgba(7,20,37,.94));
}

.problem-card > div {
    position: absolute;
    z-index: 1;
    inset: auto 24px 24px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.problem-card i {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: #fff;
    background: #ff7a1a;
}

.problem-card h3 {
    color: #fff;
    font-size: 1.08rem;
    line-height: 1.35;
    margin: 0;
}

.public-site .section-dark .section-title {
    color: #fff;
}

.public-site .section-dark .eyebrow {
    color: #f2c94c;
}

.value-card {
    position: relative;
    min-height: 245px;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.08);
}

.value-card > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .2;
}

.value-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(4,9,21,.9), rgba(8,29,58,.76));
}

.value-card-copy {
    position: relative;
    z-index: 1;
    padding: 28px;
}

.value-card-copy > i {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: #071425;
    background: linear-gradient(135deg, #f2c94c, #ff9d2e);
    font-size: 1.25rem;
    margin-bottom: 26px;
}

.value-card h3 {
    color: #fff;
    font-size: 1.15rem;
}

.value-card p {
    color: rgba(255,255,255,.7);
    margin-bottom: 0;
}

.public-site .process-step {
    min-height: 245px;
    padding: 28px 24px;
    background: #fff;
    display: flex;
    flex-direction: column;
}

.public-site .process-step::before {
    display: none;
}

.process-number {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 17px;
    color: #fff;
    background: linear-gradient(135deg, #0b63ce, #28a0ff);
    box-shadow: 0 14px 30px rgba(11,99,206,.22);
    font-weight: 900;
    margin-bottom: 38px;
}

.public-site .process-step h3 {
    font-size: 1.15rem;
    font-weight: 850;
}

.public-site .process-step p {
    color: #606a7a;
    font-size: .95rem;
    margin-bottom: 0;
}

.testimonial-card {
    height: 100%;
    padding: 30px;
    border-radius: 22px;
    background: #fff;
    border: 1px solid rgba(11,99,206,.1);
    box-shadow: 0 18px 50px rgba(28,47,96,.1);
}

.quote-mark {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    background: linear-gradient(135deg, #ff7a1a, #f2c94c);
    color: #fff;
    font-size: 1.5rem;
    margin-bottom: 22px;
}

.testimonial-person {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 24px;
}

.testimonial-person > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: #0b63ce;
    font-weight: 900;
}

.testimonial-person strong,
.testimonial-person small {
    display: block;
}

.testimonial-person small {
    color: #6b7280;
}

.public-site .footer-logo {
    width: min(100%, 360px);
    height: 82px;
    object-fit: contain;
    object-position: left center;
    padding: 10px 14px;
    border-radius: 16px;
    background: rgba(255,255,255,.94);
    box-shadow: 0 18px 42px rgba(0,0,0,.18);
}

@media (max-width: 991px) {
    .public-site .premium-strip-inner > div {
        min-height: 86px;
    }
}

/* Unified Cognibridges admin */
.admin-shell {
    min-height: 100vh;
    background:
        radial-gradient(circle at 78% 0%, rgba(83,126,255,.16), transparent 26%),
        linear-gradient(135deg, #f7f9ff, #eef3ff 56%, #fff8ef);
    color: #111827;
}

.admin-layout {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 276px minmax(0, 1fr);
}

.admin-sidebar {
    position: sticky;
    top: 0;
    height: 100vh;
    min-height: 0;
    padding: 22px 18px;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    background:
        radial-gradient(circle at 30% 3%, rgba(242,201,76,.2), transparent 20%),
        linear-gradient(180deg, #07101f, #0a1930);
    box-shadow: 18px 0 60px rgba(7,18,38,.12);
}

.admin-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px;
    margin-bottom: 22px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 16px;
    background: rgba(255,255,255,.07);
}

.admin-brand img {
    width: 50px;
    height: 38px;
    object-fit: contain;
}

.admin-brand strong,
.admin-brand small {
    display: block;
}

.admin-brand strong {
    color: #fff;
    font-size: .98rem;
}

.admin-brand small {
    color: rgba(255,255,255,.52);
    font-size: .72rem;
}

.admin-nav {
    display: grid;
    gap: 4px;
}

.admin-nav-label {
    color: rgba(255,255,255,.38);
    font-size: .7rem;
    font-weight: 900;
    text-transform: uppercase;
    padding: 8px 12px;
}

.admin-sidebar .admin-nav a {
    min-height: 46px;
    padding: 10px 12px;
    border-radius: 12px;
    color: rgba(255,255,255,.72);
}

.admin-sidebar .admin-nav a i {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: rgba(255,255,255,.07);
}

.admin-sidebar .admin-nav a:hover,
.admin-sidebar .admin-nav a.active {
    color: #fff;
    background: linear-gradient(135deg, rgba(11,99,206,.9), rgba(40,160,255,.7));
    box-shadow: 0 12px 28px rgba(11,99,206,.22);
}

.admin-sidebar .admin-nav a:last-child {
    margin-top: 12px;
    color: #ffb1a4;
}

.admin-sidebar-foot {
    margin-top: auto;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 14px 10px 0;
    border-top: 1px solid rgba(255,255,255,.1);
}

.admin-avatar {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: #071425;
    background: linear-gradient(135deg, #f2c94c, #ff9d2e);
    font-weight: 900;
}

.admin-sidebar-foot strong,
.admin-sidebar-foot small {
    display: block;
}

.admin-sidebar-foot strong {
    color: #fff;
    font-size: .86rem;
}

.admin-sidebar-foot small {
    color: rgba(255,255,255,.48);
    font-size: .72rem;
}

.admin-main {
    min-width: 0;
    padding: 30px;
}

.admin-topbar {
    min-height: 86px;
    margin-bottom: 26px;
    padding: 15px 18px 15px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border: 1px solid rgba(255,255,255,.84);
    border-radius: 18px;
    background: rgba(255,255,255,.68);
    box-shadow: 0 18px 50px rgba(28,47,96,.08);
    backdrop-filter: blur(18px);
}

.admin-breadcrumb {
    color: #748097;
    font-size: .75rem;
    font-weight: 750;
}

.admin-topbar h1 {
    margin: 3px 0 0;
    color: #0b1220;
    font-size: clamp(1.45rem, 2vw, 2rem);
    font-weight: 900;
}

.admin-top-actions {
    display: flex;
    gap: 9px;
}

.admin-icon-btn {
    width: 44px;
    height: 44px;
    padding: 0;
    display: grid;
    place-items: center;
    border: 1px solid rgba(11,99,206,.12);
    border-radius: 13px;
    background: #fff;
    color: #0b63ce;
}

.admin-card {
    padding: 24px;
    border: 1px solid rgba(255,255,255,.86);
    border-radius: 18px;
    background: rgba(255,255,255,.82);
    box-shadow: 0 16px 45px rgba(28,47,96,.08);
    backdrop-filter: blur(16px);
}

.admin-card h3 {
    color: #111827;
    font-weight: 850;
}

.admin-hero {
    padding: 38px;
    border-radius: 22px;
    background:
        radial-gradient(circle at 10% 10%, rgba(242,201,76,.18), transparent 28%),
        linear-gradient(135deg, #071425, #0b2f64);
}

.admin-hero h2 {
    max-width: 720px;
    color: #fff;
    font-size: clamp(2rem, 3vw, 3.5rem);
    font-weight: 900;
    line-height: 1.02;
}

.admin-hero p {
    color: rgba(255,255,255,.66);
    max-width: 680px;
}

.admin-hero-visual {
    position: relative;
    min-height: 270px;
    overflow: hidden;
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,.2);
    box-shadow: 0 24px 55px rgba(0,0,0,.24);
}

.admin-hero-visual img {
    width: 100%;
    height: 100%;
    min-height: 270px;
    object-fit: cover;
}

.admin-hero-visual span {
    position: absolute;
    left: 18px;
    bottom: 18px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 13px;
    border-radius: 12px;
    color: #111827;
    background: rgba(255,255,255,.9);
    box-shadow: 0 12px 28px rgba(0,0,0,.14);
    font-weight: 850;
}

.admin-hero-visual span i {
    color: #16a34a;
}

.admin-stat {
    min-height: 168px;
    background:
        radial-gradient(circle at 85% 10%, rgba(40,160,255,.16), transparent 34%),
        rgba(255,255,255,.86);
}

.admin-stat > .d-flex {
    display: grid !important;
    grid-template-columns: 44px 1fr;
    gap: 10px;
    align-items: center !important;
}

.admin-stat > .d-flex .small {
    line-height: 1.25;
    text-align: left;
}

.admin-stat i {
    background: linear-gradient(135deg, #0b63ce, #28a0ff);
    color: #fff;
}

.admin-card-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px;
}

.admin-card-head h3,
.admin-card-head p {
    margin: 0;
}

.admin-card-head p {
    color: #748097;
    font-size: .88rem;
}

.admin-card-icon {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(135deg, #ff7a1a, #f2c94c);
}

.admin-task {
    height: 100%;
    padding: 18px;
    border-radius: 14px;
    background: #f5f8ff;
    border: 1px solid rgba(11,99,206,.08);
}

.admin-task > i {
    color: #0b63ce;
    font-size: 1.25rem;
}

.admin-task strong {
    display: block;
    margin: 12px 0 4px;
}

.admin-task p {
    color: #748097;
    font-size: .86rem;
    margin: 0;
}

.admin-shell .table-responsive {
    border-radius: 14px;
}

.admin-shell .table {
    margin-bottom: 0;
}

.admin-shell .table thead th {
    padding: 13px 14px;
    border-bottom: 0;
    background: #eef3ff;
    color: #556177;
}

.admin-shell .table tbody td {
    padding: 15px 14px;
    border-color: rgba(11,99,206,.07);
}

.admin-shell .table-striped > tbody > tr:nth-of-type(odd) > * {
    --bs-table-accent-bg: rgba(246,249,255,.8);
}

.admin-shell .form-control,
.admin-shell .form-select {
    background: rgba(255,255,255,.88);
    border-color: rgba(11,99,206,.14);
}

.admin-shell .form-label {
    color: #344054;
    font-size: .82rem;
    font-weight: 800;
}

.admin-login-screen {
    background:
        radial-gradient(circle at 85% 10%, rgba(83,126,255,.24), transparent 25%),
        radial-gradient(circle at 10% 90%, rgba(255,122,26,.16), transparent 26%),
        linear-gradient(135deg, #eef3ff, #fff);
}

.admin-login-wrap {
    width: min(1120px, 100%);
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 24px;
    box-shadow: 0 34px 100px rgba(28,47,96,.18);
}

.login-brand-panel {
    color: #111827;
    background:
        linear-gradient(120deg, rgba(255,255,255,.78), rgba(236,242,255,.78)),
        url("../img/visual-ai-automation.jpg") center/cover;
}

.login-brand-panel::before {
    content: "";
    position: absolute;
    inset: auto 36px 36px auto;
    width: 210px;
    height: 150px;
    border-radius: 20px;
    background: url("../img/visual-web-crm.jpg") center/cover;
    box-shadow: 0 20px 50px rgba(28,47,96,.18);
    opacity: .92;
}

.login-brand-panel::after {
    display: none;
}

.login-mark {
    width: min(100%, 430px);
    height: 96px;
    object-fit: contain;
    object-position: left center;
    border-radius: 0;
    box-shadow: none;
    margin-bottom: 50px;
}

.login-brand-panel h1 {
    color: #06070b;
}

.login-brand-panel p {
    color: #475467;
    max-width: 520px;
}

.login-signal-grid {
    max-width: 440px;
}

.login-signal-grid div {
    background: rgba(255,255,255,.7);
    border-color: rgba(255,255,255,.92);
    box-shadow: 0 14px 35px rgba(28,47,96,.1);
}

.login-signal-grid strong {
    color: #111827;
}

.login-signal-grid span {
    color: #667085;
}

.login-card {
    background: rgba(255,255,255,.92);
}

.login-card-mark {
    width: 88px;
    height: 58px;
    object-fit: contain;
    object-position: left center;
    margin-bottom: 20px;
}

@media (max-width: 991px) {
    .admin-layout {
        grid-template-columns: 1fr;
    }
    .admin-sidebar {
        position: relative;
        height: auto;
        padding: 14px;
    }
    .admin-brand {
        margin-bottom: 10px;
    }
    .admin-nav {
        display: flex;
        overflow-x: auto;
        padding-bottom: 4px;
        scrollbar-width: none;
    }
    .admin-nav::-webkit-scrollbar {
        display: none;
    }
    .admin-nav-label,
    .admin-sidebar-foot {
        display: none;
    }
    .admin-sidebar .admin-nav a {
        flex: 0 0 auto;
    }
    .admin-sidebar .admin-nav a:last-child {
        margin-top: 0;
    }
    .admin-main {
        padding: 18px;
    }
    .admin-hero {
        padding: 26px;
    }
    .login-brand-panel::before {
        display: none;
    }
}

@media (max-width: 575px) {
    .admin-main {
        padding: 12px;
    }
    .admin-topbar {
        padding: 14px;
    }
    .admin-breadcrumb {
        display: none;
    }
    .admin-card {
        padding: 18px;
    }
    .admin-login-screen {
        padding: 12px;
    }
    .login-brand-panel {
        padding: 26px;
    }
    .login-mark {
        height: 72px;
        margin-bottom: 24px;
    }

    .public-toast-stack {
        top: auto;
        right: 12px;
        bottom: 18px;
        left: 12px;
        width: auto;
    }

    .public-toast {
        min-height: 80px;
        padding: 14px 43px 16px 14px;
        grid-template-columns: 40px minmax(0, 1fr);
        gap: 11px;
        border-radius: 14px;
        transform: translateY(28px) scale(.98);
    }

    .public-toast-icon {
        width: 40px;
        height: 40px;
        border-radius: 11px;
    }

    .public-toast-copy p {
        font-size: .82rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .public-toast,
    .public-toast-progress {
        transition: none;
        animation: none;
    }
}

/* Active public navigation */
.public-site .cb-nav .nav-link {
    position: relative;
}

.public-site .cb-nav .nav-link.active,
.public-site .cb-nav .nav-link[aria-current="page"] {
    color: #075dbd;
    background: linear-gradient(135deg,rgba(11,99,206,.12),rgba(45,155,240,.07));
    box-shadow: inset 0 0 0 1px rgba(11,99,206,.08);
}

.public-site .cb-nav .nav-link.active::after,
.public-site .cb-nav .nav-link[aria-current="page"]::after {
    content: "";
    position: absolute;
    right: 18%;
    bottom: 3px;
    left: 18%;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg,#f2c94c,#ff8a1f,#0b63ce);
    box-shadow: 0 4px 12px rgba(11,99,206,.2);
}

@media (max-width: 991px) {
    .public-site .cb-nav .nav-link.active,
    .public-site .cb-nav .nav-link[aria-current="page"] {
        padding-left: 16px !important;
    }

    .public-site .cb-nav .nav-link.active::after,
    .public-site .cb-nav .nav-link[aria-current="page"]::after {
        inset: 22% auto 22% 4px;
        width: 3px;
        height: auto;
    }
}

/* Reference-inspired public landing page skin */
.public-site {
    background:
        radial-gradient(circle at 18% 4%, rgba(255,255,255,.64), transparent 24%),
        linear-gradient(135deg, #91a8e6 0%, #b9c7f4 45%, #8ea4e3 100%);
    padding: 0;
}

.site-frame {
    width: 100%;
    min-height: 100vh;
    margin: 0;
    overflow: hidden;
    border-radius: 0;
    border: 0;
    background:
        linear-gradient(115deg, rgba(255,255,255,.9), rgba(239,243,255,.72) 42%, rgba(255,248,240,.9));
    box-shadow: none;
    backdrop-filter: blur(26px);
}

.public-site .cb-nav {
    position: sticky;
    top: 0;
    background: rgba(255,255,255,.7);
    border-bottom: 1px solid rgba(17,24,39,.08);
    box-shadow: none;
    backdrop-filter: blur(24px);
    z-index: 1050;
}

.public-site .navbar-brand {
    padding: 7px 13px;
    border-radius: 24px;
    background: rgba(255,255,255,.56);
    border: 1px solid rgba(255,255,255,.8);
    box-shadow: 0 14px 34px rgba(28,47,96,.1);
    backdrop-filter: blur(14px);
}

.public-site .navbar-brand picture {
    display: flex;
    align-items: center;
}

.public-site .brand-logo {
    width: auto;
    height: 66px;
    max-width: min(38vw, 390px);
    padding: 0;
    object-fit: contain;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.public-site .nav-link {
    color: #111827;
}

.public-site .nav-link:hover {
    color: #ff7a1a;
}

.public-site .navbar-toggler {
    border-color: rgba(17,24,39,.16);
    background: rgba(255,255,255,.55);
}

.public-site .navbar-toggler-icon {
    filter: invert(1);
}

.public-site .hero {
    min-height: auto;
    padding: 104px 0 92px;
    color: #0b0f19;
    background:
        radial-gradient(circle at 72% 24%, rgba(142,168,255,.42), transparent 30%),
        radial-gradient(circle at 22% 26%, rgba(255,122,26,.18), transparent 23%),
        linear-gradient(135deg, rgba(255,255,255,.55), rgba(240,244,255,.58));
    overflow: visible;
}

.public-site .hero::before {
    background-image:
        linear-gradient(rgba(11,18,32,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(11,18,32,.055) 1px, transparent 1px);
    opacity: .58;
    mask-image: none;
}

.public-site .hero::after {
    display: none;
}

.public-site .hero h1 {
    color: #050505;
    font-size: 4.25rem;
    line-height: 1.03;
    max-width: 820px;
    letter-spacing: 0;
}

.public-site .hero h1::after {
    content: "";
    display: inline-block;
    width: .42em;
    height: .42em;
    margin-left: .08em;
    border-radius: 55% 45% 55% 45%;
    background: #ff7a1a;
    transform: rotate(-26deg);
    box-shadow: inset -8px -8px 0 rgba(0,0,0,.08);
}

.public-site .hero p {
    color: #303848;
    font-size: 1.2rem;
    max-width: 760px;
}

.public-site .hero .eyebrow,
.public-site .eyebrow {
    color: #5d76c8;
}

.public-site .btn-gold {
    background: linear-gradient(135deg, #ff7a1a, #ff9d2e);
    color: #fff;
    border-radius: 18px;
    box-shadow: 0 18px 46px rgba(255,122,26,.28);
}

.public-site .btn-outline-light,
.btn-soft-dark {
    color: #111827;
    border: 1px solid rgba(17,24,39,.14);
    background: rgba(255,255,255,.55);
    backdrop-filter: blur(14px);
}

.public-site .btn-outline-light:hover,
.btn-soft-dark:hover {
    background: #111827;
    color: #fff;
}

.public-site .signal-pill,
.public-site .trust-row strong {
    color: #111827;
    background: rgba(255,255,255,.62);
    border-color: rgba(17,24,39,.12);
    box-shadow: 0 12px 30px rgba(28,47,96,.08);
}

.public-site .trust-row {
    color: #5b6472;
}

.reference-hero-graphic {
    position: relative;
    min-height: 560px;
    display: grid;
    place-items: center;
    padding-top: 28px;
}

.reference-hero-graphic img {
    width: min(620px, 100%);
    filter: drop-shadow(0 28px 50px rgba(28, 47, 96, .16));
    animation: floatPanel 7s ease-in-out infinite;
}

.glass-note {
    position: absolute;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 13px 16px;
    border-radius: 18px;
    background: rgba(255,255,255,.62);
    border: 1px solid rgba(255,255,255,.74);
    box-shadow: 0 18px 45px rgba(28,47,96,.14);
    backdrop-filter: blur(16px);
    color: #111827;
    font-weight: 850;
}

.glass-note i {
    color: #ff7a1a;
}

.glass-note-top {
    top: 54px;
    right: 36px;
}

.glass-note-bottom {
    left: 22px;
    bottom: 80px;
}

.public-site .metric-strip {
    border-radius: 24px;
    border-color: rgba(17,24,39,.08);
    background: rgba(255,255,255,.42);
    box-shadow: 0 22px 60px rgba(28,47,96,.12);
}

.public-site .metric-strip div {
    background: rgba(255,255,255,.5);
}

.public-site .metric-strip strong {
    color: #ff7a1a;
}

.public-site .metric-strip span {
    color: #111827;
}

.public-site .premium-strip {
    background: transparent;
    color: #111827;
    padding-bottom: 50px;
}

.public-site .premium-strip-inner {
    border: 1px solid rgba(255,255,255,.72);
    background: rgba(255,255,255,.38);
    box-shadow: 0 24px 70px rgba(28,47,96,.13);
}

.public-site .premium-strip-inner div {
    background: rgba(255,255,255,.56);
}

.public-site .premium-strip-inner i {
    color: #ff7a1a;
}

.editorial-block,
.illustrated-split {
    background:
        linear-gradient(180deg, rgba(255,255,255,.72), rgba(250,246,241,.72));
}

.public-site .section {
    padding: 88px 0;
}

.public-site .section-light {
    background: rgba(250,246,241,.76);
}

.public-site .section-title {
    color: #06070b;
    font-size: 3rem;
    line-height: 1.08;
    letter-spacing: 0;
}

.editorial-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.color-card {
    min-height: 230px;
    padding: 28px;
    border-radius: 26px;
    color: #fff;
    box-shadow: 0 24px 70px rgba(28,47,96,.16);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
    overflow: hidden;
}

.color-card::before {
    content: "";
    position: absolute;
    inset: 18px 18px auto auto;
    width: 74px;
    height: 74px;
    border-radius: 22px;
    background: rgba(255,255,255,.18);
    border: 1px solid rgba(255,255,255,.25);
}

.color-card i {
    position: absolute;
    top: 36px;
    right: 38px;
    font-size: 2rem;
    color: rgba(255,255,255,.85);
}

.color-card strong {
    display: block;
    font-size: 1.25rem;
    margin-bottom: 8px;
}

.color-card span {
    color: rgba(255,255,255,.82);
}

.color-card-gold {
    background: linear-gradient(135deg, #ff7a1a, #f2c94c);
}

.color-card-blue {
    background: linear-gradient(135deg, #8ea8ff, #0b63ce);
}

.color-card-rose {
    background: linear-gradient(135deg, #ff6f91, #7c5cff);
}

.soft-illustration-card {
    border-radius: 34px;
    padding: 32px;
    background: rgba(255,255,255,.52);
    border: 1px solid rgba(255,255,255,.78);
    box-shadow: 0 28px 90px rgba(28,47,96,.16);
    backdrop-filter: blur(18px);
}

.soft-illustration-card img {
    width: 100%;
    filter: drop-shadow(0 20px 40px rgba(28,47,96,.12));
}

.public-site .service-card,
.public-site .price-card,
.public-site .case-card,
.public-site .blog-card,
.public-site .process-step {
    border-radius: 26px;
    background: rgba(255,255,255,.62);
    border: 1px solid rgba(255,255,255,.8);
    box-shadow: 0 18px 50px rgba(28,47,96,.11);
    backdrop-filter: blur(18px);
}

.public-site .icon-box {
    border-radius: 20px;
    background: linear-gradient(135deg, #ff7a1a, #f2c94c);
    color: #fff;
    box-shadow: 0 16px 34px rgba(255,122,26,.22);
}

.public-site .section-dark {
    margin: 0;
    border-radius: 0;
    background:
        radial-gradient(circle at 82% 14%, rgba(142,168,255,.28), transparent 30%),
        linear-gradient(135deg, rgba(5,9,21,.95), rgba(10,27,52,.94));
    overflow: hidden;
}

.public-site .cta-band {
    margin: 0;
    border-radius: 0;
    background:
        radial-gradient(circle at 85% 20%, rgba(255,255,255,.24), transparent 24%),
        linear-gradient(135deg, #ff7a1a, #0b63ce);
}

.public-site .footer {
    margin: 0;
    border-top: 1px solid rgba(17,24,39,.08);
    background: rgba(255,255,255,.38);
    color: #111827;
}

.contact-info-panel,
.contact-card {
    border-radius: 28px;
    background: rgba(255,255,255,.66);
    border: 1px solid rgba(255,255,255,.82);
    box-shadow: 0 22px 70px rgba(28,47,96,.13);
    backdrop-filter: blur(18px);
    padding: 28px;
    height: auto;
    overflow: hidden;
}

.contact-section .section-title {
    font-size: 3rem;
    line-height: 1.08;
}

.contact-card .input-group {
    align-items: stretch;
    flex-wrap: nowrap;
}

.contact-card .input-group .btn {
    border-radius: 14px;
    white-space: nowrap;
}

.contact-card .form-control,
.contact-card .form-select,
.contact-card textarea {
    width: 100%;
}

.public-site .footer h3,
.public-site .footer h4 {
    color: #111827;
}

.public-site .footer a {
    color: #303848;
}

.public-site .footer-bottom {
    border-color: rgba(17,24,39,.1);
}

.public-site .page-hero {
    background:
        radial-gradient(circle at 78% 18%, rgba(142,168,255,.36), transparent 28%),
        radial-gradient(circle at 20% 35%, rgba(255,122,26,.14), transparent 24%),
        linear-gradient(135deg, rgba(255,255,255,.64), rgba(241,245,255,.72));
    color: #0b0f19;
    padding: 100px 0;
}

.public-site .page-hero::after {
    background-image:
        linear-gradient(rgba(11,18,32,.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(11,18,32,.055) 1px, transparent 1px);
}

.public-site .page-hero h1 {
    color: #050505;
}

.public-site .page-hero .lead {
    color: #303848 !important;
}

@media (max-width: 991px) {
    .public-site {
        padding: 0;
    }
    .site-frame {
        border-radius: 0;
        border-width: 0;
    }
    .public-site .hero {
        padding: 60px 0;
    }
    .public-site .section {
        padding: 68px 0;
    }
    .public-site .page-hero {
        padding: 68px 0 58px;
    }
    .public-site .hero h1 {
        font-size: 3.25rem;
    }
    .public-site .page-hero h1 {
        font-size: 3rem;
    }
    .reference-hero-graphic {
        min-height: auto;
        margin-top: 34px;
    }
    .editorial-card-grid {
        grid-template-columns: 1fr;
    }
    .glass-note {
        position: relative;
        inset: auto;
        margin: 8px;
    }
}

@media (max-width: 575px) {
    .public-site .navbar-brand {
        max-width: calc(100vw - 92px);
        padding: 7px 12px;
    }
    .public-site .brand-logo {
        width: auto;
        height: 44px;
        max-width: 118px;
    }
    .contact-card .input-group {
        display: grid;
        gap: 10px;
    }
    .contact-card .input-group .btn,
    .contact-card .input-group .form-control {
        width: 100%;
        border-radius: 14px !important;
    }
}

/* Final cascade: premium inner pages and footer */
.public-site {
    padding-top: 94px;
}

.site-frame {
    overflow: visible;
    backdrop-filter: none;
}

.public-site .cb-nav {
    position: fixed;
    inset: 0 0 auto;
    width: 100%;
    z-index: 1200;
    padding: 8px 0;
    background: rgba(255,255,255,.82);
    border-bottom: 1px solid rgba(255,255,255,.86);
    box-shadow: 0 14px 42px rgba(25,42,82,.12);
    backdrop-filter: blur(24px) saturate(1.25);
}

.public-site .cb-nav.is-scrolled {
    padding: 4px 0;
    background: rgba(255,255,255,.94);
    box-shadow: 0 16px 48px rgba(20,36,75,.18);
}

.public-site .cb-nav.is-scrolled .brand-logo {
    height: 52px;
}

.public-site .page-hero.page-hero-premium {
    min-height: 540px;
    display: flex;
    align-items: center;
    padding: 76px 0;
    color: #111827;
    background:
        radial-gradient(circle at 80% 22%, rgba(83,126,255,.34), transparent 28%),
        radial-gradient(circle at 14% 80%, rgba(255,122,26,.16), transparent 25%),
        linear-gradient(135deg, #fff 0%, #eef3ff 56%, #fff8ef 100%);
}

.public-site .page-hero.page-hero-premium h1 {
    max-width: 780px;
    font-size: 4rem;
    line-height: 1.04;
    letter-spacing: 0;
}

.public-site .footer {
    margin: 0;
    padding: 0 0 30px;
    color: rgba(255,255,255,.7);
    background:
        radial-gradient(circle at 82% 18%, rgba(11,99,206,.25), transparent 28%),
        linear-gradient(135deg, #050915, #081a31);
    border-top: 0;
}

.public-site .footer h4 {
    color: #fff;
}

.public-site .footer p,
.public-site .footer a,
.public-site .footer-bottom {
    color: rgba(255,255,255,.66);
}

.public-site .footer-bottom {
    border-color: rgba(255,255,255,.12);
}

@media (max-width: 991px) {
    .public-site {
        padding-top: 74px;
    }
    .public-site .cb-nav {
        padding: 5px 0;
    }
    .public-site .page-hero.page-hero-premium {
        min-height: auto;
        padding: 58px 0;
    }
    .public-site .section-title,
    .contact-section .section-title {
        font-size: 2.5rem;
    }
}

@media (max-width: 575px) {
    .public-site {
        padding-top: 68px;
    }
    .public-site .page-hero.page-hero-premium {
        min-height: auto;
        padding: 42px 0 48px;
    }
    .public-site .page-hero.page-hero-premium h1 {
        font-size: 2.35rem;
        line-height: 1.06;
    }
    .public-site .hero h1 {
        font-size: 2.55rem;
        line-height: 1.04;
    }
    .public-site .section {
        padding: 56px 0;
    }
    .public-site .section-title,
    .contact-section .section-title {
        font-size: 2rem;
        line-height: 1.12;
    }
    .page-hero-premium .row {
        position: relative;
    }
    .page-hero-premium .col-lg-7 {
        position: relative;
        z-index: 2;
    }
    .page-hero-premium .col-lg-5 {
        position: absolute;
        inset: 0;
        z-index: 0;
        pointer-events: none;
    }
    .page-hero-visual,
    .page-hero-visual > img {
        width: 100%;
        height: 100%;
        min-height: 100%;
    }
    .page-hero-visual {
        border: 0;
        box-shadow: none;
        opacity: .1;
    }
    .hero-float {
        display: none;
    }
    .page-hero-badges {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 5px;
        scrollbar-width: none;
    }
    .page-hero-badges::-webkit-scrollbar {
        display: none;
    }
    .page-hero-badges span {
        flex: 0 0 auto;
    }
}
/* Production legal and error surfaces */
.legal-hero{padding:92px 0 74px;color:#fff;background:radial-gradient(circle at 82% 15%,rgba(39,139,255,.3),transparent 28%),linear-gradient(120deg,var(--navy),#07366e)}.legal-hero h1{max-width:900px;margin:10px 0 5px;font-size:clamp(2.5rem,6vw,5rem);font-weight:950;letter-spacing:-.055em}.legal-hero p{margin:0;color:rgba(255,255,255,.62)}.legal-document{max-width:920px;margin:auto;padding:42px;border:1px solid #dce5f1;border-radius:24px;color:#3c4a60;background:#fff;box-shadow:0 22px 55px rgba(28,58,103,.1);font-size:1rem;line-height:1.9;white-space:normal}
.system-error-page{min-height:100vh;margin:0;display:grid;place-items:center;color:#172238;background:radial-gradient(circle at 80% 10%,#dceeff,transparent 26%),linear-gradient(145deg,#f7faff,#eef4fc);font-family:Inter,Arial,sans-serif}.system-error-shell{width:min(1060px,calc(100% - 32px));padding:26px}.system-error-shell>a img{width:230px;max-height:72px;object-fit:contain}.system-error-shell>section{margin-top:34px;padding:clamp(34px,7vw,78px);overflow:hidden;border:1px solid #dbe5f2;border-radius:28px;background:#fff;box-shadow:0 28px 80px rgba(24,55,101,.14)}.system-error-shell>section>span{display:block;color:#0b63ce;font-size:clamp(4rem,13vw,9rem);font-weight:950;line-height:.85;letter-spacing:-.08em}.system-error-shell>section>i{width:58px;height:58px;margin:30px 0 18px;display:grid;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(135deg,#06152d,#0b63ce);font-size:1.45rem}.system-error-shell h1{max-width:760px;margin:0;font-size:clamp(2rem,5vw,4rem);font-weight:950;letter-spacing:-.045em}.system-error-shell p{max-width:680px;margin:16px 0 28px;color:#667085;line-height:1.7}.system-error-shell section>a{display:inline-flex;align-items:center;gap:9px;padding:13px 18px;border-radius:12px;color:#fff;background:#0b63ce;font-weight:850;text-decoration:none}
@media(max-width:600px){.legal-hero{padding:68px 0 54px}.legal-document{padding:25px}.system-error-shell{padding:10px}.system-error-shell>a img{width:190px}}
/* Refined pricing add-on cards */
.pricing-addon-card{align-items:start;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.pricing-addon-card:hover{transform:translateY(-4px);border-color:#a9caef;box-shadow:0 24px 55px rgba(28,72,132,.13)}
.pricing-addon-card>div{min-width:0}
.pricing-addon-meta{width:fit-content;margin-top:15px;padding-top:12px;display:flex;align-items:center;gap:7px;border-top:1px solid #e5edf6;color:#53647a;font-size:.7rem;font-weight:850}
.pricing-addon-meta i{color:#0b63ce}

/* Public content libraries become a true single-column mobile flow. */
@media(max-width:767px){
  .public-site .page-hero.page-hero-premium,.blog-page-hero,.case-study-page-hero{min-height:0!important;height:auto!important;margin-top:0!important;padding-top:44px!important;padding-bottom:44px!important}
  .public-site .page-hero.page-hero-premium h1,.blog-page-hero h1,.case-study-page-hero h1{max-width:none;font-size:clamp(2.25rem,11vw,3.4rem);line-height:.98}
  .blog-library-head,.proof-library-head{align-items:flex-start;gap:18px}
  .blog-filter-console,.proof-filter-console,.blog-grid,.proof-grid{grid-template-columns:1fr!important}
  .blog-grid,.proof-grid{gap:22px}
  .blog-card,.proof-card,.blog-grid>*,.proof-grid>*{width:100%;max-width:none;min-width:0}
  .blog-topic-row,.proof-topic-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}
  .blog-topic-row::-webkit-scrollbar,.proof-topic-row::-webkit-scrollbar{display:none}
  .blog-topic-row>*,.proof-topic-row>*{flex:0 0 auto}
}

/* Premium uploads and dynamic testimonial rail */
.premium-file-input{min-height:52px;padding:6px!important;color:#65748a!important;border:1px dashed #9fc3eb!important;border-radius:14px!important;background:linear-gradient(135deg,#f8fbff,#eef6ff)!important;cursor:pointer}.premium-file-input::file-selector-button{height:38px;margin:-1px 12px -1px -1px;padding:0 15px;border:0;border-radius:10px;color:#fff;background:linear-gradient(135deg,var(--blue,#0b63ce),#2aa0ff);font-weight:800;cursor:pointer;box-shadow:0 8px 18px rgba(11,99,206,.18)}.premium-file-input:hover{border-color:var(--blue,#0b63ce)!important}.premium-file-input.has-file{color:#087746!important;border-color:#78c89e!important;background:#effbf4!important}
.home-testimonial-carousel{position:relative}.home-testimonial-carousel .home-testimonial-grid{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain}.home-testimonial-carousel .home-testimonial-grid::-webkit-scrollbar{display:none}.home-testimonial-carousel .home-testimonial-card{flex:0 0 min(680px,82%);scroll-snap-align:start}.testimonial-carousel-controls{margin-top:22px;display:flex;align-items:center;justify-content:center;gap:13px}.testimonial-carousel-controls button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #bed7f5;border-radius:13px;color:var(--blue);background:#fff;box-shadow:0 10px 25px rgba(31,73,132,.09)}.testimonial-carousel-controls span{min-width:64px;text-align:center;color:#748198;font-size:.72rem;font-weight:800}.testimonial-carousel-controls b{color:var(--ink);font-size:1rem}
@media(max-width:767px){.home-testimonial-carousel .home-testimonial-card{flex-basis:100%}}
@view-transition{navigation:auto}::view-transition-old(root){animation:fade-out .14s ease both}::view-transition-new(root){animation:fade-in .2s ease both}@keyframes fade-out{to{opacity:.72}}@keyframes fade-in{from{opacity:.72}}
