
/* =========================================================
   S SQUARE CONSULTANTS - MODERN HOMEPAGE CSS
   Add after style.css
========================================================= */

:root{
    --ss-blue:#0759e8;
    --ss-blue-dark:#062c70;
    --ss-navy:#061a3a;
    --ss-text:#12213b;
    --ss-muted:#66738a;
    --ss-border:#e8edf5;
    --ss-bg:#f7faff;
    --ss-white:#fff;
    --ss-shadow:0 18px 55px rgba(10,47,110,.10);
}

.ss-section{
    padding:110px 0;
    background:#fff;
}

.ss-section-heading{
    max-width:760px;
    margin:0 auto 55px;
}

.ss-section-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:12px;
    line-height:1;
    font-weight:800;
    letter-spacing:1.2px;
    color:var(--ss-blue);
    text-transform:uppercase;
    margin-bottom:15px;
}

.ss-section-heading h2{
    margin:0 0 16px;
    color:var(--ss-text);
    font-size:38px;
    line-height:1.18;
    font-weight:800;
}

.ss-section-heading p{
    max-width:650px;
    margin:0 auto;
    color:var(--ss-muted);
    font-size:16px;
    line-height:1.75;
}


/* HERO */
.ss-home-hero{
    position:relative;
    overflow:hidden;
    padding:120px 0 55px;
    min-height:590px;
    background:
        radial-gradient(circle at 80% 30%,rgba(36,112,255,.12),transparent 28%),
        linear-gradient(135deg,#fff 0%,#f7faff 60%,#eef5ff 100%);
}

.ss-home-hero:before{
    content:"";
    position:absolute;
    width:520px;
    height:520px;
    right:-170px;
    top:-180px;
    border:1px solid rgba(7,89,232,.12);
    border-radius:50%;
}

.ss-hero-glow{
    position:absolute;
    border-radius:50%;
    filter:blur(2px);
    pointer-events:none;
}

.ss-glow-1{
    width:180px;
    height:180px;
    background:rgba(7,89,232,.06);
    left:-90px;
    top:30px;
}

.ss-glow-2{
    width:130px;
    height:130px;
    background:rgba(62,196,255,.08);
    right:20%;
    bottom:-70px;
}

.ss-hero-copy{
    position:relative;
    z-index:2;
}

.ss-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:8px 13px;
    margin-bottom:20px;
    border:1px solid #dfe9fb;
    background:rgba(255,255,255,.8);
    border-radius:50px;
    color:#31598f;
    font-size:11px;
    font-weight:800;
}

.ss-dot{
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--ss-blue);
    box-shadow:0 0 0 4px rgba(7,89,232,.1);
}

.ss-hero-copy h1{
    max-width:680px;
    margin:0 0 20px;
    color:var(--ss-text);
    font-size:49px;
    line-height:1.08;
    letter-spacing:-1.8px;
    font-weight:850;
}

.ss-hero-copy h1 span{
    color:var(--ss-blue);
}

.ss-hero-copy p{
    max-width:620px;
    margin:0 0 28px;
    color:#5c6b81;
    font-size:16px;
    line-height:1.75;
}

.ss-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-bottom:30px;
}

.ss-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:48px;
    padding:0 22px;
    border-radius:8px;
    font-size:13px;
    font-weight:800;
    transition:.25s ease;
}

.ss-btn:hover{
    transform:translateY(-2px);
}

.ss-btn-primary{
    color:#fff!important;
    background:linear-gradient(135deg,#0862f3,#064bd0);
    box-shadow:0 12px 25px rgba(7,89,232,.20);
}

.ss-btn-outline{
    color:var(--ss-text)!important;
    background:#fff;
    border:1px solid #ccd8ea;
}

.ss-btn-outline:hover{
    border-color:var(--ss-blue);
    color:var(--ss-blue)!important;
}

.ss-mini-stats{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.ss-mini-stat{
    display:flex;
    flex-direction:column;
    min-width:105px;
    padding:11px 13px;
    border:1px solid #e4ebf6;
    border-radius:10px;
    background:rgba(255,255,255,.75);
}

.ss-mini-stat strong{
    color:var(--ss-blue);
    font-size:22px;
    line-height:1.1;
}

.ss-mini-stat span{
    margin-top:4px;
    color:#718096;
    font-size:12px;
    font-weight:700;
}

.ss-hero-art{
    position:relative;
    min-height:490px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.ss-hero-image-wrap{
    position:relative;
    z-index:2;
    width:430px;
    height:430px;
    overflow:hidden;
    border-radius:50% 50% 45% 45%;
    border:12px solid rgba(255,255,255,.75);
    box-shadow:0 25px 65px rgba(8,61,140,.18);
}

.ss-hero-image-wrap:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(5,81,216,.08),transparent);
}

.ss-hero-image-wrap img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position: top;
}

.ss-hero-ring{
    position:absolute;
    z-index:1;
    border:2px solid rgba(7,89,232,.18);
    border-radius:50%;
}

.ss-ring-one{
    width:510px;
    height:510px;
}

.ss-ring-two{
    width:600px;
    height:600px;
    border-color:rgba(62,196,255,.10);
}

.ss-float-card{
    position:absolute;
    z-index:4;
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 17px;
    border:1px solid rgba(255,255,255,.8);
    border-radius:14px;
    background:rgba(255,255,255,.94);
    box-shadow:0 18px 40px rgba(10,47,110,.14);
}

.ss-float-top{
    top:55px;
    right:0;
    max-width:245px;
}

.ss-float-bottom{
    left:5px;
    bottom:45px;
}

.ss-float-icon{
    width:42px;
    height:42px;
    display:flex !important;
    place-items:center;
    justify-content: center;
    border-radius:12px;
    background:#edf4ff;
    color:var(--ss-blue);
}

.ss-float-card small,
.ss-float-card span{
    display:block;
    color:#718096;
    font-size:9px;
    line-height:1.4;
}

.ss-float-card strong{
    display:block;
    color:var(--ss-text);
    font-size:13px;
}


/* SERVICES */
.ss-services{
    padding-bottom:95px;
}

.ss-service-grid{
    margin-top:10px;
}

.ss-service-grid>[class*="col-"]{
    margin-bottom:24px;
}

.ss-service-card{
    position:relative;
    display:block;
    height:100%;
    min-height:250px;
    padding:28px;
    overflow:hidden;
    border:1px solid var(--ss-border);
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 28px rgba(20,55,105,.04);
    transition:.3s ease;
}

.ss-service-card:before{
    content:"";
    position:absolute;
    width:110px;
    height:110px;
    border-radius:50%;
    right:-55px;
    bottom:-55px;
    background:rgba(7,89,232,.04);
    transition:.3s ease;
}

.ss-service-card:hover{
    transform:translateY(-7px);
    border-color:#cdddf9;
    box-shadow:var(--ss-shadow);
}

.ss-service-card:hover:before{
    transform:scale(2);
}

.ss-service-icon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    margin-bottom:22px;
    border-radius:14px;
    color:#0759e8;
    background:#edf4ff;
    font-size:19px;
}

.ss-service-icon.ss-green{color:#20a86b;background:#ecfaf4}
.ss-service-icon.ss-purple{color:#7357d9;background:#f2efff}
.ss-service-icon.ss-orange{color:#ee8b27;background:#fff5e9}
.ss-service-icon.ss-cyan{color:#16a4bf;background:#ebfbfd}
.ss-service-icon.ss-pink{color:#e74b92;background:#fff0f7}

.ss-card-number{
    position:absolute;
    top:25px;
    right:25px;
    color:#c7d2e4;
    font-size:11px;
    font-weight:800;
}

.ss-service-card h3{
    margin:0 0 11px;
    color:var(--ss-text);
    font-size:19px;
    font-weight:800;
}

.ss-service-card p{
    margin:0 0 20px;
    color:var(--ss-muted);
    font-size:13px;
    line-height:1.65;
}

.ss-card-link{
    color:var(--ss-blue);
    font-size:12px;
    font-weight:800;
}

.ss-card-link i{
    margin-left:5px;
    transition:.2s ease;
}

.ss-service-card:hover .ss-card-link i{
    margin-left:9px;
}


/* TRAINING */
.ss-training-section{
    padding:0 0 110px;
    background:#fff;
}

.ss-training-shell{
    position:relative;
    padding:45px;
    border:1px solid #dce8fb;
    border-radius:18px;
    background:
        radial-gradient(circle at 10% 20%,rgba(7,89,232,.06),transparent 28%),
        linear-gradient(135deg,#f6faff,#edf5ff);
    overflow:hidden;
}

.ss-training-shell:after{
    content:"";
    position:absolute;
    width:320px;
    height:320px;
    right:-150px;
    top:-150px;
    border:1px solid rgba(7,89,232,.08);
    border-radius:50%;
}

.ss-training-intro{
    position:relative;
    z-index:2;
    padding-right:20px;
}

.ss-training-badge{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin-bottom:15px;
    color:var(--ss-blue);
    font-size:10px;
    font-weight:900;
    letter-spacing:.7px;
}

.ss-training-intro h2{
    margin:0 0 15px;
    color:var(--ss-text);
    font-size:28px;
    line-height:1.2;
    font-weight:850;
}

.ss-training-intro h2 span,
.ss-training-intro h3 strong{
    color:var(--ss-blue);
}

.ss-training-intro h3{
    margin:0 0 15px;
    color:var(--ss-text);
    font-size:23px;
    line-height:1.25;
    font-weight:800;
}

.ss-training-intro p{
    margin-bottom:25px;
    color:var(--ss-muted);
    font-size:13px;
    line-height:1.7;
}

.ss-training-card{
    position:relative;
    height:100%;
    min-height:315px;
    padding:24px 21px;
    border:1px solid rgba(219,229,244,.9);
    border-radius:14px;
    background:rgba(255,255,255,.92);
    box-shadow:0 10px 30px rgba(19,62,120,.05);
}

.ss-training-icon{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    margin-bottom:16px;
    border-radius:12px;
    color:#5b5ee8;
    background:#eeefff;
}

.ss-training-icon.ss-development{
    color:#21a967;
    background:#eaf9f1;
}

.ss-training-icon.ss-ai{
    color:#9a53db;
    background:#f7edff;
}

.ss-training-card h3{
    min-height:42px;
    margin:0 0 12px;
    color:var(--ss-text);
    font-size:15px;
    font-weight:800;
}

.ss-training-card ul{
    padding:0;
    margin:0 0 15px;
    list-style:none;
}

.ss-training-card li{
    position:relative;
    padding-left:13px;
    margin-bottom:7px;
    color:#617087;
    font-size:10px;
    line-height:1.35;
}

.ss-training-card li:before{
    content:"";
    position:absolute;
    left:0;
    top:5px;
    width:4px;
    height:4px;
    border-radius:50%;
    background:var(--ss-blue);
}

.ss-training-tags{
    padding-top:10px;
    border-top:1px solid #edf1f7;
    color:#8290a5;
    font-size:8px;
    line-height:1.5;
}

.ss-training-tags span{
    margin:0 3px;
    color:#c5cedb;
}

.ss-training-card>a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-top:11px;
    color:var(--ss-blue);
    font-size:10px;
    font-weight:800;
}

.ss-training-benefits{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0;
    margin-top:25px;
    padding:16px 20px;
    border-radius:12px;
    background:var(--ss-navy);
}

.ss-training-benefits>div{
    display:flex;
    align-items:center;
    gap:11px;
    padding:4px 18px;
    border-right:1px solid rgba(255,255,255,.1);
}

.ss-training-benefits>div:last-child{
    border-right:0;
}

.ss-training-benefits i{
    width:33px;
    height:33px;
    display:grid;
    place-items:center;
    flex:0 0 33px;
    border-radius:50%;
    color:#8dbbff;
    background:rgba(255,255,255,.08);
    font-size:12px;
}

.ss-training-benefits strong,
.ss-training-benefits span{
    display:block;
}

.ss-training-benefits strong{
    color:#fff;
    font-size:10px;
}

.ss-training-benefits span{
    margin-top:3px;
    color:#9facbf;
    font-size:8px;
}


/* PORTFOLIO */
.ss-portfolio{
    background:#fbfcff;
}

.ss-portfolio-filters{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:7px;
    margin:-22px auto 35px;
}

.ss-portfolio-filters span{
    padding:7px 13px;
    border:1px solid #e2e8f1;
    border-radius:50px;
    color:#6e7d92;
    background:#fff;
    font-size:10px;
    font-weight:700;
}

.ss-portfolio-filters span.active{
    color:#fff;
    border-color:var(--ss-blue);
    background:var(--ss-blue);
}

.ss-project-card{
    height:100%;
    margin-bottom:25px;
    overflow:hidden;
    border:1px solid #e6ebf3;
    border-radius:13px;
    background:#fff;
    box-shadow:0 7px 25px rgba(20,55,105,.05);
    transition:.3s ease;
}

.ss-project-card:hover{
    transform:translateY(-6px);
    box-shadow:var(--ss-shadow);
}

.ss-project-image{
    position:relative;
    height:185px;
    overflow:hidden;
    background:#edf3fa;
}

.ss-project-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.45s ease;
}

.ss-project-card:hover .ss-project-image img{
    transform:scale(1.05);
}

.ss-project-open{
    position:absolute;
    top:12px;
    right:12px;
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:var(--ss-blue);
    background:#fff;
    box-shadow:0 5px 15px rgba(0,0,0,.12);
    font-size:10px;
}

.ss-project-body{
    padding:18px;
}

.ss-project-body>span{
    color:var(--ss-blue);
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
}

.ss-project-body h3{
    margin:7px 0 4px;
    color:var(--ss-text);
    font-size:17px;
    font-weight:800;
}

.ss-project-body p{
    min-height:30px;
    margin:0 0 12px;
    color:#7a879a;
    font-size:10px;
}

.ss-project-body>a{
    color:var(--ss-blue);
    font-size:10px;
    font-weight:800;
}

.ss-more-projects{
    margin-top:10px;
}


/* WHY */
.ss-why-section{
    padding:80px 0;
    background:#fff;
}

.ss-why-shell{
    padding:50px;
    border-radius:18px;
    color:#fff;
    background:linear-gradient(110deg,#061936,#083c91);
    box-shadow:0 25px 60px rgba(3,37,90,.17);
}

.ss-why-copy{
    padding-right:35px;
}

.ss-why-copy .ss-section-kicker{
    color:#8cb7ff;
}

.ss-why-copy h2{
    margin:0 0 18px;
    color:#fff;
    font-size:32px;
    line-height:1.2;
    font-weight:850;
}

.ss-why-copy h2 span{
    color:#75aaff;
}

.ss-why-copy p{
    margin:0;
    color:#aebdd4;
    font-size:13px;
    line-height:1.7;
}

.ss-stat-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}

.ss-big-stat{
    padding:24px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:13px;
    background:rgba(255,255,255,.055);
}

.ss-big-stat strong{
    display:block;
    color:#fff;
    font-size:30px;
    line-height:1;
}

.ss-big-stat span{
    display:block;
    margin-top:8px;
    color:#fff;
    font-size:12px;
    font-weight:800;
}

.ss-big-stat small{
    display:block;
    margin-top:7px;
    color:#9eb0cb;
    font-size:9px;
    line-height:1.4;
}


/* PROCESS */
.ss-process{
    background:#fff;
}

.ss-process-line{
    position:relative;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:20px;
}

.ss-process-line:before{
    content:"";
    position:absolute;
    left:9%;
    right:9%;
    top:28px;
    border-top:1px dashed #b9cef3;
}

.ss-process-item{
    position:relative;
    z-index:2;
    text-align:center;
}

.ss-process-icon{
    width:58px;
    height:58px;
    display:grid;
    place-items:center;
    margin:0 auto 10px;
    border:1px solid #d7e4f9;
    border-radius:50%;
    color:var(--ss-blue);
    background:#fff;
    box-shadow:0 6px 20px rgba(7,89,232,.07);
}

.ss-process-item>span{
    display:block;
    color:#a2afc1;
    font-size:9px;
    font-weight:800;
}

.ss-process-item h3{
    margin:5px 0 7px;
    color:var(--ss-text);
    font-size:14px;
    font-weight:800;
}

.ss-process-item p{
    max-width:145px;
    margin:0 auto;
    color:#7b899d;
    font-size:10px;
    line-height:1.5;
}


/* TESTIMONIAL */
.ss-testimonial{
    padding:30px 0 80px;
    background:#fff;
}

.ss-testimonial-card{
    position:relative;
    max-width:880px;
    min-height:170px;
    display:flex;
    align-items:center;
    gap:25px;
    margin:auto;
    padding:35px 55px;
    border:1px solid #e5ebf3;
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 40px rgba(15,50,100,.05);
}

.ss-quote-mark{
    position:absolute;
    left:22px;
    top:8px;
    color:#dbe8ff;
    font-size:75px;
    font-family:Georgia,serif;
    line-height:1;
}

.ss-client-avatar{
    width:68px;
    height:68px;
    flex:0 0 68px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:var(--ss-blue);
    background:#edf4ff;
}

.ss-testimonial-content p{
    margin:0 0 10px;
    color:#66758a;
    font-size:13px;
    line-height:1.7;
}

.ss-testimonial-content strong,
.ss-testimonial-content span{
    display:block;
}

.ss-testimonial-content strong{
    color:var(--ss-text);
    font-size:12px;
}

.ss-testimonial-content span{
    margin-top:2px;
    color:#9aa6b7;
    font-size:9px;
}


/* CTA */
.ss-cta-section{
    padding:0 0 85px;
    background:#fff;
}

.ss-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:35px 45px;
    border-radius:16px;
    color:#fff;
    background:linear-gradient(100deg,#0757e2,#0937a3);
    box-shadow:0 20px 45px rgba(7,74,190,.2);
}

.ss-cta>div:first-child{
    max-width:600px;
}

.ss-cta span{
    color:#a9cbff;
    font-size:10px;
    font-weight:900;
    letter-spacing:1px;
}

.ss-cta h2{
    margin:7px 0 6px;
    color:#fff;
    font-size:25px;
    font-weight:850;
}

.ss-cta p{
    margin:0;
    color:#c8dcff;
    font-size:12px;
}

.ss-cta-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.ss-btn-white{
    color:var(--ss-blue)!important;
    background:#fff;
}

.ss-btn-light{
    color:#fff!important;
    border:1px solid rgba(255,255,255,.5);
    background:rgba(255,255,255,.08);
}


/* CONTACT */
.ss-contact{
    padding-top:85px;
    background:#f8fbff;
}

.ss-contact-box{
    max-width:900px;
    margin:auto;
    padding:35px;
    border:1px solid #e2eaf6;
    border-radius:16px;
    background:#fff;
    box-shadow:0 15px 45px rgba(12,51,105,.07);
}


/* RESPONSIVE */
@media(max-width:1199px){
    .ss-hero-copy h1{font-size:46px}
    .ss-hero-image-wrap{width:380px;height:380px}
    .ss-ring-one{width:450px;height:450px}
    .ss-ring-two{width:520px;height:520px}
    .ss-float-top{right:-5px}
    .ss-training-shell{padding:35px}
}

@media(max-width:991px){
    .ss-home-hero{padding:55px 0 35px}
    .ss-hero-copy{text-align:center}
    .ss-eyebrow{margin-left:auto;margin-right:auto}
    .ss-hero-copy h1{margin-left:auto;margin-right:auto;font-size:43px}
    .ss-hero-copy p{margin-left:auto;margin-right:auto}
    .ss-hero-actions,.ss-mini-stats{justify-content:center}
    .ss-hero-art{min-height:500px;margin-top:20px}
    .ss-training-intro{padding-right:0;margin-bottom:30px;text-align:center}
    .ss-training-intro .ss-training-badge{justify-content:center}
    .ss-training-benefits{grid-template-columns:repeat(2,1fr)}
    .ss-training-benefits>div:nth-child(2){border-right:0}
    .ss-training-benefits>div{margin-bottom:8px}
    .ss-why-copy{padding-right:0;margin-bottom:30px}
    .ss-process-line{grid-template-columns:repeat(3,1fr);gap:35px}
    .ss-process-line:before{display:none}
    .ss-cta{flex-direction:column;text-align:center}
    .ss-cta-actions{justify-content:center}
}

@media(max-width:767px){
    .ss-section{padding:75px 0}
    .ss-section-heading h2{font-size:30px}
    .ss-hero-copy h1{font-size:36px;letter-spacing:-1px}
    .ss-hero-copy p{font-size:14px}
    .ss-mini-stats{display:grid;grid-template-columns:repeat(2,1fr);text-align:left}
    .ss-hero-art{min-height:390px}
    .ss-hero-image-wrap{width:300px;height:300px}
    .ss-ring-one{width:350px;height:350px}
    .ss-ring-two{width:420px;height:420px}
    .ss-float-top{top:20px;right:0;max-width:200px}
    .ss-float-bottom{left:0;bottom:5px}
    .ss-training-shell{padding:25px 18px}
    .ss-training-card{margin-bottom:18px}
    .ss-training-benefits{grid-template-columns:1fr;padding:14px}
    .ss-training-benefits>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.08);padding:12px 5px}
    .ss-training-benefits>div:last-child{border-bottom:0}
    .ss-project-image{height:210px}
    .ss-why-shell{padding:30px 22px}
    .ss-stat-grid{grid-template-columns:1fr 1fr}
    .ss-process-line{grid-template-columns:1fr 1fr}
    .ss-testimonial-card{padding:30px 25px;flex-direction:column;text-align:center}
    .ss-cta{padding:30px 22px}
    .ss-cta h2{font-size:22px}
    .ss-contact-box{padding:20px}
}

@media(max-width:480px){
    .ss-hero-copy h1{font-size:31px}
    .ss-hero-actions{flex-direction:column}
    .ss-btn{width:100%}
    .ss-hero-art{min-height:340px}
    .ss-hero-image-wrap{width:250px;height:250px}
    .ss-ring-one{width:295px;height:295px}
    .ss-ring-two{width:350px;height:350px}
    .ss-float-card{padding:10px}
    .ss-float-top{right:-4px}
    .ss-float-bottom{left:-4px}
    .ss-float-icon{width:34px;height:34px}
    .ss-float-card strong{font-size:10px}
    .ss-float-card span,.ss-float-card small{font-size:8px}
    .ss-stat-grid{grid-template-columns:1fr}
    .ss-process-line{grid-template-columns:1fr}
    .ss-portfolio-filters{justify-content:flex-start}
}


/* SMALL ANIMATION */
@keyframes ssFloat{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-7px)}
}

.ss-float-top{animation:ssFloat 4s ease-in-out infinite}
.ss-float-bottom{animation:ssFloat 4.5s ease-in-out infinite reverse}

span.ss-float-icon i {
    color: #0751da;
    font-size: 20px;
}


/* =========================================================
   S SQUARE CONSULTANTS - MODERN FOOTER
========================================================= */

.ss-modern-footer{
    position:relative;
    overflow:hidden;
    padding:0 0 20px;
    color:#aebbd0;
    background:
        radial-gradient(circle at 85% 15%,rgba(17,93,224,.14),transparent 24%),
        radial-gradient(circle at 10% 65%,rgba(0,176,255,.07),transparent 20%),
        #080d18;
}

.ss-modern-footer:before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background-image:
        linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
    background-size:55px 55px;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.6),transparent 75%);
}

.ss-footer-glow{
    position:absolute;
    width:320px;
    height:320px;
    border:1px solid rgba(72,139,255,.09);
    border-radius:50%;
    pointer-events:none;
}

.ss-footer-glow-left{
    left:-180px;
    top:180px;
}

.ss-footer-glow-right{
    right:-190px;
    top:40px;
}


/* CTA */
.ss-footer-cta{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:38px 42px;
    margin-top:-1px;
    border:1px solid rgba(103,158,255,.22);
    border-radius:0 0 20px 20px;
    background:
        linear-gradient(110deg,rgba(9,73,178,.72),rgba(5,38,98,.82));
    box-shadow:0 20px 60px rgba(0,0,0,.18);
}

.ss-footer-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-bottom:9px;
    color:#86b5ff;
    font-size:10px;
    font-weight:900;
    letter-spacing:1px;
}

.ss-footer-cta h2{
    margin:0 0 8px;
    color:#fff;
    font-size:30px;
    line-height:1.2;
    font-weight:850;
}

.ss-footer-cta h2 span{
    color:#66a4ff;
}

.ss-footer-cta p{
    max-width:620px;
    margin:0;
    color:#b7c9e6;
    font-size:12px;
    line-height:1.7;
}

.ss-footer-cta-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    flex-shrink:0;
}

.ss-footer-primary-btn,
.ss-footer-secondary-btn{
    min-height:46px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    padding:0 20px;
    border-radius:8px;
    font-size:11px;
    font-weight:800;
    transition:.25s ease;
}

.ss-footer-primary-btn{
    color:#0759e8!important;
    background:#fff;
    box-shadow:0 10px 25px rgba(0,0,0,.15);
}

.ss-footer-secondary-btn{
    color:#fff!important;
    border:1px solid rgba(255,255,255,.25);
    background:rgba(255,255,255,.06);
}

.ss-footer-primary-btn:hover,
.ss-footer-secondary-btn:hover{
    transform:translateY(-2px);
}


/* MAIN */
.ss-footer-main{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.45fr .8fr 1fr 1fr 1.2fr;
    gap:45px;
    padding:75px 0 55px;
}

.ss-footer-brand{
    padding-right:20px;
}

.ss-footer-logo{
    display:inline-block;
    margin-bottom:20px;
}

.ss-footer-logo img {
    width: auto;
    max-width: 210px;
    max-height: 85px;
    object-fit: contain;
}

.ss-footer-brand p{
    max-width:310px;
    margin:0 0 20px;
    color:#8998ae;
    font-size:12px;
    line-height:1.8;
}

.ss-footer-badges{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-bottom:23px;
}

.ss-footer-badges span{
    color:#9ba9bd;
    font-size:12px;
}

.ss-footer-badges i{
    margin-right:7px;
    color:#3f91ff;
}

.ss-footer-socials{
    display:flex;
    gap:8px;
}

.ss-footer-socials a{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
    color:#a9b7ca;
    background:rgba(255,255,255,.045);
    font-size:11px;
    transition:.25s ease;
}

.ss-footer-socials a:hover{
    color:#fff;
    border-color:#2f7cff;
    background:#0759e8;
    transform:translateY(-3px);
}


/* COLUMNS */
.ss-footer-column h3{
    position:relative;
    margin:0 0 23px;
    color:#fff;
    font-size:16px;
    line-height:1.2;
    font-weight:800;
}

.ss-footer-column h3:after{
    content:"";
    display:block;
    width:24px;
    height:2px;
    margin-top:9px;
    border-radius:5px;
    background:#1768ed;
}

.ss-footer-column ul{
    padding:0;
    margin:0;
    list-style:none;
}

.ss-footer-column li{
    margin-bottom:11px;
}

.ss-footer-column li a{
    display:inline-flex;
    align-items:center;
    color:#8998ae;
    font-size:12px;
    line-height:1.4;
    transition:.2s ease;
}

.ss-footer-column li a:before{
    content:"";
    width:0;
    height:1px;
    margin-right:0;
    background:#4c96ff;
    transition:.2s ease;
}

.ss-footer-column li a:hover{
    color:#fff;
    transform:translateX(4px);
}

.ss-footer-column li a:hover:before{
    width:7px;
    margin-right:5px;
}


/* ACADEMY */
.ss-footer-academy{
    display:inline-flex;
    padding:6px 9px;
    margin:-5px 0 15px;
    border:1px solid rgba(66,133,255,.22);
    border-radius:5px;
    color:#6da6ff;
    background:rgba(31,106,232,.07);
    font-size:10px;
    font-weight:900;
    letter-spacing:.7px;
}


/* CONTACT */
.ss-footer-contact-card{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:12px;
    padding:9px;
    border:1px solid rgba(255,255,255,.055);
    border-radius:8px;
    background:rgba(255,255,255,.025);
    transition:.25s ease;
}

.ss-footer-contact-card:hover{
    border-color:rgba(65,137,255,.35);
    background:rgba(19,90,205,.08);
    transform:translateX(3px);
}

.ss-contact-icon{
    width:31px;
    height:31px;
    display:grid;
    place-items:center;
    flex:0 0 31px;
    border-radius:8px;
    color:#6ca7ff;
    background:rgba(38,113,235,.12);
    font-size:10px;
}

.ss-footer-contact-card small,
.ss-footer-contact-card strong{
    display:block;
}

.ss-footer-contact-card small{
    margin-bottom:2px;
    color:#718198;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.5px;
        line-height: normal;
}

.ss-footer-contact-card strong{
    color:#dce5f3;
    font-size:12px;
}

.ss-footer-contact-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:38px;
    margin-top:17px;
    border-radius:7px;
    color:#fff!important;
    background:#0759e8;
    font-size:10px;
    font-weight:800;
    transition:.25s ease;
}

.ss-footer-contact-btn:hover{
    background:#176ff5;
    transform:translateY(-2px);
}


/* TECHNOLOGY STRIP */
.ss-footer-tech{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    gap:30px;
    padding:18px 0;
    border-top:1px solid rgba(255,255,255,.07);
    border-bottom:1px solid rgba(255,255,255,.07);
}

.ss-footer-tech>span{
    flex:0 0 auto;
    color:#65758d;
    font-size:12px;
    font-weight:900;
    letter-spacing:1px;
}

.ss-tech-list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:9px;
}

.ss-tech-list b{
    padding:6px 10px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:5px;
    color:#8c9bb0;
    background:rgba(255,255,255,.025);
    font-size:12px;
    font-weight:700;
}


/* BOTTOM */
.ss-footer-bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding-top:20px;
}

.ss-footer-bottom p{
    margin:0;
    color:#59687e;
    font-size:12px;
}

.ss-footer-bottom p strong{
    color:#8998ae;
}

.ss-footer-bottom-links{
    display:flex;
    flex-wrap:wrap;
    gap:20px;
}

.ss-footer-bottom-links a{
    color:#66758b;
    font-size:12px;
}

.ss-footer-bottom-links a:hover{
    color:#fff;
}


/* BACK TO TOP */
.ss-modern-back-top{
    position:fixed;
    z-index:999;
    right:25px;
    bottom:25px;
    width:45px;
    height:45px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.1);
    border-radius:50%;
    color:#fff!important;
    background:#0759e8;
    box-shadow:0 10px 30px rgba(7,89,232,.28);
    opacity:.9;
    transition:.25s ease;
}

.ss-modern-back-top:hover{
    transform:translateY(-4px);
    opacity:1;
}


/* RESPONSIVE */
@media(max-width:1199px){
    .ss-footer-main{
        grid-template-columns:1.3fr 1fr 1fr 1fr;
    }

    .ss-footer-contact{
        grid-column:span 2;
    }
}

@media(max-width:991px){
    .ss-footer-cta{
        align-items:flex-start;
        flex-direction:column;
    }

    .ss-footer-main{
        grid-template-columns:1.3fr 1fr 1fr;
        gap:40px 30px;
    }

    .ss-footer-contact{
        grid-column:auto;
    }

    .ss-footer-tech{
        align-items:flex-start;
        flex-direction:column;
        gap:15px;
    }
}

@media(max-width:767px){
    .ss-footer-cta{
        padding:30px 25px;
        border-radius:0 0 15px 15px;
    }

    .ss-footer-cta h2{
        font-size:25px;
    }

    .ss-footer-cta-actions{
        width:100%;
    }

    .ss-footer-primary-btn,
    .ss-footer-secondary-btn{
        flex:1;
    }

    .ss-footer-main{
        grid-template-columns:1fr 1fr;
        padding:55px 0 40px;
    }

    .ss-footer-brand{
        grid-column:span 2;
        padding-right:0;
    }

    .ss-footer-brand p{
        max-width:100%;
    }

    .ss-footer-bottom{
        align-items:flex-start;
        flex-direction:column;
    }
}

@media(max-width:480px){
    .ss-footer-main{
        grid-template-columns:1fr;
    }

    .ss-footer-brand{
        grid-column:auto;
    }

    .ss-footer-cta-actions{
        flex-direction:column;
    }

    .ss-footer-primary-btn,
    .ss-footer-secondary-btn{
        width:100%;
    }

    .ss-footer-tech{
        display:block;
    }

    .ss-footer-tech>span{
        display:block;
        margin-bottom:12px;
    }

    .ss-footer-bottom-links{
        gap:12px;
    }

    .ss-modern-back-top{
        right:15px;
        bottom:15px;
        width:40px;
        height:40px;
    }
}
