/* Default dot buttons */
.testimonial-slider  .slick-dots li button, .team-slider .slick-dots li button {
    color: transparent; /* Hide number */
    background-color: #ddd; /* Inactive dot color */
    border-radius: 50%;
    width: 12px;
    height: 12px;
    padding: 0;
    margin: 0 5px;
    display: inline-block;
    transition: background-color 0.3s ease;
}

/* Active dot */
.testimonial-slider  .slick-dots li.slick-active button, .team-slider .slick-dots li.slick-active button {
    background-color: #f32333;
}
.testimonial-slider  .slick-dots li button:before, .team-slider .slick-dots li button:before {
    display: none;
}
.testimonial-slider  .slick-dots li button, .team-slider .slick-dots li button {
    font-size: 0;
    line-height: 0;
}
.testimonial-slider  .slick-dots{
    position: relative !important;
    bottom: 5px !important;
}
.team-slider .slick-dots {
    position: relative !important;
    bottom: -35px !important;
}



.footer-widget-item .logo {
    max-width: 228px !important;
}



nav.axil-scroll-nav.navbar.navbar-example2 .container {
    flex-wrap: nowrap;
    align-items: center;
}

.mainmenu li.current-menu-item a,
.footer-menu li.current-menu-item a,
.side-nav-content ul.main-navigation li.current-menu-item a{
	color: #f32333 !important;  
	font-weight: bold;   
}

.footer-menu li{
	margin-top:15px; 
}


nav.axil-scroll-nav.navbar.navbar-example2 .container p {
    margin-bottom: 0;
    font-size: 24px;
}

.single-blog-title {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.single-blog-title h3.title,
.single-blog-title h1.axil-page-title {
    flex: 1 1 auto;
    min-width: 0;
    margin-bottom: 0;
    text-wrap: balance;
}

@media (max-width: 767px) {
    /* Post title is shown below; hide duplicate in breadcrumb on small screens */
    .axil-breadcrumb-area:has(.single-blog-title) ul.axil-breadcrumb li.axil-breadcrumb-item.active {
        display: none;
    }

    .single-blog-title {
        flex-direction: column;
        align-items: flex-start;
    }

    .single-blog-title h3.title,
    .single-blog-title h1.axil-page-title {
        font-size: 26px;
        line-height: 1.35;
    }
}

body.active-dark-mode input.wpcf7-form-control span.button-icon {
	border-color: transparent transparent transparent #D3D3D4;
}

body.active-dark-mode input.axil-button.btn-transparent::before {
    border: 2px solid white;
}
.wpcf7-spinner{
	display: none;
}

.wpcf7-not-valid-tip {
	font-size: 0.7em !important;
	height: 0;
}

.wpcf7-response-output {
	display: none !important;
}

.form-group input.wpcf7-not-valid {
	border-bottom-color: red;
}

body.active-dark-mode .form-group input[type=submit]{
	color: #D3D3D4;
}
body.active-dark-mode .form-group input[type=submit]::before{
	    border: 2px solid white;
}

.wpcf7-form input[type="submit"] {
    position: relative !important;
    background: transparent !important;
    border: 2px solid #fff !important;
    color: #fff !important;
    padding: 15px 40px 15px 20px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    cursor: pointer !important;
    width: auto !important;
    height: auto !important;
}

.wpcf7-form input[type="submit"]:after {
    content: "";
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 6px solid #fff;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
}

.wpcf7-form input[type="submit"]:hover {
    background: #fff !important;
    color: #000 !important;
}

.wpcf7-form input[type="submit"]:hover:after {
    border-left-color: #000;
}

@media (min-width: 992px) {
    .axil-counterup-area .col-lg-3.column-3 {
        width: 33.333% !important;
    }
}

/* Invert all icons inside dark mode */
body.active-dark-mode .axil-counterup .icon img{
  filter: invert(1) brightness(1.2) contrast(1.1);
}

/* service page banner */

#wpcf7-f3526-p3337-o1{
	max-width: 335px;
/*     max-height: 511px; */
}

.axil-contact-form .contact-form-style-1{
	max-width: 440px;
/*     max-height: 722px; */
}

.mt120 {
    margin-top: 120px !important;
}

.wp-block-group{
	max-width: 1290px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}

.site-main{
	background: #FAFAFB;
}

body.active-dark-mode #main {
	    background: #242526;
}



.single-counterup.counterup-style-1 .count{
	color: black !important;
}

body.active-dark-mode .single-counterup.counterup-style-1 .count{
	color: white !important;
}
p.subtitle-2 {
    color: black !important;
}

body.active-dark-mode ul.client-list li a img {
    filter: none !important;
}

@media (min-width: 992px) {
    .right-side-bar {
        width: max-content !important;
    }
}
@media screen and (max-width: 768px) {
    .right-side-bar {
        width: max-content !important;
    }
}

.author a {
	text-decoration: underline !important;
}

body.active-dark-mode ol li {
    background: #18191A;
    color: #D3D3D4;
}

.wp-block-group ul, .wp-block-group ol{
	padding-left: 35px !important;
}
.wp-block-group ul li, .wp-block-group ol li{
	line-height: 30px !important;
}

/*----------------------
    Error Styles  
------------------------*/
.axil-error-not-found .shape-group .shape.shape-04 {
    margin-top: 30px;
}

/* privacy policy */

.page-id-3 h2{
	font-size: 30px !important
}
.page-id-4317 .wp-block-group, .postid-4316 .wp-block-group, .postid-4226 .wp-block-group, .postid-4315 .wp-block-group, .postid-4312 .wp-block-group, .postid-4316 .wp-block-group{
	padding: 50px 10px;
}
.page-id-3 h4:before {
    content: "";
    position: absolute;
    width: 13px;
    height: 13px;
    background: url(../images/tick.png);
    top: 10px;
    left: -25px;
	background-size: 13px;align-content
}


/*20-1-2026*/

body.single-post .axil-accordion--2 .card .card-header .btn.btn-link::after{
    display:none;
}


body.single-post #accordion .collapse {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
}

body.single-post .axil-faq-area.ax-section-gap.bg-color-lightest {
    background-color:white;
}

.footer-widget-item .logo a img {
    width: 100%;
}

.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.pagination {
    margin-top: 100px;
}

.pagination .current{
    color: white !important;
    background: black;
}

.pagination .page-numbers {
    height: 40px;
    width: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.axil-service .inner {
    padding: 30px;
    position: relative;
    background-color: #ffffff;
    margin-top: 60px;
    border-radius: 20px;
}

.axil-service .inner img {
    border-radius: 20px;
}

.axil-service .inner::after {
    background: #ffffff;
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-transform: perspective(500px) rotateY(-5deg);
    transform: perspective(500px) rotateY(-5deg);
    opacity: 0;
    transition: all 0.3s;
}

.axil-service .inner::before {
    -webkit-transform: perspective(500px) rotateY(-5deg);
    transform: perspective(500px) rotateY(-5deg);
    position: absolute;
    width: calc(100% - 5px);
    height: calc(100% - 10px);
    top: 32px;
    content: "";
    border: 4px solid #000345;
    z-index: -1;
    right: 32px;
    transition: all 0.4s;
    opacity: 0;
    visibility: hidden;
    box-shadow: 0 0 1px transparent;
    transition-delay: 0.2s;
    border-radius: 20px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .axil-service .inner::before {
        width: calc(100% - 15px);
        height: calc(100% - 15px);
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .axil-service .inner::before {
        width: calc(100% - 15px);
        height: calc(100% - 15px);
    }
}

@media only screen and (max-width: 767px) {
    .axil-service .inner::before {
        width: calc(100% - 15px);
        height: calc(100% - 15px);
    }
}

@media only screen and (max-width: 767px) {
    .axil-service .inner::before {
        display: none;
    }
}

.axil-service.active .inner::before {
    opacity: 1;
    visibility: visible;
}

.axil-service.text-start .inner .icon::before {
    right: -17px;
    height: 100%;
    width: 60px;
    border-radius: 20px;
}

.blog-card-meta-author img {
    border-radius: 5px;
}

.axil-service.text-start .inner .icon {
    margin: inherit;
    margin-bottom: 18px;
    height: 80px;
    width: 80px;
    margin: 0 !important;
    padding: 0 !important;
}

.axil-service.text-start .inner .icon .icon-inner {
    left: 0;
}


.axil-breadcrumb-area.breadcrumb-style-2 .thumbnail {
	width: 100%;
}


.axil-breadcrumb-area.breadcrumb-style-2 .thumbnail .image-group img{
	max-width: 500px !important;
    object-fit: cover;
    border-radius: 20px;
}


.axil-service .inner .content .title {
    margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
    .axil-service .inner .content .title {
        margin-bottom: 15px;
    }
}

.axil-service .inner .content .title a {
    text-decoration: none;
}

.axil-service .inner .content p {
    margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
    .axil-service .inner .content p {
        margin-bottom: 15px;
    }
}

.axil-service {
    position: relative;
    background: #ffffff;
    border-radius: 20px;
}

.axil-service:hover {
    background: transparent;
}

.axil-service::before {
    width: 92%;
    height: 92%;
    left: -20px;
    bottom: -20px;
    background: rgba(0, 2, 72, 0.1);
    content: "";
    position: absolute;
    z-index: -1;
    transform-style: preserve-3d;
    transform: rotateY(-10deg);
    filter: blur(50px);
    opacity: 0;
    transition: all 0.7s;
}

@media only screen and (max-width: 767px) {
    .axil-service::before {
        display: none;
    }
}


.axil-service .inner .content a.axil-button::after {
    position: absolute;
    bottom: 0;
    width: 0;
    height: 1px;
    background: var(--color-primary-alt);
    content: "";
    left: 0;
}

.axil-service.active .inner .content a.axil-button::after {
    width: 100%;
}

.axil-service .inner .content a.axil-button {
    background: transparent;
    height: auto;
    line-height: inherit;
    position: relative;
    padding: 0;
}

a.axil-button.btn-large,
button.axil-button.btn-large {
    height: 56px;
    line-height: 56px;
}

@media only screen and (max-width: 767px) {

    a.axil-button.btn-large,
    button.axil-button.btn-large {
        height: 52px;
        line-height: 52px;
    }
}

/* 31/3/2026 */

.axil-service .inner .content h4{
    font-weight:600;
    margin-top:10px;
}

.blog-card-meta {
    display: flex;
    gap: 10px;
    margin: 15px 0 15px 0;
}

span.blog-card-meta-name,
span.blog-card-meta-date time
{
    font-size:15px;  
}

/* Blog card grid: uniform image height and aligned content */
.row:has(.single-blog) {
    display: flex;
    flex-wrap: wrap;
}

.row:has(.single-blog) > [class*="col-"] {
    display: flex;
}

.single-blog {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.single-blog .inner {
    display: flex;
    flex-direction: column;
    flex: 1;
    height: 100%;
}

.single-blog .icon {
    display: block;
    aspect-ratio: 3 / 1.6;
    overflow: hidden;
    border-radius: 20px;
    height: auto !important;
    margin-bottom: 18px !important;
}

.single-blog .icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    display: block;
}

.single-blog .inner .content {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.single-blog .inner .content .title {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.single-blog .inner .content p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.single-blog .inner .content a.axil-button {
    margin-top: auto;
}


.single.single-post ol li {
    color:black;
}

/* ==========================================================================
   Home Hero (rebuilt)
   ========================================================================== */
.cc-hero {
    position: relative;
    overflow: hidden;
    padding: 200px 0 180px;
}

.cc-hero__row {
    position: relative;
    z-index: 2;
}

.cc-hero__eyebrow {
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #E62733;
    background: rgba(230, 39, 51, 0.10);
    padding: 8px 16px;
    border-radius: 40px;
    margin-bottom: 24px;
}

.cc-hero__title {
    font-size: clamp(34px, 4.4vw, 62px);
    line-height: 1.08;
    font-weight: 700;
    margin: 0 0 22px;
    letter-spacing: -0.5px;
}

.cc-hero__subtitle {
    font-size: clamp(16px, 1.3vw, 20px);
    line-height: 1.6;
    max-width: 540px;
    margin: 0 0 36px;
    opacity: 0.85;
}

.cc-hero__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px 28px;
    margin-bottom: 40px;
}

/* Solid pill primary CTA — brand red, understated (no flashy glow) */
.axil-button.cc-btn-primary {
    background: #F5333F;
    color: #fff;
    border: none;
    border-radius: 50px;
    box-shadow: 0 4px 12px rgba(245, 51, 63, 0.18);
    transition: background 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.axil-button.cc-btn-primary:hover {
    background: #E62733;
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(245, 51, 63, 0.24);
    color: #fff;
}
.axil-button.cc-btn-primary .button-text { color: #fff; }

.cc-hero__link {
    font-size: 16px;
    font-weight: 600;
    color: #1a1a2e;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: gap 0.25s ease, color 0.25s ease;
}
.cc-hero__link:hover { gap: 14px; color: #E62733; }

.cc-hero__trust {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 32px;
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 15px;
    opacity: 0.8;
}
.cc-hero__trust li { position: relative; }
.cc-hero__trust strong { font-weight: 700; }

/* Before / After visual — full-page screenshots in browser-style frames */
.cc-hero__visual {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 24px;
    padding: 20px 10px;
}

/* Floating "traffic improved" stat badge overlapping the visual */
.cc-hero__stat {
    position: absolute;
    left: 0;
    bottom: 24px;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: 240px;
    padding: 12px 16px;
    background: #fff;
    border: 1px solid rgba(31, 169, 113, 0.15);
    border-radius: 14px;
    box-shadow: 0 18px 40px rgba(15, 15, 45, 0.16);
}
.cc-hero__stat-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(31, 169, 113, 0.12);
    color: #1fa971;
    font-size: 18px;
}
.cc-hero__stat-text {
    font-size: 13px;
    font-weight: 500;
    line-height: 1.3;
    color: #0f0f2d;
}
.cc-hero__stat-text strong {
    display: block;
    font-size: 17px;
    font-weight: 800;
    color: #1fa971;
}
.cc-shot {
    position: relative;
    margin: 0;
    flex: 1 1 0;
    max-width: 250px;
    height: 470px;
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(15, 15, 45, 0.08);
    box-shadow: 0 30px 60px rgba(15, 15, 45, 0.18);
}
.cc-shot img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
}
.cc-shot--before {
    transform: translateY(26px) rotate(-1.5deg);
    opacity: 0.97;
}
.cc-shot--after {
    transform: rotate(1.5deg);
    z-index: 2;
    height: 550px;
}
.cc-shot::after {
    position: absolute;
    top: 12px;
    left: 12px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 20px;
    color: #fff;
    z-index: 3;
}
.cc-shot--before::after { content: "Before"; background: #e5484d; }
.cc-shot--after::after  { content: "After";  background: #1fa971; }

/* Standalone Image Group — one framed shot on the right */
.cc-hero__visual--single,
.cc-hero__image-group {
    justify-content: flex-end;
    padding: 10px 0 10px 10px;
}
.cc-shot--single,
.cc-hero__image-group-shot {
    flex: 0 1 auto;
    max-width: 540px;
    width: 100%;
    height: auto;
    min-height: 480px;
    transform: perspective(900px) rotateY(-3deg);
    box-shadow: 0 36px 70px rgba(15, 15, 45, 0.2);
}
.cc-shot--single::after,
.cc-hero__image-group-shot::after {
    display: none;
}
.cc-shot--single img,
.cc-hero__image-group-shot img {
    height: auto;
    min-height: 480px;
    object-fit: cover;
    object-position: center top;
}

/* Responsive */
@media (max-width: 991px) {
    .cc-hero { padding: 160px 0 80px; }
    .cc-hero__content { margin-bottom: 48px; text-align: center; }
    .cc-hero__subtitle { margin-left: auto; margin-right: auto; }
    .cc-hero__actions,
    .cc-hero__trust { justify-content: center; }
    .cc-hero__visual { max-width: 560px; margin: 0 auto; }
    .cc-hero__visual--single,
    .cc-hero__image-group {
        justify-content: center;
        padding: 10px;
    }
    .cc-shot--single,
    .cc-hero__image-group-shot {
        max-width: 460px;
        transform: none;
        min-height: 400px;
    }
    .cc-shot--single img,
    .cc-hero__image-group-shot img { min-height: 400px; }
}
@media (max-width: 575px) {
    .cc-hero { padding: 130px 0 80px; }
    .cc-hero__visual { gap: 14px; }
    .cc-shot { height: 360px; max-width: 180px; }
    .cc-shot--single,
    .cc-hero__image-group-shot {
        max-width: 100%;
        height: auto;
        min-height: 320px;
    }
    .cc-shot--single img,
    .cc-hero__image-group-shot img { min-height: 320px; }
    .cc-hero__actions { flex-direction: column; align-items: center; gap: 16px; }
    .axil-button.cc-btn-primary { width: 100%; justify-content: center; text-align: center; }
    .cc-hero__stat {
        left: 50%;
        bottom: -12px;
        transform: translateX(-50%);
        max-width: 220px;
        padding: 10px 14px;
    }
    .cc-hero__stat-icon { width: 34px; height: 34px; font-size: 16px; }
    .cc-hero__stat-text { font-size: 12px; }
    .cc-hero__stat-text strong { font-size: 15px; }
}

/* ==========================================================================
   One consistent brand CTA everywhere — solid red pill.
   !important is used so per-block stylesheets (portfolio, pricing, team, etc.)
   and the theme's navy outline default cannot override the brand button. */
.axil-button.btn-transparent {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 48px;
    line-height: 1;
    padding: 0 30px !important;
    font-weight: 600;
    background: #F5333F !important;
    color: #fff !important;
    border: none !important;
    border-radius: 50px !important;
    box-shadow: 0 4px 12px rgba(245, 51, 63, 0.18) !important;
    transition: background 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
/* kill the theme's inline-block spacing so the label + arrow sit snug and centred */
.axil-button.btn-transparent .button-text { color: #fff !important; padding-right: 0 !important; }
/* the arrow glyph is a CSS triangle built from the left border colour */
.axil-button.btn-transparent .button-icon {
    border-left-color: #fff !important;
    transition: transform 0.25s ease;
}
.axil-button.btn-transparent:hover {
    background: #E62733 !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(245, 51, 63, 0.24) !important;
    color: #fff !important;
}
.axil-button.btn-transparent:hover .button-text { color: #fff !important; }
/* nudge the arrow on hover for a subtle "go" cue */
.axil-button.btn-transparent:hover .button-icon { transform: translateX(3px); }

/* ==========================================================================
   Newsletter band (sitewide, above footer)
   Slim neutral strip — visually distinct from the main page CTA sections.
   ========================================================================== */
.cc-newsletter-band {
    background: linear-gradient(180deg, #FEF7E2 0%, #EEEEFD 100%);
    padding: 64px 0;
}
.cc-newsletter-band .axil-call-to-action { padding: 0; }
.cc-newsletter-band .section-title { margin-bottom: 0; }
.cc-newsletter-band .footer-widget-item {
    max-width: 640px;
    margin: 0 auto;
}
.cc-newsletter-band .footer-widget-item > p {
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
    color: rgba(0, 2, 72, 0.78);
}
body.active-dark-mode .cc-newsletter-band {
    background: #242526;
    border-top-color: rgba(255, 255, 255, 0.08);
}
@media only screen and (max-width: 767px) {
    .cc-newsletter-band { padding: 48px 0; }
}

/* MC4WP newsletter form — match original static inline layout (input left, button right) */
.cc-newsletter-band .newsletter-form,
.theme-gradient .newsletter-form {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-end !important;
    justify-content: center;
    margin-bottom: 30px;
}

.newsletter-form .mc4wp-form {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: center;
    width: 100%;
    margin: 0;
}

.newsletter-form .mc4wp-form-fields {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-end;
    justify-content: center;
    margin: 0;
    gap: 30px;
}

.newsletter-form .mc4wp-form p {
    margin: 0;
    max-width: none;
    width: auto;
    float: none;
}

.newsletter-form .mc4wp-form .axil-button {
    margin-left: 0;
    margin-top: 0;
}

.newsletter-form .mc4wp-response,
.newsletter-form .mc4wp-alert {
    flex-basis: 100%;
    width: 100%;
    margin-top: 12px;
    text-align: center;
    font-size: 14px;
}
.newsletter-form .mc4wp-error { color: #c0392b; }
.newsletter-form .mc4wp-success { color: #1e7e34; }

.newsletter-form .mc4wp-form.mc4wp-loading {
    opacity: 0.72;
}

.newsletter-form .mc4wp-form.mc4wp-loading [type="submit"] {
    cursor: wait;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .newsletter-form .mc4wp-form-fields {
        gap: 14px;
    }
}

@media only screen and (max-width: 575px) {
    .newsletter-form .mc4wp-form-fields {
        flex-direction: column;
        align-items: center;
        gap: 0;
    }

    .newsletter-form .mc4wp-form .axil-button {
        margin-top: 20px;
    }
}

/* --------------------------------------------------------------------------
   Heading hierarchy fixes (SEO/accessibility) — preserve original visuals.
   Process step titles moved h2 -> h3; team names moved h4 -> h3. These rules
   mirror the previous tag-based sizing so nothing changes visually.
   -------------------------------------------------------------------------- */
.axil-working-process .section-title h3.title {
    font-size: 40px;
    line-height: 50px;
    margin-bottom: 20px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .axil-working-process .section-title h3.title {
        margin-bottom: 15px;
        font-size: 40px;
        line-height: 52px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .axil-working-process .section-title h3.title {
        margin-bottom: 15px;
        font-size: 35px;
        line-height: 42px;
    }
    .axil-working-process .section-title h3.title br { display: none; }
}
@media only screen and (max-width: 767px) {
    .axil-working-process .section-title h3.title { margin-bottom: 10px; }
    .axil-working-process .section-title h3.title br { display: none; }
}

/* Team member names: keep the former h4 sizing after the h4 -> h3 change. */
.axil-team .content h3.title {
    font-size: 25px;
    line-height: 35px;
}

/* Contact labels demoted from <h6> to <span> (removed from heading outline).
   These rules reproduce the previous h6.title appearance exactly. */
.axil-address .cc-contact-label {
    display: block;
    margin-bottom: 15px;
    color: #000248;
    font-family: 'Merriweather', Georgia, serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 22px;
}

/* --------------------------------------------------------------------------
   Team block: centered grid for small teams (<=3 members) instead of a slider.
   Automatically applied by teams/team.php; slider markup is untouched.
   -------------------------------------------------------------------------- */
.team-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}
.team-grid.team-grid--centered { justify-content: center; }
.team-grid .single-team-member {
    flex: 0 0 auto;
    width: 340px;
    max-width: 100%;
    margin-top: 0;
}
@media only screen and (max-width: 767px) {
    .team-grid .single-team-member { width: 100%; }
}

/* --------------------------------------------------------------------------
   Our Values "checklist" variant — opt in by adding the class "style-checklist"
   to the block. Renders a scannable 2-column icon + text list so it reads
   differently from the icon-card Services section.
   -------------------------------------------------------------------------- */
.cc-values-checklist { margin-top: 20px; }
.cc-values-checklist .cc-value-check {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 22px 0;
    border-bottom: 1px solid rgba(15, 15, 45, 0.08);
    height: 100%;
}
.cc-values-checklist .cc-value-check__icon {
    flex: 0 0 auto;
    margin-top: 4px;
    font-size: 24px;
    line-height: 1;
    color: var(--color-primary, #ff014f);
}
.cc-values-checklist .cc-value-check .content .title {
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 6px;
}
.cc-values-checklist .cc-value-check .content p { margin-bottom: 0; }
body.active-dark-mode .cc-values-checklist .cc-value-check {
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

/* Team card details — legacy small icon replaced by animated CTA in team.css */

/* Happy clients section conversion strip */
.cc-owner-linkedin-strip {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 auto 36px;
    max-width: 860px;
    padding: 14px 16px;
    border: 1px solid rgba(10, 102, 194, 0.2);
    border-radius: 14px;
    background: #fff;
    text-decoration: none !important;
    box-shadow: 0 8px 22px rgba(15, 15, 45, 0.08);
}
.cc-owner-linkedin-strip__icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #0a66c2;
    color: #fff;
    animation: ccPulseLinkedin 1.8s infinite;
}
.cc-owner-linkedin-strip__content {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.cc-owner-linkedin-strip__content strong {
    color: #000248;
    font-size: 17px;
}
.cc-owner-linkedin-strip__content span {
    color: rgba(0, 2, 72, 0.78);
    font-size: 14px;
}
.cc-owner-linkedin-strip__cta {
    margin-left: auto;
    color: #0a66c2;
    font-weight: 700;
    white-space: nowrap;
}

@keyframes ccPulseLinkedin {
    0% { box-shadow: 0 0 0 0 rgba(10, 102, 194, 0.35); }
    70% { box-shadow: 0 0 0 12px rgba(10, 102, 194, 0); }
    100% { box-shadow: 0 0 0 0 rgba(10, 102, 194, 0); }
}

@media only screen and (max-width: 767px) {
    .cc-owner-linkedin-strip {
        align-items: flex-start;
        gap: 10px;
    }
    .cc-owner-linkedin-strip__content strong { font-size: 15px; }
    .cc-owner-linkedin-strip__content span { font-size: 13px; }
    .cc-owner-linkedin-strip__cta { display: none; }
}

/* About story block (project-brief-left variant) */
.cc-story-brief .cc-story-brief__media .image {
    border-radius: 16px;
    box-shadow: 0 24px 46px rgba(15, 15, 45, 0.14);
}
.cc-story-brief .shape-group { display: none; }
.cc-story-brief__content {
    background: #fff;
    border: 1px solid rgba(15, 15, 45, 0.08);
    border-radius: 16px;
    padding: 24px 28px;
    box-shadow: 0 18px 38px rgba(15, 15, 45, 0.08);
}
.cc-story-brief__text p {
    margin-bottom: 14px;
    color: rgba(0, 2, 72, 0.86);
}
.cc-story-brief__text p:last-child { margin-bottom: 0; }

/* Process section: replace purple gradient with clean brand surface */
.cc-process-surface {
    background: radial-gradient(ellipse 100% 85% at 50% -10%, #ffffff 0%, #f8fafc 42%, #eef2f7 100%);
}
body.active-dark-mode .cc-process-surface {
    background: radial-gradient(ellipse 100% 85% at 50% -10%, #262930 0%, #1f2126 45%, #181a1f 100%);
}

/* ==========================================================================
   Home FAQ — soft accordion + highlight badges
   (Also mirrored in template-parts/blocks/faq/faq.css for the ACF block.)
   ========================================================================== */

.cc-faq {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cc-faq .card,
.cc-faq.axil-accordion--2 .card {
    position: relative;
    margin: 0;
    border: 1px solid rgba(15, 15, 45, 0.08);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(15, 15, 45, 0.05);
    overflow: hidden;
    transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.cc-faq .card + .card,
.cc-faq.axil-accordion--2 .card + .card {
    margin-top: 0;
}

.cc-faq .card:hover,
.cc-faq.axil-accordion--2 .card:hover {
    border-color: rgba(230, 39, 51, 0.22);
    box-shadow: 0 14px 32px rgba(15, 15, 45, 0.09);
    transform: translateY(-1px);
}

.cc-faq .card .card-header,
.cc-faq.axil-accordion--2 .card .card-header {
    padding: 0;
    margin-bottom: 0;
    background-color: transparent;
    border-bottom: 0;
}

.cc-faq .card .card-header:first-child,
.cc-faq.axil-accordion--2 .card .card-header:first-child {
    border-radius: 0;
}

.cc-faq .card .card-header .btn.btn-link,
.cc-faq.axil-accordion--2 .card .card-header .btn.btn-link {
    display: block;
    width: 100%;
    padding: 22px 64px 22px 24px;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 600;
    color: #000248;
    text-align: left;
    text-decoration: none;
    border: 0 none;
    border-radius: 0;
    outline: none;
    box-shadow: none;
    position: relative;
    white-space: normal;
}

.cc-faq .card .card-header .btn.btn-link:hover,
.cc-faq .card .card-header .btn.btn-link:focus,
.cc-faq.axil-accordion--2 .card .card-header .btn.btn-link:hover,
.cc-faq.axil-accordion--2 .card .card-header .btn.btn-link:focus {
    color: #000248;
    text-decoration: none;
    box-shadow: none;
}

.cc-faq .card .card-header .btn.btn-link::after,
.cc-faq .card .card-header .btn.btn-link::before,
.cc-faq.axil-accordion--2 .card .card-header .btn.btn-link::after,
.cc-faq.axil-accordion--2 .card .card-header .btn.btn-link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 24px;
    width: 14px;
    height: 2px;
    background: #000248;
    border: 0;
    border-radius: 2px;
    transform: translateY(-50%);
    transition: transform 0.25s ease, background 0.25s ease, opacity 0.25s ease;
}

.cc-faq .card .card-header .btn.btn-link::before,
.cc-faq.axil-accordion--2 .card .card-header .btn.btn-link::before {
    transform: translateY(-50%) rotate(90deg);
}

.cc-faq .card .card-header .btn.btn-link:not(.collapsed)::before,
.cc-faq.axil-accordion--2 .card .card-header .btn.btn-link:not(.collapsed)::before {
    opacity: 0;
    transform: translateY(-50%) rotate(90deg) scaleX(0);
}

.cc-faq .card .card-header .btn.btn-link.collapsed::after,
.cc-faq.axil-accordion--2 .card .card-header .btn.btn-link.collapsed::after {
    border: 0;
    background: #000248;
}

.cc-faq .card .card-body,
.cc-faq.axil-accordion--2 .card .card-body {
    padding: 0 24px 22px;
    color: rgba(0, 2, 72, 0.78);
    font-size: 16px;
    line-height: 1.7;
}

.cc-faq .card .card-body p:last-child,
.cc-faq.axil-accordion--2 .card .card-body p:last-child {
    margin-bottom: 0;
}

.cc-faq .card .collapse,
.cc-faq.axil-accordion--2 .card .collapse {
    position: relative;
}

/* Spotlight FAQ — team-section energy: gradient ring, glow, animated label */
.cc-faq .card.cc-faq__item--spotlight,
.cc-faq.axil-accordion--2 .card.cc-faq__item--spotlight {
    z-index: 1;
    border-color: transparent;
    background:
        linear-gradient(#fff, #fff) padding-box,
        linear-gradient(135deg, rgba(0, 207, 255, 0.75), rgba(238, 37, 56, 0.75)) border-box;
    border: 1.5px solid transparent;
    box-shadow: 0 18px 42px rgba(0, 2, 72, 0.1);
    transform: scale(1.015);
    overflow: visible;
}

.cc-faq .card.cc-faq__item--spotlight:hover,
.cc-faq.axil-accordion--2 .card.cc-faq__item--spotlight:hover {
    transform: scale(1.02) translateY(-2px);
    box-shadow: 0 26px 52px rgba(0, 2, 72, 0.14);
    border-color: transparent;
}

.cc-faq__ring {
    position: absolute;
    inset: -3px;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(0, 207, 255, 0.55), rgba(238, 37, 56, 0.55));
    opacity: 0.35;
    z-index: -1;
    filter: blur(0.5px);
    animation: ccFaqRingPulse 3.2s ease-in-out infinite;
    pointer-events: none;
}

.cc-faq__glow {
    position: absolute;
    width: 180px;
    height: 180px;
    top: -60px;
    right: -40px;
    border-radius: 50%;
    background: rgba(238, 37, 56, 0.16);
    filter: blur(48px);
    opacity: 0.7;
    pointer-events: none;
    z-index: 0;
    animation: ccFaqGlow 8s ease-in-out infinite;
}

.cc-faq__spark {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 18px 24px 0;
}

.cc-faq__spark-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, #00cfff, #ee2538);
    box-shadow: 0 0 0 0 rgba(238, 37, 56, 0.35);
    animation: ccFaqDotPulse 1.8s ease-out infinite;
    flex: 0 0 auto;
}

.cc-faq__spark-text {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.3;
    background: linear-gradient(90deg, #00cfff 0%, #0a66c2 40%, #ee2538 100%);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    animation: ccFaqLabelGradient 2.8s ease-in-out infinite;
}

.cc-faq__item--spotlight .card-header,
.cc-faq__item--spotlight .card-body,
.cc-faq__item--spotlight .collapse {
    position: relative;
    z-index: 2;
}

.cc-faq__item--spotlight .card-header .btn.btn-link {
    padding-top: 12px;
}

@keyframes ccFaqRingPulse {
    0%, 100% { opacity: 0.28; transform: scale(1); }
    50% { opacity: 0.5; transform: scale(1.008); }
}

@keyframes ccFaqGlow {
    0%, 100% { transform: translate(0, 0); opacity: 0.55; }
    50% { transform: translate(-12px, 10px); opacity: 0.85; }
}

@keyframes ccFaqDotPulse {
    0% { box-shadow: 0 0 0 0 rgba(238, 37, 56, 0.4); }
    70% { box-shadow: 0 0 0 10px rgba(238, 37, 56, 0); }
    100% { box-shadow: 0 0 0 0 rgba(238, 37, 56, 0); }
}

@keyframes ccFaqLabelGradient {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

.cc-faq__footer {
    margin: 28px 0 0;
    text-align: center;
    font-size: 16px;
    line-height: 1.6;
    color: rgba(0, 2, 72, 0.72);
}

.cc-faq__footer a {
    color: #E62733;
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid rgba(230, 39, 51, 0.35);
    transition: border-color 0.2s ease, color 0.2s ease;
}

.cc-faq__footer a:hover {
    color: #c91f2a;
    border-bottom-color: #c91f2a;
}

@media only screen and (max-width: 767px) {
    .cc-faq .card .card-header .btn.btn-link,
    .cc-faq.axil-accordion--2 .card .card-header .btn.btn-link {
        font-size: 16px;
        padding: 18px 48px 18px 18px;
    }

    .cc-faq .card .card-header .btn.btn-link::after,
    .cc-faq .card .card-header .btn.btn-link::before,
    .cc-faq.axil-accordion--2 .card .card-header .btn.btn-link::after,
    .cc-faq.axil-accordion--2 .card .card-header .btn.btn-link::before {
        right: 18px;
    }

    .cc-faq .card .card-body,
    .cc-faq.axil-accordion--2 .card .card-body {
        padding: 0 18px 18px;
        font-size: 15px;
        line-height: 1.65;
    }

    .cc-faq__spark {
        margin: 14px 18px 0;
    }

    .cc-faq__spark-text {
        font-size: 12px;
    }

    .cc-faq .card.cc-faq__item--spotlight,
    .cc-faq.axil-accordion--2 .card.cc-faq__item--spotlight {
        transform: none;
    }

    .cc-faq .card.cc-faq__item--spotlight:hover,
    .cc-faq.axil-accordion--2 .card.cc-faq__item--spotlight:hover {
        transform: translateY(-1px);
    }

    .cc-faq__item--spotlight .card-header .btn.btn-link {
        padding-top: 10px;
    }

    .cc-faq__footer {
        font-size: 15px;
        margin-top: 22px;
    }
}

body.active-dark-mode .cc-faq .card,
body.active-dark-mode .cc-faq.axil-accordion--2 .card {
    background: #262930;
    border-color: rgba(255, 255, 255, 0.1);
    box-shadow: none;
}

body.active-dark-mode .cc-faq .card .card-header .btn.btn-link,
body.active-dark-mode .cc-faq.axil-accordion--2 .card .card-header .btn.btn-link {
    color: #f0f0f2;
}

body.active-dark-mode .cc-faq .card .card-header .btn.btn-link::after,
body.active-dark-mode .cc-faq .card .card-header .btn.btn-link::before,
body.active-dark-mode .cc-faq.axil-accordion--2 .card .card-header .btn.btn-link::after,
body.active-dark-mode .cc-faq.axil-accordion--2 .card .card-header .btn.btn-link::before {
    background: #f0f0f2;
}

body.active-dark-mode .cc-faq .card .card-body,
body.active-dark-mode .cc-faq.axil-accordion--2 .card .card-body {
    color: rgba(240, 240, 242, 0.78);
}

body.active-dark-mode .cc-faq .card.cc-faq__item--spotlight,
body.active-dark-mode .cc-faq.axil-accordion--2 .card.cc-faq__item--spotlight {
    background:
        linear-gradient(#262930, #262930) padding-box,
        linear-gradient(135deg, rgba(90, 223, 255, 0.7), rgba(255, 107, 122, 0.7)) border-box;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

body.active-dark-mode .cc-faq__spark-text {
    background: linear-gradient(90deg, #5adfff 0%, #6db3f2 40%, #ff6b7a 100%);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

body.active-dark-mode .cc-faq__footer {
    color: rgba(240, 240, 242, 0.7);
}

/* Section background: soft brand gradient (ACF Section Background option) */
.cc-section-bg-gradient {
    background:
        radial-gradient(ellipse 120% 80% at 10% 0%, rgba(0, 207, 255, 0.08), transparent 55%),
        radial-gradient(ellipse 90% 70% at 95% 20%, rgba(238, 37, 56, 0.06), transparent 50%),
        linear-gradient(180deg, #ffffff 0%, #f4f7fb 100%);
}

body.active-dark-mode .cc-section-bg-gradient {
    background:
        radial-gradient(ellipse 120% 80% at 10% 0%, rgba(0, 207, 255, 0.12), transparent 55%),
        radial-gradient(ellipse 90% 70% at 95% 20%, rgba(238, 37, 56, 0.08), transparent 50%),
        linear-gradient(180deg, #18191a 0%, #242526 100%);
}

/* ==========================================================================
   Section footer CTAs — soft glow, easy on the eyes
   ========================================================================== */
.cc-section-cta {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-top: 48px;
    padding: 8px 16px 0;
}

.cc-section-cta__lead {
    max-width: 520px;
    margin: 0 0 18px;
    font-size: clamp(15px, 1.2vw, 18px);
    line-height: 1.55;
    color: rgba(0, 2, 72, 0.76);
}

.cc-section-cta__button-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.cc-section-cta__ring {
    position: absolute;
    inset: -8px -10px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(245, 51, 63, 0.28) 0%, rgba(245, 51, 63, 0) 72%);
    animation: ccSectionCtaGlow 3.6s ease-in-out infinite;
    pointer-events: none;
    z-index: 0;
}

.cc-section-cta__button {
    position: relative;
    z-index: 1;
}

@keyframes ccSectionCtaGlow {
    0%, 100% {
        opacity: 0.45;
        transform: scale(0.98);
    }
    50% {
        opacity: 0.85;
        transform: scale(1.04);
    }
}

@media (prefers-reduced-motion: reduce) {
    .cc-section-cta__ring {
        animation: none;
        opacity: 0.55;
    }

    .cc-section-cta.wow {
        visibility: visible !important;
        animation: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .cc-section-cta {
        margin-top: 36px;
    }

    .cc-section-cta__lead {
        margin-bottom: 14px;
        font-size: 15px;
    }
}

body.active-dark-mode .cc-section-cta__lead {
    color: rgba(240, 240, 242, 0.78);
}

/* Trust badges — Google, Clutch, Trustpilot */
.cc-trust-badges {
    margin-top: 0;
}

.cc-trust-badges__label {
    margin: 0 0 14px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: rgba(0, 2, 72, 0.55);
}

.cc-trust-badges--center {
    text-align: center;
}

.cc-trust-badges--center .cc-trust-badges__label {
    text-align: center;
}

.cc-trust-badges .trusted-icons a {
    display: inline-flex;
    align-items: center;
    line-height: 0;
    transition: transform 0.25s ease, opacity 0.25s ease;
}

.cc-trust-badges .trusted-icons a:hover {
    transform: translateY(-2px);
    opacity: 0.88;
}

.cc-trust-badges .trusted-icons svg {
    display: block;
    max-width: 100%;
    height: auto;
}

body.active-dark-mode .cc-trust-badges__label {
    color: rgba(240, 240, 242, 0.62);
}

@media (max-width: 991px) {
    .cc-trust-badges {
        position: relative;
        z-index: 3;
        margin-bottom: 12px;
    }

    .cc-trust-badges .trusted-icons {
        display: grid;
        grid-template-columns: repeat(2, auto);
        justify-content: center;
        align-items: center;
        gap: 14px 28px;
        width: 100%;
        max-width: 100%;
        margin-bottom: 50px;
    }

    .cc-trust-badges .trusted-icons a {
        justify-self: center;
    }

    .cc-trust-badges .trusted-icons a.trust-pilot {
        grid-column: 1 / -1;
    }

    .cc-trust-badges .trusted-icons svg {
        max-height: 34px;
        width: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cc-trust-badges .trusted-icons a {
        transition: none;
    }

    .cc-trust-badges .trusted-icons a:hover {
        transform: none;
    }
}

.page-id-4102 .cc-hero {
    padding: 220px 0 120px;
}