/* ==========================================================================
   Anmol Digital — Core Pages Compact Final V1
   Homepage + About + Services
   No new sections. Compact, premium and responsive layout overrides.
   ========================================================================== */

.batch-core-compact-v1 {
    background: #f3f3ef;
}

.batch-core-compact-v1 .container-fluid {
    width: min(100% - 40px, 1240px);
    margin-inline: auto;
}

.batch-core-compact-v1 .page-banner {
    min-height: clamp(290px, 32vw, 380px);
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.batch-core-compact-v1 .page-banner__inner {
    min-height: clamp(290px, 32vw, 380px);
    padding-block: clamp(48px, 6vw, 74px);
}

.batch-core-compact-v1 .page-banner h1 {
    max-width: 900px;
    font-size: clamp(43px, 6vw, 78px);
    line-height: .95;
    letter-spacing: -.06em;
}

.batch-core-compact-v1 .page-banner__content > p:last-child {
    max-width: 680px;
    margin-top: 15px;
    font-size: clamp(14px, 1.25vw, 17px);
    line-height: 1.65;
}

.batch-core-compact-v1 .page-banner__visual {
    transform: scale(.86);
    transform-origin: center right;
}

.batch-core-compact-v1 .breadcrumb-bar {
    position: relative;
    z-index: 4;
}

.batch-core-compact-v1 .breadcrumb-list {
    min-height: 50px;
}

/* --------------------------------------------------------------------------
   Shared compact section headings
   -------------------------------------------------------------------------- */

.batch-core-compact-v1 .section-heading {
    position: relative;
    isolation: isolate;
}

.batch-core-compact-v1 .section-heading::before,
.batch-core-compact-v1 .section-heading::after {
    display: none !important;
}

.batch-core-compact-v1 .section-heading__eyebrow,
.batch-core-compact-v1 .page-cta__eyebrow,
.batch-core-compact-v1 .cta-panel__eyebrow {
    width: fit-content;
    margin: 0 0 14px;
    padding: 8px 12px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 999px;
    background:
        linear-gradient(
            180deg,
            #202020,
            #080808
        ) !important;
    color: #ffffff !important;
    font-size: 9px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .12) inset,
        0 10px 22px rgba(0, 0, 0, .15);
}

.batch-core-compact-v1 .section-heading__eyebrow::before {
    content: "";
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, .10);
}

.batch-core-compact-v1 .section-heading h2 {
    margin: 0;
    font-size: clamp(36px, 4.7vw, 62px);
    font-weight: 900;
    line-height: .97;
    letter-spacing: -.058em;
    text-wrap: balance;
}

.batch-core-compact-v1 .section-heading__description {
    margin: 0;
    color: #666666;
    font-size: clamp(14px, 1.18vw, 16px);
    line-height: 1.7;
}

.batch-core-compact-v1 .section-heading--split {
    max-width: 1120px;
    margin: 0 auto clamp(30px, 4vw, 48px);
    padding: clamp(24px, 3vw, 38px);
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(280px, .72fr);
    align-items: center;
    gap: clamp(24px, 4.5vw, 64px);
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 24px;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(0, 0, 0, .035),
            transparent 28%
        ),
        linear-gradient(
            145deg,
            #ffffff,
            #f7f7f3
        );
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .98) inset,
        0 20px 52px rgba(0, 0, 0, .07);
    text-align: left;
}

.batch-core-compact-v1 .section-heading--split > div:last-child,
.batch-core-compact-v1 .section-heading--split
    > .section-heading__description {
    min-width: 0;
}

.batch-core-compact-v1 .section-heading--split
    .section-heading__description,
.batch-core-compact-v1 .section-heading--split
    > .section-heading__description {
    max-width: 460px;
    padding-left: 22px;
    border-left: 1px solid rgba(0, 0, 0, .13);
    text-align: left;
}

.batch-core-compact-v1 .section-heading--center {
    max-width: 850px;
    margin: 0 auto clamp(30px, 4vw, 48px);
    padding: clamp(23px, 3vw, 36px);
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 24px;
    background:
        radial-gradient(
            circle at 50% 0,
            rgba(0, 0, 0, .032),
            transparent 28%
        ),
        linear-gradient(
            145deg,
            #ffffff,
            #f7f7f3
        );
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .98) inset,
        0 20px 52px rgba(0, 0, 0, .07);
    text-align: center;
}

.batch-core-compact-v1 .section-heading--center
    .section-heading__eyebrow {
    margin-inline: auto;
}

.batch-core-compact-v1 .section-heading--center
    .section-heading__description {
    max-width: 650px;
    margin: 15px auto 0;
}

/* ==========================================================================
   HOMEPAGE
   ========================================================================== */

.batch-core-compact-v1.home-page .site-main {
    overflow: hidden;
}

/* Hero */

.batch-core-compact-v1.home-page .home-hero {
    min-height: clamp(590px, 76vh, 700px) !important;
}

.batch-core-compact-v1.home-page .home-hero__container {
    min-height: clamp(590px, 76vh, 700px) !important;
    padding-top: clamp(94px, 11vh, 126px);
    padding-bottom: clamp(70px, 9vh, 94px);
    grid-template-columns: minmax(0, 1.06fr) minmax(260px, .54fr);
    gap: clamp(28px, 5vw, 72px);
}

.batch-core-compact-v1.home-page .home-hero__content {
    max-width: 760px;
    padding: 0 !important;
}

.batch-core-compact-v1.home-page .home-hero__content::before,
.batch-core-compact-v1.home-page .home-hero__content::after {
    display: none !important;
}

.batch-core-compact-v1.home-page .home-hero__badge {
    margin-bottom: 17px;
    padding: 8px 12px;
    font-size: 9px;
    letter-spacing: .14em;
}

.batch-core-compact-v1.home-page .home-hero__title {
    max-width: 900px;
    margin: 0;
    font-size: clamp(47px, 6.3vw, 82px);
    line-height: .94;
    letter-spacing: -.065em;
    text-wrap: balance;
}

.batch-core-compact-v1.home-page .home-hero__description {
    max-width: 650px;
    margin-top: 20px;
    font-size: clamp(15px, 1.3vw, 18px);
    line-height: 1.68;
}

.batch-core-compact-v1.home-page .home-hero__actions {
    margin-top: 25px;
    gap: 10px;
}

.batch-core-compact-v1.home-page .home-hero__actions .button {
    min-height: 47px;
    padding-inline: 18px;
}

.batch-core-compact-v1.home-page .home-hero__visual {
    max-width: 340px;
    margin-left: auto;
    transform: scale(.86);
}

.batch-core-compact-v1.home-page .home-hero__scroll {
    bottom: 18px;
    font-size: 9px;
}

/* Shared homepage section rhythm */

.batch-core-compact-v1.home-page .home-section {
    padding-block: clamp(58px, 7vw, 92px) !important;
}

.batch-core-compact-v1.home-page
    .home-section:not(.cta-section)::after {
    opacity: .5;
}

/* Partner strip */

.batch-core-compact-v1.home-page .partners-section {
    padding-bottom: clamp(48px, 5vw, 68px) !important;
}

.batch-core-compact-v1.home-page .partner-marquee {
    margin-top: 6px;
}

.batch-core-compact-v1.home-page .partner-marquee__group {
    gap: 12px;
}

.batch-core-compact-v1.home-page .partner-item {
    min-width: 154px;
    height: 78px;
    padding: 13px 18px;
    border-radius: 14px;
}

.batch-core-compact-v1.home-page .partner-item img {
    max-width: 120px;
    max-height: 43px;
    filter: none !important;
    opacity: 1 !important;
}

/* About preview */

.batch-core-compact-v1.home-page .about-section__grid {
    max-width: 1180px;
    margin-inline: auto;
    grid-template-columns: minmax(330px, .82fr) minmax(0, 1.18fr);
    align-items: center;
    gap: clamp(28px, 5vw, 68px);
}

.batch-core-compact-v1.home-page .about-section__visual {
    max-width: 500px;
}

.batch-core-compact-v1.home-page .about-section__image-wrap,
.batch-core-compact-v1.home-page .about-section__placeholder {
    min-height: 0 !important;
    aspect-ratio: 4 / 4.35;
    border-radius: 22px;
}

.batch-core-compact-v1.home-page .about-section__image-wrap img {
    height: 100%;
    object-fit: cover;
}

.batch-core-compact-v1.home-page .about-section__stat {
    right: -14px;
    bottom: 22px;
    min-width: 118px;
    padding: 15px;
    border-radius: 16px;
}

.batch-core-compact-v1.home-page .about-section__stat strong {
    font-size: 28px;
}

.batch-core-compact-v1.home-page
    .about-section__content > .section-heading {
    margin: 0 0 20px;
    padding: clamp(22px, 2.6vw, 31px);
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 21px;
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f7f7f3
        );
    box-shadow:
        0 16px 40px rgba(0, 0, 0, .06);
}

.batch-core-compact-v1.home-page
    .about-section__content .section-heading h2 {
    font-size: clamp(36px, 4.5vw, 58px);
}

.batch-core-compact-v1.home-page
    .about-section__content
    .section-heading__description {
    margin-top: 14px;
}

.batch-core-compact-v1.home-page .about-highlights {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.batch-core-compact-v1.home-page .about-highlight {
    min-height: 116px;
    padding: 15px;
    gap: 11px;
    border-radius: 15px;
}

.batch-core-compact-v1.home-page .about-highlight__icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
}

.batch-core-compact-v1.home-page .about-highlight h3 {
    font-size: 14px;
}

.batch-core-compact-v1.home-page .about-highlight p {
    margin-top: 5px;
    font-size: 11.5px;
    line-height: 1.5;
}

.batch-core-compact-v1.home-page
    .about-section__content > .button {
    margin-top: 20px;
}

/* Services preview */

.batch-core-compact-v1.home-page .services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.batch-core-compact-v1.home-page .service-card {
    min-height: 260px;
    padding: 21px;
    gap: 17px;
    border-radius: 18px;
}

.batch-core-compact-v1.home-page .service-card__number {
    font-size: 9px;
}

.batch-core-compact-v1.home-page
    .service-card > [class*="icon"] {
    width: 47px;
    height: 47px;
    border-radius: 13px;
}

.batch-core-compact-v1.home-page .service-card__content h3 {
    font-size: clamp(21px, 2vw, 28px);
    line-height: 1.05;
}

.batch-core-compact-v1.home-page .service-card__content p {
    margin-top: 10px;
    font-size: 12.5px;
    line-height: 1.6;
}

.batch-core-compact-v1.home-page .service-card__link {
    padding-top: 14px;
    font-size: 10.5px;
}

/* Testimonials: supports both continuous runner and original grid */

.batch-core-compact-v1.home-page .testimonials-section {
    padding-block: clamp(62px, 7vw, 92px) !important;
}

.batch-core-compact-v1.home-page
    .testimonials-section .section-heading--center {
    border-color: rgba(255, 255, 255, .12);
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .07),
            rgba(255, 255, 255, .025)
        );
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .04) inset,
        0 20px 52px rgba(0, 0, 0, .20);
}

.batch-core-compact-v1.home-page
    .testimonials-section .section-heading h2 {
    color: #ffffff;
}

.batch-core-compact-v1.home-page
    .testimonials-section .section-heading__description {
    color: rgba(255, 255, 255, .64);
}

.batch-core-compact-v1.home-page .testimonials-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.batch-core-compact-v1.home-page .testimonial-card {
    min-height: 285px !important;
    padding: 21px !important;
    border-radius: 18px !important;
}

.batch-core-compact-v1.home-page
    .testimonial-flow__card {
    flex-basis: clamp(310px, 29vw, 390px) !important;
    min-height: 285px !important;
}

.batch-core-compact-v1.home-page
    .testimonial-card blockquote p {
    font-size: 14px !important;
    line-height: 1.68 !important;
}

.batch-core-compact-v1.home-page
    .testimonial-card__client {
    padding-top: 15px;
}

.batch-core-compact-v1.home-page
    .testimonial-card__client img,
.batch-core-compact-v1.home-page
    .testimonial-card__avatar {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
}

/* Team preview */

.batch-core-compact-v1.home-page .team-grid {
    max-width: 1120px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: repeat(
        3,
        minmax(0, 1fr)
    );
    gap: 12px;
}

.batch-core-compact-v1.home-page .team-card {
    max-width: 350px;
    width: 100%;
    margin-inline: auto;
    border-radius: 18px;
}

.batch-core-compact-v1.home-page .team-card__media {
    min-height: 0 !important;
    aspect-ratio: 4 / 4.15;
}

.batch-core-compact-v1.home-page .team-card__media img {
    filter: none !important;
    opacity: 1 !important;
    object-position: center top;
}

.batch-core-compact-v1.home-page .team-card__content {
    padding: 17px;
}

.batch-core-compact-v1.home-page .team-card__content h3 {
    font-size: 23px;
}

.batch-core-compact-v1.home-page .team-card__designation {
    margin-top: 6px;
    font-size: 9px;
}

.batch-core-compact-v1.home-page .team-card__bio {
    margin-top: 10px;
    font-size: 11.5px;
    line-height: 1.55;
}

.batch-core-compact-v1.home-page .team-section__action {
    margin-top: 24px;
}

/* CTA */

.batch-core-compact-v1.home-page .cta-section {
    padding-block: clamp(44px, 5vw, 68px) !important;
}

.batch-core-compact-v1.home-page .cta-panel {
    min-height: 0;
    padding: clamp(30px, 4vw, 48px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 30px;
    border-radius: 24px;
}

.batch-core-compact-v1.home-page .cta-panel__content {
    max-width: 760px;
}

.batch-core-compact-v1.home-page .cta-panel h2 {
    font-size: clamp(34px, 4.3vw, 58px);
    line-height: .98;
}

.batch-core-compact-v1.home-page .cta-panel__content > p:last-child {
    max-width: 650px;
    margin-top: 13px;
    font-size: 14px;
    line-height: 1.65;
}

.batch-core-compact-v1.home-page .cta-panel__actions {
    gap: 9px;
}

/* Contact preview */

.batch-core-compact-v1.home-page .contact-preview {
    max-width: 1160px;
    margin-inline: auto;
    padding: clamp(25px, 3.4vw, 40px);
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(340px, 1.15fr);
    gap: clamp(26px, 4vw, 54px);
    border-radius: 23px;
}

.batch-core-compact-v1.home-page
    .contact-preview__content .section-heading {
    margin: 0 0 20px;
    padding: 0;
    border: 0;
    background: none;
    box-shadow: none;
}

.batch-core-compact-v1.home-page
    .contact-preview__content .section-heading h2 {
    font-size: clamp(34px, 4vw, 52px);
}

.batch-core-compact-v1.home-page
    .contact-preview__content
    .section-heading__description {
    margin-top: 13px;
}

.batch-core-compact-v1.home-page .contact-preview__details {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

.batch-core-compact-v1.home-page .contact-preview__item {
    min-height: 82px;
    padding: 13px;
    gap: 11px;
    border-radius: 14px;
}

.batch-core-compact-v1.home-page .contact-preview__icon {
    width: 39px;
    height: 39px;
    border-radius: 11px;
}

.batch-core-compact-v1.home-page .contact-preview__item h3 {
    font-size: 9px;
}

.batch-core-compact-v1.home-page
    .contact-preview__item a,
.batch-core-compact-v1.home-page
    .contact-preview__item p {
    font-size: 11.5px;
}

/* ==========================================================================
   ABOUT PAGE
   ========================================================================== */

.batch-core-compact-v1.about-page .about-page__main {
    padding: clamp(48px, 5.5vw, 82px) 0;
    background:
        radial-gradient(
            circle at 92% 0,
            rgba(0, 0, 0, .035),
            transparent 24%
        ),
        linear-gradient(
            180deg,
            #ffffff,
            #f2f2ee
        );
}

.batch-core-compact-v1.about-page .about-page__grid {
    max-width: 1160px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(340px, .82fr) minmax(0, 1.18fr);
    align-items: center;
    gap: clamp(28px, 5vw, 68px);
}

.batch-core-compact-v1.about-page .about-page__media {
    max-width: 500px;
}

.batch-core-compact-v1.about-page .about-page__image,
.batch-core-compact-v1.about-page .about-page__placeholder {
    min-height: 0 !important;
    aspect-ratio: 4 / 4.35;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .09);
    border-radius: 22px;
    background: #111111;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .08) inset,
        0 24px 60px rgba(0, 0, 0, .16);
}

.batch-core-compact-v1.about-page .about-page__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.batch-core-compact-v1.about-page .about-page__stat {
    right: -14px;
    bottom: 22px;
    min-width: 120px;
    padding: 15px;
    border-radius: 16px;
}

.batch-core-compact-v1.about-page .about-page__stat strong {
    font-size: 29px;
}

.batch-core-compact-v1.about-page .about-page__content {
    padding: clamp(25px, 3.5vw, 42px);
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 24px;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(0, 0, 0, .032),
            transparent 28%
        ),
        linear-gradient(
            145deg,
            #ffffff,
            #f8f8f4
        );
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .98) inset,
        0 20px 52px rgba(0, 0, 0, .07);
}

.batch-core-compact-v1.about-page .about-page__content h2 {
    max-width: 720px;
    margin: 0;
    font-size: clamp(38px, 4.8vw, 64px);
    font-weight: 900;
    line-height: .97;
    letter-spacing: -.06em;
    text-wrap: balance;
}

.batch-core-compact-v1.about-page
    .about-page__content .rich-content,
.batch-core-compact-v1.about-page .about-page__lead {
    max-width: 760px;
    margin-top: 22px;
    color: #555555;
    font-size: clamp(14.5px, 1.15vw, 16px);
    line-height: 1.76;
}

.batch-core-compact-v1.about-page
    .about-page__content .rich-content p {
    margin: 0 0 15px;
}

.batch-core-compact-v1.about-page
    .about-page__content .rich-content > :last-child {
    margin-bottom: 0;
}

.batch-core-compact-v1.about-page .about-page__highlights {
    padding: clamp(62px, 7vw, 94px) 0;
    background:
        radial-gradient(
            circle at 90% 4%,
            rgba(255, 255, 255, .065),
            transparent 24%
        ),
        linear-gradient(
            150deg,
            #080808,
            #171717 55%,
            #090909
        );
}

.batch-core-compact-v1.about-page
    .about-page__highlights .section-heading--split {
    border-color: rgba(255, 255, 255, .12);
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .07),
            rgba(255, 255, 255, .025)
        );
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .04) inset,
        0 20px 52px rgba(0, 0, 0, .20);
}

.batch-core-compact-v1.about-page
    .about-page__highlights .section-heading h2 {
    color: #ffffff;
}

.batch-core-compact-v1.about-page
    .about-page__highlights
    .section-heading__description {
    border-left-color: rgba(255, 255, 255, .15);
    color: rgba(255, 255, 255, .64);
}

.batch-core-compact-v1.about-page
    .about-highlights--page {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.batch-core-compact-v1.about-page
    .about-highlight--page {
    min-height: 190px;
    padding: 21px;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    align-items: start;
    gap: 15px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 18px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .07),
            rgba(255, 255, 255, .025)
        ) !important;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .04) inset,
        0 18px 42px rgba(0, 0, 0, .18);
}

.batch-core-compact-v1.about-page
    .about-highlight--page .about-highlight__icon {
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 13px;
    background: rgba(255, 255, 255, .07);
    color: #ffffff;
}

.batch-core-compact-v1.about-page
    .about-highlight--page .about-highlight__value {
    color: rgba(255, 255, 255, .48);
    font-size: 10px;
}

.batch-core-compact-v1.about-page
    .about-highlight--page h3 {
    margin: 6px 0 0;
    color: #ffffff;
    font-size: 22px;
    line-height: 1.08;
}

.batch-core-compact-v1.about-page
    .about-highlight--page p {
    margin: 10px 0 0;
    color: rgba(255, 255, 255, .58);
    font-size: 12.5px;
    line-height: 1.65;
}

/* ==========================================================================
   SERVICES PAGE
   ========================================================================== */

.batch-core-compact-v1.services-page .services-page__content {
    padding: clamp(48px, 5.5vw, 82px) 0;
    background:
        radial-gradient(
            circle at 92% 0,
            rgba(0, 0, 0, .035),
            transparent 24%
        ),
        linear-gradient(
            180deg,
            #ffffff,
            #f2f2ee
        );
}

.batch-core-compact-v1.services-page
    .services-page__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.batch-core-compact-v1.services-page
    .service-detail-card {
    min-height: 340px;
    padding: clamp(21px, 2.7vw, 30px);
    display: grid;
    grid-template-rows: auto 1fr auto;
    gap: 20px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .10);
    border-radius: 19px;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(0, 0, 0, .035),
            transparent 28%
        ),
        linear-gradient(
            145deg,
            #ffffff,
            #f8f8f4
        ) !important;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .98) inset,
        0 16px 40px rgba(0, 0, 0, .055) !important;
}

.batch-core-compact-v1.services-page
    .service-detail-card__top {
    align-items: flex-start;
}

.batch-core-compact-v1.services-page
    .service-detail-card__number {
    font-size: 9px;
}

.batch-core-compact-v1.services-page
    .service-detail-card__top > [class*="icon"] {
    width: 49px;
    height: 49px;
    border-radius: 13px;
}

.batch-core-compact-v1.services-page
    .service-detail-card__content h3 {
    max-width: 620px;
    font-size: clamp(27px, 2.8vw, 40px);
    line-height: 1;
    letter-spacing: -.052em;
}

.batch-core-compact-v1.services-page
    .service-detail-card__summary {
    margin-top: 14px;
    font-size: 14.5px;
    line-height: 1.65;
}

.batch-core-compact-v1.services-page
    .service-detail-card__description {
    max-height: 150px;
    margin-top: 16px;
    overflow: auto;
    color: #737373;
    font-size: 12.5px;
    line-height: 1.65;
    scrollbar-width: thin;
}

.batch-core-compact-v1.services-page
    .service-detail-card__footer {
    padding-top: 15px;
}

.batch-core-compact-v1.services-page
    .services-page__process {
    padding: clamp(62px, 7vw, 94px) 0;
    background:
        radial-gradient(
            circle at 90% 4%,
            rgba(255, 255, 255, .065),
            transparent 24%
        ),
        linear-gradient(
            150deg,
            #080808,
            #171717 55%,
            #090909
        );
}

.batch-core-compact-v1.services-page
    .services-page__process .section-heading--center {
    border-color: rgba(255, 255, 255, .12);
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .07),
            rgba(255, 255, 255, .025)
        );
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .04) inset,
        0 20px 52px rgba(0, 0, 0, .20);
}

.batch-core-compact-v1.services-page
    .services-page__process .section-heading h2 {
    color: #ffffff;
}

.batch-core-compact-v1.services-page
    .services-page__process
    .section-heading__description {
    color: rgba(255, 255, 255, .64);
}

.batch-core-compact-v1.services-page .process-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.batch-core-compact-v1.services-page .process-card {
    min-height: 225px;
    padding: 21px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 18px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .07),
            rgba(255, 255, 255, .025)
        ) !important;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .04) inset,
        0 18px 42px rgba(0, 0, 0, .18) !important;
}

.batch-core-compact-v1.services-page .process-card span {
    margin-bottom: auto;
    color: rgba(255, 255, 255, .34);
    font-size: 9px;
}

.batch-core-compact-v1.services-page .process-card h3 {
    margin: 35px 0 0;
    color: #ffffff;
    font-size: 22px;
    line-height: 1.06;
}

.batch-core-compact-v1.services-page .process-card p {
    margin: 11px 0 0;
    color: rgba(255, 255, 255, .58);
    font-size: 12.5px;
    line-height: 1.65;
}

/* --------------------------------------------------------------------------
   Shared compact CTA for About and Services
   -------------------------------------------------------------------------- */

.batch-core-compact-v1.about-page .page-cta,
.batch-core-compact-v1.services-page .page-cta {
    padding: 44px 0 62px;
    background: #efefeb;
}

.batch-core-compact-v1.about-page .page-cta__panel,
.batch-core-compact-v1.services-page .page-cta__panel {
    padding: clamp(28px, 3.8vw, 46px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 23px;
    background:
        radial-gradient(
            circle at 88% 10%,
            rgba(255, 255, 255, .09),
            transparent 24%
        ),
        linear-gradient(
            145deg,
            #090909,
            #1d1d1d 58%,
            #080808
        );
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .07) inset,
        0 25px 64px rgba(0, 0, 0, .15);
    text-align: left;
}

.batch-core-compact-v1.about-page .page-cta__panel > div,
.batch-core-compact-v1.services-page .page-cta__panel > div {
    max-width: 760px;
}

.batch-core-compact-v1.about-page .page-cta h2,
.batch-core-compact-v1.services-page .page-cta h2 {
    max-width: 760px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(30px, 3.6vw, 48px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -.052em;
}

/* ==========================================================================
   TABLET
   ========================================================================== */

@media (max-width: 980px) {
    .batch-core-compact-v1 .section-heading--split {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .batch-core-compact-v1 .section-heading--split
        .section-heading__description,
    .batch-core-compact-v1 .section-heading--split
        > .section-heading__description {
        max-width: 700px;
    }

    .batch-core-compact-v1.home-page .home-hero__container {
        grid-template-columns: minmax(0, 1fr) minmax(220px, .38fr);
    }

    .batch-core-compact-v1.home-page .home-hero__visual {
        transform: scale(.72);
    }

    .batch-core-compact-v1.home-page .services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .batch-core-compact-v1.home-page .testimonials-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .batch-core-compact-v1.home-page .contact-preview {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.about-page .about-page__grid {
        grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr);
        gap: 28px;
    }
}

@media (max-width: 820px) {
    .batch-core-compact-v1 .page-banner__visual {
        display: none;
    }

    .batch-core-compact-v1.home-page .home-hero__container {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.home-page .home-hero__visual {
        display: none;
    }

    .batch-core-compact-v1.home-page .about-section__grid,
    .batch-core-compact-v1.about-page .about-page__grid {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.home-page .about-section__visual,
    .batch-core-compact-v1.about-page .about-page__media {
        width: min(100%, 520px);
        max-width: 520px;
        margin-inline: auto;
    }

    .batch-core-compact-v1.home-page .team-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .batch-core-compact-v1.home-page .cta-panel {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.about-page
        .about-highlights--page {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.services-page
        .services-page__grid {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.about-page .page-cta__panel,
    .batch-core-compact-v1.services-page .page-cta__panel {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 620px) {
    .batch-core-compact-v1 .container-fluid {
        width: min(100% - 24px, 1240px);
    }

    .batch-core-compact-v1 .page-banner,
    .batch-core-compact-v1 .page-banner__inner {
        min-height: 245px;
    }

    .batch-core-compact-v1 .page-banner__inner {
        padding-block: 38px;
    }

    .batch-core-compact-v1 .page-banner h1 {
        font-size: clamp(36px, 11vw, 50px);
    }

    .batch-core-compact-v1 .page-banner__content > p:last-child {
        margin-top: 13px;
        font-size: 14px;
    }

    .batch-core-compact-v1 .breadcrumb-list {
        min-height: 46px;
    }

    .batch-core-compact-v1 .section-heading--split,
    .batch-core-compact-v1 .section-heading--center {
        margin-bottom: 24px;
        padding: 20px 17px;
        border-radius: 19px;
    }

    .batch-core-compact-v1 .section-heading h2 {
        font-size: clamp(32px, 9.5vw, 43px);
    }

    .batch-core-compact-v1 .section-heading--split
        .section-heading__description,
    .batch-core-compact-v1 .section-heading--split
        > .section-heading__description {
        padding-left: 14px;
        font-size: 13.5px;
    }

    /* Homepage mobile */

    .batch-core-compact-v1.home-page .home-hero,
    .batch-core-compact-v1.home-page .home-hero__container {
        min-height: 570px !important;
    }

    .batch-core-compact-v1.home-page .home-hero__container {
        padding-top: 104px;
        padding-bottom: 72px;
    }

    .batch-core-compact-v1.home-page .home-hero__title {
        font-size: clamp(41px, 12vw, 58px);
        line-height: .96;
    }

    .batch-core-compact-v1.home-page .home-hero__description {
        margin-top: 17px;
        font-size: 14.5px;
    }

    .batch-core-compact-v1.home-page .home-hero__actions {
        align-items: stretch;
        flex-direction: column;
        width: 100%;
    }

    .batch-core-compact-v1.home-page
        .home-hero__actions .button {
        width: 100%;
        justify-content: center;
    }

    .batch-core-compact-v1.home-page .home-section {
        padding-block: 52px !important;
    }

    .batch-core-compact-v1.home-page .partner-item {
        min-width: 132px;
        height: 68px;
        padding: 10px 14px;
    }

    .batch-core-compact-v1.home-page .partner-item img {
        max-width: 104px;
        max-height: 38px;
    }

    .batch-core-compact-v1.home-page
        .about-section__image-wrap,
    .batch-core-compact-v1.home-page
        .about-section__placeholder,
    .batch-core-compact-v1.about-page
        .about-page__image,
    .batch-core-compact-v1.about-page
        .about-page__placeholder {
        aspect-ratio: 4 / 4.1;
        border-radius: 18px;
    }

    .batch-core-compact-v1.home-page
        .about-section__content > .section-heading {
        padding: 20px 17px;
        border-radius: 18px;
    }

    .batch-core-compact-v1.home-page
        .about-section__content .section-heading h2 {
        font-size: clamp(32px, 9.5vw, 42px);
    }

    .batch-core-compact-v1.home-page .about-highlights {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.home-page .about-highlight {
        min-height: 100px;
    }

    .batch-core-compact-v1.home-page .services-grid,
    .batch-core-compact-v1.home-page .testimonials-grid,
    .batch-core-compact-v1.home-page .team-grid {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.home-page .service-card {
        min-height: 230px;
        padding: 19px 17px;
    }

    .batch-core-compact-v1.home-page .testimonial-card,
    .batch-core-compact-v1.home-page
        .testimonial-flow__card {
        min-height: 260px !important;
    }

    .batch-core-compact-v1.home-page
        .testimonial-flow__card {
        flex-basis: calc(100vw - 42px) !important;
    }

    .batch-core-compact-v1.home-page .team-card {
        max-width: 420px;
    }

    .batch-core-compact-v1.home-page .cta-panel {
        padding: 24px 18px;
        border-radius: 19px;
    }

    .batch-core-compact-v1.home-page .cta-panel h2 {
        font-size: clamp(30px, 9vw, 40px);
    }

    .batch-core-compact-v1.home-page .cta-panel__actions {
        align-items: stretch;
        flex-direction: column;
        width: 100%;
    }

    .batch-core-compact-v1.home-page
        .cta-panel__actions .button {
        width: 100%;
        justify-content: center;
    }

    .batch-core-compact-v1.home-page .contact-preview {
        padding: 21px 17px;
        border-radius: 19px;
    }

    .batch-core-compact-v1.home-page
        .contact-preview__details {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.home-page
        .contact-preview__content .section-heading h2 {
        font-size: clamp(31px, 9vw, 40px);
    }

    /* About mobile */

    .batch-core-compact-v1.about-page .about-page__main {
        padding: 32px 0 56px;
    }

    .batch-core-compact-v1.about-page .about-page__content {
        padding: 21px 17px;
        border-radius: 19px;
    }

    .batch-core-compact-v1.about-page
        .about-page__content h2 {
        font-size: clamp(34px, 10vw, 46px);
    }

    .batch-core-compact-v1.about-page
        .about-page__content .rich-content,
    .batch-core-compact-v1.about-page
        .about-page__lead {
        margin-top: 18px;
        font-size: 14.5px;
        line-height: 1.7;
    }

    .batch-core-compact-v1.about-page
        .about-page__highlights {
        padding: 54px 0;
    }

    .batch-core-compact-v1.about-page
        .about-highlight--page {
        min-height: 160px;
        padding: 18px 16px;
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .batch-core-compact-v1.about-page
        .about-highlight--page .about-highlight__icon {
        width: 42px;
        height: 42px;
    }

    .batch-core-compact-v1.about-page
        .about-highlight--page h3 {
        font-size: 20px;
    }

    /* Services mobile */

    .batch-core-compact-v1.services-page
        .services-page__content {
        padding: 32px 0 56px;
    }

    .batch-core-compact-v1.services-page
        .service-detail-card {
        min-height: 300px;
        padding: 19px 17px;
        border-radius: 18px;
    }

    .batch-core-compact-v1.services-page
        .service-detail-card__content h3 {
        font-size: 28px;
    }

    .batch-core-compact-v1.services-page
        .service-detail-card__description {
        max-height: 130px;
    }

    .batch-core-compact-v1.services-page
        .services-page__process {
        padding: 54px 0;
    }

    .batch-core-compact-v1.services-page
        .process-grid {
        grid-template-columns: 1fr;
    }

    .batch-core-compact-v1.services-page
        .process-card {
        min-height: 190px;
        padding: 18px 16px;
    }

    .batch-core-compact-v1.about-page .page-cta,
    .batch-core-compact-v1.services-page .page-cta {
        padding: 38px 0 50px;
    }

    .batch-core-compact-v1.about-page
        .page-cta__panel,
    .batch-core-compact-v1.services-page
        .page-cta__panel {
        padding: 23px 18px;
        border-radius: 19px;
    }

    .batch-core-compact-v1.about-page .page-cta h2,
    .batch-core-compact-v1.services-page .page-cta h2 {
        font-size: clamp(28px, 8.8vw, 38px);
    }

    .batch-core-compact-v1.about-page
        .page-cta .button,
    .batch-core-compact-v1.services-page
        .page-cta .button {
        width: 100%;
        justify-content: center;
    }
}

/* Very small devices */

@media (max-width: 390px) {
    .batch-core-compact-v1 .container-fluid {
        width: min(100% - 20px, 1240px);
    }

    .batch-core-compact-v1.home-page .home-hero__title {
        font-size: 39px;
    }

    .batch-core-compact-v1.home-page
        .testimonial-flow__card {
        flex-basis: calc(100vw - 32px) !important;
    }
}

/* Accessibility */

@media (prefers-reduced-motion: reduce) {
    .batch-core-compact-v1 .service-card,
    .batch-core-compact-v1 .team-card,
    .batch-core-compact-v1 .service-detail-card,
    .batch-core-compact-v1 .process-card,
    .batch-core-compact-v1 .about-highlight {
        transition: none !important;
        transform: none !important;
    }
}
