/* ==========================================
   AGENCY PAGE OVERRIDES
========================================== */

:root{

    --agency-blue-1:#7DD3FC;

    --agency-blue-2:#3B82F6;

    --agency-blue-3:#2563EB;

    --agency-gradient:
        linear-gradient(
            135deg,
            var(--agency-blue-1),
            var(--agency-blue-2),
            var(--agency-blue-3)
        );

}

/* ==========================================
   HERO
========================================== */

body{

    background:
        radial-gradient(
            circle at top right,
            rgba(59,130,246,.16),
            transparent 48%
        ),
        radial-gradient(
            circle at bottom left,
            rgba(125,211,252,.14),
            transparent 48%
        ),
        var(--bg-primary);

}

.agency-content{

    width:100%;

    max-width:900px;

    margin:0 auto;

    text-align:center;

    min-width:0;

}

.agency-hero{

    position:relative;

    display:flex;

    align-items:center;

    justify-content:center;

    text-align:center;

    padding:3rem 0 2rem;

    min-height:auto;

    overflow:visible;

}

.agency-section-header::after{

    display:none;

}

.agency-eyebrow{

    display:inline-block;

    margin-bottom:1.5rem;

    color:var(--agency-blue-1);

    font-size:.82rem;

    font-weight:800;

    letter-spacing:.22em;

    text-transform:uppercase;

}

.agency-content h1{

    font-family:"Montserrat",sans-serif;

    font-size:clamp(3.6rem,6vw,6rem);

    line-height:1.03;

    letter-spacing:-.05em;

    margin-bottom:1.5rem;

}

.headline-white{

    display:block;

    color:#fff;

}

.headline-gradient{

    display:block;

    background:var(--agency-gradient);

    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;

    padding-bottom:.14em;
    margin-bottom:-.14em;

}

.headline-line{

    white-space:nowrap;

}

.agency-description{

    max-width:760px;

    margin:0 auto 2.5rem;

    font-size:1.2rem;

    line-height:1.8;

    color:var(--text-secondary);

}

/* ==========================================
   AGENCY SECTION DIVIDER
========================================== */

.agency-divider{

    display:flex;

    justify-content:center;

    align-items:center;

    width:100%;

    margin:1.5rem auto 2rem;

}

/* FAQ spacing */

.agency-faq{

    padding-top:0;

}

.agency-faq .agency-divider{

    margin:1rem auto 2rem;

}

.agency-divider::before{

    content:"";

    width:240px;
    height:4px;

    border-radius:999px;

    background:linear-gradient(
        90deg,
        var(--agency-blue-1),
        var(--agency-blue-2),
        var(--agency-blue-3)
    );

    box-shadow:
        0 0 12px rgba(59,130,246,.35),
        0 0 30px rgba(59,130,246,.18);

}

/* ==========================================
   THE PROBLEM
========================================== */

.agency-problem{

    padding:2rem 0 2rem;

    border-top:1px solid rgba(255,255,255,.08);

}

.agency-section-header{

    max-width:760px;

    margin:0 auto;

    text-align:center;

    display:flex;

    flex-direction:column;

    align-items:center;

}

.agency-section-label{

    display:inline-block;

    margin-bottom:1rem;

    color:var(--agency-blue-1);

    font-size:.8rem;

    font-weight:800;

    letter-spacing:.22em;

    text-transform:uppercase;

}

.agency-section-header h2{

    font-family:"Montserrat",sans-serif;

    font-size:clamp(2.8rem,5vw,4.5rem);

    line-height:1.12;

    letter-spacing:-.05em;

    margin-bottom:1;

}

.headline-white,
.headline-blue{

    display:block;

    font-size:1em;

    font-family:inherit;

    font-weight:inherit;

    line-height:inherit;

    letter-spacing:inherit;

    white-space:nowrap;

}

.headline-white{

    color:#fff;

}

.headline-blue{

    display:inline-block;

    margin-top:.12em;

    padding-right:.08em;
    padding-bottom:.14em;
    margin-bottom:-.14em;

    background:var(--agency-gradient);

    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;

}

.agency-section-header p{

    color:var(--text-secondary);

    font-size:1.15rem;

    line-height:1.9;

}

.problem-grid{

    width:100%;
    max-width:900px;

    margin:0 auto;

    display:flex;
    flex-direction:column;

    gap:2rem;

}

.problem-card{

    position:relative;

    display:flex;
    flex-direction:column;
    justify-content:center;

    width:100%;

    min-height:260px;

    padding:2.75rem 3rem;

    border-radius:28px;

    overflow:hidden;

    border:1px solid rgba(255,255,255,.08);

    background:#101418;

    isolation:isolate;

    transition:.35s ease;

}

.problem-card:hover{

    

    border-color:var(--agency-blue-1);

    box-shadow:

        0 0 35px rgba(59,130,246,.20);

}

.problem-card::before{

    content:"";

    position:absolute;

    inset:0;

    background-size:cover;

    background-repeat:no-repeat;

    background-position:right center;

    opacity:.55;

    z-index:-2;

}

.problem-card::after{

    content:"";

    position:absolute;

    inset:0;

    background:

        linear-gradient(

            90deg,

            rgba(10,12,16,.98) 0%,

            rgba(10,12,16,.96) 25%,

            rgba(10,12,16,.78) 50%,

            rgba(10,12,16,.35) 72%,

            rgba(10,12,16,.08) 100%

        );

    z-index:-1;

}

.problem-icon{

    position:relative;

    width:58px;

    height:58px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:1.5rem;

    border-radius:50%;

    background:var(--agency-gradient);

    color:#fff;

    overflow:hidden;

    font-weight:800;

    font-size:1.2rem;

}

.problem-icon::before{

    content:"";

    position:absolute;

    inset:1px;

    border-radius:50%;

    background:linear-gradient(

        to bottom,

        rgba(255,255,255,.22),

        rgba(255,255,255,0)

    );

    pointer-events:none;

}

.problem-icon::after{

    content:"";

    position:absolute;

    top:0;

    left:-140%;

    width:60%;

    height:100%;

    background:linear-gradient(

        90deg,

        transparent,

        rgba(255,255,255,.55),

        transparent

    );

    transform:skewX(-25deg);

    transition:left .75s ease;

}

.problem-card:hover .problem-icon::after{

    left:170%;

}

.problem-card h3{

    width:48%;

    font-size:2rem;

    line-height:1.1;

    margin-bottom:1rem;

}

.problem-card p{

    width:48%;

    color:var(--text-secondary);

    line-height:1.8;

}

.problem-card:nth-child(1)::before{

    background-image:url(images/agency-white-label.png);

}

.problem-card:nth-child(2)::before{

    background-image:url(images/agency-communication.png);

}

.problem-card:nth-child(3)::before{

    background-image:url(images/agency-quality.png);

}

.problem-card:nth-child(4)::before{

    background-image:url(images/agency-partnership.png);

}

/* ==========================================
   CAPABILITIES
========================================== */

.agency-capabilities{
    scroll-margin-top: 100px;
}

.capabilities-grid{

    max-width:900px;

    margin:0 auto 0;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:1.5rem;

    align-items:stretch;

}

.agency-capabilities{

    padding:0 0 2rem;

}

.capability-card{

    position:relative;
    
    isolation:isolate;

    padding:2rem;

    border-radius:24px;

    background:#101418;

    border:1px solid rgba(255,255,255,.08);

    transition:.35s ease;

    overflow:hidden;

}

.capability-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:90px;

    background:
        linear-gradient(
            to bottom,
            rgba(125,211,252,.14) 0%,
            rgba(59,130,246,.08) 30%,
            transparent 100%
        );

    pointer-events:none;

    z-index:0;

}

.capability-card::after{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:3px;

    background:var(--agency-gradient);

    opacity:.9;

}

.capability-card:hover{

    border-color:var(--agency-blue-1);

    box-shadow:

        0 0 30px rgba(59,130,246,.18);

}

.capability-icon{

    width:56px;

    height:56px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:1.5rem;

    border-radius:50%;

    background:var(--agency-gradient);

    color:#fff;

    position:relative;

    overflow:hidden;
    
    z-index:1;

}

.capability-icon{

    z-index:1;

}

.capability-icon::after{

    content:"";

    position:absolute;

    width:130px;

    height:130px;

    border-radius:50%;

    background:radial-gradient(

        circle,

        rgba(59,130,246,.18) 0%,

        rgba(59,130,246,.08) 45%,

        transparent 75%

    );

    z-index:-1;

    pointer-events:none;

}

.capability-icon::before{

    content:"";

    position:absolute;

    inset:1px;

    border-radius:50%;

    background:linear-gradient(

        to bottom,

        rgba(255,255,255,.20),

        rgba(255,255,255,0)

    );

}

.capability-icon::after{

    content:"";

    position:absolute;

    top:0;

    left:-140%;

    width:60%;

    height:100%;

    background:linear-gradient(

        90deg,

        transparent,

        rgba(255,255,255,.55),

        transparent

    );

    transform:skewX(-25deg);

    transition:left .8s ease;

}

.capability-card:hover .capability-icon::after{

    left:170%;

}

.capability-card h3{

    font-size:1.45rem;

    line-height:1.2;

    margin-bottom:.9rem;

}

.capability-card p{

    color:var(--text-secondary);

    line-height:1.8;

}

.capability-icon,
.capability-card h3,
.capability-card p{

    position:relative;
    z-index:2;

}

/* ==========================================
   PROCESS
========================================== */

.agency-process{

    padding:0 0 1rem;

}

.process-grid{

    max-width:900px;

    margin:3rem auto 0;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:1.5rem;

    align-items:stretch;

}

.process-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:3px;

    background:var(--agency-gradient);

    opacity:.85;

}

.process-card::after{

    content:attr(data-step);

    position:absolute;

    top:15%;

    font-family:"Montserrat",sans-serif;

    font-size:16rem;

    font-weight:900;

    line-height:1;

    color:rgba(125,211,252,.05);

    -webkit-text-stroke:0;

    pointer-events:none;

    user-select:none;

    z-index:0;

}

.process-card:hover::after{

    /*transform:translate(-50%,-58%) scale(1.04);*/

    -webkit-text-stroke-color:rgba(125,211,252,.12);

}

.process-number,
.process-icon,
.process-card h3,
.process-accent,
.process-card p{

    position:relative;

    z-index:5;

}

.process-card:hover{

    border-color:var(--agency-blue-1);

    box-shadow:

        0 0 30px rgba(59,130,246,.18);

}

.process-number{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:42px;

    height:42px;

    margin-bottom:1.25rem;

    border-radius:50%;

    font-size:1rem;

    font-weight:800;

    color:#fff;

    background:var(--agency-gradient);

    box-shadow:0 0 18px rgba(59,130,246,.25);

}

.process-icon{

    display:flex;

    align-items:center;

    justify-content:center;

    width:72px;

    height:72px;

    margin:2.15rem auto 1.75rem;

    border-radius:50%;

    background:rgba(59,130,246,.08);

    border:1px solid rgba(125,211,252,.12);

    color:var(--agency-blue-1);

    position:relative;

    overflow:hidden;

}

.process-icon::before{

    content:"";

    position:absolute;

    inset:1px;

    border-radius:50%;

    background:linear-gradient(

        to bottom,

        rgba(255,255,255,.18),

        rgba(255,255,255,0)

    );

}

.process-accent{

    position:relative;

    width:56px;

    height:3px;

    margin:1rem auto 1.25rem;

    border-radius:999px;

    background:var(--agency-gradient);

    opacity:.9;

}

.process-card{

    position:relative;

    isolation:isolate;

    display:flex;

    flex-direction:column;

    align-items:center;

    padding:2.25rem 1.6rem 1.75rem;

    border-radius:24px;

    background:#101418;

    border:1px solid rgba(255,255,255,.08);

    overflow:hidden;

    transition:.35s ease;

}

.process-card p{

    max-width:16ch;

    margin:0 auto;

    text-align:center;

    color:var(--text-secondary);

    line-height:1.8;

}

/* ==========================================
   PARTNERSHIP
========================================== */

.agency-partnership{

    padding:0 0 2rem;

}

.partnership-grid{

    max-width:900px;

    margin:3rem auto 0;

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:1.75rem;

}

.partnership-card{

    display:flex;

    align-items:flex-start;

    gap:1.5rem;

    position:relative;

    padding:2rem;

    border-radius:24px;

    background:#101418;

    border:1px solid rgba(255,255,255,.08);

    overflow:hidden;

    transition:.35s ease;

}



.partnership-card:hover{

    border-color:var(--agency-blue-1);

    box-shadow:

        0 0 30px rgba(59,130,246,.18);

}

.partnership-ghost{

    position:absolute;

    top:-20px;

    right:-20px;

    width:180px;

    height:180px;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#ffffff;

    opacity:.042;

    transform:rotate(12deg);

    pointer-events:none;

    z-index:0;

}

.partnership-ghost svg{

    width:100%;

    height:100%;

    stroke-width:1;

}

.partnership-icon{

    flex-shrink:0;

    width:60px;

    height:60px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:var(--agency-gradient);

    color:#fff;

    position:relative;

    overflow:hidden;

}

.partnership-content{

    flex:1;

    border:none;

    padding:0;

}

.partnership-content h3{

    margin-bottom:.85rem;

    font-size:1.45rem;

    line-height:1.2;

}

.partnership-content p{

    color:var(--text-secondary);

    line-height:1.8;

}

.partnership-list{

    margin:1.5rem 0 0;

    padding:0;

    list-style:none;

    display:flex;

    flex-direction:column;

    gap:.85rem;

}

.partnership-list li{

    display:flex;

    align-items:center;

    gap:.75rem;

    color:rgba(255,255,255,.88);

    font-size:.95rem;

    font-weight:500;

}

.partnership-list li::before{

    content:"";

    width:8px;

    height:8px;

    flex-shrink:0;

    border-radius:50%;

    background:var(--agency-blue-1);

    box-shadow:

        0 0 10px rgba(125,211,252,.45);

}

.partnership-icon::before{

    content:"";

    position:absolute;

    inset:1px;

    border-radius:50%;

    background:linear-gradient(

        to bottom,

        rgba(255,255,255,.20),

        rgba(255,255,255,0)

    );

}

.partnership-icon::after{

    content:"";

    position:absolute;

    top:0;

    left:-140%;

    width:60%;

    height:100%;

    background:linear-gradient(

        90deg,

        transparent,

        rgba(255,255,255,.55),

        transparent

    );

    transform:skewX(-25deg);

    transition:left .8s ease;

}

.partnership-card:hover .partnership-icon::after{

    left:170%;

}

.partnership-card h3{

    margin-bottom:.75rem;

    font-size:1.45rem;

    line-height:1.2;

}

.partnership-card p{

    color:var(--text-secondary);

    line-height:1.8;

}

.partnership-icon,
.partnership-content{

    position:relative;

    z-index:2;

}

/* ==========================================
   OUTCOMES
========================================== */

.agency-outcomes{

    padding:0;

}

.agency-outcomes .section-header{

    max-width:760px;

    margin:0 auto 2.5rem;

    text-align:center;

}

.section-divider{

    display:flex;

    justify-content:center;

    margin:-1rem auto 2rem;

}

.section-divider span{

    width:240px;

    height:4px;

    border-radius:999px;

    background:var(--agency-gradient);

    box-shadow:
        0 0 12px rgba(59,130,246,.35),
        0 0 30px rgba(59,130,246,.18);

}

.section-eyebrow{

    display:block;

    margin-bottom:1rem;

    color:var(--agency-blue-1);

    font-size:.8rem;

    font-weight:800;

    letter-spacing:.22em;

    text-transform:uppercase;

}

.agency-outcomes h2{

    font-family:"Montserrat",sans-serif;

    font-size:clamp(2.8rem,5vw,4.5rem);

    line-height:.9;

    letter-spacing:-.05em;

    margin-bottom:1.25rem;

    color:#fff;

}

.agency-outcomes h2 > span{

    display:block;

    background:none;

    -webkit-background-clip:initial;
    background-clip:initial;
    -webkit-text-fill-color:initial;

}

.headline-blue-inline{

    display:inline-block;

    padding-right:.08em;

    background:var(--agency-gradient);

    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;

}

.section-description{

    color:var(--text-secondary);

    font-size:1.15rem;

    line-height:1.9;

    max-width:760px;

    margin:0 auto;

}

.outcomes-list{

    max-width:900px;

    margin:3rem auto 0;

    display:flex;

    flex-direction:column;

}

.outcomes-list{

    margin:2rem auto 0;

    padding-bottom:0;

}

.outcome-item{

    position:relative;

    display:grid;

    grid-template-columns:120px 1fr;

    gap:3rem;

    align-items:center;

    padding:2.75rem 0;

}

.outcome-item::after{

    content:"";

    position:absolute;

    left:0;

    right:0;

    bottom:0;

    height:1px;

    background:linear-gradient(
        90deg,
        transparent,
        rgba(125,211,252,.18) 18%,
        rgba(59,130,246,.35) 50%,
        rgba(125,211,252,.18) 82%,
        transparent
    );

}

.outcome-item:last-child::after{

    display:none;

}

.outcome-number{

    font-family:"Montserrat",sans-serif;

    font-size:4rem;

    font-weight:900;

    line-height:1;

    color:rgba(255,255,255,.06);

    text-align:center;

    user-select:none;

}

.outcome-content h3{

    font-size:1.8rem;
    
    line-height:1.15;

    margin:0 0 .9rem;

    color:#fff;

}

.outcome-content p{

    max-width:60ch;

    color:var(--text-secondary);

    line-height:1.9;

    margin:0;

}

.agency-outcomes .headline-white{

    color:#fff;

}

/* ==========================================
   FAQ
========================================== */

.faq-list{

    max-width:900px;

    margin:0rem auto 0;

}

.faq-item{

    border-bottom:1px solid rgba(255,255,255,.08);

    transition:.35s ease;

}

.faq-question{

    width:100%;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:2rem;

    padding:.75rem 0;

    background:none;

    border:none;

    color:#fff;

    cursor:pointer;

    text-align:left;

    font:inherit;

}

.faq-question span:first-child{

    font-size:1.35rem;

    font-weight:700;

    line-height:1.3;

}

.faq-icon{

    flex-shrink:0;

    width:42px;

    height:42px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    font-size:1.5rem;

    font-weight:600;

    color:#7dd3fc;

    background:rgba(59,130,246,.08);

    border:1px solid rgba(59,130,246,.18);

    transition:.35s ease;

}

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:max-height .4s ease;

}

.faq-answer p{

    margin:0;

    padding:0 0 .5rem;

    color:rgba(255,255,255,.72);

    line-height:1.9;

    max-width:760px;

}

.faq-item.active .faq-answer{

    max-height:300px;

}

.faq-item.active .faq-icon{

    transform:rotate(45deg);

    background:linear-gradient(135deg,#7dd3fc,#3b82f6);

    color:#fff;

    border-color:transparent;

    box-shadow:0 0 20px rgba(59,130,246,.35);

}

.faq-question:hover .faq-icon{

    transform:scale(1.08);

}

.faq-question:hover span:first-child{

    color:#7dd3fc;

}

/* ==========================================
   FINAL CTA
========================================== */

.agency-cta{

    position:relative;

    padding:0rem 0 1rem;

    overflow:hidden;

}

.agency-cta::before{

    content:"";

    position:absolute;

    inset:0;

    background:
        radial-gradient(
            circle at center,
            rgba(59,130,246,.16),
            transparent 65%
        );

    pointer-events:none;

}

.agency-cta-content{

    position:relative;

    max-width:760px;

    margin:1rem auto 1rem;

    text-align:center;

    z-index:1;

}

.agency-cta h2{

    font-family:"Montserrat",sans-serif;

    font-size:clamp(2.8rem,5vw,4.5rem);

    line-height:1.12;

    letter-spacing:-.05em;

    margin-bottom:1.5rem;

}

.agency-cta p{

    max-width:700px;

    margin:0 auto 2.5rem;

    color:var(--text-secondary);

    font-size:1.15rem;

    line-height:1.9;

}

.agency-cta .agency-actions{

    margin-bottom:2.5rem;

}

/* ====================================================================MOBILE =========================*/

@media(max-width:768px){

    .agency-problem{

        padding:5rem 0;

    }

    .problem-grid{

        grid-template-columns:1fr;

    }

}

/* ==========================================
   HERO BUTTONS
========================================== */

.agency-actions{

    display:flex;

    justify-content:center;

    gap:1rem;

    flex-wrap:wrap;

    margin-bottom:2.5rem;

}

.agency-primary-btn,
.agency-secondary-btn{

    position:relative;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:240px;

    height:58px;

    padding:0 2rem;

    border-radius:999px;

    text-decoration:none;

    font-weight:700;

    font-size:.95rem;

    letter-spacing:.08em;

    text-transform:uppercase;

    overflow:hidden;

    transition:all .35s ease;

}

.agency-primary-btn{

    color:#fff;

    background:linear-gradient(
        135deg,
        var(--agency-blue-1),
        var(--agency-blue-2),
        var(--agency-blue-3)
    );

    box-shadow:
        0 0 25px rgba(59,130,246,.35);

}

.agency-secondary-btn{

    color:#fff;

    border:1px solid rgba(255,255,255,.12);

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(14px);

}

.agency-primary-btn::before,
.agency-secondary-btn::before{

    content:"";

    position:absolute;

    inset:1px;

    border-radius:999px;

    background:linear-gradient(
        to bottom,
        rgba(255,255,255,.20),
        rgba(255,255,255,0)
    );

    pointer-events:none;

}

.agency-primary-btn::after,
.agency-secondary-btn::after{

    content:"";

    position:absolute;

    top:0;

    left:-130%;

    width:60%;

    height:100%;

    background:linear-gradient(

        90deg,

        transparent,

        rgba(255,255,255,.45),

        transparent

    );

    transform:skewX(-25deg);

    transition:left .8s ease;

}

.agency-primary-btn:hover::after,
.agency-secondary-btn:hover::after{

    left:170%;

}

.agency-primary-btn:hover{

    box-shadow:

        0 0 25px rgba(59,130,246,.35);

}

.agency-secondary-btn:hover{

    

    border-color:var(--agency-blue-1);

    background:rgba(125,211,252,.10);

}

/* ==========================================
   TRUST INDICATORS
========================================== */

.agency-trust{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:1.5rem;

    list-style:none;

}

.agency-trust li{

    display:flex;

    align-items:center;

    gap:.65rem;

    color:rgba(255,255,255,.82);

    font-size:.95rem;

}

.agency-trust li::before{

    content:"";

    width:8px;

    height:8px;

    border-radius:50%;

    background:var(--agency-blue-1);

    box-shadow:

        0 0 12px var(--agency-blue-1);

}

/* ==========================================
   MOBILE HERO
========================================== */

@media (max-width:768px){
	
	.agency-divider{

    margin:1rem auto 2rem;

	}
	
	.agency-divider::before{
	
	    width:120px;
	
	}

    .agency-hero{

    padding:3rem 0 2rem;
   
    min-height:100svh;

    background-position:68% center;

	}
    
	   .agency-hero-grid{

    grid-template-columns:1fr;

    gap:0;

    min-height:auto;

    width:100%;

    padding:0;

	}
	
	.agency-visual{
	
	    display:none;
	
	}

    .agency-content{

    width:100%;

    max-width:680px;

    margin:0 auto;

    padding:0 1.75rem;

    text-align:center;

    box-sizing:border-box;

	}
	
	.headline-line{

    white-space:normal;

	}

    .agency-content h1{

    font-size:clamp(2.15rem,8vw,3rem);

    line-height:1.08;

    letter-spacing:-.04em;

	}

    .agency-description{

        font-size:1.05rem;

    }

    .agency-actions{

    flex-direction:column;

    align-items:center;

    width:100%;

	}

    .agency-primary-btn,
	.agency-secondary-btn{

    width:100%;

    max-width:340px;

    margin:0 auto;

	}

    .agency-trust{

    display:grid;

    grid-template-columns:1fr;

    gap:.85rem;

    width:max-content;

    margin:0 auto;

	}
	
	.agency-trust li{
	
	    justify-content:flex-start;
	
	    text-align:left;
	
	}

    .agency-section-header{

    max-width:100%;

    margin:0 auto 1rem;

    padding:0;

	}

    .agency-section-header h2{

    font-size:clamp(2rem,7vw,2.6rem);

    line-height:1.05;

    letter-spacing:-.035em;

	}
	
	.headline-white,
	.headline-blue{

    white-space:normal;

	}

    .agency-section-header p{

        font-size:1.05rem;

        line-height:1.75;

        max-width:34ch;

        margin:0 auto;

    }



.agency-description{

    max-width:32ch;

    margin:0 auto 2.5rem;

    text-align:center;

}

.problem-card{

    min-height:240px;

    padding:2rem;

    border-radius:22px;

    text-align:left;

    align-items:flex-start;

}

.problem-card h3{

    width:68%;

    max-width:none;

    margin:.75rem 0;

    line-height:1.1;

    text-align:left;

}

.problem-icon{

    width:52px;

    height:52px;

    margin-bottom:1.25rem;

}

.problem-card h3{

    font-size:1.75rem;

    margin-bottom:.75rem;

}

.problem-card p{

    width:68%;

    max-width:none;

    margin:0;

    font-size:1rem;

    line-height:1.75;

}

.capabilities-grid{

    grid-template-columns:1fr;

    gap:1.25rem;

    width:100%;

    max-width:100%;

    margin:3rem auto 0;

}

.agency-problem{

    padding:1rem 1.5rem 3rem;

}

/* ==========================================
   MOBILE CAPABILITIES
========================================== */

.agency-capabilities .container{

    padding:0 1.5rem;

}

.capabilities-grid{

    grid-template-columns:1fr;

    gap:1.25rem;

}

.capabilities-grid{

    width:100%;

    max-width:100%;

    margin:1rem auto 0;

}

.capability-card{

    width:100%;

    max-width:100%;

    box-sizing:border-box;

}

.capability-card{

    padding:2rem;

}

.capability-card h3{

    font-size:1.65rem;

}

.capability-card p{

    font-size:1rem;

    line-height:1.75;

}

/* ==========================================
   MOBILE PROCESS
========================================== */

.agency-process .container{

    padding:0 1.5rem;

}

.process-grid{

    display:flex;

    flex-direction:column;

    gap:1.5rem;

    max-width:100%;

    margin:3rem auto 0;

}

.process-card{

    position:relative;

    width:100%;

    padding:2rem;

    padding-bottom:2.5rem;

    border-radius:22px;

    box-sizing:border-box;

}



.process-number{

    width:64px;

    height:64px;

    font-size:1.5rem;

    margin-bottom:1rem;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

}

.process-icon{

    margin:2rem auto 1.5rem;

}

.process-card h3{

    font-size:1.85rem;

    margin-bottom:1rem;

}

.process-card p{

    max-width:26ch;

    font-size:1.05rem;

    line-height:1.8;

    margin:0 auto;

}

/* ==========================================
   MOBILE PARTNERSHIP
========================================== */



.agency-partnership .container{

    padding:0 1.5rem;

}



.partnership-grid{

    display:flex;

    flex-direction:column;

    gap:1.5rem;

    max-width:100%;

    margin:3rem auto 0;

}

.partnership-card{

    width:100%;

    padding:2rem;

    box-sizing:border-box;

}

.partnership-content{

    width:100%;

}

.partnership-content h3{

    font-size:1.8rem;

    line-height:1.15;

}

.partnership-content p{

    font-size:1.05rem;

    line-height:1.8;

}

.partnership-list{

    margin-top:1.5rem;

}

.partnership-ghost{

    width:240px;

    height:240px;

    top:-35px;

    right:-35px;

    opacity:.03;

}

/* ==========================================
   MOBILE OUTCOMES
========================================== */

.agency-outcomes{

    padding:0 1.5rem;

}

.outcomes-list{

    margin:.75rem auto 0;

}

.outcome-item{

    position:relative;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    text-align:center;

    padding:3rem 0 2.5rem;

}

.outcome-number{

    position:absolute;

    top:0;

    left:50%;

    transform:translateX(-50%);

    font-family:"Montserrat",sans-serif;

    font-size:10rem;

    font-weight:900;

    line-height:1;

    color:rgba(255,255,255,.05);

    pointer-events:none;

    user-select:none;

    z-index:0;

}

.outcome-content{

    position:relative;

    z-index:2;

    max-width:100%;

}

.outcome-content{

    max-width:100%;

}

.outcome-content h3{

    font-size:2rem;

    margin-top:2.75rem;

    margin-bottom:.85rem;

}

.outcome-content p{

    max-width:32ch;

    margin:0 auto;

    font-size:1.05rem;

    line-height:1.8;

}

/* ==========================================
   REMOVE GAP BEFORE CAPABILITIES
========================================== */

.agency-capabilities{

    padding-top:0;

    margin-top:-2rem;

}

.agency-capabilities .headline-white{
    white-space:nowrap;
    font-size:.9em;
}

.agency-capabilities .headline-blue{
    font-size:1em;
}

.agency-capabilities .headline-white{
    white-space:nowrap;
}

.agency-cta p{

    max-width:34ch;
    margin:0 auto 2.5rem;
    padding:0;

}

}