/*==========================================================
YottaBrain Service Page
Matches Main Website Theme
==========================================================*/

/*==========================
ROOT VARIABLES
===========================*/

:root{

    --primary:#C92027;
    --primary-dark:#A8181E;
    --primary-light:#FDECEC;

    --heading:#102a4c;
    --text:#6B7280;

    --white:#ffffff;
    --light:#F8FAFC;

    --border:#E5E7EB;

    --radius:20px;

    --shadow:
        0 10px 35px rgba(15,23,42,.08);

    --shadow-lg:
        0 18px 50px rgba(15,23,42,.12);

    --transition:.35s ease;

}


/*==========================
SERVICE PAGE
===========================*/

.service-page{

    background:#fff;

    position:relative;

    overflow:hidden;

}


/*==========================
CONTAINER
===========================*/

.service-page .container{

    max-width:1240px;

    margin:auto;

    padding:80px 15px;

}


/*==========================
LAYOUT
===========================*/

.service-layout{

    display:grid;

    grid-template-columns:

        minmax(0,2fr)

        360px;

    gap:45px;

    align-items:start;

}


/*==========================
LEFT
===========================*/

.service-main{

    min-width:0;

}


/*==========================
RIGHT SIDEBAR
===========================*/

.service-sidebar{

    position:sticky;

    top:120px;

}


/*==========================
SECTIONS
===========================*/

.service-section{

    margin-top:45px;

}


/*==========================
SECTION TITLE
===========================*/

.section-title{

    margin-bottom:35px;

}

.section-title span{

    display:inline-block;

    color:var(--primary);

    text-transform:uppercase;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    margin-bottom:10px;

}

.section-title h2{

    color:var(--heading);

    font-size:40px;

    line-height:1.25;

    font-weight:800;

    margin-bottom:18px;

}

.section-title p{

    color:var(--text);

    font-size:17px;

    line-height:1.9;

    max-width:760px;

}

/*==========================================================
SERVICE OVERVIEW
==========================================================*/

.service-overview{

    background:#ffffff;

}

/*==========================
BANNER IMAGE
===========================*/

.service-image{

    position:relative;

    overflow:hidden;

    border-radius:22px;

    box-shadow:var(--shadow);

    margin-bottom:40px;

}

.service-image img{

    width:100%;

    display:block;

    transition:transform .6s ease;

}

.service-image:hover img{

    transform:scale(1.05);

}

.service-image:after{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
        to top,
        rgba(0,0,0,.08),
        transparent
    );

}


/*==========================
HERO CONTENT
===========================*/

.service-lead{

    font-size:20px;

    line-height:1.9;

    color:#374151;

    font-weight:500;

    margin-bottom:25px;

}

.service-description{

    margin-top:20px;

}

.service-description p{

    font-size:16px;

    line-height:1.9;

    color:var(--text);

    margin-bottom:20px;

}


/*==========================
HIGHLIGHT GRID
===========================*/

.service-highlights{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

    margin-top:45px;

}


/*==========================
HIGHLIGHT CARD
===========================*/

.highlight-card{

    display:flex;

    align-items:center;

    gap:16px;

    background:#ffffff;

    border:1px solid var(--border);

    border-radius:16px;

    padding:18px 20px;

    transition:var(--transition);

    box-shadow:0 4px 18px rgba(0,0,0,.04);

}

.highlight-card:hover{

    transform:translateY(-6px);

    border-color:var(--primary);

    box-shadow:var(--shadow);

}


/*==========================
ICON
===========================*/

.highlight-card i{

    width:46px;

    height:46px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:var(--primary-light);

    color:var(--primary);

    font-size:18px;

    flex-shrink:0;

    transition:var(--transition);

}

.highlight-card:hover i{

    background:var(--primary);

    color:#ffffff;

    transform:rotate(360deg);

}


/*==========================
TEXT
===========================*/

.highlight-card span{

    color:var(--heading);

    font-size:15px;

    font-weight:600;

    line-height:1.6;

}


/*==========================
OVERVIEW DECORATION
===========================*/

.service-overview{

    position:relative;

}

.service-overview:before{

    content:"";

    position:absolute;

    top:-25px;

    right:-25px;

    width:130px;

    height:130px;

    border-radius:50%;

    background:rgba(201,32,39,.04);

    z-index:-1;

}

.service-overview:after{

    content:"";

    position:absolute;

    left:-30px;

    bottom:-30px;

    width:170px;

    height:170px;

    border-radius:50%;

    background:rgba(201,32,39,.03);

    z-index:-1;

}

/*==========================================================
SIDEBAR
==========================================================*/

.service-sidebar{

    position:sticky;

    top:120px;

}


/*==========================
SIDEBAR CARD
===========================*/

.sidebar-card{

    background:#ffffff;

    border:1px solid var(--border);

    border-radius:20px;

    padding:35px;

    box-shadow:var(--shadow);

    margin-bottom:35px;

}

.sidebar-title{

    color:var(--heading);

    font-size:26px;

    font-weight:700;

    margin-bottom:28px;

    position:relative;

}

.sidebar-title::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-12px;

    width:55px;

    height:4px;

    border-radius:20px;

    background:var(--primary);

}


/*==========================
SERVICE MENU
===========================*/

.service-menu{

    margin:0;

    padding:0;

    list-style:none;

}

.service-menu li{

    margin-bottom:14px;

}

.service-menu li:last-child{

    margin-bottom:0;

}


/*==========================
MENU LINK
===========================*/

.service-menu a{

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:16px 20px;

    border-radius:14px;

    border:1px solid var(--border);

    background:#ffffff;

    color:var(--heading);

    font-size:15px;

    font-weight:600;

    transition:var(--transition);

}

.service-menu a i{

    color:var(--primary);

    font-size:15px;

    transition:var(--transition);

}

.service-menu a:hover{

    background:var(--primary);

    border-color:var(--primary);

    color:#ffffff;

    transform:translateX(6px);

    text-decoration:none;

}

.service-menu a:hover i{

    color:#ffffff;

    transform:translateX(4px);

}


/*==========================
ACTIVE MENU
===========================*/

.service-menu li.active a{

    background:var(--primary);

    color:#ffffff;

    border-color:var(--primary);

}

.service-menu li.active i{

    color:#ffffff;

}


/*==========================================================
SIDEBAR CTA
==========================================================*/

.sidebar-cta{

    position:relative;

    overflow:hidden;

    background:linear-gradient(135deg,#16213E,#C92027);

    border-radius:22px;

    padding:40px 35px;

    text-align:center;

    color:#ffffff;

    box-shadow:0 18px 45px rgba(15,23,42,.15);

}

.sidebar-cta::before{

    content:"";

    position:absolute;

    width:220px;

    height:220px;

    border-radius:50%;

    background:rgba(255,255,255,.06);

    top:-120px;

    right:-90px;

}

.sidebar-cta::after{

    content:"";

    position:absolute;

    width:150px;

    height:150px;

    border-radius:50%;

    background:rgba(255,255,255,.05);

    left:-70px;

    bottom:-70px;

}

.sidebar-cta>*{

    position:relative;

    z-index:2;

}


/*==========================
CTA ICON
===========================*/

.cta-icon{

    width:82px;

    height:82px;

    margin:0 auto 24px;

    border-radius:50%;

    background:rgba(255,255,255,.12);

    display:flex;

    align-items:center;

    justify-content:center;

}

.cta-icon i{

    color:#ffffff;

    font-size:34px;

}


/*==========================
CTA TEXT
===========================*/

.sidebar-cta h3{

    color:#ffffff;

    font-size:28px;

    font-weight:700;

    margin-bottom:16px;

    line-height:1.4;

}

.sidebar-cta p{

    color:rgba(255,255,255,.92);

    font-size:15px;

    line-height:1.8;

    margin-bottom:28px;

}


/*==========================
CTA BUTTON
===========================*/

.cta-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:15px 34px;

    background:#ffffff;

    color:var(--primary);

    font-weight:700;

    border-radius:50px;

    transition:var(--transition);

}

.cta-btn:hover{

    background:#111827;

    color:#ffffff;

    text-decoration:none;

    transform:translateY(-3px);

    box-shadow:0 12px 30px rgba(0,0,0,.15);

}


/*==========================
SIDEBAR ANIMATION
===========================*/

.sidebar-card,

.sidebar-cta{

    transition:var(--transition);

}

.sidebar-card:hover{

    box-shadow:var(--shadow-lg);

}

.sidebar-cta:hover{

    transform:translateY(-5px);

}

/*==========================================================
OUR SERVICES
==========================================================*/

.service-services{

    padding-top:30px;

}

.service-services .section-title{

    text-align:center;

    margin-bottom:60px;

}

.service-services .section-intro{

    max-width:760px;

    margin:0 auto;

    color:var(--text);

    font-size:17px;

    line-height:1.9;

}


/*==========================
GRID
===========================*/

.service-grid{

    display:flex;

    flex-wrap:wrap;

    margin-left:-15px;

    margin-right:-15px;

}

.service-grid>.col-lg-6{

    padding-left:15px;

    padding-right:15px;

    margin-bottom:30px;

}


/*==========================
CARD
===========================*/

.service-card{

    position:relative;

    background:#ffffff;

    border:1px solid var(--border);

    border-radius:22px;

    padding:40px;

    height:100%;

    overflow:hidden;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.service-card:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow-lg);

    border-color:rgba(201,32,39,.25);

}


/*==========================
LEFT BORDER
===========================*/

.service-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:5px;

    height:100%;

    background:var(--primary);

    transform:scaleY(0);

    transform-origin:top;

    transition:.4s;

}

.service-card:hover::before{

    transform:scaleY(1);

}


/*==========================
NUMBER
===========================*/

.service-number{

    position:absolute;

    top:25px;

    right:25px;

    font-size:54px;

    font-weight:800;

    line-height:1;

    color:#EEF2F7;

}


/*==========================
ICON
===========================*/

.service-icon{

    width:72px;

    height:72px;

    border-radius:18px;

    background:var(--primary-light);

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:28px;

    transition:var(--transition);

}

.service-icon i{

    font-size:30px;

    color:var(--primary);

    transition:var(--transition);

}

.service-card:hover .service-icon{

    background:var(--primary);

}

.service-card:hover .service-icon i{

    color:#ffffff;

    transform:rotateY(180deg);

}


/*==========================
TITLE
===========================*/

.service-card h4{

    color:var(--heading);

    font-size:24px;

    font-weight:700;

    margin-bottom:18px;

    line-height:1.4;

    transition:var(--transition);

}

.service-card:hover h4{

    color:var(--primary);

}


/*==========================
DESCRIPTION
===========================*/

.service-card p{

    color:var(--text);

    font-size:15px;

    line-height:1.9;

    margin-bottom:0;

}


/*==========================
OPTIONAL LIST
===========================*/

.service-card ul{

    margin-top:20px;

    padding-left:20px;

}

.service-card ul li{

    color:var(--text);

    margin-bottom:10px;

    line-height:1.8;

}


/*==========================
HOVER GLOW
===========================*/

.service-card::after{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    border-radius:50%;

    background:rgba(201,32,39,.04);

    top:-90px;

    right:-90px;

    opacity:0;

    transition:.4s;

}

.service-card:hover::after{

    opacity:1;

}


/*==========================
ANIMATION
===========================*/

.service-grid .col-lg-6{

    animation:fadeUp .7s ease both;

}

.service-grid .col-lg-6:nth-child(2){

    animation-delay:.1s;

}

.service-grid .col-lg-6:nth-child(3){

    animation-delay:.2s;

}

.service-grid .col-lg-6:nth-child(4){

    animation-delay:.3s;

}

.service-grid .col-lg-6:nth-child(5){

    animation-delay:.4s;

}

.service-grid .col-lg-6:nth-child(6){

    animation-delay:.5s;

}

/*==========================================================
FAQ SECTION
==========================================================*/

.service-faq-section{

    padding-top:30px;

}

.service-faq-section .section-title{

    text-align:center;

    margin-bottom:60px;

}

.service-faq-section .section-title p{

    max-width:760px;

    margin:0 auto;

}


/*==========================
FAQ CONTAINER
===========================*/

.service-faq{

    max-width:980px;

    margin:0 auto;

}


/*==========================
FAQ PANEL
===========================*/

.service-faq .panel{

    border:none;

    border-radius:18px;

    overflow:hidden;

    margin-bottom:20px;

    background:#ffffff;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.service-faq .panel:hover{

    transform:translateY(-4px);

    box-shadow:var(--shadow-lg);

}


/*==========================
PANEL HEADER
===========================*/

.service-faq .panel-heading{

    padding:0;

    border:none;

    background:transparent;

}

.service-faq .panel-title{

    margin:0;

}


/*==========================
QUESTION
===========================*/

.service-faq .panel-title a{

    display:block;

    position:relative;

    padding:24px 75px 24px 28px;

    background:#ffffff;

    color:var(--heading);

    font-size:18px;

    font-weight:700;

    line-height:1.5;

    transition:var(--transition);

    text-decoration:none;

}


/*==========================
PLUS ICON
===========================*/

.service-faq .panel-title a:after{

    content:"+";

    position:absolute;

    top:50%;

    right:25px;

    transform:translateY(-50%);

    width:38px;

    height:38px;

    border-radius:50%;

    background:var(--primary-light);

    color:var(--primary);

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:22px;

    font-weight:700;

    transition:var(--transition);

}


/*==========================
ACTIVE
===========================*/

.service-faq .panel-title a:not(.collapsed){

    background:var(--primary);

    color:#ffffff;

}

.service-faq .panel-title a:not(.collapsed):after{

    content:"−";

    background:#ffffff;

    color:var(--primary);

}


/*==========================
BODY
===========================*/

.service-faq .panel-collapse{

    border-top:1px solid var(--border);

}

.service-faq .panel-body{

    padding:28px;

    background:#ffffff;

    color:var(--text);

    font-size:15px;

    line-height:1.9;

}

.service-faq .panel-body p:last-child{

    margin-bottom:0;

}


/*==========================
ANIMATION
===========================*/

.service-faq .panel{

    animation:fadeUp .7s ease both;

}

.service-faq .panel:nth-child(2){

    animation-delay:.1s;

}

.service-faq .panel:nth-child(3){

    animation-delay:.2s;

}

.service-faq .panel:nth-child(4){

    animation-delay:.3s;

}

.service-faq .panel:nth-child(5){

    animation-delay:.4s;

}

.service-faq .panel:nth-child(6){

    animation-delay:.5s;

}

/*==========================================================
CALL TO ACTION
==========================================================*/

.service-cta{

    margin-top:40px;

}

.service-cta-box{

    position:relative;

    overflow:hidden;

    background:linear-gradient(135deg,#172554 0%, #C92027 100%);

    border-radius:24px;

    padding:30px 30px;

    box-shadow:0 20px 60px rgba(17,24,39,.12);

}


/*=====================================
BACKGROUND SHAPES
======================================*/

.service-cta-box::before{

    content:"";

    position:absolute;

    width:280px;

    height:280px;

    border-radius:50%;

    background:rgba(255,255,255,.05);

    top:-120px;

    right:-90px;

}

.service-cta-box::after{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    border-radius:50%;

    background:rgba(255,255,255,.04);

    bottom:-70px;

    left:-70px;

}

.service-cta-box>*{

    position:relative;

    z-index:2;

}


/*=====================================
TEXT
======================================*/

.service-cta h2{

    color:#ffffff;

    font-size:42px;

    font-weight:800;

    line-height:1.3;

    margin-bottom:18px;

}

.service-cta p{

    color:rgba(255,255,255,.92);

    font-size:17px;

    line-height:1.9;

    margin-bottom:0;

}


/*=====================================
LAYOUT
======================================*/

.service-cta .row{

    display:flex;

    align-items:center;

}

.service-cta .text-right{

    display:flex;

    justify-content:flex-end;

    align-items:center;

}


/*=====================================
BUTTON
======================================*/

.btn-primary-red{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:230px;

    height:60px;

    padding:0 36px;

    border-radius:50px;

    background:#ffffff;

    color:var(--primary);

    font-size:16px;

    font-weight:700;

    text-decoration:none;

    transition:var(--transition);

    box-shadow:0 10px 25px rgba(0,0,0,.15);

}

.btn-primary-red:hover{

    background:#111827;

    color:#ffffff;

    transform:translateY(-4px);

    box-shadow:0 20px 40px rgba(0,0,0,.18);

}

.btn-primary-red i{

    margin-left:10px;

    transition:.3s;

}

.btn-primary-red:hover i{

    transform:translateX(4px);

}


/*=====================================
HOVER EFFECT
======================================*/

.service-cta-box:hover{

    transform:translateY(-4px);

    transition:.35s ease;

}


/*=====================================
RESPONSIVE
======================================*/

@media(max-width:991px){

.service-cta-box{

    padding:50px 35px;

    text-align:center;

}

.service-cta .row{

    display:block;

}

.service-cta .text-right{

    justify-content:center;

    margin-top:35px;

}

}

@media(max-width:767px){

.service-cta{

    margin-top:70px;

}

.service-cta-box{

    padding:40px 25px;

}

.service-cta h2{

    font-size:32px;

}

.service-cta p{

    font-size:15px;

}

.btn-primary-red{

    width:100%;

    min-width:100%;

}

}

/*==========================================================
ANIMATIONS
==========================================================*/

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(35px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

.fade-up{

    animation:fadeUp .8s ease both;

}

.fade-up:nth-child(2){

    animation-delay:.1s;

}

.fade-up:nth-child(3){

    animation-delay:.2s;

}

.fade-up:nth-child(4){

    animation-delay:.3s;

}

.fade-up:nth-child(5){

    animation-delay:.4s;

}


/*==========================================================
IMAGE EFFECTS
==========================================================*/

.service-image img,

.service-card,

.highlight-card,

.sidebar-card,

.sidebar-cta,

.service-menu a,

.btn-primary-red,

.cta-btn{

    transition:all .35s ease;

}


/*==========================================================
COMMON
==========================================================*/

.service-page img{

    max-width:100%;

    height:auto;

}

.service-page a{

    text-decoration:none;

}

.service-page ul{

    margin:0;

    padding:0;

    list-style:none;

}

.service-page button{

    border:none;

    outline:none;

}


/*==========================================================
SECTION SPACING
==========================================================*/

.service-section{

    padding:40px 0;

}

.service-section:first-child{

    padding-top:0;

}

.service-section:last-child{

    padding-bottom:0;

}


/*==========================================================
RESPONSIVE
==========================================================*/

@media(max-width:1200px){

.service-layout{

    grid-template-columns:1fr 330px;

    gap:35px;

}

.section-title h2{

    font-size:36px;

}

}


@media(max-width:991px){

.service-layout{

    grid-template-columns:1fr;

}

.service-sidebar{

    position:relative;

    top:auto;

    margin-top:50px;

}

.service-highlights{

    grid-template-columns:1fr 1fr;

}

.service-grid>.col-lg-6{

    width:100%;

}

.section-title{

    text-align:center;

}

.section-title p{

    margin:auto;

}

}


@media(max-width:767px){

.service-page .container{

    padding:60px 20px;

}

.section-title h2{

    font-size:30px;

}

.service-highlights{

    grid-template-columns:1fr;

}

.highlight-card{

    padding:16px;

}

.service-card{

    padding:30px;

}

.service-number{

    font-size:44px;

}

.service-icon{

    width:64px;

    height:64px;

}

.service-icon i{

    font-size:26px;

}

.sidebar-card{

    padding:28px;

}

.sidebar-cta{

    padding:35px 28px;

}

.sidebar-cta h3{

    font-size:24px;

}

.service-faq .panel-title a{

    padding:20px 55px 20px 20px;

    font-size:16px;

}

.service-faq .panel-body{

    padding:22px;

}

}


@media(max-width:576px){

.section-title h2{

    font-size:26px;

}

.service-card{

    padding:25px;

}

.highlight-card{

    flex-direction:column;

    text-align:center;

}

.highlight-card i{

    margin-bottom:12px;

}

.service-menu a{

    font-size:14px;

    padding:14px 16px;

}

.sidebar-title{

    font-size:22px;

}

.sidebar-cta{

    padding:30px 20px;

}

.sidebar-cta h3{

    font-size:22px;

}

.cta-icon{

    width:70px;

    height:70px;

}

.cta-icon i{

    font-size:28px;

}

.btn-primary-red,

.cta-btn{

    width:100%;

}

}


/*==========================================================
SCROLLBAR
==========================================================*/

::-webkit-scrollbar{

    width:8px;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:20px;

}

::-webkit-scrollbar-track{

    background:#f4f4f4;

}


/*==========================================================
SELECTION
==========================================================*/

::selection{

    background:var(--primary);

    color:#fff;

}


/*==========================================================
PRINT
==========================================================*/

@media print{

.service-sidebar,

.service-cta{

    display:none;

}

.service-layout{

    display:block;

}

}


/*==========================================================
END OF FILE
==========================================================*/

/*==========================================================
PART 8
FINAL UTILITIES & POLISH
YottaBrain Service Page
==========================================================*/

/*==============================
UTILITY CLASSES
===============================*/

.text-center{
    text-align:center;
}

.text-left{
    text-align:left;
}

.text-right{
    text-align:right;
}

.mb-0{
    margin-bottom:0!important;
}

.mt-0{
    margin-top:0!important;
}

.mt-20{
    margin-top:20px;
}

.mt-30{
    margin-top:30px;
}

.mt-40{
    margin-top:40px;
}

.mb-20{
    margin-bottom:20px;
}

.mb-30{
    margin-bottom:30px;
}

.mb-40{
    margin-bottom:40px;
}

.w-100{
    width:100%;
}


/*==============================
BOOTSTRAP FIXES
===============================*/

.service-page .row{

    margin-left:-15px;

    margin-right:-15px;

}

.service-page .row>[class*="col-"]{

    padding-left:15px;

    padding-right:15px;

}


/*==============================
LINKS
===============================*/

.service-page a{

    color:inherit;

    transition:all .3s ease;

}

.service-page a:hover{

    text-decoration:none;

}


/*==============================
IMAGES
===============================*/

.service-page img{

    display:block;

    max-width:100%;

    height:auto;

}


/*==============================
LISTS
===============================*/

.service-page ul{

    margin:0;

    padding:0;

}

.service-page li{

    list-style:none;

}


/*==============================
BUTTON RESET
===============================*/

.service-page button{

    border:none;

    outline:none;

    cursor:pointer;

    transition:.3s;

}


/*==============================
INPUTS
===============================*/

.service-page input,

.service-page textarea,

.service-page select{

    width:100%;

    outline:none;

}

.service-page textarea{

    resize:vertical;

}


/*==============================
FONT AWESOME
===============================*/

.service-page i{

    line-height:1;

}


/*==============================
TABLE
===============================*/

.service-page table{

    width:100%;

    border-collapse:collapse;

}


/*==============================
FOCUS
===============================*/

.service-page a:focus,

.service-page button:focus,

.service-page input:focus{

    outline:none;

}


/*==============================
SELECTION
===============================*/

::selection{

    background:var(--primary);

    color:#fff;

}


/*==============================
SMOOTH SCROLL
===============================*/

html{

    scroll-behavior:smooth;

}


/*==============================
PERFORMANCE
===============================*/

.service-card,

.highlight-card,

.sidebar-card,

.sidebar-cta{

    will-change:transform;

}


/*==============================
PRINT
===============================*/

@media print{

    .service-sidebar,

    .service-cta{

        display:none;

    }

    .service-main{

        width:100%;

        max-width:100%;

    }

}


/*==============================
END OF FILE
===============================*/