/*
=========================================================
PAYMENTPROCESSOR.COM
SOLUTIONS HUB
=========================================================
*/


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


.pp-solutions-page {
    overflow: hidden;

    color: var(--pp-white);

    background: #010407;
}



/* =====================================================
   EYEBROW
===================================================== */

.pp-solutions-eyebrow {

    margin: 0 0 16px;

    color: var(--pp-gold-light);

    font-size: 12px;

    font-weight: 700;

    letter-spacing: .18em;

}



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


.pp-solutions-hero {

    overflow: hidden;

    border-bottom:
        1px solid rgba(255,255,255,.06);

    background:
        radial-gradient(
            circle at 75% 40%,
            rgba(231,167,47,.07),
            transparent 30%
        );

}


.pp-solutions-hero-inner {

    min-height: 600px;

    padding: 80px 0;

    display:grid;

    grid-template-columns:
        1fr
        1fr;

    align-items:center;

    gap:70px;

}



.pp-solutions-hero-copy {

    max-width:700px;

}



.pp-solutions-hero-copy h1 {

    margin:0 0 25px;

    font-size:
        clamp(
            52px,
            4.4vw,
            72px
        );

    line-height:1;

    letter-spacing:-.045em;

}


.pp-solutions-hero-copy h1 span {

    display:block;

    color:var(--pp-gold-light);

}



.pp-solutions-hero-text {

    max-width:620px;

    margin-bottom:30px;

    color:var(--pp-muted);

    font-size:17px;

    line-height:1.65;

}



.pp-solutions-actions {

    display:flex;

    gap:14px;

    flex-wrap:wrap;

    margin-bottom:30px;

}



.pp-solutions-points {

    display:flex;

    flex-wrap:wrap;

    gap:15px 22px;

    color:#89919a;

    font-size:13px;

}




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


.pp-solutions-visual {

    position:relative;

    min-height:460px;

    display:flex;

    align-items:center;

    justify-content:center;

}



.pp-solutions-panel {

    width:min(100%,450px);

    padding:25px;

    border:

        1px solid rgba(231,167,47,.25);

    border-radius:20px;


    background:

        linear-gradient(
            145deg,
            rgba(15,17,19,.98),
            rgba(5,7,9,.98)
        );

    box-shadow:
        0 30px 80px rgba(0,0,0,.45);

}



.pp-solutions-panel-header {

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding-bottom:20px;

    margin-bottom:10px;

    border-bottom:
        1px solid rgba(255,255,255,.06);

}



.pp-solutions-panel-header span {

    color:var(--pp-gold);

    font-size:10px;

    letter-spacing:.15em;

}



.pp-solutions-panel-header strong {

    color:var(--pp-gold-light);

    font-size:12px;

}




.pp-solutions-option {

    height:55px;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:0 15px;

    margin-bottom:10px;

    border:

        1px solid rgba(255,255,255,.08);

    border-radius:10px;

    color:#8b939c;

    font-size:14px;

}



.pp-solutions-option.active {

    border-color:
        rgba(231,167,47,.35);

    color:#eee;

}


.pp-solutions-option i {

    color:var(--pp-gold-light);

    font-style:normal;

}



.pp-solutions-progress {

    height:5px;

    margin-top:18px;

    overflow:hidden;

    background:
        rgba(255,255,255,.08);

    border-radius:20px;

}


.pp-solutions-progress span {

    display:block;

    width:85%;

    height:100%;

    background:
        linear-gradient(
            90deg,
            var(--pp-gold),
            var(--pp-gold-light)
        );

}



.pp-solutions-floating {

    position:absolute;

    padding:15px 18px;

    border:

        1px solid rgba(231,167,47,.22);

    border-radius:12px;

    background:#06080a;

}



.pp-solutions-floating span {

    display:block;

    color:#777f87;

    font-size:9px;

    letter-spacing:.12em;

}



.pp-solutions-floating strong {

    color:var(--pp-gold-light);

    font-size:12px;

}



.pp-solutions-floating.one {

    left:10px;

    bottom:80px;

}



.pp-solutions-floating.two {

    right:0;

    top:90px;

}



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


.pp-solutions-heading {

    max-width:800px;

    margin-bottom:45px;

}


.pp-solutions-heading.center {

    margin-left:auto;

    margin-right:auto;

    text-align:center;

}



.pp-solutions-heading h2 {

    margin:0 0 15px;

    font-size:
        clamp(
            38px,
            3.5vw,
            52px
        );

    letter-spacing:-.035em;

}



.pp-solutions-heading p:last-child {

    color:var(--pp-muted);

    line-height:1.65;

}



/* =====================================================
   SOLUTION CARDS
===================================================== */


.pp-solutions-grid-section {

    padding:95px 0;

}



.pp-solutions-cards {

    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:18px;

}



.pp-solutions-cards article {


    min-height:220px;

    padding:30px;

    border:

        1px solid rgba(255,255,255,.08);

    border-radius:16px;


    background:

        linear-gradient(
            145deg,
            rgba(14,16,18,.95),
            rgba(5,7,9,.95)
        );

}



.pp-solutions-cards h3 {

    margin:0 0 12px;

    font-size:20px;

}


.pp-solutions-cards p {

    color:#8b939b;

    line-height:1.6;

    font-size:14px;

}



.pp-solutions-cards a {

    display:inline-block;

    margin-top:18px;

    color:var(--pp-gold-light);

    font-size:13px;

}



/* =====================================================
   CONSIDER
===================================================== */


.pp-solutions-consider {

    padding:90px 0;

    border-top:
        1px solid rgba(255,255,255,.05);

}



.pp-solutions-consider-grid {

    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:18px;

}



.pp-solutions-consider-grid div {

    padding:28px;

    border:

        1px solid rgba(255,255,255,.08);

    border-radius:15px;

}



.pp-solutions-consider-grid h3 {

    margin:0 0 10px;

}



.pp-solutions-consider-grid p {

    margin:0;

    color:#89919a;

    line-height:1.6;

}



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


.pp-solutions-process {

    padding:95px 0;

    background:
        rgba(5,7,9,.3);

}



.pp-solutions-steps {

    display:grid;

    grid-template-columns:
        repeat(3,1fr);

}



.pp-solutions-steps div {

    position:relative;

    text-align:center;

    padding:20px 35px;

}



.pp-solutions-steps span {

    width:45px;

    height:45px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin:0 auto 20px;

    border:

        1px solid rgba(231,167,47,.5);

    border-radius:50%;

    color:var(--pp-gold-light);

}



.pp-solutions-steps h3 {

    margin-bottom:10px;

}



.pp-solutions-steps p {

    color:#89919a;

    font-size:14px;

    line-height:1.6;

}



/* =====================================================
   TRUST
===================================================== */


.pp-solutions-trust {

    padding:25px 0 75px;

}



.pp-solutions-trust-box {

    padding:35px 45px;

    border:

        1px solid rgba(231,167,47,.25);

    border-radius:18px;

}



.pp-solutions-trust-box h2 {

    color:var(--pp-gold-light);

}



.pp-solutions-trust-box p {

    color:var(--pp-muted);

}



/* =====================================================
   FINAL
===================================================== */


.pp-solutions-final {

    padding-bottom:90px;

}



.pp-solutions-final-box {

    padding:70px 40px;

    text-align:center;

    border:

        1px solid rgba(231,167,47,.25);

    border-radius:20px;


    background:
        radial-gradient(
            circle at top,
            rgba(231,167,47,.1),
            transparent 45%
        );

}



.pp-solutions-final-box h2 {

    max-width:850px;

    margin:0 auto 15px;

    font-size:
        clamp(
            38px,
            3.8vw,
            54px
        );

}



.pp-solutions-final-box p {

    color:var(--pp-muted);

    margin-bottom:30px;

}



/* =====================================================
   RESPONSIVE
===================================================== */


@media(max-width:1000px){

.pp-solutions-hero-inner{

grid-template-columns:1fr;

}


.pp-solutions-cards,
.pp-solutions-consider-grid{

grid-template-columns:repeat(2,1fr);

}


}



@media(max-width:700px){


.pp-solutions-cards,
.pp-solutions-consider-grid,
.pp-solutions-steps{

grid-template-columns:1fr;

}



.pp-solutions-hero-inner{

padding:55px 0;

}



.pp-solutions-floating{

display:none;

}



}