/* ==========================================================
   ADGRO MEDIA — PROMOTIONAL & DISPLAY MATERIALS
   File: promotional-display-materials.css
   Theme: Purple / Pink / Black
   ========================================================== */

:root{
    --adgro-purple:#76245d;
    --adgro-purple-dark:#3d1230;
    --adgro-purple-light:#a94487;
    --adgro-pink:#d66ca9;
    --adgro-black:#08070a;
    --adgro-black-soft:#151116;
    --adgro-white:#ffffff;
    --adgro-bg:#f7f4f7;
    --adgro-border:#e8dfe6;
    --adgro-text:#241e23;
    --adgro-muted:#756b72;
    --adgro-shadow:0 15px 45px rgba(64,25,51,.08);
    --adgro-shadow-lg:0 25px 70px rgba(61,18,48,.17);
    --adgro-radius:22px;
    --adgro-transition:all .35s ease;
}

body{
    color:var(--adgro-text);
    background:#fff;
    overflow-x:hidden;
}

/* ==========================================================
   HERO
   ========================================================== */

.pdm-hero{
    position:relative;
    overflow:hidden;
    padding:0 0 100px;
    color:#fff;
    background:
        radial-gradient(circle at 85% 15%,rgba(214,108,169,.24),transparent 28%),
        radial-gradient(circle at 10% 90%,rgba(169,68,135,.14),transparent 30%),
        linear-gradient(135deg,var(--adgro-black),var(--adgro-purple-dark) 55%,var(--adgro-purple));
}

.pdm-hero::after{
    content:"";
    position:absolute;
    inset:0;
    opacity:.09;
    background-image:radial-gradient(
        rgba(255,255,255,.7) 1px,
        transparent 1px
    );
    background-size:30px 30px;
    pointer-events:none;
}

.pdm-hero .container{
    position:relative;
    z-index:3;
}

.pdm-hero-shape{
    position:absolute;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.08);
    pointer-events:none;
}

.shape-one{
    width:550px;
    height:550px;
    right:-270px;
    top:-100px;
    box-shadow:
        0 0 0 45px rgba(255,255,255,.025),
        0 0 0 95px rgba(255,255,255,.015);
}

.shape-two{
    width:260px;
    height:260px;
    left:-150px;
    bottom:-150px;
    border-color:rgba(214,108,169,.12);
}

/* ==========================================================
   BREADCRUMB
   ========================================================== */

.pdm-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    padding:24px 0 48px;
    color:rgba(255,255,255,.6);
    font-size:.88rem;
}

.pdm-breadcrumb a{
    color:rgba(255,255,255,.8);
    text-decoration:none;
    font-weight:650;
}

.pdm-breadcrumb a:hover{
    color:var(--adgro-pink);
}

.pdm-breadcrumb i{
    color:var(--adgro-pink);
    font-size:.7rem;
}

.pdm-breadcrumb span{
    color:rgba(255,255,255,.94);
}

/* ==========================================================
   HERO CONTENT
   ========================================================== */

.pdm-kicker{
    display:inline-block;
    margin-bottom:18px;
    padding-left:14px;
    border-left:4px solid var(--adgro-pink);
    color:rgba(255,255,255,.94);
    font-size:.76rem;
    font-weight:850;
    letter-spacing:2px;
    line-height:1.4;
}

.pdm-hero h1{
    max-width:800px;
    margin:0 0 22px;
    color:#fff;
    font-size:clamp(2.8rem,5.5vw,5rem);
    font-weight:900;
    line-height:1.04;
    letter-spacing:-1.5px;
}

.pdm-hero h1 strong{
    color:var(--adgro-pink);
}

.pdm-hero-text{
    max-width:700px;
    margin:0;
    color:rgba(255,255,255,.78);
    font-size:1.08rem;
    line-height:1.8;
}

/* ==========================================================
   HERO BUTTONS
   ========================================================== */

.pdm-hero-buttons{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:30px;
}

.pdm-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:50px;
    padding:13px 24px;
    border-radius:10px;
    color:#fff;
    font-weight:800;
    text-decoration:none;
    transition:var(--adgro-transition);
}

.pdm-btn-primary{
    background:var(--adgro-purple);
    border:2px solid var(--adgro-purple);
}

.pdm-btn-primary:hover{
    color:#fff;
    background:var(--adgro-purple-light);
    border-color:var(--adgro-purple-light);
    transform:translateY(-3px);
}

.pdm-btn-whatsapp{
    background:#22c55e;
    border:2px solid #22c55e;
}

.pdm-btn-whatsapp:hover{
    color:#fff;
    background:#16a34a;
    border-color:#16a34a;
    transform:translateY(-3px);
}

/* ==========================================================
   HERO VISUAL
   ========================================================== */

.pdm-hero-visual{
    position:relative;
    min-height:455px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.pdm-visual-glow{
    position:absolute;
    width:270px;
    height:270px;
    border-radius:50%;
    background:rgba(214,108,169,.17);
    filter:blur(45px);
}

/* Standee */

.pdm-standee{
    position:relative;
    z-index:4;
    width:235px;
    height:350px;
    padding:14px;
    border-radius:8px 8px 5px 5px;
    background:linear-gradient(145deg,#fff,#f2edf1);
    box-shadow:
        0 35px 60px rgba(0,0,0,.32),
        0 0 0 1px rgba(255,255,255,.2);
    transform:perspective(900px) rotateY(-7deg);
}

.pdm-standee::before{
    content:"";
    position:absolute;
    left:50%;
    bottom:-30px;
    width:120px;
    height:35px;
    transform:translateX(-50%);
    border-radius:0 0 50% 50%;
    background:#211b20;
    box-shadow:0 8px 15px rgba(0,0,0,.25);
}

.pdm-standee::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-17px;
    width:70px;
    height:18px;
    transform:translateX(-50%);
    border-radius:50%;
    background:#3c3238;
}

.pdm-standee-top{
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    padding:7px 8px 12px;
    border-bottom:2px solid var(--adgro-purple);
}

.pdm-standee-top span{
    color:var(--adgro-purple);
    font-size:1rem;
    font-weight:950;
    letter-spacing:1px;
}

.pdm-standee-top small{
    color:var(--adgro-muted);
    font-size:.52rem;
    font-weight:800;
    letter-spacing:1px;
}

.pdm-standee-content{
    height:255px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    text-align:center;
    background:
        radial-gradient(circle at 50% 30%,rgba(214,108,169,.16),transparent 35%),
        linear-gradient(180deg,#fff,#faf7f9);
}

.pdm-standee-content i{
    width:58px;
    height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:8px;
    border-radius:16px;
    color:#fff;
    background:linear-gradient(
        135deg,
        var(--adgro-purple),
        var(--adgro-purple-light)
    );
    font-size:1.5rem;
}

.pdm-standee-content strong{
    color:var(--adgro-black);
    font-size:1.5rem;
    font-weight:950;
    letter-spacing:1px;
}

.pdm-standee-content span{
    color:var(--adgro-purple);
    font-size:.85rem;
    font-weight:850;
    letter-spacing:2px;
}

.pdm-standee-bottom{
    padding:12px 5px 7px;
    color:var(--adgro-purple-dark);
    text-align:center;
    font-size:.52rem;
    font-weight:900;
    letter-spacing:1px;
}

/* Floating cards */

.pdm-floating-card{
    position:absolute;
    z-index:6;
    display:flex;
    align-items:center;
    gap:9px;
    padding:11px 15px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:13px;
    color:#fff;
    background:rgba(255,255,255,.08);
    box-shadow:0 15px 35px rgba(0,0,0,.25);
    backdrop-filter:blur(10px);
    font-size:.8rem;
    font-weight:800;
}

.pdm-floating-card i{
    color:var(--adgro-pink);
}

.pdm-card-one{
    top:19%;
    left:3%;
    animation:pdmFloat 4s ease-in-out infinite;
}

.pdm-card-two{
    top:28%;
    right:0;
    animation:pdmFloat 4.7s ease-in-out infinite .4s;
}

.pdm-card-three{
    bottom:19%;
    left:2%;
    animation:pdmFloat 4.5s ease-in-out infinite .8s;
}

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

/* ==========================================================
   SECTION HEADINGS
   ========================================================== */

.pdm-intro{
    padding:95px 0;
    background:#fff;
}

.pdm-section-heading{
    max-width:850px;
    margin:0 auto 50px;
}

.pdm-section-heading > span{
    display:inline-block;
    margin-bottom:12px;
    color:var(--adgro-purple);
    font-size:.76rem;
    font-weight:850;
    letter-spacing:2px;
}

.pdm-section-heading h2{
    margin:0 0 16px;
    color:var(--adgro-black);
    font-size:clamp(2.1rem,4vw,3.2rem);
    font-weight:900;
    line-height:1.12;
}

.pdm-section-heading h2 strong{
    color:var(--adgro-purple);
}

.pdm-section-heading p{
    max-width:720px;
    margin:0 auto;
    color:var(--adgro-muted);
    font-size:1.04rem;
    line-height:1.7;
}

/* ==========================================================
   SERVICE CARDS
   ========================================================== */

.pdm-service-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
}

.pdm-service-card{
    position:relative;
    min-height:325px;
    overflow:hidden;
    padding:35px 30px 30px;
    border:1px solid var(--adgro-border);
    border-radius:var(--adgro-radius);
    background:#fff;
    box-shadow:0 8px 28px rgba(64,25,51,.045);
    transition:var(--adgro-transition);
}

.pdm-service-card::before{
    content:"";
    position:absolute;
    width:160px;
    height:160px;
    right:-90px;
    bottom:-90px;
    border-radius:50%;
    background:rgba(214,108,169,.065);
    transition:var(--adgro-transition);
}

.pdm-service-card:hover{
    transform:translateY(-9px);
    border-color:rgba(118,36,93,.3);
    box-shadow:var(--adgro-shadow);
}

.pdm-service-card:hover::before{
    transform:scale(1.7);
}

.pdm-service-number{
    position:absolute;
    top:19px;
    right:22px;
    color:#e8dfe6;
    font-size:2.8rem;
    font-weight:900;
    line-height:1;
}

.pdm-service-icon{
    position:relative;
    z-index:2;
    width:60px;
    height:60px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:22px;
    border-radius:16px;
    color:var(--adgro-purple);
    background:rgba(118,36,93,.09);
    font-size:1.4rem;
    transition:var(--adgro-transition);
}

.pdm-service-card:hover .pdm-service-icon{
    color:#fff;
    background:linear-gradient(
        135deg,
        var(--adgro-purple),
        var(--adgro-purple-light)
    );
    transform:scale(1.06);
}

.pdm-service-card h3{
    position:relative;
    z-index:2;
    margin:0 0 12px;
    color:var(--adgro-black);
    font-size:1.28rem;
    font-weight:850;
}

.pdm-service-card p{
    position:relative;
    z-index:2;
    min-height:105px;
    margin:0 0 22px;
    color:var(--adgro-muted);
    font-size:.92rem;
    line-height:1.65;
}

.pdm-service-card > a{
    position:relative;
    z-index:3;
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--adgro-purple);
    font-weight:800;
    text-decoration:none;
    transition:var(--adgro-transition);
}

.pdm-service-card > a:hover{
    gap:12px;
    color:var(--adgro-purple-dark);
}

/* ==========================================================
   APPLICATIONS
   ========================================================== */

.pdm-applications{
    padding:95px 0;
    background:var(--adgro-bg);
}

.pdm-application-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
}

.pdm-application-card{
    position:relative;
    overflow:hidden;
    min-height:260px;
    padding:32px 28px;
    border:1px solid var(--adgro-border);
    border-radius:20px;
    background:#fff;
    box-shadow:0 8px 25px rgba(64,25,51,.04);
    transition:var(--adgro-transition);
}

.pdm-application-card::after{
    content:"";
    position:absolute;
    width:140px;
    height:140px;
    right:-75px;
    bottom:-75px;
    border-radius:50%;
    background:rgba(118,36,93,.055);
    transition:var(--adgro-transition);
}

.pdm-application-card:hover{
    transform:translateY(-8px);
    border-color:rgba(118,36,93,.25);
    box-shadow:var(--adgro-shadow);
}

.pdm-application-card:hover::after{
    transform:scale(1.5);
}

.pdm-application-icon{
    position:relative;
    z-index:2;
    width:58px;
    height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
    border-radius:16px;
    color:var(--adgro-purple);
    background:rgba(118,36,93,.09);
    font-size:1.4rem;
    transition:var(--adgro-transition);
}

.pdm-application-card:hover .pdm-application-icon{
    color:#fff;
    background:linear-gradient(
        135deg,
        var(--adgro-purple),
        var(--adgro-purple-light)
    );
}

.pdm-application-card h3{
    position:relative;
    z-index:2;
    margin:0 0 10px;
    color:var(--adgro-black);
    font-size:1.18rem;
    font-weight:850;
}

.pdm-application-card p{
    position:relative;
    z-index:2;
    margin:0;
    color:var(--adgro-muted);
    font-size:.92rem;
    line-height:1.65;
}

/* ==========================================================
   VISIBILITY SECTION
   ========================================================== */

.pdm-visibility{
    position:relative;
    overflow:hidden;
    padding:100px 0;
    color:#fff;
    background:
        radial-gradient(circle at 88% 15%,rgba(214,108,169,.18),transparent 28%),
        linear-gradient(135deg,var(--adgro-black),var(--adgro-black-soft));
}

.pdm-visibility::before{
    content:"";
    position:absolute;
    inset:0;
    opacity:.11;
    background-image:radial-gradient(
        rgba(255,255,255,.5) 1px,
        transparent 1px
    );
    background-size:30px 30px;
}

.pdm-visibility .container{
    position:relative;
    z-index:2;
}

.pdm-visibility-visual{
    position:relative;
    min-height:440px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.1);
    border-radius:28px;
    background:
        radial-gradient(circle at center,
        rgba(118,36,93,.32),
        rgba(255,255,255,.025) 50%,
        rgba(0,0,0,.12));
    box-shadow:0 25px 65px rgba(0,0,0,.3);
}

.pdm-circle{
    position:absolute;
    border:1px solid rgba(214,108,169,.22);
    border-radius:50%;
    animation:pdmRotate 20s linear infinite;
}

.circle-one{
    width:190px;
    height:190px;
}

.circle-two{
    width:290px;
    height:290px;
    border-color:rgba(118,36,93,.35);
    animation-duration:25s;
    animation-direction:reverse;
}

.circle-three{
    width:390px;
    height:390px;
    border-color:rgba(255,255,255,.08);
    animation-duration:32s;
}

.pdm-megaphone{
    position:relative;
    z-index:5;
    width:100px;
    height:100px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:26px;
    color:#fff;
    background:linear-gradient(
        135deg,
        var(--adgro-purple),
        var(--adgro-purple-light)
    );
    box-shadow:
        0 0 35px rgba(118,36,93,.45),
        0 15px 35px rgba(0,0,0,.3);
    font-size:2.4rem;
}

.pdm-mini-card{
    position:absolute;
    z-index:7;
    display:flex;
    align-items:center;
    gap:8px;
    padding:10px 14px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:12px;
    color:#fff;
    background:rgba(255,255,255,.07);
    box-shadow:0 10px 30px rgba(0,0,0,.25);
    backdrop-filter:blur(8px);
    font-size:.8rem;
    font-weight:800;
}

.pdm-mini-card i{
    color:var(--adgro-pink);
}

.mini-one{
    top:18%;
    left:7%;
    animation:pdmFloat 4s ease-in-out infinite;
}

.mini-two{
    top:20%;
    right:7%;
    animation:pdmFloat 4.7s ease-in-out infinite .4s;
}

.mini-three{
    bottom:18%;
    left:8%;
    animation:pdmFloat 4.5s ease-in-out infinite .8s;
}

@keyframes pdmRotate{
    from{transform:rotate(0)}
    to{transform:rotate(360deg)}
}

/* Visibility Content */

.pdm-small-title{
    display:inline-block;
    margin-bottom:14px;
    color:var(--adgro-pink);
    font-size:.76rem;
    font-weight:850;
    letter-spacing:2px;
}

.pdm-visibility h2{
    max-width:650px;
    margin:0 0 20px;
    color:#fff;
    font-size:clamp(2.2rem,4vw,3.5rem);
    font-weight:900;
    line-height:1.08;
}

.pdm-visibility h2 strong{
    color:var(--adgro-pink);
}

.pdm-visibility .col-lg-6 > p{
    max-width:650px;
    margin-bottom:30px;
    color:rgba(255,255,255,.65);
    line-height:1.75;
}

.pdm-benefit-list{
    display:flex;
    flex-direction:column;
}

.pdm-benefit{
    display:flex;
    align-items:flex-start;
    gap:15px;
    padding:17px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.pdm-benefit:last-child{
    border-bottom:0;
}

.pdm-benefit > span{
    flex:0 0 43px;
    width:43px;
    height:43px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    color:#fff;
    background:var(--adgro-purple);
    box-shadow:0 8px 20px rgba(118,36,93,.25);
}

.pdm-benefit h4{
    margin:0 0 4px;
    color:#fff;
    font-size:1.02rem;
    font-weight:800;
}

.pdm-benefit p{
    margin:0;
    color:rgba(255,255,255,.54);
    font-size:.9rem;
    line-height:1.5;
}

/* ==========================================================
   PROCESS
   ========================================================== */

.pdm-process{
    padding:100px 0;
    background:#fff;
}

.pdm-process-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
}

.pdm-process-card{
    position:relative;
    min-height:290px;
    padding:35px 27px;
    text-align:center;
    border:1px solid var(--adgro-border);
    border-radius:20px;
    background:#fff;
    box-shadow:0 8px 25px rgba(64,25,51,.04);
    transition:var(--adgro-transition);
}

.pdm-process-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--adgro-shadow);
    border-color:rgba(118,36,93,.25);
}

.pdm-process-number{
    position:absolute;
    top:18px;
    left:20px;
    color:var(--adgro-pink);
    font-size:.8rem;
    font-weight:900;
}

.pdm-process-icon{
    width:70px;
    height:70px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:5px auto 20px;
    border-radius:50%;
    color:#fff;
    background:linear-gradient(
        135deg,
        var(--adgro-purple),
        var(--adgro-purple-light)
    );
    box-shadow:0 12px 25px rgba(118,36,93,.2);
    font-size:1.55rem;
}

.pdm-process-card h3{
    margin:0 0 11px;
    color:var(--adgro-black);
    font-size:1.18rem;
    font-weight:850;
}

.pdm-process-card p{
    margin:0;
    color:var(--adgro-muted);
    font-size:.92rem;
    line-height:1.65;
}

/* ==========================================================
   LOCAL SEO
   ========================================================== */

.pdm-local-seo{
    padding:85px 0;
    background:var(--adgro-bg);
}

.pdm-local-box{
    position:relative;
    overflow:hidden;
    padding:55px;
    text-align:center;
    border:1px solid var(--adgro-border);
    border-radius:26px;
    background:#fff;
    box-shadow:var(--adgro-shadow);
}

.pdm-local-box::before{
    content:"";
    position:absolute;
    width:250px;
    height:250px;
    left:-130px;
    top:-130px;
    border-radius:50%;
    background:rgba(214,108,169,.08);
}

.pdm-local-box::after{
    content:"";
    position:absolute;
    width:210px;
    height:210px;
    right:-115px;
    bottom:-115px;
    border-radius:50%;
    border:30px solid rgba(118,36,93,.04);
}

.pdm-local-box > span{
    position:relative;
    z-index:2;
    display:inline-block;
    margin-bottom:12px;
    color:var(--adgro-purple);
    font-size:.76rem;
    font-weight:850;
    letter-spacing:2px;
}

.pdm-local-box h2{
    position:relative;
    z-index:2;
    margin:0 0 16px;
    color:var(--adgro-black);
    font-size:clamp(2rem,4vw,3rem);
    font-weight:900;
    line-height:1.12;
}

.pdm-local-box h2 strong{
    color:var(--adgro-purple);
}

.pdm-local-box > p{
    position:relative;
    z-index:2;
    max-width:720px;
    margin:0 auto 30px;
    color:var(--adgro-muted);
    line-height:1.7;
}

.pdm-contact-details{
    position:relative;
    z-index:3;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:12px;
}

.pdm-contact-details > div{
    display:flex;
    align-items:center;
    gap:9px;
    padding:11px 16px;
    border:1px solid var(--adgro-border);
    border-radius:50px;
    color:var(--adgro-muted);
    background:#fff;
    font-size:.9rem;
}

.pdm-contact-details i{
    color:var(--adgro-purple);
}

.pdm-contact-details a{
    color:var(--adgro-purple);
    font-weight:800;
    text-decoration:none;
}

.pdm-contact-details a:hover{
    color:var(--adgro-purple-dark);
}

/* ==========================================================
   CTA
   ========================================================== */

.pdm-cta{
    position:relative;
    overflow:hidden;
    padding:100px 0;
    color:#fff;
    background:
        radial-gradient(circle at 12% 20%,rgba(214,108,169,.25),transparent 30%),
        radial-gradient(circle at 88% 80%,rgba(169,68,135,.2),transparent 32%),
        linear-gradient(135deg,var(--adgro-purple-dark),var(--adgro-black));
}

.pdm-cta::before{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
    right:-230px;
    top:-250px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:50%;
    box-shadow:0 0 0 50px rgba(255,255,255,.025);
}

.pdm-cta .container{
    position:relative;
    z-index:2;
}

.pdm-cta > .container > span{
    display:inline-block;
    margin-bottom:12px;
    color:var(--adgro-pink);
    font-size:.76rem;
    font-weight:850;
    letter-spacing:2px;
}

.pdm-cta h2{
    margin:0 0 18px;
    color:#fff;
    font-size:clamp(2.3rem,5vw,3.8rem);
    font-weight:900;
    line-height:1.08;
}

.pdm-cta h2 strong{
    color:var(--adgro-pink);
}

.pdm-cta p{
    max-width:650px;
    margin:0 auto 30px;
    color:rgba(255,255,255,.65);
    line-height:1.7;
}

.pdm-cta-buttons{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:12px;
}

.pdm-cta-buttons a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-width:145px;
    min-height:50px;
    padding:13px 24px;
    border-radius:10px;
    color:#fff;
    font-weight:800;
    text-decoration:none;
    transition:var(--adgro-transition);
}

.pdm-cta-buttons a:first-child{
    background:var(--adgro-purple);
    border:2px solid var(--adgro-purple);
}

.pdm-cta-buttons a:first-child:hover{
    background:var(--adgro-purple-light);
    border-color:var(--adgro-purple-light);
    transform:translateY(-3px);
}

.pdm-cta-buttons a:last-child{
    background:#22c55e;
    border:2px solid #22c55e;
}

.pdm-cta-buttons a:last-child:hover{
    background:#16a34a;
    border-color:#16a34a;
    transform:translateY(-3px);
}

/* ==========================================================
   RESPONSIVE — LAPTOP
   ========================================================== */

@media(max-width:1199.98px){

    .pdm-hero{
        padding-bottom:80px;
    }

    .pdm-hero h1{
        font-size:clamp(2.6rem,5vw,4.3rem);
    }

    .pdm-service-grid{
        gap:18px;
    }

}

/* ==========================================================
   RESPONSIVE — TABLET
   ========================================================== */

@media(max-width:991.98px){

    .pdm-hero{
        padding-bottom:70px;
    }

    .pdm-breadcrumb{
        padding-bottom:35px;
    }

    .pdm-hero h1{
        font-size:clamp(2.5rem,7vw,4rem);
    }

    .pdm-hero-visual{
        min-height:420px;
        margin-top:5px;
    }

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

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

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

    .pdm-visibility{
        padding:80px 0;
    }

    .pdm-visibility-visual{
        min-height:410px;
    }

    .pdm-local-box{
        padding:45px 35px;
    }

    .pdm-cta{
        padding:80px 0;
    }

}

/* ==========================================================
   RESPONSIVE — MOBILE
   ========================================================== */

@media(max-width:767.98px){

    .pdm-hero{
        padding-bottom:60px;
    }

    .pdm-breadcrumb{
        padding:18px 0 30px;
        gap:7px;
        font-size:.8rem;
    }

    .pdm-kicker{
        font-size:.65rem;
        letter-spacing:1.4px;
    }

    .pdm-hero h1{
        font-size:clamp(2.25rem,10vw,3.3rem);
        letter-spacing:-.8px;
    }

    .pdm-hero-text{
        font-size:.97rem;
        line-height:1.7;
    }

    .pdm-hero-buttons{
        flex-direction:column;
        align-items:stretch;
    }

    .pdm-btn{
        width:100%;
    }

    .pdm-hero-visual{
        min-height:380px;
    }

    .pdm-standee{
        width:200px;
        height:310px;
    }

    .pdm-standee-content{
        height:220px;
    }

    .pdm-standee-content strong{
        font-size:1.25rem;
    }

    .pdm-card-one{
        left:1%;
    }

    .pdm-card-two{
        right:0;
    }

    .pdm-card-three{
        left:1%;
    }

    .pdm-floating-card{
        padding:9px 11px;
        font-size:.7rem;
    }

    .pdm-intro,
    .pdm-applications,
    .pdm-process,
    .pdm-local-seo,
    .pdm-visibility,
    .pdm-cta{
        padding:60px 0;
    }

    .pdm-section-heading{
        margin-bottom:35px;
    }

    .pdm-section-heading h2{
        font-size:2.1rem;
    }

    .pdm-service-grid,
    .pdm-application-grid,
    .pdm-process-grid{
        grid-template-columns:1fr;
        gap:16px;
    }

    .pdm-service-card{
        min-height:auto;
        padding:29px 24px;
    }

    .pdm-service-card p{
        min-height:auto;
    }

    .pdm-application-card{
        min-height:auto;
    }

    .pdm-process-card{
        min-height:auto;
    }

    .pdm-visibility h2{
        font-size:2.2rem;
    }

    .pdm-visibility-visual{
        min-height:350px;
        margin-bottom:15px;
    }

    .circle-one{
        width:160px;
        height:160px;
    }

    .circle-two{
        width:245px;
        height:245px;
    }

    .circle-three{
        width:320px;
        height:320px;
    }

    .pdm-megaphone{
        width:78px;
        height:78px;
        border-radius:20px;
        font-size:1.9rem;
    }

    .pdm-mini-card{
        padding:8px 11px;
        font-size:.7rem;
    }

    .mini-one{
        left:3%;
    }

    .mini-two{
        right:3%;
    }

    .mini-three{
        left:4%;
    }

    .pdm-local-box{
        padding:38px 22px;
        border-radius:20px;
    }

    .pdm-local-box h2{
        font-size:2rem;
    }

    .pdm-contact-details{
        flex-direction:column;
    }

    .pdm-contact-details > div{
        justify-content:center;
        border-radius:12px;
        text-align:center;
    }

    .pdm-cta h2{
        font-size:2.3rem;
    }

    .pdm-cta-buttons{
        flex-direction:column;
        align-items:stretch;
    }

    .pdm-cta-buttons a{
        width:100%;
    }

}

/* ==========================================================
   RESPONSIVE — SMALL MOBILE
   ========================================================== */

@media(max-width:575.98px){

    .pdm-breadcrumb{
        font-size:.74rem;
    }

    .pdm-hero h1{
        font-size:2.25rem;
    }

    .pdm-standee{
        width:180px;
        height:285px;
    }

    .pdm-standee-content{
        height:200px;
    }

    .pdm-standee-content i{
        width:50px;
        height:50px;
    }

    .pdm-standee-content strong{
        font-size:1.1rem;
    }

    .pdm-floating-card{
        padding:7px 9px;
        font-size:.64rem;
    }

    .pdm-card-one{
        top:14%;
    }

    .pdm-card-two{
        top:20%;
    }

    .pdm-card-three{
        bottom:14%;
    }

    .pdm-service-card h3,
    .pdm-application-card h3{
        font-size:1.18rem;
    }

    .pdm-service-number{
        font-size:2.2rem;
    }

    .pdm-benefit{
        gap:11px;
    }

    .pdm-benefit > span{
        flex-basis:38px;
        width:38px;
        height:38px;
    }

    .pdm-local-box{
        padding:32px 17px;
    }

    .pdm-local-box h2{
        font-size:1.85rem;
    }

}

/* ==========================================================
   ACCESSIBILITY
   ========================================================== */

a:focus-visible{
    outline:3px solid rgba(214,108,169,.55);
    outline-offset:3px;
}

@media(prefers-reduced-motion:reduce){

    *,
    *::before,
    *::after{
        animation-duration:.01ms !important;
        animation-iteration-count:1 !important;
        transition-duration:.01ms !important;
        scroll-behavior:auto !important;
    }

}
