/* Global fonts */
:root {
  --main-font-family: 'Lato', serif;
--PTP-Red:#C8102E; /*PTP Colour Red */
--White:#fff; /*PTP Colour Red */
--PTP-Dark:#03121B;
}
body {font-family: var(--main-font-family)}
h3 {}
.pb-6 {
    padding-bottom: 5rem !important;
}
.pt-6 {
    padding-top: 5rem !important;
}

/* Footer Additional Styles */
#footer .menu-item a[aria-current="page"] {
    color: #fff;
}

#footer .menu-item a[aria-current="page"]:hover {
    color: var(--PTP-Red);
}
.wp-block-quote {border-color: var(--PTP-Red);}

.legal-menu {margin: 0;align-items: center;}

.legal-menu li, .legal-menu li a {color: #F8F9F7; font-size: 13px;font-weight:300;margin-right: 10px;border-bottom: none}
.footer-logo {margin-bottom: 30px;max-width: 200px}

.legal-menu li a  {padding: 0;    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;}
.legal-menu li a:hover {color: var(--PTP-Red);}
.legal-menu li  {padding: 20px 0;}
.footer-social {border-top: 1px solid #ffffff1c;border-bottom: 1px solid #ffffff1c;}
.footer-social .social-links.d-flex {align-items: end;padding: 0;justify-content: end;gap: 10px;list-style: none;margin:0}
footer h5 {font-size: 15px;
    color: #ffffff;margin-bottom: 35px;} 
#footer p {margin-top: 10px;font-size: 14px; color: #ffffffcc; }
.office a {color:var(--PTP-Red); }
.office-details .office:last-child {margin-top: 40px}
footer ul {padding: 0}

footer ul li a.nav-link {font-size: 14px; color: #ffffffcc;margin-bottom: 15px}

footer ul li a.nav-link:hover {color: var(--PTP-Red);}

#footer .disclaimer h5 {margin-bottom: 0;color: #ffffff65;}

#footer .disclaimer p {    color: #ffffff65;}


/* Header */
.col-megamenu ul.half {display: grid
;grid-template-columns: 1fr 1fr;
    gap: 0 40px;}
.double-menu-wrap {display: grid
;
    grid-template-columns: 1fr 1fr;
    gap: 0 40px;}

   .col-megamenu ul.main-sub {margin: 15px 0;
    padding: 0;
    background: #f5f5f5;
    padding: 5px;}
     .main-sub li  {list-style: none;}
        .col-megamenu ul.main-sub li a {background: #F5F5F5;padding: 5px;
    border: none;}

.navbar-expand-md .navbar-nav .dropdown-menu {z-index:99999999;    border: none;
    box-shadow: none;}

.navbar-toggler {border: none}

.navbar-toggler:focus {box-shadow: none}

.dropdown-menu.custom-submenu{position: absolute;top: 68px;border-radius: 0;border: none;box-shadow: none;}
.col-megamenu ul  {margin-bottom: 20px}
.col-megamenu ul li a{    padding: 6px 0;display: block;border-bottom: 1px solid #00000029;font-size: 14px;transition: color 0.3s ease;}
.col-megamenu ul li a:hover {color: var(--PTP-Red);}
.col-megamenu ul li a.nobordbot {border-bottom: none;}
.col-megamenu ul li:last-child a {border-bottom: none}
.mobile-cont {max-width: 1300px;margin:auto;}
.mobile-cont h6 {font-size: 18px;font-weight: 600;border-bottom: 1px solid var(--PTP-Red);padding-bottom: 10px;margin-bottom: 20px}
.mobile-cont h6 a {font-size: 18px!important}
.mobile-cont h6 a:hover {color: var(--PTP-Red);}
.mobile-cont .col-lg-3 {padding: 0 20px; /* Adjust as needed */}

.pl-10 {padding-left: 10%}

.fullcont {max-width: 1440px}

.top-head {background-color: var(--PTP-Dark);}

.top-head ul {display: flex;margin: 0;align-items:center;}

.top-head ul li {list-style: none}

.top-head ul li {      background-image: url(../images/white-phone-icon.svg);
    background-repeat: no-repeat;
    padding-left: 25px;
    color: #fff;
    margin-left: 20px;font-size: 14px;padding-top: 10px;
    padding-bottom: 10px;align-items: center;background-position: left;}

    .top-head ul li.portal {background-color: #ffffff24;
    padding-left: 15px;
    background-image: none;
    padding-right: 15px;
    text-transform: uppercase;cursor: pointer;transition: background-color 0.3s ease, color 0.3s ease;}

        .top-head ul li.portal:hover {background-color: var(--PTP-Red);}

    .top-head ul li a {color: #fff;font-weight: 300}

     .top-head ul li a:hover {color: var(--PTP-Red);}
        .top-head ul li.portal a:hover {color: #fff;}

     .social-links.d-flex li{background-image: none;}

          .social-links.d-flex li {background-image: none;padding-left: 0;list-style: none;}

           .social-links.d-flex {align-items: center;padding: 0}

.tophead-cont {display: flex;justify-content: flex-end;}
.navbar-brand img {
    height: 50px; 
}

#header {padding:20px 0;background-color:#fff!important  }
#main.container {max-width: 100%;padding: 0;margin-top: 0}
.navbar .megamenu{ padding: 0.5rem; }
.main-nav li a {font-size: 16px;color: var(--PTP-Dark);}
.main-nav .dropdown-item:active {background-color: var(--bs-dropdown-link-hover-bg);
    color: var(--bs-dropdown-link-hover-color);}
#articleContent {word-break: break-word; 
overflow-wrap: break-word;} 


/******/

 /* Fullscreen Menu */

 #mobileMenu {padding: 25px 0;background-color: var(--PTP-Dark);}
        .menu-overlay {
            position: fixed;
            top: 60px; /* Leaves space for the header */
            left: 0;
            width: 100%;
            height: calc(100vh - 100px); /* Makes menu full height below the header */
            background-color: #0c1117;
            color: white;
            padding-top: 20px;
            overflow-y: auto;
            transform: translateY(-100%);
            transition: transform 0.3s ease-in-out;
            z-index: 1040; /* Below header but above content */
        }

        /* Show Menu */
        .menu-overlay.show {
            transform: translateY(0);
        }

        .menu-item {
            background-color: var(--PTP-Dark);
            border-bottom: 1px solid #222b34;
            padding: 15px;
            cursor: pointer;
        }
        .submenu {
            background-color: #111f27;
            padding-left: 0px;
        }

         .submenu  .menu-item {    background-color: #111f27;}
        .submenu .submenu {
            background-color: #222b34;
            padding-left: 0;
        }
        .menu-item a, .menu-item button {
            color: white;
            text-decoration: none;
            width: 100%;
            text-align: left;
            border: none;
            background: none;
            display: flex;
            justify-content: space-between;
            align-items: center;padding: 0;
        }

.submenu .submenu a {padding-left: 20px}

/* ============ desktop view ============ */
@media all and (min-width: 992px) {



  .navbar .has-megamenu{position:static!important;}
  .navbar .megamenu{left:0; right:0; width:100%; margin-top:0;border-radius:0  }

} 
/* ============ desktop view .end// ============ */

/* ============ mobile view ============ */
@media(max-width: 991px){
  .navbar.fixed-top .navbar-collapse, .navbar.sticky-top .navbar-collapse{
    overflow-y: auto;
      max-height: 90vh;
      margin-top:10px;
  }
}
/* ============ mobile view .end// ============ */

.navbar-expand-md .navbar-collapse {justify-content: center;}

/* Accreditations */

.accreditations { background-color:var(--White);}

.accreditations img {max-width: 100px}

 .accreditations .col {border: 1px solid #00000026;
    padding: 20px 0;border-right:none} 
 .accreditations .last-acred .col {border-top: none}

/**************** Home Page *******************/


/* Banner */
#bannerCarousel {

position: absolute;
    top: 0;
    width: 100%;
    height: 100%;    background: #03121b;}

    .carousel-inner {height: 100%}

     .carousel-inner  {height: 100%}

     .carousel-item {height: 100%}

      .carousel-item img {object-fit: cover;width: 100%;height: 100%}
.full-width-banner {position: relative;}
.full-width-banner h1 {color: #fff;font-size: 3em}
.full-width-banner h2 {color: #fff}
.full-width-banner p {color: #fff;font-size: 18px}

.full-width-banner .red-button {width: 30%}


    .full-width-banner .bannerint {position: relative;z-index: 999}

.event-item {    background-color: #17242D;
    padding: 25px;
    border-radius: 6px;position: relative;overflow: hidden;} 

    .carousel-indicators [data-bs-target] {background-clip:none;height: 12px;
    width: 12px;
    border-radius: 100%;
    border: 1px solid #fff !important;
    opacity: 1;
    background-color: #32111F;}

    .carousel-indicators .active {background-color: var(--PTP-Red);}

    .carousel-indicators {bottom: -35px}

.event-item .event-thumbnail {
    position: absolute;
    right: 0;
    top: 0;
    border: 0;
    height: 100%;
    width: 33%;}
.thumb-over{-webkit-border-top-right-radius: 7px;
-webkit-border-bottom-right-radius: 7px;
-moz-border-radius-topright: 7px;
-moz-border-radius-bottomright: 7px;
border-top-right-radius: 7px;
border-bottom-right-radius: 7px;
        position: absolute;
    height: 100%;
    width: 100%;
    background: linear-gradient(90deg, rgba(23, 36, 45, 1) 0%, rgba(23, 36, 45, 0.6573223039215687) 100%);}

    .event-item .event-thumbnail img {width: 100%;height: 100%;-webkit-border-top-right-radius: 7px;
-webkit-border-bottom-right-radius: 7px;
-moz-border-radius-topright: 7px;
-moz-border-radius-bottomright: 7px;
border-top-right-radius: 7px;
border-bottom-right-radius: 7px;}
.event-date.d-block {color: #fff;
    font-size: 12px;
    text-transform: uppercase;}

    .event-date.d-block .date {color: #ffffff80;margin-left: 5px}

.event-content .post-categories  {}
.event-content .post-categories li {color: #fff;border:1px solid var(--PTP-Red);padding: 5px; border-radius: 5px;
    padding: 3px 5px; font-size: 11px; text-transform: uppercase;}

    .home-blog .post-categories li {color: #000000;border:1px solid var(--PTP-Red);padding: 5px; border-radius: 5px;
    padding: 3px 5px; font-size: 11px; text-transform: uppercase;}
 .event-content {z-index: 9}
    .event-content h5 {font-size: 17px;
    color: #fff;
    margin: 0;}
    .event-content h5 a {color: #fff}

    .events.mobile {margin-top: 20px}

    #service-grid {background-color: var(--bs-ptp-dark)}

    #service-grid .service-box {border-radius: 6px;border-color: #ffffff20!important;display: flex
;flex-direction: column;align-items: flex-start;transition: border-color 0.3s ease-in-out; cursor: pointer;}
.intro-box h2 {color: #fff;font-weight: 300}
.intro-box p {color: #ffffff70;}

.icon-flex {text-align: left;}
#service-grid .service-box:hover {border-color:var(--PTP-Red)!important;}

      #service-grid .service-box h2 {color: #fff;font-weight: 300;margin-bottom: 0}
      #service-grid .service-box p {color: #ffffff70;    max-width: 80%;
    text-align: left;
    font-size: 17px;margin-bottom:0 }

      h2.h28 {font-size:28px }
      h2.h22 {font-size:22px }

      .blogsearch p {margin-top: 1rem; font-weight: 300;font-size: 18px}

.blogsearch .button-cont {display: flex;
    align-items: center;gap: 1em}
      .input-group {
    max-width: 600px; /* Adjust width */

}

.blogsearch .button-cont .red-button {width: 20%;}

.blogsearch .input-group-text {
    border-radius: 8px 0 0 8px;
    padding: 10px 15px;
    display: flex;
    align-items: center;
    background: #f8f9fa;
}

.blogsearch .input-group-text i {
    font-size: 1.2rem;
    color: #000; /* Adjust icon color */
}

.blogsearch .form-select {
    border-radius: 0 8px 8px 0;
    padding: 8px 15px;
    font-size: 1rem;
    background: #fff;font-size: 15px;
    color: #04121b;
    font-weight: 300;

}

.form-select:focus {
    box-shadow: none;
    border: 1px solid #ccc;
}

.home-blog .card {border: none;}


/* Ensure the container is positioned */
.post-thumbnail {
    position: relative;
    overflow: hidden;margin: 0;
}

/* Image Overlay (Default State) */
.image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3); /* Default dark overlay */
    transition: background 0.3s ease-in-out;
}

/* Arrow Box (Default) */
.arrow-box {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.8);
    display: flex;
    align-items: center;
    justify-content: center;

    transition: background 0.3s ease-in-out, color 0.3s ease-in-out;
}

/* Arrow Icon */
.arrow-box i {
    font-size: 18px;
    color: var(--PTP-Red);
    transition: color 0.3s ease-in-out;transform: rotate(45deg);
}

/* Hover Effect */
.post-thumbnail-link:hover .image-overlay {
    background: rgba(0, 0, 0, 0.6); /* Darker overlay on hover */
}

.post-thumbnail-link:hover .arrow-box {
    background: var(--PTP-Red); /* Red background on hover */
}

.post-thumbnail-link:hover .arrow-box i {
    color: white; /* White arrow on hover */
}

.container.contact-form  .row{--bs-gutter-x: 4em;max-width: 100%}



.container.contact-form  .row .col-md-6:first-child {    padding-right: 5em;
    padding-top: 5em;}
.container.contact-form .row .col-md-6:first-child p:first-child {
    font-size: 22px;
    color: #03121B;
    font-weight: 400;
    line-height: 31px;}

    .container.contact-form .uk-office-details h3  {    font-weight: 600;
    font-size: 22px;
    color: #03121B;
    padding-bottom: 10px;
    border-bottom: 1px solid #00000026;}
    .container.contact-form .uk-office-details br {display: none;}

    .container.contact-form .uk-office-details {margin-top: 40px} 

.container.contact-form  .row .col-md-6:last-child {

padding-left: 2em;
    padding-top: 5em;
    border-left: 1px solid #00000026;}

    .container.contact-form .uk-office-details p.phone {background-image: url(../images/phone-icon-bg.svg);
    padding: 20px 0 20px 50px;
    color: #03121B;
    font-weight: 400;
    font-size: 16px;
    background-position: left;
    border-bottom: 1px solid #00000026;
    background-repeat: no-repeat;}

    .container.contact-form .uk-office-details p.phone a {   color: #03121B;}

        .container.contact-form .uk-office-details p.location {background-image: url(../images/location-icon-bg-red.svg);
    padding: 20px 0 20px 50px;
    color: #03121B;
    font-weight: 400;
    font-size: 16px;
    background-position: left;
    border-bottom: 1px solid #00000026;
    background-repeat: no-repeat;}

    .container.contact-form  p.location span {display: none}

    .form-cont {display: flex;
    justify-content: revert;
    justify-items: inherit;
    flex-direction: row;
    flex-wrap: wrap;gap: 2em}
     .form-cont .left-form, .form-cont .right-form {flex: 1} 

      .contact-form label {width: 100%;font-size: 15px; color: var(--PTP-Dark);padding-bottom: 7px}

.contact-form button, .contact-form input, .contact-form  optgroup, .contact-form  select, .contact-form  textarea{max-width: 100%;
    width: 100%;
    background-color: #F1F2F0;
    border: 1px solid #1f271b1f;
    border-radius: 8px;
    padding: 9px;
    margin-bottom: 15px;margin-top: 10px}

.contact-form  [type="submit"] {

    background-color: var(--PTP-Red);
    color: #fff;
    border: none;
    width: 50%;
    padding: 9px;
    border-radius: 8px;
    background-image: none;
    box-shadow: none;}
.contact-form  [type="submit"]:hover {
background-color: #c8102ec4;
    background-image: none;
    color: #fff;}

   .container.contact-form  .row .col-md-6:last-child p {margin-bottom: 0}


   .home-events {background-color: var(--PTP-Dark);padding: 100px 0 45px}


   .event-search h2.h28 {color: #fff}

      .event-search p{color: #fff;    margin-top: 1rem;
    font-weight: 300;
    font-size: 18px;}

      .home-events select, .home-events input {border-radius:8px!important;
    padding: 8px 15px;
    font-size: 1rem;
    background: transparent;
    font-size: 15px;
    color: #fff;
    font-weight: 300;
border-color: #ffffff40}
/* Custom Styling for Dropdown */
.custom-dropdown {
    position: relative;
    width: 100%;
    max-width: 400px;display: flex; /* Adjust width as needed */
}

.custom-dropdown select {
    appearance: none;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.3);
    padding: 12px 40px 12px 15px;
    width: 100%;
    font-size: 16px;
    color: #fff;
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

/* Dropdown Hover */
.custom-dropdown select:hover {
    border-color: rgba(255, 255, 255, 0.6);
}

/* Dropdown Arrow */
.custom-dropdown .dropdown-icon {
position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: rgba(255, 255, 255, 0.6);
    font-size: 14px;
    height: 100%;
    width: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 1px solid rgba(255, 255, 255, 0.3);background: #ffffff17;
}

/* Change arrow color on hover */
.custom-dropdown:hover .dropdown-icon {
    color: rgba(255, 255, 255, 1);
}
/* Custom Search Box Styling */
.custom-search {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 400px; /* Adjust width as needed */
}

.custom-search input {
    width: 100%;
    padding: 12px 15px 12px 65px; /* Space for icon */
    font-size: 16px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background-color: rgba(255, 255, 255, 0.1);
    color: #fff;
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
}

.custom-search .search-icon {
position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: rgba(255, 255, 255, 0.6);
    font-size: 14px;
    height: 100%;
    width: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid rgba(255, 255, 255, 0.3);background: #ffffff17;
}

/* Search Icon */
.custom-search .search-icon {
    position: absolute;
    left: 0px;
    color: rgba(255, 255, 255, 0.6);
    font-size: 16px;
}

.form-wrapper [type="submit"] {
    background: #c8102f;
    color: #fff;
    border: none;
    padding: 10px 34px;
    font-size: 15px;
    border-radius: 8px;
    box-shadow: none;font-weight: 300} 


.form-wrapper [type="submit"]:hover {
background-color: #c8102ec4;
    background-image: none;
    color: #fff;
}

/* Hover & Focus Effects */
.custom-search input:focus {
    border-color: rgba(255, 255, 255, 0.3);box-shadow: none;
    outline: none;background: transparent;color: #fff;
}

.custom-search input::placeholder {
    color: #fff;
}
.form-wrapper {display: flex;gap: 15px}

.home-events .event-logo img {max-width: 70px}

.event-logo {display: flex;align-items: center;height: 55px}

.home-events .event-card {background-color: #17242d;
    padding: 35px 20px;
    border-radius: 7px;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;gap: 20px;position: relative;}
.home-events .event-thumbnail {

        position: absolute;
    right: 0;
    top: 0;
    border: 0;
    height: 100%;
    width: 33%;}
.home-events .event-thumbnail img {
    height: 100%;
    width: 100%;
    object-fit: cover;-webkit-border-top-right-radius: 7px;
-webkit-border-bottom-right-radius: 7px;
-moz-border-radius-topright: 7px;
-moz-border-radius-bottomright: 7px;
border-top-right-radius: 7px;
border-bottom-right-radius: 7px;}

.home-events .event-card p {
    color: #fff;
    margin: 0;
    font-weight: 300;}

    .home-events .button-cont {margin-top: 50px;margin-bottom: 60px}


    /* Breach Banner */

.page-template-page-breach .container.contact-form .row .col-md-6:last-child p {margin-bottom: 10px}

.container.contact-form .uk-office-details p.location a {color: #03121B}

.container.contact-form .uk-office-details p.location a:hover {color: var(--PTP-Red);}


 /************ Interal Banner ***********/ 

 .breadcrumb-item a {color: #fff;opacity: 0.7;}
 .breadcrumb-item.active {color: #fff}



 .breadcrumb-item + .breadcrumb-item:before {color: #fff}



 h1.internal-banner {font-size: 44px; font-weight: 700;color: #fff}
 .banner-section {
 padding: 65px 0;background: linear-gradient(344deg, rgba(4, 18, 27, 1) 0%, rgba(4, 18, 27, 1) 56%, rgba(200, 16, 46, 1) 100%);position: relative;overflow: hidden} 

 .banner-section.no-padding {padding: 0}

.banner-section.no-padding .banner-content {padding-top: 65px;padding-bottom: 65px;
 padding-top: 65px; padding-bottom: 65px
}

.banner-section.no-padding .banner-right-content {display:flex;flex-direction: column;
    justify-items: center;
    justify-content: center;
    align-items: center;
border-left: 1px solid #ffffff30;z-index: 9}

.banner-right-content .red-button {min-width: 250px;max-width: 90%}

.banner-right-content .h22 {color: #fff; text-align: center; margin-bottom: 20px;max-width: 80%}
.banner-right-content h2 {}
.banner-section p {color: #fff;
    font-weight: 300;
    width: 700px;
    max-width: 90%;margin-bottom: 0}
    .banner-right-content {justify-items: center;}
 .banner-right-logo {position: absolute;
    top: 0;
    right: 0;
   }
.banner-content {z-index: 9;position: relative;}

/*** Breach page***/

.page-template-page-breach .container.contact-form .row .col-md-6:first-child {padding-top: 2em}

.page-template-page-breach .container.contact-form .row .col-md-6:last-child {padding-top: 2em;padding-bottom: 2em}

.page-template-page-breach .container.contact-form .uk-office-details p.location {border-bottom: none}

.page-template-page-socks .vision-content img {max-height: 100%}
.vision-content ul li.windows {background-image: url(../images/Microsoft.svg);}

.vision-content ul li img {    max-width: 30px;}

.vision-content ul.flex-list li {    background-image: none;
    display: flex
;
    align-items: center;
    gap: 10px;
    padding-left: 0;}

    .clean-list li.nobord {border-bottom: none;}

    .vision-content ul.flex-list li p {margin-bottom: 0}

.clean-list {
    list-style: none;
    counter-reset: list;
    padding-left: 0;
    margin-left: 0;
    margin-bottom: 0;
}

.clean-list.more {  counter-reset: list 3; /* Starts at 4 because it increments before use */
}

.clean-list li {
counter-increment: list;
    position: relative;
    margin-bottom: 1em;
    margin-bottom: 0;
    padding-left: 1.8em;
    padding-top: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #80808069;
}

.clean-list li::before {
  content: counter(list) ".";
  position: absolute;
  left: 0;
  width: 1em;
  text-align: right;
  font-weight: bold;
  color: var(--PTP-Red);
}

.page-template-page-socks label {
  font-weight: 500;
    display: inline-block;
    width: 100%;
    font-size: 1.1em;}


    .breach-cont {background-color: rgb(248, 249, 250);}

    .page-template-page-socks label span {width: 100%}

.page-template-page-socks input {width: 100%}

.page-template-page-socks textarea {width: 100%}

.page-template-page-socks input[type="submit"]{
background-color: var(--PTP-Red);
    color: #fff;
    border: none;
    width: 50%;
    padding: 9px;
    border-radius: 8px;
    background-image: none;
    box-shadow: none;}
.page-template-page-socks input[type="submit"]:hover {
    background-color: #c8102ec4;
    background-image: none;
    color: #fff;
}


/*** Service Landing***/
  .landing-cont section:nth-of-type(odd) {
  background-color: #FCFDFD;
  /* other styles */
}



.landing-cont section:nth-of-type(odd)  h2 {
    font-size: 28px;
    color: var(--PTP-Dark);
    margin-bottom: 20px;
    font-weight: 700;
    margin-top: 0px;
}
.landing-cont section:nth-of-type(odd) .card .card-text {color:var(--PTP-Dark);
    text-align: left;
    font-size: 14px;
    margin-bottom: 0;}

 .landing-cont section:nth-of-type(odd) .card p {color: var(--PTP-Dark);
    text-align: left;
    font-size: 14px;
    margin-bottom: 0;}   
.landing-menu-cont {background-color: var(--PTP-Dark);}


.service-template-single-service-multi  .current-menu-item  a {
border-bottom: 2px solid var(--PTP-Red);}

.page-template-service-landing .current-menu-item  a {
border-bottom: 2px solid var(--PTP-Red);}
.page-template-service-landing ul.events-menu li {border: none;padding: 0;list-style: none;
    margin-right: 15px;}


.service-first-row a {    background-color: var(--PTP-Red);
    color: #fff;
    border: none;
    /* max-width: 300px; */
    padding: 10px 100px 10px 20px;
    border-radius: 8px;
    background-image: none;
    box-shadow: none;
    text-shadow: none;
    position: relative;display: block;
    width: fit-content;}

.service-first-row a .fa {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);}

.service-first-row a:hover { 
    background-color: #c8102ec4;
    background-image: none;
    color: #fff;}
 .service-template-single-service-multi .col-md-6 .card {
border-radius: 6px;
    border-color: var(--PTP-Red);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    transition: border-color 0.3s ease-in-out;
    cursor: pointer;background: transparent;height: 100%;padding: 15px;transition:ease 0.3s;}


      .service-template-single-service-multi .card:hover {border-color: black;
    background-color: #f2f2f2;}
.page-template-service-landing  .card {
border-radius: 6px;
    border-color: var(--PTP-Red);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    transition: border-color 0.3s ease-in-out;
    cursor: pointer;background: transparent;height: 100%;padding: 15px;transition:ease 0.3s;}

    .page-template-service-landing .card:hover {border-color: black;
    background-color: #f2f2f2;}
   .landing-cont section:nth-of-type(odd) .card:hover { border-color: var(--PTP-Red) !important;}
.landing-cont section:nth-of-type(odd) .card h5 {color:var(--PTP-Dark);font-weight: 300;margin-bottom: 0;font-size: 24px;margin-bottom: 10px;
}
.landing-intro .carousel-indicators {margin-left: 0;left: 0;right: auto;}

.landing-intro .carousel-control-next, .landing-intro .carousel-control-prev {z-index: 999999;background: none}


/*** Even ***/
.landing-cont section:nth-of-type(even) .card {height: 100%}

.landing-cont section:nth-of-type(even)  h2 {
    font-size: 28px;
    color: var(--PTP-Dark);
    margin-bottom: 20px;
    font-weight: 700;
    margin-top: 0px;
}

 .landing-cont section:nth-of-type(even) .card p {color: #fff;
    text-align: left;
    font-size: 14px;
    margin-bottom: 0;}  

      .landing-cont section:nth-of-type(even) {background-color:var(--PTP-Dark); }

      .landing-cont section:nth-of-type(even) .card {
border-radius: 6px;
    border-color: var(--PTP-Red);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    transition: border-color 0.3s ease-in-out;
    cursor: pointer;background:#101E26;height: 100%;padding: 15px}

    .landing-cont section:nth-of-type(even) .card h5 {color:#fff;font-weight: 300;margin-bottom: 0;font-size: 24px;margin-bottom: 10px;}
/*** Single Event ***/

.pagination-wrapper .prev.page-numbers {color: #fff}
.pagination-wrapper .next.page-numbers {color: #fff}
.pagination-wrapper .page-numbers {color: var(--PTP-Red);}
.page-numbers.current {font-weight: 700}
.single-events .service-content .wp-block-image {margin-top: 0}
.single-events .service-right-content {border-left: none}

.event-details {background-color: var(--PTP-Dark);color: #fff;
    padding: 40px;
    border-radius: 10px;}

    .event-details  .bold {font-weight: 700;font-size: 18px}


/*** Vision Service ***/
.vision-content img{width: 100%; object-fit: cover;max-height: 350px}

.vision-content h2 {font-weight: 500}

.vision-content h2 span {font-weight: 700}

.vision-content ul {padding: 0}

.vision-content ul li{    background-image: url(../images/ptp-red-tick.svg);
    list-style: none;
    background-repeat: no-repeat;
    padding-left: 32px;
    background-position: left;margin-bottom: 15px}

/*** Single Service ***/
.service-content {padding-bottom: 65px;padding-right: 10%;padding-top: 65px}

.service-content .tick-list {padding: 0}

.service-content .tick-list li {    background-image: url(../images/ptp-red-tick.svg);
    list-style: none;
    background-repeat: no-repeat;
    padding-left: 32px;
    background-position: left;
    margin-bottom: 15px;}

.service-upsell {position: relative;padding-bottom: 10px;
 }

    .service-upsell img {position: absolute;
    width: 100%;
    height: 100%;
    top: 0;}

    .service-upsell  .red-button {z-index: 99;
    position: relative;
    display: block;
    width: 80%;
    margin: auto;
    margin-bottom: 20px;background-color: #374148;color: #fff}
.upsell-content {z-index: 99;
    padding: 25px 20px;
    color: #fff;position: relative;}

 

    .upsell-content h2 {color: #fff}
     .upsell-content p {color: #fff;margin: 0;font-weight: 300;font-size:15px}
.service-right-menu li a {    color: #000;
    padding: 15px 0;
    display: block;
    border-bottom: 1px solid #00000030;}
    .service-right-menu li:last-child a  {border-bottom: none}
     .service-right-menu li a:hover {color: var(--PTP-Red);} 
     .service-right-menu {margin-top: 20px}

.ptp-service-feature-list-block {padding: 45px 0 0;max-width: 99%;}

.right-title-wrap h2 {
font-size: 28px;
    color: #000000;
    font-weight: 700;
}
.right-title-wrap {gap: 10px 0}
.service-content .wp-block-image  {margin-bottom: 60px;margin-top: 60px}

.service-content  h2:first-child {font-size: 28px;color: #000000;margin-bottom: 20px;font-weight: 700;margin-top: 0px}

.service-content  h2 {font-size: 28px;color: #000000;margin-bottom: 20px;font-weight: 700;margin-top: 60px}


.service-content  h3 {font-size: 22px;color: #000000;margin-bottom: 20px;font-weight: 700;margin-top: 40px}

.service-right-content  {border-left:1px solid #00000030;padding-top:65px; padding-bottom:65px;padding-left:3% }

.service-content a {color: var(--PTP-Red);}

.service-content a.btn.red-button {color: #fff}

.service-content table tr:first-child td{background-color: var(--PTP-Dark); color: #fff}

   .service-content table { border-spacing: 10px;
    border-collapse: separate;}

    .flex-col {flex-direction: column;}

    .feature-icon.mr-2 {display: flex;gap: 10px}

    .feature-title.m-0 {    font-size: 18px;
    font-weight: 700;}
    .feature-text {margin-top: 10px}
    .feature-text p {font-size: 15px}

    .service-blog {padding: 0;gap: 20px}

    .service-blog .card {border: none}

     .service-blog  .col-md-12 {padding: 0}


/* Outer container – grid with 2 columns */
.ptp-responsive-table {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: auto;
  gap: 0;
}

/* Header styles */
.left-header,
.right-header {
  background-color: #071128;
  color: #fff;
  font-weight: bold;
  padding: 1rem;
}

/* Content styles */
.left-content,
.right-content {
  background-color: #f5f5f5;
  padding: 1rem;
  border-top: 1px solid #e1e1e1;
}

.page-template-page-security-blog .pagination-wrapper .next.page-numbers {color: var(--PTP-Dark)!important;}


     /************ Single Post ***********/ 
     .single-post  .wp-block-preformatted {
    box-sizing: border-box;
    white-space: pre-wrap;
    background: #8080806b;
    padding: 10px;}

    .related-service-section {border: 1px solid #0000005c;
    border-radius: 7px;
    padding: 20px;}
.related-service-section a {
   background-color: var(--PTP-Red);
    color: #fff;
    border: none;
    /* width: 50%; */
    padding: 9px 30px;
    border-radius: 8px;
    background-image: none;
    box-shadow: none;
    font-size: 17px;}

    .related-service-section p {font-size: 15px}

     .blog-link {position: absolute;top: 0; height: 100%;width: 100%}
     .pl-5 {padding-left: 5%}

     .pr-5 {padding-right: 5%}

    .single-pos {border-right:1px solid #00000030;padding-right: 0}


.single-post .post-thumbnail img {
    border-radius: 3px;} 

.single-post  .post-categories li {border: 1px solid var(--PTP-Red);
    font-weight: 400;
    text-transform: uppercase;
    font-size: 12px;
    padding: 5px 10px;
    border-radius: 3px;margin-bottom: 5px}

#comments {display: none;}

.single-post .entry-title {    font-size: 38px;
    font-weight: 600;
    line-height: 44px;}


   .single-post h3.single-author {font-size: 16px;
    margin-top: 10px;
    font-weight: 300;}

.single-post .social-links a {
    border: none;
    box-shadow: none;

    border-radius: 0;
    padding: 5px;}

    .single-post .footer-social  .social-links a {background: none!important}


    .single-post .social-links a:focus{outline: 2px solid red;}


    .post-intro {background-color: #F6F7F5}
.date-read {
    font-size: 15px;
    text-transform: uppercase;
    color: #000;
    font-weight: 300;
}

.single-post .entry-content h3 {font-size: 28px;
    font-weight: 400;
    margin-bottom: 15px;}

.single-post .entry-content p {
    font-size: 16px;
    font-weight: 300;}

    .single-post .entry-content ul li { font-size: 16px;
    font-weight: 300;margin-bottom: 15px}

    .single-post .entry-content a {color: var(--PTP-Red);}


    .single-post .entry-content a:focus {-webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);}

        .single-post .entry-content ol li { font-size: 16px;
    font-weight: 300;margin-bottom: 15px}

#progress-bar-container {
    position: sticky;
    top: 0px; /* Stick it at the top of entry-content */
    left: 0;
    width: 100%;
    height: 15px;
    background: #e0e0e0;
    z-index: 9999;
}

#progress-bar {
    height: 100%;
    width: 0;
    background: #03121b;
    transition: width 0.1s ease-out;
}

.single .entry-content {margin-top: 0}

/*****Security Blog page**********/

.security-form .custom-dropdown select{border: 1px solid rgb(0 0 0 / 23%);color: var(--PTP-Dark);}
.security-form .custom-search {border: 1px solid rgb(0 0 0 / 23%);color: var(--PTP-Dark);    border-radius: 5px;}

.security-form .custom-search .search-icon {border-right: 1px solid rgb(0 0 0 / 23%);
    background-color: #04121b0f;}

    .security-form .custom-search input {color: var(--PTP-Dark);}

    .security-form .custom-search input::-webkit-input-placeholder {
 color: var(--PTP-Dark);
}

.security-form .custom-search input:-moz-placeholder {
color: var(--PTP-Dark);
}

.security-form .custom-search input::-moz-placeholder {
color: var(--PTP-Dark);
}

.security-form .custom-search input:-ms-input-placeholder {
color: var(--PTP-Dark);
}
    .security-form  .custom-search .fa-solid {color: #000}

.security-form  .custom-dropdown .dropdown-icon {border-left: 1px solid rgb(0 0 0 / 23%);background-color: #04121b0f;}


.security-form  .custom-dropdown .fa-solid {color: #000}
.blog-search-wrap {border-bottom: 1px solid #00000030;}

.security-form  .form-wrapper {width: 100%}

.security-form  .form-wrapper {
    display: flex
;gap: 15px;
    justify-items: center;
    width: 100%;
    padding: 0 15%;
}


.security-posts .post-categories li {
    color: #000000;
    border: 1px solid var(--PTP-Red);
    padding: 5px;
    border-radius: 5px;
    padding: 3px 5px;
    font-size: 11px;
    text-transform: uppercase;
}
/************** Events maain page ********/

.page-template-page-events .form-wrapper {margin-top: 15px}

.page-template-page-events .custom-search input {background-color: transparent;font-size: 15px; font-weight: 300
}
 
.page-template-page-events .custom-dropdown select {background-color: transparent;font-size: 15px; font-weight: 300}

.page-template-page-events .custom-dropdown select option {background-color:var(--PTP-Dark);}

.home-events .custom-dropdown  select option {
    background-color: var(--PTP-Dark);
} 

.page-template-page-events  .banner-section .input-group {max-width: auto}

.banner-section .input-group .custom-dropdown {width: 400px}

.banner-section .input-group .custom-search {width: 400px}

.events-page.pb-5 {background-color: var(--PTP-Dark);}

ul.events-menu {display: flex;padding: 20px 0 0}

ul.events-menu li {list-style: none; margin-right: 15px}

ul.events-menu li a{color: #fff;font-size: 16px; font-weight: 300;padding-bottom: 15px;transition:ease 0.3s;border-bottom: 2px solid var(--PTP-Dark); }

ul.events-menu li a.active {border-bottom: 2px solid var(--PTP-Red);}

ul.events-menu li a:hover {border-bottom: 2px solid var(--PTP-Red);}

.home-events.events-page.pb-5 {padding-top: 0}


/************** In the news page ********/

.page-template-page-in-the-news  .home-events .event-card {padding: 55px 20px;transition:ease 0.3s;}

.page-template-page-in-the-news a.news-wrap {
position: absolute;
    height: 100%;
    width: 100%;
    display: flex
;
    align-items: center;}

    .page-template-page-in-the-news .home-events .event-card:hover {background-color:#131c22 }




.page-template-page-in-the-news .event-content h5 {max-width: 90%}

/************** Careers page ********/

.careers-menu {background-color: var(--PTP-Dark);padding: 10px 0}

.value-card  p.career-circle {width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--PTP-Red);
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    display: flex
;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;}

    .value-card  p {font-size: 14px;font-weight: 300;text-align: left;}

    .value-card  {    background: linear-gradient(to bottom, #c8102e85 0%, rgba(0, 0, 0, 0) 20%);background-color: var(--PTP-Dark);
}

    .value-card h3 {text-align: left; font-size: 22px;font-weight: 500}

    .testimonial-block {background: linear-gradient(to left, #c8102e63 0%, rgba(0, 0, 0, 0) 20%);background-color: var(--PTP-Dark);}
#roles {background-color: var(--PTP-Dark);}
#roles h2{color: #fff;}
#roles h3{color: #fff;}
#roles  p{color: #fff; font-weight: 300}

#roles .role-card  .badge {background-color: transparent !important;
    border: 1px solid var(--PTP-Red);
    box-shadow: none;
    background-image: none;}

    #roles .role-card h5 {font-size: 18px;margin-top: 10px}
    #roles .role-card p {color: #ffffff70;
    font-weight: 300; }

    #roles .role-card {background-color: #101E26}

    #roles .job-meta {font-weight: 300}
/****** ******** Speakers page ********/
.speaker-info {position: absolute; bottom: 0;background: #ffffff30;
    backdrop-filter: blur(16px);border-top: 1px solid var(--PTP-Red);}

.speaker-info h2 {color: #fff;font-size: 24px;line-height: 24px}
.speaker-info p {color: #fff;margin: 0;font-size: 15px;
    font-weight: 300;}

.speaker-card img {width: 100%}

section.speakers {background-color: var(--PTP-Dark);}

.right-speak h2 {font-size:28px; color: #fff}

.right-speak p {color: #fff;font-weight: 300px}

.right-speak {display:flex;justify-content: center;flex-direction: column;}
.left-speak {display:flex;justify-content: center;flex-direction: column;}


/************** Meet the team ********/

section.team {background-color: var(--PTP-Dark);}
.team-img {height: 100%;object-fit: cover;border-right: 1px solid var(--PTP-Red);}

.team-row .col-sm-4 {padding: 0}

.team-row h3 {color: #fff;font-size: 18px;margin: 0}

.team-row .row {height: 100%;border:1px solid var(--PTP-Red);border-radius:6px }

.team-bio p {font-size: 15px; color: #fff;font-weight: 300;margin-bottom: 0}

.team-row p.text-muted {color: #fff!important;font-weight: 300}

.team-row  .col-md-6  { }

/************** Demo Videos ********/

.arrow-icon {padding:10px;position: absolute;top: 0;right: 0;background: #fff;}

.video-container .card-body {background: #fff;z-index: 9;    padding: 20px 0;}

.video-container .card {border: none;}

.video-container .card-body h5 a {color: #000;font-size: 18px;margin-top: 10px;display:block;}
.video-container .card-body h5 {margin-bottom: 0}
.video-container .card .badge {
border: 1px solid var(--PTP-Red);
    padding: 5px;
    border-radius: 5px;
    font-size: 11px;
    text-transform: uppercase;
    color: var(--PTP-Dark);
    font-weight: 400;}
 
    .video-container .card .card-img-top {height: 250px;
    object-fit: cover;
    width: 100%;object-position: top}

    .video-grid .image-overlay:hover {background: rgba(0, 0, 0, 0.6);}

/* Remove default Bootstrap card border */

.row.video-grid {--bs-gutter-x: 3.5rem;}
/* 1) Remove default Bootstrap card border so it doesn't cause double lines */
.video-grid .card {
  border: none !important;
  border-radius: 0 !important;
}

/* 2) Each column gets bottom & right borders 
      (no top or left border, so no double lines) */
.video-grid > .col-md-4 {
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd;
}

/* 3) Remove right border on every 3rd item (3, 6, 9...) */
.video-grid > .col-md-4:nth-child(3n) {
  border-right: none;
}

/* 4) Remove bottom border on the last row (the final 1-3 items) */
.video-grid > .col-md-4:nth-last-child(-n+3) {
  border-bottom: none;
}

/************** Single Video ********/

.single-video-header-container .embed-responsive {margin-bottom: 0; max-width: 100%}
.single-video-header-container{background-color: var(--PTP-Dark);}

.video-description a {color: var(--PTP-Red);}


.single-video-header-container iframe {max-width: 100%}

.single-video-header-container h1 {color: #fff;font-size: 38px;font-weight: 700}

.single-video-header-container .video-description  p{color: #fff;font-weight: 300}

.single-video-header-container span.badge {
border: 1px solid var(--PTP-Red);
    padding: 7px;
    border-radius: 5px;
    font-size: 13px;
    text-transform: uppercase;
    color: #ffffff;
    font-weight: 400;
    background: transparent;}

/************** Search ********/

.search-results  .card-footer {border: none;background-color: transparent;}

.search-results .card-img, .card-img-top{object-fit: cover;height: 250px; object-position: top}

.search-results  .card-footer a{display: flex;align-items: center;
   background-color: var(--PTP-Dark);
    color: var(--White);
    border: none;
    border-radius: 5px;
    overflow: hidden;
    padding: 0;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    text-align: left;
    transition: background-color 0.3s ease, color 0.3s ease;
    width: max-content;
    font-size: 15px;
    font-weight: 400;
    padding: 10px 15px;
   
    white-space: nowrap;}


    .service-first-row img {max-width: 100%}

     .post-template-default #articleContent a {color: var(--PTP-Red);}


/************** Buttons ********/

.header-button .button-container  {display: flex}
.header-button .button-container .search {background: none;
    border: none;
    box-shadow: none;margin-right: 10px}
.container.fullcont {position: relative;}

.header-button .button-container .card-body {border-radius: 0;border: none}
.header-button .button-container .card-body input {
max-width: 100%;
    width: 100%;
    background-color: #F1F2F0;
    border: 1px solid var(--PTP-Dark);
    border-radius: 8px;
    padding: 9px;
    margin-bottom: 15px;
    margin-top: 10px;}

    .button-container .collapse.show {position: absolute;
    top: 100%;
    z-index: 9999;
    width: 100%;
    margin-top: 26px !important;} 
    .header-button .button-container .search .fa-search {color:var(--PTP-Dark);font-size: 20px}
.button-container {
  display: inline-block;}
.rapid-breach-button {
  display: flex;
  align-items: center;
  background-color: var(--White);
  border: none;
  border-radius: 5px;
  overflow: hidden;
  padding: 0; /* Remove padding from the button */
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  text-align: left;
  transition: background-color 0.3s ease, color 0.3s ease;
  width: max-content;}

  .rapid-breach-button.dark {background-color: var(--PTP-Dark);color: var(--White);}
.button-text {
  padding: 10px 15px;font-size: 15px; font-weight: 400;
  color: var(--text-color);
  white-space: nowrap; /* Prevent wrapping */
}




#footer .rapid-breach-button,
#footer .rapid-breach-button .button-text {
  color: #000000 !important; /* Or your desired color */
  text-decoration: none !important;
}
.button-icon {
  background-color: var(--PTP-Red);
  color: var(--button-white);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
  height: 100%; /* Ensures the red side matches the button's height */
}
.rapid-breach-button:hover {
  background-color: var(--PTP-Red);
  color: var(--White);
}
.rapid-breach-button:hover .button-icon {
  background-color: var(--PTP-Red); /* Maintain icon background color */
}

.red-button  {background-color: var(--PTP-Red);
    color: #fff;
    border: none;
    width: 50%;
    padding: 9px;
    border-radius: 8px;background-image: none;box-shadow: none;}
    .red-button:hover {background-color: #c8102ec4;background-image: none;color: #fff}

.grey-button {background-color: #354149;
    color: #fff;
    border: 1px solid #ffffff50;
    width: 50%;
    padding: 9px;
    border-radius: 8px;background-image: none;box-shadow: none;}

    .grey-button:hover {background-color: #535c62; border: 1px solid #ffffff50;background-image: none;color: #fff}






@media (min-width: 768px) {
    .container, .container-md, .container-sm {}
    .sticky-footer-button {display: none;}

}

@media (max-width: 820px) {ul.main-nav {display: none;}





    .header-button .button-container .search {display: none;}
.navbar-brand {flex: 1}
.navbar-expand-md .navbar-toggler {display: block;}

.collapse.navbar-collapse {display: none!important}

header {position: fixed;width: 100%;z-index: 999999}
#main.container {padding-top: 100px}

#header {height: 100px;}

.top-head {display: none;}

#mobileMenu {
    padding: 25px 0;
    position: fixed;
    top: 75px;
    width: 100%;
    z-index: 9999;
    margin: 0;display: flex; height: 100vh /* full screen minus header */
}


#mobileMenu .menu-container {overflow-y: auto;
    flex: 1;
    padding: 20px 0;}

#mobileMenu.collapse:not(.show) {display: none;}

.banner-right-logo {display: none;}

}
@media (max-width: 820px) {
.col-lg-6.pl-10 {padding-left:calc(var(--bs-gutter-x)* 0.5);}
.single-service .banner-section.no-padding .banner-right-content {display: none;}

.single-service .banner-content  {width: 100%}


}

@media (max-width: 1120px) { footer.row .col.mb-3{width: 17%}
footer.row .col.mb-3.first-col{width: 30%}

 }

@media (max-width: 1050px) {
    .home-events .custom-dropdown {max-width: 35%}
        .home-events .custom-search {max-width: 35%}


    .header-button .rapid-breach-button {display: none;}
.security-form .form-wrapper {padding:0 5% ;
}

.banner-section .input-group .custom-search {max-width: 300px}
.banner-section .input-group .custom-dropdown  {max-width: 300px}


}



@media (max-width: 991px) {
.desktop {display: none!important;}
.full-width-banner h2 {color: #fff;
    padding-top: 40px;
    border-top: 1px solid #ffffffad; margin-top: 30px;
}
#service-grid {padding-top: 3rem!important}
}

@media (min-width: 992px) { .mobile {display: none!important}}


@media (max-width: 1024px) {.container.contact-form .row {display: block;--bs-gutter-x: 0;}

    .single-cont aside {display: none;}

    .left-blog {width: 100%!important}

    #greyBackground {width: 100%!important}

    .post-categories {margin-top: 15px}

    .home-events .event-card {flex-wrap: inherit; height: 100%; gap: 10px}



    .home-events .event-card {padding: 35px 15px;}

    .event-content h5 {font-size: 16px}

    .left-serv {width: 100%}
    .right-serv {width: 100%}

    .service-content {max-width: 100%; width: 100%;padding-right: calc(var(--bs-gutter-x) * 0.5);}
    .service-right-content {display: none;}

.container.contact-form .row .col-md-6:first-child {padding-right: 0;width: 100%}
.container.contact-form .row .col-md-6:last-child {
    padding-left: 0;
    padding-top: 5em;
    border-left: none;
    width: 100%;


}}
   
@media (max-width: 767px) {

    .vision-content .col-md-6.px-5 {padding-left: calc(var(--bs-gutter-x) * 0.5)!important;padding-right: calc(var(--bs-gutter-x) * 0.5)!important;}
.vision-content h2 {margin-top: 20px}
    .testimonial-block blockquote {margin-top: 25px}

    .page-template-page-careers .banner-section {padding-bottom: 0}

    section.team {background-color: var(--PTP-Dark);
padding-top: 0 !important;
padding-bottom: 0!important;
}

    .team-img {max-width: 50%;border: 1px solid var(--PTP-Red);height: auto!important;}

    .team-row .row {border: none}
    .team-row .col-sm-4 {
    padding-left: 1.5rem;
}

    .banner-section p {max-width: 100%}

.service-content {padding-right: 10px}

    .service-first-row .container:first-child {} 

    .service-first-row .container:nth-child(2) .row {flex-direction: column-reverse;padding-top: 0!important}



    .service-first-row .container h2 {margin-top: 20px}

    .intro-row {padding-bottom: 2rem!important;padding-top: 2rem!important}

     .intro-row #mobileCarousel {margin-top: 2rem}

.accreditations img {max-width: 50px}
    .page-template-page-events .form-wrapper {display: block;}

    .page-template-page-events .banner-section .input-group {max-width: 100%}

    .page-template-page-events .form-wrapper {width: 100%}

     .page-template-page-events .banner-section .input-group .custom-dropdown {width: 90%;max-width: 90%;margin-bottom: 20px}
 .page-template-page-events .banner-section .input-group .custom-search {width: 90%;max-width: 90%;margin-bottom: 20px}

 .page-template-page-events .custom-search input {padding-left: 15px}
         .page-template-page-events .banner-section .custom-search .search-icon {right: 0;left: auto;border-left: 1px solid rgba(255, 255, 255, 0.3);border-right: none}

        footer.row .col.mb-3.first-col { 
        width: 100%;
        display: flex
;
        flex-direction: column;
    }

            footer.row .col.mb-3.second-col {
        width: 100%;
        display: flex;margin-top: 20px;
;
    }

            footer.row .col.mb-3.third-col {
        width: 50%;
        margin-top: 20px;
;
    }
           footer.row .col.mb-3.fourth-col {
        width: 50%;
    margin-top: 20px;
;
    }
           footer.row .col.mb-3.fifth-col {
        width: 50%;
    margin-top: 20px;
;
    }
    .social-foot {display: none;}

    .sixth-col {display: block !important;
        width: 50% !important;
        margin-top: 20px;}
        .social-links.d-flex.soc-desk {display: none!important}

        .mobile-social {display: block!important;}

        .mobile-social li a {font-weight: 400;
        font-size: 14px;
        color: #ffffffcc;}
        .mobile-social li {margin-bottom: 20px;list-style: none!important}

        .button-container a {color:var(--PTP-Dark);}

        .container.contact-form .row .col-md-6:first-child {padding-right: 0}



    .legal-menu li {padding: 5px}

    footer.row .col.mb-3.second-col .office-details {display: flex;gap: 20px;width: 100%}

        footer.row .col.mb-3.second-col .office-details .office {width: 50%}

     footer.row .col.mb-3.second-col .office-details .office:last-child {margin-top: 0}
    .security-form .form-wrapper {display: block;}

    .security-form .custom-search {max-width: 100%;margin: 20px 0}

    .security-form  .custom-dropdown {max-width: 100%;}
    .security-form .custom-search .search-icon {right: 0;left: auto; border-right: none;    border-left: 1px solid rgb(0 0 0 / 23%);}

 .security-form  .custom-search input {padding-left: 15px}

  .security-form .form-wrapper [type="submit"] {width: 100%;display: block;}
.sticky-footer-button {
    position: fixed;
        bottom: 20px;
        right: 0;
        left: 0;
    z-index: 9999;
    transform: translateY(100px);width: 100%;padding: 0 10%;
    opacity: 0;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  }
  /* When the button is visible, slide it in */
  .sticky-footer-button.visible {
    transform: translateY(0);
    opacity: 1;
  }
.sticky-footer-button .rapid-breach-button.dark {text-align: center;width: 100%;}

.sticky-footer-button .rapid-breach-button.dark .button-text {width: 100%}
    .contact-form [type="submit"] {width: 100%}

    .form-cont {display: block;}

     .home-events .form-wrapper {display: block;}
     .home-events .custom-dropdown {max-width: 100%}
          .home-events .custom-search {        max-width: 100%;
        margin-bottom: 15px;
        margin-top: 15px;}

    .banner-right-content {display: none!important}

    .service-right-content {display: none;}

   .single-events .service-right-content {display: block;}

   .single-flex {flex-direction: column-reverse;}

   .single-events .service-right-content {padding-bottom: 0}
 
    .blogsearch h2 br {display: none}






     .icon-flex {
    text-align: left;
    display: flex
;gap: 10px;align-items: center;
}

 .full-width-banner {padding-top: 40px!important}

  .full-width-banner a {width: 100%}

  #service-grid .service-box {        border-top: 1px solid #ffffff14 !important;
        border-radius: 0;
        border-bottom: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;padding-left: 0!important}

        #service-grid .service-box:hover {border-color: #fff!important;}

        #service-grid .service-box p {max-width: 100%}

        .blogsearch .button-cont {flex-direction: column-reverse;}

        .blogsearch .button-cont .red-button {
    width: 100%;
    text-align: left;
}
.home-blog .post-thumbnail {display: none;} 

.home-blog .card {
    border: none;
    border-bottom: 1px solid #00000047;border-radius: 0}

    .home-blog .card .card-body {padding: 30px 0 20px;}

    .home-blog .col-md-4:last-child .card {border-bottom: none!important;}


}


@media (max-width: 991px) {.right.banner {padding-left: calc(var(--bs-gutter-x) * 0.5);}}

@media (min-width: 576px) {
    .container, .container-sm {
        /* max-width: 540px; */
        width: 100%;max-width: 1320px;
    }
}

#
# The following styles have been moved from inline to here by Steve @ PTP
# TEST
#

#searchCollapse {
	position: absolute;
	top: 100%;
	z-index: 9999;
	width: 100%;
	margin-top: 20px !important;
	left: 0;
}

.page-home-img-services {
	max-height: 44px;
}

.page-in-the-news-source {
	color:var(--PTP-Red);
	font-weight: 400
}

.position_absolute {
	position: absolute;
}



#greyBackground {
	position: absolute;
	top: 0;
	left: 0;
	width: 66.6666vw;
	background-color: #f8f9fa;
	z-index: 0;
}

.single-cont {
	max-width: 1320px;
	position: relative;
	z-index: 1;
}

.left-blog {
	width: 66.6666%;
} 

.scrollProgressWrapper1 {
	position: sticky;
	top: 0;
	z-index: 1000;
	height: 4px;
	background-color: transparent;
}

.scrollProgressWrapper2 {
	position: absolute;
	left: -34%;
	width: 134%;
	height: 10px;
	background-color: #e0e0e0;
}

.scrollProgress {
	height: 100%;
	position: relative;
	left: 0%;
	max-width: 80%;
	width: 0%;
	background-color: #03121B;
	transition: width 0.1s linear;
}


.blog-side-bar {
	width: 33.3333%;
}

.fixed_top {
	padding-top: 100px;
}

.fixed_bottom {
	padding-bottom: 100px;
}

/* SS 02-06-2025 - Moved from ptp-service-feature-list.php. Unverified as couldn't find where this template was being used in website */
.service_features_img {
	width: 18px;
	height: auto;
}

/* SS 02-06-2025 - Moved from ptp-service-feature-list.php. Unverified as couldn't find where this template was being used in website */
.service_features_noimg {
	color: #d00;
}

.about-us-links {
	color: #c8102e;
}

.homepage-blog-post-links {
	color: black;
}

.homepage-blog-post-links:hover {
	color: #c8102e;
}
