/* =========================================================
   ABOUT US — CLEAN PAGE CSS
   No GSAP / no page-specific JavaScript required.
   ========================================================= */

.dgav3-page,
.dgav3-page *{
    box-sizing:border-box;
}

.dgav3-page{
    --pink:#ed08cf;
    --purple:#8a2cff;
    --blue:#078ff5;
    --navy:#071432;
    --text:#586782;

    width:100%;
    overflow:hidden;
    color:var(--navy);
    background:#fff;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:16px;
}

.dgav3-shell{
    width:min(1440px,calc(100% - 72px));
    margin:0 auto;
}

.dgav3-gradient{
    color:transparent;
    background:linear-gradient(92deg,var(--pink),var(--purple) 45%,var(--blue));
    -webkit-background-clip:text;
    background-clip:text;
}

.dgav3-kicker{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 0 16px;
    color:#4a68c7;
    font-size:11px;
    line-height:1;
    font-weight:800;
    letter-spacing:.22em;
    text-transform:uppercase;
}

.dgav3-kicker::before{
    content:"";
    width:42px;
    height:2px;
    flex:0 0 42px;
    border-radius:99px;
    background:linear-gradient(90deg,var(--pink),var(--blue));
}

.dgav3-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:22px;
}

.dgav3-btn{
    min-height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:13px;
    padding:0 28px;
    border-radius:12px;
    color:#fff!important;
    text-decoration:none!important;
    background:linear-gradient(100deg,var(--pink),var(--purple) 48%,var(--blue));
    box-shadow:0 14px 30px rgba(90,54,218,.18);
    font-size:14px;
    font-weight:700;
    transition:transform .28s ease,box-shadow .28s ease;
}

.dgav3-btn:hover{
    transform:translateY(-3px);
    box-shadow:0 20px 38px rgba(90,54,218,.24),0 0 28px rgba(0,157,248,.1);
}

.dgav3-btn svg,
.dgav3-phone svg{
    width:19px;
    height:19px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.dgav3-phone{
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:#111b38!important;
    text-decoration:none!important;
    font-size:14px;
    font-weight:700;
}

.dgav3-phone__icon{
    width:45px;
    height:45px;
    display:grid;
    place-items:center;
    border:1px solid #dce6f5;
    border-radius:50%;
    color:var(--blue);
    background:#fff;
    box-shadow:0 8px 22px rgba(26,51,104,.07);
    transition:transform .28s ease,box-shadow .28s ease;
}

.dgav3-phone:hover .dgav3-phone__icon{
    transform:translateY(-2px) rotate(-5deg);
    box-shadow:0 12px 28px rgba(26,51,104,.11);
}


/* HERO */
.dgav3-hero{
    position:relative;
    isolation:isolate;
    padding:80px 0 48px;
    background:
        radial-gradient(circle at 87% 18%,rgba(26,157,255,.10),transparent 24%),
        radial-gradient(circle at 70% 58%,rgba(235,12,207,.06),transparent 27%),
        linear-gradient(118deg,#fff 0%,#fdfdff 56%,#f5f9ff 100%);
}

.dgav3-hero::before{
    content:"";
    position:absolute;
    z-index:-1;
    left:-250px;
    top:-240px;
    width:470px;
    height:470px;
    border:2px solid rgba(121,76,255,.13);
    border-radius:50%;
    box-shadow:0 0 0 62px rgba(31,147,249,.025),0 0 0 124px rgba(235,10,207,.018);
}

.dgav3-hero::after{
    content:"";
    position:absolute;
    z-index:-1;
    right:6%;
    top:9%;
    width:115px;
    height:115px;
    opacity:.25;
    background-image:radial-gradient(circle,rgba(47,145,244,.9) 1.5px,transparent 1.8px);
    background-size:15px 15px;
    animation:dgav3-dots 7s ease-in-out infinite;
}

.dgav3-hero__grid{
    display:grid;
    grid-template-columns:minmax(520px,.98fr) minmax(500px,1.02fr);
    align-items:center;
    gap:54px;
}

.dgav3-breadcrumb{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:24px;
    color:#8390a7;
    font-size:12px;
    font-weight:600;
}

.dgav3-breadcrumb a{
    color:#6074a3!important;
    text-decoration:none!important;
}

.dgav3-hero__title{
    max-width:720px;
    margin:0 0 22px;
    color:var(--navy);
    font-size:clamp(48px,4.6vw,72px);
    line-height:.98;
    font-weight:700;
    letter-spacing:-.055em;
}

.dgav3-hero__copy{
    max-width:680px;
    margin:0 0 28px;
    color:var(--text);
    font-size:16px;
    line-height:1.75;
}

.dgav3-hero__visual{
    position:relative;
    min-height:585px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.dgav3-hero__visual::before{
    content:"";
    position:absolute;
    z-index:0;
    width:78%;
    aspect-ratio:1;
    border-radius:50%;
    background:
        radial-gradient(circle at 35% 30%,rgba(237,8,207,.23),transparent 32%),
        radial-gradient(circle at 70% 38%,rgba(0,155,248,.25),transparent 38%),
        radial-gradient(circle at 54% 72%,rgba(128,45,255,.13),transparent 48%);
    filter:blur(35px);
}

.dgav3-hero__image{
    position:relative;
    z-index:2;
    width:100%;
    max-width:650px;
    height:auto;
    display:block;
    object-fit:contain;
    filter:drop-shadow(0 28px 38px rgba(18,37,91,.13));
    animation:dgav3-float 6s ease-in-out infinite;
}

.dgav3-hero__orb{
    position:absolute;
    z-index:3;
    border-radius:50%;
    background:radial-gradient(circle at 30% 25%,#fff 0 3%,#36dcff 10%,#168cf5 36%,#5b34ee 60%,#eb0bd0 100%);
    box-shadow:inset -6px -8px 14px rgba(38,24,115,.18),0 12px 26px rgba(89,54,219,.14);
}

.dgav3-hero__orb--one{
    width:34px;
    height:34px;
    left:5%;
    top:30%;
    animation:dgav3-orb 5.5s ease-in-out infinite;
}

.dgav3-hero__orb--two{
    width:50px;
    height:50px;
    right:2%;
    bottom:22%;
    animation:dgav3-orb 6.5s ease-in-out infinite reverse;
}


/* BENEFITS */
.dgav3-benefits{
    position:relative;
    z-index:4;
    margin-top:-12px;
    padding-bottom:76px;
}

.dgav3-benefits__grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}

.dgav3-benefit{
    position:relative;
    min-height:112px;
    display:grid;
    grid-template-columns:52px 1fr;
    align-items:center;
    gap:14px;
    padding:20px;
    overflow:hidden;
    border:1px solid rgba(104,128,179,.12);
    border-radius:16px;
    background:linear-gradient(145deg,#fff,#f8fbff);
    box-shadow:0 13px 30px rgba(26,48,99,.055);
    transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
}

.dgav3-benefit::after{
    content:"";
    position:absolute;
    right:-38px;
    bottom:-50px;
    width:110px;
    height:110px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(34,145,245,.13),rgba(233,8,208,.04) 48%,transparent 70%);
}

.dgav3-benefit:hover{
    transform:translateY(-5px);
    border-color:rgba(89,106,232,.2);
    box-shadow:0 20px 40px rgba(26,48,99,.085);
}

.dgav3-benefit__icon{
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border-radius:15px;
    color:#fff;
    background:linear-gradient(135deg,var(--pink),var(--purple) 50%,var(--blue));
    box-shadow:0 10px 22px rgba(101,54,224,.17);
    transition:transform .3s ease;
}

.dgav3-benefit:hover .dgav3-benefit__icon{
    transform:translateY(-3px) rotate(-4deg);
}

.dgav3-benefit__icon svg{
    width:25px;
    height:25px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.dgav3-benefit strong{
    display:block;
    margin-bottom:5px;
    color:#0d1939;
    font-size:16px;
    line-height:1.2;
    font-weight:700;
}

.dgav3-benefit p{
    margin:0;
    color:#687790;
    font-size:16px;
    line-height:1.45;
}


/* APPROACH */
.dgav3-approach{
    position:relative;
    padding:92px 0 86px;
    background:#fff;
}

.dgav3-approach::before{
    content:"";
    position:absolute;
    left:-180px;
    bottom:-250px;
    width:390px;
    height:390px;
    border:2px solid rgba(71,126,238,.11);
    border-radius:50%;
    box-shadow:0 0 0 55px rgba(128,53,255,.025),0 0 0 110px rgba(237,8,207,.015);
}

.dgav3-approach__top{
    display:grid;
    grid-template-columns:minmax(410px,.78fr) minmax(520px,1.22fr);
    gap:72px;
    align-items:center;
    margin-bottom:58px;
}

.dgav3-approach__visual{
    position:relative;
}

.dgav3-approach__image{
    width:100%;
    display:block;
    border-radius:24px;
    box-shadow:0 25px 55px rgba(22,45,94,.12);
}

.dgav3-approach__badge{
    position:absolute;
    left:7%;
    bottom:-22px;
    min-width:190px;
    display:flex;
    align-items:center;
    gap:13px;
    padding:16px 18px;
    border:1px solid rgba(111,135,183,.13);
    border-radius:16px;
    background:rgba(255,255,255,.95);
    box-shadow:0 17px 40px rgba(21,44,91,.13);
    backdrop-filter:blur(10px);
}

.dgav3-approach__badge-icon{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#fff;
    background:linear-gradient(135deg,var(--pink),var(--purple),var(--blue));
}

.dgav3-approach__badge-icon svg,
.dgav3-step__icon svg{
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.dgav3-approach__badge-icon svg{
    width:25px;
    height:25px;
}

.dgav3-approach__badge strong{
    display:block;
    color:#0c1736;
    font-size:22px;
    line-height:1;
    font-weight:700;
}

.dgav3-approach__badge small{
    display:block;
    margin-top:4px;
    color:#6a7892;
    font-size:13px;
}

.dgav3-approach__copy h2{
    max-width:750px;
    margin:0 0 18px;
    color:var(--navy);
    font-size:clamp(40px,3.9vw,60px);
    line-height:.98;
    font-weight:700;
    letter-spacing:-.045em;
}

.dgav3-approach__copy p{
    max-width:710px;
    margin:0 0 27px;
    color:var(--text);
    font-size:16px;
    line-height:1.75;
}


/* PROCESS */
.dgav3-process{
    position:relative;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:26px;
}

.dgav3-process::before{
    content:"";
    position:absolute;
    left:10%;
    right:10%;
    top:32px;
    height:1px;
    background:linear-gradient(90deg,rgba(235,8,208,.25),rgba(102,55,241,.24),rgba(7,143,245,.25));
}

.dgav3-step{
    position:relative;
    z-index:2;
    padding:0 18px;
}

.dgav3-step__top{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:18px;
}

.dgav3-step__icon{
    width:64px;
    height:64px;
    display:grid;
    place-items:center;
    flex:0 0 64px;
    border:1px solid rgba(108,125,178,.12);
    border-radius:20px;
    color:#6433ee;
    background:linear-gradient(145deg,#fff,#f2f7ff);
    box-shadow:0 12px 27px rgba(32,56,108,.075);
    transition:transform .3s ease,box-shadow .3s ease;
}

.dgav3-step:hover .dgav3-step__icon{
    transform:translateY(-4px);
    box-shadow:0 18px 35px rgba(32,56,108,.11);
}

.dgav3-step__icon svg{
    width:28px;
    height:28px;
}

.dgav3-step__line{
    width:100%;
    height:1px;
    background:linear-gradient(90deg,rgba(103,75,241,.28),rgba(8,143,246,.08));
}

.dgav3-step__number{
    display:block;
    margin-bottom:7px;
    color:#5066c0;
    font-size:20px;
    font-weight:800;
    letter-spacing:.08em;
}

.dgav3-step h3{
    margin:0 0 8px;
    color:#0c1837;
    font-size:21px;
    line-height:1.15;
    font-weight:700;
}

.dgav3-step p{
    max-width:340px;
    margin:0;
    color:#68768e;
    font-size:16px;
    line-height:1.6;
}


/* CTA */
.dgav3-cta{
    min-height:390px;
    display:flex;
    align-items:center;
    background:
        linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.88) 42%,rgba(255,255,255,.25) 72%,rgba(255,255,255,.08) 100%),
        url("../images/about-bg.png") center/cover no-repeat;
}

.dgav3-cta__inner{
    width:min(720px,55%);
    padding:72px 0;
}

.dgav3-cta__eyebrow{
    margin-bottom:12px;
    color:#546aca;
    font-size:11px;
    line-height:1;
    font-weight:800;
    letter-spacing:.22em;
    text-transform:uppercase;
}

.dgav3-cta h2{
    margin:0 0 16px;
    color:var(--navy);
    font-size:clamp(42px,4.2vw,64px);
    line-height:.98;
    font-weight:700;
    letter-spacing:-.047em;
}

.dgav3-cta p{
    max-width:610px;
    margin:0 0 24px;
    color:var(--text);
    font-size:16px;
    line-height:1.65;
}


/* CSS-ONLY ANIMATIONS */
@keyframes dgav3-float{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-10px)}
}

@keyframes dgav3-orb{
    0%,100%{transform:translate3d(0,0,0) scale(1)}
    50%{transform:translate3d(10px,-14px,0) scale(1.05)}
}

@keyframes dgav3-dots{
    0%,100%{transform:translate3d(0,0,0)}
    50%{transform:translate3d(12px,-9px,0)}
}


/* RESPONSIVE */
@media (max-width:1200px){
    .dgav3-shell{
        width:min(1120px,calc(100% - 46px));
    }

    .dgav3-hero__grid{
        grid-template-columns:minmax(440px,.95fr) minmax(430px,1.05fr);
        gap:30px;
    }

    .dgav3-hero__visual{
        min-height:520px;
    }

    .dgav3-approach__top{
        grid-template-columns:minmax(360px,.8fr) minmax(470px,1.2fr);
        gap:45px;
    }
}

@media (max-width:900px){
    .dgav3-hero{
        padding-top:60px;
    }

    .dgav3-hero__grid,
    .dgav3-approach__top{
        grid-template-columns:1fr;
    }

    .dgav3-hero__visual{
        min-height:auto;
    }

    .dgav3-hero__image{
        max-width:700px;
    }

    .dgav3-benefits__grid{
        grid-template-columns:repeat(2,1fr);
    }

    .dgav3-approach{
        padding-top:75px;
    }

    .dgav3-approach__visual{
        max-width:720px;
    }

    .dgav3-process{
        grid-template-columns:1fr;
        gap:28px;
    }

    .dgav3-process::before{
        display:none;
    }

    .dgav3-step{
        display:grid;
        grid-template-columns:76px 1fr;
        column-gap:18px;
        padding:0;
    }

    .dgav3-step__top{
        grid-row:1 / span 3;
        margin:0;
    }

    .dgav3-step__line{
        display:none;
    }

    .dgav3-cta{
        min-height:360px;
        background-position:64% center;
    }

    .dgav3-cta__inner{
        width:min(650px,70%);
    }
}

@media (max-width:620px){
    .dgav3-shell{
        width:calc(100% - 28px);
    }

    .dgav3-hero{
        padding:44px 0 36px;
    }

    .dgav3-hero__title{
        font-size:43px;
    }

    .dgav3-actions{
        align-items:flex-start;
        flex-direction:column;
    }

    .dgav3-benefits{
        padding-bottom:58px;
    }

    .dgav3-benefits__grid{
        grid-template-columns:1fr;
    }

    .dgav3-approach{
        padding:62px 0;
    }

    .dgav3-approach__copy h2{
        font-size:39px;
    }

    .dgav3-approach__badge{
        left:5%;
        bottom:-18px;
    }

    .dgav3-step{
        grid-template-columns:64px 1fr;
    }

    .dgav3-step__icon{
        width:56px;
        height:56px;
        flex-basis:56px;
        border-radius:16px;
    }

    .dgav3-cta{
        min-height:auto;
        background:
            linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.84)),
            url("../images/about-bg.png") center/cover no-repeat;
    }

    .dgav3-cta__inner{
        width:100%;
        padding:60px 0;
    }

    .dgav3-cta h2{
        font-size:40px;
    }
}

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