	/*!
Theme Name: Creative
Theme URI: https://creativeweb.agency/
Author: CreativeWeb
Author URI: https://creativeweb.agency/
Description: Bespoke WP Theme by CreativeWeb
Version: 12.12.25
Text Domain: creative
*/

/* Private Pages */

.post-password-form {
    height: 70vh;
    height: 70svh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.post-password-form > p {
    width: 100%;
    text-align: center;
    font-size: 115%;
}

.post-password-form label {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
}

.post-password-form input[type=password] {
    padding: 0.75rem 1.5rem;
    background: none;
    border: 1px solid #fff;
    border-radius: 0.3rem;
}

.post-password-form input[type=submit] {
    padding: 0.75rem 1.5rem;
    background: #fff;
    border: 1px solid #fff;
    border-radius: 0.3rem;
    color: #000;
    cursor: pointer;
    font-weight: 600;
    transition: 0.3s opacity;
    margin-top: 1.5rem;
}

.post-password-form input[type=submit]:hover {
    opacity: 0.7;
}

.img-bw img {
    filter: grayscale(100%);
}

.carousel-approach .group .icon {
    width: 15rem;
}

.carousel-approach .group .icon img:first-of-type {
    width: 7rem;    
    height: 7rem;
    object-fit: contain;
}

.contact-form .card {
    margin-block: 3rem;
    background-color: var(--color-white);
}

.gform_wrapper .gform-body input, .gform_wrapper .gform-body textarea, .gform_wrapper .gform-body select {
    background-color: var(--color-gray);
    font-family: var(--font-headings);
    border-color: var(--color-light);
}

.gform_wrapper .gform-body input:focus {
    border-color: var(--color-primary);
}

/* Pagination */
.pagination-numbers {
    display: flex;
    align-items: stretch;
}

.pagination-numbers a,
.pagination-numbers .current {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: var(--spacing-min);
    transition: all 0.3s ease;
    font-weight: 600;
}

.pagination-numbers .arrow {
    padding: 1rem;
    background-color: var(--color-primary);
}

.pagination-numbers .arrow svg {
    height: 2rem;
    width: 2rem;
    color: var(--color-gray);
}

@media (min-width: 600px) {
    .pagination-numbers .arrow {
        padding: 1.5rem;
    }
}

@media (min-width: 1600px) {
    .pagination-numbers .arrow {
        padding: 2.5rem;
    }
    .pagination-numbers .arrow svg {
        height: 3rem;
        width: 3rem;
    }
}

.pagination-numbers a:not(.arrow):hover {
    background-color: #F5F5F5;
    color: var(--color-dark);
}

.pagination-numbers .current {
    color: var(--color-primary);
}
.pagination-numbers .arrow:hover {
    opacity: 0.8;
}

/* ========================================================================
 * Panacea site refinements
 * Consolidated 2026-09-14 after verified WordPress backup.
 * Each named section can be rolled back independently by removing it.
 * ======================================================================== */

/* Panacea carousel icon spacing.
 * Rollback: remove this named section and its matching PHP field/render hooks.
 */
html body.home.page-id-10 section.carousel-services .swiper-slide > .group,
html body.page section.carousel-approach .swiper-slide > .group {
    padding-top: var(--panacea-icon-space-above, 32px) !important;
}

html body.home.page-id-10 section.carousel-services .swiper-slide > .group > .space-y-sm > figure,
html body.page section.carousel-approach .swiper-slide > .group > .space-y-sm > figure {
    margin-bottom: var(--panacea-icon-space-below, 40px) !important;
}

/* Panacea service-card spacing.
 * Rollback: remove this named section and its matching PHP field/render hooks.
 */
html body.page section.grid-services .grid > .group {
    padding-top: var(--panacea-icon-space-above, 32px) !important;
    padding-bottom: var(--panacea-space-below-discover, 32px) !important;
}

html body.page section.grid-services .grid > .group > .space-y-sm > figure {
    margin-bottom: var(--panacea-icon-space-below, 40px) !important;
}

html body.home.page-id-10 section.carousel-services .swiper-slide > .group {
    padding-bottom: var(--panacea-space-below-discover, 32px) !important;
}

/* Panacea Content Image Graphic layout controls.
 * Rollback: remove this named section and the matching PHP marker/render hooks.
 */
html body.page section.panacea-content-image-graphic {
    padding-top: var(--panacea-cig-section-top, 40px);
    padding-bottom: var(--panacea-cig-section-bottom, 48px);
}

html body.page section.panacea-content-image-graphic > .container > .row > figure {
    translate: 0 var(--panacea-cig-image-y, 0px) !important;
    scale: var(--panacea-cig-image-scale, 1) !important;
    transform-origin: top center;
}

@media (min-width: 768px) {
    html body.page section.panacea-content-image-graphic > .container {
        display: grid;
        grid-template-columns: repeat(16, minmax(0, 1fr));
        align-items: start;
    }

    html body.page section.panacea-content-image-graphic > .container > .title {
        grid-column: 6 / 16;
        grid-row: 1;
        width: auto !important;
        margin-left: 0 !important;
        margin-bottom: var(--panacea-cig-heading-gap, 24px);
        align-self: start;
    }

    html body.page section.panacea-content-image-graphic > .container > .row {
        display: contents !important;
    }

    html body.page section.panacea-content-image-graphic > .container > .row > figure {
        grid-column: 2 / 7;
        grid-row: 1 / span 2;
        width: 100% !important;
        margin: 0 !important;
        align-self: start;
    }

    html body.page section.panacea-content-image-graphic > .container > .row > .space-y-sm {
        grid-column: 9 / 16;
        grid-row: 2;
        width: auto !important;
        margin: 0 !important;
        align-self: start;
    }

    html body.page section.panacea-content-image-graphic > .container > .row > .space-y-sm > .content {
        margin-bottom: 0 !important;
    }
}

html body.page section.panacea-content-image-graphic > .container > .row > .space-y-sm > .button {
    margin-top: var(--panacea-cig-button-gap, 32px) !important;
}

/* Panacea home content cleanup.
 * Rollback: remove this named section.
 */
html body.home section.panacea-content-image-graphic > .container > .row > figure {
    transform: none !important;
}

html body.home section.panacea-content-image-graphic > .section-counter,
html body.home section.carousel-services > .section-counter {
    gap: 14px !important;
}

html body.home section.carousel-services > .container > .swiper {
    margin-top: 24px !important;
}

html body.home section.carousel-services > .container > .row.mt-xs.mb-md {
    display: none !important;
}

/* Panacea accreditation logo sizing.
 * Rollback: remove this named section and its matching PHP field/render hooks.
 */
@media (min-width: 640px) {
    html body section.logo-bar .row > .relative.flex.flex-1 > .relative:has(> img) img {
        scale: var(--panacea-logo-desktop-scale, 100%);
    }
}

@media (max-width: 639px) {
    html body section.logo-bar .row > .relative.flex.flex-1 {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    html body section.logo-bar .row > .relative.flex.flex-1 > .relative:has(> img) {
        min-height: 8rem;
        padding: 1.25rem;
        grid-column: auto !important;
    }

    html body section.logo-bar .row > .relative.flex.flex-1 > .relative:has(> img) img {
        scale: var(--panacea-logo-mobile-scale, 100%);
    }

    html body section.logo-bar .row > .relative.flex.flex-1 > .relative:has(> img):last-child:nth-child(odd) {
        grid-column: 1 / -1 !important;
    }
}

/* Panacea responsive layout refinements.
 * Rollback: remove this named section.
 */
@media (min-width: 640px) {
    html body.page-id-11 section.content-image > .container > .title,
    html body.page-id-1370 section.content-image > .container > .title {
        box-sizing: border-box;
        width: 56.25% !important;
        margin-right: 0 !important;
        margin-left: 37.5% !important;
        padding-left: 1rem;
    }
}

@media (max-width: 639px) {
    html body.home section.panacea-content-image-graphic > .container > .title h2,
    html body.home section.carousel-credentials > .container > .title h3 {
        font-size: clamp(30px, 7vw, 34px);
        line-height: 1.08;
        letter-spacing: -0.02em;
    }

    html body.home section.panacea-content-image-graphic > .container > .row {
        flex-direction: column !important;
    }

    html body.home section.panacea-content-image-graphic > .container > .row > figure {
        width: min(320px, calc(100vw - 48px)) !important;
        margin-top: var(--panacea-cig-image-y, 0px) !important;
        margin-right: auto !important;
        margin-left: auto !important;
        translate: none !important;
    }

    html body.home section.carousel-credentials .swiper-slide figure {
        width: min(320px, calc(100vw - 48px)) !important;
        margin-right: auto;
        margin-left: auto;
    }
}

/* Panacea refined technical guide lines.
 * Rollback: remove this named section to restore the theme defaults.
 */
:root {
    --panacea-rule-on-dark: rgba(255, 255, 255, 0.16);
    --panacea-rule-on-light: rgba(11, 12, 35, 0.18);
    --panacea-rule-accent-dark: rgba(255, 255, 255, 0.34);
    --panacea-rule-accent-light: rgba(11, 12, 35, 0.34);
}

body {
    --panacea-rule-color: var(--panacea-rule-on-dark);
}

body .white-section {
    --panacea-rule-color: var(--panacea-rule-on-light);
}

body header .line:not(.horizontal),
body nav .line:not(.horizontal),
body section:not(.hero) .line:not(.horizontal),
body footer .line:not(.horizontal) {
    background-image: linear-gradient(to bottom, var(--panacea-rule-color), var(--panacea-rule-color)) !important;
}

body header .line.horizontal,
body nav .line.horizontal,
body section:not(.hero) .line.horizontal,
body footer .line.horizontal {
    background-image: linear-gradient(to right, var(--panacea-rule-color), var(--panacea-rule-color)) !important;
}

body .section-counter::after {
    background-image: repeating-linear-gradient(
        to right,
        var(--panacea-rule-accent-dark) 0 6px,
        transparent 6px 12px
    ) !important;
    background-size: 100% 1px !important;
    background-repeat: no-repeat !important;
}

body .white-section .section-counter::after {
    background-image: repeating-linear-gradient(
        to right,
        var(--panacea-rule-accent-light) 0 6px,
        transparent 6px 12px
    ) !important;
}

body section.carousel-services .swiper-slide::before,
body section.carousel-services .swiper-slide::after,
body section.carousel-credentials .swiper-slide::before,
body section.carousel-credentials .swiper-slide::after {
    background-image: linear-gradient(to bottom, var(--panacea-rule-color), var(--panacea-rule-color)) !important;
}

body footer nav a::before {
    background-image: none !important;
}

body footer nav a::after {
    background-image: linear-gradient(to right, var(--panacea-rule-on-dark), var(--panacea-rule-on-dark)) !important;
}

@media (max-width: 639px) {
    body nav.fixed .line:not(.horizontal),
    body section:not(.hero) .line:not(.horizontal),
    body footer .line:not(.horizontal) {
        opacity: 0 !important;
    }

    body .section-counter::after {
        background-size: 100% 1px !important;
    }
}

/* Panacea layout integrity repairs.
 * Rollback: remove this named section and the matching PHP render filter.
 */
main > .hero > .line.horizontal.absolute.bottom-0,
body .logo-bar::before {
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.16)) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 1px !important;
}

@media (min-width: 1280px) {
    body.services section.grid-services > .container > .row > .w-full:first-child h2 {
        white-space: nowrap;
    }
}

body.about section.carousel-approach:not(:has(.swiper-slide)) {
    display: none !important;
}


/* Panacea homepage engineering heading size.
 * Rollback: remove this named section.
 */
@media (min-width: 1280px) {
    html body.home main > section.panacea-content-image-graphic > .container > .title h2 {
        font-size: clamp(5rem, 5.5vw, 7rem) !important;
        line-height: 1.04 !important;
    }
}


/* Panacea quote heading font alignment.
  * Rollback: remove this named section.
  */
.pn-quote-options > h2 {
	    font-family: var(--font-headings) !important;
}

/* ========================================================================
 * Panacea relocated WordPress Additional CSS.
 * Moved unchanged on 2026-09-15 after verified WordPress backup.
 * Rollback: restore the Additional CSS backup and remove this named section.
 * ======================================================================== */

.page-id-1370 .logo-bar .relative.flex > .relative  {
  padding: 1.5rem 0.75rem;
  min-height: 16rem;
}

.page-id-1370 .logo-bar img {
  width: 14rem;
  height: 14rem;
  max-width: 100%;
  object-fit: contain;
}

.page-id-1370 .logo-bar .relative:has(img[src*="e78408ac"]) {
  order: 1;
}

.page-id-1370 .logo-bar .relative:has(img[src*="extreme-services-delivery-partner"]) {
  order: 2;
}

.page-id-1370 .logo-bar .relative:has(img[src*="FY25-Badges_Excellence-Partner_SNF"]) {
  order: 3;
}

.page-id-1370 .logo-bar .relative:has(img[src*="FY25-Badges_Excellence-Partner_SSHW"]) {
  order: 4;
}

.page-id-1370 .logo-bar .relative:has(img[src*="42ab14ba"]) {
  order: 5;
}

.page-id-1370 .logo-bar img[src*="extreme-services-delivery-partner"] {
  transform: scale(1.05);
}

.page-id-1370 .logo-bar img[src*="42ab14ba"] {
  width: 16rem;
  height: 14rem;
}

@media (max-width: 639px) {
  .page-id-1370 .logo-bar .row > .relative.flex.flex-1 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .page-id-1370 .logo-bar .row > .relative.flex.flex-1 > .relative {
    min-height: 10rem;
    padding: 1.25rem;
  }

  .page-id-1370 .logo-bar .row > .relative.flex.flex-1 > .relative:nth-child(5) {
    grid-column: 1 / -1;
  }

  .page-id-1370 .logo-bar img {
    width: 8rem;
    height: 8rem;
  }

  .page-id-1370 .logo-bar img[src*="42ab14ba"] {
    width: 10rem;
    height: 8rem;
  }
}


/* Homepage case-study featured images */
body.home a.card[href*="connecting-a-cause"],
body.home a.card[href*="panacea-replaces-public-health-englands"] {
  gap: 2rem;
}

body.home a.card[href*="connecting-a-cause"] .title,
body.home a.card[href*="panacea-replaces-public-health-englands"] .title {
  width: 100%;
}

body.home a.card[href*="connecting-a-cause"] .title h3,
body.home a.card[href*="panacea-replaces-public-health-englands"] .title h3 {
  width: 75%;
}

body.home a.card[href*="connecting-a-cause"] .title::after,
body.home a.card[href*="panacea-replaces-public-health-englands"] .title::after {
  content: "";
  display: block;
  width: 100%;
  height: clamp(14rem, 12vw, 20rem);
  margin-top: 2rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

body.home a.card[href*="connecting-a-cause"] .title::after {
  background-image: url("https://panacea-networking.co.uk/wp-content/uploads/2026/02/2a3cbce5da1679329a6badae8b70941cc4c5ae3e.jpg");
}

body.home a.card[href*="panacea-replaces-public-health-englands"] .title::after {
  background-image: url("https://panacea-networking.co.uk/wp-content/uploads/2026/02/54232c5661d8980bb47cadff83ae3f0fccb32c39.jpg");
}

@media (max-width: 1023px) {
  body.home a.card[href*="connecting-a-cause"] .title h3,
  body.home a.card[href*="panacea-replaces-public-health-englands"] .title h3 {
    width: 100%;
  }
}

.home .hero .parallax figure.cutout {
  background: transparent !important;
}

.home .hero .parallax figure.cutout::before,
.home .hero .parallax figure.cutout > .bg {
  display: none !important;
}


@media (min-width: 1024px) {
  body.home .hero .parallax {
    width: min(55vw, 60rem) !important;
  }
}


/* Keep the homepage engineering introduction within a desktop viewport. */
@media (min-width: 1280px) {
  body.home main > section.content-image .container {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  body.home main > section.content-image .title h2 {
    font-size: clamp(4rem, 4.4vw, 5.25rem) !important;
    line-height: 1.05 !important;
  }

  body.home main > section.content-image .row {
    align-items: center !important;
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  body.home main > section.content-image figure.cutout {
    width: min(26vw, 28rem) !important;
  }

  body.home main > section.content-image .row > div:last-child {
    margin-top: 0 !important;
  }

  body.home main > section.content-image .row > div:last-child > * + * {
    margin-top: 2rem !important;
  }
}


/* Keep the remaining homepage sections compact on wide screens. */
@media (min-width: 1280px) {
  body.home section.carousel-services {
    margin-bottom: 4rem !important;
  }

  body.home section.carousel-services .section-counter,
  body.home section.carousel-credentials .section-counter {
    margin-top: 2.5rem !important;
  }

  body.home section.carousel-services .row {
    margin-top: 2.5rem !important;
    margin-bottom: 3rem !important;
  }

  body.home section.carousel-services .title h2,
  body.home section.carousel-credentials .title h3 {
    font-size: clamp(4rem, 4.4vw, 5.25rem) !important;
    line-height: 1.05 !important;
  }

  body.home section.carousel-credentials {
    margin-bottom: 4rem !important;
  }

  body.home section.carousel-credentials .title {
    margin-top: 3rem !important;
    margin-bottom: 2.5rem !important;
  }

  body.home section.carousel-credentials .content {
    margin-top: 3rem !important;
  }

  body.home section.cta-big .row {
    align-items: center !important;
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  body.home section.cta-big .title h2 {
    font-size: clamp(4.5rem, 5vw, 6rem) !important;
    line-height: 0.98 !important;
  }

  body.home section.cta-big .btn-bar {
    padding-top: 1.75rem !important;
    padding-bottom: 1.75rem !important;
  }

  body.home section.cta-big > .container:nth-of-type(2) .content {
    padding-top: 1.75rem !important;
    padding-bottom: 1.75rem !important;
  }
}


/* Restore balanced breathing room after the compact desktop pass. */
@media (min-width: 1280px) {
  body.home section.carousel-services {
    margin-bottom: 5rem !important;
  }

  body.home section.carousel-services .row {
    margin-top: 4rem !important;
    margin-bottom: 4.5rem !important;
  }

  body.home section.carousel-services .title h2,
  body.home section.carousel-credentials .title h3 {
    font-size: clamp(5rem, 5.5vw, 7rem) !important;
    line-height: 1.04 !important;
  }

  body.home section.carousel-credentials {
    margin-bottom: 5rem !important;
  }

  body.home section.carousel-credentials .title {
    margin-top: 4rem !important;
    margin-bottom: 3.5rem !important;
  }

  body.home section.carousel-credentials .content {
    margin-top: 4rem !important;
  }

  body.home section.cta-big .row {
    min-height: 34rem !important;
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important;
  }

  body.home section.cta-big .title h2 {
    font-size: clamp(6rem, 6.5vw, 8.5rem) !important;
    line-height: 1 !important;
  }

  body.home section.cta-big .btn-bar {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }

  body.home section.cta-big > .container:nth-of-type(2) .content {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }
}


/* Restore the homepage contact panel to the shared site-wide CTA proportions. */
@media (min-width: 1280px) {
  body.home section.cta-big .row {
    min-height: initial !important;
    align-items: flex-end !important;
    padding-top: 10rem !important;
    padding-bottom: 10rem !important;
  }

  body.home section.cta-big .title h2 {
    font-size: inherit !important;
    line-height: inherit !important;
  }

  body.home section.cta-big .btn-bar {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }

  body.home section.cta-big > .container:nth-of-type(2) .content {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
}


/* Increase the homepage hero artwork without changing its centred position. */
@media (min-width: 1280px) {
  body.home section.hero .parallax {
    width: 40% !important;
  }
}


/* Services page: separate the service grid from the accreditation strip */
.page-id-12 .grid-services {
  margin-bottom: 2rem;
}

/* Services page: give the accreditation strip a complete full-width top rule */
@media (min-width: 640px) {
  .page-id-12 .logo-bar {
    position: relative;
  }

  .page-id-12 .logo-bar::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 1px;
    background-image: repeating-linear-gradient(to right, rgba(255, 255, 255, 0.48) 0 6px, transparent 6px 12px);
    z-index: 10;
    pointer-events: none;
  }
}

/* Services page: make the accreditation marks slightly more prominent */
@media (min-width: 640px) {
  .page-id-12 .logo-bar img {
    transform: scale(1.15);
  }
}


/* Services page: keep accreditation marks in their original colours */
.page-id-12 .logo-bar img {
  filter: none !important;
}

/* Homepage: match the approved accreditation badge treatment */
@media (min-width: 640px) {
  .home .logo-bar img {
    transform: scale(1.15);
  }
}


/* Homepage: tighten the design-to-operation section */
@media (min-width: 1024px) {
  html body.home.page-id-10 section.content-image > .container.py-sm {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  html body.home.page-id-10 section.content-image > .container.py-sm > .row.w-full.py-sm {
    align-items: center;
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  html body.home.page-id-10 section.content-image .row figure.cutout {
    width: 30rem !important;
    transform: translateY(-8.4rem);
  }

  html body.home.page-id-10 section.content-image .row > div:last-child {
    margin-top: 0 !important;
  }
}

/* Homepage: tighten the service-card section */
@media (min-width: 1024px) {
  html body.home.page-id-10 section.carousel-services .swiper-slide > a {
    padding-top: 1.875rem !important;
    padding-bottom: 1.875rem !important;
  }

  html body.home.page-id-10 section.carousel-services .swiper-slide > a > .space-y-sm > figure {
    margin-bottom: 2.5rem !important;
  }
}

/* Accreditation logos: black and white until hovered */
html body.home.page-id-10 .logo-bar img,
html body.page-id-11 .logo-bar img {
  filter: saturate(0%) !important;
  transition: filter 0.25s ease;
}

@media (hover: hover) {
  html body.home.page-id-10 .logo-bar img:hover,
  html body.page-id-11 .logo-bar img:hover {
    filter: saturate(100%) !important;
  }
}

/* About accreditations: match homepage badge size */
@media (min-width: 640px) {
  html body.page-id-11 .logo-bar img {
    transform: scale(1.15);
  }
}


/* About case-study cards: restore featured imagery */
html body.page-id-11 section.featured-case-studies .grid > a.card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0.42;
  transform: scale(1.02);
}
html body.page-id-11 section.featured-case-studies .grid > a.card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(7,9,29,0.20) 0%, rgba(7,9,29,0.48) 42%, rgba(7,9,29,0.96) 78%);
}
html body.page-id-11 section.featured-case-studies .grid > a.card:first-of-type::before {
  background-image: url("https://panacea-networking.co.uk/wp-content/uploads/2026/02/2a3cbce5da1679329a6badae8b70941cc4c5ae3e.jpg");
}
html body.page-id-11 section.featured-case-studies .grid > a.card:last-of-type::before {
  background-image: url("https://panacea-networking.co.uk/wp-content/uploads/2026/02/54232c5661d8980bb47cadff83ae3f0fccb32c39.jpg");
}
html body.page-id-11 section.featured-case-studies .grid > a.card > .title,
html body.page-id-11 section.featured-case-studies .grid > a.card > .relative.z-20 {
  position: relative;
  z-index: 20;
}


/* Services accreditations: match monochrome hover behaviour */
html body.page-id-12 .logo-bar img {
  filter: saturate(0%) !important;
  transition: filter 0.25s ease;
}
@media (hover: hover) {
  html body.page-id-12 .logo-bar img:hover {
    filter: saturate(100%) !important;
  }
}
@media (min-width: 640px) {
  html body.page-id-12 .logo-bar img {
    transform: scale(1.15);
  }
}

/* Industries case-study cards: restore featured imagery */
html body.page-id-14 section.featured-case-studies .grid > a.card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0.42;
  transform: scale(1.02);
}
html body.page-id-14 section.featured-case-studies .grid > a.card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(7,9,29,0.20) 0%, rgba(7,9,29,0.48) 42%, rgba(7,9,29,0.96) 78%);
}
html body.page-id-14 section.featured-case-studies .grid > a.card:first-of-type::before {
  background-image: url("https://panacea-networking.co.uk/wp-content/uploads/2026/02/e53073492a82daf5892c6f4ad7aa228ffc4c33c6.jpg");
}
html body.page-id-14 section.featured-case-studies .grid > a.card:last-of-type::before {
  background-image: url("https://panacea-networking.co.uk/wp-content/uploads/2026/02/54232c5661d8980bb47cadff83ae3f0fccb32c39.jpg");
}
html body.page-id-14 section.featured-case-studies .grid > a.card > .title,
html body.page-id-14 section.featured-case-studies .grid > a.card > .relative.z-20 {
  position: relative;
  z-index: 20;
}

/* News page: balanced editorial hierarchy for More from Panacea */
body.blog .pn-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
}
body.blog .pn-grid .pn-story {
  position: relative;
  grid-column: span 3;
  min-height: 255px;
  overflow: hidden;
  transition: background-color .25s ease, border-color .25s ease;
}
body.blog .pn-grid .pn-story:hover {
  background-color: #0c0f2b;
  border-color: rgba(255,123,53,.62);
}
body.blog .pn-grid .pn-story > * {
  position: relative;
  z-index: 1;
}
body.blog .pn-grid .pn-story > a {
  position: absolute;
  z-index: 1;
}

/* One clear lead story */
body.blog .pn-grid .pn-story:nth-child(1) {
  grid-column: 1 / -1;
  min-height: 360px;
  padding: 48px 44px 72px calc(42% + 44px);
}
body.blog .pn-grid .pn-story:nth-child(1)::before {
  content: "";
  position: absolute;
  inset: 0 58% 0 0;
  background: linear-gradient(90deg, rgba(7,9,31,.08), rgba(7,9,31,.2)), url("https://panacea-networking.co.uk/wp-content/uploads/2026/09/subnet-calculator.png") center / cover no-repeat;
  opacity: .98;
  transition: transform .35s ease, opacity .35s ease;
}
body.blog .pn-grid .pn-story:nth-child(1) h3 {
  max-width: 760px;
  margin-top: 42px;
  font-size: clamp(2rem, 3vw, 3rem) !important;
  line-height: 1.08 !important;
}

/* Three matching image-led stories */
body.blog .pn-grid .pn-story:nth-child(n+2):nth-child(-n+4) {
  grid-column: span 4;
  min-height: 410px;
  padding-top: 218px;
}
body.blog .pn-grid .pn-story:nth-child(n+2):nth-child(-n+4)::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 184px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: .94;
  transition: transform .35s ease, opacity .35s ease;
}
body.blog .pn-grid .pn-story:nth-child(2)::before {
  background-image: linear-gradient(0deg,rgba(7,9,31,.2),transparent 55%),url("https://panacea-networking.co.uk/wp-content/uploads/2026/09/kevin-potter-1024x1024.jpg");
  background-position: center 24%;
}
body.blog .pn-grid .pn-story:nth-child(3)::before {
  background-image: linear-gradient(0deg,rgba(7,9,31,.2),transparent 55%),url("https://panacea-networking.co.uk/wp-content/uploads/2026/09/callum-horwood-1024x1024.jpg");
  background-position: center 20%;
}
body.blog .pn-grid .pn-story:nth-child(4)::before {
  background-image: linear-gradient(0deg,rgba(7,9,31,.16),transparent 55%),url("https://panacea-networking.co.uk/wp-content/uploads/2026/09/partner-year.png");
}
body.blog .pn-grid .pn-story:nth-child(-n+4):hover::before {
  transform: scale(1.025);
  opacity: 1;
}

/* Eight consistent compact stories: two complete rows of four */
body.blog .pn-grid .pn-story:nth-child(n+5) {
  grid-column: span 3;
  min-height: 255px;
  padding: 32px 28px 68px;
}
body.blog .pn-grid .pn-story:nth-child(n+5)::before {
  content: none;
}
body.blog .pn-grid .pn-story:nth-child(n+5) h3 {
  font-size: clamp(1.3rem, 1.55vw, 1.65rem) !important;
  line-height: 1.15 !important;
}

@media (max-width: 1100px) {
  body.blog .pn-grid {
    grid-template-columns: 1fr;
  }
  body.blog .pn-grid .pn-story,
  body.blog .pn-grid .pn-story:nth-child(1),
  body.blog .pn-grid .pn-story:nth-child(n+2):nth-child(-n+4),
  body.blog .pn-grid .pn-story:nth-child(n+5) {
    grid-column: 1;
  }
  body.blog .pn-grid .pn-story:nth-child(1) {
    min-height: 500px;
    padding: 286px 28px 70px;
  }
  body.blog .pn-grid .pn-story:nth-child(1)::before {
    inset: 0 0 auto;
    height: 250px;
  }
  body.blog .pn-grid .pn-story:nth-child(1) h3 {
    margin-top: 0;
  }
  body.blog .pn-grid .pn-story:nth-child(n+2):nth-child(-n+4) {
    min-height: 405px;
    padding-top: 218px;
  }
  body.blog .pn-grid .pn-story:nth-child(n+5) {
    min-height: 230px;
    padding: 28px 24px 64px;
  }
}
@media (max-width: 600px) {
  body.blog .pn-grid .pn-story:nth-child(1) {
    min-height: 465px;
    padding-top: 242px;
  }
  body.blog .pn-grid .pn-story:nth-child(1)::before {
    height: 210px;
  }
}

/* News page: light editorial panel */
body.blog .pn-more {
  margin: 74px -28px 0;
  padding: 46px 40px 30px;
  background: #f7f7f5;
  border-radius: 18px 18px 0 0;
  color: #090b24;
}
body.blog .pn-more h2 {
  color: #090b24;
}
body.blog .pn-more p {
  color: #515565;
}
body.blog .pn-grid {
  margin: 0 -28px;
  padding: 0 40px 48px;
  background: #f7f7f5;
  border-radius: 0 0 18px 18px;
}
body.blog .pn-grid .pn-story {
  background-color: #ededeb;
  border-color: #c9cbd0;
  color: #090b24;
}
body.blog .pn-grid .pn-story:hover {
  background-color: #e5e6e4;
  border-color: #ff7b35;
}
body.blog .pn-grid .pn-story h3 {
  color: #090b24;
}
body.blog .pn-grid .pn-story p {
  color: #515565;
}
body.blog .pn-grid .pn-story .pn-label,
body.blog .pn-grid .pn-story > span:first-child,
body.blog .pn-grid .pn-story > a {
  color: #e85f22;
}
@media (max-width: 1100px) {
  body.blog .pn-more {
    margin: 54px -18px 0;
    padding: 36px 24px 24px;
  }
  body.blog .pn-grid {
    margin: 0 -18px;
    padding: 0 24px 36px;
  }
}
@media (max-width: 600px) {
  body.blog .pn-more {
    margin-left: -10px;
    margin-right: -10px;
    padding: 30px 18px 22px;
    border-radius: 12px 12px 0 0;
  }
  body.blog .pn-grid {
    margin-left: -10px;
    margin-right: -10px;
    padding: 0 18px 28px;
    border-radius: 0 0 12px 12px;
  }
}

/* News lead CTA alignment */
body.blog .pn-grid .pn-story:nth-child(1) > a {
  left: calc(42% + 44px);
}
@media (max-width: 1100px) {
  body.blog .pn-grid .pn-story:nth-child(1) > a {
    left: 28px;
  }
}

/* About page: human-first team cards */
.page-id-11 .grid-team {
  background: #f7f7f5;
}
.page-id-11 .grid-team .container > .grid {
  gap: 24px;
}
.page-id-11 .grid-team .title-card {
  min-height: 620px;
  padding: 42px;
  display: flex;
  align-items: flex-end;
  background: linear-gradient(145deg, #0a0c29 0%, #292039 58%, #b84b22 100%);
  border: 1px solid rgba(9,11,36,.18);
  border-radius: 12px;
  overflow: hidden;
}
.page-id-11 .grid-team .title-card h2 {
  color: #fff;
  font-size: clamp(3rem, 5vw, 5.5rem);
  line-height: .92;
  text-align: left;
}
.page-id-11 .grid-team article.card {
  min-height: 620px;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 0 !important;
  background: #fff;
  border: 1px solid #d2d3d6;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 26px rgba(9,11,36,.05);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.page-id-11 .grid-team article.card:hover {
  transform: translateY(-5px);
  border-color: #ef6b2d;
  box-shadow: 0 16px 38px rgba(9,11,36,.12);
}
.page-id-11 .grid-team article.card > .icon {
  display: none;
}
.page-id-11 .grid-team article.card > figure.bg {
  order: -1;
  position: relative !important;
  inset: auto !important;
  width: 100%;
  height: 360px !important;
  min-height: 360px;
  padding: 0 !important;
  overflow: hidden;
  background: #e9e9e6;
  filter: none !important;
  transform: none !important;
}
.page-id-11 .grid-team article.card > figure.bg > img:first-child {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 18%;
  filter: none !important;
  transform: scale(1) !important;
  opacity: 1 !important;
  transition: transform .45s ease;
}
.page-id-11 .grid-team article.card:hover > figure.bg > img:first-child {
  filter: none !important;
  transform: scale(1.025) !important;
}
.page-id-11 .grid-team article.card > figure.bg > .bg,
.page-id-11 .grid-team article.card > figure.bg > img:not(:first-child) {
  display: none !important;
}
.page-id-11 .grid-team article.card > .inner {
  order: 1;
  flex: 1;
  width: 100%;
  padding: 26px 28px 30px;
  color: #090b24;
  background: #fff;
  transform: none !important;
}
.page-id-11 .grid-team article.card > .inner .title {
  color: #090b24;
  font-size: clamp(1.65rem, 2.1vw, 2.25rem);
  line-height: 1.05;
}
.page-id-11 .grid-team article.card > .inner .role {
  margin-top: 10px;
  color: #df5d25;
  font-size: .78rem;
  line-height: 1.25;
  letter-spacing: .09em;
}
.page-id-11 .grid-team article.card > .inner .content {
  width: 100%;
  padding-top: 18px;
  color: #505464;
  font-size: .98rem;
  line-height: 1.45;
  opacity: 1;
}
@media (max-width: 1023px) {
  .page-id-11 .grid-team .title-card,
  .page-id-11 .grid-team article.card {
    min-height: 580px;
  }
  .page-id-11 .grid-team article.card > figure.bg {
    height: 330px !important;
    min-height: 330px;
  }
}
@media (max-width: 639px) {
  .page-id-11 .grid-team .container > .grid {
    gap: 18px;
  }
  .page-id-11 .grid-team .title-card {
    min-height: 260px;
    padding: 30px;
    order: -1;
  }
  .page-id-11 .grid-team article.card {
    min-height: 0;
  }
  .page-id-11 .grid-team article.card > figure.bg {
    height: 350px !important;
    min-height: 350px;
  }
}
/* Keep team section heading crisp */
.page-id-11 .grid-team .title-card h2 {
  filter: none !important;
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

.page-id-11 .grid-team .title-card,
.page-id-11 .grid-team .title-card * {
  filter: none !important;
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}
/* About page: show more of each team portrait */
@media (min-width: 1024px) {
  .page-id-11 .grid-team .title-card,
  .page-id-11 .grid-team article.card {
    min-height: 690px;
  }
  .page-id-11 .grid-team article.card > figure.bg {
    height: 430px !important;
    min-height: 430px;
  }
}
@media (min-width: 640px) and (max-width: 1023px) {
  .page-id-11 .grid-team .title-card,
  .page-id-11 .grid-team article.card {
    min-height: 640px;
  }
  .page-id-11 .grid-team article.card > figure.bg {
    height: 390px !important;
    min-height: 390px;
  }
}

/* About page: readable team typography using the site type system */
.page-id-11 .grid-team article.card > .inner {
  padding: 30px 30px 34px;
}
.page-id-11 .grid-team article.card > .inner .title {
  font-size: clamp(28px, 2vw, 34px);
  line-height: 1.08;
}
.page-id-11 .grid-team article.card > .inner .role {
  margin-top: 9px;
  font-size: clamp(11px, .72vw, 13px);
  line-height: 1.3;
  letter-spacing: .08em;
}
.page-id-11 .grid-team article.card > .inner .content,
.page-id-11 .grid-team article.card > .inner .content p {
  font-size: clamp(16px, 1vw, 18px) !important;
  line-height: 1.5 !important;
}

/* About page: recognisable network-fabric image */
.page-id-11 .content-image figure.cutout > img.attachment-large {
  content: url("https://panacea-networking.co.uk/wp-content/uploads/2026/09/network-fabric-photo-v1.png");
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 42%;
}

/* About page: neutralise the inherited orange colour treatment */
.page-id-11 .content-image figure.cutout.img-bw > img.attachment-large {
  filter: saturate(.38) hue-rotate(165deg) brightness(.92) contrast(1.04) !important;
}

/* About page: display the source image colours exactly */
.page-id-11 .content-image figure.cutout.img-bw > img.attachment-large {
  filter: none !important;
}

/* About page: preserve the complete source image and its proportions */
.page-id-11 .content-image figure.cutout.img-bw {
  background: #0b0c23;
}
.page-id-11 .content-image figure.cutout.img-bw > img.attachment-large {
  object-fit: contain !important;
  object-position: center top !important;
  filter: none !important;
}

/* About page: bypass theme image processing and render the source asset directly */
.page-id-11 .content-image figure.cutout.img-bw {
  background-color: #0b0c23 !important;
  background-image: url("https://panacea-networking.co.uk/wp-content/uploads/2026/09/network-fabric-photo-v1.png") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-position: center top !important;
}
.page-id-11 .content-image figure.cutout.img-bw > img.attachment-large {
  visibility: hidden !important;
}


/* About page: remove the theme overlay from the network photograph */
.page-id-11 .content-image figure.cutout.img-bw > .bg.bg-bright.mix-blend-overlay {
  display: none !important;
}


/* About page: match transparent team portraits to the studio background */
.page-id-11 .grid-team article.card:nth-of-type(n+9) figure.bg {
  background-color: #454545 !important;
}


/* About page: add natural depth behind transparent team portraits */
.page-id-11 .grid-team article.card:nth-of-type(n+9) figure.bg > img {
  filter: drop-shadow(0 8px 10px rgba(0, 0, 0, .28)) drop-shadow(0 2px 3px rgba(0, 0, 0, .18)) !important;
}


/* About page: match Martin and Thelma to the transparent portrait treatment */
.page-id-11 .grid-team article.card:nth-of-type(-n+2) figure.bg {
  background-color: #454545 !important;
}
.page-id-11 .grid-team article.card:nth-of-type(-n+2) figure.bg > img {
  filter: drop-shadow(0 8px 10px rgba(0, 0, 0, .28)) drop-shadow(0 2px 3px rgba(0, 0, 0, .18)) !important;
}


/* About page: consistent portrait headroom, using Kevin as the reference */
.page-id-11 .grid-team article.card figure.bg {
  background-color: #454545 !important;
}
.page-id-11 .grid-team article.card:not(:nth-of-type(4)) figure.bg > img {
  object-position: center top !important;
}
.page-id-11 .grid-team article.card:nth-of-type(1) figure.bg > img,
.page-id-11 .grid-team article.card:nth-of-type(2) figure.bg > img {
  transform: scale(.88) !important;
  transform-origin: center bottom !important;
}
.page-id-11 .grid-team article.card:nth-of-type(9) figure.bg > img,
.page-id-11 .grid-team article.card:nth-of-type(10) figure.bg > img,
.page-id-11 .grid-team article.card:nth-of-type(11) figure.bg > img {
  transform: scale(.90) !important;
  transform-origin: center bottom !important;
}

/* Homepage specialist engineering image: respect the Orange Mask toggle */
.page-id-10 section.content-image figure.cutout > img {
  object-fit: cover !important;
  object-position: center center !important;
}
.page-id-10 section.content-image figure.cutout:not(.img-bw) > img {
  filter: none !important;
}
.page-id-10 section.content-image figure.cutout.img-bw > img {
  filter: grayscale(100%) !important;
}
.page-id-10 section.content-image figure.cutout.img-bw > .bg.bg-bright.mix-blend-overlay {
  display: block !important;
  opacity: .8 !important;
  visibility: visible !important;
}

/* Hero Subpage: optional responsive image ratio */
@media (min-width: 1024px) {
  section.hero.hero-subpage.hero-responsive-image {
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 9;
    overflow: hidden;
  }

  section.hero.hero-subpage.hero-responsive-image > figure {
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    translate: none !important;
  }

  section.hero.hero-subpage.hero-responsive-image > figure > img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
    translate: none !important;
  }
}


/* Team title card: Panacea dots treatment */
.grid-team .title-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: #090b24 !important;
  border-color: rgba(255, 255, 255, 0.12);
}

.grid-team .title-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: url("https://panacea-networking.co.uk/wp-content/themes/creative/build/img/dots-team.svg") center top / cover no-repeat;
  opacity: 0.24;
  mix-blend-mode: soft-light;
  pointer-events: none;
}

.grid-team .title-card::after {
  content: "";
  position: absolute;
  right: -18%;
  bottom: -30%;
  z-index: 0;
  width: 85%;
  height: 70%;
  background: radial-gradient(circle at 70% 75%, rgba(229, 88, 26, 0.45) 0%, rgba(229, 88, 26, 0.16) 36%, rgba(229, 88, 26, 0) 72%);
  pointer-events: none;
}

.grid-team .title-card > * {
  position: relative;
  z-index: 1;
}

/* Team title card: use the site's standard dotted oval */
.grid-team .title-card::before {
  background-image: url("https://panacea-networking.co.uk/wp-content/themes/creative/build/img/dots.svg");
  background-position: center 44%;
  background-size: 110% auto;
  background-repeat: no-repeat;
  opacity: 0.32;
  mix-blend-mode: normal;
}




/* Homepage accreditation strip top rule.
 * Rollback: remove this named section.
 */
@media (min-width: 640px) {
  html body.home.page-id-10 section.carousel-credentials + section.logo-bar::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 1px;
    background-image: repeating-linear-gradient(to right, rgba(255, 255, 255, 0.48) 0 6px, transparent 6px 12px);
    z-index: 10;
    pointer-events: none;
  }
}


/* Services overview: consistently centre each service card. */
.page-id-12 .grid-services .grid > a.group {
    align-items: center !important;
    text-align: center !important;
}
.page-id-12 .grid-services .grid > a.group > .space-y-sm {
    text-align: center !important;
}
.page-id-12 .grid-services .grid > a.group > .space-y-sm > figure,
.page-id-12 .grid-services .grid > a.group > .space-y-sm > .title {
    margin-inline: auto !important;
}

/* Panacea: one orange mask treatment, controlled by each image's editor setting. */
html body figure.panacea-mask-image > .mix-blend-overlay,
html body figure.panacea-mask-image > .bg.bg-bright.mix-blend-overlay {
    display: none !important;
}
html body figure.panacea-mask-image::after {
    content: none !important;
}

