﻿/* Desktop Developers: original visual design retained; shared page geometry from site.css. */
#dd-page {
    --dd-cyan-soft: #e9fafd;
    --dd-white: #fff;
    --dd-green: #2e8b70;
    --dd-orange: #bd7a32;
    --dd-purple: #6d68a7;
    --dd-shadow-hover: 0 22px 48px rgba(38,54,58,.13);
}
    /* =========================================================
   Desktop developer hiring page styles
   WinForms-first .NET desktop developer page.
   Visual language follows the finalized Web Deployment page.
   ========================================================= */


    #dd-page::before,
    #dd-page::after {
        content: "";
        position: absolute;
        z-index: 0;
        pointer-events: none;
        border-radius: 50%;
    }

    #dd-page::before {
        width: 360px;
        height: 360px;
        top: 280px;
        left: -230px;
        border: 1px solid rgba(34,201,223,.14);
        box-shadow: 0 0 0 28px rgba(34,201,223,.025), 0 0 0 58px rgba(34,201,223,.018);
    }

    #dd-page::after {
        width: 280px;
        height: 280px;
        right: -190px;
        bottom: 320px;
        border: 1px solid rgba(21,159,202,.12);
    }

    #dd-page,
    #dd-page * {
        box-sizing: border-box;
    }

        #dd-page img {
            max-width: 100%;
            height: auto;
        }

        #dd-page a {
            color: var(--site-primary-dark);
        }

        #dd-page p:last-child,
        #dd-page ul:last-child,
        #dd-page ol:last-child {
            margin-bottom: 0;
        }

        /* ---------------------------------------------------------
   Main layout
   --------------------------------------------------------- */
        #dd-page .page-main {
        }

        /* ---------------------------------------------------------
   Hero
   --------------------------------------------------------- */

        #dd-page .page-header {
            position: relative;
            overflow: hidden;
            padding: 38px 42px 30px;
            background: radial-gradient(circle at 88% 0%, rgba(34,201,223,.16), transparent 31%), linear-gradient(135deg, #ffffff 0%, #f5fafb 100%);
        }

            #dd-page .page-header::before {
                content: "";
                position: absolute;
                top: 0;
                left: 42px;
                width: 86px;
                height: 4px;
                border-radius: 0 0 6px 6px;
                background: linear-gradient(90deg, var(--site-primary), var(--site-accent));
            }

        #dd-page .page-eyebrow {
            display: inline-flex;
            align-items: center;
            margin: 0 0 18px;
            padding: 6px 12px;
            border: 1px solid #c9eaf0;
            border-radius: 999px;
            background: rgba(255,255,255,.82);
            color: var(--site-primary-dark);
            font-size: 10px;
            font-weight: 850;
            letter-spacing: .15em;
            line-height: 1.2;
            box-shadow: 0 5px 15px rgba(21,159,202,.06);
        }

        #dd-page .page-title {
            max-width: 930px;
            margin: 0 0 22px;
            color: var(--site-heading);
            font-size: clamp(36px, 4vw, 56px);
            font-weight: 780;
            line-height: 1.06;
            letter-spacing: -.045em;
            animation: ddTitleIn .75s var(--site-ease) both;
        }

        #dd-page .page-description {
            max-width: 900px;
            margin: 0 0 14px;
            color: #5d7077;
            font-size: 17px;
            line-height: 1.82;
            animation: ddTextIn .7s .12s var(--site-ease) both;
        }


        /* ---------------------------------------------------------
   Hero image
   --------------------------------------------------------- */

        #dd-page .page-hero-image {
            position: relative;
            margin: 0 42px 8px;
            overflow: hidden;
            border: 1px solid var(--site-border);
            border-radius: 18px;
            background: #f1f7f8;
            box-shadow: 0 12px 30px rgba(38,54,58,.06);
        }

            #dd-page .page-hero-image::after {
                content: "";
                position: absolute;
                inset: auto 0 0;
                height: 35%;
                background: linear-gradient(180deg, transparent, rgba(47,54,56,.10));
                pointer-events: none;
            }

            #dd-page .page-hero-image img {
                display: block;
                width: 100%;
                transition: transform .7s var(--site-ease), filter .7s ease;
            }

            #dd-page .page-hero-image:hover img {
                transform: scale(1.025);
                filter: saturate(1.05);
            }

        /* ---------------------------------------------------------
   Common content blocks
   --------------------------------------------------------- */

        #dd-page .page-section {
            position: relative;
            padding: 40px 42px;
            border-top: 1px solid rgba(210,224,228,.78);
            transition: box-shadow .35s ease;
        }

            #dd-page .page-section::before {
                content: "";
                position: absolute;
                top: 0;
                left: 42px;
                width: 58px;
                height: 3px;
                border-radius: 0 0 5px 5px;
                background: var(--site-primary);
            }

        #dd-page .page-section-title {
            position: relative;
            margin: 0 0 25px;
            color: var(--site-heading);
            font-size: clamp(27px, 2.4vw, 35px);
            font-weight: 740;
            line-height: 1.2;
            letter-spacing: -.028em;
        }

            #dd-page .page-section-title::after {
                content: "";
                display: block;
                width: 42px;
                height: 3px;
                margin-top: 12px;
                border-radius: 3px;
                background: var(--site-accent);
                transform-origin: left center;
                transition: width .35s var(--site-ease);
            }

        #dd-page .page-section:hover .page-section-title::after {
            width: 64px;
        }

        #dd-page .page-section p {
            margin-top: 0;
            margin-bottom: 14px;
        }

        #dd-page .page-section h3 {
            margin: 0 0 9px;
            color: var(--site-heading);
            font-size: 20px;
            line-height: 1.35;
        }

        /* ---------------------------------------------------------
   Section identities
   --------------------------------------------------------- */

        #dd-page #dd-existing-apps {
            background: linear-gradient(135deg, #eefbfd 0%, #ffffff 80%);
        }

            #dd-page #dd-existing-apps::before {
                background: var(--site-accent);
            }

        #dd-page #dd-capabilities {
            background: #ffffff;
        }

        #dd-page #dd-business-apps {
            background: linear-gradient(135deg, #fffaf3 0%, #ffffff 82%);
        }

            #dd-page #dd-business-apps::before,
            #dd-page #dd-business-apps .page-section-title::after {
                background: var(--dd-orange);
            }

        #dd-page #dd-hiring-process {
            background: linear-gradient(180deg, #edf8fb 0%, #f7fafb 100%);
        }

        #dd-page #dd-engineering {
            background: #ffffff;
        }

        #dd-page #dd-why-us {
            background: linear-gradient(135deg, #f2fafc 0%, #e9f6f9 100%);
        }

        #dd-page .dd-closing {
            position: relative;
        }

        #dd-page #dd-contact {
            position: relative;
            overflow: hidden;
            background: radial-gradient(circle at 92% 15%, rgba(34,201,223,.24), transparent 25%), linear-gradient(135deg, #eaf9fc 0%, #f8fcfd 100%);
        }

            #dd-page #dd-contact::after {
                content: "";
                position: absolute;
                width: 230px;
                height: 230px;
                right: -95px;
                bottom: -125px;
                border: 1px solid rgba(21,159,202,.18);
                border-radius: 50%;
                box-shadow: 0 0 0 28px rgba(21,159,202,.035), 0 0 0 56px rgba(21,159,202,.025);
                pointer-events: none;
                transition: transform .55s var(--site-ease);
            }

            #dd-page #dd-contact:hover::after {
                transform: scale(1.12);
            }

        /* ---------------------------------------------------------
   Generic service cards
   --------------------------------------------------------- */

        #dd-page .dd-subgrid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 16px;
            margin-top: 24px;
        }

        #dd-page .dd-subsection {
            position: relative;
            padding: 20px 20px 18px;
            border: 1px solid var(--site-border);
            border-radius: 16px;
            background: rgba(255,255,255,.84);
            box-shadow: 0 8px 24px rgba(38,54,58,.04);
            opacity: 1;
            transform: translateY(0);
            transition: opacity .55s var(--site-ease), transform .55s var(--site-ease), box-shadow .3s ease, border-color .3s ease;
            transition-delay: var(--animation-delay, 0ms);
        }

            #dd-page .dd-subsection::before {
                content: "";
                display: block;
                width: 30px;
                height: 3px;
                margin-bottom: 14px;
                border-radius: 4px;
                background: var(--site-primary);
            }

            #dd-page .dd-subsection:nth-child(odd) {
                background: linear-gradient(145deg, #ffffff, #f6fbfc);
            }

            #dd-page .dd-subsection:nth-child(even) {
                background: linear-gradient(145deg, #f4fafb, #ffffff);
            }

            #dd-page .dd-subsection:hover {
                transform: translateY(-5px);
                border-color: #c4e2e8;
                box-shadow: var(--dd-shadow-hover);
            }

        /* ---------------------------------------------------------
   Technologies
   --------------------------------------------------------- */

        #dd-page .dd-technologies {
            position: relative;
        }

        #dd-page #dd-expertise {
            position: relative;
            overflow: hidden;
            color: #eefbfc;
            background: linear-gradient(135deg, #10282f 0%, #12343d 52%, #0d242b 100%);
        }

            #dd-page #dd-expertise::before {
                background: var(--site-primary);
            }

            #dd-page #dd-expertise::after {
                content: "";
                position: absolute;
                width: 280px;
                height: 280px;
                right: -100px;
                top: -130px;
                border-radius: 50%;
                background: rgba(34,201,223,.10);
                pointer-events: none;
            }

            #dd-page #dd-expertise .page-section-title {
                color: #ffffff;
            }

            #dd-page #dd-expertise > p {
                position: relative;
                z-index: 1;
                color: #c7e1e5;
            }

        #dd-page .dd-technologies__grid {
            position: relative;
            z-index: 1;
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 18px;
            margin-top: 26px;
            align-items: stretch;
            grid-auto-rows: 1fr;
        }

        #dd-page .dd-technologies__group {
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            min-height: 205px;
            height: 100%;
            padding: 22px;
            border: 1px solid rgba(96,226,239,.18);
            border-radius: 16px;
            background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(34,201,223,.035));
            box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 14px 30px rgba(0,0,0,.14);
            backdrop-filter: blur(6px);
            opacity: 1;
            transform: translateY(0);
            transition: opacity .55s var(--site-ease), transform .55s var(--site-ease), border-color .3s ease, background-color .3s ease, box-shadow .3s ease;
            transition-delay: var(--animation-delay, 0ms);
        }

            #dd-page .dd-technologies__group:hover {
                transform: translateY(-5px);
                border-color: rgba(34,201,223,.48);
                background: rgba(255,255,255,.075);
                box-shadow: 0 18px 38px rgba(0,0,0,.18);
            }

            #dd-page .dd-technologies__group h3 {
                display: flex;
                align-items: center;
                min-height: 24px;
                margin: 0 0 14px;
                color: #ffffff;
                font-size: 1.05rem;
                font-weight: 750;
            }

        #dd-page .dd-technologies__items {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 10px;
            flex: 1;
        }

        #dd-page .dd-technologies__item {
            display: flex;
            width: 100%;
            min-height: 43px;
            align-items: center;
            justify-content: center;
            padding: 9px 10px;
            border: 1px solid rgba(91,220,234,.20);
            border-radius: 10px;
            background: rgba(7,27,33,.52);
            color: #e5f8fa;
            font-size: .86rem;
            font-weight: 650;
            line-height: 1.25;
            letter-spacing: .01em;
            text-align: center;
            box-sizing: border-box;
            transition: transform .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease;
        }

            #dd-page .dd-technologies__item:hover {
                transform: translateY(-2px);
                border-color: rgba(69,220,237,.62);
                background: rgba(34,201,223,.12);
                box-shadow: 0 7px 18px rgba(0,0,0,.14);
            }

        #dd-page .dd-technologies__item--featured {
            border-color: rgba(65,221,237,.48);
            background: linear-gradient(135deg, rgba(34,201,223,.17), rgba(34,201,223,.07));
            color: #ffffff;
            font-size: .92rem;
            font-weight: 750;
        }

        #dd-page .dd-technologies__note {
            position: relative;
            z-index: 1;
            margin: 22px 0 0;
            padding: 13px 16px;
            border-left: 3px solid #39d1e4;
            border-radius: 0 10px 10px 0;
            background: rgba(5,22,27,.40);
            color: #c7e1e5;
            font-size: .9rem;
        }

        /* ---------------------------------------------------------
   Engagement cards
   --------------------------------------------------------- */

        #dd-page .dd-engagement-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 16px;
            margin-top: 24px;
        }

        #dd-page .dd-engagement-card {
            position: relative;
            min-height: 190px;
            padding: 58px 20px 20px;
            border: 1px solid #eadcc8;
            border-radius: 16px;
            background: rgba(255,255,255,.90);
            opacity: 1;
            transform: translateY(0);
            transition: opacity .55s var(--site-ease), transform .55s var(--site-ease), border-color .3s ease, box-shadow .3s ease;
            transition-delay: var(--animation-delay, 0ms);
        }

            #dd-page .dd-engagement-card:hover {
                transform: translateY(-5px);
                border-color: #dec196;
                box-shadow: var(--dd-shadow-hover);
            }

        #dd-page .dd-engagement-card__number {
            position: absolute;
            top: 18px;
            left: 20px;
            display: grid;
            width: 34px;
            height: 34px;
            place-items: center;
            border-radius: 10px;
            background: #fff1dc;
            color: #9b642a;
            font-size: 12px;
            font-weight: 850;
        }

        /* ---------------------------------------------------------
   Process
   --------------------------------------------------------- */

        #dd-page .dd-process-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 16px;
            margin-top: 24px;
        }

        #dd-page .dd-process-step {
            position: relative;
            min-height: 150px;
            padding: 21px 20px 19px 70px;
            border: 1px solid #d3e6ea;
            border-radius: 16px;
            background: rgba(255,255,255,.88);
            box-shadow: 0 7px 22px rgba(21,159,202,.045);
            opacity: 1;
            transform: translateY(0);
            transition: opacity .55s var(--site-ease), transform .55s var(--site-ease), box-shadow .3s ease, border-color .3s ease;
            transition-delay: var(--animation-delay, 0ms);
        }

            #dd-page .dd-process-step:hover {
                transform: translateY(-5px);
                border-color: #a9d5de;
                box-shadow: 0 16px 34px rgba(21,159,202,.11);
            }

        #dd-page .dd-process-step__number {
            position: absolute;
            top: 22px;
            left: 20px;
            display: grid;
            width: 42px;
            height: 42px;
            place-items: center;
            border-radius: 12px;
            background: linear-gradient(135deg, var(--site-primary-dark), var(--site-accent));
            color: #ffffff;
            font-size: 14px;
            font-weight: 850;
            box-shadow: 0 8px 18px rgba(21,159,202,.22);
            transition: transform .3s var(--site-ease), box-shadow .3s ease;
        }

        #dd-page .dd-process-step:hover .dd-process-step__number {
            transform: scale(1.08) rotate(-3deg);
            box-shadow: 0 11px 24px rgba(21,159,202,.27);
        }

        /* ---------------------------------------------------------
   Existing applications
   --------------------------------------------------------- */

        #dd-page .dd-existing-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 16px;
            margin-top: 24px;
        }

        #dd-page .dd-existing-card {
            position: relative;
            padding: 20px;
            border: 1px solid var(--site-border);
            border-radius: 16px;
            background: linear-gradient(145deg, #ffffff, #f7fbfc);
            opacity: 1;
            transform: translateY(0);
            transition: opacity .55s var(--site-ease), transform .55s var(--site-ease), border-color .3s ease, box-shadow .3s ease;
            transition-delay: var(--animation-delay, 0ms);
        }

            #dd-page .dd-existing-card:hover {
                transform: translateY(-5px);
                border-color: #c2dfe5;
                box-shadow: var(--dd-shadow-hover);
            }

        /* ---------------------------------------------------------
   Benefits
   --------------------------------------------------------- */

        #dd-page .dd-benefits-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 16px;
            margin-top: 26px;
        }

        #dd-page .dd-benefit {
            position: relative;
            min-height: 155px;
            padding: 20px 20px 18px 68px;
            border: 1px solid #d1e4e8;
            border-radius: 16px;
            background: rgba(255,255,255,.86);
            opacity: 1;
            transform: translateY(0);
            transition: opacity .55s var(--site-ease), transform .55s var(--site-ease), box-shadow .3s ease, border-color .3s ease;
            transition-delay: var(--animation-delay, 0ms);
        }

            #dd-page .dd-benefit:hover {
                transform: translateY(-5px);
                border-color: #b0d9e0;
                box-shadow: var(--dd-shadow-hover);
            }

        #dd-page .dd-benefit__number {
            position: absolute;
            top: 22px;
            left: 21px;
            display: grid;
            width: 36px;
            height: 36px;
            place-items: center;
            border-radius: 10px;
            background: linear-gradient(145deg, #e1f7fa, #d1eef2);
            color: var(--site-primary-dark);
            font-size: 12px;
            font-weight: 850;
        }

        /* ---------------------------------------------------------
   FAQ
   --------------------------------------------------------- */

        #dd-page .dd-faq {
            position: relative;
        }

        #dd-page #dd-faq {
            background: linear-gradient(135deg, #f7fbfc, #ffffff);
        }

        #dd-page .dd-faq__accordion {
            margin-top: 10px;
        }

        #dd-page .dd-faq__item {
            overflow: hidden;
            margin-bottom: 10px;
            border: 1px solid var(--site-border) !important;
            border-radius: 12px !important;
            background: #ffffff;
            transition: border-color .25s ease, box-shadow .25s ease;
        }

            #dd-page .dd-faq__item:hover {
                border-color: #bfdde3 !important;
                box-shadow: 0 8px 24px rgba(21,159,202,.08);
            }

            #dd-page .dd-faq__item .accordion-header {
                margin: 0;
            }

            #dd-page .dd-faq__item .accordion-button {
                padding: 18px 20px;
                color: var(--site-heading);
                background: #ffffff;
                font-size: 16px;
                font-weight: 700;
                line-height: 1.45;
                box-shadow: none;
            }

                #dd-page .dd-faq__item .accordion-button:not(.collapsed) {
                    color: var(--site-primary-dark);
                    background: #eefafd;
                    box-shadow: none;
                }

                #dd-page .dd-faq__item .accordion-button:focus {
                    border-color: transparent;
                    box-shadow: none;
                }

            #dd-page .dd-faq__item .accordion-body {
                padding: 0 20px 20px;
                color: var(--site-text);
                line-height: 1.75;
            }

        /* ---------------------------------------------------------
   Progressive reveal animation
   Content is visible by default. It is hidden only after the
   page JavaScript successfully enables reveal animation.
   --------------------------------------------------------- */

        #dd-page.dd-animate .dd-subsection,
        #dd-page.dd-animate .dd-technologies__group,
        #dd-page.dd-animate .dd-engagement-card,
        #dd-page.dd-animate .dd-process-step,
        #dd-page.dd-animate .dd-existing-card,
        #dd-page.dd-animate .dd-benefit {
            opacity: 0;
            transform: translateY(18px);
        }

            /* ---------------------------------------------------------
   Reveal state
   --------------------------------------------------------- */

            #dd-page.dd-animate .dd-subsection.is-visible,
            #dd-page.dd-animate .dd-technologies__group.is-visible,
            #dd-page.dd-animate .dd-engagement-card.is-visible,
            #dd-page.dd-animate .dd-process-step.is-visible,
            #dd-page.dd-animate .dd-existing-card.is-visible,
            #dd-page.dd-animate .dd-benefit.is-visible {
                opacity: 1;
                transform: translateY(0);
            }

        /* ---------------------------------------------------------
   Right sidebar — Frontend Developer-style
   --------------------------------------------------------- */

        #dd-page .page-sidebar {
            position: sticky;
            top: 105px;
            z-index: 10;
            align-self: start;
            overflow: visible;
            max-height: none;
            border: 1px solid #d5e3e7;
            border-radius: 22px;
            background: #ffffff;
            box-shadow: 0 18px 55px rgba(38,54,58,.09);
            animation: ddFadeUp .65s .08s var(--site-ease) both;
        }

        #dd-page .dd-hire-card {
            position: relative;
            z-index: 1;
            overflow: hidden;
            border-radius: 22px 22px 0 0;
            border-bottom: 1px solid #d7e8eb;
            background: #ffffff;
        }

            #dd-page .dd-hire-card::before {
                content: "";
                position: absolute;
                z-index: 5;
                top: 0;
                left: -55%;
                width: 32%;
                height: 115px;
                pointer-events: none;
                opacity: 0;
                transform: skewX(-20deg);
                background: linear-gradient( 90deg, transparent 0%, rgba(255,255,255,.04) 18%, rgba(255,255,255,.28) 50%, rgba(255,255,255,.05) 82%, transparent 100% );
            }

        #dd-page .page-sidebar:hover .dd-hire-card::before {
            opacity: 1;
            animation: ddHireShine .85s var(--site-ease) forwards;
        }

        #dd-page .dd-hire-card__top {
            position: relative;
            isolation: isolate;
            overflow: hidden;
            padding: 19px 22px 21px;
            background: radial-gradient(circle at 86% 8%, rgba(34,201,223,.20), transparent 32%), linear-gradient(135deg, #30383a 0%, #145f73 52%, #159fca 100%);
            color: #ffffff;
        }

            #dd-page .dd-hire-card__top::before {
                content: "";
                position: absolute;
                z-index: 2;
                top: 0;
                left: 22px;
                width: 64px;
                height: 4px;
                border-radius: 0 0 6px 6px;
                background: #22c9df;
            }

            #dd-page .dd-hire-card__top::after {
                content: "";
                position: absolute;
                z-index: 0;
                width: 180px;
                height: 180px;
                right: -72px;
                bottom: -115px;
                border: 1px solid rgba(255,255,255,.13);
                border-radius: 50%;
                box-shadow: 0 0 0 22px rgba(255,255,255,.025), 0 0 0 44px rgba(34,201,223,.035);
                pointer-events: none;
            }

        #dd-page .dd-hire-card__label {
            position: relative;
            z-index: 3;
            display: block;
            margin: 0 0 6px;
            color: rgba(255,255,255,.94);
            font-size: 15px;
            font-weight: 700;
            line-height: 1.3;
        }

        #dd-page .dd-hire-card__price-row {
            position: relative;
            z-index: 3;
            display: flex;
            align-items: flex-end;
            gap: 12px;
        }

        #dd-page .dd-hire-card__price {
            color: #ffffff;
            font-size: 44px;
            font-weight: 850;
            line-height: .9;
            letter-spacing: -.05em;
        }

        #dd-page .dd-hire-card__unit {
            padding-bottom: 5px;
            color: rgba(255,255,255,.92);
            font-size: 10px;
            font-weight: 850;
            line-height: 1.2;
            letter-spacing: .14em;
            text-transform: uppercase;
        }

        #dd-page .dd-hire-card__benefits {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            background: radial-gradient(circle at 100% 0%, rgba(34,201,223,.09), transparent 35%), #ffffff;
        }

        #dd-page .dd-hire-card__benefit {
            position: relative;
            display: flex;
            min-width: 0;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 6px;
            padding: 11px 5px;
            text-align: center;
        }

            #dd-page .dd-hire-card__benefit +
            .dd-hire-card__benefit::before {
                content: "";
                position: absolute;
                top: 20%;
                bottom: 20%;
                left: 0;
                width: 1px;
                background: #dce7ea;
            }

        #dd-page .dd-hire-card__icon {
            display: grid;
            width: 32px;
            height: 32px;
            place-items: center;
            border: 1px solid #ccebf0;
            border-radius: 10px;
            background: var(--dd-cyan-soft);
            color: var(--site-primary-dark);
            font-size: 14px;
            font-weight: 850;
            line-height: 1;
            transition: transform .25s var(--site-ease), border-color .25s ease, box-shadow .25s ease;
        }

        #dd-page .dd-hire-card__benefit:hover .dd-hire-card__icon {
            transform: translateY(-2px);
            border-color: #a9dce5;
            box-shadow: 0 7px 16px rgba(21,159,202,.10);
        }

        #dd-page .dd-hire-card__benefit > span {
            color: #39484d;
            font-size: 10px;
            font-weight: 700;
            line-height: 1.35;
        }

        #dd-page .dd-sidebar__related,
        #dd-page .dd-sidebar__capabilities,
        #dd-page .dd-sidebar__contact {
            padding: 20px 20px 18px;
        }

        #dd-page .dd-sidebar__related,
        #dd-page .dd-sidebar__capabilities {
            border-bottom: 1px solid #e8eff1;
        }

            #dd-page .dd-sidebar__related h2,
            #dd-page .dd-sidebar__capabilities h2,
            #dd-page .dd-sidebar__contact h2 {
                margin: 0 0 12px;
                color: var(--site-heading);
                font-size: 15px;
                font-weight: 760;
                line-height: 1.35;
            }

        #dd-page .dd-sidebar__related-link {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            padding: 11px 0;
            border-top: 1px solid #edf2f3;
            color: var(--site-text);
            text-decoration: none;
            transition: padding-left .28s var(--site-ease), color .25s ease;
        }

            #dd-page .dd-sidebar__related-link:first-of-type {
                border-top: 0;
            }

            #dd-page .dd-sidebar__related-link > span:first-child {
                min-width: 0;
            }

            #dd-page .dd-sidebar__related-link strong {
                display: block;
                margin-bottom: 2px;
                color: var(--site-heading);
                font-size: 12px;
                font-weight: 720;
                line-height: 1.35;
                transition: color .25s ease;
            }

            #dd-page .dd-sidebar__related-link small {
                display: block;
                color: var(--site-muted);
                font-size: 10px;
                line-height: 1.45;
            }

        #dd-page .dd-sidebar__arrow {
            flex: 0 0 auto;
            color: var(--site-primary-dark);
            font-size: 14px;
            transition: transform .28s var(--site-ease);
        }

        #dd-page .dd-sidebar__related-link:hover {
            padding-left: 4px;
        }

            #dd-page .dd-sidebar__related-link:hover strong {
                color: var(--site-primary-dark);
            }

            #dd-page .dd-sidebar__related-link:hover .dd-sidebar__arrow {
                transform: translateX(3px);
            }

        #dd-page .dd-sidebar__tags {
            display: flex;
            flex-wrap: wrap;
            gap: 7px;
        }

            #dd-page .dd-sidebar__tags span {
                padding: 6px 9px;
                border: 1px solid #cfe7ec;
                border-radius: 999px;
                background: #eef9fb;
                color: #36636f;
                font-size: 10px;
                font-weight: 700;
                line-height: 1.2;
                transition: transform .25s var(--site-ease), border-color .25s ease, background .25s ease, color .25s ease, box-shadow .25s ease;
            }

                #dd-page .dd-sidebar__tags span:hover {
                    transform: translateY(-2px);
                    border-color: #a9dce5;
                    background: #e4f6f9;
                    color: #087aa1;
                    box-shadow: 0 7px 16px rgba(21,159,202,.08);
                }

        #dd-page .dd-sidebar__contact {
            border-radius: 0 0 22px 22px;
            background: radial-gradient(circle at 100% 0%, rgba(34,201,223,.09), transparent 38%), #ffffff;
        }

            #dd-page .dd-sidebar__contact p {
                margin: 0 0 12px;
                color: var(--site-text);
                font-size: 12px;
                line-height: 1.6;
            }

        #dd-page .dd-sidebar__contact-links {
            display: grid;
            gap: 5px;
            margin-bottom: 13px;
        }

            #dd-page .dd-sidebar__contact-links a {
                width: fit-content;
                color: var(--site-primary-dark);
                font-size: 12px;
                font-weight: 650;
                line-height: 1.45;
                text-decoration: none;
                overflow-wrap: anywhere;
                transition: color .2s ease, transform .25s var(--site-ease);
            }

                #dd-page .dd-sidebar__contact-links a:hover {
                    color: var(--site-primary);
                    transform: translateX(3px);
                }

        #dd-page .dd-sidebar__contact-button {
            position: relative;
            display: inline-flex;
            width: 100%;
            min-height: 40px;
            overflow: hidden;
            isolation: isolate;
            align-items: center;
            justify-content: center;
            gap: 8px;
            padding: 9px 14px;
            border: 1px solid var(--site-primary);
            border-radius: 9px;
            background: linear-gradient(135deg, #159fca, #087aa1);
            color: #ffffff !important;
            font-size: 12px;
            font-weight: 750;
            line-height: 1.2;
            text-decoration: none;
            box-shadow: 0 8px 18px rgba(21,159,202,.14);
            transition: transform .28s var(--site-ease), box-shadow .28s ease;
        }

            #dd-page .dd-sidebar__contact-button::before {
                content: "";
                position: absolute;
                top: 0;
                left: -120%;
                width: 70%;
                height: 100%;
                background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
                transform: skewX(-18deg);
                transition: left .65s var(--site-ease);
                pointer-events: none;
            }

            #dd-page .dd-sidebar__contact-button:hover::before {
                left: 135%;
            }

            #dd-page .dd-sidebar__contact-button:hover {
                transform: translateY(-3px);
                box-shadow: 0 14px 28px rgba(21,159,202,.22);
            }

            #dd-page .dd-sidebar__contact-button:active {
                transform: translateY(-1px);
            }

            #dd-page .dd-sidebar__contact-button > span {
                position: relative;
                z-index: 1;
                transition: transform .28s var(--site-ease);
            }

            #dd-page .dd-sidebar__contact-button:hover > span {
                transform: translateX(2px);
            }

/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width: 1180px) {
    #dd-page .dd-technologies__grid,
    #dd-page .dd-engagement-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Match the shared single-column layout: release sticky sidebar on tablets. */
@media (max-width: 960px) {
    #dd-page .page-sidebar {
        position: relative;
        top: auto;
        z-index: 1;
        width: 100%;
        max-height: none;
        align-self: stretch;
        order: 2;
    }
}

@media (max-width: 720px) {
    #dd-page .page-hero-image {
        margin-left: 22px;
        margin-right: 22px;
    }

    #dd-page .dd-subgrid,
    #dd-page .dd-technologies__grid,
    #dd-page .dd-engagement-grid,
    #dd-page .dd-process-grid,
    #dd-page .dd-existing-grid,
    #dd-page .dd-benefits-grid {
        grid-template-columns: 1fr;
    }

    #dd-page .page-main,
    #dd-page .page-sidebar,
    #dd-page .dd-subsection,
    #dd-page .dd-technologies__group,
    #dd-page .dd-engagement-card,
    #dd-page .dd-process-step,
    #dd-page .dd-existing-card,
    #dd-page .dd-benefit {
        min-width: 0;
        max-width: 100%;
    }

    #dd-page .page-description,
    #dd-page .page-section p,
    #dd-page .page-section h3,
    #dd-page .dd-sidebar__related-link strong,
    #dd-page .dd-sidebar__related-link small,
    #dd-page .dd-sidebar__contact-links a {
        overflow-wrap: anywhere;
    }
}

@media (max-width: 480px) {
    #dd-page .page-hero-image {
        margin-left: 16px;
        margin-right: 16px;
        border-radius: 14px;
    }

    #dd-page .page-main,
    #dd-page .page-sidebar {
        border-radius: 18px;
    }

    #dd-page .dd-subsection,
    #dd-page .dd-engagement-card,
    #dd-page .dd-existing-card,
    #dd-page .dd-process-step,
    #dd-page .dd-benefit {
        padding: 18px;
    }

    #dd-page .dd-process-step,
    #dd-page .dd-benefit {
        padding-left: 64px;
    }

    #dd-page .dd-hire-card {
        border-radius: 18px 18px 0 0;
    }

    #dd-page .dd-hire-card__top {
        padding: 18px 17px 20px;
    }

        #dd-page .dd-hire-card__top::before {
            left: 17px;
        }

    #dd-page .dd-hire-card__price {
        font-size: clamp(34px, 10vw, 40px);
    }

    #dd-page .dd-hire-card__price-row {
        flex-wrap: wrap;
        row-gap: 7px;
    }

    #dd-page .dd-hire-card__benefits {
        grid-template-columns: 1fr;
    }

    #dd-page .dd-hire-card__benefit {
        min-height: 66px;
        padding: 10px 12px;
    }

        #dd-page .dd-hire-card__benefit +
        #dd-page .dd-hire-card__benefit::before {
            top: 0;
            right: 16px;
            bottom: auto;
            left: 16px;
            width: auto;
            height: 1px;
        }

        #dd-page .dd-hire-card__benefit > span {
            font-size: 10px;
        }

    #dd-page .dd-sidebar__related,
    #dd-page .dd-sidebar__capabilities,
    #dd-page .dd-sidebar__contact {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* ---------------------------------------------------------
   Motion
   --------------------------------------------------------- */

@keyframes ddFadeUp {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes ddTitleIn {
    from {
        opacity: 0;
        transform: translateY(22px) scale(.985);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes ddTextIn {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes ddHireShine {
    from {
        left: -55%;
    }

    to {
        left: 125%;
    }
}

@media (prefers-reduced-motion: reduce) {
    #dd-page .page-hero-image img {
        transition: none !important;
    }


    #dd-page *,
    #dd-page *::before,
    #dd-page *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }

    #dd-page .dd-subsection,
    #dd-page .dd-technologies__group,
    #dd-page .dd-engagement-card,
    #dd-page .dd-process-step,
    #dd-page .dd-existing-card,
    #dd-page .dd-benefit {
        opacity: 1;
        transform: none;
        transition-delay: 0ms;
    }

    #dd-page .page-sidebar:hover .dd-hire-card::before {
        animation: none;
        opacity: 0;
    }
}

/* Component overflow protection */
#dd-page .dd-technologies__grid, #dd-page .dd-engagement-grid, #dd-page .dd-subgrid, #dd-page .dd-process-grid, #dd-page .dd-existing-grid, #dd-page .dd-benefits-grid {
    min-width: 0;
}

#dd-page .dd-technologies__group, #dd-page .dd-technologies__item {
    min-width: 0;
    overflow-wrap: anywhere;
}
