/* Shared finishing layer for About and Process. It intentionally changes presentation,
   not page content. */
:root {
    --sn-ink: #111111;
    --sn-paper: #f4f2ee;
    --sn-card: rgba(255, 255, 255, .84);
    --sn-line: rgba(17, 17, 17, .09);
    --sn-ease: cubic-bezier(.22, 1, .36, 1);
}

body { color: var(--sn-ink); }
main { position: relative; }

/* Match the finished home page's actual content geometry: 1500px outer canvas
   with 48px desktop gutters, narrowing only at the same breakpoints. */
body:has([data-editable="about-hero-title"]) main .section-container,
body:has([data-editable="about-hero-title"]) main > .section-container {
    width: 100% !important;
    max-width: 1500px !important;
    padding-right: 48px !important;
    padding-left: 48px !important;
}

/* Same compact site chrome used by the finished home page. */
header[data-kite-global="site-header"] {
    top: 16px !important;
    max-width: 1160px !important;
    padding-inline: 18px !important;
}

header[data-kite-global="site-header"].is-scrolled {
    top: 10px !important;
    max-width: 1080px !important;
}

header[data-kite-global="site-header"] nav {
    min-height: 60px;
    padding-inline: 18px !important;
    box-shadow: 0 12px 32px rgba(31, 28, 20, .08) !important;
}

header[data-kite-global="site-header"] nav > a:first-child img { height: 30px !important; }

header[data-kite-global="site-header"] nav > div.hidden.lg\:flex {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    align-items: center;
}

header[data-kite-global="site-header"] .nav-link {
    display: inline-flex;
    min-height: 40px;
    padding: 0 13px;
    align-items: center;
    border-radius: 14px;
    color: rgba(17, 17, 17, .7);
    font-size: 14px;
    font-weight: 620;
    line-height: 1;
    transition: color 180ms ease, background 180ms ease, transform 220ms var(--sn-ease);
}

header[data-kite-global="site-header"] .nav-link:hover,
header[data-kite-global="site-header"] .nav-item:focus-within > .nav-link {
    color: var(--sn-ink);
    background: rgba(17, 17, 17, .045);
}

header[data-kite-global="site-header"] .nav-item { padding-block: 8px !important; }
header[data-kite-global="site-header"] .nav-item::after {
    content: '';
    position: absolute;
    inset: auto 0 -22px;
    height: 24px;
}
header[data-kite-global="site-header"] .mega-menu {
    top: calc(100% + 17px) !important;
    border: 1px solid rgba(17, 17, 17, .07);
    border-radius: 22px;
    box-shadow: 0 22px 56px rgba(25, 22, 15, .14);
}
header[data-kite-global="site-header"] .nav-item:hover .mega-menu,
header[data-kite-global="site-header"] .nav-item:focus-within .mega-menu { opacity: 1; pointer-events: auto; transform: translateY(0); }

.btn-premium-base {
    min-height: 44px !important;
    padding: 8px 9px 8px 17px !important;
    gap: 10px !important;
    line-height: 1 !important;
}
.btn-premium-base .icon-box { width: 28px !important; height: 28px !important; flex: 0 0 28px; }

/* About: close the requested hero gap and make the first screen feel intentional. */
body:has([data-editable="about-hero-title"]) main { margin-top: 0 !important; }
body:has([data-editable="about-hero-title"]) main > section:first-child {
    padding-top: 130px !important;
    padding-bottom: 58px !important;
}
body:has([data-editable="about-hero-title"]) [data-editable="about-hero-title"] {
    max-width: 960px;
    margin-inline: auto;
    font-size: clamp(48px, 5.7vw, 78px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.052em !important;
}
body:has([data-editable="about-hero-title"]) .premium-subtitle { max-width: 660px; font-size: 19px; }
body:has([data-editable="about-hero-title"]) [data-editable="about-hero-desc"] { font-size: 16px !important; line-height: 1.65 !important; }

/* Process: quieter rhythm and consistent cards without rewriting information. */
body:has([data-editable="process-hero-title"]) main > section:first-child { padding-top: 146px !important; padding-bottom: 70px !important; }
body:has([data-editable="process-hero-title"]) .process-section-wrapper,
body:has([data-editable="process-hero-title"]) .bg-white\/90.backdrop-blur-md.rounded-3xl {
    border-color: var(--sn-line) !important;
    box-shadow: 0 15px 36px rgba(38, 33, 23, .06) !important;
}
body:has([data-editable="process-hero-title"]) .bg-white\/90.backdrop-blur-md.rounded-3xl {
    transition: transform 260ms var(--sn-ease), box-shadow 260ms ease, border-color 260ms ease !important;
}
body:has([data-editable="process-hero-title"]) .bg-white\/90.backdrop-blur-md.rounded-3xl:hover {
    transform: translateY(-5px) !important;
    border-color: rgba(17, 17, 17, .15) !important;
    box-shadow: 0 24px 50px rgba(38, 33, 23, .11) !important;
}
body:has([data-editable="process-hero-title"]) .bg-white.rounded-2xl {
    border-color: var(--sn-line) !important;
    box-shadow: 0 11px 28px rgba(38, 33, 23, .045) !important;
    transition: transform 240ms var(--sn-ease), box-shadow 240ms ease !important;
}
body:has([data-editable="process-hero-title"]) .bg-white.rounded-2xl:hover { transform: translateY(-4px); box-shadow: 0 18px 34px rgba(38, 33, 23, .09) !important; }

/* Footer is aligned to the home-page footer geometry. */
footer[data-kite-global="site-footer"],
body:has([data-editable="process-hero-title"]) footer {
    padding-top: 80px !important;
    padding-bottom: 48px !important;
    border-top-color: var(--sn-line) !important;
    background: linear-gradient(180deg, #f4f2ee 0%, #ebe7e0 100%) !important;
}
footer[data-kite-global="site-footer"] > div,
body:has([data-editable="process-hero-title"]) footer > div { max-width: 1300px !important; }
footer[data-kite-global="site-footer"] .footer-heading,
body:has([data-editable="process-hero-title"]) footer .footer-heading { font-size: 13px; font-weight: 700; letter-spacing: .015em; color: var(--sn-ink); }

/* Full-screen shared mobile route map. The page script supplies the exact same routes. */
@media (max-width: 1023px) {
    header[data-kite-global="site-header"] { top: 12px !important; max-width: none !important; padding-inline: 14px !important; }
    header[data-kite-global="site-header"] nav { min-height: 58px; padding-inline: 16px !important; }
    header[data-kite-global="site-header"] nav > a:first-child img { height: 27px !important; }
    #mobile-menu-content.mobile-drawer {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        min-height: 100dvh !important;
        border: 0 !important;
        background:
            radial-gradient(circle at 94% 13%, rgba(132, 230, 246, .36), transparent 28%),
            radial-gradient(circle at 5% 84%, rgba(254, 205, 26, .2), transparent 26%),
            #f7f5f0 !important;
        overflow-y: auto !important;
    }
    .mobile-drawer-inner { min-height: 100dvh; max-width: 680px; margin: 0 auto; padding: 28px 20px 22px; }
    .mobile-drawer-nav { display: flex; flex-direction: column; gap: 20px; margin-top: 28px; }
    .mobile-drawer-primary { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
    .mobile-drawer-primary-link { display: flex; min-height: 54px; align-items: center; justify-content: center; border: 1px solid rgba(17,17,17,.07); border-radius: 17px; background: rgba(255,255,255,.7); color: var(--sn-ink); font-size: 16px; font-weight: 670; transition: transform 240ms var(--sn-ease), background 200ms ease; }
    .mobile-drawer-primary-link:active { transform: scale(.97); background: white; }
    .mobile-drawer-group { padding: 17px; border: 1px solid rgba(17,17,17,.08); border-radius: 24px; background: rgba(255,255,255,.58); box-shadow: inset 0 1px 0 rgba(255,255,255,.8); }
    .mobile-drawer-label { margin: 0 0 14px; color: rgba(17,17,17,.45); font-size: 10px; font-weight: 760; letter-spacing: .12em; line-height: 1; text-transform: uppercase; }
    .mobile-drawer-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
    .mobile-drawer-service { display: flex; min-height: 86px; padding: 9px 4px; align-items: center; flex-direction: column; justify-content: center; gap: 8px; border-radius: 15px; color: var(--sn-ink); font-size: 11px; font-weight: 620; line-height: 1.15; text-align: center; }
    .mobile-drawer-service::before { content: ''; width: 30px; height: 30px; border-radius: 10px; background: rgba(254,205,26,.18); box-shadow: inset 0 0 0 1px rgba(254,205,26,.22); }
    .mobile-drawer-service:nth-child(2)::before { background: rgba(132,230,246,.22); box-shadow: inset 0 0 0 1px rgba(132,230,246,.28); }
    .mobile-drawer-service:nth-child(3)::before { background: rgba(247,164,158,.2); box-shadow: inset 0 0 0 1px rgba(247,164,158,.27); }
    .mobile-drawer-service:nth-child(4)::before { background: rgba(16,185,129,.13); box-shadow: inset 0 0 0 1px rgba(16,185,129,.2); }
    .mobile-drawer-service:nth-child(5)::before { background: rgba(168,85,247,.13); box-shadow: inset 0 0 0 1px rgba(168,85,247,.18); }
    .mobile-drawer-service:nth-child(6)::before { background: rgba(249,115,22,.13); box-shadow: inset 0 0 0 1px rgba(249,115,22,.18); }
    .mobile-drawer-company-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .mobile-drawer-company-links a { display: flex; min-height: 44px; padding: 0 13px; align-items: center; border: 1px solid rgba(17,17,17,.07); border-radius: 13px; background: rgba(255,255,255,.66); color: var(--sn-ink); font-size: 13px; font-weight: 620; }
    #mobile-menu-content .mobile-drawer-footer { margin-top: auto; padding-top: 18px; border-top: 1px solid rgba(17,17,17,.08); }
    #mobile-menu-content .mobile-drawer-footer .btn-premium-base { width: 100%; min-height: 52px !important; justify-content: center; }
    body:has([data-editable="about-hero-title"]) main > section:first-child { padding-top: 108px !important; padding-bottom: 48px !important; }
    body:has([data-editable="process-hero-title"]) main > section:first-child { padding-top: 116px !important; padding-bottom: 48px !important; }
}

@media (max-width: 420px) {
    .mobile-drawer-inner { padding-inline: 18px; }
    .mobile-drawer-group { padding: 15px; border-radius: 21px; }
    .mobile-drawer-service { min-height: 80px; font-size: 10px; }
    footer[data-kite-global="site-footer"] > div,
    body:has([data-editable="process-hero-title"]) footer > div { padding-inline: 20px !important; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* ========================================================================== */
/* Process — same canvas, rhythm and tactile card system as the finished Home */
/* ========================================================================== */
body:has([data-editable="process-hero-title"]) main > section > div.max-w-\[1300px\] {
    width: 100% !important;
    max-width: 1500px !important;
    padding-right: 48px !important;
    padding-left: 48px !important;
}

body:has([data-editable="process-hero-title"]) main > section:first-child {
    isolation: isolate;
    padding-top: 146px !important;
    padding-bottom: 82px !important;
}
body:has([data-editable="process-hero-title"]) main > section:first-child::before {
    position: absolute;
    z-index: -1;
    top: 30px;
    left: 50%;
    width: min(920px, 80vw);
    height: 440px;
    border-radius: 999px;
    background: radial-gradient(ellipse at center, rgba(254,247,175,.6), rgba(132,230,246,.16) 49%, transparent 72%);
    content: '';
    transform: translateX(-50%);
}
body:has([data-editable="process-hero-title"]) main > section:first-child > div { max-width: 1120px !important; }
body:has([data-editable="process-hero-title"]) main > section:first-child .inline-flex {
    min-height: 31px;
    padding-inline: 13px !important;
    border-color: rgba(17,17,17,.09) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.62) !important;
    box-shadow: 0 9px 25px rgba(48,41,25,.05);
}
body:has([data-editable="process-hero-title"]) [data-editable="process-hero-title"] {
    max-width: 900px;
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: clamp(54px, 6.15vw, 86px) !important;
    font-weight: 430 !important;
    line-height: .97 !important;
    letter-spacing: -.065em !important;
    text-wrap: balance;
}
body:has([data-editable="process-hero-title"]) [data-editable="process-hero-title"] b {
    font-weight: 650;
    text-decoration: underline;
    text-decoration-color: var(--home-yellow, #fef7af);
    text-decoration-thickness: .16em;
    text-underline-offset: -.04em;
}
body:has([data-editable="process-hero-title"]) [data-editable="process-hero-desc"] { max-width: 740px !important; color: rgba(17,17,17,.61) !important; font-size: 18px !important; line-height: 1.58 !important; }
body:has([data-editable="process-hero-title"]) main > section:first-child .max-w-2xl { color: rgba(17,17,17,.52) !important; font-size: 15px !important; line-height: 1.58 !important; }
body:has([data-editable="process-hero-title"]) main > section:first-child .grid.grid-cols-2 { gap: 10px !important; padding: 10px !important; border: 1px solid rgba(17,17,17,.08); border-radius: 28px; background: rgba(255,255,255,.43); box-shadow: 0 19px 50px rgba(48,41,25,.06); }
body:has([data-editable="process-hero-title"]) main > section:first-child .grid.grid-cols-2 > div { min-height: 130px; padding: 23px !important; border: 1px solid rgba(17,17,17,.07) !important; border-radius: 19px !important; background: rgba(255,255,255,.78) !important; box-shadow: none !important; transition: transform 280ms var(--sn-ease), background 240ms ease, box-shadow 280ms ease; }
body:has([data-editable="process-hero-title"]) main > section:first-child .grid.grid-cols-2 > div:hover { background: #fff !important; box-shadow: 0 16px 33px rgba(48,41,25,.09) !important; transform: translateY(-4px); }
body:has([data-editable="process-hero-title"]) main > section:first-child .grid.grid-cols-2 > div > div:first-child { font-size: 35px !important; font-weight: 600 !important; letter-spacing: -.065em !important; }

body:has([data-editable="process-hero-title"]) main > section:nth-child(2) { padding-bottom: 104px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > div:first-child { margin-bottom: 48px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(2) h2,
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) h2,
body:has([data-editable="process-hero-title"]) main > section:nth-child(4) h2 { font-size: clamp(38px, 4vw, 58px) !important; font-weight: 430 !important; line-height: 1.01 !important; letter-spacing: -.055em !important; text-wrap: balance; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > .grid { gap: 11px !important; padding: 11px !important; border: 1px solid rgba(17,17,17,.08); border-radius: 34px; background: rgba(255,255,255,.42); box-shadow: 0 20px 56px rgba(48,41,25,.065); }
body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > .grid > div { min-height: 300px; padding: 31px !important; border-color: rgba(17,17,17,.075) !important; border-radius: 23px !important; background: rgba(255,255,255,.8) !important; box-shadow: none !important; transition: transform 320ms var(--sn-ease), box-shadow 320ms ease, border-color 240ms ease !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > .grid > div:hover { z-index: 2; border-color: rgba(17,17,17,.15) !important; box-shadow: 0 20px 42px rgba(48,41,25,.11) !important; transform: translateY(-6px) !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > .grid > div > div:first-child > span { font-size: 46px !important; font-weight: 620 !important; letter-spacing: -.075em !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > .grid h3 { font-size: 25px !important; font-weight: 590 !important; letter-spacing: -.045em !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > .grid p { color: rgba(17,17,17,.59) !important; font-size: 14px !important; line-height: 1.6 !important; }

body:has([data-editable="process-hero-title"]) main > section:nth-child(3) { padding-block: 104px !important; border: 0 !important; background: transparent !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div { padding: 12px !important; border: 1px solid rgba(17,17,17,.08); border-radius: 36px; background: rgba(255,255,255,.44); box-shadow: 0 21px 58px rgba(48,41,25,.065); }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .grid > div:first-child { padding: 38px !important; border-radius: 27px !important; background: #151515 !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .grid > div:first-child h2 { color: #fff !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .grid > div:first-child p { color: rgba(255,255,255,.64) !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .grid > div:last-child { gap: 10px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .grid > div:last-child > div { padding: 28px !important; border-color: rgba(17,17,17,.075) !important; border-radius: 22px !important; background: rgba(255,255,255,.8) !important; transition: transform 290ms var(--sn-ease), box-shadow 290ms ease !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .grid > div:last-child > div:hover { box-shadow: 0 18px 36px rgba(48,41,25,.09) !important; transform: translateY(-4px); }

body:has([data-editable="process-hero-title"]) main > section:nth-child(4) { padding-block: 104px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(4) > div > .max-w-3xl { max-width: 780px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(4) > div > .bg-white\/90 { max-width: 100% !important; padding: 34px !important; border-color: rgba(17,17,17,.08) !important; border-radius: 30px !important; box-shadow: 0 17px 43px rgba(48,41,25,.07) !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(4) > div > .bg-white\/90 > .grid { gap: 13px 34px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(4) > div > .bg-white\/90 > .grid > div { padding: 8px 0; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(4) > div > .bg-white\/90 > .grid span { color: rgba(17,17,17,.7) !important; font-size: 15px !important; font-weight: 540 !important; }

@media (max-width: 1179px) {
    body:has([data-editable="process-hero-title"]) main > section > div.max-w-\[1300px\] { padding-right: 28px !important; padding-left: 28px !important; }
}
@media (max-width: 767px) {
    body:has([data-editable="process-hero-title"]) main > section > div.max-w-\[1300px\] { padding-right: 18px !important; padding-left: 18px !important; }
    body:has([data-editable="process-hero-title"]) main > section:first-child { padding-top: 108px !important; padding-bottom: 60px !important; }
    body:has([data-editable="process-hero-title"]) [data-editable="process-hero-title"] { font-size: clamp(45px, 13vw, 62px) !important; }
    body:has([data-editable="process-hero-title"]) [data-editable="process-hero-desc"] { font-size: 16px !important; }
    body:has([data-editable="process-hero-title"]) main > section:first-child .grid.grid-cols-2 { grid-template-columns: 1fr 1fr !important; gap: 7px !important; padding: 7px !important; border-radius: 23px; }
    body:has([data-editable="process-hero-title"]) main > section:first-child .grid.grid-cols-2 > div { min-height: 105px; padding: 16px 10px !important; border-radius: 16px !important; }
    body:has([data-editable="process-hero-title"]) main > section:first-child .grid.grid-cols-2 > div > div:first-child { font-size: 28px !important; }
    body:has([data-editable="process-hero-title"]) main > section:first-child .grid.grid-cols-2 > div > div:last-child { font-size: 10px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(2) { padding-bottom: 62px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > div:first-child { margin-bottom: 30px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(2) h2,
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) h2,
    body:has([data-editable="process-hero-title"]) main > section:nth-child(4) h2 { font-size: 37px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > .grid { gap: 8px !important; padding: 8px !important; border-radius: 26px; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(2) > div > .grid > div { min-height: 0; padding: 25px !important; border-radius: 19px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3),
    body:has([data-editable="process-hero-title"]) main > section:nth-child(4) { padding-block: 62px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div { padding: 8px !important; border-radius: 27px; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .grid > div:first-child { padding: 27px !important; border-radius: 21px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .grid > div:last-child > div { padding: 24px !important; border-radius: 19px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(4) > div > .bg-white\/90 { padding: 24px !important; border-radius: 23px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(4) > div > .bg-white\/90 > .grid { gap: 6px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(4) > div > .bg-white\/90 > .grid span { font-size: 14px !important; }
}

/* Process philosophy: it is two sibling blocks, not the nested grid used by
   the other Process sections. Keep its compact mobile composition explicit. */
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .max-w-3xl {
    max-width: none !important;
    margin: 0 !important;
    padding: 42px !important;
    border-radius: 27px !important;
    background: #151515 !important;
}
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .max-w-3xl > span { background: rgba(255,255,255,.1) !important; color: rgba(255,255,255,.58) !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .max-w-3xl h2 { margin-bottom: 24px !important; color: #fff !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .max-w-3xl .space-y-6 { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 36px !important; color: rgba(255,255,255,.64) !important; font-size: 15px !important; line-height: 1.6 !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .max-w-3xl .space-y-6 p { margin: 0 !important; color: inherit !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .mt-16 {
    margin-top: 10px !important;
    padding: 36px !important;
    border: 1px solid rgba(17,17,17,.075);
    border-radius: 27px;
    background: rgba(255,255,255,.79);
}
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .mt-16 h3 { margin-bottom: 24px !important; font-size: 28px !important; font-weight: 560 !important; letter-spacing: -.045em !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .mt-16 > .grid { gap: 10px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .mt-16 > .grid > div { min-height: 220px; padding: 27px !important; border-color: rgba(17,17,17,.075) !important; border-radius: 21px !important; background: rgba(255,255,255,.82) !important; box-shadow: none !important; }

@media (max-width: 767px) {
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .max-w-3xl { padding: 27px !important; border-radius: 21px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .max-w-3xl h2 { margin-bottom: 19px !important; font-size: 37px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .max-w-3xl .space-y-6 { display: flex !important; gap: 16px !important; flex-direction: column; font-size: 14px !important; line-height: 1.58 !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .mt-16 { margin-top: 8px !important; padding: 25px !important; border-radius: 21px; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .mt-16 h3 { margin-bottom: 20px !important; font-size: 25px !important; line-height: 1.1 !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .mt-16 > .grid { gap: 8px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .mt-16 > .grid > div { min-height: 0; padding: 22px !important; border-radius: 18px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3) > div > .mt-16 > .grid > div > div:first-child { width: 44px !important; height: 44px !important; margin-bottom: 15px !important; border-radius: 14px !important; }
}

/* Process rhythm: each section owns one clear separation, never two stacked gaps. */
body:has([data-editable="process-hero-title"]) main > section:first-child { padding-bottom: 64px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(2) { padding-bottom: 64px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(3) { padding-top: 0 !important; padding-bottom: 64px !important; }
body:has([data-editable="process-hero-title"]) main > section:nth-child(4) { padding-top: 0 !important; padding-bottom: 64px !important; }
@media (max-width: 767px) {
    body:has([data-editable="process-hero-title"]) main > section:first-child { padding-bottom: 48px !important; }
    body:has([data-editable="process-hero-title"]) main > section:nth-child(2),
    body:has([data-editable="process-hero-title"]) main > section:nth-child(3),
    body:has([data-editable="process-hero-title"]) main > section:nth-child(4) { padding-top: 0 !important; padding-bottom: 48px !important; }
}

/* ========================================================================== */
/* About: sections 1–2 — rebuilt to the home-page surface and motion standard */
/* ========================================================================== */
.about-hero {
    isolation: isolate;
    max-width: 1500px !important;
    padding-top: 138px !important;
    padding-bottom: 84px !important;
}

.about-hero::before,
.about-hero::after {
    position: absolute;
    z-index: -1;
    border-radius: 999px;
    content: '';
    filter: blur(8px);
    pointer-events: none;
}

.about-hero::before {
    top: 48px;
    left: 50%;
    width: min(72vw, 920px);
    height: 420px;
    background: radial-gradient(ellipse at center, rgba(254, 247, 175, .52), rgba(132, 230, 246, .15) 49%, transparent 72%);
    transform: translateX(-50%);
}

.about-hero::after {
    top: 322px;
    right: 6%;
    width: 150px;
    height: 150px;
    border: 1px solid rgba(17, 17, 17, .08);
    background: rgba(255, 255, 255, .28);
    box-shadow: inset 0 0 0 10px rgba(255, 255, 255, .17);
}

.about-hero-copy { position: relative; z-index: 1; gap: 20px !important; }

.about-hero-kicker {
    display: inline-flex;
    min-height: 31px;
    padding: 0 12px;
    align-items: center;
    border: 1px solid rgba(17, 17, 17, .1);
    border-radius: 999px;
    background: rgba(255, 255, 255, .64);
    box-shadow: 0 8px 25px rgba(43, 37, 24, .05);
    color: rgba(17, 17, 17, .6);
    font-size: 10px;
    font-weight: 760;
    letter-spacing: .13em;
    line-height: 1;
    text-transform: uppercase;
}

.about-hero [data-editable="about-hero-title"] {
    max-width: 980px !important;
    margin: 0 !important;
    color: var(--sn-ink);
    font-size: clamp(50px, 6.2vw, 86px) !important;
    font-weight: 430 !important;
    line-height: .97 !important;
    letter-spacing: -.065em !important;
    text-wrap: balance;
}

.about-hero [data-editable="about-hero-title"] b {
    display: inline;
    font-weight: 650;
    text-decoration: underline;
    text-decoration-color: var(--home-yellow, #fef7af);
    text-decoration-thickness: .17em;
    text-underline-offset: -.04em;
}

.about-hero .premium-subtitle {
    max-width: 650px !important;
    color: rgba(17, 17, 17, .63) !important;
    font-size: 18px !important;
    line-height: 1.55 !important;
}

.about-hero [data-editable="about-hero-desc"] {
    max-width: 610px !important;
    color: rgba(17, 17, 17, .56) !important;
    font-size: 16px !important;
    line-height: 1.62 !important;
}

.about-hero-trust {
    padding: 9px 14px 9px 11px;
    border: 1px solid rgba(17, 17, 17, .08);
    border-radius: 20px;
    background: rgba(255, 255, 255, .67);
    box-shadow: 0 13px 34px rgba(44, 38, 25, .06);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.about-hero-trust img { border-color: #fff !important; transition: transform 280ms var(--sn-ease); }
.about-hero-trust:hover img { transform: translateY(-3px); }

.about-hero-collage {
    position: relative;
    width: 100% !important;
    max-width: none !important;
    gap: 12px !important;
    margin-top: 46px !important;
    padding: 12px !important;
    border: 1px solid rgba(17, 17, 17, .09);
    border-radius: 34px;
    background: rgba(255, 255, 255, .4);
    box-shadow: 0 28px 70px rgba(50, 42, 25, .1);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.about-hero-collage > div {
    min-height: 330px;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid rgba(17, 17, 17, .08);
    border-radius: 24px !important;
    background: #e9e5dd !important;
}

.about-hero-collage > div:first-child { width: 47% !important; }
.about-hero-collage > div:last-child { width: 53% !important; gap: 12px !important; }
.about-hero-collage > div:first-child > div { height: 100% !important; border-radius: 23px !important; box-shadow: none !important; transform: none !important; }
.about-hero-collage > div:last-child > div { height: calc(50% - 6px); min-height: 0; border-radius: 18px !important; box-shadow: none !important; }
.about-hero-collage img { transition: transform 700ms var(--sn-ease), filter 420ms ease; }
.about-hero-collage > div:hover img { filter: saturate(1.06) contrast(1.02); transform: scale(1.045); }

.about-mission-section { padding-top: 24px !important; padding-bottom: 90px !important; }
.about-mission-container { max-width: 1500px !important; }
.about-mission-shell {
    padding: 12px !important;
    border: 1px solid rgba(17, 17, 17, .09);
    border-radius: 36px !important;
    background: rgba(255,255,255,.45) !important;
    box-shadow: 0 20px 58px rgba(48, 41, 25, .07);
}
.about-mission-grid { gap: 12px !important; }

.about-mission-card {
    min-height: 600px !important;
    padding: 40px !important;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 27px !important;
    box-shadow: 0 22px 54px rgba(15, 18, 20, .2);
}
.about-mission-card > .absolute > img { filter: saturate(.75) contrast(1.1); transform: scale(1.03); transition: transform 850ms var(--sn-ease); }
.about-mission-card:hover > .absolute > img { transform: scale(1.1); }
.about-mission-card > .absolute > div { background: linear-gradient(135deg, rgba(8, 13, 15, .89), rgba(17, 26, 29, .72)) !important; }
.about-mission-card .mission-heading { font-size: clamp(30px, 2.9vw, 42px) !important; letter-spacing: -.045em !important; }
.about-mission-card .mission-heading u { text-decoration: none; }
.about-mission-card [data-editable="mission-text"] { max-width: 490px; font-size: 22px !important; line-height: 1.23 !important; letter-spacing: -.035em !important; }
.about-mission-card [data-editable="mission-values"] { border-color: rgba(255,255,255,.15) !important; }
.about-mission-card [data-editable="mission-values"] > div { min-height: 32px; }
.about-mission-card a { transition: transform 230ms var(--sn-ease), background 220ms ease, color 220ms ease !important; }
.about-mission-card a:hover { transform: translateY(-2px); }

.about-stats-panel { padding: 13px 6px 5px !important; }
.about-stats-heading {
    max-width: 600px;
    margin: 0 0 16px !important;
    padding: 0 13px !important;
    font-size: clamp(34px, 3.7vw, 52px) !important;
    line-height: 1.01 !important;
    letter-spacing: -.055em !important;
    text-wrap: balance;
}
.about-stats-grid { gap: 12px !important; }
.about-stat-card {
    position: relative;
    min-height: 258px;
    padding: 32px !important;
    overflow: hidden;
    border: 1px solid rgba(17,17,17,.08) !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,.82) !important;
    box-shadow: 0 10px 26px rgba(48, 41, 25, .045);
    transform: translateY(0);
    transition: transform 340ms var(--sn-ease), box-shadow 340ms ease, border-color 260ms ease !important;
}
.about-stat-card::after { position: absolute; top: 0; right: 0; width: 50px; height: 4px; border-radius: 0 24px 0 12px; background: var(--home-yellow, #fef7af); content: ''; }
.about-stat-card:nth-child(2)::after { background: var(--home-blue, #84e6f6); }
.about-stat-card:nth-child(3)::after { background: var(--home-coral, #f7a49e); }
.about-stat-card:nth-child(4)::after { background: var(--home-gold, #fecd1a); }
.about-stat-card:hover { z-index: 2; border-color: rgba(17,17,17,.16) !important; box-shadow: 0 22px 45px rgba(48, 41, 25, .11); transform: translateY(-6px); }
.about-stat-card [data-editable$="-val"] { font-size: clamp(48px, 4.3vw, 66px) !important; line-height: .9; letter-spacing: -.065em !important; }
.about-stat-card [data-editable$="-label"] { margin-top: 8px; color: rgba(17,17,17,.48) !important; font-size: 10px !important; line-height: 1.35 !important; letter-spacing: .1em !important; }
.about-stat-card p { margin-top: auto !important; padding-top: 24px; color: rgba(17,17,17,.59) !important; font-size: 14px !important; line-height: 1.55 !important; }

@media (max-width: 1023px) {
    .about-hero { padding-top: 112px !important; padding-bottom: 56px !important; }
    .about-hero::after { display: none; }
    .about-hero-collage { margin-top: 34px !important; }
    .about-mission-card { min-height: 540px !important; }
}

@media (max-width: 767px) {
    .about-hero { padding-inline: 18px !important; }
    .about-hero-copy { gap: 17px !important; }
    .about-hero [data-editable="about-hero-title"] { font-size: clamp(44px, 13vw, 62px) !important; }
    .about-hero .premium-subtitle { font-size: 17px !important; }
    .about-hero-trust { width: 100%; padding: 12px; }
    .about-hero-collage { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px !important; margin-top: 30px !important; padding: 8px !important; border-radius: 26px; }
    .about-hero-collage > div:first-child,
    .about-hero-collage > div:last-child { width: auto !important; min-height: 260px; }
    .about-hero-collage > div:last-child { display: grid !important; gap: 8px !important; }
    .about-hero-collage > div:last-child > div { height: auto !important; }
    .about-mission-section { padding-top: 10px !important; padding-bottom: 60px !important; }
    .about-mission-shell { padding: 8px !important; border-radius: 27px !important; }
    .about-mission-card { min-height: 0 !important; padding: 27px !important; border-radius: 21px !important; }
    .about-mission-card [data-editable="mission-text"] { font-size: 20px !important; }
    .about-stats-panel { padding: 4px 0 0 !important; }
    .about-stats-heading { padding: 13px 10px 7px !important; font-size: 34px !important; }
    .about-stats-grid { gap: 8px !important; }
    .about-stat-card { min-height: 220px; padding: 24px !important; border-radius: 19px !important; }
    .about-stat-card p { padding-top: 17px; font-size: 13px !important; }
}

/* About: logo wall + team roster */
.about-logo-wall {
    max-width: 1500px !important;
    padding-top: 18px !important;
    padding-bottom: 76px !important;
    border-top: 0 !important;
}

.about-logo-shell {
    position: relative;
    min-height: 126px;
    padding: 18px 22px;
    overflow: hidden;
    border: 1px solid rgba(17,17,17,.09);
    border-radius: 30px;
    background: rgba(255,255,255,.54);
    box-shadow: 0 16px 42px rgba(48, 41, 25, .06);
}

.about-logo-shell::before {
    position: absolute;
    top: -90px;
    left: -65px;
    width: 230px;
    height: 230px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(254,247,175,.38), transparent 68%);
    content: '';
    pointer-events: none;
}

.about-logo-shell > p {
    position: relative;
    z-index: 1;
    width: min(190px, 100%);
    margin: 0 !important;
    color: rgba(17,17,17,.57) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
}

.about-logo-shell > p span { display: block; margin-top: 3px; color: var(--sn-ink); font-style: normal !important; font-weight: 680 !important; }
.about-logo-shell > div { position: relative; z-index: 1; padding: 13px 0; mask-image: linear-gradient(to right, transparent, #000 7%, #000 93%, transparent); }
.about-logo-shell .marquee-track { gap: 38px !important; animation-duration: 32s !important; }
.about-logo-shell .marquee-track:hover { animation-play-state: paused; }
.about-logo-shell .marquee-track a {
    display: flex !important;
    min-width: 122px;
    height: 54px;
    padding: 9px 15px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(17,17,17,.075);
    border-radius: 15px;
    background: rgba(255,255,255,.76);
    box-shadow: 0 7px 20px rgba(48,41,25,.035);
    transition: transform 260ms var(--sn-ease), border-color 230ms ease, box-shadow 230ms ease !important;
}
.about-logo-shell .marquee-track a:hover { border-color: rgba(17,17,17,.16); box-shadow: 0 13px 26px rgba(48,41,25,.1); transform: translateY(-3px); }
.about-logo-shell .marquee-track img { max-width: 110px; height: 28px !important; object-fit: contain; }

.about-team-section { max-width: 1500px !important; padding-top: 2px !important; padding-bottom: 92px !important; }
.about-team-layout { gap: clamp(42px, 5.5vw, 82px) !important; align-items: flex-start; }
.about-team-sidebar { width: min(100%, 340px) !important; gap: 24px !important; }
.about-team-sidebar h2 {
    margin: 0 !important;
    color: var(--sn-ink);
    font-size: clamp(43px, 4.5vw, 62px) !important;
    font-weight: 430 !important;
    line-height: .98 !important;
    letter-spacing: -.062em !important;
    text-wrap: balance;
}
.about-team-sidebar h2 u { text-decoration-color: var(--home-yellow, #fef7af); text-decoration-thickness: .18em; text-underline-offset: -.04em; }
.about-team-sidebar [data-editable="about-team-desc"],
.about-team-sidebar [data-editable="about-team-desc-2"] { color: rgba(17,17,17,.58) !important; font-size: 15px !important; line-height: 1.62 !important; }
.about-team-sidebar-image { position: relative; border: 1px solid rgba(17,17,17,.1) !important; border-radius: 24px !important; box-shadow: 0 20px 44px rgba(48,41,25,.09) !important; }
.about-team-sidebar-image::after { position: absolute; right: 13px; bottom: 13px; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.48); border-radius: 15px; background: rgba(254,247,175,.9); box-shadow: 0 8px 18px rgba(0,0,0,.14); content: ''; }
.about-team-sidebar-image img { transition: transform 700ms var(--sn-ease); }
.about-team-sidebar-image:hover img { transform: scale(1.045); }

.about-team-roster { gap: 22px !important; }
.about-team-roster-title {
    max-width: 700px;
    margin: 0 !important;
    padding: 0 10px !important;
    font-size: clamp(30px, 3.4vw, 46px) !important;
    font-weight: 430 !important;
    line-height: 1.05 !important;
    letter-spacing: -.052em !important;
    text-wrap: balance;
}
.about-team-roster-title b { font-weight: 650; }
.about-team-grid-shell { padding: 10px !important; border: 1px solid rgba(17,17,17,.09); border-radius: 34px !important; background: rgba(255,255,255,.42) !important; box-shadow: 0 19px 52px rgba(48,41,25,.07); }
.about-team-grid { gap: 10px !important; }
.about-team-grid > div {
    position: relative;
    min-height: 330px;
    padding: 10px 10px 23px !important;
    overflow: hidden;
    border-color: rgba(17,17,17,.075) !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,.81) !important;
    box-shadow: none !important;
    transform: translateY(0);
    transition: transform 340ms var(--sn-ease), box-shadow 340ms ease, border-color 260ms ease !important;
}
.about-team-grid > div::after { position: absolute; top: 0; right: 0; width: 44px; height: 4px; border-radius: 0 24px 0 12px; background: var(--home-yellow, #fef7af); content: ''; }
.about-team-grid > div:nth-child(3n + 2)::after { background: var(--home-blue, #84e6f6); }
.about-team-grid > div:nth-child(3n)::after { background: var(--home-coral, #f7a49e); }
.about-team-grid > div:hover { z-index: 2; border-color: rgba(17,17,17,.16) !important; box-shadow: 0 22px 43px rgba(48,41,25,.12) !important; transform: translateY(-6px) !important; }
.about-team-grid > div > div:first-child { aspect-ratio: 1 / 1.02 !important; margin-bottom: 19px !important; border-radius: 17px !important; background: #e9e6df; }
.about-team-grid > div > div:first-child::after { position: absolute; inset: auto 12px 12px auto; width: 9px; height: 9px; border-radius: 999px; background: var(--home-yellow, #fef7af); box-shadow: 0 0 0 5px rgba(255,255,255,.42); content: ''; }
.about-team-grid > div:nth-child(3n + 2) > div:first-child::after { background: var(--home-blue, #84e6f6); }
.about-team-grid > div:nth-child(3n) > div:first-child::after { background: var(--home-coral, #f7a49e); }
.about-team-grid > div > div:first-child img { transition: transform 650ms var(--sn-ease), filter 300ms ease !important; }
.about-team-grid > div:hover > div:first-child img { filter: saturate(1.05); transform: scale(1.055) !important; }
.about-team-grid > div > div:last-child { padding: 0 7px !important; }
.about-team-grid h4 { margin-bottom: 3px; font-size: 21px !important; font-weight: 620 !important; letter-spacing: -.038em !important; }
.about-team-grid span { color: rgba(17,17,17,.5) !important; font-size: 12px !important; line-height: 1.38 !important; }

@media (max-width: 1023px) {
    .about-logo-wall { padding-bottom: 60px !important; }
    .about-team-sidebar { width: 100% !important; max-width: 620px; }
    .about-team-sidebar-image { max-width: 440px; }
}

@media (max-width: 767px) {
    .about-logo-wall { padding-inline: 18px !important; padding-bottom: 52px !important; }
    .about-logo-shell { padding: 19px 15px 14px; border-radius: 23px; }
    .about-logo-shell > p { width: 100%; text-align: center; }
    .about-logo-shell > div { width: calc(100% + 30px); margin-inline: -15px; padding: 13px 0 6px; }
    .about-logo-shell .marquee-track { gap: 14px !important; animation-duration: 27s !important; }
    .about-logo-shell .marquee-track a { min-width: 105px; height: 47px; padding: 8px 11px; border-radius: 13px; }
    .about-logo-shell .marquee-track img { max-width: 90px; height: 23px !important; }
    .about-team-section { padding-inline: 18px !important; padding-bottom: 64px !important; }
    .about-team-layout { gap: 36px !important; }
    .about-team-sidebar { gap: 20px !important; }
    .about-team-sidebar h2 { font-size: 46px !important; }
    .about-team-roster-title { padding: 0 3px !important; font-size: 33px !important; }
    .about-team-grid-shell { padding: 8px !important; border-radius: 26px !important; }
    .about-team-grid { gap: 8px !important; }
    .about-team-grid > div { min-height: 0; padding: 8px 8px 18px !important; border-radius: 19px !important; }
    .about-team-grid > div > div:first-child { margin-bottom: 14px !important; border-radius: 13px !important; }
    .about-team-grid h4 { font-size: 18px !important; }
    .about-team-grid span { font-size: 11px !important; }
}

/* The About client wall intentionally shares the exact Home section system. */
#client-logos.client-logo-showcase {
    z-index: 14;
    max-width: none !important;
    padding: 26px 0 116px !important;
}
#client-logos .section-container { max-width: 1500px !important; }
#client-logos .section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: rgba(17,17,17,.55);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .13em;
    line-height: 1;
    text-transform: uppercase;
}
#client-logos .section-kicker::before { width: 22px; height: 2px; border-radius: 999px; background: #fecd1a; content: ''; }
#client-logos .client-logo-header { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 64px; align-items: end; margin-bottom: 42px; }
#client-logos .client-logo-header > div:first-child { display: flex; max-width: 980px; flex-direction: column; gap: 16px; }
#client-logos .client-logo-header h2 { margin: 0; color: var(--sn-ink); font-family: "Albert Sans", sans-serif; font-size: clamp(42px, 4.2vw, 66px); font-weight: 430; letter-spacing: -.055em; line-height: 1.02; text-wrap: balance; }
#client-logos .client-logo-proof { display: flex; min-width: 280px; padding: 19px 22px; border-top: 1px solid rgba(17,17,17,.16); border-bottom: 1px solid rgba(17,17,17,.16); align-items: center; gap: 22px; }
#client-logos .client-logo-proof strong { font-family: "Albert Sans", sans-serif; font-size: 35px; font-weight: 580; letter-spacing: -.06em; }
#client-logos .client-logo-proof strong span { color: rgba(17,17,17,.36); font-size: 16px; }
#client-logos .client-logo-proof p { margin: 0; color: rgba(17,17,17,.56); font-size: 12px; line-height: 1.4; }
#client-logos .overflow-hidden { overflow: visible !important; }
#client-logos .marquee-track { display: grid !important; width: 100% !important; gap: 10px !important; animation: none !important; grid-template-columns: repeat(5, minmax(0, 1fr)); filter: none !important; opacity: 1 !important; transform: none !important; }
#client-logos .marquee-track > a { display: flex !important; height: 138px; padding: 25px; border: 1px solid rgba(17,17,17,.075); border-radius: 25px; background: rgba(255,255,255,.57); align-items: center; justify-content: center; opacity: .62; transition: opacity 280ms ease, transform 320ms var(--sn-ease), background 280ms ease, box-shadow 280ms ease; }
#client-logos .marquee-track > a:hover { z-index: 3; background: #fff; box-shadow: 0 20px 48px rgba(47,40,24,.09); opacity: 1; transform: translateY(-5px); }
#client-logos .marquee-track > a img { width: auto !important; height: auto !important; max-width: 150px; max-height: 58px; object-fit: contain; filter: grayscale(1) contrast(.85); transition: filter 280ms ease, transform 280ms ease; }
#client-logos .marquee-track > a:hover img { filter: grayscale(0) contrast(1); transform: scale(1.05); }
#client-logos .marquee-track > a:nth-child(5),
#client-logos .marquee-track > a:nth-child(9),
#client-logos .marquee-track > a:nth-child(10),
#client-logos .marquee-track > a:nth-child(11),
#client-logos .marquee-track > a:nth-child(12),
#client-logos .marquee-track > a:nth-child(16) { display: none !important; }

/* The final CTA uses the same composition and dimensions as Home. */
#contact { padding-top: 80px !important; padding-bottom: 80px !important; }
#contact > .px-5 { width: 100% !important; max-width: none !important; padding-inline: 20px !important; }
#contact > .px-5 > div { max-width: none !important; padding: 72px clamp(32px, 5vw, 80px) !important; border-radius: 34px !important; background: #121212 !important; }
#contact > .px-5 > div > .relative.z-10 { max-width: 1320px !important; margin-inline: auto !important; padding-inline: 48px !important; }
#contact > .px-5 > div > .relative.z-10 > .flex { display: flex !important; gap: clamp(56px, 7vw, 104px) !important; align-items: stretch !important; justify-content: space-between !important; }
#contact > .px-5 > div > div:first-child { opacity: .5 !important; mix-blend-mode: normal !important; }
#contact > .px-5 > div > div:nth-child(2) { background: rgba(0,0,0,.43) !important; }
#contact > .px-5 > div > .relative.z-10 > .flex > div:first-child { width: min(54%, 610px) !important; }
#contact .contact-mode-heading { max-width: 610px !important; margin-bottom: 22px !important; font-size: clamp(42px, 4vw, 58px) !important; line-height: 1.02 !important; letter-spacing: -.048em !important; }
#contact .contact-mode-heading + p + div { display: block !important; margin-bottom: 23px !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; font-size: 14px !important; }
#contact [data-editable="cta-section-desc"] { max-width: 540px !important; color: rgba(255,255,255,.58) !important; font-size: 16px !important; line-height: 1.65 !important; }
#contact .flex.flex-col.gap-6.mt-4 { display: flex !important; max-width: none !important; margin-top: 8px !important; flex-direction: column !important; gap: 14px !important; }
#contact .flex.flex-col.gap-6.mt-4 > div { width: fit-content; min-width: 285px; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; transform: none !important; }
#contact .lg\:w-\[480px\] { width: min(44%, 480px) !important; flex: 0 0 min(44%, 480px); }
#contact .lg\:w-\[480px\] > div { padding: 32px !important; border: 1px solid rgba(255,255,255,.12) !important; border-radius: 26px !important; background: rgba(255,255,255,.065) !important; box-shadow: 0 28px 70px rgba(0,0,0,.24) !important; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
#contact form label { color: rgba(255,255,255,.45) !important; }
#contact form input, #contact form textarea { border: 1px solid rgba(255,255,255,.11) !important; background: rgba(255,255,255,.06) !important; color: #fff !important; box-shadow: none !important; }
#contact form input::placeholder, #contact form textarea::placeholder { color: rgba(255,255,255,.24) !important; }
#contact form textarea:focus { box-shadow: 0 0 0 3px rgba(254,247,175,.12) !important; }

@media (max-width: 1179px) {
    body:has([data-editable="about-hero-title"]) main .section-container,
    body:has([data-editable="about-hero-title"]) main > .section-container { padding-right: 28px !important; padding-left: 28px !important; }
    #client-logos .client-logo-header { grid-template-columns: 1fr; gap: 28px; }
    #client-logos .client-logo-proof { width: fit-content; }
    #client-logos .marquee-track { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1023px) {
    #contact > .px-5 > div { padding: 48px 28px !important; }
    #contact > .px-5 > div > .relative.z-10 { padding-inline: 0 !important; }
    #contact > .px-5 > div > .relative.z-10 > .flex { gap: 42px !important; }
    #contact > .px-5 > div > .relative.z-10 > .flex > div:first-child,
    #contact .lg\:w-\[480px\] { width: 100% !important; flex-basis: auto !important; }
}
@media (max-width: 767px) {
    body:has([data-editable="about-hero-title"]) main .section-container,
    body:has([data-editable="about-hero-title"]) main > .section-container { padding-right: 18px !important; padding-left: 18px !important; }
    #client-logos.client-logo-showcase { padding-top: 38px !important; padding-bottom: 76px !important; }
    #client-logos .client-logo-header { margin-bottom: 28px; }
    #client-logos .client-logo-header h2 { font-size: 40px; }
    #client-logos .client-logo-proof { width: 100%; min-width: 0; justify-content: space-between; }
    #client-logos .marquee-track { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px !important; }
    #client-logos .marquee-track > a { height: 105px; padding: 19px; border-radius: 19px; }
    #client-logos .marquee-track > a img { max-width: 115px; max-height: 45px; }
    #contact { padding-top: 58px !important; padding-bottom: 58px !important; }
    #contact > .px-5 { padding-inline: 18px !important; }
    #contact > .px-5 > div { padding: 38px 22px !important; border-radius: 28px !important; }
    #contact .contact-mode-heading { font-size: 39px !important; }
    #contact .flex.flex-col.gap-6.mt-4 > div { min-width: 0; }
}

/* About mobile: retain the desktop system, but make each content block deliberate
   at phone widths rather than simply stacking desktop proportions. */
@media (max-width: 767px) {
    body:has([data-editable="about-hero-title"]) { overflow-x: hidden; }
    .about-hero [data-editable="about-hero-desc"] { font-size: 15px !important; line-height: 1.62 !important; }
    .about-hero-trust { gap: 10px !important; }
    .about-hero-trust [data-editable="about-hero-trust-label"] { max-width: 245px; font-size: 12px !important; line-height: 1.35 !important; }

    .about-mission-card > .relative.z-10 { gap: 14px !important; }
    .about-mission-card [data-editable="mission-values"] { margin-top: 18px !important; padding-top: 18px !important; }
    .about-mission-card [data-editable="mission-values"] > div { align-items: flex-start !important; font-size: 13px !important; line-height: 1.38 !important; }
    .about-mission-card > .relative.z-10 + .relative.z-10 { margin-top: 26px !important; padding-top: 18px !important; }
    .about-mission-card > .relative.z-10 + .relative.z-10 > div:first-child { width: 100%; flex-wrap: nowrap !important; }
    .about-mission-card > .relative.z-10 + .relative.z-10 > div:first-child a { flex: 1 1 0; justify-content: center; padding-inline: 12px !important; white-space: nowrap; }
    .about-mission-card > .relative.z-10 + .relative.z-10 > div:nth-child(2) { gap: 10px !important; }
    .about-mission-card > .relative.z-10 + .relative.z-10 > div:nth-child(2) a { font-size: 11px !important; }

    .about-team-section { padding-top: 10px !important; padding-bottom: 62px !important; }
    .about-team-sidebar-image { max-width: none !important; }
    .about-team-grid > div { min-height: 0 !important; }

    section:has([data-editable="why-choose-title"]) { padding-top: 58px !important; padding-bottom: 58px !important; }
    section:has([data-editable="why-choose-title"]) > .section-container > div { padding: 8px !important; border-radius: 27px !important; }
    section:has([data-editable="why-choose-title"]) .lg\\:col-span-5 { padding: 27px !important; border-radius: 21px !important; }
    section:has([data-editable="why-choose-title"]) [data-editable="why-choose-title"] { font-size: 37px !important; line-height: 1.04 !important; letter-spacing: -.045em !important; }
    section:has([data-editable="why-choose-title"]) [data-editable="why-choose-desc"] { gap: 18px !important; font-size: 15px !important; line-height: 1.58 !important; }
    section:has([data-editable="why-choose-title"]) [data-editable="why-choose-desc"] p:first-child { font-size: 19px !important; }
    section:has([data-editable="why-choose-title"]) [data-editable="why-choose-standards"] { margin-block: 20px !important; padding-top: 19px !important; }
    section:has([data-editable="why-choose-title"]) [data-editable="why-choose-standards"] > div { align-items: flex-start !important; font-size: 13px !important; line-height: 1.4 !important; }
    section:has([data-editable="why-choose-title"]) .lg\\:col-span-5 > div:last-child { margin-top: 28px !important; padding-top: 18px !important; gap: 17px !important; }
    section:has([data-editable="why-choose-title"]) .lg\\:col-span-5 > div:last-child > div:first-child { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px !important; }
    section:has([data-editable="why-choose-title"]) .lg\\:col-span-5 > div:last-child > div:first-child a { min-height: 44px; justify-content: center; padding-inline: 11px !important; font-size: 12px !important; white-space: nowrap; }
    section:has([data-editable="why-choose-title"]) .lg\\:col-span-7 { gap: 8px !important; }
    section:has([data-editable="why-choose-title"]) .lg\\:col-span-7 > div { padding: 25px !important; border-radius: 20px !important; gap: 20px !important; }
    section:has([data-editable="why-choose-title"]) .lg\\:col-span-7 > div > div:first-child { width: 48px !important; height: 48px !important; border-radius: 15px !important; }
    section:has([data-editable="why-choose-title"]) .lg\\:col-span-7 h4 { font-size: 20px !important; }
    section:has([data-editable="why-choose-title"]) .lg\\:col-span-7 p { font-size: 14px !important; line-height: 1.55 !important; }

    #contact > .px-5 > div > .relative.z-10 > .flex { gap: 34px !important; }
    #contact .contact-mode-heading { font-size: clamp(35px, 10.5vw, 43px) !important; }
    #contact [data-editable="cta-section-desc"] { font-size: 15px !important; }
    #contact .lg\\:w-\[480px\] > div { padding: 22px !important; border-radius: 22px !important; }
    #contact form { gap: 18px !important; }
    #contact form input { min-height: 48px !important; }
    #contact form textarea { min-height: 124px !important; }

    footer[data-kite-global="site-footer"] { padding-top: 58px !important; padding-bottom: 30px !important; }
    footer[data-kite-global="site-footer"] > div { padding-inline: 18px !important; }
    footer[data-kite-global="site-footer"] > div > div:first-child { gap: 34px !important; padding-bottom: 42px !important; }
    footer[data-kite-global="site-footer"] > div > div:first-child > div { gap: 12px !important; }
    footer[data-kite-global="site-footer"] .footer-heading { font-size: 12px !important; }
    footer[data-kite-global="site-footer"] > div > div:last-child { align-items: flex-start !important; gap: 14px !important; }
}
