.contact-main {
    display: grid;
    gap: 74px;
    padding-top: 24px;
    overflow-x: clip;
    width: min(var(--max-width), calc(100% - 32px));
    margin: 0 auto;
    justify-items: center;
    position: relative;
}

.contact-page .site-header {
    margin-bottom: 0;
}

.contact-page [data-reveal] {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.contact-main > * {
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
    position: relative;
    z-index: 1;
    min-width: 0;
}

.contact-main::before,
.contact-main::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.contact-main::before {
    background:
        radial-gradient(circle at 14% 10%, rgba(34, 211, 238, 0.12), transparent 22%),
        radial-gradient(circle at 84% 18%, rgba(15, 111, 255, 0.1), transparent 20%),
        radial-gradient(circle at 20% 72%, rgba(141, 247, 95, 0.08), transparent 18%);
    z-index: 0;
}

.contact-main::after {
    background-image:
        linear-gradient(rgba(15, 111, 255, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(15, 111, 255, 0.03) 1px, transparent 1px);
    background-size: 120px 120px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.75), transparent 92%);
    z-index: 0;
}

.contact-hero,
.contact-press-section,
.contact-partner-section,
.contact-mailing-section,
.contact-form-section {
    width: 100%;
}

.contact-press-section,
.contact-partner-section,
.contact-mailing-section,
.contact-form-section {
    padding: 28px 26px 0;
    border-radius: 34px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.42), rgba(255, 255, 255, 0.16));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.45);
    overflow: hidden;
    min-width: 0;
}

.contact-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(340px, 1.1fr);
    align-items: center;
    gap: 28px;
    padding: 34px 26px 28px;
    overflow: clip;
    border-radius: 42px;
    background: linear-gradient(180deg, rgba(241, 245, 255, 0.92), rgba(238, 243, 252, 0.86));
    box-shadow: 0 24px 56px rgba(7, 24, 47, 0.08);
}

.contact-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        radial-gradient(circle at 18% 22%, rgba(15, 111, 255, 0.12), transparent 28%),
        radial-gradient(circle at 78% 22%, rgba(115, 130, 255, 0.08), transparent 22%),
        linear-gradient(180deg, rgba(246, 249, 255, 0.9), rgba(236, 241, 250, 0.82));
    z-index: 0;
}

.contact-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        radial-gradient(circle at 72% 26%, rgba(76, 87, 255, 0.12), transparent 20%),
        radial-gradient(circle at 24% 78%, rgba(34, 211, 238, 0.1), transparent 22%),
        repeating-linear-gradient(
            90deg,
            rgba(15, 111, 255, 0.035) 0,
            rgba(15, 111, 255, 0.035) 1px,
            transparent 1px,
            transparent 118px
        ),
        repeating-linear-gradient(
            0deg,
            rgba(15, 111, 255, 0.03) 0,
            rgba(15, 111, 255, 0.03) 1px,
            transparent 1px,
            transparent 118px
        );
    opacity: 0.9;
    z-index: 0;
}

.contact-hero-copy,
.contact-hero-visual {
    position: relative;
    z-index: 1;
}

.contact-hero-copy {
    padding: 6px 0 6px 4px;
}

.contact-hero-copy h1 {
    margin: 0;
    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(2.35rem, 4.5vw, 3.3rem);
    line-height: 1.04;
    letter-spacing: -0.045em;
    max-width: 7ch;
}

.contact-hero-copy .hero-text {
    max-width: 28ch;
    margin-top: 14px;
    font-size: 0.98rem;
    line-height: 1.72;
}

.contact-method-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 26px;
}

.contact-method-circle {
    min-height: 154px;
    padding: 18px 14px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    text-align: center;
    gap: 10px;
    border: 1px solid rgba(255, 255, 255, 0.86);
    background: radial-gradient(circle at top, rgba(255, 255, 255, 0.94), rgba(245, 249, 255, 0.9));
    box-shadow:
        0 26px 44px rgba(7, 24, 47, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.contact-method-circle:hover {
    transform: translateY(-10px);
    border-color: rgba(15, 111, 255, 0.22);
    box-shadow:
        0 34px 56px rgba(7, 24, 47, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.contact-method-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: 1.6rem;
    color: #7b52ff;
    background: linear-gradient(135deg, rgba(123, 82, 255, 0.08), rgba(15, 111, 255, 0.06));
    box-shadow: inset 0 0 0 1px rgba(123, 82, 255, 0.1);
}

.contact-method-circle strong {
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.04rem;
}

.contact-method-circle small {
    color: var(--text-soft);
    font-size: 0.84rem;
    max-width: 16ch;
}

.contact-hero-visual {
    min-height: 520px;
    display: grid;
    place-items: center;
    overflow: clip;
}

.contact-visual-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(10px);
    pointer-events: none;
}

.contact-visual-glow-a {
    width: 250px;
    height: 250px;
    top: 12%;
    left: 10%;
    background: radial-gradient(circle, rgba(34, 211, 238, 0.34), transparent 70%);
    animation: contactPulse 8s ease-in-out infinite;
}

.contact-visual-glow-b {
    width: 290px;
    height: 290px;
    right: 4%;
    bottom: 10%;
    background: radial-gradient(circle, rgba(15, 111, 255, 0.24), transparent 72%);
    animation: contactPulse 10s ease-in-out infinite reverse;
}

.contact-illustration {
    position: relative;
    width: min(100%, 620px);
    min-height: 460px;
    animation: contactFloat 8s ease-in-out infinite;
}

.contact-illustration-bubble {
    position: absolute;
    width: 74px;
    height: 74px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    font-size: 2rem;
    color: #7d53ff;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 18px 34px rgba(7, 24, 47, 0.1);
}

.bubble-mail {
    top: 8%;
    left: 16%;
}

.bubble-clock {
    top: 18%;
    right: 18%;
}

.bubble-chat {
    bottom: 12%;
    right: 6%;
}

.contact-laptop {
    position: absolute;
    right: 2%;
    bottom: 14%;
    width: 420px;
    transform: rotate(-15deg);
}

.contact-laptop-screen {
    position: relative;
    height: 250px;
    border: 10px solid #9ba6ff;
    border-bottom-width: 16px;
    border-radius: 26px;
    background: linear-gradient(145deg, #4c55a9, #2d3f8d);
    box-shadow: 0 28px 60px rgba(76, 87, 160, 0.22);
    overflow: hidden;
}

.contact-screen-orbit {
    position: absolute;
    top: 52px;
    left: 50%;
    width: 114px;
    height: 114px;
    border-radius: 50%;
    transform: translateX(-50%);
    background:
        radial-gradient(circle at center, #ffffff 0 32%, transparent 33%),
        radial-gradient(circle at center, transparent 45%, rgba(255, 255, 255, 0.88) 46% 50%, transparent 51%),
        radial-gradient(circle at center, transparent 61%, rgba(255, 255, 255, 0.65) 62% 66%, transparent 67%);
}

.contact-screen-lines {
    position: absolute;
    right: 44px;
    top: 56px;
    display: grid;
    gap: 10px;
    width: 120px;
}

.contact-screen-lines span {
    display: block;
    height: 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.42);
}

.contact-screen-lines span:nth-child(1) {
    width: 96px;
}

.contact-screen-lines span:nth-child(2) {
    width: 122px;
}

.contact-screen-lines span:nth-child(3) {
    width: 78px;
}

.contact-screen-lines span:nth-child(4) {
    width: 112px;
}

.contact-laptop-base {
    width: 480px;
    height: 34px;
    margin-left: -34px;
    margin-top: -6px;
    border-radius: 0 0 38px 38px;
    background: linear-gradient(180deg, #f8fbff, #d5dcff);
    box-shadow: 0 18px 36px rgba(76, 87, 160, 0.16);
}

.contact-agent {
    position: absolute;
    left: 14%;
    bottom: 6%;
    width: 140px;
    height: 210px;
}

.contact-agent-head {
    position: absolute;
    top: 0;
    left: 34px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(180deg, #ffd6c0, #ffc1a7);
    z-index: 2;
}

.contact-agent-headset {
    position: absolute;
    top: 10px;
    left: 26px;
    width: 72px;
    height: 44px;
    border: 6px solid #4c57ff;
    border-bottom: 0;
    border-radius: 44px 44px 0 0;
}

.contact-agent-headset::after {
    content: "";
    position: absolute;
    right: -6px;
    top: 22px;
    width: 24px;
    height: 6px;
    border-radius: 999px;
    background: #4c57ff;
    transform: rotate(26deg);
}

.contact-agent-body {
    position: absolute;
    bottom: 0;
    left: 18px;
    width: 110px;
    height: 150px;
    border-radius: 34px 34px 20px 20px;
    background: linear-gradient(180deg, #8ab5f4, #5c8fe9);
    box-shadow: 0 22px 40px rgba(76, 87, 160, 0.18);
}

.contact-float-card {
    position: absolute;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(255, 255, 255, 0.78);
    box-shadow: 0 24px 44px rgba(7, 24, 47, 0.12);
    backdrop-filter: blur(16px);
    animation: contactFloatCard 6.2s ease-in-out infinite;
}

.contact-float-card-a {
    top: 6%;
    right: 8%;
}

.contact-float-card-b {
    bottom: 28%;
    left: 8%;
    animation-delay: 1.2s;
}

.contact-float-card-c {
    right: 4%;
    bottom: 6%;
    animation-delay: 2.2s;
}

.contact-float-kicker {
    display: block;
    color: var(--text-soft);
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 6px;
}

.contact-float-card strong {
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.06rem;
}

.contact-press-section {
    padding-top: 2px;
}

.contact-press-section .section-heading,
.contact-partner-section .section-heading,
.contact-mailing-section .section-heading,
.contact-form-section .section-heading {
    margin-inline: auto;
    text-align: center;
}

.contact-centered-copy {
    width: min(760px, 100%);
    max-width: 100%;
    margin: 0 auto 28px;
    display: grid;
    justify-items: center;
    text-align: center;
    min-width: 0;
}

.contact-centered-copy h2 {
    margin: 0;
    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(1.55rem, 2.5vw, 2.2rem);
    line-height: 1.16;
    max-width: 18ch;
}

.contact-centered-copy p:not(.eyebrow) {
    max-width: 62ch;
    margin: 16px auto 0;
}

.contact-brand-showcase {
    padding: 24px 20px 0;
    background: transparent;
    box-shadow: none;
    overflow: hidden;
    min-width: 0;
}

.contact-brand-heading h2 {
    font-size: clamp(2.1rem, 4.1vw, 2.95rem);
    max-width: 18ch;
}

.contact-brand-partner-title h2 {
    font-size: clamp(1.95rem, 3.5vw, 2.55rem);
}

.contact-brand-partner-title {
    margin-top: 68px;
}

.contact-seen-shell {
    width: 100%;
    max-width: 100%;
    padding: 12px 18px 10px;
    border-top: 1px solid rgba(8, 17, 31, 0.1);
    border-bottom: 1px solid rgba(8, 17, 31, 0.08);
    overflow: hidden;
    min-width: 0;
}

.contact-seen-title {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 20px;
    margin-bottom: 26px;
}

.contact-seen-line {
    height: 1px;
    background: rgba(8, 17, 31, 0.14);
}

.contact-seen-title p {
    margin: 0;
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.65rem;
    font-weight: 700;
    letter-spacing: 0.38em;
    color: #071829;
}

.contact-seen-stage {
    position: relative;
    padding: 16px 70px;
    min-width: 0;
}

.contact-seen-ornament {
    position: absolute;
    top: 50%;
    width: 34px;
    height: 130px;
    transform: translateY(-50%);
    opacity: 0.24;
}

.contact-seen-ornament::before,
.contact-seen-ornament::after {
    content: "";
    position: absolute;
    inset: 0;
}

.contact-seen-ornament::before {
    width: 2px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(180deg, transparent, rgba(81, 96, 116, 0.5) 15%, rgba(81, 96, 116, 0.5) 85%, transparent);
}

.contact-seen-ornament::after {
    background:
        radial-gradient(circle at 35% 18%, rgba(81, 96, 116, 0.7) 0 3px, transparent 4px),
        radial-gradient(circle at 65% 28%, rgba(81, 96, 116, 0.7) 0 3px, transparent 4px),
        radial-gradient(circle at 35% 40%, rgba(81, 96, 116, 0.7) 0 3px, transparent 4px),
        radial-gradient(circle at 65% 54%, rgba(81, 96, 116, 0.7) 0 3px, transparent 4px),
        radial-gradient(circle at 35% 68%, rgba(81, 96, 116, 0.7) 0 3px, transparent 4px),
        radial-gradient(circle at 65% 82%, rgba(81, 96, 116, 0.7) 0 3px, transparent 4px);
}

.contact-seen-ornament-left {
    left: 10px;
}

.contact-seen-ornament-right {
    right: 10px;
}

.contact-seen-logos {
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    gap: 16px;
    align-items: center;
    text-align: center;
    min-width: 0;
}

.seen-logo {
    display: block;
    color: #111111;
    line-height: 1;
    white-space: nowrap;
}

.seen-logo-bold {
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.02rem;
    font-weight: 700;
}

.seen-logo-round {
    font-family: "Manrope", sans-serif;
    font-size: 1rem;
    font-weight: 800;
}

.seen-logo-stack {
    font-family: Georgia, serif;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 0.95;
}

.seen-logo-fox {
    font-family: "Space Grotesk", sans-serif;
    font-size: 2rem;
    font-weight: 800;
    letter-spacing: -0.04em;
}

.seen-logo-box {
    justify-self: center;
    min-width: 64px;
    padding: 8px 10px;
    border: 2px solid #111111;
    border-radius: 4px;
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
}

.seen-logo-serif {
    font-family: Georgia, serif;
    font-size: 0.9rem;
    letter-spacing: 0.04em;
}

.seen-logo-script {
    font-family: Georgia, serif;
    font-size: 0.82rem;
    font-style: italic;
}

.seen-logo-news {
    font-family: Georgia, serif;
    font-size: 0.9rem;
    font-weight: 700;
}

.seen-logo-chronicle {
    font-family: Georgia, serif;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 0.96;
}

.contact-seen-proof {
    margin: 22px 0 10px;
    text-align: center;
    color: #9ba2ae;
    letter-spacing: 0.28em;
    font-weight: 800;
}

.contact-seen-verified {
    display: block;
    text-align: center;
    color: #4c5663;
    font-weight: 700;
}

.contact-seen-verified::before {
    content: "\2714  ";
}

.contact-partner-marquee {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin-top: 8px;
    overflow: hidden;
    padding: 8px 0 4px;
    min-width: 0;
}

.contact-partner-marquee::before,
.contact-partner-marquee::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 120px;
    z-index: 2;
    pointer-events: none;
}

.contact-partner-marquee::before {
    left: 0;
    background: linear-gradient(90deg, rgba(243, 248, 255, 1), rgba(243, 248, 255, 0));
}

.contact-partner-marquee::after {
    right: 0;
    background: linear-gradient(270deg, rgba(243, 248, 255, 1), rgba(243, 248, 255, 0));
}

.contact-partner-track {
    display: flex;
    align-items: center;
    gap: 30px;
    width: max-content;
    animation: contactPartnerSlide 34s linear infinite;
    will-change: transform;
}

.partner-brand {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex: 0 0 auto;
    min-width: 220px;
    min-height: 92px;
    padding: 16px 18px;
    border-radius: 24px;
    border: 1px solid rgba(8, 17, 31, 0.08);
    background: rgba(255, 255, 255, 0.9);
    box-shadow:
        0 16px 32px rgba(7, 24, 47, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.78);
    text-align: center;
    color: #111111;
    line-height: 1;
    white-space: nowrap;
    position: relative;
    overflow: hidden;
}

.partner-brand::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.46), transparent 42%);
    pointer-events: none;
}

.partner-bitninja::before,
.partner-google-workspace::before,
.partner-google-cloud::before,
.partner-microsoft::before,
.partner-azure::before,
.partner-cpanel::before,
.partner-plesk::before,
.partner-litespeed::before,
.partner-acronis::before,
.partner-aws::before,
.partner-ibm::before,
.partner-tata::before {
    content: "";
    flex: 0 0 auto;
}

.partner-bitninja {
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.95rem;
    font-weight: 800;
    color: #cf2027;
    letter-spacing: -0.03em;
}

.partner-bitninja::before {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background:
        radial-gradient(circle at 34% 52%, #ffffff 0 3px, transparent 4px),
        radial-gradient(circle at 68% 52%, #ffffff 0 3px, transparent 4px),
        linear-gradient(180deg, #7d7d7d 0 46%, #cf2027 46% 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.44);
}

.partner-google-workspace {
    font-family: "Manrope", sans-serif;
    font-size: 1.55rem;
    font-weight: 700;
    color: #5f6672;
}

.partner-google-workspace::before {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: linear-gradient(135deg, #4285f4 0 48%, #34a853 48% 100%);
    box-shadow:
        inset 0 0 0 6px #ffffff,
        0 0 0 1px rgba(8, 17, 31, 0.08);
}

.partner-google-cloud {
    font-family: "Manrope", sans-serif;
    font-size: 1.58rem;
    font-weight: 700;
    color: #5f6672;
}

.partner-google-cloud::before {
    width: 42px;
    height: 28px;
    border-radius: 20px;
    background:
        radial-gradient(circle at 24% 52%, #4285f4 0 8px, transparent 9px),
        radial-gradient(circle at 50% 42%, #34a853 0 10px, transparent 11px),
        radial-gradient(circle at 74% 54%, #fbbc05 0 8px, transparent 9px),
        linear-gradient(180deg, transparent 0 52%, #ea4335 52% 76%, transparent 76% 100%);
}

.partner-microsoft {
    font-family: "Manrope", sans-serif;
    font-size: 2.1rem;
    font-weight: 800;
    color: #6a717d;
}

.partner-microsoft::before {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background:
        linear-gradient(90deg, #f25022 0 50%, #7fba00 50% 100%),
        linear-gradient(90deg, #00a4ef 0 50%, #ffb900 50% 100%);
    background-size: 100% 50%, 100% 50%;
    background-position: top, bottom;
    background-repeat: no-repeat;
}

.partner-azure {
    font-family: "Manrope", sans-serif;
    font-size: 1.7rem;
    font-weight: 800;
    color: #1274da;
}

.partner-azure::before {
    width: 0;
    height: 0;
    border-left: 16px solid transparent;
    border-right: 16px solid transparent;
    border-bottom: 34px solid #1374da;
    filter: drop-shadow(0 8px 10px rgba(19, 116, 218, 0.18));
}

.partner-cpanel {
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.95rem;
    font-weight: 800;
    color: #ff6b19;
}

.partner-cpanel::before {
    width: 38px;
    height: 28px;
    border-radius: 999px;
    border: 4px solid #ff6b19;
    border-left-width: 9px;
    transform: skewX(-10deg);
}

.partner-plesk {
    font-family: "Manrope", sans-serif;
    font-size: 1.75rem;
    font-weight: 700;
    color: #2a2525;
}

.partner-plesk::before {
    width: 26px;
    height: 26px;
    border-radius: 8px;
    background:
        linear-gradient(135deg, #2a2525 0 56%, transparent 56% 100%),
        linear-gradient(315deg, #4fb2f0 0 56%, transparent 56% 100%);
}

.partner-litespeed {
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.72rem;
    font-weight: 800;
    color: #1b4fa3;
}

.partner-litespeed::before {
    width: 22px;
    height: 34px;
    clip-path: polygon(0 0, 100% 0, 56% 40%, 100% 40%, 0 100%, 40% 56%, 0 56%);
    background: linear-gradient(180deg, #ffbf17, #1b4fa3);
}

.partner-acronis {
    font-family: "Manrope", sans-serif;
    font-size: 1.88rem;
    font-weight: 800;
    color: #183f89;
}

.partner-acronis::before {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background:
        radial-gradient(circle at center, transparent 0 8px, #183f89 8px 12px, transparent 12px 100%),
        conic-gradient(from 210deg, #32a8eb 0 32%, transparent 32% 100%);
}

.partner-aws {
    font-family: "Manrope", sans-serif;
    font-size: 1.38rem;
    font-weight: 800;
    color: #f79009;
}

.partner-aws::before {
    width: 34px;
    height: 22px;
    border-radius: 999px;
    border: 3px solid #f79009;
    border-top-color: transparent;
    transform: translateY(3px);
}

.partner-ibm {
    font-family: "Space Grotesk", sans-serif;
    font-size: 2rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    color: transparent;
    background: linear-gradient(180deg, #2370d9 0 12%, transparent 12% 22%, #2370d9 22% 34%, transparent 34% 44%, #2370d9 44% 56%, transparent 56% 66%, #2370d9 66% 78%, transparent 78% 88%, #2370d9 88% 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

.partner-ibm::before {
    width: 34px;
    height: 24px;
    border-radius: 8px;
    background:
        linear-gradient(180deg, #2370d9 0 18%, transparent 18% 32%, #2370d9 32% 48%, transparent 48% 62%, #2370d9 62% 78%, transparent 78% 100%);
}

.partner-tata {
    font-family: "Manrope", sans-serif;
    font-size: 1.82rem;
    font-weight: 800;
    color: #1466c3;
    letter-spacing: 0.04em;
}

.partner-tata::before {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background:
        radial-gradient(circle at center, transparent 0 10px, #1466c3 10px 13px, transparent 13px 100%),
        linear-gradient(180deg, transparent 0 38%, #1466c3 38% 46%, transparent 46% 100%);
}

.contact-press-section .section-heading h2,
.contact-partner-section .section-heading h2,
.contact-mailing-section .section-heading h2,
.contact-form-section .section-heading h2 {
    font-size: clamp(1.85rem, 3vw, 2.75rem);
    line-height: 1.12;
    max-width: 18ch;
    margin-inline: auto;
}

.contact-press-section .section-heading p,
.contact-partner-section .section-heading p,
.contact-mailing-section .section-heading p,
.contact-form-section .section-heading p {
    max-width: 62ch;
    margin-inline: auto;
}

.contact-press-strip {
    margin-top: 20px;
    padding: 24px 30px;
    border-top: 1px solid rgba(8, 17, 31, 0.08);
    border-bottom: 1px solid rgba(8, 17, 31, 0.08);
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 18px;
    align-items: center;
    text-align: center;
}

.contact-press-strip span {
    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(0.92rem, 1.7vw, 1.22rem);
    color: rgba(8, 17, 31, 0.86);
    letter-spacing: -0.02em;
}

.contact-proof-note {
    margin: 18px auto 0;
    text-align: center;
    color: var(--text-soft);
    max-width: 58ch;
}

.contact-logo-marquee {
    position: relative;
    margin-top: 24px;
    padding: 8px 0;
    overflow: hidden;
}

.contact-logo-marquee::before,
.contact-logo-marquee::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 96px;
    z-index: 2;
    pointer-events: none;
}

.contact-logo-marquee::before {
    left: 0;
    background: linear-gradient(90deg, rgba(243, 248, 255, 1), rgba(243, 248, 255, 0));
}

.contact-logo-marquee::after {
    right: 0;
    background: linear-gradient(270deg, rgba(243, 248, 255, 1), rgba(243, 248, 255, 0));
}

.contact-logo-track {
    display: flex;
    align-items: center;
    gap: 18px;
    width: max-content;
    animation: contactMarquee 26s linear infinite;
}

.contact-logo-pill {
    padding: 22px 16px;
    border-radius: 22px;
    border: 1px solid rgba(8, 17, 31, 0.08);
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 18px 34px rgba(7, 24, 47, 0.08);
    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(1.05rem, 1.7vw, 1.35rem);
    text-align: center;
    min-width: 170px;
    white-space: nowrap;
}

.contact-mailing-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    margin-top: 6px;
}

.contact-mail-card {
    min-height: 320px;
    padding: 30px 24px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.8);
    box-shadow:
        0 18px 40px rgba(7, 24, 47, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.84);
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.contact-mail-card:hover {
    transform: translateY(-8px);
    border-color: rgba(15, 111, 255, 0.18);
    box-shadow:
        0 34px 58px rgba(7, 24, 47, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.contact-mail-icon {
    width: 58px;
    height: 58px;
    margin: 0 auto 18px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    font-size: 1.8rem;
    color: #6d42ff;
    background: linear-gradient(135deg, rgba(109, 66, 255, 0.12), rgba(34, 211, 238, 0.14));
}

.contact-mail-card h3 {
    margin: 0 0 16px;
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.6rem;
}

.contact-mail-card p,
.contact-mail-card a,
.contact-mail-card span {
    display: block;
    margin: 8px 0 0;
    color: var(--text-muted);
    line-height: 1.7;
}

.contact-mail-card p strong {
    color: var(--text-main);
}

.contact-mail-card a {
    color: var(--brand);
}

.contact-form-shell {
    position: relative;
    padding: 44px clamp(20px, 4vw, 48px);
    border-radius: 30px;
    background:
        radial-gradient(circle at top, rgba(255, 255, 255, 0.94), rgba(242, 246, 255, 0.92)),
        linear-gradient(180deg, rgba(242, 246, 255, 0.92), rgba(234, 241, 255, 0.84));
    box-shadow:
        0 28px 62px rgba(7, 24, 47, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.84);
    overflow: hidden;
}

.contact-map-section {
    padding-top: 8px;
}

.contact-map-shell {
    padding: 18px;
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(242, 246, 255, 0.84));
    border: 1px solid rgba(8, 17, 31, 0.08);
    box-shadow: 0 24px 54px rgba(7, 24, 47, 0.1);
    display: grid;
    gap: 16px;
}

.contact-map-frame {
    width: 100%;
    min-height: 420px;
    border: 0;
    border-radius: 18px;
    display: block;
}

.contact-map-link {
    justify-self: center;
}

.contact-ready-section {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(300px, 1.05fr);
    align-items: center;
    gap: 28px;
    padding: 10px 0 18px;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.contact-ready-copy {
    max-width: 640px;
}

.contact-ready-copy h2 {
    margin: 0;
    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(2.2rem, 3.6vw, 3rem);
    line-height: 1.08;
    letter-spacing: -0.03em;
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}

.contact-ready-copy h2::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    width: 96%;
    height: 8px;
    border-radius: 999px;
    background: radial-gradient(ellipse at center, rgba(91, 130, 236, 0.45), rgba(91, 130, 236, 0));
}

.contact-ready-copy p {
    margin: 18px 0 0;
    font-size: clamp(1.55rem, 2.3vw, 2.3rem);
    line-height: 1.2;
    color: var(--text-main);
    font-family: "Space Grotesk", sans-serif;
    max-width: 24ch;
}

.contact-ready-actions {
    margin-top: 28px;
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.ready-btn {
    min-width: 270px;
    padding: 14px 22px;
    border-radius: 8px;
    text-align: center;
    font-family: "Manrope", sans-serif;
    font-weight: 700;
    font-size: 1.04rem;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.ready-btn:hover {
    transform: translateY(-2px);
}

.ready-btn-outline {
    color: #4d6cd8;
    border: 2px solid rgba(77, 108, 216, 0.75);
    background: #ffffff;
}

.ready-btn-fill {
    color: #ffffff;
    background: linear-gradient(135deg, #66b33c, #66cc99);
    border: 2px solid transparent;
    box-shadow: 0 12px 24px rgba(88, 191, 143, 0.22);
}

.contact-ready-media {
    position: relative;
    min-height: 320px;
    border-radius: 0;
    overflow: visible;
    border: 0;
    box-shadow: none;
    display: grid;
    align-items: end;
}

.contact-ready-media img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: contain;
    display: block;
}

.contact-form-shell::before,
.contact-form-shell::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.contact-form-shell::before {
    width: 220px;
    height: 220px;
    top: -110px;
    right: -60px;
    background: radial-gradient(circle, rgba(123, 82, 255, 0.18), transparent 70%);
}

.contact-form-shell::after {
    width: 190px;
    height: 190px;
    left: -40px;
    bottom: -70px;
    background: radial-gradient(circle, rgba(34, 211, 238, 0.16), transparent 70%);
}

.contact-form {
    position: relative;
    z-index: 1;
}

.contact-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 22px;
}

.contact-form .form-group {
    margin-bottom: 22px;
}

.contact-form .form-group label {
    display: block;
    margin-bottom: 12px;
    color: var(--text-soft);
    font-weight: 700;
}

.contact-form .form-group input,
.contact-form .form-group select,
.contact-form .form-group textarea {
    width: 100%;
    padding: 18px 22px;
    border: 1px solid rgba(255, 255, 255, 0.86);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow:
        0 18px 34px rgba(7, 24, 47, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.92);
    color: var(--text-main);
    transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

.contact-form .form-group textarea {
    border-radius: 28px;
    min-height: 220px;
}

.contact-form .form-group input:focus,
.contact-form .form-group select:focus,
.contact-form .form-group textarea:focus {
    outline: none;
    transform: translateY(-2px);
    border-color: rgba(15, 111, 255, 0.26);
    box-shadow:
        0 24px 42px rgba(7, 24, 47, 0.1),
        0 0 0 6px rgba(15, 111, 255, 0.08);
}

.contact-submit-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 8px;
    max-width: 100%;
}

.contact-submit-row .support-form-note {
    flex: 1 1 320px;
    min-width: 0;
    max-width: 42ch;
}

.contact-submit {
    border: 0;
    padding: 0;
    background: transparent;
    display: inline-flex;
    align-items: center;
    gap: 18px;
    font-family: "Space Grotesk", sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--text-main);
    cursor: pointer;
}

.contact-submit-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #ffffff;
    background: linear-gradient(135deg, #4c57ff, #d414a3);
    box-shadow: 0 16px 30px rgba(76, 87, 255, 0.28);
    transition: transform 0.24s ease, box-shadow 0.24s ease;
}

.contact-submit:hover .contact-submit-icon {
    transform: translateX(4px) scale(1.06);
    box-shadow: 0 22px 40px rgba(76, 87, 255, 0.34);
}

.contact-submit:hover {
    color: #2538b8;
}

body.dark .contact-hero::before,
body.dark .contact-form-shell,
body.dark .contact-method-circle,
body.dark .contact-mail-card,
body.dark .contact-logo-pill {
    border-color: rgba(177, 193, 214, 0.14);
}

body.dark .contact-hero::before {
    background:
        radial-gradient(circle at 12% 18%, rgba(15, 111, 255, 0.14), transparent 24%),
        radial-gradient(circle at 88% 24%, rgba(141, 247, 95, 0.08), transparent 20%),
        linear-gradient(180deg, rgba(9, 21, 36, 0.92), rgba(6, 18, 30, 0.84));
}

body.dark .contact-hero::after {
    background:
        radial-gradient(circle at 72% 26%, rgba(76, 87, 255, 0.14), transparent 20%),
        radial-gradient(circle at 24% 78%, rgba(34, 211, 238, 0.08), transparent 22%),
        repeating-linear-gradient(
            90deg,
            rgba(177, 193, 214, 0.04) 0,
            rgba(177, 193, 214, 0.04) 1px,
            transparent 1px,
            transparent 118px
        ),
        repeating-linear-gradient(
            0deg,
            rgba(177, 193, 214, 0.04) 0,
            rgba(177, 193, 214, 0.04) 1px,
            transparent 1px,
            transparent 118px
        );
}

body.dark .contact-method-circle,
body.dark .contact-mail-card,
body.dark .contact-logo-pill,
body.dark .contact-form-shell {
    background: linear-gradient(160deg, rgba(9, 21, 36, 0.94), rgba(13, 31, 48, 0.88));
    box-shadow:
        0 24px 52px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.dark .contact-method-icon,
body.dark .contact-mail-icon {
    background: linear-gradient(135deg, rgba(109, 66, 255, 0.22), rgba(34, 211, 238, 0.16));
}

body.dark .contact-press-strip span,
body.dark .contact-submit,
body.dark .contact-mail-card h3 {
    color: #f6fbff;
}

body.dark .contact-proof-note,
body.dark .contact-method-circle small,
body.dark .contact-mail-card p,
body.dark .contact-mail-card span {
    color: rgba(232, 240, 252, 0.72);
}

body.dark .contact-logo-marquee::before {
    background: linear-gradient(90deg, rgba(4, 16, 29, 1), rgba(4, 16, 29, 0));
}

body.dark .contact-logo-marquee::after {
    background: linear-gradient(270deg, rgba(4, 16, 29, 1), rgba(4, 16, 29, 0));
}

body.dark .contact-form .form-group label {
    color: rgba(232, 240, 252, 0.72);
}

body.dark .contact-form .form-group input,
body.dark .contact-form .form-group select,
body.dark .contact-form .form-group textarea {
    background: rgba(10, 22, 38, 0.9);
    border-color: rgba(177, 193, 214, 0.14);
}

body.dark .contact-map-shell {
    background: linear-gradient(160deg, rgba(9, 21, 36, 0.94), rgba(13, 31, 48, 0.88));
    border-color: rgba(177, 193, 214, 0.14);
    box-shadow:
        0 24px 52px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.dark .contact-ready-section {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
}

body.dark .ready-btn-outline {
    color: #a8c8ff;
    border-color: rgba(120, 165, 255, 0.78);
    background: rgba(255, 255, 255, 0.04);
}

@keyframes contactMarquee {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

@keyframes contactPartnerSlide {
    0% {
        transform: translateX(-50%);
    }
    100% {
        transform: translateX(0);
    }
}

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

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

@keyframes contactPulse {
    0%,
    100% {
        transform: scale(1);
        opacity: 0.9;
    }
    50% {
        transform: scale(1.08);
        opacity: 0.7;
    }
}

@media (max-width: 1080px) {
    .contact-hero {
        grid-template-columns: 1fr;
        padding-top: 24px;
        gap: 20px;
    }

    .contact-mailing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-hero-copy {
        padding: 10px 8px 8px;
    }

    .contact-hero-copy h1 {
        max-width: none;
        font-size: clamp(2.1rem, 6.5vw, 2.75rem);
    }

    .contact-hero-visual {
        min-height: 500px;
    }

    .contact-method-grid,
    .contact-press-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-seen-logos {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        row-gap: 24px;
    }
}

@media (max-width: 820px) {
    .contact-hero {
        text-align: center;
    }

    .contact-hero-copy {
        margin-inline: auto;
        text-align: center;
        padding: 8px 8px 0;
    }

    .contact-hero-copy h1 {
        max-width: none;
        font-size: clamp(1.95rem, 7.4vw, 2.45rem);
    }

    .contact-method-grid,
    .contact-form-grid,
    .contact-mailing-grid,
    .contact-press-strip {
        grid-template-columns: 1fr;
    }

    .contact-hero-copy .hero-text {
        margin-inline: auto;
    }

    .contact-hero-visual {
        min-height: 430px;
    }

    .contact-illustration {
        min-height: 390px;
        width: min(100%, 520px);
    }

    .contact-float-card-a {
        top: 0;
        right: 4%;
    }

    .contact-float-card-b {
        left: 4%;
        bottom: 24%;
    }

    .contact-float-card-c {
        right: 6%;
        bottom: 0;
    }

    .contact-laptop {
        width: 330px;
        right: 4%;
    }

    .contact-laptop-screen {
        height: 200px;
    }

    .contact-laptop-base {
        width: 380px;
    }

    .contact-agent {
        left: 8%;
        bottom: 0;
        transform: scale(0.9);
        transform-origin: bottom left;
    }

    .contact-brand-heading h2 {
        font-size: clamp(1.75rem, 5.8vw, 2.2rem);
    }

    .contact-seen-title {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .contact-seen-stage {
        padding: 10px 0;
    }

    .contact-seen-ornament {
        display: none;
    }

    .contact-seen-logos {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-ready-section {
        grid-template-columns: 1fr;
        text-align: center;
        padding-top: 6px;
    }

    .contact-ready-actions {
        justify-content: center;
    }

    .contact-ready-copy p {
        margin-inline: auto;
    }
}

@media (max-width: 600px) {
    .contact-main {
        gap: 72px;
        width: calc(100% - 20px);
    }

    .contact-main > * {
        width: 100%;
    }

    .contact-hero::before {
        inset: 10px 0 -10px;
    }

    .contact-method-circle {
        min-height: 138px;
        border-radius: 30px;
    }

    .contact-brand-showcase {
        padding-left: 0;
        padding-right: 0;
    }

    .contact-hero-visual {
        min-height: 340px;
        align-content: start;
    }

    .contact-form-shell {
        border-radius: 24px;
        padding: 28px 18px;
    }

    .contact-map-shell {
        padding: 14px;
    }

    .contact-map-frame {
        min-height: 320px;
    }

    .contact-float-card {
        position: static;
        width: 100%;
        margin-top: 14px;
        text-align: center;
    }

    .contact-illustration {
        min-height: 300px;
    }

    .contact-laptop {
        position: relative;
        right: auto;
        bottom: auto;
        width: 250px;
        margin: 0 auto;
        transform: none;
    }

    .contact-laptop-screen {
        height: 150px;
        border-width: 8px;
        border-bottom-width: 12px;
    }

    .contact-laptop-base {
        width: 286px;
        height: 24px;
        margin-left: -18px;
    }

    .contact-agent {
        display: none;
    }

    .contact-illustration-bubble {
        width: 60px;
        height: 60px;
        font-size: 1.55rem;
        border-radius: 18px;
    }

    .contact-press-strip {
        padding: 22px 18px;
    }

    .contact-seen-title p {
        font-size: 1.1rem;
        letter-spacing: 0.22em;
    }

    .contact-seen-logos {
        grid-template-columns: 1fr;
    }

    .contact-partner-track {
        gap: 18px;
    }

    .partner-brand {
        min-width: 180px;
        padding: 10px 8px;
    }

    .contact-method-circle strong {
        font-size: 0.98rem;
    }

    .contact-method-circle small {
        font-size: 0.8rem;
    }

    .contact-form .form-group input,
    .contact-form .form-group select,
    .contact-form .form-group textarea {
        padding: 18px 18px;
    }

    .contact-submit-row {
        justify-content: center;
        text-align: center;
    }

    .ready-btn {
        width: 100%;
        min-width: 0;
        font-size: 1rem;
    }

    .contact-ready-media,
    .contact-ready-media img {
        min-height: 220px;
    }
}

@media (max-width: 400px) {
    .contact-main,
    .contact-hero,
    .contact-main > * {
        width: calc(100% - 14px);
    }

    .contact-hero-copy h1 {
        font-size: clamp(1.75rem, 9.8vw, 2.2rem);
    }

    .contact-hero-copy .hero-text {
        font-size: 1rem;
    }

    .contact-method-circle {
        min-height: 146px;
        padding: 22px 16px;
    }

    .contact-method-icon {
        width: 60px;
        height: 60px;
        font-size: 1.7rem;
    }

    .contact-mail-card {
        min-height: 0;
        padding: 26px 18px;
    }

    .contact-logo-pill {
        font-size: 1.15rem;
        padding: 18px 14px;
        min-width: 150px;
    }
}

@media (max-width: 350px) {
    .contact-hero,
    .contact-main > * {
        width: calc(100% - 10px);
    }

    .contact-hero-copy h1 {
        font-size: clamp(1.6rem, 10vw, 1.95rem);
    }

    .contact-method-grid {
        gap: 14px;
    }
}
